emacs > 備忘録

「emacs/備忘録」の編集履歴(バックアップ)一覧に戻る

emacs/備忘録 - (2012/10/18 (木) 07:24:18) のソース

**org-mode で行を折り返す設定
#highlight(lisp){{
(setq org-startup-truncated nil)
  (defun change-truncation()
    (interactive)
    (cond ((eq truncate-lines nil)
           (setq truncate-lines t))
          (t
           (setq truncate-lines nil))))
}}

**過去にカットしたものを貼り付け
Ctrl + y でカット or コピーした内容をカーソル位置にペースト
続けてAlt(Esc) + yを押すことで過去にカットしたものを貼り付け


**テンプレート
.emacsに以下のような設定をして、
#highlight(lisp){{
(setq auto-insert-alist
      (append
       '(
         (html-mode . "template.html")  ;; モード名で指定
         ("\\.html$" . "template.html") ;; ファイル名で指定
         )
       auto-insert-alist))
}}
「~/insert/template.html 」を作成しておくと、新規HTMLファイルを編集する時には自動的にテンプレートファイルを挿入してくれる。


**ブックマーク
#highlight(lisp){{
C-x r m RET ; 訪問先のファイルのポイント位置にブックマークを設定する。
C-x r l     ; すべてのブックマークを一覧表示する(list-bookmarks)。 
}}
上記設定時に、ブックマークファイル`~/.emacs.bmk'へ勝手に保存してもらう.emacs
#highlight(lisp){{
(setq bookmark-save-flag 1)
}}
[[Emacsマニュアル: ブックマーク>>http://www.bookshelf.jp/texi/emacs-20.6-man-jp/emacs_11.html#Bookmarks]]


**矩形
#highlight(lisp){{
C-x r k ; 矩形カット
C-x r o ; 矩形範囲分の空白挿入
C-x r t ; 矩形範囲を指定文字列で置換
C-x r y ; 矩形ペースト
C-x r c ; 矩形範囲を空白で置換
}}


**行数と文字数
範囲を選択して、選択した範囲の行数と文字数が表示される。
>M-=


**差分
>M-x ediff-buffers


** 割り当て済みキーバインドの一覧
>C-h C-h b ; ヘルプ ヘルプ バインド


** 現在編集中の位置へ後で戻ってくる
>C-x r spc 何か一文字  ; でマーク
>C-x r j   ↑この一文字  ; でジャンプ
[[Emacsマニュアル: に位置を保存する>>"http://www.bookshelf.jp/texi/emacs-20.6-man-jp/emacs_11.html#RegPos]]


**レジスタにウィンドウ構成を保存する
>C-x r f r ; 全フレームのすべてのウィンドウの状態をレジスタrに保存する
>C-x r j r ; ウィンドウやフレームの構成をもとに戻す
[[GNU Emacsマニュアル: レジスタにウィンドウ構成を保存する>>http://www.bookshelf.jp/texi/emacs-20.6-man-jp/emacs_11.html#RegConfig]]


** C-s した際、検索条件を履歴から呼び出すには、
Alt + n


** 正規表現でバッファ内検索
 編集中のバッファを正規表現でインクリメンタルサーチするキーバインド。
>C-u C-s ; 上手いサーチ
もしくは
>C-M-s


** 正規表現で問い合わせ型置換
>C-M-% regex-string RET new-string RET
または
>M-x query-replace-regexp RET regex-string RET newstring RET

***問い合わせ状態になってからの便利コマンド
-この出現を置換してから、これ以上探索せずに終了する。
>. (ピリオド)
-これ以降、問い合わせずに残りの出現すべてを置換する。
>!
-誤って変更してしまった場合などに、 1つまえの出現箇所(あるいは置換してしまった出現箇所)に戻る。置換前に戻るわけではない。
> ^
***例)
./Dixie/HOME/51u1PzxHmpL._SL500_AA300_.jpg
を
./Dixie/HOME/AlbumArt.jpg
に置換する。
> /[^/]*.jpg
↓
> /AlbumArt.jpg


**ウィンドサイズの変更
 ターミナル接続でemacsを使っているとウィンドのサイズをマウスで変えられないので、以下のコマンドを使う。広げる方だけキーバインドが用意されている。
-ウィンドサイズを縦に広げる
> M-x enlarge-window
もしくは
> C-x ^
-ウィンドサイズを横に広げる
> M-x enlarge-window-horizontally
もしくは
> C-x }
-ウィンドサイズを縦に狭める
> M-x shrink-window
-ウィンドサイズを横に狭める
> M-x shrink-window-horizontally



**現在いる関数を表示する設定
.emacsに以下を追加する。Lisp用?
#highlight(lisp){{
;;; 現在の関数名をモードラインに表示
(which-function-mode 1)
}}