秀丸エディタQ&A捕捉事項

top秀丸エディタマクロ

update : 2026/04/29 (Wed)

1 はじめに

現在、秀丸エディタQ&A集を秀丸エディタVer.8系に対応させるよう編集作業中です。

このページの内容も、そのままではありませんが反映させている事もあり、マクロ関連の変更履歴、正規表現関連以外は、徐々に縮小・整理していきます。

2 目次

[第III部~秀丸マクロのいろはにほへと]

Ver.8は追加・変更が多いので、サイトー企画にある、秀丸エディタの紹介(Ver8.00対応版)を参照してください。

Ver.9の変更点は、秀丸エディタ 新機能の紹介)を参照してください。

正規表現関連

2.1 秀丸エディタVer.6.00 マクロ関連の変更履歴

2.1.1 【1】マクロ関連の変更履歴 - 「秀丸エディタ」Ver.6.00

  • grepdialog2文を追加。

  • grepdialog2文のresultはgrep文と同じになるようにする。

  • 新しい文

    setcompatiblemode
    fold, unfold, nextfoldable, prevfoldable, selectfoldable
    foldall, unfoldall
    rangeeditin, rangeeditout
    nextoutlineitem, prevoutlineitem
    showoutline, showoutlinebar, showfoldingbar
  • 新しい数値キーワード

    foldable, folded, rangeedittop, rangeeditend, rangeeditmode, screentopy
  • 変更

    config "x"の追加 xOutlineBar, xRangeEdit, xFolding, xFoldingTwigBar
    configcolor, getconfigcolor で新しい色
    loadhilight, savehilight で対象を指定
  • input関数のUnicode対応

  • setcompatiblemode で排他制御(同じファイルを開く場合)と「検索での表示」の指定。

  • title でパラメタを拡張してステータスバー、見出しバー、タブモードのタブ名の指定可能にした。

  • getfocus追加。(値=1:編集エリア,2:アウトライン解析の枠,3:検索ボックス,またはウィンドウハンドル)

  • setfocus追加。

  • nextfoldable, prevfoldable で失敗時にresultを返すようにする。

  • iskeydownを拡張してキーのトグル状態を取得できるようにする。

  • nextpage,prevpage でパラメタを指定して1ページを修正して加算する行数を指定できるようにする。

  • loadhilightのresultで読み込まれた内容のフラグを返すようにする。

  • getpathhist,setpathhist でヒストリに常駐の状態を取得/設定できるようにする。

  • iconthistabを追加。

  • マクロで複数行コメント/*~*/に対応

2.1.2 【2】仕様変更 - 「秀丸エディタ」Ver.6.00

2.2 秀丸エディタVer.6.50 マクロ関連の変更履歴

2.2.1 【1】マクロ関連の変更履歴 - 「秀丸エディタ」Ver.6.50

  • searchoptionの追加ビット

  • searchdown等の追加パラメタ

    masknormal maskcomment maskifdef maskscript
    maskstring masktag maskonly loop noclose
    (grep用) backup preview outputsingle
    またはsearchoption相当の数値直接
  • grepreplace, grepreplacdialog2文追加

  • refpaste(引用付き貼り付け)

  • tolower、toupper関数追加

  • filter関数追加

  • eventキーワード、geteventparam関数、seteventnotify文追加

  • autocomplete文追加

  • gowordtop2 と gowordend2 を追加

  • openbyshellで引数を指定できるようにした

  • config "x:~";とgetconfig()で指定できるものに、以下のものを追加。

    AutocompFlag1(autocomplete文の第2パラメタと同じ)
    AutocompFlag2(autocomplete文の第3パラメタと同じ)
    AutocompDic(autocomplete文の第4パラメタと同じ)
    AutocompAuto
  • setfloatmode追加(浮動小数点数版(統合版))

  • configstateキーワード追加

  • encodeキーワード追加(charsetと同じ)

  • syncoutline追加

2.2.2 【2】仕様変更 - 「秀丸エディタ」Ver.6.50

  • 「次の秀丸エディタも続けて…」と「置換の前に確認」は併用できないように仕様変更。
  • searchdialogとreplacedialogでキャンセルした場合、result に -2 を入れる。

2.3 秀丸エディタVer.7.00 マクロ関連の変更履歴

2.3.1 【1】マクロ関連の変更履歴 - 「秀丸エディタ」Ver.7.00

追加された命令の詳細は、マクロヘルプを参照して下さい。

  • begingroupundo, endgroupundo まとめてアンドゥ
  • colormarker 一時的なカラーマーカー
  • existfile 拡張パラメタで属性の取得を可能にした。
  • undo文にパラメタを指定してやり直しのグループ化していた場合の指定
  • getcolormarker, nextcolormarker, prevcolormarker カラーマーカーの検索、取得
  • gettitle文追加
  • findhidemaruを、短縮名でも可能にした。
  • toupper(),tolower()で、第二パラメタを追加し、対象を指定できるようにした。

2.3.2 【2】仕様変更 - 「秀丸エディタ」Ver.7.00

  • wordleft2を追加して、wordleftはV6.xx以前と同じ動作にする。
  • nexttabでマクロ制御切り替えできるようにした。
  • saveasでの、改行指定の動作とバージョンによる違いあり。(詳細はマクロのヘルプ「openfile, saveas文など」を参照)

2.4 秀丸エディタVer.8.00 マクロ関連の変更履歴

Ver.8からVer.7からの変更点は、かなり多い為、変更内容については、サイトー企画のページを参照してください。

2.4.1 【1】マクロ関連の変更履歴 - 「秀丸エディタ」Ver.8.00

秀まるおのホームページ(サイトー企画)-秀丸エディタの紹介(Ver8.00対応版)(追加コマンド/設定一覧) にある、「マクロ」の項目を参照して下さい。

  • 追加キーワード

    platform
    settingdir
    backupdir
    compfilehandle
    outlinehandle
    lineselecting
    selectionlock
    mouseselecting
    scrolllinkhandle
    xpixel
    ypixe
    formwidth
  • 追加関数

    • マクロ引数

      getarg
    • 静的変数関連

      setstaticvariable
      getstaticvariable
    • 整形関連

      form
      unform
      showformline
    • レジストリ操作

      getregbinary
      writeregbinary
    • カラーマーカー関連

      colormarkerdialog
      deletecolormarker
      deletecolormarkerall
    • 文字列操作関連

      wcslen
      wcsleftstr
      wcsrightstr
      wcsmidstr
      wcsstrstr
      strrstr
      wcsstrrstr
      byteindex_to_charindex
      charindex_to_byteindex
      wideindex_to_charindex
      charindex_to_wideindex
    • DLL関連

      dllfuncw
      dllfuncstrw
      loaddll(関数版)
    • 検索関連

      searchoption2
      findspecial
    • 内容比較関連

      prevcompfile
      nextresult
      prevresult
    • クリップボード関連

      getclipboardinfo
      copyformed
      poppaste2
      cutline
      cutword
    • カーソル移動関連

      backtab
      forwardtab
      moveto2
      gotagpair
    • ウィンドウ関連

      fullscreen
      refreshoutline
      refreshtabstop
    • ブックマーク関連

      loadbookmark
      savebookmark
    • その他

      getresultex
      seterrormode
      deletefile
      quitall
      autocompstate
      deleteline2
      beginlinesel
      charcount
      showcharcount
      runex
      help4
      help5
      help6
      enablebreak
      disablehistory
  • 自動起動マクロの追加

    アクティブ切り替え後
  • COM関係追加

    createobject
    getobject
    callmethod
    callmethod_returnstr
    callmethod_returnnum
    callmethod_returnobj
    getpropstr
    getpropnum
    getpropobj
    member
    setpropstr
    setpropnum
    setpropobj
    releaseobject
    getcollection
    sleep
    keepobject
  • ファイルマネージャー枠(HmExplorerPane.dll)関数

    SetMode
    GetMode
    LoadProject
    SaveProject
    GetProject
    GetWindowHandle
  • アウトライン枠(HmExplorerPane.dll)関数

    Output
    Push
    Pop
    GetWindowHandle

2.4.2 【2】仕様変更 - 「秀丸エディタ」Ver.8.00

秀まるおのホームページ(サイトー企画)-秀丸エディタの紹介(Ver8.00対応版)(追加コマンド/設定一覧) にある、「マクロ」の「・変更,パラメータ追加」を参照して下さい。

  • 変更、パラメータ追加等

    getcolormarker で行末
    colorcode で行末
    menu でセパレータ
    openbyshellでresult
    openfile で不足分のエンコード指定, wb ws 指定
    windowstate2 全画面表示かどうか
    print ダイアログを出す
    appendsave パラメータ対応
    split 新タイプ,左右
    savedesktop restoredesktop ファイル名指定
    updated 他の秀丸エディタからも取得
    loadkeyassign savekeyassign 設定ファイル用のフォルダ
    clearcliphist 指定項目削除
    setcompatiblemode 貼り付け後のカーソル位置
    scrolllinkでウィンドウ指定
    insert文で\x0d \x0aを正確解釈するパラメータ
    replaceall等の数値指定と合わせて、inselectも指定できるように
    execmacroでパラメータ渡し
    nextcompfileの追加パラメータ
    compfileの追加パラメータ
    grep文の追加パラメータ
    setsearchの追加パラメータ
    geteventparam(2)の戻り値
    fontmodeは、固定ピッチフォントでもTSV/CSVモードであればプロポーショナル扱いに
    文字列型変数のサイズを大きくする
    loaddll関数,dllfunc等で複数扱えるように

2.5 秀丸エディタVer.8.10 マクロ関連の変更履歴

Ver.8.00からVer.8.10からの変更点として、主なのは、DirectWrite対応です。

2.5.1 【1】マクロ関連の変更履歴 - 「秀丸エディタ」Ver.8.10

  • 追加キーワード

    formline(整形ラインの表示の有無)

  • その他

    マクロ実行時、常駐秀丸のメニューから中断できるようにする。

2.5.2 【2】仕様変更 - 「秀丸エディタ」Ver.8.10

  • 変更、パラメータ追加等
    • saveconfig文で一時的な状態のアウトライン解析の枠も保存するようにする。
    • setfilehistで空の文字列で最後のヒストリを消した場合、レジストリにゴミを書かないようにする。

2.6 秀丸エディタVer.8.11 マクロ関連の変更履歴

2.6.1 【1】マクロ関連の変更履歴 - 「秀丸エディタ」Ver.8.11

  • その他
    • dllfuncのパラメータで、16KBの制限を無くす。
    • openbyhidemaruで開かれた秀丸エディタにマクロの切り替えが移らなかったのを修正。

2.6.2 【2】仕様変更 - 「秀丸エディタ」Ver.8.11

  • 変更、パラメータ追加等

    searchdownしたときもprevposの直前の位置の対象にする。

2.7 秀丸エディタVer.8.12 マクロ関連の変更履歴

2.7.1 【1】マクロ関連の変更履歴 - 「秀丸エディタ」Ver.8.12

  • その他
    • マクロの実行時のエラーが出たとき、逆コンパイルした内容を表示する。
    • run文などでプログラム実行中にプログラム実行を中断した場合はマクロも終わらせる。

2.8 秀丸エディタVer.8.20 マクロ関連の変更履歴

2.8.1 【1】マクロ関連の変更履歴 - 「秀丸エディタ」Ver.8.20

  • 追加
    • allowobjparam 文
    • selopenx, selopeny キーワード
  • 変更、パラメータ追加等
    • カーソル移動後タイマーのイベントマクロで、geteventparam(4)にて、どういうコマンドによってカーソル移動したかが分かるようにした。
    • 「setcompatiblemode 0x20000;」にて、マクロ内で検索系コマンドを実行しても、マクロが終了したら自動的に検索条件を元に戻せるようにした。
  • その他
    • マクロのfilter文およびfilter関数で、変換モジュールの名前の「.hmf」または「.hmf64」を省略して指定しても大丈夫なようにした。
    • 正規表現での置換の時に、\(0,ToUpper)のような形で変換モジュールの関数呼び出し出来るようにした。
    • 「動作環境」で、マクロ変数の上限サイズを指定出来るようにした。

