Emacs Part 41
■ このスレッドは過去ログ倉庫に格納されています
0001名無しさん@お腹いっぱい。
2012/09/07(金) 18:10:22.94Emacs Part 40
http://toro.2ch.net/test/read.cgi/unix/1328958449/
0216名無しさん@お腹いっぱい。
2012/09/30(日) 06:04:27.95返信遅くなりました。
やってみたらできました、ありがとう!
0217名無しさん@お腹いっぱい。
2012/09/30(日) 12:25:46.38人として。
0218名無しさん@お腹いっぱい。
2012/09/30(日) 12:44:04.95それ少し分かるw
0219名無しさん@お腹いっぱい。
2012/09/30(日) 14:24:29.69perl なりなんなりでフィルタ書いて M-| だな。
0220名無しさん@お腹いっぱい。
2012/09/30(日) 14:58:46.56なんで?
0221名無しさん@お腹いっぱい。
2012/09/30(日) 18:10:27.77得意気に使う奴はうすっぺらい感じはするな。
コードゴルフとか、うまいこと言ったった感を
前面に出してるのも洒落臭いし。
0222名無しさん@お腹いっぱい。
2012/09/30(日) 18:14:41.160223名無しさん@お腹いっぱい。
2012/09/30(日) 18:16:31.830224名無しさん@お腹いっぱい。
2012/09/30(日) 18:20:01.210225名無しさん@お腹いっぱい。
2012/09/30(日) 18:21:59.530226名無しさん@お腹いっぱい。
2012/09/30(日) 18:26:05.83わざわざ言うような事か?という感はある。
0227名無しさん@お腹いっぱい。
2012/09/30(日) 18:43:58.410228名無しさん@お腹いっぱい。
2012/09/30(日) 18:55:37.68は?
お前は3行で済むコードをわざわざ3億行にするのをプログラミングと呼ぶのか?
それはコード農業ではなかったか?
0229名無しさん@お腹いっぱい。
2012/09/30(日) 18:58:33.800230名無しさん@お腹いっぱい。
2012/09/30(日) 19:05:02.04コードゴルフはひたすら短くするものって事か。
その手の癖をつけた奴って現場では良い意味での
冗長性度外視したりして使えなさそうなんだが。。。
0231名無しさん@お腹いっぱい。
2012/09/30(日) 19:14:43.47もう少し柔軟であって欲しい
0232名無しさん@お腹いっぱい。
2012/09/30(日) 19:17:13.80なんで使える使えないの話になるんだ・・?
0233名無しさん@お腹いっぱい。
2012/09/30(日) 19:21:07.66それ違うよ。出来るだけ短く書くことで勝負するわけだから一般的によくない書き方とかばんばん使う一種のゲームだぞ。
0234名無しさん@お腹いっぱい。
2012/09/30(日) 19:24:56.53って事?
0235名無しさん@お腹いっぱい。
2012/09/30(日) 19:27:17.500236名無しさん@お腹いっぱい。
2012/09/30(日) 19:30:45.51癖とか冗長性とかそんな生半可なレベルじゃないから
0237名無しさん@お腹いっぱい。
2012/09/30(日) 19:33:53.100238名無しさん@お腹いっぱい。
2012/09/30(日) 19:41:29.88完璧なコードとはこういう事をいう。
0239名無しさん@お腹いっぱい。
2012/09/30(日) 19:42:57.460240名無しさん@お腹いっぱい。
2012/09/30(日) 19:45:49.060241名無しさん@お腹いっぱい。
2012/09/30(日) 19:46:32.310242名無しさん@お腹いっぱい。
2012/09/30(日) 20:03:53.140243名無しさん@お腹いっぱい。
2012/09/30(日) 20:04:24.82http://kohada.2ch.net/test/read.cgi/prog/1338703896/
0244名無しさん@お腹いっぱい。
2012/09/30(日) 22:10:11.77すげえ、変数に大文字って。しかも puts にフォーマット文字列とか。
ちゃんと動くコードかいてくださいよ 217さん。
0245名無しさん@お腹いっぱい。
2012/09/30(日) 22:19:47.410246名無しさん@お腹いっぱい。
2012/09/30(日) 23:16:30.09(defmacro for (data &rest body)
(let ((var (car data))
(start (cadr data))
(stop (caddr data))
(gstop (gensym)))
`(do ((,var ,start (1+ ,var))
(,gstop ,stop))
((> ,var ,gstop))
,@body) ))
(setq thread (make-hash-table))
(setf (gethash 'resNumber thread) 245)
(let ((start 217))
(for (i start (gethash 'resNumber thread))
(insert (format ">>%d スレ違い\n" i))))
0247名無しさん@お腹いっぱい。
2012/10/01(月) 00:39:07.97このスレのレベルではそこには気付けず重箱の隅つつきが限界か。
レベル差は明らかになった形だけど、まあいいや。
スレ違いが続いたからもうこの話題はここで終わり。
これ以上続けると荒らしだからね。
0248名無しさん@お腹いっぱい。
2012/10/01(月) 01:26:56.41emascスレ付属総合隔離病棟スレ
http://toro.2ch.net/test/read.cgi/unix/1342582441/
0249名無しさん@お腹いっぱい。
2012/10/01(月) 02:22:22.89i が未定義な時点で終了
オブジェクトか?以前の問題だな
0250名無しさん@お腹いっぱい。
2012/10/01(月) 10:33:36.230251名無しさん@お腹いっぱい。
2012/10/01(月) 10:44:00.500252名無しさん@お腹いっぱい。
2012/10/01(月) 10:51:08.370253名無しさん@お腹いっぱい。
2012/10/01(月) 11:17:04.360254名無しさん@お腹いっぱい。
2012/10/01(月) 11:19:32.040255名無しさん@お腹いっぱい。
2012/10/01(月) 11:20:37.120256名無しさん@お腹いっぱい。
2012/10/01(月) 11:22:10.960257名無しさん@お腹いっぱい。
2012/10/01(月) 16:07:51.14`(let (,args) ,@body))
というマクロを書きました。これは
(let ((str "hoge"))
hoge
hoge)
を
(let1 (str "hoge")
hoge
hoge)
と書けるようにするものです。
うまく動くのですがインデントがletの場合と異なり
(let1 (str "hoge")
hoge
hoge)
となってしまいます。letの時の様なインデントがなされて欲しいのですが
オートインデントに情報を加えるにはどうすれば良いのでしょうか?
0258名無しさん@お腹いっぱい。
2012/10/01(月) 16:09:24.75(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の時の様なインデントがなされて欲しいのですが
オートインデントに情報を加えるにはどうすれば良いのでしょうか?
0259名無しさん@お腹いっぱい。
2012/10/01(月) 16:16:42.13http://d.hatena.ne.jp/zknx/20091205/1259982042
0260258
2012/10/01(月) 16:25:01.12即レス感謝です!結果
(defmacro let1 (args &rest body)
(declare (indent 1))
`(let (,args) ,@body))
で希望の動作をするようになりました。
indent 2や3にしてみると。あーこの挙動か、と楽しめました。
こんなお手軽な方法があったのですね。
ありがとうございました!
0261名無しさん@お腹いっぱい。
2012/10/01(月) 19:32:38.49http://blog.supermomonga.com/articles/emacs/my-imaginary-emacs-future.html
0262名無しさん@お腹いっぱい。
2012/10/01(月) 20:36:01.76一向に普及しないね
0263名無しさん@お腹いっぱい。
2012/10/01(月) 22:00:31.26lunaってw3m shimbun くらいしか使われてないのかな。
情報を調べようと思っていつも苦労する。
0264名無しさん@お腹いっぱい。
2012/10/01(月) 22:31:03.86別で本命clos系パッケージが来るのを密かに待ってる
0265名無しさん@お腹いっぱい。
2012/10/01(月) 23:27:58.79書いてすらないものを宣伝しに来るとか
ゴミクズとしての第一歩を踏みだしちゃったな
0266名無しさん@お腹いっぱい。
2012/10/01(月) 23:32:26.220267名無しさん@お腹いっぱい。
2012/10/02(火) 00:21:10.55日本語でおk
0268名無しさん@お腹いっぱい。
2012/10/02(火) 00:22:46.53>>261
(実際にコードを)書いてすらないものを宣伝しに来るとか
ゴミクズとしての第一歩を踏みだしちゃったな
0269名無しさん@お腹いっぱい。
2012/10/02(火) 00:28:19.37markdownのレンダリング結果をemacsで綺麗に表示できたりすると夢がひろがりんぐ
0270名無しさん@お腹いっぱい。
2012/10/02(火) 01:01:14.91つながらない、、パスワードも聞かれんし どうなってるん?
0271名無しさん@お腹いっぱい。
2012/10/02(火) 01:08:53.57それ以外に考えられない
0272名無しさん@お腹いっぱい。
2012/10/02(火) 01:10:25.42もしかしたらEmacsからも嫌われてるのでは?
0273名無しさん@お腹いっぱい。
2012/10/02(火) 01:22:08.68sql-postgres で パスワードも聞かれたし、、
文字コードの問題かなぁ。。
0274名無しさん@お腹いっぱい。
2012/10/02(火) 02:32:12.93windows localじゃあだめだけど
つなぎさきがlinux だったらできたーー
0275名無しさん@お腹いっぱい。
2012/10/02(火) 02:50:21.830276名無しさん@お腹いっぱい。
2012/10/02(火) 04:01:27.190277名無しさん@お腹いっぱい。
2012/10/02(火) 08:44:24.48xwidget のことなら開発版じゃなくて勝手に派生した版だったと思う
本家に組み込まれるかはかなり怪しげ。
JSとEmacsで実装されたHTTPDを組み合わせてブラウザにリロード無しでリアルタイムで
編集結果を表示し続けるパッケージは最近幾つかみたよ。
0278名無しさん@お腹いっぱい。
2012/10/02(火) 17:03:31.41/ /ヽ ヽ
/ /__\ ヽ あー俺の環境と違うわー
/ / bb) | | ん?これ文字コードの問題じゃね?
<彡(リ > ソ ヽ てか、ウィンドウズだよ
≦イ  ̄ /\_≧ ウィンドウズのせいだったよ
`/ | ー イ\ (ッターーン!!!)
/ ヽ | ヽ
レ⌒\ \ / | |
\//  ̄ ̄ヽ |T ̄ ̄ ̄|
/////゙zノノU || |
// ヾ☆/ || | ̄| |
0279名無しさん@お腹いっぱい。
2012/10/02(火) 21:42:54.85emacsとnode.jsを使ってもできそうだが
誰か頼む
0280名無しさん@お腹いっぱい。
2012/10/03(水) 09:05:56.80ちょっと悲しいな。
0281名無しさん@お腹いっぱい。
2012/10/06(土) 00:46:18.24(replace-string "^M" "")
このelispは正常に動作するのですが、wikiなどにこれを投稿して表示すると^Mの部分で改行されてしまいます
可読性を考えて改行文字は文字として表示し、かつelispとして意図したとおりに動作させる手は無いかと思ったのですが
それらしい物を見つけることはできませんでした
何か策はあるでしょうか
0282名無しさん@お腹いっぱい。
2012/10/06(土) 00:57:16.630283名無しさん@お腹いっぱい。
2012/10/06(土) 01:21:32.07ばっちりです!ありがとうございます。
0284名無しさん@お腹いっぱい。
2012/10/06(土) 12:03:55.31fooをbar置換しているときに、
foo1 // ここから
foo2
foo3 // ここまで置換したい
foo4 // ここにカーソル来て欲しくない
説明の都合上、矩形で処理できそうなならびになってますが、
実際は散らかっています。foo3の時yを押してfoo4に来ちゃう問題、みんなどうしてる?
0285名無しさん@お腹いっぱい。
2012/10/06(土) 12:25:45.770286名無しさん@お腹いっぱい。
2012/10/06(土) 12:27:21.74narrow-to-regionしてから置換
0287名無しさん@お腹いっぱい。
2012/10/06(土) 13:22:38.57うはっ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).
0288名無しさん@お腹いっぱい。
2012/10/06(土) 17:21:06.01region範囲の表示を有効にしておくとnarrowingと同じ効果がある
あと、foo3でピリオドもある
0289名無しさん@お腹いっぱい。
2012/10/06(土) 17:41:19.610290名無しさん@お腹いっぱい。
2012/10/06(土) 17:47:33.22うおおお!!!
> (transient-mark-mode 1)
デフォでこれenabledにして使ってたんですが、
それにそんな効果が隠されていたとは知らなかったです。
> foo3でピリオド
これだ!! これかつ、ミスったときに^押せば完璧ですね。
皆さんのおかげで俺捗って仕方ありません。どうもありがとうございました。
0291名無しさん@お腹いっぱい。
2012/10/06(土) 17:48:28.55ありがとうございます!!
0292名無しさん@お腹いっぱい。
2012/10/06(土) 19:08:35.71なんか結構長いこと使ってるが、こういう知らないけど地味に便利なこと結構ありそうだなぁ
0293名無しさん@お腹いっぱい。
2012/10/06(土) 19:45:05.29"Period to replace one match and exit."
素晴らしい。。。
0294名無しさん@お腹いっぱい。
2012/10/06(土) 19:46:26.22思わず笑みがこぼれた
0295名無しさん@お腹いっぱい。
2012/10/06(土) 20:34:02.350296名無しさん@お腹いっぱい。
2012/10/06(土) 21:17:50.38↑
ここにカーソル持ってきてC-M-SPC押すと)までが選択されるってやつだな。
あんま使ってないけど。
F1 k C-M-SPCでヘルプ見れるぜ。
0297名無しさん@お腹いっぱい。
2012/10/06(土) 21:17:52.24バッファ切り替えによって表示させるにはどうすればいいですか
今はscratchバッファで
(with-temp-buffer
(progn
...)
(write-region (point-min) (point-max) "c:/hoge.txt"))
これを実行して作業内容をc:/hoge.txtに置きそれを開いています
(princ (buffer-string))とするとscratchバッファにそれが追記されてしまいます
よろしくお願いします
0298名無しさん@お腹いっぱい。
2012/10/06(土) 22:19:57.43作業用バッファ作ってそこに何か出力してそれに切り替えるなら、
with-temp-bufferから適当に借用してこんな感じかね?
もっとちゃんとしたやり方がありそうだけど
(let ((nbf (generate-new-buffer "*MYTEMP*")))
(with-current-buffer nbf
(unwind-protect
(progn (insert-string "テスト"))
(pop-to-buffer nbf))))
0299名無しさん@お腹いっぱい。
2012/10/06(土) 22:54:05.70こういう手がありましたか。ありがとうございます。勉強になりました。
0300名無しさん@お腹いっぱい。
2012/10/07(日) 06:39:29.58(with-temp-buffer
(insert "dddd")
(switch-to-buffer (current-buffer))
(sit-for 5))
ってこと?
0301名無しさん@お腹いっぱい。
2012/10/07(日) 11:54:16.30\346\227\245
のような文字列に化けてしまいます
(コピペすると半角空白になります)
ascii文字は問題ありません
何がいけないのですか
0302名無しさん@お腹いっぱい。
2012/10/07(日) 11:56:19.08実際にはinsert-fire-contents-literallyを使っていました
insert-fire-contentsにしたら問題がなくなりました
0303名無しさん@お腹いっぱい。
2012/10/07(日) 13:36:18.760304名無しさん@お腹いっぱい。
2012/10/07(日) 18:25:08.91っていう便利コマンド教えてくれ。
0305名無しさん@お腹いっぱい。
2012/10/07(日) 18:41:29.24y,n,!しか使ってなかった。ちなみに終わらせるときはC-g使ってたw
0306名無しさん@お腹いっぱい。
2012/10/07(日) 18:46:02.14>RET or `q' to exit, Period to replace one match and exit,
0307名無しさん@お腹いっぱい。
2012/10/07(日) 18:56:46.97'.'って書いとけよなー(#^ω^)ピキピキ
うそですごめんなさい。
0308名無しさん@お腹いっぱい。
2012/10/07(日) 19:39:24.380309名無しさん@お腹いっぱい。
2012/10/07(日) 19:55:38.21最初はあんま使わなかったのだが、徐々に。
condition
|| condition2 ←この行でM-^すると
condition || condition2 ←こうなる
あとはC-M-SPCかね。
0310名無しさん@お腹いっぱい。
2012/10/07(日) 20:10:44.290311名無しさん@お腹いっぱい。
2012/10/07(日) 20:40:03.870312名無しさん@お腹いっぱい。
2012/10/07(日) 21:32:20.36C-s(C-r) の検索中なら M-e で再編集できるけど?
あと、C−w や M−r や M−c も便利。
0313名無しさん@お腹いっぱい。
2012/10/07(日) 22:21:46.650314名無しさん@お腹いっぱい。
2012/10/07(日) 23:31:38.08M-c便利だな。それが必要になったらいつもぐぐって、ごにょごにょ打ち込んでいちいち切り替えてやってた。
正規表現の置換はいちいち
M-x replace-regexp
やってるけど、標準でこれを一発実行できるキーある?
0315名無しさん@お腹いっぱい。
2012/10/08(月) 01:06:53.370316名無しさん@お腹いっぱい。
2012/10/08(月) 01:26:21.14C-h w とか M-x where-is とかやってキーバインド探すといいよ。
replace-regexp は標準ではバインドされてないとは思うけど。
■ このスレッドは過去ログ倉庫に格納されています