English help on website



各種状態関連キーワード(Ver9.24対応版)
目次内部的な値を表現するキーワード− 各種状態関連キーワード
overwrite    上書きモードか挿入モードかを表します。上書きモードの場合は0以外、挿入モードの場合は0です。

updated    更新されたかどうかを表します。更新された場合は0以外、そうでない場合は0です。
例:#a=updated;
角カッコで添え字を付けて、他の秀丸エディタからも値を得ることができます。(V8.00以降)
例:#a=updated[1];
例:#a=updated[#handle];

updatecount    何らかの操作によって本文テキストの内容が変わったときにカウントされる値です。(V8.98以降)
ファイルを閉じても初期値には戻らず、ひたすらカウントします。
一回の操作でも数カウント上がったりします。32bitの値を超えると一周します。
初期値は1以上です。
参照:
updatecount
HIDEMARUINFO_GETUPDATECOUNT
hidemaru.getUpdateCount

anyclipboard    クリップボードに文字列があるかどうかを表します。ある場合は0以外、無い場合は0です。

inputstates    各種の入力ができるかどうかを判断するための状態を表します。(V9.19以降)
以下の値の論理和です。
0x00000002 ウィンドウ移動/サイズ変更中
0x00000004 メニュー操作中
0x00000008 システムメニュー操作中
0x00000010 ポップアップメニュー操作中
0x00000100 IME入力中
0x00000200 何らかのダイアログ表示中
0x00000400 ウィンドウがDisable状態
0x00000800 非アクティブなタブまたは非表示のウィンドウ
0x00001000 検索ダイアログの疑似モードレス状態
0x00002000 なめらかスクロール中
0x00004000 中ボタンによるオートスクロール中
0x00008000 キーやマウスの操作直後
0x00010000 何かマウスのボタンを押している
0x00020000 マウスキャプチャ状態(ドラッグ状態)
0x00040000 Hidemaru_CheckQueueStatus相当
参照:
inputstates
hidemaru.getInputStates
Hidemaru_GetInputStates

imestate    IME(かな漢字変換)の状態を表します。IMEがONなら0以外、OFFなら0です。

browsemode    閲覧モードかどうかを表します。閲覧モードの場合は0以外、そうでない場合は0です。

keypressed    キーが押されたかどうかを表します。disablebreakされた状態でのみ利用可能です。
キーが押されていた場合はそのキーコード、押されてなかった場合は0です。
keypressedが1回実行されると、メッセージキューから仮想キーコードを取り出します。
仮想キーコードは、iskeydownの値と同じです
IMEがONの場合はキーが押されたというメッセージがメッセージキューに入らないことがあります。if(imestate!=0)imeswitch;としてIMEをOFFにすると取得できます。
iskeydownはIMEがONでも取得できます。
参照: iskeydown  inputchar  keypressedex


replay    現在のマクロが連続実行されているものかどうかを表します。
連続実行である場合0以外、そうでない場合0です。例えば、Ctrl+1によってマクロ実行される場合は、Ctrl+1を2回連続で実行した場合に2回目がreplayが0以外(実際は1)なります。
自動起動マクロによってマクロが実行される場合は、この値は不定で、連続実行されたかどうかを知ることはできません。

hidemarucount    現在起動されている秀丸エディタの数を表します。常駐秀丸エディタは数えません。
#c = hidemarucount;
参照:秀丸エディタ管理

searchmode    「検索での表示」の状態を表します。点滅表示のとき0、範囲選択のときは1です。

searchbuffer    検索バッファの内容を表します。検索バッファは、以前に実行された検索コマンドまたは置換コマンドで検索対象となる文字列を記憶していて、「下候補」または「上候補」コマンドで利用されるものです。

searchoption    検索オプションを表します。
詳細

searchoption2    拡張された検索オプションを表します。(V8.00以降)
詳細
searchoptionの0x80000000のビットが立っている場合にのみ有効です。

targetcolormarker    settargetcolormarkerで指定されている文字列を表します。(V8.56以降)
searchdown等でinselect2を指定して検索した後は、文字単位の選択用の予約された文字列になります。

replacebuffer    置換バッファの内容を表します。
参照:setreplace

grepfilebuffer    grepの「検索するファイル」の内容を表します。
「(現在の内容)」でgrepした後は、先頭に制御コードの\x01が入った文字列になります。
参照:setgrepfile

grepfolderbuffer    grepダイアログの設定が「前回のフォルダを使う」になっているとき、前回のフォルダを表します。(V8.98以降)
「前回のフォルダを使う」がOFFの場合は""になります。

foundtopx    検索にヒットした文字列の開始位置のx座標を表します。(V4.10以降)

foundtopy    検索にヒットした文字列の開始位置のy座標を表します。(V4.10以降)

foundendx    検索にヒットした文字列の終了位置のx座標を表します。(V4.10以降)

foundendy    検索にヒットした文字列の終了位置のy座標を表します。(V4.10以降)

foundhilighting    「検索文字列の強調」が表示状態にあるかどうかを表します。(V5.00以降)

foundbuffer    「検索文字列の強調」されているとき、強調のために使われている検索文字列を表します。(V5.00以降)
searchbufferは全ての秀丸エディタで共通ですが、foundbufferはそれぞれの秀丸エディタごとに記憶しています。

