Emacs

gud の jdb って実はインナークラスに対応してた。

gud-find-class でごにょごにょやって対応してるんだけど。だけど。。。 (if (and fbuffer (equal (symbol-file 'java-mode) "cc-mode")) ってなってるから、無効になってる罠wsymbol-file の docstring には The value is normally an absolute file name. …

anything-etags と anything-gtags を使ってみた

なんとなく。Javaで。ものは以下から。 http://www.emacswiki.org/cgi-bin/wiki/download/anything-gtags.el http://www.emacswiki.org/emacs/download/anything-etags.el Java で使う分には anything-gtags のほうが便利。ctagsの方が対応してる言語が多そ…

elisp で weak reference を使う

make-hash-table を :weakness キーワードを付けて呼ぶと使えるみたい。まずは weakness なハッシュ表を作る (setq hash (make-hash-table :weakness 'value)) => #<hash-table 'eql value 0/65 0x1029e400> 他の変数から参照されてるリストとそうでないリストをハッシュ表につっこむ (setq val '(1 </hash-table>…

htmlize で画像対応してみた。

wl で画像付きのメールを印刷してみたくなったんで。ソースは http://gist.github.com/28036。追加した事 画像を表示する (face-name1 face-name2 :attr value) 形式の face に対応(じゃないと About Emacs 画面で動かなかった) 必要なもの imagemagick の c…

unique な list を作る

なぜか標準で付いてない。reduce 使うと楽。いきなり先頭要素がくると悲しいから頭に nil を付ける。 (reduce (lambda (a b) (if (memq b a) a (cons b a))) (cons nil '(a b c d a e))) => (e d c b a) 始めて reduce 使った。ruby の inject は使ってたの…

anyting で入力してる文字を header-line に出してみる。

ビミョー (defun anything-add-header-line () (with-current-buffer anything-buffer (setq header-line-format '(:eval (save-window-excursion (select-window (minibuffer-window) t) (concat (propertize (minibuffer-prompt) 'face 'minibuffer-prompt…

describe-bindings を anything で置きかえてみる

descbinds-anything.el って言うのを作ってみた。ものは以下からどぞ。 EmacsWiki: descbinds-anything.el 使い方は .emacs に以下を書いとけばおけ。 (require 'descbinds-anything) (descbinds-anything-install) で、これが何をやるか。describe-bindings…

auto-complete.el が楽しい。

会社の方にうまく書けないからこっちに。まっちゃんがテキスト入力中に補完候補を自動的に表示してくれる auto-complete.el をリリースしました — ありえるえりあなんてものを作ったわけですよ。こいつはインテリセンス的なメニューを出してくれるライブラリ…

imap のフォルダを全部階層化する

最近 wl がマイブーム。 実は imap のフォルダを全部階層化するのはすごい簡単だって事に気付いた。以下のように .wl に書くだけ。 (setq wl-folder-hierarchy-access-folders '("^%.*$")) info を読む限りだと、作りたい階層の分だけ wl-folder-hierarchy-a…

階層表示した場合の親フォルダ名部分を消してみた

フォルダを階層表示すると普通↓になる。 [-]:gmail::0/83353/84447 :gmail:INBOX:0/9/117 [-]:gmail:ml:0/26841/24794 :gmail:ml/wanderlust:0/27/195 :gmail:ml/gnu-emacs-sources:0/217/322 :gmail:ml/emacs-mime:0/0/6 :gmail:ml/emacs-devel:0/21714/193…

フォルダに別名を付ける elmo-alias フォルダ

っていうのを作ってみた。wl で複数の imapサーバを使ってると %INBOX@hogehoge.com や %INBOX@gmail.com になってあんまり嬉しくない。これより %hoge:INBOX や %gmail:INBOX のほうが(個人的には)自然だと思う。というわけで、そんな風に使えるフォルダを…

ibufferネタ

なんとなく。 拡張子でソート 以下の優先順位でソートする 拡張子 ファイル名 バッファ名 (define-ibuffer-sorter ext "Sort the buffers by file name extension. Ordering is lexicographic." (:description "ext") (let* ((a (car a)) (b (car b)) (fa (b…

EmacsWikiがみづらいと思ったら…

EmacsWikiがどうも見づらいなぁと思ったら、EmacsWiki: CSSでCSSを変えられる事にさっき気付いた。各スタイルの「useit」をクリックでCSSが変えられる。とりあえず白背景の人だったら「Oddmuse CSS」あたりが無難。

C-xC-eでdefvar, defcustomの値を設定しなおす。

普通に elisp を書いてると defvar, defcustom の値を設定し直したい事がよくある。例えば作ってる途中の elisp で keymap に新しい定義を追加した時とか。今まではコピって eval-expression してたんだけど、さすがに面倒になってきたから無理矢理設定でき…

emacsclient で一時ファイルを編集する

gnudoit で一時ファイルを編集する - 適当めものやりなおし。 Emacs22 付属の emacsclient が良さそうだったから gnuclient はやめて emacsclient にした。 やれる事は: ファイルを開く coding-system を server-edit-file-coding-system-alist で指定でき…

gnudoit で一時ファイルを編集する

mozex や、EDITOR 環境変数に gnuclient を指定してる人は結構多いと思う。でも、こういう時って編集したら保存して kill-buffer するのが多いから、C-cC-c で保存と kill-buffer を一緒にしたいのが普通だとさっき思った。そこで、こんなのを作ってみた。 …

ses-modeでセルに色を付けてみる

emacs22からses-modeっていうスプレッドシートが追加された。便利そうなんだけど実は全然使ってないw 使わない理由はセルがはっきり判らないからな気がしたから色を付けてみた。ついでに行番号も表示するとスプレッドシートっぽくていい感じ。行番号を表示…

wanderlust で Gmail の IMAP を使う

いつのまにか Gmail で IMAP が使えるようになってたから使ってみた。設定を載せるか…と思ったら先にEmacsでGmail IMAPを触る - stanaka's blogという記事があったから設定はそこを見て下さいませ。 はまった箇所 認証方法を clear にする必要がある stanaka…

fringeの使い方

gdb-ui のソースを見てたら fringe にビットマップを表示するやり方がわかった。display プロパティに (fringe BITMAP) を指定すればいいっぽい。そうするとその行の fringe に BITMAP が表示される。ただし、そのまま display プロパティを指定すると文字が…

imenuをツリー表示

なんとなくimenuをツリー表示できるのを作ってみた…けど…微妙。 便利になりそうなアイディア募集中。 使い方 M-x imenu-tree でツリーを表示。 関数名とかを選んでRETでその要素の場所にジャンプ。 ソース (require 'tree-widget) (defvar imenu-tree-mode-m…

SKKで丸数字(ついでにSKKIMEでも)

SKKで丸数字(①とか)を入力する方法2種類書いてみる。 それぞれ以下のような利点と欠点がある 方法 利点 欠点 skk-num-type-alist を使う方法 20まで入力可能。普通の文章に混ぜやすい。 単体での入力が少し面倒。 skk-rom-kana-rule-list を使う方法 単体で…

大きい画像を分割して表示

wanderlust(semi)でメールを見てるときに画面より大きい画像が添付されてると全部表示する事ができない。 それに対処する為に無理矢理画像を分割してスクロールできるようにしてみた。 line-spacing が 0 だと綺麗になるけど、そうじゃないときに少し隙間が…

summary-mode で jit-lock

summary-mode に jit-lock で色を付けてみる。つっても、wl は スクロールしたときに色を付けるから、これやってもほとんど意味ないんだけど。 (defun wl-highlight-summary-with-jit-lock (beg end) (goto-char beg) (while (< (point) end) (wl-highlight-…

Windowsっぽいフォワード

Outlook とか使ってる人にフォワードするとこの添付ファイル何?とか言われるから作った。せめて text/plain な別パートにしようかとも思ったけど、そうすると Beckey で別のタブになるからそれもナシ。 summary-mode で "f" を押すと Select Forward Method…

メールの最後を表示してみる

スペースを連打してたら、いつのまにか summary-mode を抜けててorzにならない為に。 (defface mime-view-end-marker-face '((t :background "orange")) nil) (defun mime-view-add-end-marker () (dolist (ovr (overlays-in (point-min) (point-max))) (whe…

Meadow で印刷

ghostview に付いてくる gsprint を使って印刷する設定を書いてみる。 gs, gsview は http://www.nsknet.or.jp/~tony/TeX/install/win/gs.htm あたりを参考にして取ってくる。 でもヘッダに日本語を使えない・・・。 ちなみに、Emacs22以降(?)を使ってるな…

メールを書くときに jit-lock を使う

普通 wl でメールを書いてるときは、C-l しないと色が付かない。これはちょっと面倒だとずっと思ってた。んで、さっき jit-lock に jit-lock-register って関数があることを知った。この関数がすることは: そのバッファで jit-lock で色付けする関数を登録す…

括弧とかを自動補完

Vimで括弧/クォートを自動補完 - spiritlooseのはてなダイアリーをみてEmacs用を作ってみる。 それなりに真面目に作ってみたつもり。 各モードごとに動作を変えたい場合は buffer-local な変数にすれば多分いける。 acp.el とでもして保存して使ってください…

nxml + mule-ucs で先頭に 0xbbef が入る

utf-8-ws になってたらしい。 utf-8-ws とは utf-8-ws,utf-8-ws-unix,utf-8-ws-dos,utf-8-ws-mac. これらは,utf-8-*コーディングシステムと基本的に全く同一ですが,これらのエンコーダは,先頭にUTF-8サインを追加します。 http://www.jagat.or.jp/sgml…