のくす牧場
コンテンツ
牧場内検索
カウンタ
総計:127,541,524人
昨日:no data人
今日:
最近の注目
人気の最安値情報

私的良スレ書庫

不明な単語は2ch用語を / 要望・削除依頼は掲示板へ。不適切な画像報告もこちらへどうぞ。 / 管理情報はtwitter
ログインするとレス評価できます。 登録ユーザには一部の画像が表示されますので、問題のある画像や記述を含むレスに「禁」ボタンを押してください。

元スレEmacs Part 32

emacs スレッド一覧へ / emacs とは? / 携帯版 / dat(gz)で取得 / トップメニュー
スレッド評価: スレッド評価について
みんなの評価 :
タグ : 追加: タグについて ※前スレ・次スレは、スレ番号だけ登録。駄スレにはタグつけず、スレ評価を。荒らしタグにはタグで対抗せず、タグ減点を。
レスフィルター : (試験中)
←前へ 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 次へ→ / 要望・削除依頼は掲示板へ / 管理情報はtwitter
601 : Zeno ◆5 - 2009/12/06(日) 12:35:00 (+6,-29,-10)

>>600
懐かしいな。
久々に使用してみたが、やはり良いな。
*-draw-* は幾つか増やして欲しいものだが。

602 : 名無しさん@お腹 - 2009/12/06(日) 13:04:52 (+75,+29,-41)
一太郎とか、ワープロ専用機に多かったよねそういうの。
603 : 名無しさん@お腹 - 2009/12/06(日) 13:28:39 (+34,-3,-29)
>>602
現代ではそういうのはExcelが担当してるな・・・
604 : 名無しさん@お腹 - 2009/12/06(日) 13:40:15 (+55,+16,-15)
>>600
そうです! それです.ありがとうございます.
Tabの振舞やRETで前の行が次の行にコピーされるのが面白いですね.

