maeshimaの日記

メモ書きです

emacs

inf-ruby

使ってはすぐ存在を忘れてターミナルを使ってしまう…。C-c C-sでバッファが開く。 参考 inf-rubyメモ - odz buffer

ctagsのオプション

Rで再帰、eでemacs用の出力にしてくれる ctags -Re app

sudo-ext.elがうまく動かない件

3ヶ月前にsudo-ext.elがうまくいかない><というエントリを書いたら、id:rubikitch さん、id:handlename さんからアドバイスをいただきました。ありがとうございます!!!Macでsudo-ext.elを使う場合 - handlename::blog sudo-ext.elがうまく動作しない場…

elispの関数

やさしいEmacs-Lisp講座の第三章に出てくる関数をざっとまとめたメモ。 移動境界の検査 bobp ポイントがバッファ先頭にあればt,なければnilを返す eobp ポイントがバッファ末尾にあればt,なければnilを返す bolp ポイントが行頭にあればt,なければnilを返す …

yasnippetのコマンドとファイルの内容

yas/new-snippet 新しいsnippetの登録。今居るbufferからsnippetを保存するのに適切なディレクトリを選択してくれて、snippet-modeで新しいファイルを開く。 yas/find-snippets 定義用のディレクトリを開く yas/visit-snippet-file 今居るバッファから定義を…

ediff

デフォルトで使えるemacsでのdiff。今日初めて使ってみたけどなかなか便利に使えた。 M-x ediff-buffers M-x ediff-files とかで対象を二つ選ぶ。nやpで次の差分に移動。ただデフォルトだとediff実行するたびに新しいframeが作られて面倒。下記のようにする…

今いるバッファのsnippetを見る

!!! M-x yas/visit-snippet-file (今いるバッファのスニペットから選ぶ)もしくは M-x yas/find-snippets (スニペットのディレクトリから探す) http://d.hatena.ne.jp/kiwanami/20110224/1298526678 もっとyasnippet使いこなしたい! yasnippet - maeshim…

マーク

C-SPCで付ける印。GNU Emacsマニュアル: マークとリージョン mark-active マークがactiveなら(置いてあったらってことかな?) nil 以外を返す

call-interactively

interactiveな関数を呼ぶ関数 (call-interactively 'rgrep)

関数の定義を調べたいときには

M-x apropos としてから関数名を入れる。忘れがちなのでメモ

ナローイング

一つのバッファの移動可能な領域を制限する機能。 narrow-to-region 編集可能領域を位置1から位置2の間の領域に制限する。 (narrow-to-region 位置1 位置2) widen narrow-to-regionで設定したナローイングを解除する。 save-restriction 現在設定されている…

M-:

作成した関数を呼び出して、その戻り値を知りたいときに使う。 (hoge) のようにS式で実行する

if

想像してたのと少し挙動が違ったのでメモ。式がnil以外で合った場合にform1、nilでない場合にはform2〜formnを全て評価する。ifの値は最後に評価したformの値になる。 (if 式 form1 form2 form3 ... formn)

match-beginning, match-end

re-search-forward等の検索関数を使った後に、マッチしたポイントに移動するときに使う。 (match-beginning グループ番号) (match-end グループ番号) グループ番号には、\(\)でくくった何個目かという数値を指定する。 マッチするモノがない場合は nil 0 を…

re-search-forward

バッファ内の文字列を正規表現を使って検索する関数 (re-search-forward 正規表現 &optional 限界 エラー回避 回数) 限界は、指定しない場合はバッファの終わりまで エラー回避にtを与えると、正規表現にマッチしなかったときにエラーを出さずにnilを返すよ…

make-keymap

下記のようなシンボルとベクタのリストを返す関数だそうな。 (keymap [nil nil ... nil]) ベクタは一次元の配列のこと。

S式の実行方法その2

S式の実行方法 - maeshimaの日記に追加。ファイルのS式を実行する方法。 M-x load-file バッファを開いて M-x eval-current-buffer

compilationバッファ

M-x compileしたときなどに開かれるバッファらしい。

rvm.el

M-x rvm-use で、emacsで使うrubyのバージョンとgemsetを切り替えられる。デフォルトのgemsetは"global"で、空白にするとうまく切り替わらない。

xmpfilterをemacsで使う

gem install rcodetools でrcodetoolsいれる。gemに入ってるrcodetools.elをemacsのload-path上に配置。 (require 'rcodetools) とすると M-x xmp が使えるようになり、下記のようにRubyのコード上で実行すると # => としたところに実行結果が挿入されるよう…

sudo-ext.el

Emacsの中でsudoする方法 〜これでrootによる操作も楽々〜 - (rubikitch loves (Emacs Ruby CUI Books)) をみて導入してみる→なぜか動かない→数ヶ月放置→sudo-ext.elが依存しているっぽいsudoeditコマンドが、macに入っていないことに気づく sudo port insta…

emacs-clientで起動したバッファを終了するには

C-x #

Emacs用のIMEのon/offの切り替え

C-\でEmacs用のIMEのon/offを切り替えられる。何かの拍子でC-\して挙動がおかしくなって???となったのでメモwin版Emacs23でも一応IMEインライン入力できる:プログラミングのメモ日記

auto-complete.el入れた

入れてとりあえず使えるように設定した。だけ。 ;; (install-elisp http://www.cx4a.org/pub/auto-complete.el) (require 'auto-complete) (global-auto-complete-mode t) これだけでも同じバッファのメソッドの補完はしてくれるようで、ある程度使えるんじ…

yasnippetを修正

yasnippetで補完候補を選択するときに、なぜか C-n や C-p が効かなかった。同梱されているdropdown-listを有効にしたらうまくいった。 (require 'dropdown-list) (setq yas/prompt-functions '(yas/dropdown-prompt yas/ido-prompt yas/completing-prompt))…

undohist.elとundo-tree.elいれた

undohist.elは閉じたバッファもUndoできるelisp undo-tree.elはUndoの分岐を視覚化するelisp。C-x uで樹形図を表示。

emacs23でのjs2-modeの設定

emacs23.2を入れた js2-modeを入れた インデントが変 espresso-modeを設定しようとしたら、どうやら23.2からはemacsにとりこまれ、かつjs-modeに名前が変わったらしい これまでの接頭字 espresso- を js- に変更したらインデントが改善した

emacs23.2とIME

emacs23.2にしてから、command+spaceでIMEを切り替えるときにemacsが固まって落ちることが多くなった。原因は何だろう? 追記 とりあえずこれをやってみた Cocoa Emacs が落ちる さらに追記 かわらなかった。でも多分inline-patchまわりなんじゃないかなーつ…

egg.elでgit blame

egg.elにも少しずつなれてきた。C-c v a でgit blameしたような感じで、今開いているファイルのコミットした人とコミット情報が表示される。

emacs23にあてるパッチを変更した

これまで、Emacs 23.2 with Shift IME patch on Mac OS X - stnard.jpのようにfix-shiftmodifier-with-ime.patchをあててたけどinline-patchの方を使って再ビルドした。これでIMEがONの時にC-x oとかがうまくいかなかったのがうまくいくようになった。あとは…