gnuserv/gnuclientとemacsserver/emacsclientの違い
俺は昔からgnuserv/gnuclientを使ってきたが、Emacs23になったら、multi-ttyもあることだし乗り換えようと思っていた。しかし…カレントバッファが常にサーバのバッファで実行されるため、「現在の」カレントバッファを取得してくれない。
Emacs23だとmulti-ttyがあるから仕方ないのかな。
$ emacsclient -e '(current-buffer)' -n #<buffer *server*> $ gnudoit '(current-buffer)' 2009-09-29.txt
さらに、出力の表記も微妙に異なる。
$ emacsclient -e '"a"' -n "a" $ gnudoit '"a"' a
なお、gnudoitは「gnuclient -batch -eval」の略だと考えてよい。実際はシェルスクリプトである。