vgrindefs man page on SmartOS

Man page or keyword search:  
man Server   16655 pages
apropos Keyword Search (all sections)
Output format
SmartOS logo
[printable version]

VGRINDEFS(5)							  VGRINDEFS(5)

NAME
       vgrindefs - vgrind's language definition data base

SYNOPSIS
       /usr/lib/vgrindefs

DESCRIPTION
       vgrindefs  contains  all language definitions for vgrind(1).  Capabili‐
       ties in vgrindefs are of two types: Boolean capabilities which indicate
       that  the  language has some particular feature and string capabilities
       which give a regular expression or keyword list. Entries	 may  continue
       onto  multiple  lines  by  giving  a \ as the last character of a line.
       Lines starting with # are comments.

   Capabilities
       The following table names and describes each capability.

       ┌─────┬──────┬────────────────────────────────────────┐
       │Name │ Type │		   Description		     │
       ├─────┼──────┼────────────────────────────────────────┤
       │ab   │ str  │ Regular expression for the start of an │
       │     │	    │ alternate form comment		     │
       ├─────┼──────┼────────────────────────────────────────┤
       │ae   │ str  │ Regular  expression  for the end of an │
       │     │	    │ alternate form comment		     │
       ├─────┼──────┼────────────────────────────────────────┤
       │bb   │ str  │ Regular expression for the start of  a │
       │     │	    │ block				     │
       ├─────┼──────┼────────────────────────────────────────┤
       │be   │ str  │ Regular  expression  for	the end of a │
       │     │	    │ lexical block			     │
       ├─────┼──────┼────────────────────────────────────────┤
       │cb   │ str  │ Regular expression for the start of  a │
       │     │	    │ comment				     │
       ├─────┼──────┼────────────────────────────────────────┤
       │ce   │ str  │ Regular  expression  for	the end of a │
       │     │	    │ comment				     │
       ├─────┼──────┼────────────────────────────────────────┤
       │id   │ str  │ String giving  characters	 other	than │
       │     │	    │ letters  and  digits  that may legally │
       │     │	    │ occur in identifiers (default `_')     │
       ├─────┼──────┼────────────────────────────────────────┤
       │kw   │ str  │ A list of keywords separated by spaces │
       ├─────┼──────┼────────────────────────────────────────┤
       │lb   │ str  │ Regular expression for the start of  a │
       │     │	    │ character constant		     │
       ├─────┼──────┼────────────────────────────────────────┤
       │le   │ str  │ Regular  expression  for	the end of a │
       │     │	    │ character constant		     │
       ├─────┼──────┼────────────────────────────────────────┤
       │oc   │ bool │ Present means upper and lower case are │
       │     │	    │ equivalent			     │
       ├─────┼──────┼────────────────────────────────────────┤
       │pb   │ str  │ Regular expression for start of a pro‐ │
       │     │	    │ cedure				     │
       ├─────┼──────┼────────────────────────────────────────┤
       │pl   │ bool │ Procedure definitions are	 constrained │
       │     │	    │ to  the  lexical	level matched by the │
       │     │	    │ `px' capability			     │
       ├─────┼──────┼────────────────────────────────────────┤
       │px   │ str  │ A match for  this	 regular  expression │
       │     │	    │ indicates	 that  procedure definitions │
       │     │	    │ may occur at the next  lexical  level. │
       │     │	    │ Useful   for  lisp-like  languages  in │
       │     │	    │ which procedure definitions  occur  as │
       │     │	    │ subexpressions of defuns.		     │
       ├─────┼──────┼────────────────────────────────────────┤
       │sb   │ str  │ Regular  expression for the start of a │
       │     │	    │ string				     │
       ├─────┼──────┼────────────────────────────────────────┤
       │se   │ str  │ Regular expression for the  end  of  a │
       │     │	    │ string				     │
       ├─────┼──────┼────────────────────────────────────────┤
       │tc   │ str  │ Use  the named entry as a continuation │
       │     │	    │ of this one			     │
       ├─────┼──────┼────────────────────────────────────────┤
       │tl   │ bool │ Present  means  procedures  are	only │
       │     │	    │ defined at the top lexical level	     │
       └─────┴──────┴────────────────────────────────────────┘

   Regular Expressions
       vgrindefs  uses	regular	 expressions  similar  to  those  of ex(1) and
       lex(1). The characters `^', `$', `:', and `\' are  reserved  characters
       and  must  be `quoted' with a preceding \ if they are to be included as
       normal characters. The metasymbols and their meanings are:

       $
	      The end of a line

       ^
	      The beginning of a line

       \d
	      A delimiter (space, tab, newline, start of line)

       \a
	      Matches any string of symbols (like `.*' in lex)

       \p
	      Matches any identifier. In  a  procedure	definition  (the  `pb'
	      capability)  the	string that matches this symbol is used as the
	      procedure name.

       ()
	      Grouping

       |
	      Alternation

       ?
	      Last item is optional

       \e
	      Preceding any string means that the string  will	not  match  an
	      input  string if the input string is preceded by an escape char‐
	      acter (\). This is typically used for languages  (like  C)  that
	      can include the string delimiter in a string by escaping it.

       Unlike  other  regular expressions in the system, these match words and
       not characters.	Hence  something  like	`(tramp|steamer)flies?'	 would
       match  `tramp', `steamer', `trampflies', or `steamerflies'. Contrary to
       some forms of regular  expressions,  vgrindef  alternation  binds  very
       tightly. Grouping parentheses are likely to be necessary in expressions
       involving alternation.

   Keyword List
       The keyword list is just a list of keywords in the  language  separated
       by  spaces. If the `oc' boolean is specified, indicating that upper and
       lower case are equivalent, then all the keywords should be specified in
       lower case.

EXAMPLES
       Example 1 A sample program.

       The  following  entry,  which describes the C language, is typical of a
       language entry.

	 C|c|the C programming language:\
	     :pb=^\d?*?\d?\p\d?(\a?\)(\d|{):bb={:be=}:cb=/*:ce=*/:sb=":se=\e":\
	     :le=\e':tl:\
	     :kw=asm auto break case char continue default do double else enum\
	     extern float for fortran goto if int long register return short\
	     sizeof static struct switch typedef union unsigned void while #define\
	     #else #endif #if #ifdef #ifndef #include #undef # define endif\
	     ifdef ifndef include undef defined:

       Note that the first field is just the language name (and	 any  variants
       of  it).	 Thus the C language could be specified to vgrind(1) as `c' or
       `C'.

FILES
       /usr/lib/vgrindefs
			     file containing vgrind descriptions

SEE ALSO
       ex(1), lex(1), troff(1), vgrind(1)

				 Aug 10, 1994			  VGRINDEFS(5)
[top]

List of man pages available for SmartOS

Copyright (c) for man pages and the logo by the respective OS vendor.

For those who want to learn more, the polarhome community provides shell access and support.

[legal] [privacy] [GNU] [policy] [cookies] [netiquette] [sponsors] [FAQ]
Tweet
Polarhome, production since 1999.
Member of Polarhome portal.
Based on Fawad Halim's script.
....................................................................
Vote for polarhome
Free Shell Accounts :: the biggest list on the net