トップページ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に明け暮れる一日が待っています。
0090名無しさん@お腹いっぱい。NGNG
>>89
それより、(defalias 'first 'car) のほうがのぞましい
0091名無しさん@お腹いっぱい。NGNG
first を使わないように書き換えるのがいいんじゃないかな
009286NGNG
>>90
それいれてみると今度はsecondがないそうです。確かlispでは(car (cdr list))で
secondだったっけかな・・・ここでどう書くかわかりませんが
>>91
自分ではfirstは使ってないんですがどうなんでしょう。appendとかの中で使っている
のかな??
0093名無しさん@お腹いっぱい。NGNG
>>92
second も cl だな。

> 自分ではfirstは使ってないんですが
>>3 読んで backtrace 取ってみたら?
0094名無しさん@お腹いっぱい。NGNG
WinのMeadowで編集したファイルをemacsで開くと
\documentclass[a4paper,12pt]{article}^M
\begin{document} ^M
\LaTeX ^M
\end{document}^M
な感じで改行したところに^Mマークが付いちゃうんですが検索置換しようようと
してもヒットしなくて消せません。texでコンパイルは出来るのでどうでもいいちゃ
どうでもいいんですが目障りなので消したいのです、いい方法はないでしょうか?

0095名無しさん@お腹いっぱい。NGNG
>>94
nkfでできなかったっけ?他にもコマンドあった気がするけど忘れた。
いずれにしても改行記号を置換するのはemacsと関係ないから
すれ違い。くだらない質問すれできけば?
0096名無しさん@お腹いっぱい。NGNG
>>94
C-u C-x C-f で開く、とか。
置換したけりゃ C-q C-m で。
0097名無しさん@お腹いっぱい。NGNG
>>95
> いずれにしても改行記号を置換するのはemacsと関係ないから
> すれ違い。くだらない質問すれできけば?

(゚Д゚)ハァ?
>>96
XEmacs user?
>>94
C-x RET c shift_jis-dos RET C-x C-f かな?
0098名無しさん@お腹いっぱい。NGNG
大胆予想をすると、古い Mule-UCS を使って shift_jisx0213 で保存し
改行コードが壊れてしまっているので、coding-system に *-dos を指定して
開いても ^M が付いたままと見た。
M-x replace-string RET C-q RET RET RET しとけ。
0099名無しさん@お腹いっぱい。NGNG

おれも >>97 さんの言う `C-x RET c shift_jis-dos RET C-x C-f' を実行しても全然変
化なしです。コーディングシステムのことはよく分かりませんが >>98 さんが言ってい
ることが正しいのではないかと・・・。

これを自動認識させて ^M がでなくする方法はないんですかね・・・?
0100名無しさん@お腹いっぱい。NGNG
>>99
Meadow使ったことないからわかんないけど set-default-coding-systems で
一時的にデフォルトの設定を変えるとか。
それかTeXだったらファイルの終わりに

% Local Variables:
% coding: shift_jis-dos
% End:

とでも書いといたら自動認識しない?
0101名無しさん@お腹いっぱい。NGNG
もしくはファイルの頭に

% -*- coding: shift_jis-dos -*-
010298NGNG
>>99
あまり良い手は浮かばない。
既存のものはスクリプトででも直すとして、以降は Mule-UCS を最新(0.85 RC3 とか)
にすれば大丈夫だと思う。

>>100
改行コードが壊れている(CR+CR+LF になっている)と、coding-system を指定しても…。
0103名無しさん@お腹いっぱい。NGNG
Emacs にこだわらんでも zsh とか perl なんかを使って
% perl -i -pe 's/\r\n/\n/g' **/*.txt
ってやれば終わりでは?
# そういう問題ではない?
0104名無しさん@お腹いっぱい。NGNG
それが面倒なんじゃない?。改行コードが壊れてるとしたら 's/\r?\n/\n/g'
かな。nkf -d のほうが簡単だけど。
0105名無しさん@お腹いっぱい。NGNG
をいをい、置換の仕方は>>98で答えが出てるぞ。
0106名無しさん@お腹いっぱい。NGNG
あ、ループしてた。すまん。
0107名無しさん@お腹いっぱい。NGNG
意外とCtrl押す機会がない。
0108名無しさん@お腹いっぱい。NGNG
>>107
意外と RET 押す機会もない。
0109名無しさん@お腹いっぱい。NGNG
>>94
> WinのMeadowで編集したファイルをemacsで開くと

; 解決しているのかも知れないけど
Meadow と emacs の両方で
M-x describe-variable buffer-file-coding-system
しても同じ結果にならなかったということなのかな

それとも結果は同じなのに ^M が出ているのかな
011099NGNG
皆さん、意見ありがとうございます。

>>101 さん、 >>100 さん
> % -*- coding: shift_jis-dos -*-

その方法でやると既存のファイルを開く時に効果がないというのと、Emacs 系のエディ
タを使用していない人がみると変に感じるのではないかという難点がありますね。
でもどうしてもという時には使わせてもらいます。
どうもです。

>>103 さん、
> Emacs にこだわらんでも zsh とか perl なんかを使って...
>>104 さん
> nkf -d のほうが簡単だけど。

いやスクリプトではもう作ってあるのですが、自分の場合ファイルをジェネレートする
ツールをよく使用するので、その度にコマンド打つに飽きてしまったりなんかして・・・。
あとタイムスタンプが変わっちゃったりとか

やっぱり font-lock で ^M を (仮で) 消すのが一番良い手のような気がするのですが、
どうですかね?
0111名無しさん@お腹いっぱい。NGNG
xemacsなんですけど、
ツールバーを消すにはどうすればいいのでしょうか?

アドバイスお願いします。
0112名無しさん@お腹いっぱい。NGNG
>>110
> やっぱり font-lock で ^M を (仮で) 消すのが一番良い手のような気がするのですが、
> どうですかね?
すごいアプローチだねw
いや、アリだとは思うけど。

> いやスクリプトではもう作ってあるのですが、自分の場合ファイルをジェネレートする
> ツールをよく使用するので、その度にコマンド打つに飽きてしまったりなんかして・・・。
> あとタイムスタンプが変わっちゃったりとか
自分ならファイルをジェネレートした後スクリプトで変換するラッパを噛ます
か、TeX の hook で自動的に replace-string するかな。
0113名無しさん@お腹いっぱい。NGNG
;; バイナリ覗いて \r\r\nとなってるかとかのチェックが先だと思うが……。
0114名無しさん@お腹いっぱい。NGNG
>>110
> やっぱり font-lock で ^M を (仮で) 消すのが一番良い手のような気がするのですが、

ワラタ。

表示しないだけなら、display-table をいじるのがおすすめ。
011599NGNG
>>114
> >>110

やはり font-lock は駄目ですか。 自分の中では問題なく使えてるんですけどね。

> 表示しないだけなら、display-table をいじるのがおすすめ。

display-table ですか・・・。 検索してもなかなか自分に合てはまるような設定が見つ
かりませんでした。もしよろしければ、ヒント、もしくは設定の例などを教えてもらえ
ないでしょうか?
0116名無しさん@お腹いっぱい。NGNG
(´-`).。oO(いいかげんウザくなってきたな)
0117名無しさん@お腹いっぱい。NGNG
(aset (setq buffer-display-table (make-display-table)) ?\r [])
0118名無しさん@お腹いっぱい。NGNG
>>103
> # そういう問題ではない?

