Emacs
pcomplete (programmable completion) の書き方 - 刺身☆ブーメランのはてなダイアリー で書いた pcmpl-lwp-request.el のデバッグをしているときに、便利な方法はないものかとおもってぐぐって見つけた edebug というのがとても便利だった。Emacs Lisp デバ…
Emacs には pcomplete.el というものが付属しており、これはいわゆる bash-completion のようなものだが、 bash-completion ほど充実していなくて git などは補完できなかったので、自分でやってみた。まずいくつか読むべきファイルがある。俺の場合は /Appl…
(setq anything-samewindow t)でいける!何度も忘れて困った・・・と思ったけどなんかうまくいかない。 GNU Emacs 23.0.60.1 (i386-apple-darwin9.7.0, NS apple-appkit-949.46, MacPorts の emacs-app-devel (@20091101), Cocoa を利用中。常に別フレームで…
ちょっと欲しくなったので書いてみた。 (defun gigabytes (n) (interactive "nBytes:") (message (number-to-string (/ n 1.0 1024 1024 1024))))1.0 で割らないと整数の割り算になって小数点以下が得られないのと、 message は文字列を受け取る関数なので割…
M-x tabify, M-x untabify を使う。リージョンを指定するので C-x h とかで全部選択してしまうと楽。M-x tabify と M-x untabify - naoyaのはてなダイアリー 他、検索したらたくさん見つかった。素の Vi でてきとうにファイルを編集してタブでインデントされ…
今日やっと goto-line をみつけた。 Vim でいう 33G で 33 行目へカーソルをジャンプ、相当のもの。 http://www.ac.cyberhome.ne.jp/~yakahaira/vimdoc/usr_03.html#03.5 いままで Emacs でこの単純でよく必要になる作業のやり方がわからなかったので、モー…
今日からまた anything.el を使い始めました。過去に二回くらい挑戦して挫折した覚えがあるので、三回目のチャレンジです。とりあえず今やりたいことは、 local::lib でインストールした CPAN モジュールの pod がひっかからないので anything-c-source-man-…
例えば (count-lines-region) (M-=) を使うと、結果はミニバッファに表示される。しかしミニバッファへの出力はすぐ消えちゃうのでコピーしづらい。そういうときは、 *Messages* バッファをみるとそこにも出力されてるので、そこからコピーすれば kill-ring …
主催の id:hayamiz さんをはじめ、スタッフの皆さん、発表者の皆さん、お疲れ様でした。ありがとうございました。レベル高かった・・・。 eshell の何かで発表してみようかなー、なんて思ってて結局今回も名乗りを上げることはなかったのだけど、やんなくて…
Emacs Lisp で join みたいなのはないのかと思ってぐぐってたら 折り畳み表示 - (new Hatena).blog() をみつけて、 mapconcat というのを使えばいいことがわかった。elispでjoin - subpop - subtech にも載っていた。二年前か・・・。で、現在の環境変数を得…
Cocoa Emacs を MacPorts からインストールしてみた。 - 日々、とんは語る。 を参考に。というかここの手順どおりにやればよい。インストール先ディレクトリも書いてあって親切だ。いままで自前でビルドした Cocoa Emacs を使っていて、 site-lisp の中身だ…
;; local::lib (setenv "MODULEBUILDRC" "/Users/k-kaneko/perl5/.modulebuildrc") (setenv "PERL_MM_OPT" "INSTALL_BASE=/Users/k-kaneko/perl5") (setenv "PERL5LIB" "/Users/k-kaneko/perl5/lib/perl5:/Users/k-kaneko/perl5/lib/perl5/darwin-thread-mul…
結論 re-builder で作った「文字列」を (insert "XXXX") して出力された「正規表現」を query-replace-regexp に渡せ メモ M-x re-builder で正規表現を組み立てるとき、その正規表現は「文字列」として与えなければならない(っぽい)。逆に、 query-replac…
M-x switch-to-buffer [RET] hoge-buffer [RET]これしか知らない。 iswitchb 使ってるので C-x b でできないからやたら面倒。 create-new-buffer とか new-buffer とか、ありそうでなかった。もしくは *scratch* とかに貼り付けておいて、M-x rename-buffer …
Cocoa Emacsでのフォント設定 - あどけない話 に書いてあるフォント設定をまるまるコピペした。 ;; フォントの設定 ;; http://d.hatena.ne.jp/kazu-yamamoto/20090122/1232589385 (setq my-font "-*-*-medium-r-normal--14-*-*-*-*-*-fontset-hiramaru") (se…
$ alias svn 'SVN_EDITOR=/Applications/Emacs.app/Contents/MacOS/bin/emacsclient svn $*'Cocoa Emacs の中で起動した eshell から見える環境変数を定義するには environment.plist を編集して一回ログアウトしないといけないんだけどログアウト面倒くせー…
bash などのシェルには、コマンド置換という機能がある。 $ banner `uptime`eshell にも同様の機能があるが、バッククォートではなくて ${} を使う。 $ banner ${uptime}bash などのシェルにはやはりバッククォートと同様のことをする $() があり、 eshell …
echo $SHELL で bash を名乗るからには環境変数には何もないわけだしなあ・・・。 (eshell-version) とかありそうだけどなかった。そういえば Emacs 22.1 あたりを使ってたときは、標準添付じゃなくて最新バージョンっぽい eshell を自前で入れようとしたら…
.emacs.el を小分けにして load で個別に読み込むのが最近の?トレンドのようだけど、管理すべきファイルが増えてしまって自分にはかえって難しいと思ったので、徐々に .emacs.el に設定をまとめなおしている。でも .emacs.el が長くなると読みづらいのは確…
ローカル IMAP サーバ + Mew + emacs-w3m かつ Plagger を使い Subscription::LivedoorReader + Publish::IMAP という、とても面倒くさい環境にて。Mew の Message バッファで HTML メールは emacs-w3m で読むようにして、読んでるブログの記事とかの本文中…
追記 CVS HEAD を co しなおしてやり直したらちゃんとインストールできた。 HTML メールも読めた。初期状態だと Mew は HTML メールを解析しないので、 (setq mew-use-text/html t) した。 Mew で HTML メールを読んでみたかった。mew.el にコメントアウトさ…
どういう風に機能するのか知らないままにしておくのは気持ちが悪いので試してみた。bash のデフォルトの補完みたいな動きをするわけか。 compiler complete computer って書いてあるバッファで c[C-M-/] って押すと com まで補完されてウィンドウが分割して…
たぶん初めて動的略語展開という単語を目にしたのは社内のウィキで、むかーしの技術者ミーティングの議事録(ログ)のページを読んでいて Emacs 使いの先輩社員が「dabbrev なしでプログラムを書く気がしない」みたいなことを書いていて、 dabbrev ってなん…
良かったこと コピペが透過的になった(Firefox で Cmd + C でコピーした文字列が C-y で Emacs のバッファにペーストできる) Mew で画像が添付されたメールを開くと画像が表示されるようになった フォント/タイプフェイスにいっそう綺麗なアンチエイリアス…
Cocoa Emacs にしたら region を pbcopy へ送る emacs lisp がうまく動かなくなった。このへんいじるべきかなーと思ってこんな風に変えた。 ;; X Window System のクリップボードとヤンクを共有する (ターミナルから起動するとダメ) (when (eq window-system…
bell がポンポンうるさいので消した。 (setq visible-vell t) だとすごくかっこ悪くて残念な感じになってしまったので、こんな風にしてみた。 (setq ring-bell-function (lambda () (message "ding ding!")))
INFOPATH も複数のディレクトリを指定したかったので、適当にコロンで区切ってみた。 <plist version="1.0"> <dict> <key>PATH</key> <string>/usr/bin:/bin:/usr/sbin:/sbin</string> <key>INFOPATH</key> <…</dict></plist>
FAQ っていうか Info に書いてあった。手動で environment.plist ファイルを作る必要はない。(emacs)Top:: > *Note Mac OS / GNUstep:: > Mac / GNUstep Basics に載っていた。 M-x info mEmacs [RET] で、 Mac OS / GNUstep -> Mac / GNUstep Basics の項目…
Mew が cannot load file とかのエラーで起動できなくなった。 load-path をチェックしてみるも、ちゃんと /usr/local/share/emacs/site-lisp/mew とかは含まれている。 /Applicatoins/Emacs.app/Resources/site-lisp 以下とかにないとまずいのかな、と思っ…
Cocoa Emacs から Info を読もうとしたら、 Info のサーチパスがターミナルの中で起動したときと違うようで Mew の Info とかが読めなかった。Info-direcotry-list や Info-additiolan-direcotry-list Info-default-directory-list などのヘルプを見てみた上…