アドオンの開発は、Adobe Bracketsを使用するようになりましたが、ちょっとしたメモなどには、サクッと起動できるMeryを使用しています。
Bracketsは、先日、Emacsキーバインドを導入+改造しましたが、Meryもマクロを作ればできるようなのでやってみました。最低限これだけあればというものは用意できて、なかなかいい感じになったかなと思います。
ここに公開しますので、もし必要な方がいましたら、ご自由にお使いください。
動作確認は、Mery Ver 3.0.4でしています。
マークを実現するために、「Document.Tag」プロパティを使用しています。これは、Ver 3.0.0で追加されたものなので、リリース版(Ver 2.6.7)では動作しないのでご注意ください。Ver 3.0.4以降での使用をおすすめします。
■ダウンロード:
Mery 3.0.4
Emacsキーバインド用マクロ
Emacsキーバインド用マクロ
作成したマクロは以下です。マクロをMeryに読み込んで、キーを割り当ててください。キーアサイン例には、私がしたキーアサインを書いています。C-x C-sなどの2ストロークのキーバインドは、Meryの仕組み上、難しそうなので見送りました。
v1.1で一部の2ストロークキーに対応しました。「テキストエディタMeryでEmacsキーバインド (2)」もご確認ください。
マクロ
|
動作
|
キーアサイン例
|
beginning-of-line.js
|
行頭にカーソルを移動
|
C-a
|
end-of-line.js
|
行末にカーソルを移動
|
C-e
|
forward-char.js
|
一文字右にカーソルを移動
|
C-f
|
backward-char.js
|
一文字左にカーソルを移動
|
C-b
|
next-line.js
|
次の行にカーソルを移動
|
C-n
|
previous-line.js
|
前の行にカーソルを移動
|
C-p
|
kill-line.js
|
カーソル位置から行末までをカット
|
C-k
|
delete-char.js
|
カーソル右を一文字削除
|
C-d
|
delete-backward-char.js
|
カーソル左を一文字削除
|
C-h
|
set-mark-command.js
|
カーソル位置をマーク
|
C-SPACE
|
kill-region.js
| マークからカーソル位置までをカット。範囲選択している場合は、その部分をカット。 |
C-w
|
kill-ring-save.js
|
マークからカーソル位置までをコピー。範囲選択している場合は、その部分をコピー。
|
Alt-w
|
beginning-of-buffer.js
|
バッファ(現在のタブ)の先頭にカーソルを移動
|
Alt-<
(Alt-Shift-,)
|
end-of-buffer.js
|
バッファ(現在のタブ)の末尾にカーソルを移動
|
Alt->
(Alt-Shift-.)
|
yank.js |
ペースト
|
C-y
|
undo.js
|
アンドゥ
|
C-/
|
yank.jsやundo.jsなどは、Meryの既存のコマンド(C-v, C-z)のキーアサインを置き換えてもいいのですが、それだともとのアサインがつぶされてしまうので、もとのアサインも使えるようにマクロを用意しました。(C-vでもC-yでもペーストできる)
設定の仕方
まず、ダウンロードしたmery-emacs.zipを解凍して、適当なディレクトリに置いてください。私はMeryのインストールフォルダにある「Macros」フォルダに置きました。
次に、Meryを立ち上げ、マクロ→カスタマイズを選択します。すると、以下のダイアログが表示されます。
(すでにマクロが読み込まれている表示になっていますが、実際には、この段階ではデフォルトのマクロしか表示されません)
ダイアログが開いたら、追加ボタンを押し、必要なマクロファイルをすべて追加してください。上記のように、マクロが表示されたら、OKを押してダイアログを閉じます。
なお、各マクロのチェックボックスをチェックすると、マクロメニューに追加され、メニューから呼び出せるようになります。今回は、ショートカットキーで使うので、ここはチェックしなくてもよいです。「イベントで実行」も同様に、チェック不要です。
マクロが登録できたら、各マクロにショートカットキーを割り当てていきます。ツール→オプションを選択してください。オプションダイアログが表示されるので、左側で「キーボード」を選択し、カテゴリで「マクロ」を選択します。すると、以下のように、先ほど追加したマクロが表示されると思います。
コマンド欄でキーアサインを設定したマクロを選択した後、新しいキー欄にカーソルを持っていきます。ここで、C-pなどの割り当てたいキーを押してください。すると、押したキーが表示されるので、問題がなければ、割り当てを押してください。
これで、キーアサインがされたことになるので、ほかのマクロも同様にキーを割り当ててください。
現在の割り当て欄に何か表示された場合は、すでにこのキーアサインが使用されています。マクロに割り当てると、元のキーアサインは使えなくなります。必要に応じて、別のキーを割り当てるなどしてください。私は、それほど使用頻度の高いものではなかったので、全部つぶしてしまいました。
注意事項
お約束ですが、このマクロを使用して何か問題が起きても責任はとれないので、ご理解ください。また、私が使用するのに必要な機能を実装したので、厳密にはEmacsの動作と異なる部分があるかもしれません。
0 件のコメント:
コメントを投稿