ドローイング空間

3D-CADを中心に、雑多なことをかいています。

秀丸エディタで、マクロを使用する準備!マクロファイルの保存形式に注意!

広告

そこで、いつも使っていてもマクロは使っていなかった秀丸エディタのマクロを覚えて、 html, cssを用いたWebページの作成、管理を軽減できないかと、秀丸マクロを使って見ようと思い立ちました。 まずは、マクロを使う準備だけを行うことにしました。

 きっかけ

WebサイトのページをHtmlエディタ「Expresson Web 4」を使用して作成しています。 ページの作成や管理に、汎用エディタでマクロを使用して、 ページを作成、管理していったほうが、長期的に見ると楽なのでは?という疑問が浮かびました。

最初、強力な入力補助のインテリセンスを使用できる、Visual Studio Codeを使おうと考えたのですが、ドキュメントが英語です。 コミュニティも英語です。それでも、ドキュメントを翻訳しながらちまちま覚えていこうと考えたのですが、時間がかかりそうです。

マクロフォルダを指定する

環境設定で、マクロを保存するフォルダを指定します。 マクロは、これから少しづつ作りためて行くことになるので、ファイルのバックアップがし易い位置に変更するのがおすすめです。

メニューから、「その他」→「動作環境」を選択します。

メニューから、「その他」→「動作環境」を選択します。

「環境」を選択し、パスの項目を確認します。デフォルトでは、 「マクロファイル用のフォルダ」、「設定ファイル用のフォルダ」ともに、 Cドライブのユーザー設定の中に保存される設定になっています。

パソコンを買い換えた時、OSを再インストールする際などに、データを移行し忘れたり、データを削除する可能性が高くなるので、 他のデータファイルと同じ場所に分けて保存し、バックアップソフトで、定期的に保存する設定にしたり、 適時、自分で、光学ディスクに保存する様にしましょう。「参照」をクリックするとフォルダ選択ダイアログが表示されます。

「参照」をクリックするとフォルダ選択ダイアログが表示されます。

マクロの登録

サンプルマクロの登録

カーソル位置に文章を挿入するマクロ

// 文章挿入
insert "ここに挿入したい文章を記述します。";

ファイルの種類で「秀丸マクロファイル(.mac)」を指定して保存します。フォルダの位置は、 ファイルの種類を変更した際、自動で変更されないので、自分で変更し、上で設定したマクロファイルの位置に保存します。

これで、このマクロを実行すれば、同じ文章を、マクロを実行するだけで挿入できます。 定型文をマクロで入力するだけで、かなり負担軽減になります。

秀丸のマクロファイルは、それを実行するファイルの文字コードの関係なく

を使用する必要があります。

「マクロ」メニューの「キー操作の記録開始/終了」に続く、「キー操作の保存」では、ファイル形式は、Shift-JISで保存されます。

実際、マクロファイルに、「UTF-8 BOM無し」を使用すると日本語が文字化けします。(V 8.54)

一方、BOM付きのUTF-8ファイルだと、htmlだけでは問題にならないものの、 PHPと共存させると不具合の元になるとの記述があるので、PHPのバージョンが上がって、 問題がなくなっている可能性があるものの、UTF-8BOM付きを標準にすることは避けたほうが良さそうです。

秀丸エディタ V 8.54では、拡張子ごとのエンコード自動指定ができないので、保存の際に自分で気をつける必要があります。

秀丸エディタ V 8.54では、拡張子ごとのエンコード自動指定ができないので、保存の際に自分で気をつける必要があります。

マクロを実行します。

マクロを実行します。

マクロを選択して、「OK」を押します。

マクロを選択して、「OK」を押します。

特殊文字の扱い

秀丸マクロで文字列を書きたいときには、" " (ダブルクォーテーションマーク:二重引用符)でくくってテキストファイル上に書きます。

その二重引用符の間に、「二重引用符自体」とか「改行文字」とかを書きたいと思った場合、半角の「\」と、その後ろに特定の文字を組み合わせて表現します。

  • 「\t」:タブ
  • 「\n」:改行
  • 「\"」:「"」自身
  • 「\\」:「\」自身

マクロを作成する

htmlで更新日を入力するマクロ

マクロを実行した日付が入ります。

※timeタグで囲った日付を記述しておくと、サイト検索結果の説明の最初に日付が表示されます。

※※Unicode (UTF-8, BOM あり[Ver8.50以上])で保存しました。 Unicode (UTF-8, BOM なし[Ver8.50以上])で保存して実行すると、日本語部分が文字化けします。

// ************************************************
// html 更新日を挿入する
insert
"<div class=\"aline-right\">新規作成日 "
+ year + "-" + month + "-" + day + "</div>"
+ "\n" +"<div class=\"aline-right\">最終更新日 <time>"
+ year + "-" + month + "-" + day +"</time></div>"
+ "\n" ;
// ************************************************

実行結果(実行時の日付が入ります。クラス名は、使用しているcss内の表記に合わせる必要があります。)

*************************************************

<div class="aline-right">新規作成日 2016-01-18</div>

<div class="aline-right">最終更新日 <time>2016-01-18</time></div>

*************************************************

まとめ

これで、秀丸エディタでマクロを使用する準備ができました。