トップページunix
990コメント300KB

Emacs Part 39

■ このスレッドは過去ログ倉庫に格納されています
0001名無しさん@お腹いっぱい。2011/11/29(火) 17:50:44.24
前スレ

Emacs Part 38
http://hibari.2ch.net/test/read.cgi/unix/1308635178/
0454名無しさん@お腹いっぱい。2012/01/03(火) 14:50:57.48
Windowsでcmd /c start とかで再生しちゃうとiTunesだのMediaPlayerとかだのでてうざかったから
mplayerのWindows用gui無し版を入れたらはかどった。mpg123のwindowsビルドだとなんでか再生うまくいかなかったので。
http://www.mplayerhq.hu/design7/news.html

(setq speech-sound-player "mplayer -really-quiet %s")
0455名無しさん@お腹いっぱい。2012/01/03(火) 15:00:57.91
今年こそは脱emacsしたい
0456名無しさん@お腹いっぱい。2012/01/03(火) 15:05:52.66
>>453
>>448 だと lexical-let を使ったけれど、
(let ((process (apply 'start-process (car cmdlist) nil cmdlist)))
  (set-process-plist process `(temp-file ,temp-file))
  (set-process-sentinel process
  (lambda (process event)
  (delete-file (get 'temp-file
  (process-plist process))))))
という風にするほうが真っ当かもしれない。
0457名無しさん@お腹いっぱい。2012/01/03(火) 15:08:39.08
  (  ) 脱イ・・・・・・
  (  )
  | |


 ヽ('A`)ノ マックス!!!
  (  )
  ノε|


 __[警]
  (  ) ('A`)
  (  )Vノ )
   | |  | |
0458名無しさん@お腹いっぱい。2012/01/03(火) 15:18:16.09
おやくそくの
alias emacs=vim
0459名無しさん@お腹いっぱい。2012/01/03(火) 15:52:40.25
>>428-430
できました。ありがとうございます。
0460名無しさん@お腹いっぱい。2012/01/03(火) 16:00:41.47
一応NTEmacsスレ立てといた

NTEmacs スレッド 3
http://anago.2ch.net/test/read.cgi/software/1325573999/
0461名無しさん@お腹いっぱい。2012/01/03(火) 19:09:55.27
>>395
完璧です。どうもです。
0462名無しさん@お腹いっぱい。2012/01/03(火) 19:38:37.96
anythingを入れています。
emacs起動後に*scratch*などで評価(作成)した関数が
anythingの候補一覧に載ってほしいのですが
どうすればよいのでしょうか
0463名無しさん@お腹いっぱい。2012/01/03(火) 19:43:29.24
るびきちに聞けやボケぇ
0464名無しさん@お腹いっぱい。2012/01/03(火) 19:49:26.67
anything使ってる人なんて都市伝説だろ
0465名無しさん@お腹いっぱい。2012/01/03(火) 21:12:08.20
複数の関数に同じ advice を付けたいのですが、うまく書けません。
第一引数に変数を持ってくる正しい書き方はどのようにしたらよいのでしょう?

;; func-a と func-b に同じadviceをつける
(dolist (func '(func-a func-b))
(defadvice func (before ad-func activate) (message "before")))
これだと func 変数についてしまったようで func-a と func-b には何もなしでした。
0466名無しさん@お腹いっぱい。2012/01/03(火) 21:17:05.44
どこからつっこめばいいかわからない。
0467名無しさん@お腹いっぱい。2012/01/03(火) 21:18:12.97
るびきちの責任は重いな
0468名無しさん@お腹いっぱい。2012/01/03(火) 21:25:45.54
>>466
マクロと関数と引数の評価は初心者が嵌りそうなところだと思うけれどなあ。
0469名無しさん@お腹いっぱい。2012/01/03(火) 21:29:06.07
るびきちは責任もってニワカを引き取れよ
0470名無しさん@お腹いっぱい。2012/01/03(火) 23:25:19.84
500円払えよ
0471名無しさん@お腹いっぱい。2012/01/03(火) 23:26:58.36
本買ってやったじゃん。さっさと教えないと捨てるぞ。
04724652012/01/03(火) 23:50:32.16
色々調べて書きなおしてみました。
これで正しいのか、なんでうまくいっているのかいまいち理解できていないですが動いているのでよしとしました。

(dolist (func '(func-a func-b))
(eval `(defadvice ,func (before ,(intern (format "ad-%s" (symbol-name func))) activate)
(message "before"))))

>>466
すみませんでした。本買って勉強しなおしてきます。
0473名無しさん@お腹いっぱい。2012/01/04(水) 00:05:35.25
Anything無いと途方に暮れる。
C-:にanything-filelist+を割り当ててるけど、これ以上素早く
ファイル(バッファ)を開く術は無いと思うけど。
あと、Semanticを有効にした状態でのimenuも便利過ぎる。
0474名無しさん@お腹いっぱい。2012/01/04(水) 13:03:01.19
うわっ・・・私のEmacs起動、遅すぎ・・・?
(message "init time: %d msec"
(+ (* (- (nth 1 after-init-time) (nth 1 before-init-time)) 1000)
(/ (- (nth 2 after-init-time) (nth 2 before-init-time)) 1000)))
=> init time: 5172 msec
0475名無しさん@お腹いっぱい。2012/01/04(水) 13:09:54.22
M-x emacs-init-time
0476名無しさん@お腹いっぱい。2012/01/04(水) 13:24:41.72
M-x emacs-init-time
1.2 seconds

普通こんくらい。
0477名無しさん@お腹いっぱい。2012/01/04(水) 13:38:19.83
9.4 seconds
0478名無しさん@お腹いっぱい。2012/01/04(水) 13:46:51.94
yasnippet を入れないと 1秒台、入れないと3秒台
0479名無しさん@お腹いっぱい。2012/01/04(水) 13:53:28.13
15.1 seconds だ。
Emacs 起動と同時に Gnus も起動してるともっとかかる、多分 1 分ぐらい。
0480名無しさん@お腹いっぱい。2012/01/04(水) 14:12:44.28
15秒っていったいどんだけのファイルロードしてるんだ・・・
0481名無しさん@お腹いっぱい。2012/01/04(水) 14:55:50.16
12.3 secondsだった
結構かかっているな
0482名無しさん@お腹いっぱい。2012/01/04(水) 14:59:19.82
みなさんキーボードはハッピーハッキングキーボードなのでしょうか
ハッピーハッキングキーボードだとCGソフトのBlenderがうまく使えないので
乗り換えるべきか迷うのですが
ハッピーハッキングキーボードのメリットってなんでしょう?
0483名無しさん@お腹いっぱい。2012/01/04(水) 15:04:58.86
そんなこと悩む時点でメリットなんて特にない。
あれは呪いにかかった人が仕方なく使うアイテム。
0484名無しさん@お腹いっぱい。2012/01/04(水) 15:27:43.87
ぶっちゃけ中二病アイテムでしかないよな
ワナビ御用達って感じ
0485名無しさん@お腹いっぱい。2012/01/04(水) 15:58:04.74
20.5秒だった
04864792012/01/04(水) 16:12:44.06
>>480
もしかして、自分はここの人たちと比べても変態なのか……!?

PC のスペックが Intel(R) Atom(TM) CPU N455 @ 1.66GHz
と低いことに原因があるのかな。
0487名無しさん@お腹いっぱい。2012/01/04(水) 16:25:04.74
Atomだから遅いのかもね。
あとうちでは一回目と二回目で起動時間の差が生じたな。
初回は7秒ぐらいだったのが2回目は1秒ぐらいになってた。
ディスクキャッシュとかフォントとかそこら辺のせいっぽいなあ。
0488名無しさん@お腹いっぱい。2012/01/04(水) 19:16:11.14
imenuとかこんなに便利なもの全然しらなかったよ
menubar関係かと思ってスルーしてた

るびきちの本はニワカだったら買って損ないわ
知ったかして敬遠してて損した
0489名無しさん@お腹いっぱい。2012/01/04(水) 19:32:28.19
ステマか
0490名無しさん@お腹いっぱい。2012/01/04(水) 19:42:10.48
あからさマ
0491名無しさん@お腹いっぱい。2012/01/04(水) 19:55:25.37
とうとうこんな僻地のEmacsスレにまでステマの波が・・・
0492名無しさん@お腹いっぱい。2012/01/04(水) 20:25:01.45
放置しておくべきなんだろうけど。
あいつよっぽど生活苦しいんだろうな。
0493名無しさん@お腹いっぱい。2012/01/04(水) 20:35:53.09
買い支えてやれよ。

どうせならLisp極めてそれ系の本出したほうがかっこいいのにね。
0494名無しさん@お腹いっぱい。2012/01/04(水) 20:50:22.94
なんでelispに拘り続けるのかわからんよね。
elispをバネに他の言語にも拡げればいいのに。
rubyに挫折して大した能力がないと自覚しちゃったのかな?
だとしたら、気の毒で憐れなやつだよな。
0495名無しさん@お腹いっぱい。2012/01/04(水) 20:51:17.33
Emacs Lispテクニックバイブル正誤 - (rubikitch loves (Emacs Ruby CUI Books))
http://d.hatena.ne.jp/rubikitch/20120104/elispbookerrata
0496名無しさん@お腹いっぱい。2012/01/04(水) 21:16:02.43
>>495
>完全メールサポートつきで初月無料
>でなので安心して誤登録ください。
errata で誤字とか lisp 的でいいな。
0497名無しさん@お腹いっぱい。2012/01/04(水) 21:18:40.48
誤って登録しても初月無料ですから安心してっていいたかったんじゃない?
0498名無しさん@お腹いっぱい。2012/01/04(水) 21:28:39.22
なるほど
0499名無しさん@お腹いっぱい。2012/01/04(水) 21:54:57.85
>>494
るびきちより有能な奴10000人が書き込むこのスレって天才たちの社交場だな
0500名無しさん@お腹いっぱい。2012/01/05(木) 05:00:09.62
>>499
ああ、こういうのを負け犬の遠吠えっていうんだな。
0501名無しさん@お腹いっぱい。2012/01/05(木) 10:55:29.78
emacs24はクロージャ正式にサポートかよ
0502名無しさん@お腹いっぱい。2012/01/05(木) 11:57:07.33
今年こそは真面目に脱Emacsをはかるぜ
リハビリにしばらくWindowsのメモ帳だけで生活してやる
0503名無しさん@お腹いっぱい。2012/01/05(木) 12:11:07.06
おもむろに elisp 紹介
・Ace jump mode - emacs 用 hit-a-hint 風カーソル移動
https://github.com/winterTTr/ace-jump-mode/

(require 'ace-jump-mode)
(global-set-key (kbd "C-;") 'ace-jump-mode)

ってやって C-; a とか押すと画面上の a のところにアルファベットの連番が振られて
押せばジャンプできる。
0504名無しさん@お腹いっぱい。2012/01/05(木) 12:17:38.59
isearchでよくね?
0505名無しさん@お腹いっぱい。2012/01/05(木) 12:21:35.58
バッファ開きまくってる人がこれで統計とると面白そうだ

(defun buffer-mode-histogram ()
"Display a histogram of emacs buffer modes."
(interactive)
(let* ((totals '())
(buffers (buffer-list()))
(total-buffers (length buffers))
(ht (make-hash-table :test 'equal)))
(save-excursion
(dolist (buffer buffers)
(set-buffer buffer)
(let
((mode-name (symbol-name major-mode)))
(puthash mode-name (1+ (gethash mode-name ht 0)) ht))))
(maphash (lambda (key value)
(setq totals (cons (list key value) totals)))
ht)
(setq totals (sort totals (lambda (x y) (> (cadr x) (cadr y)))))
(with-output-to-temp-buffer "Buffer mode histogram"
(princ (format "%d buffers open, in %d distinct modes\n\n"
total-buffers (length totals)))
(dolist (item totals)
(let
((key (car item))
(count (cadr item)))
(if (equal (substring key -5) "-mode")
(setq key (substring key 0 -5)))
(princ (format "%2d %20s %s\n" count key
(make-string count ?+))))))))
0506名無しさん@お腹いっぱい。2012/01/05(木) 12:44:35.74
emacs ユーザ分布
http://maps.google.com/maps/ms?msid=206578397069667369090.0004b0f0502b612864fbe&msa=0&ll=19.642588,23.554688&spn=103.499573,345.585938

日本人いねーぞこら
0507名無しさん@お腹いっぱい。2012/01/05(木) 12:55:44.01
>>501
そもそもいつ正式リリースなの?
0508名無しさん@お腹いっぱい。2012/01/05(木) 13:03:05.07
emacs を heroku で動かす。マジキチ
https://github.com/technomancy/heroku-buildpack-emacs
0509名無しさん@お腹いっぱい。2012/01/05(木) 13:10:03.26
>>502
頑張れ
ちゃんとそれを周りの人間にも広めるんだぞ
0510名無しさん@お腹いっぱい。2012/01/05(木) 20:27:35.45
>>502
copy con ファイル名

でおk
0511名無しさん@お腹いっぱい。2012/01/05(木) 20:31:29.98
じゃあ俺は type con > ファイル名ちゃん!
0512名無しさん@お腹いっぱい。2012/01/05(木) 20:48:11.81
半角空白と全角空白とタブに色をつけて区別したいのですが
どうすればよいのでしょうか
0513名無しさん@お腹いっぱい。2012/01/05(木) 21:02:06.09
>>512
whitespace-mode

標準だと全角には対応していないと思うので、
適当に whitespace-space-regexp などを変更する。
0514名無しさん@お腹いっぱい。2012/01/05(木) 21:10:29.22
find-dired の結果が綺麗に縦並びにならないのは仕様と思って諦めるしかないんでしょうか。
0515名無しさん@お腹いっぱい。2012/01/05(木) 21:22:02.03
>>499, >>500
痛いところ突いちゃってごめん。反省してます。
人を傷付けると自分も傷つきますね。
0516名無しさん@お腹いっぱい。2012/01/05(木) 21:34:42.64
はやく答えろよるびきち以下の低能ども
0517名無しさん@お腹いっぱい。2012/01/05(木) 21:41:08.82
世界最高のエディタで世界最先端の研究を行い
IT業界すなわち世界経済を支える
るびきちに逆らえるのは各国首脳クラスから。
2ちゃんねらーは常に「るびきち様」と呼ばなければいけない。
05185142012/01/05(木) 21:50:47.17
find-dired の日付フォーマットは変更出来るのでしょうか?
find-ls-option の ls 部分に '--time-style=+%Y/%M/%D' とかつけたところ
出力の日付は望みどおりになったのですが、その代わり dired が正しくファイルを認識して
くれなくなってしまいました。
0519名無しさん@お腹いっぱい。2012/01/05(木) 21:54:29.66
>>514
diredなんて窓から投げ捨てるのが正しいと思う。
あんな表示すら満足に変えられない前世紀の遺物を使うやつの気がしれん。
0520名無しさん@お腹いっぱい。2012/01/05(木) 22:19:14.76
投げ捨てられないやつがemacs使ってるんだよ。
ただ、ゴミはあってもゴミじゃない。
0521名無しさん@お腹いっぱい。2012/01/05(木) 23:38:44.28
RMSが離れたとたんリリースサイクルが速くなったような気がする
0522名無しさん@お腹いっぱい。2012/01/05(木) 23:50:17.07
もうrmsも老害か。lose32ってやってるの見ててなんか色々思っちゃった。
0523名無しさん@お腹いっぱい。2012/01/05(木) 23:51:11.63
>>519
少しカスタマイズしたdiredですこぶる快適に使えているが。
とりあえず何が不満なのか言ってみ。
0524名無しさん@お腹いっぱい。2012/01/06(金) 00:24:49.33
レジスタ使いこなしてる人ってどんだけいるんだろう
0525名無しさん@お腹いっぱい。2012/01/06(金) 00:34:22.55
bf-mode と popwin の相性が今ひとつで悲しい
0526名無しさん@お腹いっぱい。2012/01/06(金) 10:30:11.51
>>513
ありがとうございます。
できました。
0527名無しさん@お腹いっぱい。2012/01/06(金) 12:36:51.01
find-grep-dired でも lv 付属の lgrep を使いたいんですがうまく動作できません。
うまく動かせている方はいらっしゃりますでしょうか?

find-grep-dired のソースを見てみると、lgrep が対応していないオプション -e がハードコーディングされていたので
defadvice で書き換えたのですが、こんどは lgrep に出力無しにするオプションがないため
dired 側がまともに動かなくなりました。
0528名無しさん@お腹いっぱい。2012/01/06(金) 13:15:53.03
過去ログ眺めてるとるびきちがいかに愛されているかよくわかっていいな。
0529名無しさん@お腹いっぱい。2012/01/06(金) 13:20:10.22
* このスレでのコミュニケーションを前スレ以上に活発にすること (用がなくとも、毎日の書き込みが理想)
* 部外者/非Emacsユーザーの書き込みも可。但し、女性の書き込みは場の雰囲気を乱すので不可
0530名無しさん@お腹いっぱい。2012/01/06(金) 13:26:07.82
>>527
find-grep-dired で lgrep を使うメリットは何?
0531名無しさん@お腹いっぱい。2012/01/06(金) 13:26:47.90
auto-complete.elで候補選択にカーソルキーではなくてC-nとC-pを使うようにするには
どうすればよいですか
候補選択時だけカーソルキーまで手を伸ばすのに違和感がありますので
0532名無しさん@お腹いっぱい。2012/01/06(金) 13:32:39.48
>>530
日本語で検索したかったので。
色んなエンコードのファイルが散らばっているのです。
0533名無しさん@お腹いっぱい。2012/01/06(金) 13:32:56.08
(setq ac-use-menu-map t)
05345302012/01/06(金) 13:33:41.70
>>532
わり、勘違いした。
05355312012/01/06(金) 13:49:57.19
>>533
探していたのはまさにそれです
ありがとうございます。
0536名無しさん@お腹いっぱい。2012/01/06(金) 13:53:42.91
最近カキコが多いな、なんで?
0537名無しさん@お腹いっぱい。2012/01/06(金) 13:55:35.12
メルマガから人ながれてきてるんだろ
0538名無しさん@お腹いっぱい。2012/01/06(金) 13:59:10.09
例のメルマガか
0539名無しさん@お腹いっぱい。2012/01/06(金) 14:06:22.37
(read-string)で入力を要求しバッファ内の文字列とヒットするなら再度入力を求め、
ヒットしないならコマンドを呼び出した位置に入力した文字列を装飾して挿入したいです
(interactive)
(let ((str (read-string "input: ")))
(save-excursion
(while (search-forward str nil t) ; バッファ内の文字列とヒットしてしまった
;; ここで(read-string)を再度呼び出したい
))
;; save-excursionを抜けてからstrを使って挿入する
(insert (format "%s" (make-my-decoration str))))
このような処理を考えたのですが
(read-string)を二度書かない方法はあるでしょうか
0540名無しさん@お腹いっぱい。2012/01/06(金) 14:07:36.00
すみません一行分抜けていました
(save-excursion

(save-excursion
(goto-char (point-min))
です
0541名無しさん@お腹いっぱい。2012/01/06(金) 14:09:26.25
2度書かないって、再度入力する必要があるなら2度呼ばなきゃいけないんじゃ・・
それとも再帰的に処理したいってことか?
0542名無しさん@お腹いっぱい。2012/01/06(金) 14:29:08.57
(defun somefunc ()
(interactive)
(let ((buf (save-excursion
(save-restriction
(widen)
(buffer-substring-no-properties (point-min) (point-max)))))
str)

(save-match-data
(while (and (setq str (read-string "input:"))
(string-match (regexp-quote str) buf))))

(insert (format "%s" (make-my-decoration str)))
))
0543名無しさん@お腹いっぱい。2012/01/06(金) 14:38:52.45
>>542
widen するかどうかは処理内容によるんじゃないのか?あとバッファ全コピはやりすぎだ

(defun somefunc ()
(interactive)
(let (str)
(save-match-data
(while (and (setq str (read-string "input:"))
(save-excursion
(goto-char (point-min))
(search-forward str nil t))))

(insert (format "%s" (なんか str)))
)))
0544名無しさん@お腹いっぱい。2012/01/06(金) 14:54:56.86
最近elispはじめました!なコード貼る奴増えたな。
0545名無しさん@お腹いっぱい。2012/01/06(金) 14:56:12.28
elispを編集しているとcomment-dwimの便利さに驚きます
そこでdefine-generim-modeで作ったモードにも同様の機能を盛り込みたいのですが
どうすればよいのですか
elispのコメントの仕様と同じものを希望します
具体的には、文字列が入力されている行なら行末に;1つ
(私の環境ではelispでは行末から20文字くらい右につきます)
リージョンが設定されているか
行に何も書いていなければ行頭に;2つ
よろしくお願いします
0546名無しさん@お腹いっぱい。2012/01/06(金) 14:59:19.24
>>544
いいことだな。
0547名無しさん@お腹いっぱい。2012/01/06(金) 15:01:11.90
おいおいゴミかきこが増えたな
るびきちのせいでこのスレのレベルが低下するのは勘弁だぜ
0548名無しさん@お腹いっぱい。2012/01/06(金) 15:01:27.84
>>545
外してたらすまんが、define-generic-mode の引数で正しくコメントの書式設定してたら
commend-dwim で普通にその動作にならない?
0549名無しさん@お腹いっぱい。2012/01/06(金) 15:02:47.50
2chなんぞよりredditがよっぽど有意義な盛り上がりを見せてるぞ。
http://www.reddit.com/r/emacs
0550名無しさん@お腹いっぱい。2012/01/06(金) 15:14:40.55
             ,.,.,.,.,.,.,.,.,__
           ,,;f::::::::::::::::::::::ヽ
           i::/' ̄ ̄ ̄ヾi::l
           |::| /  \,|::|
           |r-( ・ );( ・ )-|
           ( ヽ :::(__)..::  }  <・・・で?
        ,____/ヽ  -==- /
     r'"ヽ   t、  ヽ___/
    / 、、i    ヽ__,,/
    / ヽノ  j ,   j |ヽ
    |⌒`'、__ / /   /r  |
    {     ̄''ー-、,,_,ヘ^ |
    ゝ-,,,_____)--、j
    /  \__       /
0551名無しさん@お腹いっぱい。2012/01/06(金) 15:40:58.79
>>539
別解っぽいものを書いてみた。
call-interactively は使わないほうが行儀が良いような気がする。

>>544
変だったら指摘してくれると大助かり。

(defun somefunc (str)
  (interactive "sinput: ")
  (if (save-excursion
  (goto-char (point-min))
  (save-match-data
  (search-forward str nil 'noerror)))
  (call-interactively 'somefunc)
  (insert str)))

ただし call-interactively は使わないほうが行儀が良い気がする。
0552名無しさん@お腹いっぱい。2012/01/06(金) 17:21:25.66
Emacs 用バイブコントローラ
http://www.youtube.com/watch?feature=player_detailpage&v=D1sXuHnf_lo#t=78s
0553名無しさん@お腹いっぱい。2012/01/06(金) 17:31:06.54
sdic が独自のポップアップ表示してるせいで popwin 管理下に置けなくてストレスMAX
■ このスレッドは過去ログ倉庫に格納されています