秀丸エディタで脚注作成 | 18/09/10(月)12:09:21 |
---|---|
mobitan氏のHP「Wisteria」(http://mobitan.org)で公開されている秀丸用の脚注マクロを自分用に改造。 注を付けたい部分に 「<!#{★|●●●#><!#}#>」(<と>は小文字) として「●●●」部分に注を記入。 末尾に「{foottext}」を記入すると 注1 ●●● 注2 ●●● の形(インデント4字下げ)で展開される。 // // Footnote.mac (2006/09/30) // by IKKI http://www18.big.or.jp/~fujiwara/ikki/ // // 2006/09/20 v1.0 初版 // 2006/10/01 v1.1 {notag} = HTMLタグ除去 // $Mark と $Body では次の変数が有効 // // {m} = 節番号(出力位置ごとにインクリメント) // {n} = 脚注番号(脚注1件ずつインクリメント、出力位置ごとにリセット) // {text} = 脚注の内容 // {notag} = 脚注の内容(HTMLタグを除去) // 脚注記号 $Mark = *{n}; // 脚注本体 $Body = \t\注{n}\n\t{text}\n; // コメント識別子(正規表現のメタキャラクタは要エスケープ) $Comb = $Comd = #>; // 終了 // 本文の例 // // 1節// 1節の段落1です。 // 1節の段落2です。 // 出力位置 // // 2節// 2節には脚注がありませんでした。 // 出力位置 // // 3節// 3節の段落1です。 // 3節では foottext を書き忘れてしまいました。 call Initialize; call Main; call Finalize; endmacro; Main: #ox = x; #oy = y; #m = 1; #n = 0; gofiletop; while (true) { call Find ★|foottext; // message $$return; $$key = leftstr($$return strstr($$return |)); if ($$key == ) $$key = $$return; $$val = midstr($$return strlen($$key) + 1 8192); if ($$key == ★) { #n = #n + 1; $text[#n] = $$val; call Mark; } else if ($$key == foottext) { call Dump; #m = #m + 1; #n = 0; } else { break; } } gofileend; call Dump; if (##return) moveto #ox #oy; return; Find: // $$1 = キー(正規表現可) // $$return = キー|値 // 実行後の選択範囲 = と で囲まれた部分 escape; searchdown (?<= + $Comb + \\{)( + $$1 + )(\\|| + $Comd + ) regular; if (!result) return ; ##x1 = foundtopx; ##y1 = foundtopy; escape; searchdown $Comd regular; if (!result) return ; ##x2 = foundtopx; ##y2 = foundtopy; ##x3 = foundendx; ##y3 = foundendy; $$value = gettext(##x1 ##y1 ##x2 ##y2); escape; searchdown $Comb + \\} + $Comd regular; if (!result) return ; escape; beginsel; moveto ##x3 ##y3; endsel; return $$value; Mark: if (selecting) delete; $$item = $Mark; call GSUBR $text[#n] <.*?> ; $$notag = $$return; call GSUBR $$item \\{m\\} str(#m); $$item = $$return; call GSUBR $$item \\{n\\} str(#n); $$item = $$return; call GSUBR $$item \\{text\\} $text[#n]; $$item = $$return; call GSUBR $$item \\{notag\\} $$notag; $$item = $$return; insert $$item; return; Dump: if (selecting) delete; if (#n < 1) return true; insert $Head; ##i = 1; while (##i <= #n) { $$item = $Body; call GSUBR $text[##i] <.*?> ; $$notag = $$return; call GSUBR $$item \\{m\\} str(#m); $$item = $$return; call GSUBR $$item \\{n\\} str(##i); $$item = $$return; call GSUBR $$item \\{text\\} $text[##i]; $$item = $$return; call GSUBR $$item \\{notag\\} $$notag; $$item = $$return; insert $$item; ##i = ##i + 1; } insert $Tail; return false; GSUBR: // HmJre.dll による正規表現置換 // $$1 = 対象文字列 // $$2 = 検索パターン // $$3 = 置換文字列(後方参照不可) // ##4 = 1:大文字小文字を区別する $$f = leftstr(FindRegularNoCaseSense 11 + (##4 == 0) * 11); $$s = $$1; while (true) { ##p = dllfunc($$f $$2 $$s 0); if (##p < 0) break; $$r = $$r + leftstr($$s ##p) + $$3; $$s = midstr($$s ##p + dllfunc(GetLastMatchLength) 8192); } if (##p == -2) message 正規表現のエラーです\n + $$2; return $$r + $$s; Initialize: loaddll HmJre.dll; if (!result) { message HmJre.dll がロードできません。秀丸エディタ v6.00 以上をインストールしてください。; endmacro; } setcompatiblemode 0x0200; $searchbuffer = searchbuffer; #searchoption = searchoption; disabledraw; return true; Finalize: enabledraw; setsearch $searchbuffer #searchoption; freedll; return; |
【TeX】右寄せのシテ(合字) | 14/05/03(土)16:38:46 |
---|---|
プリアンブル部に以下を記入 ====================================== \newcommand{\migisite}{% \kern-.5zw\rotatebox{-20}{\raisebox{.35zh}{{\scalebox{0.49}[1]{\rotatebox{36}{ヽ}}\kern-.41zw\raisebox{0.2zh}{\scalebox{0.49}[1]{ノ}}}}}\kern.2zw} ====================================== 本文に「\migisite」を記入するだけ。 |
【TeX】合点(\) | 14/04/25(金)16:31:08 |
---|---|
\raisebox{1.2zw}{\rotatebox{-50}{\scalebox{2}[1]{\}}}\kern-2zh |
【TeX】左右の合字(縦組み:木+目=相) | 14/04/25(金)14:20:26 |
---|---|
\lrkanji{木}{目} =========================== \newcommand{\lrkanji}[2]{% \raisebox{-0.2zh}{{\scalebox{0.49}[1]{#1}\kern-.475zw \raisebox{0.4zh}{\scalebox{0.49}[1]{#2}}}}\kern.45zw} =========================== |
【秀丸】正規表現による置換 | 14/04/24(木)16:13:22 |
---|---|
正規表現にチェックをしてから 置換 検索語 ○資料\\rensuji{..} 置換語 ○資料\\rensuji\{??\} |
【秀丸】連番マクロ | 14/04/24(木)16:11:10 |
---|---|
論文用に「??」と入れると、マクロ実行で??部分が連番になるマクロ(2桁:01.02.03・・・) =========================== #num = 1; $str = ??; while (1) { replacedown $str. rightstr(00 + str(#num). 2); if( result ) #num = #num + 1; else endmacro; } =========================== |
【TeX】文字を○で囲む | 13/12/29(日)12:28:50 |
---|---|
プリアンブル部に以下を設定 \def\maru#1{\kern.17zw\raisebox{0.15zh}{{\rm\ooalign{\hfil\lower.25ex\hbox{\scalebox{0.85}[0.7]{#1}}\hfil \crcr\mathhexbox20D}}}} で、「\maru{●}」と記述することで 「●」が○で囲まれる。連数字も問題無く囲む。 \raisebox{0.15zh}の数値変更で、全体が左右に移動。 \lower.25exの数値変更で○内部の文字が左右に移動。 \scalebox{0.85}[0.7]の数値変更で○内部の文字の縦横の倍率が変更 |
「アクセスが拒否されました。」のメッセージが表示されるフォルダの開け方 | 11/05/01(日)00:12:38 |
---|---|
例:フォルダ「SendTo」の場合 1 Windowsキー+Rでファイル名を指定して実行を立ち上げる。 2 shell:sendtoと入力してOKボタンを押す。(これでSendToフォルダが開く。) |
【Firefox4】新規タブを開く際 当該ページの読み込みが始まる直前の背景色(白)を灰色(silver)にする方法。 | 11/04/21(木)22:16:12 |
---|---|
userChrome.cssに以下を記入。 notificationbox{background-color:#C0C0C0 !important;} |
Word2007のコマンド(ショートカットキーの設定用) | 11/02/05(土)15:43:19 |
---|---|
ルビ:FormatPhoneticGuide ([Ctrl]+r) 割注:FormatTwoLinesInOne ([Ctrl]+w) 縦中横:FormatHorizontalInV ([Ctrl]+t) 組文字:FormatCombineCharacters ([Ctrl]+2) 文字囲:DefaultCharBorder ([Ctrl]+k) 上付き:Superscript ([Ctrl]+u) 下付き:Subscript ([Ctrl]+s) |
HOME PAGE |