Emacsにはアスキーアートを書きやすいフリーカーソルのモード「picture-mode」があり、より図を書きやすい「artist-mode」があります。この記事はそれらのメモを書いています。
- C-h mでヘルプ
- M-x artist-mouse-choose-operation
- 3マウスボタンの中ボタンでメニュー
- Enterキーでペンのオン/オフ
- 中クリックでcutを選んだら、左ドラッグで選択、左クリックで貼りつけ
- マウスカーソルでクリックした箇所から描けますが、カーソルキーで移動する場合には行に何かしら文字か、改行がないとその行に移動できないので、カーソルキーで描く場合には先にある程度改行を入れておきましょう。
- キーバインバインディング
- オン
- なし
- オフキー
- なし
- M-x artist-mode-off
- erase
- なし
- オン
- グリッドが欲しい
- Emacsにはグリッドは標準にはない
その他
- テキストがある箇所にはカーソルキーで移動できない(?)
- 位置の調整の別のやり方案
- C-x SPCで矩形選択して位置を調整
- カーソルはC-p C-f C-n C-bで移動
参考サイト
キーバインディングのlisp
F1キーでモードが変わります。
C-x lでline、C-x C-l sでstraight line、C-x rでrectangle、
C-x eでerase、C-x C-e rでrectangle erase、
C-x cでcopy、C-x xでcut、C-x vでpasteです。
(参考 プログラマーズ雑記帳 – キーバインディング – 環境設定のための Emacs Lisp 入門)
(defun my-artist-mode-init ()
(local-set-key [f1] 'artist-mode)
(local-set-key (kbd "M-l") 'count-lines-page)
(local-set-key (kbd "C-x l") 'artist-select-op-line)
(local-set-key (kbd "C-x C-l s") 'artist-select-op-straight-line)
(local-set-key (kbd "C-x r") 'artist-select-op-rectangle)
(local-set-key (kbd "C-x e") 'artist-select-op-erase-char)
(local-set-key (kbd "C-x C-e r") 'artist-select-op-cut-rectangle)
(local-set-key (kbd "C-x c") 'artist-select-op-copy-rectangle)
(local-set-key (kbd "C-x x") 'artist-select-op-cut-rectangle)
(local-set-key (kbd "C-x v") 'artist-select-op-paste)
)
(defun my-text-mode-init ()
(local-set-key [f1] 'artist-mode)
)
(global-set-key [f1] 'artist-mode)
(add-hook 'text-mode-hook 'my-text-mode-init)
(add-hook 'artist-mode-hook 'my-artist-mode-init)