■掲示板に戻る■ 全部 1- 101- 201- 301- 401- 501- 601- 701- 801- 901- 最新50

レス数が950を超えています。1000を超えると表示できなくなるよ。

Emacs part6

1 :名無しさん@お腹いっぱい。 :02/09/21 21:35
Emacsネタのスレでございー。

Emacs
http://cocoa.2ch.net/unix/kako/967/967450973.html
Emacs part2
http://pc.2ch.net/unix/kako/1001/10010/1001087615.html
Emacs part3
http://pc.2ch.net/test/read.cgi/unix/1007618266/
Emacs part4
http://pc.2ch.net/test/read.cgi/unix/1013390142/
Emacs part5
http://pc.2ch.net/test/read.cgi/unix/1021734785/
関連リンク
http://www.jpl.org/elips/BUGS-ja.html


535 :名無しさん@お腹いっぱい。 :02/11/17 03:05
>>534
会社のマシンなので、今確認できないのですが
↓これを Aで実行しておいて、

(if (featurep 'xemacs)
(gnuserv-start)
(server-start))

Bで、

% rsh A "gnuclient -display B:0"

を実行するってことでしょうか?
あと、gnuclientって XEmacsに附属のものですが、FSF-Emacsでも使えますか?
質問ばかりですみません。


536 :名無しさん@お腹いっぱい。 :02/11/17 03:16
すみません、FSF-Emacsは gnuclientでなくて emacsclientみたいですね。
月曜日にでも試してみます。


537 :名無しさん@お腹いっぱい。 :02/11/17 04:17
gnuclient も使えるよ

538 :名無しさん@お腹いっぱい。 :02/11/17 04:20
xemacsを起動すると 何かキーを押さないと
default-frame-plistに設定したフレームの大きさになりませんが、
これってそういうもんですか?


539 :名無しさん@お腹いっぱい。 :02/11/17 04:36
>>538
んなわきゃーない。少なくとも、うちの 21.4.8 では問題ないよ。

540 :名無しさん@お腹いっぱい。 :02/11/17 04:53
>>539
うちは 21.4.9ですが、21.4.8でも そうなっています。
~/.emacsに default-frame-plistの設定だけを書いても同じでした。
なんなんでしょうかね。
↓いちおう configure-optionを書いておきます。

system-configuration-options
"--with-mule --with-wnn --with-xfs --with-pop --with-site-lisp --without-xim"


541 :名無しさん@お腹いっぱい。 :02/11/17 05:08
organizer-mode.el って誰か使ったことある?
どんなもんだろう。


542 :534 :02/11/17 09:57
>>535
手順としてはそんな感じです。

そういえば GNU Emacs には標準では入ってないから、別途インストールの必要が
ありますね。emacsclient では display 指定はできなかったはずですので。
なお、XEmacs の gnuserv.el はそのままで動かないので、gnuserv-compat.el が
必要となります。
ttp://meltin.net/hacks/emacs/src/gnuserv-3.12.5.tar.gz


543 :520 :02/11/17 17:54
>521-524

>C-cC-q
irchatのC-c qとかと混同してますた。

C-x kで良かったです。バッファーをいきなり消したらプロセスが逝きそこな
いそうでやってなかったんですが、全然問題ありませんですた。


544 :520 :02/11/17 21:35
もひとつ質問なんですが、shell-mode/term-modeでエラーメッセージが文字化
けします。日本語のコードが合ってないようですが、以下のように全部EUCで
統一しているつもりなんです。どこが違うんでしょうか。

~/.cshrc

setenv LANG ja_JP.eucJP
setenv LC_TIME C
setenv LC_MESSAGES C

~/.emacs
(set-language-environment "Japanese")
(set-terminal-coding-system 'euc-japan)
(set-buffer-file-coding-system 'euc-japan)
(set-keyboard-coding-system 'euc-japan)

.cshrcのLANGをCにすればメッセージが英語になってこちらの問題はないので
すがそうすると、ktermで動かすmanが英語表記になって嫌なのです。LC_TIME
がCなのは趣味です。


545 :名無しさん@お腹いっぱい。 :02/11/18 02:37
>>544
.cshrc の LANG の設定を $TERM で場合わけしてみたら?
shell-mode は $TERM は 'dumb' だよ。

546 :名無しさん@お腹いっぱい。 :02/11/18 02:48
設定している coding-system は shell-mode の文字化けとは関係
無い…素直に set-default-coding-systems で設定すれば?
(set-language-environment "Japanese")
(set-default-coding-systems 'euc-jp-unix) ;; Win なら sjis-dos
プロセス周りの coding-system がちゃんと設定できてないのが原因と思われ。

547 :名無しさん@お腹いっぱい。 :02/11/18 03:11
Emacs21 + elscreen にて C-zC-z に elscreen-show-list を割り当てています
確かにこれで困らないのですが タイトルバーにも elscreen-show-list を表示させたいと思います
しかし 私が elisp を読んだ限りでは elscreen-show-list-strig とかそーゆものがなく困っています
タイトルバーに elscreen-show-list を表示させることは可能でしょうか?


548 :名無しさん@お腹いっぱい。 :02/11/18 05:17
elscreen.el 内から
(defun elscreen-show-list () ... (elscreen-message elscreen-list-message)))
をコピーして,
(defun elscreen-show-list-string () ... elscreen-list-message))
と変更すりゃどーよ?

549 :547 :02/11/18 06:46
>>548
ありがとうございます.
elscreen.el 内にコピーして作った (defun elscreen-show-list-string () ... elscreen-list-message)) 関数を定義しました.
これは elscreen-message 関数を呼ばないことにより ミニバッファに出力しなくしたと解釈しても良いですか?

で *scrach* で C-j するとちゃんと動作するのですが, タイトルバーには *invalid* と表示されてしまいます…
(cond (window-system
(setq frame-title-format
'((multiple-frames " ")
"[now screen: "elscreen-mode-line"] "
(elscreen-show-list-string)
("[ %b ] " (buffer-file-name "[ %f ]"))
battery-mode-line-string))
(remove-hook 'global-mode-string 'battery-mode-line-string)))
と設定しています.
どこが間違っているのでしょうか?

550 :520 :02/11/18 07:51
>546

これで上手くいきました。ついでに化け化けだったjmanの表示も上手くいきました。
ありがとうございました。

emacsのcodeの設定って山ほどあって、どれが何するのか今一よく判らないっす。

>545

その手もありましたね。ktermとX立ち上げてないconsoleの動作を変えたい部
分もあるので、そこで使わせてもらいやす。


551 :520 :02/11/18 08:31
うわすげー、term-modeの中でmnewsやemacs -nwがちゃんと動いてる(笑)

552 :名無しさん@お腹いっぱい。 :02/11/18 15:20
emacs 立ち上げ中にもう一個 emacs 立ち上げるのは
.elmo 以下とか .skk-jisyo が壊れそうでいやじゃ。

553 :名無しさん@お腹いっぱい。 :02/11/18 15:56
一つのバッファを常に Active にし続ける、っていうか
例えば下半分で navi2ch 見てて、上半分で文章書いてて、
navi2ch でスレをクリックしても上の文章が裏に行かないように
したいんですけど、どうしたらいいのでしょうか?

554 :名無しさん@お腹いっぱい。 :02/11/18 16:43
>>552
;; 複数の Emacsen を起動して個人辞書を共有する
(setq skk-share-private-jisyo t)


555 :535 :02/11/18 23:46
>>542
Emacs-20.7では add-minor-mode()がなくて、
コンパイルエラーになってしまいました。
gnuserv-compat.elに↓こう書いてあるのに...。
;; Under non-XEmacs (tested 19.34 <= ... <= 20.7)

でも、とりあえずその行をコメントアウトして使ってみたところ、
スゴク(・∀・)イイ!!ですね。感動スマシタ。
私はフレームを多用するので、
マシンひとつにつきEmacsはひとつしか立ち上げていませんでしたが、
これからは本当にひとつだけ立ち上げれば良さそうです。(´∀`)

# add-minor-mode()はこれからボチボチ調べてみます。


556 :547 :02/11/19 04:55
>>548
自己解決したので御報告差し上げます.
ヒントとして頂いた, elscreen-show-list-string関数を結局は使うことが出来ませんでした.(自分の無知さが情けない…)
そこで次のような関数を定義してみました.
(defun elscreen-create-mine ()
(interactive)
(elscreen-create)
(elscreen-show-list))
これを
(global-set-key [hiragana-katakana] 'elscreen-create-mine)
のようにして呼び出すと, 変数elscreen-last-messageでタイトルバーに表示させることが出来ます.

こんな馬鹿な手段しか思い付きませんでしたが, 548さんはどのよーなことを言わんとしようとしていたのでしょうか?
是非とも知りたく思います.

Emacs21+elscreenで(server-start)しておき, ansi-termの中で emacsclient hoge とやっている私は馬鹿?
でも使いやすいと思う…


557 :名無しさん@お腹いっぱい。 :02/11/19 06:09
("[%b]"(buffer-file-name"[%f]"))
と設定しています
このパス名を~/をつかった系式に変更することはできませんでしょうか


558 :名無しさん@お腹いっぱい。 :02/11/19 11:55
>> 556 よ…それは「ミニバッファ」に表示されるが漏れの気の所為なのか?
漏れとしては,
(defun hoge () (format-time-string "%H:%M:%S"))
(setq frame-title-format (list '(:eval (hoge))))
みたいなのを考えておった.当然リアルタイムに更新されるわけじゃないからイマイチ.


559 :名無しさん@お腹いっぱい。 :02/11/19 12:24
>>557
> ("[%b]"(buffer-file-name"[%f]"))
> と設定しています
> このパス名を~/をつかった系式に変更することはできませんでしょうか

うちの環境では`buffer-file-truename'で実現できてる。


560 :548 :02/11/19 12:24
漏れの言い方がおかしいな.正確に言うと
(run-at-time t 1
(lambda ()
(setq frame-title-format '((:eval (format-time-string "%H:%M:%S"))))
(force-mode-line-update))))
みたいにせんでも elscreen なら画面切り替えとかの描画タイミングで更新されれば
十分だろう,という事.

561 :名無しさん@お腹いっぱい。 :02/11/19 13:21
elscreen と windows.el はどう違うん?
双方のメリット/デメリットぷりーず。

562 :474 :02/11/19 16:09
まだ解決しない。

emacs21 の一部プログラムから外側のネットワークにつながげる際に、めちゃくちゃ遅いです。
nslookup とかすると、ちゃんと名前は出るので、hosts とかレゾルバの設定はあってるみたい?
Lookup とか w3m-emacs とかは、ちゃんと動いているんだけども、Navi2ch や Wanderlust
mew みたいな、プログラムだけオッソイんですよ。

あと、こんなんなってる人って、折れだけ?

563 :名無しさん@お腹いっぱい。 :02/11/19 16:14
.cshrc.sunの
#^D is not available on your interactibe csh

ってどういう意味ですか?

564 :名無しさん@お腹いっぱい。 :02/11/19 16:27
>>563
あなたの対話的な csh では ^D は有効ではありません。

565 :名無しさん@お腹いっぱい。 :02/11/19 16:33
^Dの意味がわからないんですよ…。

566 :名無しさん@お腹いっぱい。 :02/11/19 16:37
どのコマンドがどの環境変数を参照しているのかを
調べるにはどうしたら良いのでしょうか?

567 :名無しさん@お腹いっぱい。 :02/11/19 16:37
>>565
Ctrl + D
つーか、スレ違い?

568 :名無しさん@お腹いっぱい。 :02/11/19 18:51
tag jump してから元の場所に戻るのに M-* (pop-tag-mark) というコマンド
があることを今さら知った。常識?

今まで C-x C-x とか C-u [SPC] とかやってたよ…

569 :名無しさん@お腹いっぱい。 :02/11/19 18:52
>>568
常識。

570 :556 :02/11/19 21:36
>>548
>>558
えーと…「ミニバッファにも」表示されてしまうお馬鹿な例なんですが(情けない…)
(cond (window-system
(setq frame-title-format
'((multiple-frames " ")
"[ "elscreen-last-message"]"
("[%b]"(buffer-file-name"[%f]"))
battery-mode-line-string))
(remove-hook 'global-mode-string 'battery-mode-line-string)))
こんな感じでタイトルバーに表示できませんか?(私はこうしています)

仰るようにリアルタイムでの更新が出来ないのが痛いところです
(add-hook 'find-file-hooks 'elscreen-show-list)
とかやってはみましたが, とてもじゃないですけど遅くて使い物になりませんでした…
何か良い解決方法はないでしょうか?




571 :556 :02/11/19 21:50
>>548
>>558
途中で送信してしまってすいません…

御二人が例として挙げておられるelispが理解出来ないので, こうして書き込んでおります
よろしければ, そのelispが何をしているのか説明しては頂けませんでしょうか?


572 :548 :02/11/19 22:30
558 も漏れです。ややこしいい上にわかりにくくてスマソ。
558 は :eval で指定された式を評価する例。文字列を返す関数なら何でも
いいわけで、せっかく作った elscreen-show-list-string を指定すれって
こと。560 は 指定した title をリアルタイムに更新する例。elscreen の
場合はここまでしなくても良いだろうって話です。

573 :556 :02/11/19 23:37
>>548
すいません… 誰がアドバイスしてくれているのかさえ把握出来てませんでした

で, 558と560を試したのですがかなり良いですね!
しかし問題は, minibuffer(?)がアクティブになったときですね
例えば C-xC-f でファイル名を入力した時に, タイトルバーが Unnamed になったまま固まることがあります
どうやらスクリーンが2枚以上ある時に起こるようです

やっぱり難しいんですかね?

574 :名無しさん@Emacs :02/11/19 23:55
Frameを4分割とかしてるんですが、どこにカーソルあるか見失う時が
あるんで、mode-lineの色をwindow事に変えたいんです。
(make-local-variable 'mode-line)
として、mode-lineのfaceを変えても、全てのwindowで、色が変っちゃい
ました。
何か方法ありますか?


575 :名無しさん@お腹いっぱい。 :02/11/20 00:01
>>574
ぜんぜん答じゃないけど、オレはカーソルを見失ったら
Windowの上端 (move-to-window-line 0)
Windowの真ん中 (move-to-window-line)
Windowの下端 (move-to-window-line -1)
などでカーソルを動かして見つけてる。


576 :名無しさん@お腹いっぱい。 :02/11/20 00:14
>>574
emacs-21.3.50 であれば mode-line-inactive という face があります。


577 :名無しさん@Emacs :02/11/20 00:38
>>576
ぬりがと
でも、俺、21.2。
今夜ビルドします->21.3.50


578 :535 :02/11/20 02:12
>>555
>Emacs-20.7では add-minor-mode()がなくて、
>コンパイルエラーになってしまいました。
># add-minor-mode()はこれからボチボチ調べてみます。
とりあえず、apelに似たような関数があったのでパッチを作りました。

begin 664 gnuserv-3.12.5.patch
M+2TM("XO9VYU<V5R=BTS+C$R+C4M;W)I9R]G;G5S97)V+F5L"3(P,#(M,#DM
M,3,@,C$Z,C`Z,#`N,#`P,#`P,#`P("LP.3`P"BLK*R`N+V=N=7-E<G8M,RXQ
M,BXU+V=N=7-E<G8N96P),C`P,BTQ,2TQ.2`Q,#HT,SHT-RXP,#`P,#`P,#`@
M*S`Y,#`*0$`@+3(W,BPW("LR-S(L,3`@0$`*("AM86ME+79A<FEA8FQE+6)U
M9F9E<BUL;V-A;"`G9VYU<V5R=BUM:6YO<BUM;V1E*0H@.SLH<'5S:&YE=R`G
M*&=N=7-E<G8M;6EN;W(M;6]D92`B4V5R=F5R(BD@;6EN;W(M;6]D92UA;&ES
M=`H@.SL)(#IT97-T("=E<75A;"D*+2AA9&0M;6EN;W(M;6]D92`G9VYU<V5R
M=BUM:6YO<BUM;V1E("=G;G5S97)V+6UO9&4M;&EN92US=')I;F<I"BLH:68@
M*&9B;W5N9'`@)V%D9"UM:6YO<BUM;V1E*0HK("`@("AA9&0M;6EN;W(M;6]D
M92`G9VYU<V5R=BUM:6YO<BUM;V1E("=G;G5S97)V+6UO9&4M;&EN92US=')I
M;F<I"BL@("AR97%U:7)E("=A;&ES="D**R`@*'-E="UA;&ES="`G;6EN;W(M
M;6]D92UA;&ES="`G9VYU<V5R=BUM:6YO<BUM;V1E("AL:7-T(&=N=7-E<G8M
M;6]D92UL:6YE+7-T<FEN9RDI*0H@"B`,"B`[.R!386UP;&4@9VYU<V5R=BUF
/<F%M92!F=6YC=&EO;G,*
`
end


579 :556 :02/11/20 05:14
elscreen-message関数から(message "%s" message)と(sit-for (or sec 3)を取り除いたelscreen-message-mineをつくり,
elscreen-show-list-message-mineから呼びます.
(add-hook 'after-init-hook 'elscreen-show-list-mine)と (run-with-idle-timer 1 t 'elscreen-show-list-mine)
を.emacs.elに設定しました

駄目ですね…
巧くいくときもあれば, cpuの97%以上を占有してフリーズする時もあります
後もう一歩って感じなんですけどねぇ…

#通販の番組ってなんであんなに怪しいんだろ…
#日本をイメージしたって… それに石切るでもって何だよ?! > コンツアープロナイフ




580 :ななしさん@Emacs :02/11/20 05:30
emacsが外側とつながらんとか、ぬかしてたヤシです。
上手くいきました。
原因はルーターの設定でした。
なんかemacsに名前解決のバグがあるとか読んだことがあったので、
妄想が広がってしまったでした。
いろいろ教えてくれた人ありがとうございました。

581 :名無しさん :02/11/20 06:19
>>574
カーソル行にアンダーラインとの設定にしてみるとかは?


582 :名無しはん@EMACS21 :02/11/20 09:19
はっはっは。すげー、term-modeでviがちゃんと動くー(笑)

ESCがviになかなか伝わらないけど、emacsのskkでviに入力が出来る(笑)

全然、実用的な技じゃないけどなんだか感動

583 :548 :02/11/20 13:47
>>556
elscreen はミニバッファが嫌いらしいので,ダメでしょう.
----BEGIN BASE64----(hoge.el.gz)
H4sICOwS2z0CA2hvZ2UuZWwAnVNNb9swDD3Hv4L1gIVKJyC7DljvPew/TJVpR6ss
uZKcbP9+lOzYbgIU2HyQQVGPH4+P2FB7VgHIRh2InJx/vW9Ma6iRJ+9fRYXzs8Ps
tiamw3Q9ujtw9sqYgnEdoKgA0LhEQelkzjTZLeD0QPYq6RPUP4wzL2NbA/LZUpBO
9QSoxxDIJTldCpHR+asPz3BSiaCfcOx8eDjUxYuNB0QbEzhjBScCXCrsKMlrzOlK
8AsDR8BHMPA1Z9ghPn3PxlFskT75I0R2A6phsH/g0157p1Wqdjvs1aCZH7Sqf2kU
wxg6eUvzMvmFkPyOOCvD+CsFZzro7eriJFA/Qg21hFpsnummuNkhyjW6QGcKkYCb
FSs5eDmRu2n6YhzX04LJ/d00Ve4ipbccp9Qd59PcRNnMpkyZ25hTc/IKVTMJBvYf
6okpXJnKA8qp30lrk/ZeUyXZP4NmbtqQa08mWZKtD6w+2CN+o7OyN+ouHbHAe6WD
B04nl/C5CabocyDmizeAhc1sFWUX2vZD8J2r7mXR5rkB/MxxVXM2muALz161vB7r
Gr0jC8rasNQn6DpeN1r7v1u0xOJoYbw29PHUZtjabiHonpdqbYTPvKOL/Wq45MUa
WL3Gj3G9cfQ7beBZnauVfNfZTbBfYz9soNxoBXGwpmi98RdoyFKi2RLVX4IqxCfr
BAAA
----END BASE64----
とかでっちあげてみました.どーでしょ?

584 :名無しさん@お腹いっぱい。 :02/11/20 17:47
manてMANPATH以外にどんな環境変数を参照していますか?

585 :名無しさん@お腹いっぱい。 :02/11/20 17:49
>>584
スレ違い。

586 :名無しさん@お腹いっぱい。 :02/11/20 18:00
質問です。教えて下さい。

emacsで複数行をまとめて編集する方法教えて下さい。
例えば複数行の先頭に\itemとまとめて入れる方法ありますか?
ABC
EDF
GHI
...

また逆に複数行の先頭から\itemをまとめて削除する方法はありますか?
\item ABC
\item DEF
\item GHI
...



587 :名無しさん@お腹いっぱい。 :02/11/20 18:02
>>586
> 例えば複数行の先頭に\itemとまとめて入れる方法ありますか?
C-x r t

> また逆に複数行の先頭から\itemをまとめて削除する方法はありますか?
C-x r k
M-x replace-regexp

588 :556 :02/11/20 18:01
>>548
ありがとうございます!!
って…これって *scratch* とかに張り付けた後に M-x base64-decode-region してから hoge.el.gz として保存すれば良いのでしょうか?
また, その際に指定する encode は何でしょうか?
Emacs21 + Mule-ucs + navi2ch だと utf-8 かそれ以外かを選択しる!って出て来て失敗するんですよ…

下らなさ過ぎますが教えて下さい


589 :名無しさん@お腹いっぱい。 :02/11/20 18:04
>>588
M-d u

590 :556 :02/11/20 18:18
>>589
M-d u で uudecoded を選択するとエラーになります…
M-d b で base64 を選択するとファイルにはしてくれますが
> gzip -d hoge.el.gz
hoge.el.gz:
gzip: hoge.el.gz: invalid compressed data--format violated
>
となります…

何がおかしんだろ?


591 :名無しさん@お腹いっぱい。 :02/11/20 18:32
>>583 kill したときに挙動不審になったので
((>= i 10) (elscreen-goto0 s))

((>= i 10)
(when (elscreen-get-winconf s) (elscreen-goto0 s))
にしないとダメぽ?

592 :名無しはん@EMACS21 :02/11/20 19:51
global-set-keyなんかで使うkeyのvector表記、とくに変な、例えば[半角/ 全
角]とか[前候補 変換(次候補)]、[カタカナ ひらがな]のようなkeyの表記方法っ
てどうやって調べるのでしょうか。





593 :556 :02/11/20 19:54
M-x describe-key

#調べても分からないな… 何故だろ?

594 :名無しはん@EMACS21 :02/11/20 21:15
>593

thnx。ワカたよ。

[henkan][muhenkan][zenkaku-hankaku][hiragana-katakana]だたよ。


595 :556 :02/11/20 21:23
>>594
御役に立てて嬉しいです

そしてEmacsを再起動したら何故か583がencode出来て尚嬉しい
#そうだよ, 俺が分からなかったのは何故にencode出来なかったのかだ…


596 :名無しさん@お腹いっぱい。 :02/11/20 22:28
>>595
encode??


597 :名無しさん@お腹いっぱい。 :02/11/20 22:37
outline-modeの見出し(outline-regexp)を
1. -----
1.1 -----
1.1.1 -----
1.2 -----
2. -----
3. -----
こんな感じにしたいんですが、
正規表現をどう指定すればいいかわかりません。
どなたか教えていただけないでしょうか?


598 :名無しさん@お腹いっぱい。 :02/11/20 23:29
"^\\([0-9.]+\\) ----" とか "^\\([0-9]+\\(\\.\\|\\(\\.[0-9]+\\)*\\)\\) ----"
とか考えたが、桁数でトラブル起きそうな気もする。みんなどーやってるんだろう?

599 :名無しさん@Meadow :02/11/20 23:38
厨な質問ですが、regionの中だけで置換するには、narrow-to-region
でやってから、widenするって方法しかないんでしょうか。
replace-string-regionなんてないみたいだし・・・


600 :名無しさん@お腹いっぱい。 :02/11/20 23:44
>>599
search-forward-regexp してから replace-match とか?

601 :597 :02/11/21 00:14
>>598
ありがとうございます!
前者のパターンで自分が望むものになりました。
でも内容を理解できない^^;
とりあえず今は使えるようになって感謝です。

602 :名無しさん@お腹いっぱい。 :02/11/21 00:24
>>597,598
http://groups.google.com/groups?selm=usnz8luy4.fsf%40pobox.com


603 :名無しさん@お腹いっぱい。 :02/11/21 00:25
>>601
前者だと "...1 ----" とか "1..2 ----" とかでもマッチしちゃうぞ?いーのか?

604 :名無しさん@お腹いっぱい。 :02/11/21 03:10
日本語の検索方法ありませんか?

605 :名無しさん@お腹いっぱい。 :02/11/21 03:12
>>604
migemo


606 :556 :02/11/21 03:17
>>548
ありがとうございます, 隨分と使いやすくなりました!
今までhoge.elを自分なりに読んでいたのですが…やっぱりelispって難しいですね(w

タイトルバーがリアルタイムに変更できるように設定する方法を考えてみます
でも I hate Minibuffer ってことはふつーに使えばリアルタイム更新出来るってことですよね?!

#やっぱ, 俺って頭悪いな…

607 :名無しさん@お腹いっぱい。 :02/11/21 07:14
emacs終了時に.emacs.elをbyte-compileする設定をしてあります
これを~/elisp/*.elに適用する良い方法はありませんか?


608 :名無しさん@お腹いっぱい。 :02/11/21 08:15
意味がわかりません。

609 :名無しさん@Meadow :02/11/21 09:53
>>599
interactiveにって事だったら、
(transient-mark-mode 1)しておくとregion内だけで置換できますよ。
Emacs20, 21で確認


610 :名無しはん@EMACS21 :02/11/21 12:07
vier用に無変換キーにESCを割り当てようと考えてるのですが

(global-set-key [muhenkan] ??? )

???はどう記述すりゃあいいんでそうか。


611 :nobodyさん :02/11/21 12:09
>>609
うおっ、できますた。
.emacsに書いといて大丈夫ですよね。
ありがとうございますた。
>>600さんのは、どうもうまくいかなくて。でも、ありがd。


612 :名無しさん@お腹いっぱい。 :02/11/21 12:19
>>607
byte-recompile-directory ?


613 :名無しさん@お腹いっぱい。 :02/11/21 12:26
ESC 用のキーマップを割り当てたいなら,
(global-set-key [muhenkan] esc-map)
でいーんでない?
参考文献: info の Prefix keymaps

614 :599=611 :02/11/21 16:27
今、気がつきます多謝。
>>600さんのは、elispプログラム作る場合の方法でしたか。
うまく行かなくてなんて書いてスマソ。


615 :名無しはん@EMACS21 :02/11/21 19:08
>613
thanks

(global-set-key [muhenkan] esc-map)

ではエラーが出て駄目だったけど、key-mapの割り当てでドキュメント探してみます。

616 :名無しさん@お腹いっぱい。 :02/11/21 19:25
>>615
うちの GNU Emacs 21.2 ではうまくいくけどな。
どんなエラーが出たの?

617 :名無しさん@お腹いっぱい。 :02/11/21 19:45
>606 リアルタイムに更新は少なくとも現状では無理だと思う.各スクリーンの
状態をリアルタイムで知る簡単な方法はないから.お手軽にもっと細かくやり
たきゃ defadvice をかける関数を増やすくらいかな.

# ミニバッファ内では elscreen の機能が使えないのも試してみれ.ふつーに
# できんから hate ってしてみたわけだが.

618 :615 :02/11/21 21:19
>616

良く見たらエラーじゃなかった罠。手動でC-xC-eしたらmini-bufferにいっぱ
い文字列が出たのでエラーと重いこんでました。良くみたらesc-mapを表示し
てただけですた。

でもこれだとprefixの方はいいんですがviperのinsert→commandには使えない罠。


619 :名無しさん@お腹いっぱい。 :02/11/21 21:29
>>618
こう?
viper 使いじゃないんでよく知らんけど。

(define-key viper-insert-kbd-map [muhenkan]
'viper-intercept-ESC-key)

620 :名無しさん@お腹いっぱい。 :02/11/21 21:30
>>618
Emacs よりも上のレイヤーで
キーを割り当てた方が幸せかも。

621 :618 :02/11/21 23:05
>619

サンクス。できました。そうだviperを調べれば良かったんすね。

>620

ktermのviもできたら嬉しいので、Xのkeymapも探してみます。



622 :606 :02/11/22 03:03
>>617
そうですか,やっぱりリアルタイム更新は難しいですか…
でも >>558>>560 で書かれた設定を用いるとある程度は更新することが出来ますよね?

ミニバッファでのelscreenの機能ですが…
;(add-hook 'minibuffer-setup-hook 'elscreen-minibuffer-setup)
;(add-hook 'minibuffer-exit-hook 'elscreen-minibuffer-exit)
(defun elscreen-minibuffer-setup ()
"Disable elscreen-prefix-key when minibuffer become active."
(global-set-key elscreen-prefix-key 'elscreen-minibuffer-message))
(defun elscreen-minibuffer-exit ()
"Enable elscreen-prefix-key when minibuffer become inactive."
(global-set-key elscreen-prefix-key elscreen-map))
というのをelscreen.elで発見しました
試してみます


623 :名無しさん@お腹いっぱい。 :02/11/22 03:08
モード毎に違うバックグラウンドカラーを使う事はできますか?
また、できるとすればその方法を教えてください。
Emacs21です
よろしく m(_ _)m

624 :名無しさん@お腹いっぱい。 :02/11/22 03:27
>>623
変えたいモードのフックに
(set-background-color "Grey");
とか入れればいいんじゃないですかね?
あぁ、でもこれじゃフレーム全体のカラーが変っちゃうか。


625 :606 :02/11/22 05:23
>>617
何となく擬似的なリアルタイム更新に成功したので御報告します
frame-title-formatに"[ "(:eval (elscreen-screen-list-string))"]"と記述します
で, おもむろに
(run-at-time t 1
(lambda ()
'((:eval (elscreen-screen-list-string)))))
と設定してやれば自動的に更新されて幸せになれます!!
設定は全て617さんから頂いたものでここまで幸せになれたので, 感謝しております...

しかし問題が1つだけあります…(非常に個人的ではありますが…)
どうやらelscreen-mode-to-screen-alistが無視されているらしく, navi2chを使用するとちょっと悲しくなります
もう少し頑張って, 解決策を考えてみようと思います


626 :名無しさん@お腹いっぱい。 :02/11/22 10:00
>>623
GNU Emacs ではバッファ毎に異なるバックグラウンドは設定できない。
バッファ全体に overlay を置いて、その face にバックグラウンドを指定すると、
それっぽいことはできるかもしれない。

XEmacs であれば specifier で簡単にできるらしい。


627 :623 :02/11/22 10:55
>>624 >>626
ありがとうございます。
Emacsでもサポートされるまで待つ事にします。

628 :名無しさん@お腹いっぱい。 :02/11/23 02:35
shiftキー押しながらenterキーになにか割り当てる
ことはできないの?
試しに C-h k shift押しながらenter
してみたら、
RET runs the command newline
って表示された。

629 :名無しさん@お腹いっぱい。 :02/11/23 02:56
端末では普通無理だね。shift が押されているかどうかは、
送られる側には関知できないからね。

X 上だと
(define-key global-map [(shift return)] 'hoge)
などとできるけど

630 :名無しさん@お腹いっぱい。 :02/11/23 06:01
>>629
X上で出来れば充分です。その方法が知りたかった。
サンクス!

631 :606 :02/11/23 06:33
(defun elscreen-screen-list-string ()
(interactive)
(if (string-match "Minibuf" (buffer-name (current-buffer)))
"*Minibuffer active*"
(do ((lst-mine nil) (s (elscreen-get-current-screen)) (i 0 (+ i 1)))
((>= i 10)
(when (elscreen-get-winconf s) (elscreen-goto0 s))
(apply #'concat
(mapcar (lambda (e) (concat (int-to-string (car e))
(if (eq (car e) s) "+ " "- ")
(cdr e) " "))
(nreverse lst-mine))))
(when (elscreen-get-winconf i)
(elscreen-goto0 i)
(setq elscreen-mode-names (elscreen-get-mode-list))
(setq elscreen-buffer-names (elscreen-get-buffer-name-list))
(cond
((string-match "^navi2ch-" elscreen-mode-names) (setq lst-mine (cons "navi2ch" lst-mine)))
((string-match "^wl-" elscreen-mode-names) (setq lst-mine (cons "Wanderlust" lst-mine)))
((string-match "^msn-" elscreen-mode-names) (setq lst-mine (cons "MSN" lst-mine)))
(t (setq lst-mine (cons (cons i (elscreen-get-buffer-name-list)) lst-mine))))))))


632 :606 :02/11/23 06:37
特定のmajor-modeではbuffer名を表示させたくないこともあります
そこで >>617さんのコードを >>631 の様に弄ってみました
が, 思ったように動きません…

elisp関係の情報を漁りながら書いたのですが, きっと何かが激しく間違っているのだろうと思います
良ければ御指摘を頂けませんでしょうか?


633 :名無しさん@お腹いっぱい。 :02/11/23 09:31
ある領域のテキストにマージンとかパディングを設定することって
出来るのでしょうか?
face で出来るかなーと思ってたんですけど、
それらしい設定無いみたいだし。

それと、face の設定で Box という項目がありますが、
あれを設定すると各行毎に箱が付いてしまいます。
選択した領域の淵のみ囲むにはどうやったらいいんでしょうか?


634 :名無しさん@お腹いっぱい。 :02/11/23 15:25
>>632
> 特定のmajor-modeではbuffer名を表示させたくないこともあります
もともと、elscreen には
elscreen-buffer-to-screen-alist
elscreen-mode-to-screen-alist
つーもんがあります。elscreen.el を読みましょう。


続きを読む

掲示板に戻る 全部 前100 次100 最新50
名前: E-mail (省略可) :

read.cgi ver5.26+ (01/10/21-)