トップページunix
1001コメント295KB

Emacs Part 40

■ このスレッドは過去ログ倉庫に格納されています
0001名無しさん@お腹いっぱい。2012/02/11(土) 20:07:29.69
前スレ

Emacs Part 39
http://toro.2ch.net/test/read.cgi/unix/1322556644/
0744名無しさん@お腹いっぱい。2012/07/23(月) 08:35:29.27
なんでわざわざ名前欄にレス番入れてんだ・・・?
こっから連レスする予定?
0745名無しさん@お腹いっぱい。2012/07/23(月) 09:05:09.00
すまん、なぜかわからん。自分で書いた覚えがない。
0746名無しさん@お腹いっぱい。2012/07/25(水) 02:30:08.61
\\の嵐に悩んでいる人は regexp-lock 使ってみたら?
個人的にはグルーピングに関する悩みは大体は解決した。
0747名無しさん@お腹いっぱい。2012/07/25(水) 08:29:30.29
軽くぐぐっても出てこないんだけどどこにあるの?
regexp-optの間違いじゃないよね?
0748名無しさん@お腹いっぱい。2012/07/25(水) 20:34:26.96
http://lists.gnu.org/archive/html/gnu-emacs-sources/2005-11/msg00004.html
これかな?
0749名無しさん@お腹いっぱい。2012/07/25(水) 20:43:28.61
>>748
これ面白いね。正規表現っぽい文字列コンテキストのとこに入ると
\\(\ab\(\\(cd\\)\\)\\) がハイライト付きで \1(ab\2(\3(cd\3)\2)\1) みたいに表示される
正規表現のグルーピングになってない()はハイライトされないから確かに一目瞭然だわ。
0750名無しさん@お腹いっぱい。2012/07/27(金) 12:49:38.46
質問です。
Emacsを使うとマウスまで手を伸ばさなくてもほとんどの作業ができるようですが、
本当にそうなのでしょうか?
例えばカーソルを合わせたりクリックするような作業も全てキーボードで行う事は可能なのですか?
0751名無しさん@お腹いっぱい。2012/07/27(金) 13:08:24.02
>>750
どこにカーソルを合わせること想定していますか?
バッファの中ならカーソル移動のキーバインドを調べてください。
クリックするとは、どのような機能を意味していますか?
カーソルの位置指定という意味に過ぎないのなら、
カーソルがそこに移動すれば、クリックは不要でしょう。
0752名無しさん@お腹いっぱい。2012/07/27(金) 13:35:07.17
ずばりそうでしょう。
0753名無しさん@お腹いっぱい。2012/07/27(金) 13:59:54.91
それにカーソルの位置合わせでマウスの方がはやいじゃんwwwとか思ったら
別に躊躇せずマウス使えばいいと思う
0754名無しさん@お腹いっぱい。2012/07/27(金) 21:19:20.49
ネタ振り

色設定とかフォント設定を環境毎に分けて書きたくないから
フォントとか色があればそれを使うって書き方にした。

