loadhilight文(Ver9.35対応版)
目次−
loadhilight文
loadhilight文は、パラメータで指定された強調表示ファイルを読み込み,画面を再描画します。
例 |
loadhilight "test.hilight",0;
|
- パラメータ1(文字列型)
-
ファイル名を指定します。
フルパスでない場合は、設定ファイル用のフォルダからの相対パスになります。
- パラメータ2(数値型)
-
0にすると読み込んだものは一時的な設定になり、保存させません。(ファイルタイプ別の設定で「保存しないで更新」を押したときの状態)
1にすると、設定は保存されます。(「OK」を押したときの状態)
- パラメータ3(数値型、省略可能)
-
読み込む対象を指定します。(V6.00以降)
指定しなければ強調表示が対象となります。
- 結果コード
-
読み込まれた対象の値が格納されます。
強調表示は、ファイルタイプ別の設定の強調表示の設定もONになっている必要があります。(マクロの config "y+"; 相当)
強調表示ファイルは普通のテキストファイルなので、マクロで内容を書き換える等してからloadhilightするという使い方もできます。
パラメータ3の対象は、以下の値をOR演算した値を指定します。
resultの読み込まれた対象の値でも使われます。
0x00000001 |
|
強調表示 |
0x00000002 |
|
複数行の強調 |
0x00000004 |
|
ツリー定義 |
0x00000008 |
|
カラー |
0x00000010 |
|
#ifdef等の詳細 |
0x80000000 |
|
実際に読み込みをせずresultだけを得る |
例 |
loadhilight "test.hilight", 0, 0x1f;
|
個数が多すぎて全て読み込めなかった場合は、
getresultex(13)で状態を取得できます。
参考:
.hilight ファイルのフラグ
10進数 |
|
16進数 |
|
文字指定 |
|
意味 |
1 |
|
0x0001 |
|
h1 |
|
強調1 |
65 |
|
0x0041 |
|
h2 |
|
強調2 |
129 |
|
0x0081 |
|
h3 |
|
強調3 |
193 |
|
0x00C1 |
|
h4 |
|
強調4 |
257 |
|
0x0101 |
|
h5 |
|
強調5 (または259 0x0103) |
321 |
|
0x0141 |
|
h6 |
|
強調6 (または323 0x0143) |
385 |
|
0x0181 |
|
h7 |
|
強調7 (または387 0x0183) |
449 |
|
0x01C1 |
|
h8 |
|
強調8 (または451 0x01C3) |
5 |
|
0x0005 |
|
l1 |
|
行の強調1 |
69 |
|
0x0045 |
|
l2 |
|
行の強調2 |
133 |
|
0x0085 |
|
l3 |
|
行の強調3 |
197 |
|
0x00C5 |
|
l4 |
|
行の強調4 |
3 |
|
0x0003 |
|
s1 |
|
特に強調1 |
67 |
|
0x0043 |
|
s2 |
|
特に強調2 |
131 |
|
0x0083 |
|
s3 |
|
特に強調3 |
195 |
|
0x00C3 |
|
s4 |
|
特に強調4 |
上のいずれかと組み合わせするフラグ(10進数で上の値と足し算)
0 |
|
0x0000 |
|
c |
|
大文字/小文字を区別する |
8 |
|
0x0008 |
|
C |
|
大文字/小文字を区別しない |
16 |
|
0x0010 |
|
r |
|
正規表現=ON |
0 |
|
0x0000 |
|
R |
|
正規表現=OFF |
32 |
|
0x0020 |
|
w |
|
単語の検索=ON |
0 |
|
0x0000 |
|
W |
|
単語の検索=OFF |
行頭が"//"となっているとコメントになります。
行頭に"/"が1つが付いて保存されることがありますが、V6.00未満と秀tagsの互換のためで、"/"は無くてもいいです。
強調5〜8は、上記の値よりも +2 された値で保存されますが、上記の値でも、+2された値でも、どちらでも有効です。
例 |
「33,test1」の場合 : 強調1 , 単語 , 大文字/小文字を区別する , 文字列は"test1"
「0x21,test2」の場合 : 強調1 , 単語 , 大文字/小文字を区別する , 文字列は"test2"
「97,test3」の場合 : 強調2 , 単語 , 大文字/小文字を区別する , 文字列は"test3"
「0x61,test4」の場合 : 強調2 , 単語 , 大文字/小文字を区別する , 文字列は"test4"
|
文字指定は、数値の代わりに以下のように連続して書きます。
文字で指定する方法はV8.89以降が必要です。
例 |
「h1wc,test5」の場合 : 強調1 , 単語 , 大文字/小文字を区別する , 文字列は"test5"
「s2r,test6」の場合 : 特に強調2 , 正規表現 , 文字列は"test6"
|
フラグの部分は日本語の代替名で書くこともできます。(V9.12以降)
空白区切りで以下の文字列が使えます。フラグはカンマで終わり、カンマ以降は生の文字列を書けます。
「強調1」
「強調2」
「強調3」
「強調4」
「強調5」
「強調6」
「強調7」
「強調8」
「行の強調1」
「行の強調2」
「行の強調3」
「行の強調4」
「特に強調1」
「特に強調2」
「特に強調3」
「特に強調4」
「正規表現」
「単語の検索」または「単語」
「大文字/小文字の区別」または「普通」
「大/小区別なし」
例 |
強調1 正規表現 大/小区別なし,[a-z]+
強調2 普通 単語,#define
|
<HilightMultiEx>の後に複数行の強調のユーザー定義を日本語で記述できます。(V9.12以降)
1つの定義あたり、合計3行または2行で記述します。
最初の行は種類や表示方法などの情報で、空白区切りで以下の文字列が使えます。
「複数行」
「単一行(行末まで)」または「単一行」
「単一の文字列」
「次の行から色付け」
「普通の文字」
「スクリプト部分」
「強調1」
「強調2」
「強調3」
「強調4」
「強調5」
「強調6」
「強調7」
「強調8」
「数値」
「文字定数」
「行の強調1」
「行の強調2」
「行の強調3」
「行の強調4」
「コメント」
「#ifdef等の無効部分」
「特に強調1」
「特に強調2」
「特に強調3」
「特に強調4」
「開始文字列のタグを終了文字列でも使う」または「タグ使用」
「終了文字列2回ヒット」
「HTMLのカラー表示」または「HTML」
「子を含むのを許可」
「子になるのを許可」
「自身の入れ子を許可」
「\エスケープ」(\のエスケープ文字のみ限定)
「エスケープ文字=XX」(XXの部分はエスケープ文字のASCIIコード16進数)
次の行はタブ文字でインデントし、開始文字列を記述します。
強調表示同様に、フラグには以下の文字列が使えます。フラグはカンマで終わり、カンマ以降は生の文字列を書けます。
「正規表現」
「単語の検索」または「単語」
「大文字/小文字の区別」または「普通」
「大/小区別なし」
さらに次の行にもタブ文字でインデントし、終了文字列を記述します。
単一行や単一の単語の場合は必要ありません。
例 |
<HilightMultiEx>
複数行 文字定数 タグ使用
正規表現,R"(.*?)\(
正規表現,\)\1"
単一行(行末まで) コメント
普通,//
|
ファイルタイプ別の設定でShiftやCtrlを押しながら保存すると、日本語のフラグで保存します。