Emacs part12
レス数が900を超えています。1000を超えると表示できなくなるよ。
0001今臭
NGNG各種 Emacs 関連はこちらで。
Emacs part11 (前スレ)
http://pc3.2ch.net/test/read.cgi/unix/1075033822/
emacs撲滅委員会
http://pc3.2ch.net/test/read.cgi/unix/1073293910/
0824名無しさん@お腹いっぱい。
NGNGmake[1]: Entering directory `/home/xxx/src/emacs/lispref'
makeinfo -I. -I/home/xxx/src/emacs/lispref /home/xxx/src/emacs/lispref/elisp.texi -o /home/xxx/src/emacs/lispref/../info/elisp
./locals.texi:202: Cross reference to nonexistent node `Yet to be written' (perhaps incorrect sectioning?).
./locals.texi:136: Cross reference to nonexistent node `Yet to be written' (perhaps incorrect sectioning?).
makeinfo: Removing output file `/home/xxx/src/emacs/lispref/../info/elisp' due to errors; use --force to preserve.
make[1]: *** [/home/xxx/src/emacs/lispref/../info/elisp] Error 2
make[1]: Leaving directory `/home/xxx/src/emacs/lispref'
make: *** [info] Error 2
0825名無しさん@お腹いっぱい。
NGNGってできないですか?
イメージ的には、左のほうに+みたいなのがあってクリックするとのびちじみ。
Speedbarみたいな手軽な感じで。
0826名無しさん@お腹いっぱい。
NGNGallout.el の hotspot 機能が面白いと思うので、
outline-mode でも使えるようにしようと思っていて
手を出していない。
0827Emacs part13 スレの 1 ◆y1O6Cqv4XU
NGNG>>823
コテつけてから人にいちゃもんつけろよ。
それからなら俺の文句はいくら言ってもいいからよ。
勇気ねー奴等だな、ほんまに
0828名無しさん@お腹いっぱい。
NGNG> allout.el の hotspot 機能が面白いと思うので、
どんな機能?
0829名無しさん@お腹いっぱい。
NGNG> ./locals.texi:202: Cross reference to nonexistent node `Yet to be written' (perhaps incorrect sectioning?).
なんだから、locals.texi の最新の変更の前の時間に合わせてcheck outしる。あるいは、待つ。
0830名無しさん@お腹いっぱい。
NGNGコテつけるかどうかと何を発言してもいいかは無関係。
まだそんなことも知らないの?
0831名無しさん@お腹いっぱい。
NGNGそんな機能はない。
ソース中にない言葉を使われているのでサッパリサッパリだが
エスパーの俺が想像するに、isearch中に必要なところだけ
折り畳んであるのを一時的に開く機能じゃないだろか。
あれはEmacsの標準機能でそういうプロパティがあるのでそれほど難しくはない。
0832名無しさん@お腹いっぱい。
NGNGMuleは多言語対応らしいが、当方、使う非日本語はせいぜい英語くらいなのだが。
というか、最近のEmacsとMuleの違いって何?おまえらはどっち使ってる?
0833名無しさん@お腹いっぱい。
NGNG0834826
NGNGソースの中にあるよ。
;; - "Hot-spot" operation, for single-keystroke maneuvering and
;; exposure control. (See the outline-mode docstring.)
詳しくはソースの解説を見て欲しいが、
簡単に説明すると、
アウトラインの見出しの上にポインタがあるとき、
\C-c\C-f とかの面倒な prefix を省いて、
単なる f で outline-forward-current-level を実行できるって機能。
0835名無しさん@お腹いっぱい。
NGNG0836名無しさん@お腹いっぱい。
NGNGEmacs20 からは Mule パッチの作者さんが直接 Emacs 本体に組み込んだハズ。
0837名無しさん@お腹いっぱい。
NGNG831ではないが、hot-spotを勝手にhotspotにした方が悪い。
0838826
NGNG0839名無しさん@お腹いっぱい。
NGNG0840名無しさん@お腹いっぱい。
NGNG0841名無しさん@お腹いっぱい。
NGNG0843名無しさん@お腹いっぱい。
NGNG# 大きいファイルだとバッファ切り替えごとに時間かかるのがなー。
0845Emacs part13 スレの 1 ◆y1O6Cqv4XU
NGNG> おもしろそうなのでたわむれてみます。
でも多分、ECBは自然と使用しなくなると思うね。あれは使用しにくいから
0846825
NGNGやぱ、そうなのですか。orz
ECBのサイトやスクリーンショットを見たときはかなり魅力的に目に映ったのですが、
いまユーザーズマニュアルに目を通してて、ちょっと賦活レベルが下がってしまいました。
使いにくいかどうかはわかりませんが、なんせややこしい。。。w
0847名無しさん@お腹いっぱい。
NGNG基本的にはM-x ecb-activateするだけだよ。
やめるのはいつでもできるから、入れる暇が出来たら試してみれば?
0848Emacs part13 スレの 1 ◆y1O6Cqv4XU
NGNGわかる。
まず、自分好みのecbレイアウトを作るのにマニュアルをかなり読まなきゃならんからうざい。
俺は自分で ecb-layout-name を決めてから、 そのレイアウト名用に `ecb-layout-define' によって自分風の
レイアウトを作ったとおもう。
0849名無しさん@お腹いっぱい。
NGNG0850587
NGNG587分かります?
0851Emacs part13 スレの 1 ◆y1O6Cqv4XU
NGNG> うざいのはお前。
君はなんでそうもしつこく俺に粘着するの?
もうちょっと大人になりなされ
0852名無しさん@お腹いっぱい。
NGNG0853名無しさん@お腹いっぱい。
NGNG粘着されたくないなら名無しになるといいよ。
0854名無しさん@お腹いっぱい。
NGNGたぶんデフォルトでは無理じゃないかな。
semantic cacheのとりかたとか、ファイル単位に依存してるし。
ただ、ecb-post-process-semantic-taglistという仕組みがあって
taglistを受け取ってtaglistを返す関数を登録できるので、
バッファローカル変数とかで設定した関連ファイルのタグをリストに追加するような
関数を登録すればできそう。その関数書くのはちょっと面倒そうだけれども。
0855825
NGNGしばらく使ってみます。
(でもすでに「スゲースゲー」って遊んだ後の微妙な雰囲気を感じていますが。。。)
なぜかsemanticロード時にちょいエラーがでるのでこいつも解決しないと。
ありがとう。
0857名無しさん@お腹いっぱい。
NGNGfont-lockパッケージはありませんか?
Lispプログラミングしていると関数と変数の見分けがつきにくいので、あると
かなり助かります。
0858名無しさん@お腹いっぱい。
NGNG素直に customize-face しては?
0859名無しさん@お腹いっぱい。
NGNG0860名無しさん@お腹いっぱい。
NGNG俺は自分で subrp や byte-compile-function-p の結果を見て色付けしてる。
0861名無しさん@お腹いっぱい。
NGNG0863857
NGNGレスありがとうございます。
でも個々の関数を一つ一つsubrp や byte-compile-function-pを使用して
チェックするのは時間がかかりませんか?
自分のイメージとしては
"[^'[](\\([[:alpha:]0-9][[:alpha:]0-9/#=_-]+\\)"
にマッチする関数に色をつけたいのですが、これだと
(let (a (point)))
や
(defun foo (a) )
などの `a' の部分までマッチしてしまうので、このようなケースを見わけてフォントロックを
してくれるパッケージを探しています。
0864名無しさん@お腹いっぱい。
NGNGいや、だからそういう正規表現でいったんマッチさせて、
その結果を自力でチェックしてくんだよ。
俺は font-lock-keywords を利用していて、体感速度に不満はないよ。
編集のたびに全行をスキャンしてたら大変そうだけどね。
0865名無しさん@お腹いっぱい。
NGNG0866名無しさん@お腹いっぱい。
NGNG0867858
NGNGおもしろそうなので試しにやってみたよ。たしかに速度的には問題ないね。
でも同じ setq でも色付く所と付かない所があるな。どっかやり方が間違って
るんだろうけど(;´Д`)
0868名無しさん@お腹いっぱい。
NGNGとりあえず適当な設定例きぼん。< subrpとか利用したfontify
よさげだったら自分でも弄くってみよう。
0869名無しさん@お腹いっぱい。
NGNG正規表現が原因でなければ、
もともとのキーワードとの絡みで append とか prepend とかを指定する
必要があるって話かもしれない
0871名無しさん@お腹いっぱい。
NGNGこんなコード書くと無限ループになっちゃうんだけど、
(while (read-key-sequence "無限ループ。試すな危険"))
この状態から抜ける方法って何かあるかな?
0872名無しさん@お腹いっぱい。
NGNGなれなれしい文章が気に入らんが、ある
0873名無しさん@お腹いっぱい。
NGNGrー、
」´ ̄`lー) \
T¨L |_/⌒/ <- throw
`レ ̄`ヽ〈
| i__1
_ゝ_/ ノ
L__jイ´_ )
| イ
| ノ--、 r'⌒ヽ_
ゝ、___ノ二7 /´ ̄l、_,/}:\
|ーi | l_/ /__ィ::. ゝ~_ィ´:; ,ゝ
__〉 { (T´ |1:::. \_>、};;_」 <- catch
'ー‐┘ ! ` ̄''ァ一 、\ ヽ}
〈` ̄ ̄^`¬ノ .::〔 ̄´
1 ヽ .:::レ ヽ、
|_イー-、_;;j|_:. ゝ、
__,,,... -- |. {―――‐フゝ、 〉 -- ...,,,__
_,, -‐ ´ ,r|__ト, 1ニノ ー'´ ` ‐- ,,_
, ‐ ´ └―'´ `
0874871
NGNGなれなれしくてすまんです。
で、どうやればできます?
例えば、
(while (and (not finish)
(setq key (read-key-sequence "無限ループ。試すな危険")))
(when (eq 'keyboard-quit (lookup-key key))
(setq finish t)
(message "finish!")))
とかして明示的に抜けるようにすれば抜けれますけど、>>871 みたいな、そうことを考
えてないコードじゃだめですよね?
もともとの質問が悪かったかもしれないんですが、
(while t)
とか
(while (read-string ""))
だったら C-g (keyboard-quit) で抜けることができるけど、
(while (read-key-sequence ""))
の状態に間違ってなっちゃった場合どうやれば抜けれるでしょうか?
が質問したい内容です。
0875871
NGNG>>874 の最初のコードは
(let (finish key)
(while (and (not finish)
(setq key (read-key-sequence "無限ループ。試すな危険")))
(when (eq 'keyboard-quit (lookup-key (current-global-map) key))
(setq finish t)
(message "finish!"))))
です。
0876名無しさん@お腹いっぱい。
NGNGhttp://pc5.2ch.net/test/read.cgi/unix/1063880951/304
適当に試したものを貼ってみた。もっといいのできたらよろしく。
0877名無しさん@お腹いっぱい。
NGNG0878名無しさん@お腹いっぱい
NGNGみたいな設定を登録するファイルは、
Linuxなどでは、~/.Xdefaultsらしいが、
FreeBSDでではどこ?
あと、グラフィカルログインか否かで違ってくる?
0879名無しさん@お腹いっぱい。
NGNG~/Emacs
0880名無しさん@お腹いっぱい
NGNG0881名無しさん@お腹いっぱい。
NGNGそう言うお前は態度がでかくて横柄だな
0882名無しさん@お腹いっぱい。
NGNG0883名無しさん@お腹いっぱい。
NGNG'''文字列'''
の「文字列」の部分だけを色付けしたいのですが、フォントロックに
'("\\('''\\)\\([^']\\|'[^']\\|''[^']\\)+\\('''\\)" 2 font-lock-string-face )
を足しても最後の一文字しか色付けされません。どうやったらうまくいくでしょうか?
0884名無しさん@お腹いっぱい。
NGNGこれを
\\([^']\\)+
こうするんじゃ駄目なの?
0886名無しさん@お腹いっぱい。
NGNG>>883 のやつは () でくくった二番目を色付けするって意味?
だとしたら
\\([^']\\|'[^']\\|''[^']\\)+
これを
\\(\\([^']\\|'[^']\\|''[^']\\)+\\)
こうしないと駄目じゃないの?
0888871
NGNGregexp だけだと多分無理な気がするんで、こんなんでどうすかね?
matcher を関数にするときって、成功したらその最後の位置まで point を動かしとか
ないといけないんですね。初めて知った。じゃないと無限ル・・・
(defun 883-font-lock-matcher (bound)
(let (beg end)
(save-match-data
(and (search-forward "'''" bound t)
(setq beg (match-end 0)))
(and (search-forward "'''" bound t)
(setq end (match-beginning 0))))
(when (and beg end)
(set-match-data
(list (save-excursion (goto-char beg) (point-marker))
(save-excursion (goto-char end) (point-marker))))
t)))
(let ((buf-name "*font-lock-test*"))
(and (get-buffer buf-name)
(kill-buffer buf-name))
(setq test-font-lock-keywords '((883-font-lock-matcher . font-lock-string-face)))
(with-current-buffer (get-buffer-create buf-name)
(set (make-local-variable 'font-lock-defaults)
'(test-font-lock-keywords))
(turn-on-font-lock)))
0889名無しさん@お腹いっぱい。
NGNG0890名無しさん@お腹いっぱい。
NGNG0891名無しさん@お腹いっぱい。
NGNG0892名無しさん@お腹いっぱい。
NGNGhttp://www.google.com/search?q=rail+site:gouketsu.net&hl=ja&lr=lang_ja&ie=Shift_JIS
みてがんがれ
0894名無しさん@お腹いっぱい。
NGNG自分も前使っていたんだけど、どこ行ったのか分からなくなったし、
Mule と Meadow の日本語バージョン名しか必要なかったから、自分で作ったよ。
0895名無しさん@お腹いっぱい。
NGNGおまえら、Speedbar使ってる?
0896名無しさん@お腹いっぱい。
NGNG0897895
NGNGアゲなのに、たったこれだけのレスがつくのに1時間かかるUNIX板が好き。
0898名無しさん@お腹いっぱい。
NGNG0899Linuxer
NGNGweb上に貼りたいときはテキストブラウザをemacs内で立ち上げるか、いったん保存して
他のアプリから貼り付けるかしてる。
最近、gnome-terminal内で-nwオプションで立ち上げるとターミナル自身のコピペ機能を
利用できることに気づいたが、なんかやだ。
なんとかならんのですか?
0900名無しさん@お腹いっぱい。
NGNG0901名無しさん@お腹いっぱい。
NGNG> X上で動くemacsでも、emacs -> mozilla等、他アプリにコピペ出来ないのが痛いな。
普通(?)はできる訳だが。
0902名無しさん@お腹いっぱい。
NGNGなぜ出来なくなっちゃってるんだろうね。
0903名無しさん@お腹いっぱい。
NGNG本当に出来ないのなら、ディストリのスレに行った方がいいと思う。
勘違いしてるかもしれないけど、
Emacs の kill-ring と X の clipboard は別だよ。
clipboard 経由なら emacs <-> 他アプリ でコピペ出来る。
0904名無しさん@お腹いっぱい。
NGNG本当に。
0905名無しさん@お腹いっぱい。
NGNGclipboardじゃなくてprimary selectionじゃないっけ?
0906Linuxer
NGNGおまえら、おまえら、ありがとう。
おれは顔から火が出た。
emacsのキルリングはクリップボードとは別物だから仕方がないとあきらめていた。
あるとしたらラッパーかなんかが外部に落ちてる程度かと思っていた。
ちゃんと、別物は別コマンドとして用意されていたんだな。
まじ、はずかしい。
0907名無しさん@お腹いっぱい。
NGNG0908名無しさん@お腹いっぱい。
NGNG別コマンドというか、普通にマウスでドラッグして範囲指定すれば
clipboardに入るよね?
0909名無しさん@お腹いっぱい。
NGNG箇所が [ ] で囲まれていくんですが、これをクリアする方法ってないん
でしょうか。
0910名無しさん@お腹いっぱい。
NGNGそれってrecursive-editに入った状態じゃないの?
0911名無しさん@お腹いっぱい。
NGNGhelp-with-tutorial やっとけ。
0912909
NGNGありがとうございます。
ESC ESC ESC やってみましたが、 *Backtrace* バッファが開いて
Debugger entered--Lisp error: (error "Cannot return from the debugger in an error")
と表示されてしまいました。
で、いろいろ試してたら、M-x top-level で直りました。
0913名無しさん@お腹いっぱい。
NGNG0915909
NGNGC-x o で元のバッファに戻っていたのが敗因でした。
q でデバッガを抜ければいいのね。
0916名無しさん@お腹いっぱい。
NGNGキーボードでする場合は明示的に
(define-key global-map "\M-w" 'clipboard-kill-ring-save)
としないと無理
0917名無しさん@お腹いっぱい。
NGNGよくわからんが elisp の info の Window system selections ってとこに
いろいろ書いてある。
でも、コピペするんなら普通に M-w で selection に入るので、
それでいけるよ。
0918名無しさん@お腹いっぱい。
NGNGnil: kill-ring が CLIPBOARD に同期しないので Gtk アプリにペーストできない
t: CLIPBOARD が PRIMARY セレクションより優先されるので、CLIPBOARD に何か
入ってる場合は kterm 等から Emacs にペーストできない
と、t でも nil でも不具合があるので、こんなん書いて対処してる。
(defun my-x-get-selection (type)
(or (condition-case nil (x-get-selection type 'COMPOUND_TEXT)
(error nil))
(condition-case nil (x-get-selection type 'STRING)
(error nil))))
(defun my-select-selections ()
(interactive)
(let ((l (list (my-x-get-selection 'CLIPBOARD)
(my-x-get-selection 'PRIMARY)
(condition-case nil (x-get-cut-buffer 0)
(error nil))))
(x-select-enable-clipboard t) c)
(save-window-excursion
(with-temp-buffer
(dotimes (i (length l))
(insert (format "%d: %s\n" i (nth i l))))
(goto-char (point-min)) (delete-other-windows)
(switch-to-buffer (current-buffer))
(while (progn (setq c (read-char "which string to be killed? "))
(not (and (>= c ?0)
(<= c (+ (length l) ?0))))))
(let ((s (nth (- c ?0) l)))
(kill-new s)
(message "%s" s))))))
0919名無しさん@お腹いっぱい。
NGNGPRIMARY(とSECONDARY)を使って、C-c/C-x/c-vのように明示的なコピー&ペーストの
操作があるときだけCLIPBOARDを使うって規約がどっかにあったと思うんだが
ICCCMだっけ?
PRIMARYもCLIPBOARDも同じ機構だけど使われ方が微妙に違った気がする。
0920名無しさん@お腹いっぱい。
NGNG0921名無しさん@お腹いっぱい。
NGNG0922名無しさん@お腹いっぱい。
NGNGリモートの cygwin の Xwin.exe に表示させようとすると起動しません。
.emacs を読み込みに行っている気配もありません。
何が起こっているのか知りたいのですが、emacs の起動時の
振舞を逐一表示させるデバッグモードもしくは verbose モード
のようなものはありませんか?
0923名無しさん@お腹いっぱい。
NGNGレス数が900を超えています。1000を超えると表示できなくなるよ。