脳味噌経由してから書けよ。
0119名無しさん@お腹いっぱい。NGNG
>>110
根本的に、設定がマズいだけなのに、いろいろ作るんだな。
お疲れさん。
0120名無しさん@お腹いっぱい。NGNG
脳味噌を経由しなかったり、いろいろ無駄なものを作ったりする
場合だってあると思うけど。
君が笑ったことを書き込まれても何の役にも立たない。
わからないことは教えあうというスタンスでいかないと、
誰もハッピーにならないと思う。
「脳味噌を経由」して、「マズくない」書き込みを期待します。
0121名無しさん@お腹いっぱい。NGNG
そこでバッドノウハウ教徒出現ですよ。
0122名無しさん@お腹いっぱい。NGNG
Emacsが改行コードの自動認識に失敗しているのか、ファイルの改行コードが壊れているのか。
0123名無しさん@お腹いっぱい。NGNG
バッファを全てデリートするにはどうすればいいのですか?
0124名無しさん@お腹いっぱい。NGNG
(mapc #'kill-buffer
(buffer-list))
mapc は mapcarでもよい
0125名無しさん@お腹いっぱい。NGNG
どうも、emacs初心者です。skkを使用しているんですが、.skk-jisyoが最近
\244\304\244\253e /\273\310/\273\305\[\244\250/\273\310/\273\305/]/
...
のように表示されてしまいます。これはemacsが間違ったコーディング
形式でセーブしたからこのようになってしまったのですか?
これを元に戻すことができるのでしょうか?skkを結構重宝していた
のでかなり困っています。 (鬱
0126名無しさん@お腹いっぱい。NGNG
iso-8859-1あたりで find-file
0127名無しさん@お腹いっぱい。NGNG
126は操作ミスで送ってしまった。無視してくれ。
0128名無しさん@お腹いっぱい。NGNG
>>125
SKKが使えているのなら気にすんな
0129名無しさん@お腹いっぱい。NGNG
JDEE みたいな、c++ での、統合環境ってありますか?
JDEE 使った後で、c++-mode を使うとちょっと寂しくなります。
0130名無しさん@お腹いっぱい。NGNG
emacs で C++ はみんなあきらめています
0131名無しさん@お腹いっぱい。NGNG
Emacs を使ってる人は、プログラミングをするときは、何を使ってるんですか?
私の場合は、
Java => JDEE
C/C++ => c-mode/c++-mode
sh => shell-script-mode
とかです。何か、面白い物ありますか?
Eclipse とかですか?(藁
0132名無しさん@お腹いっぱい。NGNG
>>129
ECBなんかどうよ?
http://ecb.sourceforge.net/
0133名無しさん@お腹いっぱい。NGNG
Diredがかなり便利なんですが、find-name-diredのカスタマイズではまっているので質問させてください。
find-name-diredで検索するときデフォルトで大文字、小文字を区別しないようにするにはどこをいじればいいでしょうか?
0134名無しさん@お腹いっぱい。NGNG
>>133
find-grep-diredを使うとか
0135名無しさん@お腹いっぱい。NGNG
>>133
-iname 付けるのがめんどうだ、って話?
0136名無しさん@お腹いっぱい。NGNG
>>133
> find-name-diredで検索するときデフォルトで大文字、小文字を区別しないようにするにはどこをいじればいいでしょうか?

実体(find-dired.el の一部)は、コメントを除くと
----
(defun find-name-dired (dir pattern)
(interactive
"DFind-name (directory): \nsFind-name (filename wildcard): ")
(find-dired dir (concat "-name " (shell-quote-argument pattern))))
----
ですので、.emacs にでも、-iname に変えて定義してみてはいかがでしょうか?
0137名無しさん@お腹いっぱい。NGNG
Emacs 21.2.1を使っています。.Xresourcesに以下のようなフォント設定をしてEmacsを使っているのですが、半角英数以外の文字がボールドになりません。半角英数は問題なくボールドになります(w3m-emacsなどで)。

どのように設定すればボールドが正しく表示されるのでしょうか。

----------設定----------
Emacs.Fontset-0: \
-*-fixed-medium-r-normal--12-*-*-*-*-*-fontset-12, \
ascii:-shinonome-gothic-medium-r-*--12-110-75-75-c-60-iso8859-1, \
katakana-jisx0201:-shinonome-gothic-medium-r-*--12-110-75-75-c-60-jisx0201.1976-0, \
japanese-jisx0208:-shinonome-gothic-medium-r-normal--12-110-75-75-c-120-jisx0208.1990-0
Emacs.Font: fontset-12
----------終了----------
0138名無しさん@お腹いっぱい。NGNG
糞して寝ろ
0139名無しさん@お腹いっぱい。NGNG
大丈夫.きみは悪くない。
0140名無しさん@お腹いっぱい。NGNG
>>133
(setq completion-ignore-case t)
0141名無しさん@お腹いっぱい。NGNG
>>140
違うと思われ。
0142名無しさん@お腹いっぱい。NGNG
GNU Emacs 21で、http://www.bookshelf.jp/soft/meadow_16.html#SEC137に書いてあることのうち、

;; Encoded-kb はいらない
(eval-after-load "encoded-kb"
'(setcar (cdr (assq 'encoded-kbd-mode minor-mode-alist)) ""))
;; Isearch は表示しなくてよい
(add-hook 'isearch-mode-hook
'(lambda () (setcar (cdr (assq 'isearch-mode minor-mode-alist)) "")))

