Emacsの操作で,
C-x
と書いた場合,[Ctrl]キーを押しながら[x]キーを押す,という意味です.大文字の C がCtrlを表しています.
C-x f
と書いた場合,[Ctrl]キーを押しながら[x]キーを押してから[f]キーを押す,という意味です.さらに,
C-x C-f
と書いた場合,[Ctrl]キーを押しながら[x]キーを押してから[Ctrl]キーを押しながら[f]キーを押す([Ctrl]キーを押しながら[x]キー,[f]キーを押す),という意味です.
また,
M-x
と書いてある場合,[Alt]キーを押しながら[x]キーを押します.
| 移動方向 | キー操作 |
|---|---|
| → | C-f |
| ↑ | C-p |
| ← | C-b |
| ↓ | C-n |
| 行頭へ | C-a |
| 行末へ | C-e |
慣れると指が勝手に動くようになります.はじめは小指が少し疲れますが,ホームポジションからほとんど指を動かさずにカーソル移動できるのでとても便利です.
| やりたいこと | キー操作 |
|---|---|
| 動作の中断 | C-g |
| 上書き保存 | C-x C-s |
| Emacs終了 | C-x C-c |
| やり直し | C-/ |
| 検索 | C-s |
| 置換 | Alt+Shift+5 |
| ウィンドウを二つに分割 | C-x 2 |
| ウィンドウを一つにする | C-x 1 |
| 選択範囲を切り取り | C-w |
| 選択範囲をコピー | A-w |
| 張り付け | C-y |
| 全てを選択 | C-h |
動作の中断(C-g)は必ず覚えておきましょう.Emacsはショートカットがたくさんあるので,変なキーを押してしまうことがあります.そうなったら迷わず C-g で中断します.
日本語入力モードへの切り替えは
C-\
です.
全角スペース
c-modeなど,多くのメジャーモードでは,Tabキーは行をインデントする機能を持ちます.便利ですが,純粋にTabを入力したい場合には困ってしまいます.そんなときは
C-q Tab
と入力します.これうすることで,Tabが特別な機能を持つモードでも,純粋にTabコードを入力することができます.
/.emacs.el ファイルの
;;; マクロサーチパスの追加
;;; ~/lib/emacs 以下にユーザ用の *.el, *.elc を置くことができます
;;(setq load-path (append '("~/lib/emacs") load-path))
という部分の2行目,3行目のコメントを外すと, ~/lib/emacs/ 以下に置いた *.el *.elc ファイルをマクロファイルとして使えるようになります.
Eemacsでhtmlを編集すとき,タグを色分けしてインデントも整理し,さらにタグの挿入をサポートしてくれるマクロが html-helper-mode です(標準では YaTex-mode が有効になっています).
から
html-helper-mode.el と tempo.el
を取って来きて
~/lib/emacs
に置きます.つづいて ~/.emacs.el を編集します.YaHTML-mode の設定が書いてある部分をコメントアウトします.
;; YaHtml-mode ;;(setq auto-mode-alist ;; (cons (cons "\\.html$" 'yahtml-mode) auto-mode-alist)) ;;(autoload 'yahtml-mode "yahtml" "Yet Another HTML mode" t) ;;(setq yahtml-www-browser "netscape")
つぎに,html-helper-mode を拡張子 .html のファイルに適用するために
(autoload 'html-helper-mode "html-helper-mode" "Yay HTML" t)
(setq auto-mode-alist
(cons
'("\\.html$" . html-helper-mode) auto-mode-alist))
を書き込みます.これで *.html を Emacs で開くと自動的に html-helper-mode になります.
Windows用のEmacsライクなエディタがxyzzyです. xyzzyのhtml編集モード, html+-modeでも, html-helper-modeと似た動作ができると便利です. 個人的に気に入っているのが C-c ENTER で <br /> を挿入する機能です. これをhtml+-modeで使えるようにするには,360行目あたり
(define-key *html+-mode-map* #\C-j 'html+-insert-break)
を
(define-key *html+-mode-map* '(#\C-c #\RET) 'html+-insert-break)
に変更して,1000行目あたりを
; -------------------------------
; ブレークタグの挿入
; Fri, 24 Mar 2000 09:55:31 +0900
(defun html+-insert-break (&optional (arg 1))
(interactive "*p")
"html+-mode: <br />タグの挿入"
(dotimes (x arg)
(unless (parse-point-syntax)
(delete-trailing-spaces)
; (insert "<br>")
(insert "<br />"))
(insert #\LFD arg)))
; (html+-indent-line))
; (html+-newline-and-indent)))
とします.これで C-c ENTER とすると,<br /> タグが挿入され,改行されます.
# apt-get install Mule-UCS
reStructuredText記述用メジャーモード.