元スレEmacs part 27
emacs覧 / PC版 /みんなの評価 : ○
301 = :
>>299
http://usokosystem.com/?a=Maker&oo=>>297
302 = :
>>297
ぼくも3パートのまとめを大切に保管しているけど、
あれ以降、それについて言及した人を見たことが無い。
303 = :
>>300
with-current-bufferを使ってるなら何もしなければ*temp*がカレントバッファなはず
with-current-bufferは最初と最後にカレントバッファを切り換えるだけで
その中のformは単にカレントバッファに対する処理だから
もし途中何らかの操作で*temp*がカレントバッファじゃなくなってるなら
別におかしくはない。
304 = :
>>297
経緯は知らんけど、
ちゃんと議論したいならム板あたりに行った方がいいと思う。
305 = :
find-grepのfindって -regexオプション使えますか?
俺の正規表現が間違っているのか、-regexオプションが存在しないのか
判断できないっす。
emacs23です
307 = :
再帰的に計算する関数をバイトコンパイルしようとすると、ほとんどで
Error: Variable binding depth exceeds max-specpdl-size
というエラーがでてしまうんですが、どうすれば消すことができますか?
(関数自体に問題はありません。)
308 = :
再帰数子
309 = :
現在のmax-specpdl-sizeより大きい値aについて
(setq max-specpdl-size a)
を評価する
あんまり大きすぎるとメモリ不足でemacsが落ちるかもしれんから気を付けてね
310 = :
お前も命を落とさないようにな。
お互い無事だったらまた落ち合おう。
311 = :
>>300
1週間くらい前のではならなかった。昨日ビルドしたのではなった。
312 = :
tibet-util.el に表示できない文字 (177行目とか198行目とか) があるんだけど、
表示できている人いる?intlfonts じゃダメなのかな。
チベット語関連とインド語関連の全文字表示は難しそうだ…。
314 = :
Linux の「くだらねえ質問は…」から引越してきました。
UTF-8 環境での、X上の Emacs (22.3.2) と、端末エミュレータ mlterm の間の
コピー and ペースト について。
OSは Momonga Linux 5 ですが、まあ Fedora9 に近い環境だとお考え下さい。
mlterm (2.9.4) でトランプのダイヤモンド記号(黒) (UTF-8) をコピーし、X上の
emacs (22.3.2) にペーストすると、JISX0213という扱いになってしまいます。
emacsで M-x describe-char してみると、本来は
character: ? (299494, #o1110746, #x491e6, U+2666)
charset: mule-unicode-2500-33ff (Unicode characters of the range U+2500..U+33FF.)
となって欲しい所が
character: ? (135996, #o411474, #x2133c)
charset: japanese-jisx0213-1 (JISX0213 Plane 1 (Japanese))
となってしまいます。
(1) emacs を -nw で立ち上げれば、このような変換は起きません。
(2) mltermの代りにコピー元を xterm や urxvt にすれば、このような変換は起きません。
(3) mlterm の設定で receive_string_via_ucs を true にしても false にしても解消されません。
(4) emacs に Mule-UCSを導入しようがしまいが、解消されません。
(5) emacs を 23 にすれば、このような変換は起きません。
他の elisp パッケージとの関係上まだ Emacs-23 には移行できません。
このようなコード変換をやっている犯人は誰なのでしょう。
315 = :
ペーストってselectionで? x-get-selectionをedebug-defunして何が渡されているか見てみるとか。
316 = :
>>314
つ xsel
317 = :
edebugで思い出したので質問。
ある関数をデバッグしていて、その関数の中でコールされている関数に
ステップインするようなことはできない?
たとえばfind-fileをデバッグしていて、
find-file-noselectを実行するところでステップインする感じ。
今は毎回describe-functionとかで定義位置にジャンプして C-u C-M-x して
そのあとに g しているんだど、もちょっと手軽にできないものかと。
318 = :
お返事ありがとうございます。
>>316
mltermの場合と urxvtの場合を比較しましたが、selectされた内容に差はありませんでした。
しかし emacs にペーストすると、違いが生じます。謎です。
>>315
どうも x-get-selection は2度呼ばれるようなのです。そして1度目は mlterm の場合と
urxvtの場合に違いは無いのですが、2度目の挙動が異なります。以下に *message* バッファ
の内容を貼ってみます。
319 = :
# mlterm と urxvt で共通な、
# x-get-selectの1回目のcall
Result: PRIMARY [2 times]
Result: UTF8_STRING [2 times]
Result: #("\342\231\246" 0 3 (foreign-selection UTF8_STRING)) [2 times]
Result: t
Result: #("\342\231\246" 0 3 (foreign-selection UTF8_STRING))
Result: UTF8_STRING [4 times]
Result: t
Result: utf-8
Result: #("\342\231\246" 0 3 (foreign-selection UTF8_STRING))
Result: utf-8
Result: "?" [3 times]
Result: 1 (#o1, #x1, ?\C-a)
Result: UTF8_STRING
Result: "?"
Result: nil [2 times]
Result: #("?" 0 1 (foreign-selection UTF8_STRING)) [2 times]
320 = :
# mlterm の場合。
# x-get-selectの2回目のcall。^[ と ◆ は 本物ではない。
Result: PRIMARY [2 times]
Result: COMPOUND_TEXT [2 times]
Result: #("^[$(O&<" 0 6 (foreign-selection COMPOUND_TEXT)) [2 times]
Result: t
Result: #("^[$(O&<" 0 6 (foreign-selection COMPOUND_TEXT))
Result: COMPOUND_TEXT [4 times]
Result: nil [2 times]
Result: compound-text-with-extensions [3 times]
Result: #("^[$(O&<" 0 6 (foreign-selection COMPOUND_TEXT))
Result: compound-text-with-extensions
Result: "◆" [3 times]
Result: 1 (#o1, #x1, ?\C-a)
Result: COMPOUND_TEXT
Result: "◆"
Result: nil [2 times]
Result: #("◆" 0 1 (foreign-selection COMPOUND_TEXT)) [2 times]
322 = :
>>319-321 で x-get-select と書いているのは x-get-selection の間違いです。
途中の関数が書いてないのでわかりにくいですね。ここに貼るならedebug よりも
普通のデバッガの方がよかったかな。
323 = :
>>317
その関数を呼んでいるフォームのカッコの位置で i (edebug-step-in) じゃない?
(find-file-noselect ...
^
ふだん edebug は使ってないので、どうやって解除するかしばらくわからなかった…。
324 = :
>>318
>どうも x-get-selection は2度呼ばれるようなのです。
これを呼んでいるのは term/x-win.el 内の x-selection-value という関数でした。
これを Emacs-23 のものに差し替えたら、文字化けしなくなりました。
しかし差し替えで不具合が出ても困るので、もう少し読んでみます。
326 = :
バージョンは >>314 にも書きましたが、ツールキットは書いてませんでしたね。(emacs-version) は
GNU Emacs 22.3.2 (i686-momonga-linux-gnu, GTK+ Version 2.12.12) of 2008-09-24 on miyako.momonga-linux.org
となっています。
327 = :
別のモードの keymap を一時的にコピーして、
何らかの処理をした後に、元の keymap に戻すコードを書いてください。
328 = :
>>327
予算は?
329 = :
>>328
グダグダ言わずに早く書いてくれませんかね?
ヒント:
(copy-keymap foo)
(use-local-map foo)
(make-sparse-keymap)
上の関数を使えば比較的容易にできると思います。
331 = :
>>327
まだですか?
332 = :
すみませんが、質問です。リージョンを単に解除する関数はありませんか?
選択した範囲からデータを取得する、あるコマンドに手を加えているのですが、
処理の最後で範囲選択を解除したいのです。
333 = :
>>332
(deactivate-mark)
私の質問の解答待ちに、割り込んでそういう初歩的な質問をするのは控えてください。
334 = :
>>333
うまく動きました。ありがとうございます。割り込んでしまってごめんなさい。
336 = :
>>335
無意味で味気無い
見ただけで何が起こるかがわかってしまう
もうちょっと楽しませてよ。
337 = :
>>327 の相手なんかする必要はない、という意味だよ。楽しむ必要もない。
338 = :
>>327
どういうものが良いのかよくわからないけど、minor-mode を適当に作ってみたよ。
(defvar hoge-orig-map nil)
(make-variable-buffer-local 'hoge-orig-map)
(define-minor-mode hoge-mode
"hoge minor mode"
:init-value nil
:lighter " Hoge"
:group 'hoge
(if hoge-mode
(condition-case err
(use-local-map
(progn
(push (current-local-map) hoge-orig-map)
(symbol-value
(intern
(completing-read
"Keymap: " obarray
(lambda (m) (and (boundp m) (keymapp (symbol-value m))))
t nil)))))
((error quit)
(setq hoge-orig-map nil
hoge-mode nil)))
(use-local-map (pop hoge-orig-map))))
339 = :
>>338
私が頭の中で描いていたもの (vip-change-modeに似た関数)
とは実装方法が違いましたが、コードが簡潔で素晴しいですね。
楽しめました。 ありがとうございました(笑顔)。
340 = :
>>335
navi2chでブラクラにあうとは思わなかったよ、くそう!
341 = :
>>340
[A-Za-z] の ascii コードぐらいは(二|十|十六)進法で言える、若しくは
暗算できるようにしておいた方がいいと思うよ。
342 = :
そんなのできなくても全然問題ないけど、funcallを評価する前に
internの式を評価してみるくらいの注意深さはあった方がいいと思う。
343 = :
ところで >>314 の問題は他の環境でも再現性はあるの?
再現性が無いのなら、OS特有・Build特有の問題なんで、
そのOSのスレの方がよいかも。
344 = :
それはUNIX板からLinux板への宣戦布告と受けとっていいのか?
345 = :
何言ってんの?
346 = :
ウンコ食いすぎて頭がイカれたらしい
347 = :
ウンコは食いすぎなくても食えば頭イカれるだろ。
というか食う時点で頭イカれてるだろ。
348 = :
ウン。
349 = :
はやくどんどん次の話題だして。
350 = :
Emacs 23を入れてみた。色々変わってるけど、なんといっても激しく重くなったねえ。
ttyだとそうでもないのでXでの表示が重くなったのだろうけど。
一つのファイルに色々メモを書き足しているんだけど、そういう
長大なファイルだと入力に表示がついてこない。
みんなの評価 : ○
類似してるかもしれないスレッド
- Emacs part 25 (1001) - [92%] - 2008/8/10 0:18 ○
- Emacs part 26 (1001) - [92%] - 2008/11/8 20:47 ○
- Emacs part 22 (1001) - [92%] - 2008/1/18 7:47 ○
- Emacs part 28 (605) - [92%] - 2009/3/25 0:37 ○
- Emacs part 23 (1001) - [92%] - 2008/2/8 0:04 ☆
- Emacs Part 47 (995) - [84%] - 2015/4/19 13:01
- Emacs Part 37 (1001) - [84%] - 2011/6/20 19:47
- Emacs part24 (991) - [84%] - 2008/5/10 5:08 ○
- Emacs Part 40 (1001) - [76%] - 2012/9/7 0:30
- Emacs Part 53 (989) - [76%] - 2022/12/5 12:45
- Emacs Part 39 (990) - [76%] - 2012/2/9 19:45
- Emacs Part 34 (1001) - [76%] - 2010/6/21 19:45 ○
- Emacs Part 33 (1001) - [76%] - 2010/3/9 20:01 ○
トップメニューへ / →のくす牧場書庫について