2.9 秀丸エディタVer.8.30 マクロ関連の変更履歴

2.9.1 【1】マクロ関連の変更履歴 - 「秀丸エディタ」Ver.8.30

  • 追加
    • HmExplorerPane.dll に GetUpdated関数追加。
    • cutafter 文
    • getautocompitem 関数
    • selectcolumn 文
    • lineupdated キーワード
  • 変更、パラメータ追加等
    • undo命令のパラメータで数値の3を指定したら、「動作環境・編集・全置換のやり直し」で指定した方法でundoするようにした。
    • nextoutlineitem,prevoutlineitemで、パラメータを指定して「自動的な選択/部分編集の対象」がOFFの見出しにもジャンプできるようにする。
    • platform キーワードで持ち出しキットで動作中かどうかのビット追加。
    • copyword にパラメタを指定して連続した単語を指定可能にする。
    • filetype キーワードでプログラム実行中のウィンドウは"executing"を返すようにする。
    • setcompatiblemode 0x80000;でマクロ実行後にもカーソル移動後と編集後の自動起動マクロを動かせるようにする。
    • getsearchhist,setsearchhist で常駐の状態を取得/設定できるようにする。
    • getsearchhist,getreplacehist で-1を指定することで最大数を取得できるようにする。
    • setsearchhist,setreplacehist で第3パラメータに2を指定することで使用数を設定できるようにする。
    • grep, grepdialog2 文で、エンコード指定と searchoption2 相当の値を数値でパラメーター指定できるようにする。
    • ファイルを開いた直後、アクティブ切り替え直後の geteventparam で、タグジャンプによって開かれたかを判断できるようにする。
    • autocomplete 文の第一パラメータで10以上も指定できるようにする。
    • runex で標準出力のパラメータに8を指定してアウトプット枠に追加できるようにする。
    • getautocompitem は範囲選択を解除しないようにする。
    • getautocompitem でカーソル位置が移動しないようにする。
    • selectcolumn はパラメータ省略時はカーソル位置のカラムを選択する。
    • getcolormarkerで幅ゼロまたは終端の情報を取得できるようにするパラメータ追加。
    • setencode の第3パラメータでBOMを指定できるようにする。
    • localgrep で searchoption2 相当のフラグを数値指定できるようにする。
  • その他
    • BOX選択でも一時的なカラーマーカーとcolormarker文を適用可能にする。
    • colormarker文などでレイヤーを持たせることができるようにする。
    • マクロの変数が多いときの速度改善。

2.10 秀丸エディタVer.8.40 マクロ関連の変更履歴

2.10.1 【1】マクロ関連の変更履歴 - 「秀丸エディタ」Ver.8.40

  • 追加

    • colormarkerallfound 文 検索でマッチする箇所を色付けする。
    • selectcolormarker 文 カラーマーカーをつけた箇所を選択する。(複数あれば、複数選択となる。)
    • invertselection 文 範囲選択箇所を反転する。(範囲選択した箇所と、それ以外の箇所を入れ替える。)

    複数選択関連

    • multiselecting キーワード 複数選択しているかどうか
    • reservemultisel 文 選択範囲を複数選択の候補に設定する
    • selectreservedmultisel 文 「reservemultisel 文」で「複数選択の候補」に設定した箇所を、複数選択状態にする。
    • clearreservedmultisel 文 選択範囲を「複数選択の候補」から解除する。
    • clearreservedmultiselall 文 すべての「複数選択の候補」を解除する。
    • selectallfound 文 現在の検索条件にマッチする箇所を、すべて複数選択状態にする。
    • tomultiselect 文 現在の範囲選択を複数選択に切り替える。(複数行選択していた場合は、改行を区切りにして複数選択になる)
  • 変更、パラメータ追加等

    • beginlinesel 範囲選択が含まれる行すべてを行単位の選択にしてから、行選択モードに移る。

    • copyline パラメータに1を指定すると、範囲選択が含まれる行を、すべて行選択にしてコピーする。

    • cutline パラメータに1を指定すると、範囲選択が含まれる行を、すべて行選択にしてカットする。

    • colormarker パラメータに開始位置と終了位置を指定可能にした。(範囲選択していなくても、指定した箇所にカラーマーカーをつける。)

    • existfile 第二パラメータに2を指定すると、ファイルサイズを取得可能にした。ファイルサイズは、マクロの数値範囲である2G(2147483647)が最大となる。存在しないファイルを指定した場合は、0(zero)が取得できる。

    • setcompatiblemode 0x00100000; で、複数選択対応。

    • colormarker文で、スタイルに-1を指定もできるように修正。

    • runex プログラム実行のパラメータにUTF-8を追加。

    • run文のコマンドラインに%cや%lを書けるように修正。

      %l:カーソル位置の行番号(先頭が1)
      %c:カーソル位置の桁位置(行頭が1)
  • その他

    • colormarkerallfound の デフォルトで(未指定時に)使用されるレイヤー名は、"\x01#allfound"というレイヤー名になる。カラーマーカー関連の命令では、このレイヤー名を指定するか、"findmarker"というオプション指定することにより、操作可能。

2.10.2 【2】仕様変更 - 「秀丸エディタ」Ver.8.40

  • 複数個所の同時選択&同時編集対応。
  • マクロファイル用のフォルダ、設定ファイル用のフォルダ設定で、環境変数を使用可能にした。

2.11 秀丸エディタVer.8.50 マクロ関連の変更履歴

2.11.1 【1】マクロ関連の変更履歴 - 「秀丸エディタ」Ver.8.50

  • 追加
    • autospellcheckswitch 文 自動スペルチェックの切り替え。
    • spellcheckdialog 文 スペルミスの修正 ダイアログの表示
    • stophistoryswitch 文 ヒストリの記録を中断
    • selectword2 文 単語選択(全部) (V6.50以降の動作)
    • wordright2 文 単語右(V6.50以降の動作)
    • wordrightsalnen2 文 単語右(サルネン風) (V6.50以降の動作)
    • COMPFILE文をマクロヘルプに追記。
  • 変更、パラメータ追加等
    • casechange文 パラメータで対象文字指定の対応。
    • toupper, tolower関数で対象文字指定の対応。
    • tolower, toupper文にパラメータ指定を追加。
    • forwardtab,backtabでカーソル移動したかどうかでresultが設定されるように修正。
    • saveall文にパラメータを指定できるようにして、無題ファイルを除外できるように修正。
    • deletecolormarker文で、ユーザーデータを指定して範囲選択せずに直接消すパラメータの対応。
    • nextresult, prevresultにパラメータ追加して、対象を指定できるように修正。
  • その他
    • マクロファイルのUTF-8(BOM付き)対応。

2.11.2 【2】仕様変更 - 「秀丸エディタ」Ver.8.50

  • 「UPPER CASE」「lower case」「大文字<->小文字の変換」コマンドはアクセント記号などが付いたものも対象にするように修正。

2.12 秀丸エディタVer.8.52 マクロ関連の変更履歴

2.12.1 【1】マクロ関連の変更履歴 - 「秀丸エディタ」Ver.8.52

  • 追加
    • マクロの文字列で\Uxxxxxxxxと書いて8桁の16進数で4バイトのUnicodeを記述できるように対応。

2.13 秀丸エディタVer.8.54 マクロ関連の変更履歴

2.13.1 【1】マクロ関連の変更履歴 - 「秀丸エディタ」Ver.8.54

  • 追加
    • setfiletype 文 ファイルタイプ別の設定を識別するための拡張子を設定。
    • setconfigstate 文 ファイルタイプ別の設定の状態を指定。
    • quote 関数 正規表現のメタ文字をエスケープした文字列を返す。
    • splitpos キーワード ウィンドウの分割されている場合、分割位置を表す。
  • 変更、パラメータ追加等
    • split文で明示指定するパラメータ追加。
    • nextpage、 prevpage でパラメータ指定して、「スクロールしてもカーソル位置を固定」モードに明示的にできるようにするように修正。
    • config "x"で指定できるものにBlockquoteFix(指定桁数をインデントする)を追加。
    • macrohelp文でパラメータでキーワードを指定して開くことができるように修正。
    • insert文の第2パラメータに2を指定可能にして、自動アンインデントの対応。
    • saveconfig文で「折りたたみ用の余白」の一時的な状態を解除されるように修正。

2.14 秀丸エディタVer.8.56 マクロ関連の変更履歴

2.14.1 【1】マクロ関連の変更履歴 - 「秀丸エディタ」Ver.8.56

  • 追加
    • sprintf 関数 文字列書式に従った文字列を返す。
    • settargetcolormarker 文 追加の条件の「指定の範囲/カラーマーカー内」が有効な場合、対象となる範囲を指定。
    • targetcolormarker キーワード settargetcolormarkerで指定されている文字列を取得。
    • writeinistrw, writeininumw, getinistrw, getininumw を追加。(iniファイル関連のUnicode対応版)
    • DDE関連マクロのUnicode版を追加。
    • colormarkersnapshot 文を追加。 現在のカラーマーカーの状態をやり直し可能にする。
    • getresultex(15)で置換の確認ダイアログがどのようにして閉じられたかを得られるようにした。
  • 変更、パラメータ追加等
    • searchdown等に incolormarker パラメータを追加

    • searchoption2 で追加の条件で「指定の範囲/カラーマーカー内」が有効かどうかの判定を追加

    • replaceallなどでaskオプション指定時、置換を実行した回数をresultに入れるように修正。

    • searchdownなどの文で、数値として検索オプションを書く書き方で、2つ連続して書くと searchoption2相当も記述できるように修正。

      例:searchdown "a", #searchoption1, #searchoption2;

2.15 秀丸エディタVer.8.58 マクロ関連の変更履歴

2.15.1 【1】マクロ関連の変更履歴 - 「秀丸エディタ」Ver.8.58

  • 追加

  • 変更、パラメータ追加等

    • setcompatiblemode で「前のカーソル位置」を変更させないフラグを追加。
    • saveas文とappendsave文にselectionオプションを追加
    • appendsave文でファイルが無いときは自動的に作成されるように変更。
    • appendsave文でselectionオプションを付けているとき通常の範囲選択でないときはエラーになるように修正。
    • localgrep文でもoutputsingleとoutputsametabが働くように修正。
    • setcompatiblemodeの「貼り付け後のカーソル位置」のフラグを、insertfileでも適用するように修正。

2.16 秀丸エディタVer.8.60 マクロ関連の変更履歴

2.16.1 【1】マクロ関連の変更履歴 - 「秀丸エディタ」Ver.8.60

  • 追加

    • beginrectmulti文 BOX範囲選択開始(複数選択化)
  • 変更、パラメータ追加等

  • その他

    • configset文で文字列をうまく解釈できないことがあるバグ修正。

2.17 秀丸エディタVer.8.62 マクロ関連の変更履歴

2.17.1 【1】マクロ関連の変更履歴 - 「秀丸エディタ」Ver.8.62

  • その他
    • openbyshell文でダブルクォーテーションでくくった場合に動作しないバグ修正。

2.18 秀丸エディタVer.8.66 マクロ関連の変更履歴

秀丸エディタ本体の更新内容に関しては、以下になります。

