Windowsで秀丸エディタを使う人が多いのは何故なのか?

秀丸エディタとサクラエディタ

自分の周りには秀丸エディタを使っている人が圧倒的に多い。秀丸エディタは、シェアウェアだが、あえてそれを使い続ける理由が気になった。

自分はエディタに拘りはないけど、Windows標準のメモ帳は非常に使い勝手が悪い。なので、サクラエディタを使っている。

それ以外のエディタについて

他にもエディタはあり、Atom、VS code、EmEditor、Vim、Emacs などがある。AtomやVS Code は、軽量ではないが機能拡張で幅広い用途に対応する。
ソースコードや、HTML等のマークアップ記法、マークダウン記法なども、プレビューを表示させながら作業できるため、かなり使い勝手がいいので、適材適所で使い分けるのがいいと思う。

秀丸エディタの優位性は何なのか?

では、秀丸エディタを使うことで何がいいのか?
調べた感じでは、HTMLやソースコードなどの全てが秀丸エディタだけで出来るらしい。また、昔から秀丸エディタを使っているので、慣れているという理由もあった。

ただ、マクロをインストールすれば、サクラエディタでも同様に使うことが出来る。おそらく、古くからの実績(ブランド力)と、慣れ親しんだユーザが多いのがシェアが高い理由な気がする。

テキストエディタに求めるもの

自分がテキストエディタに求めるもの、やりたいことは以下。

  • 文字の左側に行数が表示される。

  • 排他で開くことができる(メモ帳みたいに誤って上書きしない)

  • 改行コード、空白、タブが表示される。

  • Ctrl+マウスのスクロールでフォントの拡大/縮小ができる。

  • 簡単に罫線を引くことが出来る。

  • 画面を分割表示できる。

  • テンプレートを呼び出す。

上の4つは、デフォルトで対応している。
サクラエディタを使う場合、罫線はマクロのインストールが必要そう。
罫線はマクロを設定する必要があるのは知っているが、画面分割、テンプレートが不明。

サクラエディタをカスタムする

1つのエディタに多機能は求めないが、罫線に対応するのと、画面を分割するのはできるようになりたい。
ついでに、テンプレート(議事や、回覧情報など)が呼び出せると嬉しい。

サクラエディタのマクロの登録方法について

サクラエディタのマクロは、以下がデフォルトのパスになっている。
C:\Users\<ユーザ名>\AppData\Roaming\sakura\

画像

初期状態では、sakura.iniという設定ファイルのみが配置されている。
ここにマクロを入れていくのだが、このパスに直にマクロファイル(.vbs)を配置していく必要があるらしい。
ライセンスやREADMEを残したいので、ファイルを作りサブディレクトリから検索…といったことは出来ないらしい。
他人のものを勝手に使うというのは申し訳ないので、元ファイルは同フォルダに.zipで残しておくことにする。

画像

サクラエディタの罫線マクロ

pekopeko1さんが、GitHubにマクロを公開してくれている。ありがたく使わせていただく。

太線と細線のマクロがあるので、マクロ設定と、キーの割当てを行う。

画像
マクロの登録

マクロを登録したら、キーを割り当てていく。初めて使うので、pekopeko1さんのREADME.mdの通り、[Alt]+上下左右キーに細線、[Shift]+[Alt]+上下左右キーに太線を登録していく。

画像
キー割り当て

これでキーバインドから罫線を引くことができるようになった。

画像
罫線

サクラエディタで画面を分割する

結構簡単にできて、[ウインドウ]から、[上下に分割]、[左右に分割]、[縦横に分割]が選択できる。縦横に分割は、4分割のこと。

画像
縦横に分割

そのままだと全画面が同期してカーソル移動してしまう。分割ごとに別の画面を表示できるようにするには、[設定]の[ウィンドウ]から、[垂直スクロールの同期をとる]、[水平スクロールの同期をとる]のチェックを外す。

画像
同期のチェックを外す
画像
非同期分割表示

テンプレートを呼び出す(VBマクロ)

メニューの[編集]-[挿入]あたりから、テンプレートを挿入できそうな雰囲気だが、まさにこれだというものがない。ここまでくると、自分でマクロを自分で作る必要がありそう。お試しで、議事録マクロを作ってみる。

サクラエディタのマクロは、JScript、VBScript、PPAのいずれかで記述する。

いい方法が見当たらないので、手探りでVBScriptのマクロを作ってみる。
マクロファイルの文字コードはUTF-8だと文字化けした。どうやら、SJISにする必要があるらしい。

・作成したマクロ "minutes_template.vbs"

' /////////////////////////////////////////////////////////////////// '
' // [内容] 議事録テンプレート出力マクロ                           // '
' // [日付] 2022.02.21                                             // '
' // [作者] mokunin                                                // '
' // 議事録は以下の書籍を参考にしました。                          // '
' // ・ゼロから学べる!ファシリテーション超技術」園部 浩司 (著)     // '
' /////////////////////////////////////////////////////////////////// '