;; フォント
(flet ((font-candidate (&rest font-list) (find-if (lambda (f) (find-font (font-spec :name f))) font-list)))
(set-fontset-font "fontset-custom" 'japanese-jisx0208 (font-candidate "MeiryoKe_Console" "VLゴシック" "MSゴシック"))
...
)

;; 色
(flet ((color-candidate (&rest colors) (find-if #'color-defined-p colors)))
(set-face-attribute 'region nil :foregreound (color-candidate "SystemHilightText" "White")
:background (color-candidate "SystemHilight" "Royal Blue"))
...
)
0755名無しさん@お腹いっぱい。2012/07/27(金) 21:35:25.42
フォントや色は.emacsじゃなくて.Xresourcesで設定するようにした。
そうすると.emacs引き回すときも環境のことあまり気にしなくてよいので
かなり気楽になったよ。
0756名無しさん@お腹いっぱい。2012/07/27(金) 21:41:15.92
>>755
どっちかっていうとNTEmacsとかのWindows環境との共存重視っす。
0757名無しさん@お腹いっぱい。2012/07/29(日) 09:49:45.82
Googleで調べたけどいまいちよくわからないので質問です。
最初にanything.elというパッケージをTamasPatrovicsという人が開発して、
その開発をいまは日本のるびきちさんが受け継いでいる。そしてそこから
フォークしたhelmというパッケージもあるって理解でOKですか?
0758名無しさん@お腹いっぱい。2012/07/29(日) 10:07:29.52
大体あってる。
フォークしたんでなくメンテナンス引き継いだんだったかな?
今は helm の方が開発活発だね
0759名無しさん@お腹いっぱい。2012/07/29(日) 10:12:46.34
レスありがとうございます。
0760名無しさん@お腹いっぱい。2012/07/29(日) 11:47:32.17
るびなんとかさんが作者みたいなふるまいをしてるから
作者なのかと思っていたわ
0761名無しさん@お腹いっぱい。2012/07/29(日) 12:36:58.25
yasnippet がいつの間にか動的ロードだかなんかするようになったせいなのか
起動時に有効化しても M-x emacs-init-time が1秒を切るようになって嬉しい
0762名無しさん@お腹いっぱい。2012/07/29(日) 13:10:29.41
俺様の新PCだとM-x emacs-init-time => 0.2です。
”一瞬”でエディタが立ち上がるという感覚って大事ですよね。
0763名無しさん@お腹いっぱい。2012/07/29(日) 13:25:56.44
うちも emacs -q なら M-x emacs-init-time > 0.1 だわ
0764名無しさん@お腹いっぱい。2012/07/29(日) 19:34:06.08
emacs -q でないなら、みんなどれくらいなの?
俺は無駄にいろいろ書いてるので 3.6seconds だった。。。
0765名無しさん@お腹いっぱい。2012/07/29(日) 19:46:46.33
4.4 seconds
0766名無しさん@お腹いっぱい。2012/07/29(日) 19:48:30.79
うちは 0.9 seconds だわ
eval-after-load とかに結構追い出したからなぁ
0767名無しさん@お腹いっぱい。2012/07/29(日) 21:14:22.25
>>766
そうか。。。俺も整理が必要だな。
0768名無しさん@お腹いっぱい。2012/07/29(日) 21:18:32.42
どう考えてももうこれ使わんだろ的な require なくすだけでも軽くなってくけど
そんなに頻繁に立ちあげたり落したりしないなら数秒の差とか気にしなくてもよいだろうけどね。

dump すれば凄まじく早くなるらしいが・・・
http://dev.ariel-networks.com/Members/matsuyama/dump-emacs/
0769名無しさん@お腹いっぱい。2012/07/29(日) 21:45:00.95
このコマンド初めて知った
3.4 sec
0770名無しさん@お腹いっぱい。2012/07/29(日) 22:01:40.21
0.4~0.6だった
みんなどれだけ複雑な.emacsなんだ
0771名無しさん@お腹いっぱい。2012/07/29(日) 22:20:54.81
どこが重いかまでプロファイリングできれば面白いね
0772名無しさん@お腹いっぱい。2012/07/29(日) 22:23:53.37
25.9 secondsだった。
0773名無しさん@お腹いっぱい。2012/07/29(日) 22:27:27.75
それはさすがにマシンの方に問題ありだろw
0774名無しさん@お腹いっぱい。2012/07/29(日) 22:32:47.58
emacs 23 の時でちょっと古い yasnippet 使ってた時は 15 seconds だったけど
同じPCで emacs 24 と最新の yasnippet にしたら 0.9 seconds まで下がった
07757722012/07/29(日) 22:36:02.32
Intel(R) Atom(TM) CPU N455 @ 1.66GHz
memory 1G
のネットブックなんだ。

あとemacs-w3m初回起動時に、3秒ぐらいかかる。
0776名無しさん@お腹いっぱい。2012/07/30(月) 12:21:16.20
executable-find とかを大量に書いてる場合で環境がそんなに変わらないなら
結果をキャッシュするとかすれば速くなりそうだ
0777名無しさん@お腹いっぱい。2012/07/30(月) 13:47:03.70
SSD なノートだと 0.2 sec やな。
0778名無しさん@お腹いっぱい。2012/07/30(月) 13:49:24.53
ディスクアクセスがネックになってるってのはあるだろなあ
0779名無しさん@お腹いっぱい。2012/07/30(月) 14:11:25.30
いったん、ディスクにキャッシュが効けば、早くなりますな。
0780名無しさん@お腹いっぱい。2012/07/31(火) 05:38:10.28
i7 3960 で5〜7sec
i7 920 で5sec
あんまりかわらんな・・・。
0781名無しさん@お腹いっぱい。2012/07/31(火) 07:28:29.04
ディスクアクセスとメモリアクセスがほとんどだろ。
0782名無しさん@お腹いっぱい。2012/07/31(火) 07:57:58.62
GNU Emacs24.1をWindowsで使い始めたんだけど、
日本語入力時のキーバインディングが独特でとまどっています。
あと変換候補もなんかWindowsの標準IMEよりすこしバカというか…
これはこんなもんだとあきらめて適応したほうが幸せですか?
0783名無しさん@お腹いっぱい。2012/07/31(火) 07:58:42.46
あ、ここUnix板だったか、場違いだったら失礼しました。
0784名無しさん@お腹いっぱい。2012/07/31(火) 08:04:27.65
MS-IMEかATOKを使えばいいじゃないの。
0785名無しさん@お腹いっぱい。2012/07/31(火) 08:33:04.60
オリジナルの NTEmacs だと IME パッチとかが適用されていないから
gnupack とかのパッチ適用済みのバイナリを使ったほうがいいかもね。
そっちなら Windows 本来の IME が使える。

標準で入ってる leim はどんな言語も入力出来る優れたシステムではあるんだけど
日本語入力部分の元となった skk が特殊な上辞書とかほぼ入ってない状態に近いから
最新の skk を入れるか他の漢字変換システム使ったほうが賢明だとは思う。
これは Win も Unix も同じ。
0786名無しさん@お腹いっぱい。2012/07/31(火) 08:57:11.24
レスありがとうございます。調べてみます。
0787名無しさん@お腹いっぱい。2012/07/31(火) 12:05:27.51
NTEmacs スレは良スレ
ここはるびきっちゃんアンチが常駐、多分結構なおっさん
0788名無しさん@お腹いっぱい。2012/07/31(火) 12:08:31.12
そういうこと言わんでよろしい。
0789名無しさん@お腹いっぱい。2012/07/31(火) 15:19:22.57
るびきちも結構なおっさんなんじゃないの?
0790名無しさん@お腹いっぱい。2012/07/31(火) 15:29:26.88
るびきちの話はこっちで。

るびきちスレ
http://toro.2ch.net/test/read.cgi/unix/1342582441/
0791名無しさん@お腹いっぱい。2012/07/31(火) 20:38:26.75
うむ。普通にEmacsの話してるぶんには荒れないもんな。今は。
0792名無しさん@お腹いっぱい。2012/07/31(火) 23:25:08.45
cygwin版emacsをmintty上で動かしMS-IME使ってる。
なかなか24.1になってくれなかったけど。
0793名無しさん@お腹いっぱい。2012/07/31(火) 23:42:31.54
リストを返り値にする関数があって、そのリストのそれぞれの値を特定の変数に代入したい場合って簡単にやる方法あります?
(hoge) ; => '(1 2 3 4 5)

;; 最初の3つを a b c にそれぞれ代入
(setq result (hoge))
(setq a (car result))
(setq b (cadr result))
(setq c (caddr result))

高々3個だからループにするまでもないし、何か他にうまい書き方があればご教授願いたいです。
0794名無しさん@お腹いっぱい。2012/07/31(火) 23:53:49.28
(multiple-value-setq (a b c) (hoge))
0795名無しさん@お腹いっぱい。2012/07/31(火) 23:55:25.66
おおお、そのものずばりのものがあるんですね。cl 便利だなあ。
ありがとうございました。
0796名無しさん@お腹いっぱい。2012/08/01(水) 09:19:29.60
reddit にあがってたけど、Emacs利用者調査だってさ。
結果がまだでてないけどおっさん率高そうな予感。

http://www.reddit.com/r/emacs/comments/xg9hh/emacs_demographics_survey/
https://docs.google.com/spreadsheet/viewform?formkey=dGpiRWZSdHMyVDhwczQxMnh2R0VNbEE6MQ
0797名無しさん@お腹いっぱい。2012/08/01(水) 20:07:47.74
elispのネイティブコンパイルとかいう無茶なプロジェクトが。
http://www.mundell.ukfsn.org/native/
0798名無しさん@お腹いっぱい。2012/08/01(水) 21:30:26.01
死ぬほど誤差レベルだけど
(setq a 10 b 20...) より (setq a 10) (setq b 20)... の方が早いのな

(defun a ()
(setq a 10
b 11
c 12
d 13
e 14
f 15))

(defun b ()
(setq a 10)
(setq b 11)
(setq c 12)
(setq d 13)
(setq e 14)
(setq f 15))

(elp-instrument-function 'a)
(elp-instrument-function 'b)

(dotimes (v 100000) (a))
(dotimes (v 100000) (b))

(elp-results)
0799名無しさん@お腹いっぱい。2012/08/04(土) 04:14:38.02
>>797
elispをマクロでschemeにすればgambitとかでnativeにできると思うよ
cl2scm
とかいうマクロ集があったはず
0800名無しさん@お腹いっぱい。2012/08/04(土) 04:22:49.86
makeを
C-c c
に割り当てたら
間違ってC-x C-cになってemacs閉じてしまう事故が頻発するようになった
なにかもっといいKey bindないものか

閉じる前に確認の窓だせないものか
0801名無しさん@お腹いっぱい。2012/08/04(土) 05:03:49.80
>>800
kill-emacs-query-functions に適当な関数追加するのがいいと思うよ。
0802名無しさん@お腹いっぱい。2012/08/04(土) 08:55:11.88
C-x C-c を解除しちゃうのも手ではある。
一時期 C-c C-x C-c にしてた。
0803名無しさん@お腹いっぱい。2012/08/04(土) 09:47:43.52
C-l時にredrow-displayを同時に処理したいんですが、どう設定するのでしょうか?
0804名無しさん@お腹いっぱい。2012/08/04(土) 10:04:42.98
recenter-redisplay を t にすればいいんじゃないかな
0805名無しさん@お腹いっぱい。2012/08/04(土) 10:07:41.23
diredでディレクトリを移動した時に直前のソート状態を適用することは出来ませんか?
移動前に日付順で表示していたら、移動後に最初から日付順で表示するといった具合です。
0806名無しさん@お腹いっぱい。2012/08/04(土) 10:19:30.97
自分ところでは移動前にバッファローカルな dired-actual-switches を覚えといて
バッファ移動後に dired-sort-other でソートさせてる。
移動時に前のバッファを削除する&popwin対応も入ってるから適当に削ってくれ。

(dolist (f '(dired-find-file dired-up-directory))
(eval `(defadvice ,f (around ,(intern
(format "ad-%s-and-kill" f))
activate compile)
"移動前のディレクトリバッファ削除およびソート順序保持."
(let ((prev-buffer (current-buffer))
(switch dired-actual-switches))
ad-do-it
(if (and (not (eq prev-buffer (current-buffer)))
(eq major-mode 'dired-mode))
(progn
;; popwin 管理下の場合はバッファの差し替えを通知する
(if (and (boundp 'popwin:popup-buffer)
(eq popwin:popup-buffer prev-buffer))
(setq popwin:popup-buffer (current-buffer)))
(kill-buffer prev-buffer)
(dired-sort-other (setq dired-actual-switches switch))))))
))
0807名無しさん@お腹いっぱい。2012/08/04(土) 10:47:14.77
>>806
頂きました。
ありがとうございます。
08088032012/08/04(土) 21:11:56.01
>>804
なるほど!最高です!
ありがとうございました。
0809名無しさん@お腹いっぱい。2012/08/06(月) 13:41:16.88
APELの行方を探しています

リンク切れ↓
http://kanji.zinbun.kyoto-u.ac.jp/~tomo/lemi/dist/apel/apel-10.8.tar.gz

これがないとwlも入れられません
0810名無しさん@お腹いっぱい。2012/08/06(月) 13:45:47.91
http://core.ring.gr.jp/pub/elisp/apel/apel-10.8.tar.gz
ftp://ftp.ring.gr.jp/pub/elisp/apel/apel-10.8.tar.gz
0811名無しさん@お腹いっぱい。2012/08/06(月) 14:12:38.14
wl をいまだ使っているやつがいるとわ
0812名無しさん@お腹いっぱい。2012/08/06(月) 14:18:18.69
Emacs でメールとか見なくなったなあ
wl いれるのめんどいから gnus で gmail みてみるかと思ってちょっと設定したけど
gnus 使い方がさっぱりわからんわ
0813名無しさん@お腹いっぱい。2012/08/06(月) 14:37:30.02
>>811
「いるとは」な。
08148092012/08/06(月) 14:41:27.81
>>810
ありがとうございます!

>>811
はぁ? あと30年は使うわ
0815名無しさん@お腹いっぱい。2012/08/06(月) 14:43:50.76
>>814
のいう事はわかるけど、なんで30年なの?
0816名無しさん@お腹いっぱい。2012/08/06(月) 15:19:34.60
wlってたかだか数千通程度のフォルダ開くのに数分かかる欠陥品じゃん。
0817名無しさん@お腹いっぱい。2012/08/06(月) 15:21:21.59
確かに結構おそかったよね。
0818名無しさん@お腹いっぱい。2012/08/06(月) 15:21:34.80
メール送信にはwl使ってるなあ
0819名無しさん@お腹いっぱい。2012/08/06(月) 16:17:26.78
wl なんて10年前に決別した
いまは Tunderbird厨やっとる
検索も自動リファイルも慣れれば wl より快適
0820名無しさん@お腹いっぱい。2012/08/06(月) 16:19:21.12
仕事では thunderbird 使ってるけど
プライベートは gmail の web インターフェース版しか使わなくなったな。
0821名無しさん@お腹いっぱい。2012/08/06(月) 16:26:38.30
いいじゃん wl 使ったって。
各人が好きなの使えばいいよ。
0822名無しさん@お腹いっぱい。2012/08/06(月) 17:09:06.12
wanderlust は apel だの semi だの flim だの入れるのがめんどくさいのがな
0823名無しさん@お腹いっぱい。2012/08/06(月) 17:19:28.15
skkはapel不要になったね。
0824名無しさん@お腹いっぱい。2012/08/06(月) 20:00:37.95
write-file を引数無しで実行するとミニバッファでファイル名の入力を即されますが、
これにデフォルトのファイル名を予め入力された状態でプロンプトを出す方法はないでしょうか?

引数にファイル名を指定してしまうとプロンプトが出ませんし、
第2引数の confirm を t にしても新規作成の場合は特になにも言われず保存になってしまいます。
0825名無しさん@お腹いっぱい。2012/08/06(月) 20:12:13.12
俺は mew 使ってるんだが変かな?
0826名無しさん@お腹いっぱい。2012/08/06(月) 20:20:57.93
オレも wanderlust 使ってるんだが、開発が止まってる!?のが心配です。
0827名無しさん@お腹いっぱい。2012/08/06(月) 20:39:29.76
ある種枯れてるソフトだから開発とまってても問題なかろ
shimbun とかも今更追加しないだろうし
0828名無しさん@お腹いっぱい。2012/08/06(月) 23:21:08.09
素のemacsだけでimapとmaildir形式に対応してくれればいい
なんか目論んでる人がいそうな雰囲気なので期待してる
0829名無しさん@お腹いっぱい。2012/08/06(月) 23:38:14.59
一時期日本発のメイラーが色々出来たのは日本語subjectとかに
対応させたかったからか? ならもう役割は終わってるね。
0830名無しさん@お腹いっぱい。2012/08/06(月) 23:54:06.03
wl は MIME の subject とか
日本語の添付ファイルのハンドリングで問題おおすぎだし
結局いい加減使うのあきらめた
imap/maildir やろうとすると Courier-IMAP くらいしか思いうかばんな
0831名無しさん@お腹いっぱい。2012/08/07(火) 00:06:31.14
>>824
自前でread-file-name使うとか
08327722012/08/07(火) 00:19:45.15
>>828
GNU Emacsに付いてくるGnusにnnimapやnnmaildirがあるよ。
Gnusを使うことが前提だけど。
0833名無しさん@お腹いっぱい。2012/08/07(火) 00:49:19.64
>>830
flimの別の版を使えばいいとかなんかそういう見通しの悪さはあったよね。
0834名無しさん@お腹いっぱい。2012/08/07(火) 16:33:11.31
Emacsの日本語入力について質問なのですが、
(global-set-key (kbd "C-[") 'toggle-input-method)
このように設定しても、C-[で日本語入力が切り替わりません。

また、toggleではなくstartやendはないのでしょうか?
0835名無しさん@お腹いっぱい。2012/08/07(火) 17:14:19.54
\C-[はESCなので特別。頑張れば可能だけど、しない方がいい。
0836名無しさん@お腹いっぱい。2012/08/07(火) 20:04:24.26
on/off は activate-input-method と inactivate-input-method かな
activate-input-method は input-method を引数に渡す必要があるから
default-input-method あたり与えてやらないとだめだね
0837名無しさん@お腹いっぱい。2012/08/08(水) 10:01:58.68
ウィンドウ毎にバッファのポイント位置を保持する方法ってないでしょうかね?
ウィンドウを分割して同じバッファを両方に表示し、片方を適当にスクロールしてバッファ切り替え、
その後また同じバッファに戻した際に切り替えてない方のウィンドウのポイント位置と同じ場所にカーソルが移動してしまいます。

それなりに長いソースの別々の場所を参照しながらちょっとバッファ切り替えた時に微妙に不便です。
0838名無しさん@お腹いっぱい。2012/08/08(水) 10:04:47.25
自己解決。
clone-indirect-buffer で別バッファとして開くことで個別にポイント管理が出来るようになりました。
0839名無しさん@お腹いっぱい。2012/08/08(水) 14:57:47.97
org-modeで[2012]と書いたときに、注釈ではなくて[2012]という文字列として
認識させるにはどうすればいいですか。
できれば[]で注釈をつくる機能はそのままにして、\[2012\]のようにしたときだけ
[2012]という文字列を得たいのですが。
0840名無しさん@お腹いっぱい。2012/08/08(水) 17:48:56.97
iBusにてC-[, C-]に日本語入力のON/OFFの設定をしています。
今までのPCではEmacsでも日本語入力を問題なく行えていたのですが、。新しいPCにインストールすると日本語入力ができなくなってしまいました。
C-[を押した次になにかの文字を入力すると、その文字は入力されずにカーソルがどこかいろいろなところに移動してしまいます。
Emacsで日本語入力をシたいのですが、どのような設定が必要になるでしょうか?
0841名無しさん@お腹いっぱい。2012/08/08(水) 18:20:58.11
>>840
C-[ 以外のキーに割り当てることをおすすめします。
0842名無しさん@お腹いっぱい。2012/08/08(水) 18:21:42.29
iBusで、ってことはEmacsの外側でってこと?
0843名無しさん@お腹いっぱい。2012/08/08(水) 19:17:28.47
普通は『M-`』だろ
常識的に考えて
■ このスレッドは過去ログ倉庫に格納されています