2.18.1 【1】マクロ関連の変更履歴 - 「秀丸エディタ」Ver.8.66

  • 追加
    • setdlldetachfunc文 DLLが解放されるタイミングで呼び出される関数を設定します。
    • codepageキーワード 現在のエンコードの種類に対応するコードページ
    • 外部DLLから秀丸エディタのテキスト取得などをできるエクスポートされた関数を追加。
      • Hidemaru_GetTotalTextUnicode関数 テキスト全体のメモリ確保して返す。
      • Hidemaru_GetLineTextUnicode関数 指定した行番号に対応するテキスト内容をメモリ確保して返す。
      • Hidemaru_GetCursorPosUnicode関数 カーソル行とカーソル桁の位置を取得。
      • Hidemaru_CheckQueueStatus関数 キー入力があるなどの理由で処理を中断するべきかを返す。
      • Hidemaru_GetSelectedTextUnicode関数 範囲選択のテキスト内容をメモリ確保して返す。
      • Hidemaru_EvalMacro関数 指定したテキストのマクロを実行。
      • Hidemaru_GetDllFuncCalledType関数 dllfunc等が呼ばれているとき、どのような呼ばれ方をしているかを取得。
      • マクロの文字列でR"(文字列)"またはR"xxx(文字列)xxx"といったエスケープなしの書き方に対応。
      • eval文追加。
      • multiselectcountキーワード追加。 複数選択時、選択されている個数を表します。
      • setcompatiblemode関数追加。setcompatiblemode文と同じ、戻り値として直前の値を返す。
      • compatiblemodeキーワード追加。setcompatiblemode の状態を示す。
  • 変更、パラメータ追加等
    • etcompatiblemode に0x00800000を追加してdisabledraw時の検索後のカーソル状態が正しくなるように修正。
    • seltopxなどで添え字を付けて複数選択の各選択の場所を得られるように修正。
    • execmacroでパラメータを配列と数で指定できる方式を追加。
    • config文のxColorCommentで指定できるものに自動判定に相当するものを追加。
    • getclipboardとgetfocusはパラメータなしの関数の書き方として呼び出してもいいように修正。
    • input関数で第1パラメータの文字数や行が多い場合ある程度ダイアログを大きくするように修正。
    • 変換モジュールまたはDLL向けの秀丸エディタへのメッセージでファイル名を取得できるHIDEMARUINFO_GETFILEFULLPATHを追加。
  • その他
    • マクロで#a=#b #c;のような記述間違いで警告を出すように修正。
    • filename3などがUnicodeを含むファイル名のときに短縮ファイル名にならない問題修正。
    • マクロの文字列で意味の無いエスケープ文字で警告を出すように修正。
    • マクロで式がおかしいときのエラーで英数字だけでなく表示できる文字はエラーのメッセージ内に表示する修正。
    • sprintf関数で64bit版の場合は%lldや%I64dなどの書き方は制限しないように修正。
    • 64bit版でマクロのビット演算子の修正。

2.19 秀丸エディタVer.8.67 マクロ関連の変更履歴

2.19.1 【1】マクロ関連の変更履歴 - 「秀丸エディタ」Ver.8.67

  • その他
    • 32bitの浮動小数点数版でHidemaru_GetDllFuncCalledTypeが正しくないバグ修正。
    • 64bitの浮動小数点数版でDLLの呼び出しがうまくできていないバグ修正。

2.20 秀丸エディタVer.8.69 マクロ関連の変更履歴

2.20.1 【1】マクロ関連の変更履歴 - 「秀丸エディタ」Ver.8.69

  • その他
    • seltopx[n]など複数選択のとき、タブ文字の計算がずれるバグ修正。
    • UTF-8のマクロファイルで$a=hex('あ');などを実行するとエラーになるバグ修正。
    • getautocompitemのバグ修正。
    • getconfig("AutocompFlag2")の誤り修正。

2.21 秀丸エディタVer.8.71 マクロ関連の変更履歴

2.21.1 【1】マクロ関連の変更履歴 - 「秀丸エディタ」Ver.8.71

  • 追加
    • message関数追加。
    • savebacktagjump文追加。
  • 変更、パラメータ追加等
    • message文でタイトルやフラグのパラメータを指定できるように修正。
    • geteventparamで破棄して終了による終了かどうかを知ることができるように修正。
    • event==0のときseteventnotifyで枠にフォーカスがあるときにキー操作を続行するかどうかを追加。
    • getcolormarkerで、先頭から数えて何番目にあるカラーマーカーか取得できるように修正。
    • multiselectcountで複数選択の数を取得するとき一時的な選択状態は変化させないように修正。
    • wordleft2, wordright2, wordrightsalnen2でresultは変化するように修正。
    • ascii関数で第2パラメータを指定して変換できない文字で0を返す動作を追加。
    • spellcheckdialog文で、操作結果をgetresultexで取得できるように修正。
  • その他
    • multiselectcountでBOX選択1つのときに落ちるバグ修正と、BOX選択の維持の修正。
    • 標準の変換モジュールをマクロのfilterで使うとき、マクロファイルがUnicodeの場合に文字列をうまく解釈できない場合があるバグ修正。

2.22 秀丸エディタVer.8.73 マクロ関連の変更履歴

2.22.1 【1】マクロ関連の変更履歴 - 「秀丸エディタ」Ver.8.73

  • 追加
    • エクスポートされた関数にHidemaru_GetCursorPosUnicodeFromMousePosを追加。
    • エクスポートされた関数にHidemaru_GetCurrentWindowHandleを追加。
  • 変更、パラメータ追加等
    • マクロでseterrormodeのパラメータを追加して、一般的なOKだけがあるメッセージを抑制するオプション追加。
    • setcompatiblemodeにdllfunc等でもPer-Monitor DPI対応で動作させるフラグ追加。
    • runex文にパラメータを追加して、ファイル名の%fなどの解釈をしない指定の対応。
  • その他
    • appendsaveのselectionオプションで折り返しがあると異常終了するバグ修正。
    • 起動オプション/x?を追加。(マクロ実行中は何もしない)

2.23 秀丸エディタVer.8.75 マクロ関連の変更履歴

2.23.1 【1】マクロ関連の変更履歴 - 「秀丸エディタ」Ver.8.75

  • 追加
    • dllfuncexist関数追加
    • マクロ実行するメッセージ関連を追加。(WM_ISMACROEXECUTING, WM_REMOTE_EXECMACRO_FILE, WM_REMOTE_EXECMACRO_MEMORY)
    • setoutlinesize文とoutlinesizeキーワードを追加。
    • prevposx,prevposyキーワード追加。
  • 変更、パラメータ追加等
    • savedesktop文とrestoredesktop文にパラメータを追加して仮想デスクトップごとを許可するかどうの対応。
    • message文でタイムアウトするパラメータ追加。
    • autocompstateキーワードに、英字の文字入力の直後でカーソル移動していない状態かどうかを判断するフラグを追加。
  • その他
    • run文で引数の文字数が多くて切れるようなケースではエラーとなるように修正。
    • colormarkerallfound文で見出しバーが無いとき画面全体がちらつく問題修正。

2.24 秀丸エディタVer.8.77 マクロ関連の変更履歴

2.24.1 【1】マクロ関連の変更履歴 - 「秀丸エディタ」Ver.8.77

  • 追加
    • アウトプット枠のHmOutputPane.dllの関数にSetBaseDirを追加。
  • 変更、パラメータ追加等
    • run文で引数も含めて約8KB分のコマンドラインを使えるように修正。
    • debuginfo 2;とするとdebuginfoでの文字列の出力はアウトプット枠にも出力するように修正。
    • setdlldetachfuncで指定して呼ばれる関数に、どのような理由で呼ばれたかを表すパラメータを追加。
  • その他
    • showvarsで配列の角括弧の後半が無い問題修正。
    • マクロの文の記述に半角括弧を使った場合のエラーメッセージがおかしい点を修正。

2.25 秀丸エディタVer.8.79 マクロ関連の変更履歴

2.25.1 【1】マクロ関連の変更履歴 - 「秀丸エディタ」Ver.8.79

  • 追加
    • deletefilehist文、filehistcountキーワード追加。
  • 変更、パラメータ追加等
    • setfilehistで、失敗したときはresultで判断可能なように修正。
    • openbyshellで「microsoft-edge:」から始まる文字列でEdgeが起動できない問題修正。
    • openbyshellで「"shell:~"」から始まる文字列で、続いてパラメータが付加されているときの対応。
  • その他
    • マクロ登録ダイアログをリストビュー形式に変更。
    • マクロ登録ダイアログのマクロファイル用のフォルダに開くボタンを追加。
    • grepの実行/grepして置換のキー操作の記録はgrepdialog2/grepreplacedialog2として記録されるように修正。

2.26 秀丸エディタVer.8.81 マクロ関連の変更履歴

2.26.1 【1】マクロ関連の変更履歴 - 「秀丸エディタ」Ver.8.81

  • 追加
    • movetoview文
    • xviewキーワード
    • carettabmodeキーワード
    • Shiftキーを押しながら矢印キーを押すことに相当する文を追加。(shiftup, shiftdown, shiftleft, shiftright)
  • 変更、パラメータ追加等
    • 起動オプション「/m3x」で既存の秀丸エディタに切り替わるとき、/xの組み合わせで/aの情報も引き継ぐように修正。
  • その他

2.27 秀丸エディタVer.8.83 マクロ関連の変更履歴

2.27.1 【1】マクロ関連の変更履歴 - 「秀丸エディタ」Ver.8.83

  • 追加
    • filtermenu文
  • 変更、パラメータ追加等
    • setstaticvariable文で現在の秀丸エディタ用は32KBまでできるように修正。
    • colormarker文で任意の名前のレイヤーは32個までできるように修正。
    • selectcolormarker文にユーザーデータの指定のパラメータを追加。
    • config文の"x"で指定できるものにActiveTagPairを追加。
    • closenewしたときは動作環境の最初のフォルダの設定は働かないように修正。(newfileは従来から働かない)
    • setstaticvariableで個数の上限を超えたとき正しく失敗するように修正。
    • openregにパラメータを追加し、HKEY_LOCAL_MACHINE\SOFTWARE配下を明示的に32bit/64bitを指定できるように修正。
  • その他

2.28 秀丸エディタVer.8.85 マクロ関連の変更履歴

2.28.1 【1】マクロ関連の変更履歴 - 「秀丸エディタ」Ver.8.85

  • 追加
    • ファイルマネージャ枠のマクロのdllfuncstr用の関数で、HmExplorerPane.dllにGetCurrentDirを追加。
    • replaceallquick文
    • foundlist文
    • foundlistoutline文
  • 変更、パラメータ追加等
    • getcolormarker 関数で、第1パラメータに0x0100のフラグを追加し、表示に使われている名前付きレイヤーの情報を取得できるように修正。
    • insert文の第3パラメータでインデントの詳細設定を指定できるように修正。
    • selectcolormarkerで対象が無い場合にresultが変化するように修正。
    • menu文などのサブメニューの記述対応。
    • input関数に位置を指定するパラメータ追加。
  • その他
    • seterrormodeの指定でcallでラベルが見つからないときにエラーを無視できるように修正。

2.28.2 【2】仕様変更 - 「秀丸エディタ」Ver.8.85

  • マクロファイル用のフォルダと設定ファイル用のフォルダは、インストール直後の初期状態は%APPDATA%という環境変数を使って表現するように変更。
  • マクロ実行中はautocomplete -1;による操作はリアルタイム入力は無効となるように変更。

2.29 秀丸エディタVer.8.86 マクロ関連の変更履歴

Ver.8.86は、マクロ関連の変更はありません。

2.30 秀丸エディタVer.8.87 マクロ関連の変更履歴

2.30.1 【1】マクロ関連の変更履歴 - 「秀丸エディタ」Ver.8.87

  • その他
    • Ver.8.85、Ver.8.86で、runsync文の待機中にしばらくすると待機が終わる問題を修正。

2.31 秀丸エディタVer.8.88 マクロ関連の変更履歴

