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

    私的良スレ書庫

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

    元スレEmacs Part 41

    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
    251 : 名無しさん@お腹 - 2012/10/01(月) 10:44:00.50 (-1,-24,-13)
    オブジェクト化wwww
    252 : 名無しさん@お腹 - 2012/10/01(月) 10:51:08.37 (+56,+28,-25)
    今更オブジェクト指向でドヤ顔するのがEmacsユーザなんですかぁ
    253 : 名無しさん@お腹 - 2012/10/01(月) 11:17:04.36 (+57,+29,-2)
    どこからネタなのか分からず混乱している。
    254 : 名無しさん@お腹 - 2012/10/01(月) 11:19:32.04 (+55,+27,-13)
    スレ違いがメソッド化されていない時点で
    255 : 名無しさん@お腹 - 2012/10/01(月) 11:20:37.12 (+0,-28,-1)
    emacsスレなんだからeieioで書いて欲しかった
    256 : 名無しさん@お腹 - 2012/10/01(月) 11:22:10.96 (+52,+29,-3)
    まぁネタはこのくらいでやめとこう。
    257 : 名無しさん@お腹 - 2012/10/01(月) 16:07:51.14 (+3,-30,-133)
    (defmacro let1 (args &rest body)
    `(let (,args) ,@body))

    というマクロを書きました。これは
    (let ((str "hoge"))
    hoge
    hoge)

    (let1 (str "hoge")
    hoge
    hoge)
    と書けるようにするものです。

    うまく動くのですがインデントがletの場合と異なり
    (let1 (str "hoge")
    hoge
    hoge)
    となってしまいます。letの時の様なインデントがなされて欲しいのですが
    オートインデントに情報を加えるにはどうすれば良いのでしょうか?
    258 : 名無しさん@お腹 - 2012/10/01(月) 16:09:24.75 (+41,-30,-143)
    半角スペースの置き換えを忘れてしまっていました。二重投稿失礼します。

    (defmacro let1 (args &rest body)
      `(let (,args) ,@body))

    というマクロを書きました。これは
    (let ((str "hoge"))
      hoge
      hoge)

    (let1 (str "hoge")
      hoge
      hoge)
    と書けるようにするものです。

    うまく動くのですがインデントがletの場合と異なり
    (let1 (str "hoge")
            hoge
            hoge)
    となってしまいます。letの時の様なインデントがなされて欲しいのですが
    オートインデントに情報を加えるにはどうすれば良いのでしょうか?
    259 : 名無しさん@お腹 - 2012/10/01(月) 16:16:42.13 (+58,+30,+0)
    260 : 258 - 2012/10/01(月) 16:25:01.12 (+10,-30,-86)
    >>259
    即レス感謝です!結果
    (defmacro let1 (args &rest body)
    (declare (indent 1))
    `(let (,args) ,@body))

    で希望の動作をするようになりました。
    indent 2や3にしてみると。あーこの挙動か、と楽しめました。
    こんなお手軽な方法があったのですね。
    ありがとうございました!
    261 : 名無しさん@お腹 - 2012/10/01(月) 19:32:38.49 (+80,+21,+0)
    262 : 名無しさん@お腹 - 2012/10/01(月) 20:36:01.76 (+2,-29,-35)
    eieioといえば他にもlunaとかいろいろオブジェクト指向化パッケージがあったような気がするんだけど
    一向に普及しないね
    263 : 名無しさん@お腹 - 2012/10/01(月) 22:00:31.26 (-1,-29,-8)
    >>262
    lunaってw3m shimbun くらいしか使われてないのかな。
    情報を調べようと思っていつも苦労する。
    264 : 名無しさん@お腹 - 2012/10/01(月) 22:31:03.86 (+53,+25,-24)
    クロージャ入ったからeieioが書き直されるか
    別で本命clos系パッケージが来るのを密かに待ってる
    265 : 名無しさん@お腹 - 2012/10/01(月) 23:27:58.79 (+87,+29,-22)
    >>261
    書いてすらないものを宣伝しに来るとか
    ゴミクズとしての第一歩を踏みだしちゃったな
    266 : 名無しさん@お腹 - 2012/10/01(月) 23:32:26.22 (+52,+29,+0)
    もう人生消したほうがいいレベル
    267 : 名無しさん@お腹 - 2012/10/02(火) 00:21:10.55 (+40,+6,+1)
    >>265
    日本語でおk
    268 : 名無しさん@お腹 - 2012/10/02(火) 00:22:46.53 (+13,-30,-49)
    265+1 :名無しさん@お腹いっぱい。 [sage] :2012/10/01(月) 23:27:58.79
    >>261
    (実際にコードを)書いてすらないものを宣伝しに来るとか
    ゴミクズとしての第一歩を踏みだしちゃったな
    269 : 名無しさん@お腹 - 2012/10/02(火) 00:28:19.37 (+63,+29,-40)
    そういえばいまのemacsの開発版ってブラウザ組み込めるんだっけ
    markdownのレンダリング結果をemacsで綺麗に表示できたりすると夢がひろがりんぐ
    270 : 名無しさん@お腹 - 2012/10/02(火) 01:01:14.91 (-1,-29,-35)
    emacs24 で windows postgres9.2に

    つながらない、、パスワードも聞かれんし どうなってるん?
    271 : 名無しさん@お腹 - 2012/10/02(火) 01:08:53.57 (+57,+29,-14)
    postgresがおまえのこと嫌いになったんだよ
    それ以外に考えられない
    272 : 名無しさん@お腹 - 2012/10/02(火) 01:10:25.42 (+57,+29,-7)
    いや待て落ち着け
    もしかしたらEmacsからも嫌われてるのでは?
    273 : 名無しさん@お腹 - 2012/10/02(火) 01:22:08.68 (+6,-21,-35)
    うーーーーん。違う環境ではできたんだよなぁ。。

    sql-postgres で パスワードも聞かれたし、、
    文字コードの問題かなぁ。。
    274 : 名無しさん@お腹 - 2012/10/02(火) 02:32:12.93 (+57,+29,-5)
    できたーーー。
    windows localじゃあだめだけど

    つなぎさきがlinux だったらできたーー 
    275 : 名無しさん@お腹 - 2012/10/02(火) 02:50:21.83 (+0,-28,+0)
    passwordを返すやり方が難しいな。。
    276 : 名無しさん@お腹 - 2012/10/02(火) 04:01:27.19 (+52,+29,+0)
    ここはお前のスレじゃねーんだよ死ね
    277 : 名無しさん@お腹 - 2012/10/02(火) 08:44:24.48 (+15,-29,-71)
    >>269
    xwidget のことなら開発版じゃなくて勝手に派生した版だったと思う
    本家に組み込まれるかはかなり怪しげ。

    JSとEmacsで実装されたHTTPDを組み合わせてブラウザにリロード無しでリアルタイムで
    編集結果を表示し続けるパッケージは最近幾つかみたよ。
    278 : 名無しさん@お腹 - 2012/10/02(火) 17:03:31.41 (+3,-30,-62)
       /⌒⌒\
       / /ヽ ヽ
      / /__\ ヽ  あー俺の環境と違うわー
     / / bb) | |   ん?これ文字コードの問題じゃね?
    <彡(リ  >  ソ ヽ  てか、ウィンドウズだよ
     ≦イ   ̄ /\_≧  ウィンドウズのせいだったよ
    `/ |  ー イ\     (ッターーン!!!)
    /  ヽ   | ヽ
    レ⌒\ \  / | |
    \//  ̄ ̄ヽ |T ̄ ̄ ̄|
    /////゙zノノU ||   |
     // ヾ☆/ || | ̄| |
    279 : 名無しさん@お腹 - 2012/10/02(火) 21:42:54.85 (+0,-29,-3)
    >>277
    emacsとnode.jsを使ってもできそうだが
    誰か頼む
    280 : 名無しさん@お腹 - 2012/10/03(水) 09:05:56.80 (+55,+27,-14)
    MS公式が配布してるTypeScriptモードのスクリプト、Emacsだけやったらサイズ大きい(のわりに機能そんなにあるように見えない?)のは
    ちょっと悲しいな。
    281 : 名無しさん@お腹 - 2012/10/06(土) 00:46:18.24 (+3,-30,-72)
    ^Mが改行文字だとして
    (replace-string "^M" "")
    このelispは正常に動作するのですが、wikiなどにこれを投稿して表示すると^Mの部分で改行されてしまいます
    可読性を考えて改行文字は文字として表示し、かつelispとして意図したとおりに動作させる手は無いかと思ったのですが
    それらしい物を見つけることはできませんでした
    何か策はあるでしょうか
    282 : 名無しさん@お腹 - 2012/10/06(土) 00:57:16.63 (+31,-30,-18)
    (replace-string "\r" "")とか(replace-string "\015" "")とか?
    283 : 名無しさん@お腹 - 2012/10/06(土) 01:21:32.07 (+61,+29,+1)
    >>282
    ばっちりです!ありがとうございます。
    284 : 名無しさん@お腹 - 2012/10/06(土) 12:03:55.31 (+7,-29,-72)
    今更これ聞くのも恥ずかしいんですが…。
    fooをbar置換しているときに、
    foo1 // ここから
    foo2
    foo3 // ここまで置換したい
    foo4 // ここにカーソル来て欲しくない

    説明の都合上、矩形で処理できそうなならびになってますが、
    実際は散らかっています。foo3の時yを押してfoo4に来ちゃう問題、みんなどうしてる?
    285 : 名無しさん@お腹 - 2012/10/06(土) 12:25:45.77 (+31,+7,+0)
    ^
    286 : 名無しさん@お腹 - 2012/10/06(土) 12:27:21.74 (+6,-29,-3)
    >>284
    narrow-to-regionしてから置換
    287 : 名無しさん@お腹 - 2012/10/06(土) 13:22:38.57 (+6,-30,-56)
    >>285
    うはっwこれはww 即レスありがとうございます。重宝します。

    >>286
    勉強になります。これも役に立ちそうです。↓メモ。
    C-x n n
    Narrow down to between point and mark (narrow-to-region).
    C-x n w
    Widen to make the entire buffer accessible again (widen).
    288 : 名無しさん@お腹 - 2012/10/06(土) 17:21:06.01 (+4,-30,-45)
    対話的に置換するなら、(transient-mark-mode 1)を評価して
    region範囲の表示を有効にしておくとnarrowingと同じ効果がある
    あと、foo3でピリオドもある
    289 : 名無しさん@お腹 - 2012/10/06(土) 17:41:19.61 (+23,-28,+0)
    普通にfoo3で.押す!
    290 : 名無しさん@お腹 - 2012/10/06(土) 17:47:33.22 (+3,-29,-25)
    >>288
    うおおお!!!

    > (transient-mark-mode 1)

    デフォでこれenabledにして使ってたんですが、
    それにそんな効果が隠されていたとは知らなかったです。

    > foo3でピリオド

    これだ!! これかつ、ミスったときに^押せば完璧ですね。
    皆さんのおかげで俺捗って仕方ありません。どうもありがとうございました。
    291 : 名無しさん@お腹 - 2012/10/06(土) 17:48:28.55 (+42,+11,+2)
    >>289
    ありがとうございます!!
    292 : 名無しさん@お腹 - 2012/10/06(土) 19:08:35.71 (+57,+29,-20)
    ピリオドなんてあったのか・・知らんかった・・
    なんか結構長いこと使ってるが、こういう知らないけど地味に便利なこと結構ありそうだなぁ
    293 : 名無しさん@お腹 - 2012/10/06(土) 19:45:05.29 (+1,-29,-1)
    >>289
    "Period to replace one match and exit."

    素晴らしい。。。
    294 : 名無しさん@お腹 - 2012/10/06(土) 19:46:26.22 (+0,-27,-19)
    別トピックだけどC-M-SPCのリージョン選択機能知った時は
    思わず笑みがこぼれた
    295 : 名無しさん@お腹 - 2012/10/06(土) 20:34:02.35 (-1,-29,-4)
    C-M-SPCのリージョン選択機能kwsk
    296 : 名無しさん@お腹 - 2012/10/06(土) 21:17:50.38 (-2,-30,-24)
     (+ 1 8)で

    ここにカーソル持ってきてC-M-SPC押すと)までが選択されるってやつだな。
    あんま使ってないけど。

    F1 k C-M-SPCでヘルプ見れるぜ。
    297 : 名無しさん@お腹 - 2012/10/06(土) 21:17:52.24 (+7,-30,-118)
    (with-temp-buffer)によって作った作業用バッファの内容を
    バッファ切り替えによって表示させるにはどうすればいいですか
    今はscratchバッファで
    (with-temp-buffer
    (progn
    ...)
    (write-region (point-min) (point-max) "c:/hoge.txt"))
    これを実行して作業内容をc:/hoge.txtに置きそれを開いています
    (princ (buffer-string))とするとscratchバッファにそれが追記されてしまいます
    よろしくお願いします
    298 : 名無しさん@お腹 - 2012/10/06(土) 22:19:57.43 (+36,-30,-127)
    with-temp-bufferは作業用バッファを削除してから戻るから、そのバッファに切り替えるとかは無理じゃないの?
    作業用バッファ作ってそこに何か出力してそれに切り替えるなら、
    with-temp-bufferから適当に借用してこんな感じかね?
    もっとちゃんとしたやり方がありそうだけど
    (let ((nbf (generate-new-buffer "*MYTEMP*")))
    (with-current-buffer nbf
    (unwind-protect
    (progn (insert-string "テスト"))
    (pop-to-buffer nbf))))
    299 : 名無しさん@お腹 - 2012/10/06(土) 22:54:05.70 (+62,+29,-1)
    >>298
    こういう手がありましたか。ありがとうございます。勉強になりました。
    300 : 名無しさん@お腹 - 2012/10/07(日) 06:39:29.58 (-1,-30,-52)
    >>297

    (with-temp-buffer
    (insert "dddd")
    (switch-to-buffer (current-buffer))
    (sit-for 5))

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

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


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