Emacs

Ctrl-hが何故helpか?

昨日のErlang勉強会の二次会(カラオケ)で話題になったので調べてみました。この辺に情報があります。 Emacs 解剖学 第二回 -- Emacsの成立とキーボード --よりC-hか delか?(Internet Archiveより。Firefoxだと文字化けするので適当にISO-2022-JPにしてくだ…

M-x find-fileで簡単に上のディレクトリを辿りたい

M-x find-fileとかC-x C-fとかでファイルを開く時に、ミニバッファに表示されているパスのbasenameを削除して、上のディレクトリを辿りたい場合がよくあると思います。 ということで、以下の関数を作成してC-wに割り当ててみました。工夫した点は、削除した…

80桁以上の行を抽出する

エディタによっては80桁のところに縦線が入ってたりして、80桁オーバーしているかすぐにわかるようになっていますが、Emacs(Meadow)でそれに類することはどうやって実現するのがよいでしょう。M-x column-number-modeでモードラインに今何桁目かは表示できま…

Meadowをバージョンアップしました

僕はWindowsではエディタ(というか開発環境というか生活そのもの)としてMeadowを使っているのですが、ついに重い腰を上げてMeadowのバージョンアップを敢行しました。MeadowというかEmacsは設定が柔軟にできる分、ついつい普段使わないような余分な設定が膨…

html-modeの使い方 for 超軽量ドキュメントPredoc

Predocを使うのに最低限覚えておいた方がよいhtml-modeの使い方を以下に挙げておきます。 C-c C-c h a hrefタグの入力。 C-c C-c i imgタグの入力。 C-c C-v HTMLのプレビュー。 C-c C-s 自動プレビューの有効/無効切り替え。 ファイル保存時に自動でプレビ…

html-modeの設定 for 超軽量ドキュメントPredoc

Predoc向けにEmacsのhtml-modeを設定してみました。お好みで以下のコードを.emacsに追加してください。 まずファイルを新規作成するときに自動でpreタグを挿入する設定です。標準添付のautoinsertを使っています。 (load "autoinsert") (setq auto-insert-al…

EmacsのM-x compileでコンパイルする

ghcの--makeオプションは優秀なので、ちょっと試すだけのプログラムはわざわざMakefileを書かなくてもいいように思います。 以下のようにHaskellのソースファイルの書いておくと、EmacsのM-x compileでコンパイルするときにそのコマンドが使えます。もしエラ…

モードラインにカラム数を表示するには

はてなダイアリーにプログラムのソースコードを貼り付けるときに見栄えがよくなるように、僕は普段から80文字で改行を入れるようにしています。そのために以下の設定を.emacsに書いて、モードラインにカラム数を表示しています。 (column-number-mode t)

カーソル付近のURLをはてなID記法に変換する

日記を書くときに、僕はEmacsで下書きをしてからWebブラウザにCopy & Pasteして登録しているのですが、他人の日記の参照する際にいつも http://d.hatena.ne.jp/ha-tan/20050820/1124488573の形式のURLを id:ha-tan:20050820:1124488573のようなはてなのID記…

プログラミングモードでのカーソル移動

http://www.lostway.org/~tko/doc-jp/cc-mode.htmlより、Emacsでプログラミングする時のカーソル移動方法をメモ。とりあえずこれだけ覚えておこう。 M-C-a beginning-of-defun 関数定義の先頭へ M-C-e end-of-defun 関数定義の終わりへ M-C-u backward-up-li…

browse-url-firefox #2

id:ha-tan:20050524の補足そのに。id:ha-tan:20050525の設定とマージしてみた。 これで、「http:ttp://example.com」みたいにttp:が重ならなくなる。 (setq thing-at-point-url-path-regexp "[^]\t\n \"'()<>[^`{}]*[^]\t\n \"'()<>[^`{}.,;]+") (setq thing…

thing-at-pointのschemeを変更したい

id:ha-tan:20050524の補足。 「http:ttp://example.com」みたいにttp:が重なってしまうのは、thing-at-pointにschemeが登録されていないのが原因だ。ということで、ttp://、tp://をschemeとして追加してみた。以下の設定でいけると思う。 (setq thing-at-poi…

browse-url-firefox

Emacsの中のURLぽい文字列を外部のFireFoxで開くにはどうしたらよいだろうか。 ということで、以下のEmacs-Lispを書いてM-x browse-urlで開くようにしてみた。 (setq browse-url-browser-function '(("." . browse-url-firefox))) (setq browse-url-firefox-…

EmacsでTODO管理

EmacsでTODOリストを管理をするには何を使うのがいいんだろう。 とりあえずemacs-21.4anb1に入っていたtodo-mode.elをお試し使用中。M-x todo-insert-itemとM-x todo-showさえ知っていれば何とかなりそう。

なんちゃってAZIK-SKK

EmacsのSKK上でAZIKを使うには、ddskkに入っているexperimental/skk-azik.elを使うことが多いと思う。でもこの設定はAZIKをつきつめていて、普通のSKK使いにはいささか使いにくい。"q"でカナモードにならなかったり、"「"を入力するのに"x["だったり、"つ"を…

実践キーボードマクロ

>、|、|、(Enter)、|、|、はてなの整形済みテキストブロックの入力支援ね)。以下、手順。 C-x( マクロに相当する編集を実行。ここでは、>、|、|、(Enter)、|、|、 C-x) M-x name-last-kbd-macro(Enter) Name for last kbd macro: hatena-insert-code-block(E…

navi2chの履歴モードでレス数を表示したい

2chを見るのにnavi2chを使ってるんだけど、僕は更新されているスレのチェックを以下ように行っている。 M-x navi2chで起動。 履歴に移動。 *を押して複数選択。 miで選択した項目を更新。 tでオフラインモードに移行。 更新フラグ(U)が立っているスレを見る。…

ソースコード貼り付け

はてなでソースコードを貼り付ける場合の記法を入力するのが面倒くさい。てけとーにemacs-lispをでっちアップする。 以下の内容を.emacs or .emacs.elにどぞー。text-modeでCtrl+bを押すと補完される。 (define-key text-mode-map "\C-cb" 'hatena-insert-co…