検索後、実際にヒットした文字列ではなく、検索文字列を表しています。
実際にヒットした文字列を取得するには、
$foundtext = gettext(foundtopx,foundtopy,foundendx,foundendy);
というようにします。

foundoption    「検索文字列の強調」されているとき、強調のために使われている検索フラグを表します。(V5.00以降)

readonly    上書き禁止かどうかを表します。上書き禁止の場合は1、そうでない場合は0です。

encode    現在のエンコードの種類と改行を表します。(V6.50以降)
詳細

charset    encodeキーワードと同じ意味です。
charsetといっても、フォントの文字セットのことではありません。
encodeキーワードはV6.50以降ですが、charsetキーワードはV6.50より前でも使えます。

bom    Unicode系のエンコードの種類のファイルの場合、BOMを含むかどうかを表します。(V8.00以降)

codepage    現在のエンコードの種類に対応するコードページを表します。(V8.66以降)
encode(& 0x3F した値)とcodepageの対応関係は以下のようになっています。
encode=1 codepage=932 Shift-JIS
encode=2 codepage=1200 Unicode(UTF-16)
encode=3 codepage=51932 EUC
encode=4 codepage=50221 JIS
encode=5 codepage=65000 UTF-7
encode=6 codepage=65001 UTF-8
encode=7 codepage=1201 Unicode(UTF-16,Big-Endian)
encode=8 codepage=1252 欧文
encode=9 codepage=936 簡体字中国語
encode=10 codepage=950 繁体字中国語
encode=11 codepage=949 韓国語
encode=12 codepage=1361 韓国語(Johab)
encode=13 codepage=1250 中央ヨーロッパ言語
encode=14 codepage=1257 バルト語
encode=15 codepage=1253 ギリシャ語
encode=16 codepage=1251 キリル言語
encode=17 codepage=42 シンボル
encode=18 codepage=1254 トルコ語
encode=19 codepage=1255 ヘブライ語
encode=20 codepage=1256 アラビア語
encode=21 codepage=874 タイ語
encode=22 codepage=1258 ベトナム語
encode=23 codepage=0 Macintosh
encode=24 codepage=0 OEM/DOS
encode=25 codepage=0 その他
encode=27 codepage=12000 Unicode(UTF-32)
encode=28 codepage=12001 Unicode(UTF-32,Big-Endian)
UTF-32はV8.90β6で12000, 12001に変更しました。

loaddllfile    loaddllされている場合、ロードされているDLLのファイル名を表します。
ロードされていない場合は何もない文字列を返します。
参照:DLL呼び出し機能

getfocus    現在の入力フォーカスのあるウィンドウを表します。(V6.00以降)
getfocus関数と同じです。

event    自動起動マクロとして呼び出されたとき、自動起動の種類を表します。(V6.50以降)
参照:自動起動マクロ

autocompstate    単語補完の状態を表します。(V8.00以降)
以下の値の論理和です。
0x0001 単語補完が動作中
0x0002 半角から始まる文字入力の直後でカーソル移動していない状態 (V8.75以降)
0x0004 「マクロ1」などのコマンドの実行によって単語補完のリスト表示が消えた直後 (V8.98以降)
0x0008 「マクロ1」などのコマンドの実行によって単語補完のツールチップが消えた直後 (V9.20以降)
if(autocompstate & 0x01){ ... }のように判定してください。
0x0001は、自動起動マクロのときに効果があります。手動によるマクロ実行ではマクロ実行した時点で単語補完は消えるので効果はありません。
0x0004は、タブキーにマクロを割り当てている場合はできません。

argcount    getarg可能なパラメータの数を表します。(V8.00以降)

compatiblemode    setcompatiblemodeの現在の状態を表します。(V8.66以降)

carettabmode    [その他]→[動作環境]→[編集]→[高度な編集2]の「タブ文字の上にカーソル移動した時」の状態を表します。(V8.81以降)
0が「左に寄る」、1が「どちらか近いほう」、2が「右に寄る」、3が「貫通する」です。

return_in_cell_mode    TSV/CSVモードの「セル内改行の変換」(convert_return_in_cell)が行われている状態を表します。(V9.10以降)
以下の値の論理和です。
0x0001 LFが半角矢印(↓)(U+FFEC)に変換されています。保存時にU+FFECはLFに変換されるモードとして動作しています。
0x0002 CRが半角矢印(←)(U+FFE9)に変換されています。保存時にU+FFE9はCRに変換されるモードとして動作しています。
0x0004 CR+LFが半角矢印(↲)(U+21B2)に変換されています。保存時にU+21B2はCR+LFに変換されるモードとして動作しています。
0x0100 LFが見た目上改行されない特殊なLFに変換されています。
0x0200 CRが見た目上改行されない特殊なCRに変換されています。
0x0400 CR+LFが見た目上改行されない特殊なCR+LFに変換されています。


stophistory    「ヒストリの記録を中断」の状態かどうかを表します。(V9.15以降)
キーワード名が動詞のような表記ですが、stophistoryswitchに対応した表記になっています。



キーワードではありませんが、検索ヒストリと置換ヒストリの取得と設定が以下の関数と文でできます。

getsearchhist関数
setsearchhist
getreplacehist関数
setreplacehist