秀丸マクロ補完マクロ (CompleteX 用プラグイン)
call
文と goto
文の第 1 引数。#
, $
で始まる場合。ローカル変数はスコープが考慮されます。dllfunc
, dllfuncw
, dllfuncstr
, dllfuncstrw
関数の第 1 引数*1。候補は DLL のドキュメントから自動的に生成されます。〈→対応 DLL〉config
, openreg
, createreg
, deletereg
文の第 1 引数。currentmacrodirectory
, hidemarudir
, macrodir
, settingdir
, backupdir
, windir
, winsysdir
キーワードに連結される文字列。■マクロフォルダ\ │ └─■CompleteX\ …ベースフォルダ │□CompleteMac.mac …秀丸マクロ補完プラグイン │ └■CompleteMac\ …辞書フォルダ □mac.dic …予約語辞書 □config.dic …config 文の引数辞書 □config.hint …config 文のヒント辞書 □dllname.dic … DLL 関数名辞書 □dllname.def … DLL 型情報辞書 □dllname.hint … DLL ヒント辞書 □dllname.help … DLL ヘルプ辞書 □dllname.mac … DLL ドキュメント→辞書 コンバータ (旧型) □dllname.wsf … DLL ドキュメント→辞書 コンバータ (新型) □wshscraper.js … 同上 □javascript-xpath-latest.js … 同上
[.mac] plugin=CompleteMac.mac path.separator=\\
#
を選ぶと数値型変数、 $
を選ぶと文字列型変数の補完に移ります。設定は CompleteX の設定ファイル config.txt に追記します。〈→CompleteX リファレンス:設定ファイルの書き方〉
mac.DengakuDLL.doc=..\dgdlldoc\table.html mac.macrodll.doc=..\fortex\doc\dllfunc.html mac.ht_tools.doc=..\ht_tools.html mac.AssignReg.doc = ..\AssignReg\関数リファレンス.txt
mac.ignore=scope …ローカル変数のスコープを無視します。スコープを無視する場合、変数名は保存されたファイルから収集されます。新しい変数名やラベルを書いても保存するまでは候補に出てきません。なお、 CompleteX の設定で autosave=yes となっている場合はファイルから収集する前に自動的に上書き保存されます。
デフォルトで次の DLL に対応しています。コンバータがあって、かつ設定ファイルにドキュメントのパスが指定されている場合、ドキュメントが更新されると辞書も自動的に更新されます。
DLL ファイル名 | 作者 | 準拠バージョン | 関数名辞書 | 型情報辞書 | ヒント辞書 | ヘルプ辞書 | コンバータ | 指定ドキュメント |
---|---|---|---|---|---|---|---|---|
HmJre.dll | サイトー企画 | v4.10 | ● | ● | ● | ● | ― | ― |
TKInfo.dll | サイトー企画 | 秀丸メール v5.07 相当 | ● | ● | ― | ― | ― | ― |
DengakuDLL.dll | 杉浦まさき さん | ドキュメント連動 | ● | ● | ● | ● | ● | table.html |
macrodll.dll | 阿部紀行 さん | ドキュメント連動 | ● | ● | ● | ● | ● | dllfunc.html |
ht_tools.dll | h-tom さん | ドキュメント連動 | ● | ● | ― | ― | ● | ht_tools.html |
AssignReg.dll | カモノハシ さん | ドキュメント連動 | ● | ● | ― | ― | ● | 関数リファレンス.txt |
その他の DLL に対応させるには、同梱の例に倣って辞書またはコンバータを用意してください。
.dll
で終わるファイル名っぽい文字列を拾っているだけです。dllfunc
/ dllfuncstr
が自動的に補正されます。たとえば dllfunc("GSUB")
と入力した場合、 GSUB
関数が文字列型だったら dllfuncstr("GSUB")
に置き換えられます。一次配布場所は Wisteria - 秀丸マクロ - CompleteMac です。二次配布は次のところで行われています。
colormarkersnapshot
を追加scrolllinkhandle
を追加ddeexecutew
, ddeinitiatew
, ddepokew
, dderequestw()
, ddestartadvicew
, ddestopadvicew
, ddewaitadvicew
を追加reservedmultisel
を追加getininumw()
, getinistrw()
, writeininumw
, writeinistrw
, settargetcolormarker
, targetcolormarker
, incolormarker
を追加sprintf()
を追加diff
, splitpos
, quote()
, setfiletype
, setconfigstate
を追加unicode_be
, johab
, easteuro
, baltic
, greek
, russian
, symbol
, turkish
, hebrew
, arabic
, thai
, vietnamese
, oem
, default
を追加xBlockquoteFix
を追加autospellcheckswitch
, spellcheckdialog
, stophistoryswitch
, selectword2
, wordright2
, wordrightsalnen2
, COMPFILE
を追加reservemultisel
, selectreservedmultisel
, clearreservedmultisel
, clearreservedmultiselall
を追加multiselecting
を追加colormarkerallfound
, clearcolormarkerallfound
, findmarker
, selectallfound
, selectcolormarker
, tomultiselect
, invertselection
を追加enumcolormarkerlayer()
, geteventnotify()
を追加selectcolumn
, lineupdated
を追加getautocompitem()
を追加selopenx
, selopeny
を追加allowobjparam
を追加SetUnicodeIndexAutoConvert
を追加seterrormode()
関数を追加 (秀丸エディタ v8.00β1 からあったが関数として使えることが秀丸のヘルプに書いてなかった)refreshoutline
を追加lineselecting
, mouseselecting
, selectionlock
を追加outlinehandle
を追加savebookmark
, loadbookmark
, enablebreak
を追加utf32
, utf32_be
を追加outputsametab
を追加 (秀丸エディタ v7.00 で追加されてたのを忘れてた)formwidth
を追加xFormLine
を追加strrstr()
, wcsstrrstr()
が関数になってなかったバグ修正strrstr
, wcsstrrstr
を追加loaddll()
, getloaddllfile()
, setpropobj
を追加dllfunc()
系の複数 DLL 対応処理は未実装settingdir
, backupdir
を追加dllfuncw()
, dllfuncstrw()
を追加argcount
, autocompstate
, backtab
, backupdir
, beginlinesel
, byteindex_to_charindex()
, callmethod
, callmethod_returnnum()
, callmethod_returnobj()
, callmethod_returnstr()
, charcount()
, charindex_to_byteindex()
, charindex_to_wideindex()
, colormarkerdialog
, compfilehandle
, copyformed
, createobject()
, cutline
, cutword
, deletecolormarker
, deletecolormarkerall
, deletefile
, deleteline2
, disablehistory
, dllfuncstrw()
, dllfuncw()
, findspecial
, form
, forwardtab
, fullscreen
, getarg()
, getclipboardinfo()
, getcollection()
, getobject()
, getpropnum()
, getpropobj()
, getpropstr()
, getregbinary()
, getresultex()
, getstaticvariable()
, gotagpair
, help4
, help5
, help6
, keepobject
, member
, member()
, moveto2
, nextresult
, OPENFILEPART
, platform
, poppaste2
, prevcompfile
, prevresult
, quitall
, refreshtabstop
, releaseobject
, runex
, searchoption2
, seterrormode
, setpropnum
, setpropstr
, setstaticvariable
, settingdir
, showcharcount
, showformline
, sleep
, splitmode
, unform
, unmatch
, wb
, wcsleftstr()
, wcslen()
, wcsmidstr()
, wcsrightstr()
, wcsstrstr()
, wideindex_to_charindex()
, writeregbinary
, ws
, xpixel
, ypixel
を追加xTabMode
を追加FindGeneral
, ReplaceRegular
, ReplaceRegularNoCaseSense
を追加getcolormarker
が関数になってなかったミス修正wordleft2
を追加gettitle()
を追加getcolormarker
, nextcolormarker
, prevcolormarker
を追加begingroupundo
, endgroupundo
, colormarker
を追加encode
, syncoutline
を追加autocomplete
, configstate
, event
, filter()
, geteventparam()
, gowordend2
, gowordtop2
, grepdialog2
, grepreplace
, grepreplacedialog2
, loop
, maskcomment
, maskifdef
, masknormal
, maskonly
, maskscript
, maskstring
, masktag
, noclose
, outputsingle
, preview
, refpaste
, seteventnotify
, setfloatmode
, tolower()
, toupper()
を追加xAutocompAuto
, xAutocompDic
, xAutocompFlag1
, xAutocompFlag2
を追加currentmacrodirectory
は現在編集中のマクロのあるフォルダになるべきだったhidemarudir + ""
のような文脈で文字列内に期待どおりのパスを補完)iconthistab
を追加getfocus
, setfocus
を追加setcompatiblemode
, fold
, unfold
, nextfoldable
, prevfoldable
, selectfoldable
, foldall
, unfoldall
, rangeeditin
, rangeeditout
, nextoutlineitem
, prevoutlineitem
, showoutline
, showoutlinebar
, showfoldingbar
, foldable
, folded
, rangeedittop
, rangeeditend
, rangeeditmode
, screentopy
を追加xOutlineBar
, xRangeEdit
, xFolding
, xFoldingTwigBar
を追加mac.Ignore=scope
を追加mac.Ignore=scope
を使うといいです)STRLEN2
などが候補に出てこないバグ修正fontmode
を追加bom
, nobom
を追加noaddhist
を追加golineend3
, unichar()
, configset
, currentconfigset
を追加columntox
を columntox()
に、 linenotoy
を linenotoy()
に修正gettext2
と gettext2()
があったのを修正"\n"
などを閉じた文字列として認識せず、以降の位置で正しく補完できないバグ修正"\\"
を閉じた文字列として認識せず、以降の位置で正しく補完できないバグ修正dllfunc
と dllfuncstr
を区別しない(両方の候補を出し、入力された DLL 関数の型に合わせて dllfunc
/ dllfuncstr
を自動補正する)call
があるときは ##return
と $$return
を候補に加える#
や $
を選んだ場合ローカル変数が補完できないバグ修正dllfunc
と dllfuncstr
は区別するご意見、ご感想、バグ報告、ツッコミなどは 談話室 へどうぞ。