トップページunix
985コメント279KB

Emacs Part 12

■ このスレッドは過去ログ倉庫に格納されています
0001名無しさん@お腹いっぱい。NGNG
目が覚めたあなたは、コーヒーを沸しつつディスプレイの電源を入れ、深緑色
(下側に白横筋一本あり)の画面で、gnus+shimbunでメールやスラドを読み、
navi2chでunix板やハン板を巡回し、w3mでWebを渉猟し、その間にEmacs本体と
常用パッケージの cvs update && make install を実行(あまりに多すぎるので
スクリプト化しています)し、昨晩作ったプログラムを gdba でデバッグし、
yatex && dvipdfmx で報告書を書き、… とそのとき突然、*Backtrace* に落ちた
あなたは(当然、debug-on-errorは常時 t です)、舌打して他人のバグまでも
修正し、親切にもパッチを作者に送り、ついでに新しく思い付いたハックに
いそしむ…時間がないのでとりあえず、howmのTODOにアイデアを書き加え
(500近くたまってたりします)、scbibにお気に入りのジャーナル論文を追加し、
tdiaryに繰り言を書きなぐります。

そんなあなたも、JavaだけはEclipseに浮気したことをRMS神の祭壇の前で懺悔します。
朝の祈りを済ませたあなたには、今日もEmacsに明け暮れる一日が待っています。
0151名無しさん@お腹いっぱい。NGNG
>>150
つっこみどころが大杉で言葉に困ってるの
0152名無しさん@お腹いっぱい。NGNG
>>151
まあな。
情報足りないし、ググったら出てくるし、Emacs古くて萌えないし、
たった一時間でレスを要求するときたらもう。。。
0153名無しさん@お腹いっぱい。NGNG
>>149
FreeBSD (プッ
0154149NGNG
FreeBSDスレで半日放置されてましたもんで。すいません。
つっこみどころ大杉と言われて.emacsを「虚心に」「最初」からじっくり読んだら
分かりますた。うまくいきましたYO。
>>151ありがとうございました。
0155名無しさん@お腹いっぱい。NGNG
なんで今さら Emacs20 なんだ。
0156名無しさん@お腹いっぱい。NGNG
c++-mode で、

class hoge {
public:

の様に、public: や private: で、インデントされません。
是非インデントさせたいのですが、どうすればよいのでしょう?
0157名無しさん@お腹いっぱい。NGNG
>>156
M-x c-submit-bug-report
0158名無しさん@お腹いっぱい。NGNG
>>151だが、>>149になんて反応したらいいんだろう。

>>156
C-c . ellemtel とか。マイナーだけど。
0159名無しさん@お腹いっぱい。NGNG
>>158
素直に感謝されとけw
0160名無しさん@お腹いっぱい。NGNG
金曜になると無性にパンツが被りたくなる
0161名無しさん@お腹いっぱい。NGNG
結局のところ、おまいら、C-hは、どの機能に割り当てていますか。
0162名無しさん@お腹いっぱい。NGNG
backward-delete-char(-untabify) 以外は極めて稀じゃないの?
他のエディタの模倣してるんでもなきゃ。
0163名無しさん@お腹いっぱい。NGNG
そうなの?

Helpに割り当てているや氏が多そう。デフォルトでもそうだし。
http://www.google.co.jp/search?q=Emacs+C-h&hl=ja&lr=lang_ja&ie=UTF-8&oe=UTF-8&sourceid=mozilla-search
0164名無しさん@お腹いっぱい。NGNG
あ、デフォのままという選択肢もありなのね。
ちなみに 2chとか MLで "C-h i" みたいに説明があっても、
それを書いた人が実際に C-hのままで使ってるとは限らないので、
そのあたりは考慮されたし。
0165名無しさん@お腹いっぱい。NGNG
>>162
C-h に DEL と同じ機能を割り当てる方が
> 他のエディタの模倣してるんでもなきゃ。
だと思うが。
0166名無しさん@お腹いっぱい。NGNG
細かいツッコミだな(w
0167名無しさん@お腹いっぱい。NGNG
そもそもC-hにdeleteを割りあてる起源ってなんだったんでしょう?

0168名無しさん@お腹いっぱい。NGNG
ところで俺、C-h k C-hしても云とも寸とも言わないので、どうやったらC-HをC-hにできるのかなぁと、ずっと思っていたんだが。
M-x helpに割り当てられテイルの?
0169名無しさん@お腹いっぱい。NGNG
C-h bしてみれば分かるけど、
(define-key global-map "\C-H" 'help-command)
でいいんでないかな?
C-Hが window managerに奪われるので手元で確かめられないが。
0170名無しさん@お腹いっぱい。NGNG
>>167

ASCIIの8がバックスペースで'h'のキーコードが8だからじゃない?
'j'(0x0A)はnewlineで'm'(0x0D)はcarriage returnだし。
0171名無しさん@お腹いっぱい。NGNG
ストールマソの使ってたキーボードで、現能の BS に相当するキーが
やたら打ちやすい位置にあったのが問題らしいね。
0172171NGNG
現能→現在
0173名無しさん@お腹いっぱい。NGNG
emacs-unicode-2ビルド成功!
0174名無しさん@お腹いっぱい。NGNG
>>173
おめ
0175名無しさん@お腹いっぱい。NGNG
>>164
> ちなみに 2chとか MLで "C-h i" みたいに説明があっても、
> それを書いた人が実際に C-hのままで使ってるとは限らないので、
> そのあたりは考慮されたし。

C-h をわざわざバインドしなおすような人は
C-h i って書いたら分かると思う案
0176名無しさん@お腹いっぱい。NGNG
>>168
>どうやったらC-HをC-hにできるのかなぁと、
(load "term/keyswap")
したら
C-h が DEL になって
C-H が help になるのはオレ (Meadow) だけですか

X なら効くと思うけど tty だと無理だろね
0177176NGNG

normal-erase-is-backspace-mode ってのもあったね

起動するシェルの stty の erase が ^H なら
C-h は DEL になるんだったっけ

0178176NGNG
>>177
>起動するシェルの stty の erase が ^H なら
自分で書いておきながら分かりにくいな

Emacs を起動するときに
stty の erase が ^H なら

だな
0179名無しさん@お腹いっぱい。NGNG
>>176
コレダ(・∀・)!!

なんでttyじゃ駄目なの?
0180名無しさん@お腹いっぱい。NGNG
ところで、xtermだとC-hでhelpがでて、ktermだとBSになっているんだけれども、これはどこを堂弄れば良い訳?
0181名無しさん@お腹いっぱい。NGNG
browse-urlで、ブラウザ(/usr/bin/htmlview=firefox)を立ち上げているまま、EmacsをC-x C-cで終了させると、ブラウザも死ぬんですが、どうすれば良いですか。
0182名無しさん@お腹いっぱい。NGNG
>>179
shift でビットを立てても ctrl でキャンセルされてしまうから、
結局対応するアスキーコードが C-h(0x8) になってしまう。
0183名無しさん@お腹いっぱい。NGNG
IbufferをIbufと、モードラインに表示する方法を教えてけれ。

よくメジャーモードとマイナーモードの違いがわからん。

(add-hook 'ibuffer-mode-hook
'(lambda ()
(setq mode-name "Ibuf")))

じゃ、だめぽ。
0184名無しさん@お腹いっぱい。NGNG
>>183
ちょっとソース見てみたけど ibuffer-update-mode-name() でダイナミックに
書き換えてるから、こいつを置き換えるとかしないとだめっぽいね。
0185名無しさん@お腹いっぱい。NGNG
>>183
>(add-hook 'ibuffer-mode-hook
ibuffer-mode-hooks じゃないの?
バージョンが違うのかな?

Ibuffer の mode-name は "Ibuffer by alphabetic" とかだけど
それを "Ibuf" だけにしたいってこと?
0186名無しさん@お腹いっぱい。NGNG
例えば、こんな感じのCのソースから
--- foo.c ----
double foo=0;
int hoge(int x)
{
...
}
void fuga()
{
..
}
static char *buga(int x)
{
..
}

こんな感じのヘッダファイルを生成する便利な機能はないでしょうか?

--- foo.h ----
#ifndef _FOO_H
#define _FOO_H

extern double foo;

int hoge(int x);
void fuga();

#endif
なければ自分でelispで書こうと思っているんですけど。
0187名無しさん@お腹いっぱい。NGNG
すでにあるかは知らないけど、ちゃんとしたのを自分で作るときは、Semantic Bovinatorが使えるかも。
強力すぎる気もするけど。
http://cedet.sourceforge.net/semantic.shtml
0188名無しさん@お腹いっぱい。NGNG
>>186
cproto使うというのは梨?
0189186NGNG
ありがとうございます。

>>187
ん〜。ほんと強力すぎますね。
簡単なパターンマッチングで済ませるつもりだったので。
ただ、便利そうなので別の機会に利用するかもです。

>>188
いいですね。まさに探していた物です。
cproto の emacs front end を作ることにしました。
0190186NGNG
できました。
(defvar cproto-program "/usr/bin/cproto")
(defvar cproto-args '("-v" "-I/usr/include/glib-1.2"))
(defun cproto-header (base-name)
(format "#ifndef _%s_H\n#define _%s_H\n\n" base-name base-name))
(defun cproto-footer (base-name)
"\n\n#endif")

(defun cproto ()
(interactive)
(string-match "\\([^/\\.]*\\)\\." buffer-file-name)
(let ((base-name (match-string 1 buffer-file-name))
(p (make-marker)))
(set-marker p (point))
(goto-char (point-min))
(insert (cproto-header (upcase base-name)))
(let ((source (concat base-name ".c")))
(apply 'call-process cproto-program nil t nil source cproto-args))
(goto-char (point-max))
(insert (cproto-footer (upcase base-name)))))
0191186NGNG
ああ、崩れちゃった・・。

foo.h を開いた状態でcprotoを呼ぶと

cproto-header
cproto-programの出力
元々のfoo.hの内容
cproot-footer

という感じになります。cproto-program に渡すCソースは buffer-file-nameの
拡張子をcに変更したものを使いますが、この辺はもうちょっと
柔軟にできるといいかも(どうするんだろう?)。
0192名無しさん@お腹いっぱい。NGNG
(set-marker p (point))の意味がわからん。

0193名無しさん@お腹いっぱい。NGNG
わたしだけでしょうか

GNU/Linux(Fedora CORE)で、M-x manが化ける

0194名無しさん@お腹いっぱい。NGNG
おれもだよ Womanつかってる
0195名無しさん@お腹いっぱい。NGNG
>>193
woman 使えば?
0196名無しさん@お腹いっぱい。NGNG
>>193
> わたしだけでしょうか
>
> GNU/Linux(Fedora CORE)で、M-x manが化ける

日本語のコードが UTF-8 だからでしょうね。emacs に
Mule-UCS を入れれば解決ですよ。
0197186NGNG
>>192
ですね。最初は、一番後ろに(goto-char p)をつけていたのですが、
いろいろ弄っているうちに消えてしまったみたいで。
0198名無しさん@お腹いっぱい。NGNG
Emacs で、AA モードとか、ありますか?
フォントが、モナーになって、アスキーアートを書くためのモードです。
テンプレートで、基本的なアスキーアートが挿入されたり。

そんな感じなモードありますか?
0199名無しさん@お腹いっぱい。NGNG
ある
0200名無しさん@お腹いっぱい。NGNG
>>198
picture-mode拡張すれ。navi2ch使えばAA登録できるぞ。
0201名無しさん@お腹いっぱい。NGNG
最近の CVS HEAD でいくつかの機能が無限ループになるなーと思ってたら、
sentence-end 周辺の変更が原因だった。解決してちょっと嬉しい月曜の昼。
0202名無しさん@お腹いっぱい。NGNG
>>201
いつの話だよ。
0203名無しさん@お腹いっぱい。NGNG
Lisp_Misc_Free でコケるのは直ったのかしら。
それっぽい修正入ったけど。
0204名無しさん@お腹いっぱい。NGNG
Lists of integers (garbage collection statistics) are normal output
while building Emacs; they do not indicate a problem.
((9176 . 5844) (4240 . 0) (538 . 0) 15683 18788 (7 . 4) (17 . 0) (923 . 1975))
Loading loaddefs.el (source)...
Symbol's value as variable is void: \(autoload
0205名無しさん@お腹いっぱい。NGNG
>>202
昨日
0206名無しさん@お腹いっぱい。NGNG
初心者です。どうしても分からないことがあり、一つだけ質問させていただきたいです。
場違いでしたらスルーして下さいませ。

Emacsの文字の大きさを、デフォルトの14から16に変えたところ、
起動するたびに、ウインドウが画面の右と下にはみ出すようになりました。

どうやら、自分がフォントセット14でいると勘違いしてるようなのです。
そして同時に、起動の時に自動的に最大化しに行きます。
と言いますのも、はみ出した状態からフレームメニューの「元の大きさに戻す」を押すと、
前に閉じた時と同じ状態に戻るからです。

本を買ってきて読みますと、~/.Xresourcesに手を加えなさいとあります。
そこで、「(タブ)Emacs*geometry: 50x30+10+10」を挿入し、再起動しましたが変化ありません。
GNOMEのコントロールセンターにある、「配置」をのぞいて、
「自動的にウインドウの...]をいじってみましたがダメでした。

直すには、何かコツがいるのでしょうか?

[ Emacs20.7 color-mate使用 ]
0207206 つづき NGNG
そう言えば、
~/.emacs-faces.elにこんな部分がありました。
(if window-system
(progn
(load "~/.emacs-fontset.el")
(setq default-frame-alist
(append
'((font . "fontset-16") ;; デフォルトフォントセット
(width . 80) (height . 40) ;; ウィンドウサイズ
)
default-frame-alist))))
数字を変えましたが変化ありませんでした。

自分はcolor-mateのMidNightを使ってるので、
/usr/share/emacs/site-lisp/color-mate/theme/MidNight.el
の中の以下の40、80の部分を、; をはずした上で変えましたがダメでした。
(setq color-mate:theme
'(
(frame-background-color . "rgbi:0.01/0.001/0.05")
(frame-foreground-color . "white")
;(frame-height . 40)
;(frame-width . 80)

同じように、~/.xemacs.elの以下も影響なしですた。
(setq default-frame-alist (append (list '(cursor-color . "purple")
'(width . 80)
'(height . 40))
default-frame-alist))

~/.emacsや~/.emacs.elには関係ありそなのは、見あたりません。
文字の大きさを変えて成功したのは、~/.emacs-color.elでしたが、
ここにはwindow の大きさに関するものは、(自分が見た限りでは)見当たりませんでした。
0208名無しさん@お腹いっぱい。NGNG
utf-8で書かれたXMLファイルをEmacsで読み書きしたいと思います。
必要な設定を教えてください。普段以下の設定で日本語を扱っています。

(set-language-environment "japanese")
(set-default-coding-systems 'euc-jp-unix)

(set-terminal-coding-system 'euc-jp-unix)
(set-keyboard-coding-system 'euc-jp-unix)
(set-buffer-file-coding-system 'euc-jp-unix)
0209名無しさん@お腹いっぱい。NGNG
>>206
結局やりたいことは何なの?
emacs の起動時の大きさを制御したいの?
Xresources が効かないなら多分 gnome のせいだね。
0210名無しさん@お腹いっぱい。NGNG
>>208
mule-ucs 使えばいいんでないの。
0211名無しさん@お腹いっぱい。NGNG
>>210
emacs-21.3.50を使ってたんですが、何を血迷ったか--disable-nlsにして
ビルドしてしまっていました。出なおしてきます。。。
0212206NGNG
>>209 おっしゃる通りです。
gnomeの設定で直せないとなると、もうあきらめた方がいい、ということですかね。
いえ、大した問題ではないのですが、毎回起動するごとに大きさを調整するのが
だんだんうっとうしくなってきたものですから。
レスありがとうございました。
0213208 NGNG
http://groups.yahoo.co.jp/group/emacs21-users-ja/message/832
こちらを参考に、208の設定に加えて、

(utf-translate-cjk-mode 1)

という1行を.emacsに追加しただけで全て上手くいきました。
0214名無しさん@お腹いっぱい。NGNG
>>212
www.bookshelf.jpにフレーム位置、サイズの記憶のelisp設定が転がっていたなぁ
0215206NGNG
ttp://www.bookshelf.jp/soft/meadow_30.html#SEC376
これですね。情報ありがとです。
さっそくやってみます。
0216206NGNG
>>207さん
やってみました。
張り込んで、ウインドウの大きさを変更し、C-x C-cで閉じて、起動しなおしました。
残念ながら、はみ出します。


ただ、~/.framesize.elはちゃんと窓の大きさを把握しているみたいで、
ここの数字は、*scratch*画面で、高さと幅を C-j で調べたのと一致していました。

$ cat .framesize.el
(delete 'width initial-frame-alist)
(delete 'height initial-frame-alist)
(delete 'top initial-frame-alist)
(delete 'left initial-frame-alist)
(setq initial-frame-alist (append (list
'(width . 115)
'(height . 40)
'(top . 30)
'(left . 2))
initial-frame-alist))


(frame-height)
40
(frame-width)
115


起動時にうまく読み込めてないのが原因ですかね。
0217名無しさん@お腹いっぱい。NGNG
>>207
板違い、Vine スレヘ ゴ
0218名無しさん@お腹いっぱい。NGNG
>>216
とにかく gnome にウィンドウの大きさを記憶させないようにするのが先では?
0219206NGNG
>>217
すみません、emacsに詳しい方がいっぱいいらっしゃりそうだったので。。
了解しましたです。

>>218
どうすれば、、、
0220名無しさん@お腹いっぱい。NGNG
>>219
だから、Vine 固有のことをここで聞くなっての。
0221209NGNG
>>217=220 ですか?
なんで vine だってわかったの?
ょっとしてエスパーの方ですか?
0222名無しさん@お腹いっぱい。NGNG
以前 Vine使ってたとか、
今も使ってるけど、ディストリ固有の話題はそっちでやれという
常識を持ち合わせた人間がいるって事よ。
0223名無しさん@お腹いっぱい。NGNG
ハァ?
0224名無しさん@お腹いっぱい。NGNG
アハ!
0225名無しさん@お腹いっぱい。NGNG
~/.emacs-face.elってVineぐらいしか使ってないんでないの?
だから、Vine行けってことで。
0226名無しさん@お腹いっぱい。NGNG
たしかに初心者、20.7、color-mate、gnomeあたりでvineぽいよなァ。
でも、それだけでディストリ問題だと断言できる香具師は
ある意味ネ申かもw
0227206NGNG
解決しました。
.Xresources の中の emacs*geometry: のラインを、*見落としてた* のが原因です。
ここに入る数字が、ウインドウの起動時の大きさを、強力に決定していました。
その強力さは、gnomeの設定(配置)を無意味化するほどでした。
今は、この部分をコメントアウトし、>>214さんの方法で、
起動時のウインドウ位置を自由に決められるようになっています。

最初に手をつけたところに原因があったので、盲点となってずいぶん
遠回りをしてしましたが、結果以上にいろいろなことを学ぶことができました。
アドバイスをくれた先輩がた、ありがとうございました。
0228名無しさん@お腹いっぱい。NGNG
hexl-mode はファイルを16進法で見る時に便利なのですが、
ファイルを2進法で表示してくれるモードどっかにありますか?
0229名無しさん@お腹いっぱい。NGNG
みんな元気ー?
0230名無しさん@お腹いっぱい。NGNG
半分の人が日常のあいさつにも困るようになり、
残りの半分が後追い自殺するスレはここですか?
emacs が死滅すると。
0231名無しさん@お腹いっぱい。NGNG
EMACS はみんなに愛されて幸せだね。
0232名無しさん@お腹いっぱい。NGNG
iso-2022-7bit のバッファの、「ぢ」の文字ところで C-u C-x = すると
file code: ESC 0x24 0x42 (encoded by coding system iso-2022-7bit)
となりますね。「ち」なら
file code: ESC 0x24 0x42 0x24 0x41 (encoded by coding system iso-2022-7bit)
なので正しくは ESC 0x24 0x42 0x24 0x42 ですよね。
0233名無しさん@お腹いっぱい。NGNG
21.3 と 21.3.5でかくにん。しかし特徴のある文体だな。
0234名無しさん@お腹いっぱい。NGNG
>>232
encode-coding-char が bug ってますね。
「ヂ」や「安」なんかは、最後の 42 が表示されなかったり。
0235名無しさん@お腹いっぱい。NGNG
>>232
ちょっといぢってみました。

--- /usr/local/share/emacs/21.3.50/lisp/international/mule-cmds.el.bak2004-05-15 13:37:54.000000000 +0900
+++ /usr/local/share/emacs/21.3.50/lisp/international/mule-cmds.el2004-05-22 15:51:38.000000000 +0900
@@ -2542,8 +2542,13 @@
i1 (length enc1)
enc2 (encode-coding-string str2 coding-system)
i2 (length enc2))
- (while (and (> i1 0) (= (aref enc1 (1- i1)) (aref enc2 (1- i2))))
-(setq i1 (1- i1) i2 (1- i2)))
+
+ ;; Avoid out of range
+ (setq enc1 (concat enc1 " "))
+
+ (setq i2 0)
+ (while (and (< i2 i1) (= (aref enc1 i2) (aref enc2 i2)))
+ (setq i2 (1+ i2)))

;; Now (substring enc1 i1) and (substring enc2 i2) are the same,
;; and they are the extra control sequences at the tail to
0236名無しさん@お腹いっぱい。NGNG
モードラインに表示されているバッファ名のフェイスだけを変える方法ってないすかね。

;; develock でモード名のフェイスは変えられることを知って、やってみたら(・∀・)イイ!!
0237名無しさん@お腹いっぱい。NGNG
teratermからxemacs を使っているのですが、
日本語を入力して、ctl+bでカーソルを戻すと文字がどんどん化けていきます.
なんだか、1バイトずつカーソルが動いているような感じです.
どうやったら直せるのでしょうか?
0238名無しさん@お腹いっぱい。NGNG


>>228
> hexl-mode はファイルを16進法で見る時に便利なのですが、
> ファイルを2進法で表示してくれるモードどっかにありますか?
そういえばそういうの見たことないなー
ありそうなんだけどね。
0239名無しさん@お腹いっぱい。NGNG
>>236
(let ((s (car (default-value 'mode-line-buffer-identification)))
(val 'italic))
(put-text-property 0 (length s) 'face val s))
0240 ◆QANoNotan. NGNG

みんな、今日は元気?
みんなであいさつ運動始めようか
0241名無しさん@お腹いっぱい。NGNG
ノノタン・・・
0242名無しさん@お腹いっぱい。NGNG
みきてぃ・・・
0243名無しさん@お腹いっぱい。NGNG
げんきだよ、
ノノタソ
0244名無しさん@お腹いっぱい。NGNG
ののたんののたんののたーん
ののたんののたんののたーん
ののたんののたんののたーん
ののたんののたんののたーん
0245名無しさん@お腹いっぱい。NGNG
>>228
> hexl-mode はファイルを16進法で見る時に便利なのですが、
> ファイルを2進法で表示してくれるモードどっかにありますか?
折れもそれほしい
だれか作ってよ!!
0246名無しさん@お腹いっぱい。NGNG
>>245
> >>228
> > hexl-mode はファイルを16進法で見る時に便利なのですが、
> > ファイルを2進法で表示してくれるモードどっかにありますか?
> 折れもそれほしい
> だれか作ってよ!!
作るのは簡単だろうけど、こんなの何に使うのよ?
0247名無しさん@お腹いっぱい。NGNG
通信屋さん?
PPPだかHDLCだかのセッションを2進数で読んでる人を見たことある。
0248名無しさん@お腹いっぱい。NGNG
>>246
> 作るのは簡単だろうけど、こんなの何に使うのよ?
いや、例えば画像のLSBにイメージを隠されているかどうかとかが
わかったり、その他いろんな遊び方ができそうじゃん。
0249名無しさん@お腹いっぱい。NGNG
>>264
binary-mode きぼんぬ。
0250名無しさん@お腹いっぱい。NGNG
od でいいじゃん
0251名無しさん@お腹いっぱい。NGNG
>>250
それは decimal か octal か hexadecimal でしか表示してくれないんじゃない?
それにある特定の動作を関数にしてそれをキーバインドしたいし、
色もほしいような気がする。やっぱないんかな
■ このスレッドは過去ログ倉庫に格納されています