Editor.InsText "===================================================================== " & vbCrLf
Editor.InsText " [議題] xxx " & vbCrLf
Editor.InsText " [日時] "
Editor.InsertDate()
Editor.InsText " "
Editor.InsertTime() 
Editor.InsText " ~ hh:mm " & vbCrLf
Editor.InsText " [場所] xxx " & vbCrLf
Editor.InsText " [参加] Aさん、Bさん、Cさん (3名) " & vbCrLf
Editor.InsText " [進行] Aさん(リーダー) " & vbCrLf
Editor.InsText "---------------------------------------------------------------------- " & vbCrLf
Editor.InsText " [目的・ゴール] xxxをyyyする。" & vbCrLf
Editor.InsText "===================================================================== " & vbCrLf
Editor.InsText " 進行内容                                 |     タイムスケジュール   | " & vbCrLf
Editor.InsText " (★:アクションアイテム、●:決定事項) | 進行目安      | 所要時間 | " & vbCrLf
Editor.InsText "---------------------------------------------------------------------- " & vbCrLf
Editor.InsText " 1. オープニング                          |                          | " & vbCrLf 
Editor.InsText "---------------------------------------------------------------------- " & vbCrLf
Editor.InsText " ・本日の進め方を説明                     | hh:mm - hh:mm | 1 分     | " & vbCrLf
Editor.InsText " ・アイスブレイク                         | hh:mm - hh:mm | 3 分     | " & vbCrLf
Editor.InsText " ・前回の振返り(初回は割愛)             | hh:mm - hh:mm | 1 分     | " & vbCrLf
Editor.InsText "---------------------------------------------------------------------- " & vbCrLf
Editor.InsText " 2. 情報格差を埋める                      |                          | " & vbCrLf
Editor.InsText "---------------------------------------------------------------------- " & vbCrLf
Editor.InsText " ・ 会議の経緯、背景等を説明              | hh:mm - hh:mm | 5 分     | " & vbCrLf
Editor.InsText "---------------------------------------------------------------------- " & vbCrLf
Editor.InsText " 3. 議論の内容                            |                          | " & vbCrLf
Editor.InsText "---------------------------------------------------------------------- " & vbCrLf
Editor.InsText " ・xxxxする                           | hh:mm - hh:mm | 7 分     | " & vbCrLf
Editor.InsText " ・yyyyする                           | hh:mm - hh:mm | 7 分     | " & vbCrLf
Editor.InsText " ・xxxxする                           | hh:mm - hh:mm | 7 分     | " & vbCrLf
Editor.InsText "---------------------------------------------------------------------- " & vbCrLf
Editor.InsText " 4. クローズ                              |                          | " & vbCrLf
Editor.InsText "---------------------------------------------------------------------- " & vbCrLf
Editor.InsText " ・決定事項(ゴール)の確認               | hh:mm - hh:mm | 2 分     | " & vbCrLf
Editor.InsText " ・アクションアイテムの確認               | hh:mm - hh:mm | 3 分     | " & vbCrLf
Editor.InsText " ・振り返り(感想の共有)                 | hh:mm - hh:mm | 3 分     | " & vbCrLf
Editor.InsText " 終了                                     |               |          | " & vbCrLf
Editor.InsText "---------------------------------------------------------------------- " & vbCrLf

サクラエディタにマクロ登録し、メニューの[ツール]-[登録済マクロ]から選択すると、期待したテンプレートを表示することが出来た。

===================================================================== 
 [議題] xxx 
 [日時] 202222122:10:12 ~ hh:mm 
 [場所] xxx 
 [参加] Aさん、Bさん、Cさん (3名) 
 [進行] Aさん(リーダー) 
---------------------------------------------------------------------- 
 [目的・ゴール] xxxをyyyする。
===================================================================== 
 進行内容                                 |     タイムスケジュール   | 
 (★:アクションアイテム、●:決定事項) | 進行目安      | 所要時間 | 
---------------------------------------------------------------------- 
 1. オープニング                          |                          | 
---------------------------------------------------------------------- 
 ・本日の進め方を説明                     | hh:mm - hh:mm | 1 分     | 
 ・アイスブレイク                         | hh:mm - hh:mm | 3| 
 ・前回の振返り(初回は割愛)             | hh:mm - hh:mm | 1 分     | 
---------------------------------------------------------------------- 
 2. 情報格差を埋める                      |                          | 
---------------------------------------------------------------------- 
 ・ 会議の経緯、背景等を説明              | hh:mm - hh:mm | 5| 
---------------------------------------------------------------------- 
 3. 議論の内容                            |                          | 
---------------------------------------------------------------------- 
 ・xxxxする                           | hh:mm - hh:mm | 7 分     | 
 ・yyyyする                           | hh:mm - hh:mm | 7| 
 ・xxxxする                           | hh:mm - hh:mm | 7 分     | 
---------------------------------------------------------------------- 
 4. クローズ                              |                          | 
---------------------------------------------------------------------- 
 ・決定事項(ゴール)の確認               | hh:mm - hh:mm | 2| 
 ・アクションアイテムの確認               | hh:mm - hh:mm | 3 分     | 
 ・振り返り(感想の共有)                 | hh:mm - hh:mm | 3| 
 終了                                     |               |          | 
---------------------------------------------------------------------- 


いいなと思ったら応援しよう!

コメント

コメントするには、 ログイン または 会員登録 をお願いします。
買うたび 抽選 ※条件・上限あり \note クリエイター感謝祭ポイントバックキャンペーン/最大全額もどってくる! 12.1 月〜1.14 水 まで
Windowsで秀丸エディタを使う人が多いのは何故なのか?|mokunin
word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word

mmMwWLliI0fiflO&1
mmMwWLliI0fiflO&1
mmMwWLliI0fiflO&1
mmMwWLliI0fiflO&1
mmMwWLliI0fiflO&1
mmMwWLliI0fiflO&1
mmMwWLliI0fiflO&1