VGRINDEFS
Section: File Formats (5)
索引
jman
BSD mandoc
索引
名称
vgrindefs
- vgrind(1)
のための言語定義データベース
索引
書式
索引
解説
ファイルは
vgrind(1)
が用いるすべての言語定義を含んでいます。
このデータベースは
termcap(5)
に非常によく類似しています。
索引
フィールド
以下の表は、各フィールドの名称と意味を解説しています。
- 名称 型 解説
-
- "ab 文字列 代替コメントの始まりを示す正規表現"
-
- "ae 文字列 代替コメントの終りを示す正規表現"
-
- "pb文字列手続きの始まりを示す正規表現"
-
- "bb文字列字句的ブロックの始まりを示す正規表現"
-
- "be文字列字句的ブロックの終りを示す正規表現"
-
- "cb文字列コメントの始まりを示す正規表現"
-
- "ce文字列コメントの終りを示す正規表現"
-
- "sb文字列文字列の始まりを示す正規表現"
-
- "se文字列文字列の終りを示す正規表現"
-
- "lb文字列文字列定数の始まりを示す正規表現"
-
- "le文字列文字列定数の終りを示す正規表現"
-
- "nc文字列非コメントを示す正規表現 (下記参照)"
-
- "tlbool指定した場合、字句上のトップレベル以外では手続きが定義されないことを意味する"
-
- "ocbool指定した場合、大文字と小文字が等価であることを意味する"
-
- "kw文字列スペースで区切られたキーワードのリスト"
-
非コメントは、通常はコメントの始まりを示すシーケンスがその特殊な意味を
失うような特別な状況を記述するのに必要です。この典型的な実例は、 Perl
において、通常コメントを
`#'
で始めるのに対し、文字列
`$#'
が配列に対するオペレータである例に見ることができます。
索引
使用例
以下のエントリは C 言語を記述するもので、言語エントリの典型例です。
C|c::pb=^\d?*?\d?\p\d?\(\a?\):bb={:be=}:cb=/*:ce=*/:sb=":se=\e":\
:lb=':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 while #define\
#else #endif #if #ifdef #ifndef #include #undef # define else endif\
if ifdef ifndef include undef:
最初のフィールドは単に言語名 (とそのすべての変種) を示すに過ぎないことに
注意して下さい。この場合、C言語は "c" か "C" という名前で
vgrind(1)
に指定することができます。
行の最後の文字として \ を与えることにより、
エントリは複数行に続けることができます。
のケーパビリティは 2 つの型に分かれます。すなわち、
言語に特定の機能が備わっていることを示すブール型のケーパビリティと、
正規表現またはキーワードのリストを示す文字列のケーパビリティです。
索引
正規表現
は
ex(1)
や
lex(1)
の正規表現に非常によく似たものを用います。
文字 `^', `$', `:' および `\'
は予約された文字なので、これらが通常の文字として含まれる場合は
`\'
を直前に置くことによって "クォート" しなければなりません。
メタシンボルとそれらの意味は、以下のとおりです。
- $
-
行末
- ^
-
行頭
- \d
-
デリミタ (スペース、タブ、改行、行の始まり)
- \a
-
シンボルからなるすべての文字列にマッチする (lex での .* と同じ)
- \p
-
すべての英数字からなる名前にマッチする。手続き定義の内部 (pb) では
このシンボルにマッチする文字列が手続きの名前として用いられます。
- ()
-
グループ化
- |
-
選択
- ?
-
直前の項目が省略可能である
- \e
-
文字列の前に置くことにより、その文字列と、
先頭がエスケープ文字 (\) である入力文字列とはマッチしなくなります。
文字列デリミタをエスケープすることにより文字列中に含むことが可能な
(C のような) 言語で使用されるのが、典型的な使用法です。
その他のシステム内の正規表現と異なり、これらは文字単位ではなく単語単位で
マッチします。ですから、 "(tramp|steamer)flies?" のような場合は
"tramp", "steamer", "trampflies", または "steamerflies" にマッチします。
索引
キーワードリスト
キーワードリストは言語におけるキーワードをスペースで区切って単純に
列挙したものです。もし "oc" ブール値フラグが指定されていれば、これは
大文字と小文字が等価であることを示すので、すべてのキーワードは小文字で
指定するべきです。
索引
関連ファイル
- /usr/share/misc/vgrindefs
-
端末記述を含むファイル
索引
関連項目
troff(1),
vgrind(1)
索引
歴史
ファイルフォーマットは
BSD 4.2
で登場しました。
索引
Index
- 名称
-
- 書式
-
- 解説
-
- フィールド
-
- 使用例
-
- 正規表現
-
- キーワードリスト
-
- 関連ファイル
-
- 関連項目
-
- 歴史
-
Time: 07:07:31 GMT, January 12, 2009