2.31.1 【1】マクロ関連の変更履歴 - 「秀丸エディタ」Ver.8.88

  • 追加
    • keypressedex 関数
    • tabcolumn キーワード
  • 変更、パラメータ追加等
    • inputchar関数で、第2パラメータでタイムアウトを指定できるように修正。
    • inputchar関数で、第3パラメータを指定して、タイトルを変更しないこともできるように修正。
    • selectcolumn文で行の範囲のパラメータ追加。
    • overwrite文のパラメータ追加。
    • getregstrでレジストリのMacroPathを取得する場合や、backupdirでフルパスとなる組み合わせの場合など、環境変数が展開可能な条件では自動的に展開されたものが取得されるように修正。
  • その他
    • マクロに書く固定の文字列の長さの最大は64KBから128KBまでに変更。
    • runexで表示フラグで非表示を指定の場合は、実行後に秀丸エディタ本体を再アクティブにしないように変更。
    • config "xAutoAdjustOrikaeshi:0";で折り返しを固定にするとき、ウィンドウ幅や最大による現在の折り返しではなく、記憶されていた固定の折り返し文字数となるように変更。

2.31.2 【2】仕様変更 - 「秀丸エディタ」Ver.8.88

  • filter文/filter関数で変換モジュールが見つからない場合や、指定された関数がみつからない場合に、 filter文では、デフォルトでエラー表示し、エラーが出ない場合やfilter関数では、getresultexで取得可能にした。
  • filter文で、変換モジュール名が拡張子なしの場合、[動作環境]→[編集]→[変換]で登録されていたフルパスを読み込むように修正。 (登録済みのモジュール内に、マッチするものがあればそれを使うようにした)
  • setfiletypeでファイルタイプを変更している場合、新規作成状態の名前を付けて保存のデフォルトの拡張子は、 setfiletypeで指定したものとなるように変更。
  • 起動オプション/rr /bbを追加。(それぞれ/r /b 相当でファイルを閉じるまでは維持するモード)

2.32 秀丸エディタVer.8.89 マクロ関連の変更履歴

2.32.1 【1】マクロ関連の変更履歴 - 「秀丸エディタ」Ver.8.89

  • 追加

    • split 関数
  • 変更、パラメータ追加等

  • その他

    • ファイルタイプ別の設定のデザインの「カーソル位置の単語」がONのとき、colorcodeでカラーマーカーの0x8000が取得できない問題修正。
    • openbyshellでUnicode独自の文字が含まれる場合の対応
    • マクロの変数格納の速度の改善
    • マクロのconfig "s数値"で、サイズ変更した後にフォンとサイズの記憶状態がおかしい場合がある問題修正。
    • 自動起動マクロのカーソル移動後タイマーのgeteventparam(4)は、検索ダイアログで上検索/下検索したときも取得できるように修正。
    • config文でフォントを変更してsaveconfigするとき、Unicodeのファイルで記憶されない問題修正。
    • カーソル移動後タイマーの自動起動マクロで、geteventparam(5)で最後に実行した上検索/下検索が成功していたかを取得できるように修正。

2.32.2 【2】仕様変更 - 「秀丸エディタ」Ver.8.89

  • 「hilightファイル直接指定モード」を追加

2.33 秀丸エディタVer.8.90 マクロ関連の変更履歴

2.33.1 【1】マクロ関連の変更履歴 - 「秀丸エディタ」Ver.8.90

  • 追加
    • setsplitinfo 文
    • prevposhistback prevposhistforward 文(「前のカーソル位置(戻る)」「前のカーソル位置(進む)」コマンドに相当する)
    • settabstop 文
    • gettabstop 関数
    • Hidemaru_AnalyzeEncoding 関数(DLL側から呼び出す秀丸エディタの関数)
    • Hidemaru_LoadFileUnicode 関数(DLL側から呼び出す秀丸エディタの関数)
    • outlineitemcount キーワード
    • getoutlineitem 関数
  • 変更、パラメータ追加等
    • setcompatiblemode でマクロ実行中にカーソル行の下線や縦線を描画できるフラグを追加。
    • saveconfig 文のパラメータで指定した設定名で保存できるように追加。
    • gettitle の第2パラメータを追加して、他の秀丸エディタからの取得もできるように修正。
    • clearallmark 文のパラメータ追加。1で「現在のファイルのマークを解除」を行う。
    • showvars も debuginfo で 2 を指定している場合はアウトプット枠へ出力するように修正。
    • codepageキーワードのUTF-32は12000(UTF-32LE)と12001(UTF-32BE)に変更。
  • その他
    • eplayキーワードがsearchdownの後におかしい問題修正。
    • configset文でステータスバーのファイルタイプ別の設定の状態が更新されるように修正。

2.33.2 【2】仕様変更 - 「秀丸エディタ」Ver.8.90

  • 強調表示の文字列の上限を3999文字までに拡張

2.34 秀丸エディタVer.8.91 マクロ関連の変更履歴

2.34.1 【1】マクロ関連の変更履歴 - 「秀丸エディタ」Ver.8.91

  • 変更、パラメータ追加等
    • colormarkerallfound でスタイルが指定できるように修正。
    • setsearch で追加の条件(0x00800000)がOFFにならない問題修正。
  • その他
    • 浮動小数点数バージョンでshowvarsの数値が出力されていなかった問題の対策として、小数点数以下3桁まで表示するように修正。

2.35 秀丸エディタVer.8.92 マクロ関連の変更履歴

2.35.1 【1】マクロ関連の変更履歴 - 「秀丸エディタ」Ver.8.92

  • 追加
    • findmarkerlist 文
  • 変更、パラメータ追加等
    • colormarkerallfound パラメータで範囲を指定できるように修正。
    • colormarker 種類フラグ 0x10のビットで、改行以降の余白にも背景色を指定できるように修正。
    • split関数 区切り文字に""を指定して一文字ずつに分割に対応。
    • openfile文 複数ファイル指定のときはファイル検索パスは働かないようにして、getresultex(20)と(21)を追加。
    • colormarker文、colormarkerallfound文で、種類のパラメータの上位16ビットで強調表示としての動作とできるように修正。
    • colormarkerallfoundでレイヤー付きの場合は検索の色付け一覧ダイアログには入れないように修正や、範囲指定時にうまくいかない問題などの修正。
    • openfile用のseterrormodeの値を追加して、ファイルが無い場合の問い合わせ、ファイル検索パスの問い合わせを指定できるように修正。 getresultex(22)の追加。
    • setcompatiblemode 0x08000000;で、他の秀丸エディタへマクロ切り替え禁止の動作の追加。
    • setcompatiblemode 0x04000000;で、execmacroのメモリ上の再利用の追加。
    • exemacroの拡張子を.mac.cacheにするとキャッシュファイルの自動生成のとなる動作の追加。
    • colormarker文の種類で強調表示の指定をしてるとき、ファイルタイプ別の設定の複数行コメントが「なし」でも動作するように修正。
    • colormarker文の種類で強調表示の指定をしてるとき、同じレイヤーでの上書きで強調の優先順位の適用と、特に強調で上書きしたときでもコメントや文字定数の判定ができるような修正など。
  • その他
    • マクロのinsertで強調表示がおかしいバグ修正。

2.35.2 【2】仕様変更 - 「秀丸エディタ」Ver.8.92

  • 強調表示の文字列の上限を3999文字までに拡張

2.36 秀丸エディタVer.8.93 マクロ関連の変更履歴

Ver.8.93は、マクロ関連の変更はありません。

2.37 秀丸エディタVer.8.94 マクロ関連の変更履歴

2.37.1 【1】マクロ関連の変更履歴 - 「秀丸エディタ」Ver.8.94

  • 追加
    • getmaxinfo関数
    • encodeuri関数
    • decodeuri関数
    • getlinecount関数
    • mouselineno キーワード、mousecolumn キーワード(カーソルがエディタ画面範囲外の場合は-1)
    • convert_return_in_cell文
  • 変更、パラメータ追加等
    • searchdown等にinselect2のオプションを追加。
    • gettext関数、gettext2関数で改行を\nとして取得するパラメータ追加。
    • getoutlineitemの行番号が、分類モードでうまく取得できないバグ修正。
    • setstaicvariableでUnicode独自文字が覚えられない問題修正。
  • その他
    • HmJre.dll V5.09

2.37.2 【2】仕様変更 - 「秀丸エディタ」Ver.8.94

  • 検索ダイアログの「選択した範囲内のみ」を「選択した範囲」に変更して、[行単位]/[文字単位]を追加。
  • [その他]→[動作環境]→[環境]や[パフォーマンス]からの詳細設定の項目を増やして、クリップボード履歴の個数、静的変数の上限を追加。
  • ブックマークやプロジェクトの項目のパスの先頭に「mac:」と書くとマクロ実行用のファイルとして動作するように修正。

2.38 秀丸エディタVer.8.95 マクロ関連の変更履歴

2.38.1 【1】マクロ関連の変更履歴 - 「秀丸エディタ」Ver.8.95

  • 変更、パラメータ追加等
    • setstaticvariable/getstaticvariable で Ver.8.94 で数値を扱えるようになっていたのをやめて、従来通り文字列だけとなるように修正。

2.39 秀丸エディタVer.8.96 マクロ関連の変更履歴

2.39.1 【1】マクロ関連の変更履歴 - 「秀丸エディタ」Ver.8.96

  • 追加
    • ucs4len、ucs4leftstr、ucs4rightstr、ucs4midstr、ucs4strstr、ucs4strrstr、ucs4index_to_charindex、charindex_to_ucs4index
    • moveto_wcs, moveto_ucs4などの各種UCS-2/UCS-4単位の文、cmulenやmoveto_cmuなどのカーソル移動単位、gculenやmoveto_gcuなどの、書記素クラスター単位の文/キーワード/関数の追加
  • 変更、パラメータ追加等
    • split -1;のパラメータで動作環境による自動判定を追加。
    • charcount関数で第2パラメータで対象文字列を指定可能にする対応と、0x00000088でカーソル移動単位の指定の追加。
    • fontmodeで結合文字やカラー絵文字の設定状態の取得の追加。
    • title文のUnicode対応。
  • その他
    • gettextでカラー絵文字の末尾で範囲がずれる問題修正。

2.39.2 【2】仕様変更 - 「秀丸エディタ」Ver.8.96

  • createobjectで管理者によるRegSvr32やRegAsmの登録なしに、DLLファイル名でCOMオブジェクトを作成できるように修正。

2.40 秀丸エディタVer.8.97 マクロ関連の変更履歴

2.40.1 【1】マクロ関連の変更履歴 - 「秀丸エディタ」Ver.8.97

  • 変更、パラメータ追加等
    • evalでsetcompatiblemodeは現在の状態を引き継ぐように変更。
  • その他
    • filtermenu文がマクロ開始後1秒以上経過するとうまく動作しない問題修正。
    • 浮動小数点数版のsetfloatmode 1;でnewfileやsetactivehidemaruで実行対象が切り替わると状態がリセットされる問題修正。(setfloatmodeの状態を維持するように変更)
    • createobjectのアウトプロセスサーバーがうまく動作しない問題修正。(Ver.8.96)
    • .net 5で作成したCOMサーバーでcreateobjectに失敗する問題の対策。(VEr.8.96以前からある問題)

2.40.2 【2】仕様変更 - 「秀丸エディタ」Ver.8.97

  • 「すべてを選択」コマンド実行時に直前の位置を「前のカーソル位置」として覚えるように修正
  • キー操作の記録で「指定行...」で入力した行番号を記録するように修正。

2.41 秀丸エディタVer.8.98 マクロ関連の変更履歴

