Emacs Part 32
■ このスレッドは過去ログ倉庫に格納されています
0001名無しさん@お腹いっぱい。
2009/10/24(土) 04:05:36スレッドルールは以下の通り:
* 初心者にやさしく接すること
* Emacsユーザーとの仲間意識をしっかり持って、馴れ合いを怠らないこと
* このスレでのコミュニケーションを前スレ以上に活発にすること (用がなくとも、毎日の書き込みが理想)
* 部外者/非Emacsユーザーの書き込みも可。但し、女性の書き込みは場の雰囲気を乱すので不可
* 自分で書いた便利なコード/アイディアは他人とシェアしようと試みること
GNU Emacs - Free Software Foundation (FSF) http://www.gnu.org/software/emacs/
EmacsWiki http://www.emacswiki.org/
Emacs 電子書棚 http://www.bookshelf.jp/
Emacs CVS Repositories [Savannah] http://savannah.gnu.org/cvs/?group=emacs
Emacs Lisp List http://www.damtp.cam.ac.uk/user/sje30/emacs/ell-date.html
ダウンロード http://ftp.gnu.org/pub/gnu/emacs/
Windows用 NTEmacs の最新ダウンロード https://sourceforge.jp/projects/ntemacsjp/files/
CVS先端: cvs -z3 -d:pserver:anonymous@cvs.savannah.gnu.org:/sources/emacs co emacs
Git: git clone git://git.savannah.gnu.org/emacs.git emacs
_/l__
/ く
| ´ω` | ぐにゅう emacs
| C='|
前スレ http://pc12.2ch.net/test/read.cgi/unix/1251665639/
Emacs は世界を救う!
0607名無しさん@お腹いっぱい。
2009/12/07(月) 20:14:260608名無しさん@お腹いっぱい。
2009/12/07(月) 20:38:190609Zeno ◆5nZQbNmQPs
2009/12/07(月) 20:43:40>>606
「おっぱいを」見せろ
0610名無しさん@お腹いっぱい。
2009/12/07(月) 21:54:250611名無しさん@お腹いっぱい。
2009/12/07(月) 23:44:05うるせーはげ
0612名無しさん@お腹いっぱい。
2009/12/07(月) 23:57:48> 14歳のおっぱい
ttp://www.kyoto-np.co.jp/static/2009/09/27/P2009092700056.jpg
ttp://www.kyoto-np.co.jp/article.php?mid=P2009092700056&genre=K1&area=K00
0613名無しさん@お腹いっぱい。
2009/12/08(火) 00:20:360614名無しさん@お腹いっぱい。
2009/12/08(火) 14:33:00現在Emacsにて、特定の処理をしています。
処理は、
replace-regexp
などを何度か行う処理なのですが、処理対象が100ファイル程度あります。
現在は手作業で1ファイルづつ行っているのですが、これを一括で行う方法などありませんでしょうか?
全てのファイルに対して行う処理は同じになります。
0615名無しさん@お腹いっぱい。
2009/12/08(火) 14:42:250616名無しさん@お腹いっぱい。
2009/12/08(火) 14:53:34elisp書けばいいとは思うけど
そういうのはelispもともと知っててemacsの中で完結してなきゃいやんな人向けだ
0617名無しさん@お腹いっぱい。
2009/12/08(火) 15:34:320618名無しさん@お腹いっぱい。
2009/12/08(火) 15:52:26こんな感じでどうだ? 動作未確認だけど
(mapc
(lambda (x)
(find-file x)
(goto-char (point-min))
(replace-regexp regexp to-string)
(save-buffer)
(kill-buffer (current-buffer)))
'("~/file_1"
"~/file_2"
"~/file_n"))
0619名無しさん@お腹いっぱい。
2009/12/08(火) 16:19:28「動作未確認だけど」とか語尾につけるやつに限って
まともに動くもんださないんだよなあ…
0620名無しさん@お腹いっぱい。
2009/12/08(火) 16:20:240621名無しさん@お腹いっぱい。
2009/12/08(火) 16:30:32所詮、みんな、通りすがりだぞ www
0622名無しさん@お腹いっぱい。
2009/12/08(火) 16:35:200623名無しさん@お腹いっぱい。
2009/12/08(火) 16:37:570624名無しさん@お腹いっぱい。
2009/12/08(火) 17:18:36どこまでひねくれてんだお前
0625名無しさん@お腹いっぱい。
2009/12/08(火) 17:36:110626614
2009/12/08(火) 18:36:27私が「など」と言ってまとめてしまったので、荒れさせてしまったようですね。
処理の中には置き換えのほかにも、indent-region等を行っているのでEmacsの機能を使っています。
現在、作業自体はすべて手作業で終えたのですが、今後の為にも何かあれば教えていただければと思います。
完全に提携の作業なので、現在はキーマクロを使ってできないかと思い調べています。
0627名無しさん@お腹いっぱい。
2009/12/08(火) 18:42:52elispを勉強すればemacs上で出来ることはなんでも自動化出来ると思うよ。
キーマクロでも全然問題ないけど。
0628名無しさん@お腹いっぱい。
2009/12/08(火) 18:51:170629名無しさん@お腹いっぱい。
2009/12/08(火) 19:28:110630名無しさん@お腹いっぱい。
2009/12/08(火) 19:28:47sedかelispのどっちを使うのを決めればいい。
ファイルの前後を移動して編集するような操作の自動化は、
たとえ複数ファイルでもよくelispで書くよ。
私が使うのは、with-temp-files と、insert-file-contentsの組み合わせ。
たとえば、
(let ((files (file-expand-wildcards "~/hogehoge/*.txt")))
(dolist (file files)
(with-temp-file file
(insert-file-contents file)
いろいろな処理
)))
という感じかな。
あと insert-file-contentsを使う場合は、文字コードとかの自動判別に
気をつけてね。。。
0631名無しさん@お腹いっぱい。
2009/12/08(火) 20:01:51(defmacro with-file (filename &rest body)
(let ((buf (gensym "--buf--")) (fn (gensym "--fn--")))
`(let ((,fn ,filename))
(let ((,buf (get-file-buffer ,fn)) need-close)
(unless ,buf
(setq ,buf (find-file ,fn) need-close t))
(when ,buf
(unwind-protect (progn ,@body)
(when need-close
(kill-buffer ,buf))))))))
(put 'with-file lisp-indent-function 1)
(defmacro edit-files (files &rest body)
(let ((f (gensym "--f--")))
`(mapc (lambda (,f) (with-file ,f ,@body (save-buffer))) ,files)))
(put 'edit-files lisp-indent-function 1)
(edit-files '("~/file1" "~/file2" "~/file3")
(upcase-region (point-min) (point-max)))
0632名無しさん@お腹いっぱい。
2009/12/08(火) 20:18:32良いね。
with-file は with-temp-file でよくない?
0633名無しさん@お腹いっぱい。
2009/12/08(火) 20:37:500634名無しさん@お腹いっぱい。
2009/12/08(火) 20:38:56moccur-color と moccur-edit を使ってみたら?
M-x moccur-grep-find で修正箇所を洗い出して、moccur-edit と replace-regexp で一括置換。
0635名無しさん@お腹いっぱい。
2009/12/08(火) 20:39:060636名無しさん@お腹いっぱい。
2009/12/08(火) 20:39:11じゃあちょっと目的が違いますね。
0637名無しさん@お腹いっぱい。
2009/12/08(火) 20:41:50ということでwith-temp-bufferじゃダメですね。
0638名無しさん@お腹いっぱい。
2009/12/08(火) 20:42:38その用途だと、emacsユーザーの間で>>630のフレーズが
流行っているように思われる。なに使ってもいいと思うけど。
;; ファイルの中身を修正してセーブ
(with-temp-file filename
(insert-file-contents filename)
... )
0639名無しさん@お腹いっぱい。
2009/12/08(火) 21:17:120640名無しさん@お腹いっぱい。
2009/12/08(火) 21:23:540641名無しさん@お腹いっぱい。
2009/12/08(火) 21:35:08>>639
0642618
2009/12/08(火) 22:08:32荒れてしまったのは >>619 のコメントが理由だよw
ちょっと気になったのだが、差し支えなければ、>>614 がその作業をしてる目的
などを教えてくれ。たとえば、どんなファイルをいじっているのか、とか。
>>631
macro とか、熟練者であれば理解できるだろうが、察するに >>614 には難しそ
うだな。理解できれば、非常に参考になるだろうが。
恐らく >>614 にとっては >>618 の内容についても難しいのだろう。
(もしそうでなかったら、>>614 にはその非礼をお詫びする)
>>634
moccur-color とか、どの library にあるんだろうか?
0643名無しさん@お腹いっぱい。
2009/12/08(火) 22:54:18color-moccur だった。
color-moccur
http://www.bookshelf.jp/soft/meadow_50.html#SEC743
moccur-edit
http://www.bookshelf.jp/soft/meadow_50.html#SEC766
0644名無しさん@お腹いっぱい。
2009/12/08(火) 23:11:29wanderlustでpop3 over SSL受信しようと~/.foldersを以下のように設定しました。
&hoge@hotmail.com/user@pop3.live.com:995!
ところが、user部分に"@"が含まれているため、どうもpop3ホストと接続出来ません。
何かいい方法はありませんでしょうか。
0645618
2009/12/08(火) 23:59:57ざっと見、標準の multi-occur や multi-occur-in-matching-buffers に似てる
感じだな。ありがとう。
0646名無しさん@お腹いっぱい。
2009/12/09(水) 10:37:45&"hoge@hotmail.com"@pop3.live.com:995!
でどうよ。
デフォルトが /user なので書かなくていい。書いてもいいけど。
0647Zeno ◆5nZQbNmQPs
2009/12/09(水) 12:45:05Emacs pretest 23.1.90 が先程リリースされた。
君達も試してみなさい。
Emacs pretest 23.1.90 is now available for download via FTP, at the
following location:
ftp://alpha.gnu.org/gnu/emacs/pretest/emacs-23.1.90.tar.gz
The xdelta against Emacs 23.1 is here:
ftp://alpha.gnu.org/gnu/emacs/pretest/emacs-23.1-23.1.90.xdelta
This is the first pretest for what will be the Emacs 23.2 release.
0648名無しさん@お腹いっぱい。
2009/12/09(水) 13:23:25(add-hook 'xxx-mode-hook (lambda () ...))
として無名関数をhookに加えたものをあとからremove-hookしたいとき
3番目の引数には何を与えたらいいですか?
0649Zeno ◆5nZQbNmQPs
2009/12/09(水) 13:43:23>>648
そもそも、後からその関数に参照したいのに、何故無名にするのだ?
関数名が何故存在するかを考えてみろ。
0650585
2009/12/09(水) 15:16:49reverse solidus の前では (ascii) Char: \ (92, #o134, #x5c) point=1 of 4 (0%) column=0
yen sign の前では (latin-iso8859-1) Char: ▼ (2213, #o4245, #x8a5, file ...) point=4 of 4 (75%) column=0
となりました。
yen sign は iso8859-1 の 0xA5 にもあって unicode ではその場所に割り当てられたんですね。納得しました。
$ xbindkeys --key
(yen sign キーを叩く)
"(Scheme function)"
m:0x0 + c:132
yen
$ xbindkeys --key
(reverse solidus キーを叩く)
"(Scheme function)"
m:0x0 + c:97
backslash
確かにキーボードが送る文字コードは異なるようです。
レス遅くなってすみません。
0651585
2009/12/09(水) 15:17:55ファイル保存時に yen sign が reverse solidus に変換されていました。
これは便利です。ありがとうございます。
>>591
> ちなみに昔のEmacsでは、キーボードからyen signを受け取っても、
> reverse solidusに変換していた。
なるほど。だから sarge の頃にキーボードの yen sign を叩いても reverse solidus が
表示されたんですね。モヤモヤがとれました。
0652名無しさん@お腹いっぱい。
2009/12/09(水) 19:59:44何かいい方法ありませんか?
0653Zeno ◆5nZQbNmQPs
2009/12/09(水) 20:02:03>>652
twit.el を使え。 https にも対応しているのはこれだけだ。
初期設定の face は汚いが、自分でカスタマイズすれば常用できるレベルだ。
0654名無しさん@お腹いっぱい。
2009/12/09(水) 20:25:45日本人が作ってるよ!githubでガンガン改良されてるし。
0655名無しさん@お腹いっぱい。
2009/12/09(水) 21:06:28ありがとうございます。当方、Meadow3 + Cygwin-1.5 + wl-2.15.7で、
gmailとYahooはSSL接続で使えていますが、何故かhotmailだけは、
Getting header...
で止ってしまいます。認証はうまくいっているのですが。hotmail側の問題でしょうか。
0656名無しさん@お腹いっぱい。
2009/12/09(水) 21:19:5830過ぎのオッサンでも受け入れてもらえる?
0657Zeno ◆5nZQbNmQPs
2009/12/09(水) 21:33:13>>656
受け入れられるも何も、twitter はそもそも馴れ合いの場ではないし、
それには全く適していない。
あくまでもニュースやブログなどのアップデートをトラックできるある種の
フィードリーダーとして使用するのが twitter の正しい使い方だ。
極力 read-only 状態を保てば短命では終わらないだろう。
逆に、下らん "つぶやき" など続けて投稿してしまった場合、
フォロワーが増え、次第に投稿数が減っていくことに気付くだろう。
0658名無しさん@お腹いっぱい。
2009/12/09(水) 22:34:540659名無しさん@お腹いっぱい。
2009/12/09(水) 22:54:450660名無しさん@お腹いっぱい。
2009/12/09(水) 23:08:56grep-edit で編集した後、バッファがハイライトし続けるのを解除させたいのですが、ご存知でしょうか?
0661名無しさん@お腹いっぱい。
2009/12/09(水) 23:31:38つぶやきならいつもこのスレとかに書いてるし。
0662名無しさん@お腹いっぱい。
2009/12/10(木) 00:05:50自分の場合、twitterで知り合ってオフで会った人が20人以上はいる
0663名無しさん@お腹いっぱい。
2009/12/10(木) 00:09:330664名無しさん@お腹いっぱい。
2009/12/10(木) 00:10:050665名無しさん@お腹いっぱい。
2009/12/10(木) 07:44:220666名無しさん@お腹いっぱい。
2009/12/10(木) 09:28:50twitterはリア充の道具だから俺らには関係ない
0667名無しさん@お腹いっぱい。
2009/12/10(木) 18:07:580668名無しさん@お腹いっぱい。
2009/12/10(木) 18:10:280669名無しさん@お腹いっぱい。
2009/12/10(木) 18:26:36Emacsの専用モードをクライアントとして分散モデルとかなら求心力あるな。
0670名無しさん@お腹いっぱい。
2009/12/10(木) 20:50:110671名無しさん@お腹いっぱい。
2009/12/10(木) 20:53:530672名無しさん@お腹いっぱい。
2009/12/10(木) 21:08:19VC, Eclipse とかにも流れてそう。キーバインドだけ Emacs 風に、とか。
0673名無しさん@お腹いっぱい。
2009/12/10(木) 21:08:24俺だけ頑なにemacs使ってるけど。
0674名無しさん@お腹いっぱい。
2009/12/10(木) 21:12:57外人はプロジェクトごとにエディタも変えるのが普通だし。
0675名無しさん@お腹いっぱい。
2009/12/10(木) 21:31:12たしかに微妙に増えたなーとは思う。
VCはしかたないよ。あれはインテリセンス込みでの言語だから。
0676名無しさん@お腹いっぱい。
2009/12/10(木) 22:04:04iimage-modeで、環境変数で設定したパスを認識させるには、どのようにすればいいでしょうか?
例えば、以下ような感じです。
[[${HOME2}/docs/images/hoge/png]]
宜しくお願い致します。
0677名無しさん@お腹いっぱい。
2009/12/10(木) 22:10:44getenv
0678676
2009/12/10(木) 22:40:03[[(concat (getenv "HOME2") "/docs/images/hoge.png")]]
とかやってみましたが、うまくいきませんでした orz.
0679676
2009/12/10(木) 22:41:05[[(concat (getenv "HOME2") "/docs/images/hoge.png")]]
とかやってみましたが、うまくいきませんでした orz.
0680名無しさん@お腹いっぱい。
2009/12/10(木) 23:34:35> いつと比べてだよ
「翻訳を支援するelispのプログラムありませんか?」と呼びかけると、
主要な理工系大学から*.elが10個くらい集まってきたころと比べて。
0681名無しさん@お腹いっぱい。
2009/12/10(木) 23:58:07大学卒業しちゃうと elisp 書いてる暇なくなってくるのかもね。
0682名無しさん@お腹いっぱい。
2009/12/11(金) 00:21:530683名無しさん@お腹いっぱい。
2009/12/11(金) 01:30:56理工系出て新卒で入った子は誰もemacs使ってないんだけど。
0684名無しさん@お腹いっぱい。
2009/12/11(金) 02:31:18Emacs使う人が減ってるのもしょうがない。
ただ、Emacsも地味に進化してるし開発が停滞しない限りは
今の人気でも全然いいけどね。
0685名無しさん@お腹いっぱい。
2009/12/11(金) 08:45:01何か進化したなーという機能ってなに?
0686名無しさん@お腹いっぱい。
2009/12/11(金) 08:45:18うん、だから使ってた人が一杯いたころの層が卒業しちゃってから地味に停滞したというか。
今でも一定の人は使ってると思うけど。
0687名無しさん@お腹いっぱい。
2009/12/11(金) 09:31:31> 大学って今でもemacs優勢なの?
> 理工系出て新卒で入った子は誰もemacs使ってないんだけど。
Windows95が出たあたりからemacsを使わなきゃならない理由がなくなったから、
相関関係はないでしょ。
最近の東京と銘打ったemacs勉強会が、むかし学内で毎月やってたemacs勉強会より
レベルが低いんだぜ。
ていうか、数年前にWeb関係の連中がemacsを再発見してから(おまいら抜きで)再勃興
している最中だと捉えるのが正しいのかもしれんね。
0688名無しさん@お腹いっぱい。
2009/12/11(金) 09:47:48>している最中だと捉えるのが正しいのかもしれんね。
あーそうかもねえ
0689名無しさん@お腹いっぱい。
2009/12/11(金) 13:31:14非Windowsでも動く包括的なプログラミング環境としてEmacsを知る機会も増えたから
ユーザーの絶対数は変わってない気がする。
ほんとうは増えてるべきなんだけどね。選択肢が増えたぶん流出してるのは確か。
0690名無しさん@お腹いっぱい。
2009/12/11(金) 14:25:35Emacsとvimしかないじゃん。
知らない人に無理に進める気はないけどさ。
0691名無しさん@お腹いっぱい。
2009/12/11(金) 15:19:53elisp書くならeclipseのプラグイン作った方が面白いもの作れるし
eclipseのリファクタなんかはelispじゃどう頑張っても無理
0692名無しさん@お腹いっぱい。
2009/12/11(金) 15:22:20それがお前の主観以上のものだって証拠は?
お前の意見なんてどうでもいいんだよ
0693名無しさん@お腹いっぱい。
2009/12/11(金) 15:36:43eclipse に負けている部分があるのは同意
0694名無しさん@お腹いっぱい。
2009/12/11(金) 15:52:410695名無しさん@お腹いっぱい。
2009/12/11(金) 16:07:200696名無しさん@お腹いっぱい。
2009/12/11(金) 16:09:37主観だけど。
0697名無しさん@お腹いっぱい。
2009/12/11(金) 16:14:160698名無しさん@お腹いっぱい。
2009/12/11(金) 16:14:290699名無しさん@お腹いっぱい。
2009/12/11(金) 16:52:370700名無しさん@お腹いっぱい。
2009/12/11(金) 17:00:540701名無しさん@お腹いっぱい。
2009/12/11(金) 17:34:26lisp 好きな人からすると。
>>700 は elisp が好きなの?それとも emacs 上で使ってたプログラムが流用出来たら
嬉しいって考えなの?
0702名無しさん@お腹いっぱい。
2009/12/11(金) 17:43:51> つーかさ、何度か話題にあがってるけど elisp 自体はあんまり受けよくないんだよね。
> lisp 好きな人からすると。
Lispもどきだもん
0703名無しさん@お腹いっぱい。
2009/12/11(金) 17:51:190704名無しさん@お腹いっぱい。
2009/12/11(金) 17:55:28後者。
今使っているいろいろな elisp が Eclipse 上で動けばいいだけ。
0705名無しさん@お腹いっぱい。
2009/12/11(金) 18:05:550706名無しさん@お腹いっぱい。
2009/12/11(金) 18:07:39■ このスレッドは過去ログ倉庫に格納されています