これをベースにすれば色々とできそうですね.
605 : 名無しさん@お腹 - 2009/12/07(月) 15:05:54 (+52,+29,-7)
感謝の印におっぱい見せろよ
606 : 名無しさん@お腹 - 2009/12/07(月) 15:28:42 (+126,+26,+1)
わかりました
607 : 名無しさん@お腹 - 2009/12/07(月) 20:14:26 (+36,+18,+0)
よくやった
608 : 名無しさん@お腹 - 2009/12/07(月) 20:38:19 (-1,-29,+0)
(´・ω・`)おっぱい見えてないがな
609 : Zeno ◆5 - 2009/12/07(月) 20:43:40 (+100,+29,-2)

>>606
「おっぱいを」見せろ

610 : 名無しさん@お腹 - 2009/12/07(月) 21:54:25 (+106,+29,-1)
ただし14歳のおっぱいに限る
611 : 名無しさん@お腹 - 2009/12/07(月) 23:44:05 (+64,+28,+0)
>>609
うるせーはげ
612 : 名無しさん@お腹 - 2009/12/07(月) 23:57:48 (+112,+19,+4)
>>610
> 14歳のおっぱい
ttp://www.kyoto-np.co.jp/article.php?mid=P2009092700056&genre=K1&area=K00
613 : 名無しさん@お腹 - 2009/12/08(火) 00:20:36 (-11,-29,-1)
(#^ω^)・・・
614 : 名無しさん@お腹 - 2009/12/08(火) 14:33:00 (+192,-29,-45)
Emacsについて質問させてください。
現在Emacsにて、特定の処理をしています。
処理は、
replace-regexp
などを何度か行う処理なのですが、処理対象が100ファイル程度あります。
現在は手作業で1ファイルづつ行っているのですが、これを一括で行う方法などありませんでしょうか?
全てのファイルに対して行う処理は同じになります。
615 : 名無しさん@お腹 - 2009/12/08(火) 14:42:25 (-1,-29,-2)
なんかawkとかLL使ったほうがよくないのか
616 : 名無しさん@お腹 - 2009/12/08(火) 14:53:34 (+57,+29,-50)
それもそうだよな
elisp書けばいいとは思うけど
そういうのはelispもともと知っててemacsの中で完結してなきゃいやんな人向けだ
617 : 名無しさん@お腹 - 2009/12/08(火) 15:34:32 (-11,-29,+0)
sed使え
618 : 名無しさん@お腹 - 2009/12/08(火) 15:52:26 (+67,-30,-90)
>>614

こんな感じでどうだ? 動作未確認だけど

(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"))
619 : 名無しさん@お腹 - 2009/12/08(火) 16:19:28 (+163,+29,-25)
通りすがりの凄腕を気取って
「動作未確認だけど」とか語尾につけるやつに限って
まともに動くもんださないんだよなあ…
620 : 名無しさん@お腹 - 2009/12/08(火) 16:20:24 (+52,+29,-4)
別に凄腕気取ってなくね?
621 : 名無しさん@お腹 - 2009/12/08(火) 16:30:32 (+70,+29,-3)
>>619

所詮、みんな、通りすがりだぞ www
622 : 名無しさん@お腹 - 2009/12/08(火) 16:35:20 (+57,+29,-7)
「動作未確認だけど」って言わずにまともに動かないよりいいんじゃね。
623 : 名無しさん@お腹 - 2009/12/08(火) 16:37:57 (+32,+4,-14)
Zeno様に頼めば書いてくれるんじゃね?
624 : 名無しさん@お腹 - 2009/12/08(火) 17:18:36 (+74,+29,-2)
>>619
どこまでひねくれてんだお前
625 : 名無しさん@お腹 - 2009/12/08(火) 17:36:11 (+52,+29,-5)
この業界にはそういうの多いよね。
626 : 614 - 2009/12/08(火) 18:36:27 (+133,+29,-65)
すみません。
私が「など」と言ってまとめてしまったので、荒れさせてしまったようですね。
処理の中には置き換えのほかにも、indent-region等を行っているのでEmacsの機能を使っています。
現在、作業自体はすべて手作業で終えたのですが、今後の為にも何かあれば教えていただければと思います。

完全に提携の作業なので、現在はキーマクロを使ってできないかと思い調べています。
627 : 名無しさん@お腹 - 2009/12/08(火) 18:42:52 (+70,+29,-38)
>>626
elispを勉強すればemacs上で出来ることはなんでも自動化出来ると思うよ。
キーマクロでも全然問題ないけど。
628 : 名無しさん@お腹 - 2009/12/08(火) 18:51:17 (+11,-16,-1)
定型作業なら普通にsedでいいと思うけどなあ。
629 : 名無しさん@お腹 - 2009/12/08(火) 19:28:11 (+26,-1,-15)
618が答えてやってんだから試してみれば
630 : 名無しさん@お腹 - 2009/12/08(火) 19:28:47 (+9,-30,-287)
複数ファイルか否かじゃなくて、やりたい処理に適してるかどうかで
sedか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を使う場合は、文字コードとかの自動判別に
気をつけてね。。。

631 : 名無しさん@お腹 - 2009/12/08(火) 20:01:51 (+47,-30,+0)
618のを試すついでにそれっぽくしてみた。

(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)))
632 : 名無しさん@お腹 - 2009/12/08(火) 20:18:32 (-1,-29,-22)
>>631
良いね。
with-file は with-temp-file でよくない?
633 : 名無しさん@お腹 - 2009/12/08(火) 20:37:50 (+82,+25,+0)
知らんかったのです。
634 : 名無しさん@お腹 - 2009/12/08(火) 20:38:56 (+52,-30,-47)
>>614
moccur-color と moccur-edit を使ってみたら?
M-x moccur-grep-find で修正箇所を洗い出して、moccur-edit と replace-regexp で一括置換。
635 : 名無しさん@お腹 - 2009/12/08(火) 20:39:06 (+69,+29,-8)
今日は>>633がまた新しい知識を仕入れたのを見れたのでよかったです
636 : 名無しさん@お腹 - 2009/12/08(火) 20:39:11 (+4,-29,-36)
あ、with-temp-fileはファイルを読み込むわけじゃないんですね。
じゃあちょっと目的が違いますね。
637 : 名無しさん@お腹 - 2009/12/08(火) 20:41:50 (-1,-29,-32)
目的の違いはまずget-file-bufferを見ていることからも理解してもらえるかと。
ということでwith-temp-bufferじゃダメですね。
638 : 名無しさん@お腹 - 2009/12/08(火) 20:42:38 (+4,-30,-86)
>>636
その用途だと、emacsユーザーの間で>>630のフレーズが
流行っているように思われる。なに使ってもいいと思うけど。

;; ファイルの中身を修正してセーブ
(with-temp-file filename
(insert-file-contents filename)
... )
639 : 名無しさん@お腹 - 2009/12/08(火) 21:17:12 (+124,+29,-29)
ナントカの一つ覚えという言葉はご存じないようですね。
640 : 名無しさん@お腹 - 2009/12/08(火) 21:23:54 (+34,+16,-13)
ナントカ?
641 : 名無しさん@お腹 - 2009/12/08(火) 21:35:08 (+70,+30,+0)
642 : 618 - 2009/12/08(火) 22:08:32 (+87,+29,-98)
>>626
荒れてしまったのは >>619 のコメントが理由だよw

ちょっと気になったのだが、差し支えなければ、>>614 がその作業をしてる目的
などを教えてくれ。たとえば、どんなファイルをいじっているのか、とか。

>>631
macro とか、熟練者であれば理解できるだろうが、察するに >>614 には難しそ
うだな。理解できれば、非常に参考になるだろうが。
恐らく >>614 にとっては >>618 の内容についても難しいのだろう。
(もしそうでなかったら、>>614 にはその非礼をお詫びする)

>>634
moccur-color とか、どの library にあるんだろうか?
643 : 名無しさん@お腹 - 2009/12/08(火) 22:54:18 (+13,-30,-13)
644 : 名無しさん@お腹 - 2009/12/08(火) 23:11:29 (+7,-30,-82)
wanderlustスレが落ちたので、こちらで質問させてください。

wanderlustでpop3 over SSL受信しようと~/.foldersを以下のように設定しました。

&hoge@hotmail.com/user@pop3.live.com:995!

ところが、user部分に"@"が含まれているため、どうもpop3ホストと接続出来ません。
何かいい方法はありませんでしょうか。
645 : 618 - 2009/12/08(火) 23:59:57 (+0,-30,-61)
>>643
ざっと見、標準の multi-occur や multi-occur-in-matching-buffers に似てる
感じだな。ありがとう。
646 : 名無しさん@お腹 - 2009/12/09(水) 10:37:45 (+5,-30,-31)
>>644
&"hoge@hotmail.com"@pop3.live.com:995!
でどうよ。
デフォルトが /user なので書かなくていい。書いてもいいけど。
647 : Zeno ◆5 - 2009/12/09(水) 12:45:05 (+3,-30,-161)

Emacs 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.

648 : 名無しさん@お腹 - 2009/12/09(水) 13:23:25 (+36,-30,-77)
質問です
(add-hook 'xxx-mode-hook (lambda () ...))
として無名関数をhookに加えたものをあとからremove-hookしたいとき
3番目の引数には何を与えたらいいですか?
649 : Zeno ◆5 - 2009/12/09(水) 13:43:23 (+62,+29,-37)

>>648
そもそも、後からその関数に参照したいのに、何故無名にするのだ?
関数名が何故存在するかを考えてみろ。
650 : 585 - 2009/12/09(水) 15:16:49 (+4,-30,-218)
>>589
reverse 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

確かにキーボードが送る文字コードは異なるようです。
レス遅くなってすみません。
←前へ 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 次へ→ / 要望・削除依頼は掲示板へ / 管理情報はtwitterで / emacs スレッド一覧へ
スレッド評価: スレッド評価について
みんなの評価 :
タグ : 追加: タグについて ※前スレ・次スレは、スレ番号だけ登録。駄スレにはタグつけず、スレ評価を。荒らしタグにはタグで対抗せず、タグ減点を。

類似してるかもしれないスレッド


トップメニューへ / →のくす牧場書庫について