のくす牧場
コンテンツ
牧場内検索
カウンタ
総計:127,062,836人
昨日: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,-40)
    一太郎とか、ワープロ専用機に多かったよねそういうの。
    603 : 名無しさん@お腹 - 2009/12/06(日) 13:28:39 (+35,-3,-29)
    >>602
    現代ではそういうのはExcelが担当してるな・・・
    604 : 名無しさん@お腹 - 2009/12/06(日) 13:40:15 (+55,+15,-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 (+111,+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,-42)
    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 (+31,+3,-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 (+25,-2,-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 スレッド一覧へ
    スレッド評価: スレッド評価について
    みんなの評価 :
    タグ : 追加: タグについて ※前スレ・次スレは、スレ番号だけ登録。駄スレにはタグつけず、スレ評価を。荒らしタグにはタグで対抗せず、タグ減点を。

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


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