ができません。どうすればよいでしょうか。
0143名無しさん@お腹いっぱい。NGNG
diminishにしたのでやっぱいいです。
どうも。
0144名無しさん@お腹いっぱい。NGNG
またまた質問。diminishで、起動時に使わないマイナーモードの設定はできないのかいな。
たとえば(diminish 'texinfo-mode "Texi")と、かいてあると、

error: "texinfo-mode is not currently registered as a minor mode"

To ensure normal operation, you should investigate the cause
of the error in your initialization file and remove it. Start
Emacs with the `--debug-init' option to view a complete error
backtrace

といわれる。(diminish 'isearch-mode "Is")は問題ない。
0145名無しさん@お腹いっぱい。NGNG
>>144
質問が分かりづらいけど

> といわれる。(diminish 'isearch-mode "Is")は問題ない。

「isearch-mode もエラーにならないとおかしいんじゃないの」ってコト?
0146名無しさん@お腹いっぱい。NGNG
diminish が何をするもんか知らないけど、
エラーメッセージがすべてを語ってるんじゃないの?
texinfo-mode は minor mode ではないだろ。

;; texinfo-mode で (setq mode-name "Texi") したいってことなのかなあ。
0147名無しさん@お腹いっぱい。NGNG
eval-after-load とか hookとか
0148名無しさん@お腹いっぱい。NGNG
>>146

それだ。スマソ。
diminish.elの中にも書いてあった。
0149名無しさん@お腹いっぱい。NGNG
マルチポストになりますが、こちらで。

デフォルトのshellモードでjgrepからの出力で日本語が文字化けします。
\244\254・・・(など。手で入れました。コピペすると再度図形文字のように
文字化けします)
現在 FreeBSD5.2.1 上で emacs-dl-20.7+canna を使用しています。
今までは Mule 上で .emacs に
(set-default-process-coding-system *euc-japan* *euc-japan*)
と設定していました。
emacs-dl-20.7では書式が変わったようで、.emacsの読み込みで
上の部分はエラーになります。
ググったのですが、
(set-default-process-coding-system 'sjis-dos 'sjis-unix)
のような設定でもエラーになります。
eucかsjisの場合の設定方法を教えてください。
0150149NGNG
だ・・・誰か・・・。
初心者スレより人いないの・・・。
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 を作ることにしました。
■ このスレッドは過去ログ倉庫に格納されています