2.41.1 【1】マクロ関連の変更履歴 - 「秀丸エディタ」Ver.8.98

  • 追加
    • sendmessage 文
    • OutputW 関数(HmOutputPane.dllのdllfuncw用の関数)
    • setcomdetachmethod 文
    • Hidemaru_DebugInfo 関数(DLL側から呼び出す秀丸エディタの関数)
    • keepdll 文
    • selectinselect、setinselect2
    • enumregkey
    • updatecount キーワード
    • 「列の幅の自動調整を一時停止」コマンドに相当する refreshtabstop_pause 文
    • 「列の幅を全て狭める」コマンドに相当する refreshtabstop_shrink 文
    • 「この列のテキスト幅揃えを更新」コマンドに相当する refreshtabstop_current 文
    • tabcolumnmax キーワード
  • 変更、パラメータ追加等
    • keepobjectの第2パラメータの1は、2と同等となるように変更。
    • deletecolormarkerでレイヤー名がまだ無いときに範囲を指定すると異常終了する問題修正。
    • gettitle(3,#handle)で取得できない場合がある問題修正。
    • createobjectでファイル名指定した場合にファイルを開いたままにならないように修正。
    • colormarker文で強調表示としての振る舞い指定に「数値」を追加。
    • setcomdetachmethodで呼ばれるメソッドは数値パラメータに呼ばれる理由を指定して呼ぶように修正。
    • Hidemaru_EvalMacroでマクロの文法上のエラーなどのとき、返り値にFALSEを返すように修正。
    • keepdllで0を指定するときはsetdlldetachfuncの関数の後にFreeLibraryでDLLを解放するように修正。
    • linelenやlinelen2等に、[]を付けて指定した行の情報を得られるように修正。
    • charcountは0x7fffffffまでに制限するように変更。
    • prevposxがプロポーショナルフォントのときに正しくない問題修正。
    • 「単語の検索の状態を覚える」がOFFのとき、grepdialog2文の0x0001のビット指定が効かない問題修正。
  • その他
    • autocompstate & 0x0004でマクロ実行と同時に単語補完が消えたかどうかを判定可能なフラグを追加。
    • loaddllやkeepobjectを使った後の場合は、瞬間起動のためにプロセスの再利用をしないように修正。
    • 複数選択時のoverwrite文(setcompatiblemode 0x00100000;の状態)ができない問題修正。
    • creatobjectでCOMオブジェクト作成時、bool X64MACRO()というメソッドがあって0以外を返す場合、
    • そのCOMオブジェクトの数値パラーメータは64bit版では64bitの数値を渡すようにした。
    • COMオブジェクトの返り値がいわゆるSafeArrayのときに自動的にオブジェクトに変換するように修正。
    • 除算の最小値/-1でオーバーフロー扱いにしてマクロ停止するように修正。

2.41.2 【2】仕様変更 - 「秀丸エディタ」Ver.8.98

  • マクロでコンパイル可能なメモリの上限を増やした。
  • 文字数計算ダイアログの32bitより大きい数の対応

2.42 秀丸エディタVer.8.99.1 マクロ関連の変更履歴

2.42.1 【1】マクロ関連の変更履歴 - 「秀丸エディタ」Ver.8.99.1

  • その他
    • toupper、tolowerでUnicodeの特定文字で文字幅(固定幅で全角か半角)の状態がおかしい問題と、大文字のアルファ(U+0391)が変換できないバグ修正。

2.43 秀丸エディタVer.8.99.2 マクロ関連の変更履歴

2.43.1 【1】マクロ関連の変更履歴 - 「秀丸エディタ」Ver.8.99.2

  • その他
    • openfile ""; で新規作成になっていなかった問題修正。
    • replacedialogで置換文字列の指定ができていない問題修正。
    • searchdown等のinselect2が事前のsettargetcolormarkerでうまく動作しない問題修正。
    • replaceallquickで複数選択で動作させると異常終了する問題修正。

2.44 秀丸エディタVer.8.99.3 マクロ関連の変更履歴

2.44.1 【1】マクロ関連の変更履歴 - 「秀丸エディタ」Ver.8.99.3

  • その他
    • setmenudelay, setsplitinfo, settabstop があるとcallのラベルへのジャンプやif文がうまくいかない問題修正。

2.45 秀丸エディタVer.8.99.4 マクロ関連の変更履歴

Ver.8.99.4は、マクロ関連の変更はありません。

2.46 秀丸エディタVer.9.00 マクロ関連の変更履歴

2.46.1 【1】マクロ関連の変更履歴 - 「秀丸エディタ」Ver.9.00

  • 追加
    • getgrepfilehist 関数
    • keepdde 文
    • enumregvalue
    • 大文字の FIND文 を追加して、「検索...」コマンド相当ですぐマクロを終了するものを追加。
  • 変更、パラメータ追加等
    • setstaticvariable/getstaticvariable で2を指定して、ファイルを閉じる/閉じて開く操作をしても維持できるモードを追加。
    • setbackgroundmode で動作中のときの中断で、「中断処理中です。」と出ているときでも強制中断できる選択肢を追加。
  • その他
    • tabcolumnmax キーワード が正常に動作していなかったのを修正
    • toupper、tolowerで Unicode の特定文字で文字幅(固定幅で全角か半角)の状態がおかしい問題と、大文字のアルファ(U+0391)が変換できないバグ修正
    • searchdown 等の inselect2 が事前の settargetcolormarker でうまく動作しない問題修正。
    • replacedialog で置換文字列の指定ができていない問題修正。
    • replaceallquick で複数選択で動作させると異常終了する問題修正。
    • TSV/CSVモードの settabstop で横スクロール可能な上限が更新されない問題修正。
    • setmenudelay,setsplitinfo,settabstopがあるとcallのラベルへのジャンプやif文がうまくいかない問題修正。

2.46.2 【2】仕様変更 - 「秀丸エディタ」Ver.9.00

  • disabledrawでタイトルやメニュー等の描画もしないように変更。
  • openbyshellで、動作環境でブラウザを指定している場合、範囲選択した内容でも適用するように変更。
  • openfileでオプションでない単一のファイル指定であってもダブルクォーテーションでくくる書き方に対応。

2.47 秀丸エディタVer.9.10 マクロ関連の変更履歴

2.47.1 【1】マクロ関連の変更履歴 - 「秀丸エディタ」Ver.9.10

  • 追加
    • return_in_cell_modeキーワード追加
  • 変更、パラメータ追加等
    • setcompatiblemode 0x20000;では、カラーマーカーの対象も復元するように修正。
    • input関数の第3パラメータで、0x100で複数行入力を可能にした。
    • colormarker文のRGB値を "#ffffff" といった感じのRGB順の文字列でもできるように修正。
  • その他
    • basename3が取得できない問題修正。
    • Webブラウズモードで260文字を超えるURLでもfilename2で取得できるように修正。

2.47.2 【2】仕様変更 - 「秀丸エディタ」Ver.9.10

  • カレントフォルダ移動しない設定であっても、runsync runsync2 で実行したプログラムのカレントフォルダはファイルのあるフォルダとなる互換を維持するように修正。
  • updatecount は検索したときは上がらないように修正。

2.48 秀丸エディタVer.9.11 マクロ関連の変更履歴

2.48.1 【1】マクロ関連の変更履歴 - 「秀丸エディタ」Ver.9.11

  • その他
    • tabcolumnmax キーワード が正常に動作していなかったのを修正

2.49 秀丸エディタVer.9.12 マクロ関連の変更履歴

2.49.1 【1】マクロ関連の変更履歴 - 「秀丸エディタ」Ver.9.12

  • 追加
    • refcall 文
    • join 関数
    • getfiletime 関数
    • setregularcache 文
    • disabledraw2 文
    • darkmode キーワード
  • 変更、パラメータ追加等
    • config文で指定できるものに xHilightTitle, xHilightDirectWord, xHilightDirectMulti, xHilightDirectIfdef を追加
    • setstaticvariableの種類の-1の指定で一時的な制限の無い変数の出し入れを追加。
    • getconfig関数の"RulerColor"が「文字と同じ」、"RulerBack"が「背景と同じ」の場合は、空の文字列を返すように修正。
  • その他
    • basenameの角括弧の添え字ができないバグ修正。
    • configcolor文の65~66番や色の指定方法の追加と、ヘルプに書かれていなかった番号の不足分を追記。(65でカーソル色、66でルーラー色)
    • message文で文字が多すぎてウィンドウが出ない場合の対策。
    • getconfig("Tab")でマイナス値の取得が64bit整数版でできなかった問題修正。
    • 単語補完にテンプレート(スニペット)が含まれる場合、autocomplete 文でのマクロの直接選択はできないように修正。

2.49.2 【2】仕様変更 - 「秀丸エディタ」Ver.9.12

  • callのネストの上限を200から150に変更。(内部的な都合)

2.50 秀丸エディタVer.9.13 マクロ関連の変更履歴

【1】マクロ関連の変更履歴 - 「秀丸エディタ」Ver.9.13

2.50.1 【1】マクロ関連の変更履歴 - 「秀丸エディタ」Ver.9.13

  • その他
    • Ver.9.12で、setactivehidemaru使用時に文字列変数がおかしくなる場合がある問題修正。

2.51 秀丸エディタVer.9.14 マクロ関連の変更履歴

Ver.9.14は、マクロ関連の変更はありません。

2.52 秀丸エディタVer.9.15 マクロ関連の変更履歴

【1】マクロ関連の変更履歴 - 「秀丸エディタ」Ver.9.15

2.52.1 【1】マクロ関連の変更履歴 - 「秀丸エディタ」Ver.9.15

  • 追加
    • stophistory キーワード
    • regulardll キーワード
    • lastupdatedx キーワード
    • lastupdatedy キーワード
  • 変更、パラメータ追加等
    • template 文で、パラメータでファイル名明示指定して実行できるようにした。
    • getresultex(25) を追加して起動数の上限のエラーが発生したかどうかを取得可能にした。
    • setfilehist で、カーソル位置の自動復元の位置を指定するパラメータ追加。
    • findmarkerlist文で色などを取得パラメータを追加。
    • getmaxinfo の検索文字列などの上限は4094となるように変更。
  • その他
    • localgrepで設定の組み合わせによってgrep結果の先頭にUTF-16のBOM相当の文字が挿入される問題修正。
    • マクロ実行のダイアログで、ファイル名を "" でくくったばあいの対応を追加。
    • Hidemaru_GetStaticVariable, Hidemaru_SetStaticVariableを追加

2.53 秀丸エディタVer.9.16 マクロ関連の変更履歴

【1】マクロ関連の変更履歴 - 「秀丸エディタ」Ver.9.16

【2】仕様変更 - 「秀丸エディタ」Ver.9.16

2.53.1 【1】マクロ関連の変更履歴 - 「秀丸エディタ」Ver.9.16

  • 追加
    • up_nowrap、down_nowrap文追加(「カーソル上(折り返し無視)」「カーソル下(折り返し無視)」コマンド)。
    • browsefile関数
    • strreplace関数
  • 変更、パラメータ追加等
    • eventの値 9の追加と、geteventparam で直前の選択内容の取得を追加。
    • scrolllink文で自分自身を指定できないように修正。
    • openfile等のエンコードの種類で数値の指定も対応。
    • eval内でsetcompatiblemode 0x20000したときは、evalの外で検索文字列を復帰するように変更。
    • split関数で一文字ずつの文字列分割でサロゲートペアは割れないように変更。
  • その他
    • setstaticvariableで全部消去のパラメータ指定ができていなかった問題修正。
    • colormarker文などの文字列のRGB指定がうまくいかない場合がある問題修正。
    • ダークモードでgettitle(1)ができないバグ修正。

2.53.2 【2】仕様変更 - 「秀丸エディタ」Ver.9.16

  • マクロ実行で最初のメモリ確保でエラーになったときそれ以上続行しないように修正。

2.54 秀丸エディタVer.9.17 マクロ関連の変更履歴

【1】マクロ関連の変更履歴 - 「秀丸エディタ」Ver.9.17

2.54.1 【1】マクロ関連の変更履歴 - 「秀丸エディタ」Ver.9.17

  • その他
    • execmacroで相対パス指定時の互換の動作の修正。

2.55 秀丸エディタVer.9.18 マクロ関連の変更履歴

Ver.9.18は、マクロ関連の変更はありません。

2.56 秀丸エディタVer.9.19 マクロ関連の変更履歴

秀丸エディタ本体の更新内容に関しては、秀丸エディタ Ver9.19の変更点を参照してください。

【1】マクロ関連の変更履歴 - 「秀丸エディタ」Ver.9.19

【2】仕様変更 - 「秀丸エディタ」Ver.9.19

2.56.1 【1】マクロ関連の変更履歴 - 「秀丸エディタ」Ver.9.19

  • 追加
    • jsmode 文
    • execjs 文
    • JavaScriptの名前変更に対応する文を従来のマクロでもできるように追加。 escapeselect、 find1、replace1、del 等
    • currentjsfilename キーワード
    • inputstates キーワード
    • gettotaltext()、getlinetext()、getselectedtext() 関数
    • KEYASSIGN 文
    • EDITMENU 文
    • hidemaruversion 文
    • switchregular、switchword、switchcasesense 文
  • 変更、パラメータ追加等
    • encodeuri 関数で数字を変換しないように修正。
    • setfilehist で -2 を指定したときうまくいかない問題修正。
    • browsefile 関数で新規作成時の問い合わせを出すように修正。
    • colormarker 文で json 指定を追加
    • setsearchhist で先頭に挿入するパラメータ追加
    • colorcode で幅ゼロのカラーマーカーの取得の情報も追加。
    • disabledraw2 に対する enabledraw でも縦スクロール位置のパラメータは有効に変更。
    • config "xStripe:+";でストライプ表示ONも可能にした。
  • その他
    • split関数がUTF-8のマクロファイルで全角文字などのとき、うまく動作しない問題修正。
    • runsync の終了判断がうまくいかない場合がある問題修正。
    • setbackgroundmode 時はタブモードの切り替えはできないように修正。
    • マクロの """~""" の文字列対応。
    • escape 文などが裏で実行されるとフォーカス消失する問題など修正。

2.56.2 【2】仕様変更 - 「秀丸エディタ」Ver.9.19

  • js{}内の記述でマクロ上のJavaScriptの書き方に対応。
  • HideMath.dllを通常版でも標準付属。
  • マクロファイルはBOMなしUTF-8ファイルでも自動認識できるように修正。
  • タブモードでtitle -1したウィンドウのfindwindowによる検索は、非タブモード互換の動作で、タブ内の仮想的なタイトルバーを検出可能にするように修正。

2.57 秀丸エディタVer.9.20 マクロ関連の変更履歴

【1】マクロ関連の変更履歴 - 「秀丸エディタ」Ver.9.20

【2】仕様変更 - 「秀丸エディタ」Ver.9.20

2.57.1 【1】マクロ関連の変更履歴 - 「秀丸エディタ」Ver.9.20

  • 追加
    • [javascript]hidemaruオブジェクトに sendMessage、getCursorPos、getCursorPosFromMousePos を追加。
    • setselectionrange 文追加。
    • getselectedrange 関数追加。
    • hidemaruversionキーワード追加。
    • [javascript]Stdioオブジェクトに flushメソッド、flushedプロパティ追加
  • 変更、パラメータ追加等
    • setsplitinfoでスクロールの絶対位置を指定できるように追加。
    • getcolormarkerでJSONまたはオブジェクト指定されたプロパティのみフィルタリングして取得できるように修正。
    • colormarker の強調指定で especially1 の指定ができない、getcolormarker で先頭からの順番取得などうまくいかない点や、jsでなくてもスタイルの文字列など修正。
    • gettitleでタブ名の取得がうまくいかない場合がある問題修正。
    • getfiletimeの書式で令和がおかしい問題修正。
    • [javascript]jsで非同期の関数でhidemaruGlobalができないときのエラーをdebuginfoの出力にも出すように修正。(JScriptのみ)
    • getresultex(26);でファイル保存後のエラーコード取得の追加と、エラー時のタブの更新など。
    • platformキーワードでプライベートモードかどうか判別できるように修正。
    • autocommstateにツールチップの情報取得追加。
    • writeregnumでMenuBarという値名でメニューバー相当のExEnv2バイナリ値にリダイレクトするように修正。
  • その他
    • colormarker文で行の強調3としての指定がうまくできなかった問題修正。
    • getcolormarkerでcolorcodeやuserdataのフィルタリングの調整。
    • getcolormarkerのJSON指定で"userdata"が取得できていなかった問題修正。
    • jsmode "WebView2"の後のopenfileなどでマウスカーソルが消えたままになる問題修正
    • input関数で複数行のときのダイアログのサイズの修正。

2.57.2 【2】仕様変更 - 「秀丸エディタ」Ver.9.20

  • プログラム実行などのコマンドライン文字列の8KBまでの対応
  • ブックマークのパスで「js:~」と書くと「mac:js{~}」と同等にJavaScriptの実行できるように修正。
  • 起動オプション/rrの後の再読み込みで状態が維持されるように修正。
  • デスクトップ保存で閲覧モード、/rr、/bbの情報も保存するように修正。

2.58 秀丸エディタVer.9.21 マクロ関連の変更履歴

【1】マクロ関連の変更履歴 - 「秀丸エディタ」Ver.9.21

2.58.1 【1】マクロ関連の変更履歴 - 「秀丸エディタ」Ver.9.21

  • その他
    • Ver.9.20でマクロ登録の反映後に落ちる問題修正。
    • getlinetextで折り返しがあると最後行が取得できない問題修正。
    • refcallで呼んでいる中でexecmacroすると参照の変数ができない問題修正。
    • decodeuriで%が無い場合やencodeuriされた文字でない場合の問題修正。

2.59 秀丸エディタVer.9.22 マクロ関連の変更履歴

秀丸エディタ本体の更新内容に関しては、秀丸エディタ Ver9.22の変更点を参照してください。

【1】マクロ関連の変更履歴 - 「秀丸エディタ」Ver.9.22

【2】仕様変更 - 「秀丸エディタ」Ver.9.22

2.59.1 【1】マクロ関連の変更履歴 - 「秀丸エディタ」Ver.9.22

  • 追加
    • config、configcolor、getconfig、getconfigcolorのJSON記述対応
    • setbrowserpanetarget文、showbrowserpane文、refreshbrowserpane文、browserpanehandleキーワード、setbrowserpaneurl文、 browserpaneurlキーワード、setbrowserpanesize文、browserpanesizeキーワード、browserpanecommand文/関数
    • renderpanecommand文/関数
    • setrenderpanetarget文、registercallback関数、registercallback に対する event
    • endmacro_postcommand、keyhook、clearkeyhoook
    • xpixel2、ypixel2
    • keyhook に対する event と geteventparam
    • [JavaScript]hidemaru.saveTextFile
    • [JavaScript]hidemaru.setInterval、hidemaru.clearInterval
    • [JavaScript]hidemaru.getPixelPosFromCursorPos
    • [JavaScript]console.warnを独自に実装
  • 変更、パラメータ追加等
    • menu文でサブメニューとなって項目が多くて画面からはみ出るとき、ダークモードで多段になっていたのをやめてスクロールに変更。
    • getselectedrangeを選択していないときに呼ぶと選択される場合がある問題修正。
    • forwardtab、backtabで数値指定の追加。
    • eventに10を追加。
    • disabledraw2でのenabledrawで横スクロール位置指定不足の対応。
  • その他
    • decodeuriで%が無い場合やencodeuriされた文字でない場合の問題修正。
    • refcallで呼んでいる中でexecmacroすると参照の変数ができない問題修正。
    • getlinetextで折り返しがあると最後行が取得できない問題修正。
    • iskeydownの処理改善。
    • setTimeoutなどでメモリリークの修正。
    • freedllで余計に解放していたバグ修正

2.59.2 【2】仕様変更 - 「秀丸エディタ」Ver.9.22

  • マクロファイルはUTF-8やUTF-16でなければ、欧文ファイル上の欧文マクロファイルの動作は廃止して、Shift_JIS解釈に固定に変更。
  • hidemaru.exeの終了コードは特に理由が無ければ0で固定となるようにした。

2.60 秀丸エディタVer.9.23 マクロ関連の変更履歴

【1】マクロ関連の変更履歴 - 「秀丸エディタ」Ver.9.23

【2】仕様変更 - 「秀丸エディタ」Ver.9.23

2.60.1 【1】マクロ関連の変更履歴 - 「秀丸エディタ」Ver.9.23

  • その他
    • マクロでrefcallと複数の秀丸エディタでの使用で落ちる問題修正。
    • マクロの中断具合の調整。

2.60.2 【2】仕様変更 - 「秀丸エディタ」Ver.9.23

  • 起動オプション/fの改行やBOM指定などの追加。(新規ファイル時)

2.61 秀丸エディタVer.9.24 マクロ関連の変更履歴

【1】マクロ関連の変更履歴 - 「秀丸エディタ」Ver.9.24

2.61.1 【1】マクロ関連の変更履歴 - 「秀丸エディタ」Ver.9.24

  • その他
    • 個別ブラウザ枠にフォーカスがあるときにWebView2のマクロ実行で操作できなくなるバグ修正。
    • マクロ実行中にマクロ実行できない警告で、ブックマークやプロジェクトのmac:でチェックされていなかった問題修正。

2.62 秀丸エディタVer.9.25 マクロ関連の変更履歴

【1】マクロ関連の変更履歴 - 「秀丸エディタ」Ver.9.25

【2】仕様変更 - 「秀丸エディタ」Ver.9.25

2.62.1 【1】マクロ関連の変更履歴 - 「秀丸エディタ」Ver.9.25

  • 追加
    • execeventmacro 文
    • [JavaScript]hidemaru.createHttpServer
    • [JavaScript]hidemaru.isProcessIdValid
    • getimecandidatelist 関数
    • shifthome 文
    • shiftend 文
  • 変更
    • input関数で、サイズを指定するパラメータ追加
    • browserpanecommandで、各種不足していた操作など追加
    • prevposx、prevposyで、引数に-1を追加。
    • HmOutputPane.dllの関数にClear()追加
    • getfocus、setfocusでブラウザ枠の番号追加。
    • browserpanecommand の"copy"で、ブラウザ枠内で範囲選択している箇所をコピー可能にした。
    • [JavaScript]hidemaru.setTimeout、hidemaru.setInterval のパラメータ3追加。
  • その他
    • inputstatesでマウスを動かしたときも入力と判断されやすくするように調整。
    • grepfolderbufferがif文で飛ばせない問題修正。
    • 自動起動マクロの[ファイルを閉じる直前]で、保存の問い合わせ中に再度自動起動マクロが働かないような対策。
    • postExecMacroMemoryでautocompleteの同期を出すときの修正。
    • insert(数字)ができなくなっていた問題修正。
    • getcolormarkerで範囲に絞り込むときの位置がずれているバグ修正。
    • loaddllで64bit版での32bit DLLが設定をONにしていてもできなかったバグ修正。

2.62.2 【2】仕様変更 - 「秀丸エディタ」Ver.9.25

  • 起動オプション/fの改行やBOM指定などの追加。(新規ファイル時)

2.63 秀丸エディタVer.9.26 マクロ関連の変更履歴

Ver.9.26は、マクロ関連の変更はありません。

2.64 秀丸エディタVer.9.27 マクロ関連の変更履歴

【1】マクロ関連の変更履歴 - 「秀丸エディタ」Ver.9.27

2.64.1 【1】マクロ関連の変更履歴 - 「秀丸エディタ」Ver.9.27

  • その他
    • question文でEscで[いいえ]になっていなかったのを再びできるように修正。
    • closehidemaruがうまくいかない場合がある問題修正。

2.65 秀丸エディタVer.9.28 マクロ関連の変更履歴

【1】マクロ関連の変更履歴 - 「秀丸エディタ」Ver.9.28

2.65.1 【1】マクロ関連の変更履歴 - 「秀丸エディタ」Ver.9.28

  • その他
    • closehidemaruがうまくいかない場合がある問題修正。

2.66 秀丸エディタVer.9.30 マクロ関連の変更履歴

【1】マクロ関連の変更履歴 - 「秀丸エディタ」Ver.9.30

【2】仕様変更 - 「秀丸エディタ」Ver.9.30

2.66.1 【1】マクロ関連の変更履歴 - 「秀丸エディタ」Ver.9.30

  • 追加
    • [JavaScript]hidemaru.runProcessのProcessInfoオブジェクトにonCloseメソッド追加
  • その他
    • getconfigで"cl"を指定するとカーソル行OFFだったのがONになってしまう問題修正。

2.66.2 【2】仕様変更 - 「秀丸エディタ」Ver.9.30

  • キー操作の保存でShiftを押しながらのときは"""の文字列の形式にしてみる。(暫定)
  • [次の検索色付け]/[前の検索色付け]コマンド追加。

2.67 秀丸エディタVer.9.32 マクロ関連の変更履歴

【1】マクロ関連の変更履歴 - 「秀丸エディタ」Ver.9.32

【2】仕様変更 - 「秀丸エディタ」Ver.9.32

2.67.1 【1】マクロ関連の変更履歴 - 「秀丸エディタ」Ver.9.32

  • その他
    • HmJre.dll V5.34にして、クイック全置換の正規表現の行頭(^)がうまくいかない場合がある問題修正。
    • filter関数でhmfjs指定時にgetresultex(18)が得られない問題修正。
    • keepdllで3を指定してファイルを閉じたときにしてみる。(暫定)

2.67.2 【2】仕様変更 - 「秀丸エディタ」Ver.9.32

  • デスクトップ復元で、アクティブだったタブを復元するように修正。

2.68 秀丸エディタVer.9.33 マクロ関連の変更履歴

Ver.9.33は、マクロ関連の変更はありません。

2.69 秀丸エディタVer.9.34 マクロ関連の変更履歴

Ver.9.34は、マクロ関連の変更はありません。

2.70 秀丸エディタVer.9.35 マクロ関連の変更履歴

【1】マクロ関連の変更履歴 - 「秀丸エディタ」Ver.9.35

【2】仕様変更 - 「秀丸エディタ」Ver.9.35

2.70.1 【1】マクロ関連の変更履歴 - 「秀丸エディタ」Ver.9.35

  • 追加
    • settotaltext、hidemaru.setTotalText追加。
    • keepobjectのパラメータ追加。
  • 変更
    • hidemaru.postExecMacroMemoryで成否を返すようにした。
    • settotaltextは部分編集を解除するように変更。
    • endmacro_postcommandはそのマクロ自身がすぐ終了しなかったのを終了するように修正。
  • その他
    • down 数字;で行選択モードのときうまくいかない問題修正。
    • existfileの非同期対応。
    • renderpanecommandの前にhidemaru.setIntervalするとおかしい問題修正。
    • setactivehidemaruが失敗する場合の対策。
    • openbyshellのパラメータ指定でfile: の日本語などのパスがうまくいかないのを修正

2.70.2 【2】仕様変更 - 「秀丸エディタ」Ver.9.35

  • 各種ブラウザ枠は、ダークモードやライトモードの影響を受けないように変更。

2.71 秀丸エディタVer.9.37 マクロ関連の変更履歴

【1】マクロ関連の変更履歴 - 「秀丸エディタ」Ver.9.37

【2】仕様変更 - 「秀丸エディタ」Ver.9.37

2.71.1 【1】マクロ関連の変更履歴 - 「秀丸エディタ」Ver.9.37

  • その他
    • jsmodeで "allreset"した後の getJsMode がおかしかった問題修正。

2.71.2 【2】仕様変更 - 「秀丸エディタ」Ver.9.37

  • Home/Endキーにキー割り当てされている場合のアウトライン解析の枠の動作の調整。
  • [動作環境]→[ウィンドウ]→[横スクロールバー]→[編集して上限が小さくなるときも自動調整する]は非推奨という位置づけにして、対応する括弧の強調も保持するように修正。
  • 前/次ページ、ファイルの先頭/最後コマンドにキー割り当てされたコマンドをアウトライン解析の枠上で実行したときの対応。
  • ファイルマネージャ枠などのスクロールバー部分などでホイールが効かない問題修正。

2.72 秀丸エディタVer.9.39 マクロ関連の変更履歴

【1】マクロ関連の変更履歴 - 「秀丸エディタ」Ver.9.39

【2】仕様変更 - 「秀丸エディタ」Ver.9.39

2.72.1 【1】マクロ関連の変更履歴 - 「秀丸エディタ」Ver.9.39

  • 追加
    • jsの非同期対応を一部追加。
    • awaitjs 文と hidemaru.notifyAwait メソッド追加。
  • 変更
    • config関係のJSON記述できる箇所を増やした。
  • その他
    • hidemaru.getVar で数値の配列ができない問題修正。
    • showvars で配列がマイナス時の表示の修正。
    • js のdown()で256以上できなかった問題修正。
    • 従来マクロの一部の内部的な改善。
    • Windows 11 24H2 で JScript が落ちるかもしれない場合の対策。

2.72.2 【2】仕様変更 - 「秀丸エディタ」Ver.9.39

  • [その他]→[動作環境]→[環境]→[高度な環境2]に、「ブラウザ枠/WebView2を使わない」オプションを追加。 ### 秀丸エディタVer.9.41 マクロ関連の変更履歴{#V941}

【1】マクロ関連の変更履歴 - 「秀丸エディタ」Ver.9.41

【2】仕様変更 - 「秀丸エディタ」Ver.9.41

2.72.3 【1】マクロ関連の変更履歴 - 「秀丸エディタ」Ver.9.41

  • その他
    • 従来マクロの createobject が keepobject 指定なしのときでも closenew や loadfile で解放されていた問題修正。
    • menu 文の内部的な高さ計算のずれ修正。
    • JavaScript のマクロで固まる場合がある問題修正。
    • findwindow で固まる場合がある問題修正。

2.72.4 【2】仕様変更 - 「秀丸エディタ」Ver.9.41

  • 検索のカーソル位置が固定に設定されているときは、ファイル末尾のスクロール位置も画面の半分までではなく、固定となるように変更。

2.73 秀丸エディタVer.9.43 マクロ関連の変更履歴

【1】マクロ関連の変更履歴 - 「秀丸エディタ」Ver.9.43

2.73.1 【1】マクロ関連の変更履歴 - 「秀丸エディタ」Ver.9.43

  • 追加
    • 非同期対応とconfigのJSON対応など。
    • getdpi関数。
  • その他
    • JavaScriptでファイルを閉じたときにインスタンスが閉じない問題修正。
    • V9.43β2でWebView2でsprintfが落ちていた問題修正。
    • input関数の複数行のダイアログは、他のサイズ変更可能なダイアログ同様 dpiの異なるモニタでは移動できないようにした。(無理矢理はできてしまう)
    • デスクトップ復元時の自動起動マクロの実行タイミング調整。(Ver.9.44で再修正)

2.74 秀丸エディタVer.9.44 マクロ関連の変更履歴

Ver.9.44は、マクロ関連の変更はありません。 (デスクトップ復元の調整を従来通りに戻した。(自動起動マクロで固まったりする))

2.75 秀丸エディタVer.9.46 マクロ関連の変更履歴

【1】マクロ関連の変更履歴 - 「秀丸エディタ」Ver.9.46

【2】仕様変更 - 「秀丸エディタ」Ver.9.46

2.75.1 【1】マクロ関連の変更履歴 - 「秀丸エディタ」Ver.9.46

  • 追加
    • findmarkerlist で個数の取得や先頭に移動する方法追加。
    • inputstates で「現在操作していないウィンドウ」を取得可能にした。
  • 変更
  • その他
    • colormarker のjson/オブジェクト指定で選択が無いときなどの問題修正。
    • currentjsfilename が execjs でないとき動作していなかった問題修正。
    • js の insert() で第2パラメータの指定で改行できない問題修正。
    • 非アクティブな秀丸エディタで renderpanecommand({show:0})  をすると本体にフォーカスを与えようとする問題修正。

2.75.2 【2】仕様変更 - 「秀丸エディタ」Ver.9.46

  • hidemaru.postExecMacroFileによる実行はキー操作の記録されないように修正。

2.76 秀丸エディタVer.9.50 マクロ関連の変更履歴

【1】マクロ関連の変更履歴 - 「秀丸エディタ」Ver.9.50

【2】仕様変更 - 「秀丸エディタ」Ver.9.50

2.76.1 【1】マクロ関連の変更履歴 - 「秀丸エディタ」Ver.9.50

  • 変更
    • browserpanecommandのfocusinputfieldをJSON/オブジェクトの表現で要素を明示的に指定できるようにした。
    • getresultex(28)で、強調表示の1つが長すぎた場合を検出できるように修正。
    • setcompatiblemode 0x02000000; のとき、down; 等でスクロールが発生するときでもカーソル行下線が見えるように修正。
    • configのJSON対応の一部追加。

2.76.2 【2】仕様変更 - 「秀丸エディタ」Ver.9.50

  • 検索での表示が点滅表示のとき、Escキーで解除できるように変更。
  • HmJre.dll V5.36に更新してあいまい検索の特殊空白同一視の不足分の修正。
  • ダークモードの調整。
  • 比較の色付けで、EOFのある行の末尾の色の修正。
  • やり直しで改行文字のぶら下げがある場合の修正。
  • ポータブル版(持ち出しキット相当)で動作中に設定内容の保存で文字化けした内容が出力されてしまう問題修正。

2.77 秀丸エディタVer.9.52 マクロ関連の変更履歴

【1】マクロ関連の変更履歴 - 「秀丸エディタ」Ver.9.52

【2】仕様変更 - 「秀丸エディタ」Ver.9.52

2.77.1 【1】マクロ関連の変更履歴 - 「秀丸エディタ」Ver.9.52

  • 追加
    • closedesktop(デスクトップを閉じる)を追加。
    • getvd()関数追加。
  • 変更
    • 非同期でbrowserpanecommandで個別ブラウザ枠の表示を切り替えるとファイルタイプ別の設定の記憶が更新される問題修正。
  • その他
    • HmJre.dll 更新 Ver.5.37
    • HmJre.dll 更新 Ver.5.38
    • Ver.9.52β4でブックマークのマクロ実行ができなかった問題修正。
    • setcompatiblemode 0x08000000;のマクロと通常のマクロが同時に起動しないような対策。
    • enabledrawのちらつき低減。
    • hidemaru.httpServerオブジェクトのレスポンスでサイズがゼロで返すとエラーになる問題の修正。
    • Ver.9.00以降setwindowposで行数がずれる問題修正。

2.77.2 【2】仕様変更 - 「秀丸エディタ」Ver.9.52

  • ファイルヒストリ項目の常駐を切り替えたときにレジストリも更新する修正。
  • ファイルタイプ別の設定が変わることによって個別ブラウザ枠のプライベートブラウジングの設定変化時は個別ブラウザ枠の内容を消すように修正。

2.78 秀丸エディタVer.9.53 マクロ関連の変更履歴

Ver.9.53は、マクロ関連の変更はありません。 (Ver.9.52で見出しバーの表示で落ちる場合がある問題修正。)

3 正規表現関連

3.1 正規表現エンジン

2025/10/06 BRegIf.dll+bregonig.dll を更新

64bit対応について
マクロ用DLLと異なり、正規表現エンジンは、使用する秀丸エディタと同じbitのDLLしか使えません。
  • 64bit 秀丸エディタの場合、正規表現DLLは、64bitのDLLしか使用できない
  • 32bit 秀丸エディタの場合、正規表現DLLは、32bitのDLLしか使用できない
64bit対応しているのは、hmjre.dll、hmonig.dllです。 JRE32.DLL、BRegIf.dllの64bit版はありません。

3.1.1 hmjre.dll

秀丸エディタの正規表現エンジンは、JRE32.DLLからhmjre.dllに変更になっています。 hmjre.dllはJRE32.DLLに対して、以下の拡張が行われています。

  • パターンの繰り返し回数指定

    {n}
    {n,}
    {n,m}
  • 後方一致指定

    (?=expression)
  • 後方不一致指定

    (?!expression)
  • 前方一致指定

    (?<=expression)
  • 前方不一致指定

    (?<!expression)
  • 一般的正規表現互換のタグ付き正規表現

    \1 \2 ...
  • 繰り返しマッチングでのものぐさ指定(最短一致)

     *?
     +?
     ??
     {n,m}?
  • ヒットした扱いにするタグ指定

    (?\tag-number)

hmjre.dllのVer.3.00以降、さらに拡張が進み、

  • 文字クラスの略記法(\s,\S,\d,\D,\c,\C,\i,\I,\y,\Y)
  • グルーピングのみの括弧(タグ指定の対象にならない括弧)
  • 埋め込みコメント
  • \Q~\E を使用した、メタ文字のエスケープ範囲指定

以上の機能が、追加されています。詳細は、hmjre.dllのヘルプを参照してください。

3.1.2 BRegIf.dll+BREGEXP.DLL

BREGEXP.DLLを使うことにより、Perl互換(1996/05/25辺りのPerl5)の正規表現が使えます。使用するにはBRegIf.dllが必要です。

hmjre.dllに比べ、使用できる正規表現は増えますが、以下の制限があります。

  • あいまい検索が使用できない。
  • BRegIf.dll独自機能の関係で、エスケープが必要な文字が増える。("&"、";")

2007/09/16に公開されたバージョン(BRegIf.dll v0,0,2,2)では、K.Takata氏の修正が取り込まれ、括弧を使用した場合でも、置換で"\1"によるタグ参照が可能です。 "bregonig.dll"を認識し、"bregonig.dll"-->"BREGEXP.DLL"の順番でDLLのロードを試みます。明示的に"BREGEXP.DLL"を使用したい場合は、"bregonig.dll"をリネームするか、削除しておく必要があります。

3.1.3 BRegIf.dll+bregonig.dll

bregonig.dllを使うことにより、鬼車の正規表現が使えます。 (使用できる正規表現や、制限事項等は、bregonig.dllのドキュメントを参照) 使用するにはBRegIf.dll(v0,0,2,2)が必要です。

  • BRegIf.dll
  • bregonig.dll(http://k-takata.o.oo7.jp/) 2025/10/06現在アクセス不可

BRegIf.dll+BREGEXP.DLLと同じ制限があります。

bregonig.dllのインターフェースが、"BREGEXP.DLL"と同じであることを利用して、動作させています。

"bregonig.dll"-->"BREGEXP.DLL"の順番でDLLのロードを試みます。あまりないとは思いますが、"bregonig.dll"のロードに失敗した場合、"BREGEXP.DLL"が使用されることになります。 "bregonig.dll"を使用する場合は、"BREGEXP.DLL"を削除、またはリネームしておいた方がいいかもしれません。

"bregonig.dll"のバージョンが1.41未満の場合、BRegIf.dllの独自拡張機能である、";1"によるサブパターン指定が、正常に動作しません。サブパターン選択を使用する場合は、Version.1.41以降が必要です。

bregonig.dllは、Unicode対応版のVer.2.00以降がありますが、BRegIf.dllからは、Unicode対応のAPIは呼び出していません。その為、Ver.2.00以降を使用しても、動作はANSI/Shift_JIS 専用版と同じです。

3.1.4 hmonig.dll

hmonig.dllを使うことにより、鬼車の正規表現が使えます。 Ver.0.5.9.0以降では、鬼雲(Onigmo (Oniguruma-mod) ) の正規表現が使えます。 (使用できる正規表現や、制限事項等は、hmonig.dllのドキュメントを参照)

以下の制限があります。

  • あいまい検索が使用できない。(Ver.0.5.6.0以降は、hmjre.dll経由で使用可能)
  • ブラケット内の"\uxxxx"には対応していない。(Ver.0.5.0以降は対応)

3.1.5 正規表現スピードチェック実行結果

hmjre.dll Ver.4系の動作検証用マクロ(秀まるお氏作成)を、ちょっと改造したマクロの実行結果です。

以下のDLLをロードし、実行しています。

  • hmjre.dll Ver.5
  • hmonig.dll(UNICODE版 USE_COMBINATION_EXPLOSION_CHECK有効) Ver.8.3.0

実行したマクロ実行結果(2019/08/31更新)

結果が「-1」なのは、チェックをスキップした場合です。

測定結果10回分の平均値です。

結果 HmJreV5 hmonig(UNICODE)
No.001 165.6 140.4
No.002 254.6 179.7
No.003 4843.7 137.6
No.004 167.2 151.6
No.005 13311.3 132.7
No.006 390.8 150.1
No.007 164.1 153.1
No.008 229.5 211.2
No.009 201.5 6896.4
No.010 143.6 157.7
No.011 870 293.8
No.012 179.5 303
No.013 179.6 181.2
No.014 183 -1
No.015 189.2 218.7
No.016 235.8 195.3
No.017 215.6 -1
No.018 194 -1
No.019 223.4 534.6
No.020 211 531.3
No.021 218.8 1399.8
No.022 229.8 1304.7
No.023 214 137.6
No.024 270.4 157.8
No.025 6219 159.4

3.2 正規表現メモ

秀丸エディタにおけるタグ付き正規表現の上限を修正

3.2.1 否定文字クラス

一致して欲しくない文字の集合。指定された文字に一致しない文字にマッチする。 "\n"も含め、"一致しない文字"全てにマッチします。("."と違い、"\n"を含めたくない場合は、明示的に指定する必要あり。)

DLLのページにある、ファイルパスの分割で、ファイル名を分割するのに、否定クラス([^\\]+)を使用しているが、対象文字列を、

    $name = "C:\\Program Files\\Hidemaru\\hidemaru.exe\n";
                                                      ====追加

にすると、最後のファイ名の所で、改行文字までマッチします。否定クラスを使う場合、意図しない箇所までマッチする事があるので、注意が必要です。

3.2.2 タグ付き正規表現(hmjre.dll 括弧での指定)

一般的(?)な正規表現と違い、ネストした括弧に対応していないので注意。一番浅い括弧をタグと認識する。

aa(bbb(ccc)dddd)(eeeee)
   ============  =====
        \1         \2
(ccc)はタグと認識しない。

3.2.3 後方一致指定と後方不一致指定

肯定先読み、否定先読みとも呼ばれています。 "^"や"$"と同じアンカーで位置にマッチする。単独で指定した場合は、"文字"にマッチしないので、「検索文字列の強調表示」しても強調表示されない。

  • 後方不一致/否定先読みの例1(単独で使用した場合)

    (?!A) ==> "A"でない文字の先頭にマッチする。 
  • 後方不一致/否定先読みの例2

    Hidemaru(?!Editor) ==> "Editor"が後ろにある、"Hidemaru"にマッチする。 
  • 後方不一致/否定先読みの例3
    最後にある必要はなく、以下のような書き方もできます。

    (?!000)[0-9]{3} ==> "000"ではない3桁の数

    正確(?)には、「"000"に一致しない3桁の数字」になるのかな?「"000"が前にない3桁の数字」ではないので注意。

  • 後方一致/肯定先読みの例

    (?=000)[0-9]{3} ==> "000"に一致する、3桁の数字
    1. "000"であるかチェック
    2. 後方一致/肯定先読み は、位置にマッチする = 幅を持たないので、次の正規表現のチェック開始位置を動かさない。
    3. 数字が3桁連続しているかチェック

    上記、(1)と(3)は、正規表現のチェック開始位置は、同じです。

    もし、後方一致/肯定先読みではない場合は、

    000[0-9]{3}
    1. "000"であるかチェック
    2. マッチした場合は、マッチ範囲分だけ、次の正規表現のチェック開始位置をずらす。
    3. 数字が3桁連続しているかチェック

    という動作になります。

後方一致/肯定先読み、後方不一致/否定先読み が、チェック開始位置を動かさない為、以下の様な書き方をした場合、両方の条件を満たす場合のみ、マッチするような動作になります。

(?!000)[0-9]{3} ==> "000"ではない3桁の数
(?=000)[0-9]{3} ==> "000"に一致する、3桁の数字

3.2.4 前方一致指定と前方不一致指定

肯定後読み、否定後読みとも呼ばれています。 "^"や"$"と同じアンカーで位置にマッチする。単独で指定した場合は、"文字"にマッチしないので、「検索文字列の強調表示」しても強調表示されない。

(?<=A) ==> "A"の最後(末尾)にマッチする。

"後読み"と言われているように、最後にマッチ判定を行います。

(<=aaa)(bbb)ccc(ddd) ==> (bbb)ccc(ddd)にマッチする箇所を探してから、
                         (<=aaa)にマッチするか判定する。

使用するDLLによって、制限があるので注意すること。

  • 必ず先頭にあること
  • 可変長の指定はできない。(hmjre.dllでは可能)

3.2.5 grepで条件に一致しない行を列挙する

秀丸エディタVer.8より、grepに「ヒットしない行」というオプションが追加され、秀丸エディタの機能で、条件に一致しない行を列挙可能になっています。

BRegIf.dllはBREGEXP.DLLへの仲介を行うだけでなく、独自の拡張が行われて、パターンの否定が出来ます。(詳細は添付されているテキストファイルを参照)

hmjre.dllの場合は、後方不一致指定を使えば可能。

^((?!一致しない文字列).)+$

参考サイト:正規表現パズル

一致しない条件が一文字または、どれか1文字という場合は、

^[^a]+$

という、否定クラスを使う方法もあります。

以下の正規表現は、"ab"を含まないという表現にはならないので、注意すること。

^([^a][^b])+$

3.2.6 \wの違い

\wは一般的に、単語構成文字([a-zA-Z_0-9])のクラス略記法ですが、使用するDLLによって、扱いが異なります。(正規表現は処理系毎に、微妙に異なることが多い事と、多言語対応による。)

3.2.6.1 hmjre.dll

JRE32.DLLと同様のため、[a-zA-Z_]+ になります。数字が含まれない事と、文字ではなく、文字列にヒットします。

3.2.6.2 BRegIf.dll + BREGEXP.DLL、hmonig.dll(Ver.0.50以降)

[a-zA-Z_0-9] になります。

3.2.6.3 BRegIf.dll + bregonig.dll、hmonig.dll(Ver.0.50未満)

[a-zA-Z_0-9]+2バイト文字の範囲(漢字、カタカナ、ひらがな) になります。(使用するロケールに従い、単語構成文字にマッチする。)日本語の文章を、「\w+」で検索すると、ほぼ全ての文字にマッチします。その為、「\b」(単語境界)も影響を受けます。

3.2.7 Shift_JIS範囲外の文字(漢字)について

2015/06/08現在、正規表現検索でShift_JIS範囲外の文字を正常に扱えるのは、hmjre.dll、hmonig.dll(Ver.5.0以降)だけです。他のDLL(BRegIf.dll(BREGEXP.DLL、bregonig.dll)、hmonig.dll(Ver.5.0未満)、JRE32.DLL)は、基本的にShift_JIS専用で、 Unicodeには対応していません。

検索が行われない訳ではありませんが、

  • Shift_JIS範囲外の文字とメタ文字(*、?、+)を組み合わせ
  • Shift_JIS範囲外の文字をブラケット内([])で指定する

等は、正常な結果を返さない場合があります。

bregonig.dllは、Unicode対応版のVer.2.00以降がありますが、BRegIf.dllからは、Unicode対応のAPIは呼び出していません。その為、動作はVer.1系(ANSI/Shift_JIS 専用版)と同じです。(Ver.2.00以降を使用しても、Ver.1系と同じ動作になる)

3.2.8 秀丸エディタにおけるタグ付き正規表現の上限

秀丸エディタで使用できるタグの上限は、hmjre.dllの仕様から9までとなります。

BRegIf.dll + bregonig.dll、hmonig.dll自体は、10以上も指定可能ですが、秀丸エディタ側から10以上を取得できないので、実質10以上は、使用できません。

正確には、検索時に後方参照で使用する場合は、DLL内の処理で済むため、10以上も使用可能です。置換は、秀丸エディタ側で処理を行うため、10以上は使用できません。

秀丸エディタVer.8.58β1(HmJre.dll V4.13)より、15まで指定可能になりました。

\g{数字}

という指定方法になります。

目次へ


top秀丸エディタマクロ