Meadow

howm の一覧表示画面で任意のファイルを削除する

ために以下のような elisp を書いてしばらく経つのだけど、 実際には elscreen-howm の削除機能を常用している。 ;; 一覧表示(C-c , a )で d するとファイルを削除 (define-key howm-view-summary-mode-map "d" 'delete-howm-file) (defun delete-howm-file …

open-junk-file したら elscreen で新しいスクリーンが開くようにする

id:rubikitch さんの open-junk-fileで開くバッファを、elscreen の新しいスクリーンで開くようにする。 (defun open-junk-file () (interactive) (let* ((file (expand-file-name (format-time-string "%Y/%m/%Y-%m-%d-%H%M%S." (current-time)) "~/My Drop…

デスクトップとノートの .emacs を Dropbox で同期

Dropbox は便利。Dropbox は偉大。 .emacs の同期はずっとやろうやろうと思いつつも放置してきていた。*1 でもようやく重い腰を上げて同期したのでメモしておく。*2 デスクトップは家で使ってるやつで、ノートは外で使ってるやつ。 .emacs は大体似たような…

また hatena-mode 使えなくなってた

もう嫌だ…しばらく使わないで置くと毎回使えなくなる…。 そしてその度に、かなりの時間をかけていつのまにか使えるようになる。 うれしいけどスッキリしない。 きっと全然思いもしないところに原因があるんだろうなぁ。 もしかしたら一度はてダラ使ってみた…

過去に euc でポストした日記を utf-8 でポストし直すと文字化けする?

hatena-mode で、M-x hatena-get-webdiary して過去の日記を取ってきて、 そいつを utf-8-unix でポストすると、ブラウザで見たときに文字化けしてる。Meadow でファイルを開いたときに、 自動的に utf-8-unix に変換するようにしているのだけど、その設定が…

antyhing で C-p, C-n がきかない

anything の設定でカーソルキーを使わなくても上下移動ができるように 以下の設定を書いていたのだけど、いつのまにかきかなくなっていた。 (define-key anything-map "\C-p" 'anything-previous-line) (define-key anything-map "\C-n" 'anything-next-line…

hatena-mode と curl.exe

新しい PC にまた XP を入れて動かしているのだけど 今まで愛用してきた Meadow をそのまま持ってきて cygwin の curl を入れたらすんなり動いてくれた。 .hatena を使い回さなかったのがよかったのかもしれない。 もっと時間がかかると思ってたけどよかった…

git のコミットメッセージを Emacs で書くときに自動で文字コードを指定する

.gitconfig に以下のように書いておくと git commit したときに Emacs でコミットメッセージが書ける。 [core] editor = emacsclientw それで、コミットメッセージに日本語を書く度に C-x RET f utf-8 してからコミットしてたんだけど 毎回やるのが面倒にな…

javascript-mode から js2-mode へ移行

javascript-mode の挙動がおかしくなってたから直そうとしたんだけど いい機会だからまた js2-mode を試してみた。 そしたらいい感じだったので今度こそ乗り換えることにした。 js2-modeを使いやすくする - speg03の日記が分かりやすくまとまっていて大変助…

やっと hatena-mode がまた使えるようになった

でもどうして使えるようになったのかサッパリ分からず… ずっと前に hatena-mode 使い出そうとしたときも 同じような感じで使えなかったんだよなー。 嬉しいけどスッキリしない。 また同じようなことになったらどうしよう (´・ω・`) とりあえず最後うまくい…

しばらく日記を書いていなかったせいか

はてなモードの使い方を忘れていてちょっと驚いた。 何も考えなくても「M-x hatena」を入力できていたはずなのに 「あれ?どうやって起動するんだったかな?」と一瞬分からなくなった。 あとポストの仕方も忘れていて、「C-c C-c」とするところを 間違って「…

windows.el 再び

windows.elよりもelscreen.elの方が使いやすい - gan2 の Ruby 勉強日記から ずっと elscreen を愛用し続けてきたのだけど、 タブを使える elscreen よりも ウィンドウの分割情報も保存してくれるという windows の方が 便利なんじゃないかと思えてきたので…

dired で今日編集したファイルを目立たせる

(defface my-face-f-2 '((t (:foreground "LightSeaGreen"))) nil) (defvar my-face-f-2 'my-face-f-2) (defun my-dired-today-search (arg) "Fontlock search function for dired." (search-forward-regexp (concat (format-time-string "%m-%d" (current-t…

Mozrepl で prototype.js をいじる

repl.enter(content.wrappedJSObject) を実行すれば普通に「$」とかにアクセスできるようになることが分かった。 このコマンドは Firefox3 用のもので、Firefox2 では代わりに repl.enter(content)とすればいけるらしい。 例えばprototype.js の公式ページに…

矩形選択では切り取りはできるけどコピーはできないみたいだ

「C-x r k (kill-rectangle)」はあるけど「copy-rectangle」はない。 「C-x r r (copy-rectangle-to-register)」はあるので レジスタを経由すればできるみたいだけど レジスタ使わないで矩形コピーっていうのはできなのかな? まあできないならできないでも…

カスタマイズするときはまず M-x customize-apropos するのがいいかも

js2-mode の customize - 4n0+h3r p13c35で「customize」がお勧めされていたので試してみた。 face とかの設定をいじるときは「M-x customize-apropos」を使うと いじれる項目がざっと見れるので便利なことが分かった。 でも「M-x customize-apropos」 でマ…

ruby-mode の flymake の設定をした

JavaScript 書くときは使いまくりんぐな flymake だったけど Ruby では使っていなかったので使えるようにした。 flymake でリアルタイム文法チェック - とりあえず暇だったし何となく始めたブログを参考に 以下を .emacs に追加した。 ;; flymake for ruby (…

yasnippet のトリガーを変更して hippie-expand と連携するようにした

yasnippet を導入してみた - gan2 の Ruby 勉強日記ではたくさんのブクマを頂いたわけだけども 当の僕はといえば、実はあれ以来日に日に yasnippet の使用頻度が低下していき 遂には全く使わないようになってしまっていた。 というのは、「スペーストリガー…

js2-mode の設定をちょっといじった

Emacs で JavaScript を書くを参考にして少し設定を追加した。 ;;; js2-mode ;; エラーの判定処理が気になる (autoload 'js2-mode "js2" nil t) (add-to-list 'auto-mode-alist '("\\.js$" . js2-mode)) (add-hook 'js2-mode-hook '(lambda () (setq js2-bou…

Emacs でファイルの文字コードを変換するときの覚書

もうさすがに忘れないだろーとは思っているものの 以前もそんな風に思っていてしばらくしたらあやふやになっていたので 記憶に定着されることを祈りつつちゃんと書いておく。 基本 以下の2つを覚えておけばまず大丈夫。 文字化けしてるとき (UTF-8 のファイ…

リージョンの選択と矩形選択を切り替えられるようにする sense-region

Emacs では「C-SPC」でマークをセットして、以降リージョンを選択できる状態になるが sense-regionを使うと「C-SPC」を押すごとにリージョンの選択と矩形選択を切り換えられるようになる。 「C-x r」ではじめる通常の矩形選択だと、リージョンの選択と視覚的…

rcodetools の導入

xmpfilter が便利らしいのでぐぐってみたら、rcodetools に含まれていることが分かった。 rcodetools。見覚えはあるけど何なのかはよく分かってない。 とりあえず gem で入るみたいなので入れてみる。 gem install rcodetoolsrcodetools には Emacs 用のイン…

Meadow を完全に UTF-8 に移行しようとして…

今のところ .emacs にこんな感じの設定をしている (都合によりほとんどの設定はコメントアウトしてある)。 ;;;; 日本語環境の設定 ;; ;; 以下の3つは set-language-environment よりも先に書いておく必要がある ;; (require 'un-define) ;; (require 'un-too…

function (#') について

「#' (シャープクォート)」が何なのか分からなくて調べたのでメモしておく。 「#'」は「function」と同じ意味 「'」を「quote」のかわりに使えるのといっしょ 関数をクオートするときは「'」よりも「#'」を使う方がよいとされている しかし「'」と「#'」は実…

便利なコンパイル機能 smart-compile

Emacs Lisp TIPS なんでこれ今まで使ってなかったんだろう…。 考えてみたらいちいちコマンドラインから「ruby hoge.rb」とかって実行するのって面倒だよなぁ。 「smart-compile」を使うと、ファイルを編集中に自分の好きなバインドでコンパイルを実行できて …

アクティブなバッファから絶対パスを得る

「M-: (eval-expression)」で (expand-filename (buffer-name)) を実行すれば OK。 これを書いてて思いだした。 CodeRepos でコミットするときは、コメントに 「lang/javascript/userscripts/hogehoge.user.js」 のようなパスを添えるのがマナーみたいなんだ…

手元のソースコードをハードタブからソフトタブに変換するには

「tabify」と「untabify」を使う。 もっと具体的に言えば「C-x h (M-x mark-whole-buffer)」でソースコード全体を選択してから 「ソフト → ハード」なら「M-x tabify」を実行する。 「ハード → ソフト」なら「M-x untabify」を実行する。 「C-M-% (M-x query…

eshell で標準出力に出力されるタイミングが遅い問題について

Ruby の場合なら以下のように puts などを再定義しておくことで とりあえずは解決されるように思える。 alias :_puts :puts def puts(*args) _puts *args $stdout.flush end 追記 バッファリングの問題のようだから、再定義しなくても「$stdout.sync = true…

eshell で ansi-color に対応にする方法

僕は以下のような設定を .emacs に追加しているのだけど (setq eshell-output-filter-functions (list 'eshell-handle-ansi-color 'eshell-handle-control-codes 'eshell-watch-for-password-prompt)) (add-hook 'eshell-mode-hook 'ansi-color-for-comint-m…

eshell が終わらせられないときは C-c C-k するといい

「C-c C-k」は「eshell-kill-process」に割り当てられていて これを呼べばおそらくどんなときでも eshell を終了させることができる。 eshell で autotest を動かすと「C-c」しても終了できなくて困っていたのだけど もうこれからは大丈夫そうだ。ありがとう…