トップページunix
1001コメント312KB

Emacs part8

■ このスレッドは過去ログ倉庫に格納されています
0001名無しさん@お腹いっぱい。NGNG
各種 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/unix/kako/1007/10076/1007618266.html
Emacs part4
http://pc.2ch.net/unix/kako/1013/10133/1013390142.html
Emacs part5
http://pc.2ch.net/unix/kako/1021/10217/1021734785.html
Emacs part6
http://pc.2ch.net/unix/kako/1032/10326/1032611750.html
Emacs part7
http://pc.2ch.net/test/read.cgi/unix/1042141693/

Emacs Lisp で書かれたプログラムのバグを知らせる方法
http://www.jpl.org/elips/BUGS-ja.html
0081名無しさん@お腹いっぱい。NGNG
emacsをこれから使い始めたい厨なんですが、
windowsの場合は、どれをつかえばいいんでしょうか。
できればバイナリ配布してるパッケージがいいです。
0082名無しさんNGNG
何種類かある

本家Emacs
http://www.gnu.org/software/emacs/#Platforms
XEmacs
http://www.xemacs.org/Download/win32/setup.exe
Meadow
http://www.sodan.org/~penny/Meadow/

Meadowが一番Windowsフレンドリなんだろうけど、俺は使ったことがない。
0083名無しさんNGNG
あ、
http://kawacho.don.am/win/meadow
がup-to-dateだね。
0084名無しさん@お腹いっぱい。NGNG
>>81
Meadowがおすすめですよ
http://homepage3.nifty.com/akima/soft/meadow.html
0085名無しさん@お腹いっぱい。NGNG
沢山あるみたいですね。
とりあえずmeadow入れてみます。
ありがとうございました。
0086名無しさん@お腹いっぱい。NGNG
一番フレンドリーなのは、xyzzyだと思う。
純粋なEmacsかどうかは疑問だが
0087名無しさん@お腹いっぱい。NGNG
xyzzy はマニュアルが不足していると
聞いたことがあるが(伝聞)、今は解消してるの?
0088名無しさん@お腹いっぱい。NGNG
作者がやる気なさそう
0089名無しさん@お腹いっぱい。NGNG
やる気ないって、デカデカと書いてあるしな(笑)
0090名無しさん@お腹いっぱい。NGNG
>>xyzzy
最近使ってないけど、やる気ないと言うわりには頻繁に「バージョンナップ」
されてたし、バグ修正も異常に早かったような気が…
0091名無しさん@お腹いっぱい。NGNG
xyzzy 本体はもうかなり安定しちゃってるような

つか、スレ違い
0092名無しさん@お腹いっぱい。NGNG
xyzzyは一枚岩だから、安定度を求めるならあっちかもね。
LISPもemacsのに比べるとまともな処理系っぽいし。
よく個人であそこまで作ったもんだと思うよ。
0093名無しさん@お腹いっぱい。NGNG
でも cl だし、packageという概念が俺は理解できてない。
skk については、skkime が完成度段々上がってきてるから
問題少ないのかな。
0094名無しさん@お腹いっぱい。NGNG
>>79ですが、やっぱりできてしまいました。。。
write-file-hooksもnilですし、何が起こっているのやら。。。

>>80
やっぱりそうなんですか。。
0095名無しさん@お腹いっぱい。NGNG
漢字変換にycを使っているときに「ん」の変換を「nn」だけ
にすることはできますか?
0096名無しさん@お腹いっぱい。NGNG
しつこいようですが>>79(>>58)です。

どうやら望み通りの動作になったようです。今の所は。
バックアップファイル(元リビジョンファイル)はできていません。

vc-modeを使わない設定だけではダメで、関数も消し去ってしまわなければならないようです。
以下、その記述。

(delq (assoc 'vc-mode minor-mode-alist) minor-mode-alist)
(setq vc-cvs-make-version-backups-p nil)

>>80さんも気になるようでしたら試してみてください。
0097名無しさん@お腹いっぱい。NGNG
>>96
> 関数も消し去ってしまわなければならないようです。

関数を消す? 何か勘違いしているような…
0098名無しさん@お腹いっぱい。NGNG
>>95
どゆ意味?
0099名無しさん@お腹いっぱい。NGNG
ようわからんが、>>96 の emacs の version には
vc-mode のバグがあるということだな。
0100名無しさん@お腹いっぱい。NGNG
>>97
どういう意味ですか?
vc-cvs-make-version-backups-pは関数を返す関数ですよ?
その返す関数をnilにするんですが。
0101名無しさん@お腹いっぱい。NGNG
>>99
Meadow1.99aなのでバグは当然あると思いますが、これは設定の問題のような気がしたりしなかったり。。。
0102名無しさん@お腹いっぱい。NGNG
>>100を訂正。
>vc-cvs-make-version-backups-pは関数を評価する関数ですよ?
>その評価する関数をnilにするんですが。
0103名無しさん@お腹いっぱい。NGNG
>>102
あんたがやってるのは、シンボルの変数セルを書換えてるのだが。
0104>>97NGNG
>>102
symbol-functionとsymbol-valueは別の所に格納されます。

(defun foo () (progn "bar"))
(setq foo "baz")

foo→"baz"
(symbol-value 'foo)→"baz"
(symbol-function 'foo)→(lambda nil (progn "bar"))
(foo)→"bar"

これがLisp流。(Schemeは一カ所のみ)
0105名無しさん@お腹いっぱい。NGNG
>>95
いんでんと
と打とうとして
inndennto
とすると
いんんでんんと
となってしまうんです。

0106名無しさん@お腹いっぱい。NGNG
>>105
yc-default-rH-tableから("nn" "ん")を抜いて、
"三位"は"san'i"とタイプする。

あるいはyc-conv-Hrの書き換え。
0107名無しさん@お腹いっぱい。NGNG
あれ、逆か…

("n" "ん")を抜く。
0108名無しさん@EmacsNGNG
なんか顔っぽいな
ウーン ( "ん") ("n" ) アレー
0109名無しさん@お腹いっぱい。NGNG
("n" )アレー
0110名無しさん@お腹いっぱい。NGNG
("ェ")フムゥ
0111名無しさん@お腹いっぱい。NGNG
("し")シマッタ、アゲテモウタ。
0112名無しさん@お腹いっぱい。NGNG
wara
0113 NGNG
二つほど質問

(1)
C/C++のソースファイルの編集中に #include xxxxx.h とかの行にカーソルを持っていって
そのインクルードファイルを開く方法はありますか?

(2)
TAGSファイルを作ってM-.でその関数にジャンプできますが、ヘッダーファイルに定義して
あるメソッドは探せないんでしょうか?
0114名無しさん@お腹いっぱい。NGNG
>>113の(1)
find-file-at-point
サーチするディレクトリはffap-c-pathで。
0115名無しさん@お腹いっぱい。NGNG
>>113
(1)
http://homepage3.nifty.com/akima/soft/meadow_32.html#SEC470
cpp-complt.el に cpp-complt-include-mouse-select というのが
あったけどキーボードにbindされてる同等の関数はなさそう。

(2)
説明がみたいのなら同じページの上の方で紹介されてる
mode-info.elとか。
0116名無しさん@お腹いっぱい。NGNG
elisp で自分で作成した変数や関数と他のパッケージとで名前の
競合がないようにする為にはどんな方法がありますか?
0117名無しさん@お腹いっぱい。NGNG
>>116
my- で始める、とか。
0118名無しさん@お腹いっぱい。NGNG
>>116
パケージ名-シンボル名 っていう習慣です。
0119名無しさん@お腹いっぱい。NGNG
emacs は global 主義の台所だから、
早いもん勝ち。
でも自分で混乱しないように my- 付けてます。
0120名無しさん@お腹いっぱい。NGNG
>>113
(1) (partial-completion-mode t) すると C-x C-f <stdio.h> で stdio.h が
開けるからあとはカーソルのある行の xxxx.h を find-file に渡す関数書け
ばできるかも。

(2) etags *.[ch] とかで *.h も TAGS に含まれるようにすればいいんじゃな
いの?そういう意味じゃないんだろうか。
0121名無しさん@お腹いっぱい。NGNG
>>120
たぶん、/usr/include/**も含むんだろうね。

/usr/include/**もTAGS作って、tags-table-listに入れとけばいいわな。
0122名無しさん@お腹いっぱい。NGNG
find-file-at-pointじゃダメなの?
俺C-xC-fにバインドしてるけど。
0123名無しさん@お腹いっぱい。NGNG
ffap は便利だよね。url も browser-url で開いてくれるし。
0124名無しさん@お腹いっぱい。NGNG
C-s の後の C-w で検索文字列を
拡げていくときの話なんですが、
A_B_C という文字列の場合、
C-w を押すたびに
a
A_b
A_B
となって、それ以上は何回押しても
_Cまで広がらないのと、C-wの最中に
マッチングが始まったりするんだけど
この挙動って正しいの?
0125名無しさん@お腹いっぱい。NGNG
直接は関係ないかも知れないが、
migemo を使っている時に
C-s の後 C-w を高速に連続で
押すと、おかしなことになることがある。
0126124NGNG
>>125
ありがトン! ずばり migemo でした。
もう少し調べて send pr してみます。
0127名無しさん@お腹いっぱい。NGNG
ミョーン
http://heimat.jp/~nakaji/elips/20030502/4956.html
ワラタ こういうの好き
0128名無しさん@EmacsNGNG
>127
うぜーw
ワロタw
0129名無しさん@お腹いっぱい。NGNG
>>127
これ、見た目に面白いっていう以上に、
次にどのウインドウがアクティブになるか直感的にわかりやすくなるので良いですね。
常用してみます。
0130名無しさん@お腹いっぱい。NGNG
>>127
結婚記念日と奥さんの誕生日のために書いたのか。
粋なことやるとは思うけど、奥さんこれで喜ぶのか?(w
0131名無しさん@お腹いっぱい。NGNG
>130
何を貰うかではなく、誰から貰うかが重要なのだよ

漏れもこういうセンスがホスィ
0132名無しさん@お腹いっぱい。NGNG
migemo使ってみた。感動した。
0133名無しさん@お腹いっぱい。NGNG
>>130
奥さんはvim使い、これが原因で別居中と思われ
0134名無しさん@お腹いっぱい。NGNG
キーカスタマイズしたいんですけど
Shift+EnterとかCtrl+Enterとか、どう書いたらいいのか
分からないキーがたくさんあります。こういうのってどこ
に書いてありますか?
0135名無しさん@お腹いっぱい。NGNG
>134
そういうキーバインドは、皆、普通はしようとしないのです。
ナンデダロ〜と思ったら、端末、仮想端末、端末ドライバ、
termcap、terminfo、、などの深みに踏み込むほかないでしょう。
0136名無しさん@お腹いっぱい。NGNG
>>134
XEmacs だと define-key のヘルプを見るとか。
0137名無しさん@お腹いっぱい。NGNG
>134
info
0138名無しさん@MeadowNGNG
Windows の普通のアプリケーションのように
右クリックすると

もとに戻す
切り取り
コピー
貼り付け

なんていうのが出るようにする方法ってありますか?

こういうふうに簡単に設定できる lisp があればうれしいのですが。
0139名無しさん@お腹いっぱい。NGNG
>>138
何のためにEmacsを使うのだろうか?
0140名無しさん@お腹いっぱい。NGNG
気持ちはわかるが、あんまりそうやって使い方を決め付けるのもよくないような気もする
0141名無しさん@お腹いっぱい。NGNG
俺には>>139の気持ちすらわからん
0142138NGNG
> >>138
> 何のためにEmacsを使うのだろうか?

今は Emacs でマウス使うことはほとんどないんですが、
マウス使って片手だけで操作できたらいいなあと思うときがたまにあるのれす。

Windows の普通のアプリケーションみたいに、
右クリックしたときにいろんな機能が表示されるようできればうれしいっす。
0143140NGNG
すまん。。。言い方悪かった。
ただコピー&ペーストはマウスでできるから何故わざわざポップアップを開くのか分からんかった。
そんなにいじめないで。。。

たぶん色んな機能をポップアップに割り当てたいんだろうね。
この辺見てみれば?
http://www.george24.com/~akihisa/texi/elisp-manual-20-2.5-jp/elisp_29.html#SEC452
0144名無しさん@お腹いっぱい。NGNG
標準でも C-mouse-? とかでポップアップメニュー出るし、メニューバーもあるし、ボタンもあるし、
決め付けは自らの可能性を狭めるヨ。

漏れはマウス使わんが。
0145138NGNG
> たぶん色んな機能をポップアップに割り当てたいんだろうね。
> この辺見てみれば?
> http://www.george24.com/~akihisa/texi/elisp-manual-20-2.5-jp/elisp_29.html#SEC452

こりゃどうも。

ここにのってる x-popup-menu 使えば
望み通りのポップアップメニューつくれそうです。

んで右クリックに割り当てて (゚д゚)ウマー
0146名無しさん@お腹いっぱい。NGNG
>>134
infoに書いてありますか?
Customization => Key Bindings 以下を探したんですけど見付からず。。
とりあえず Ctrlキーを押しながらEnterは [C-return]でいけますた。

yahtmlとoutline-minor-modeを一緒に使ってるんですが
yahtml-modeでは C-cC-t やら C-cC-a は定義してない
みたいなんで、アウトライン関係のキーバインドを C-c@
じゃなくてメジャーモードの時と一緒の奴に戻したい
んです。
(define-key yahtml-mode-map "\C-c\C-t" 'hide-body)
みたいのをシコシコ書く以外によい方法ありますか?

あと [S-enter]で <br>タグと改行を挿入したいんですけど
insert-fileじゃなくてself-insert-commandを使う場合
どう書けばいいですか?
0147名無しさん@お腹いっぱい。NGNG
>>146
info つっても C-h i m elisp の事じゃないのか?

>あと [S-enter]で <br>タグと改行を挿入したいんですけど

それぐらい自分で関数作ってバインドするかマクロ。
(define-key global-map "a"
#'(lambda ()
(interactive)
(insert "info 嫁\n")))
0148名無しさん@お腹いっぱい。NGNG
>>147
どうも。elispのほうでしたか。lisp書けたら便利なこと
この上ないのは分かってるんですがね。。ついでに改行
の後ろにカーソルを移動できちゃったりするといいんだ
けど、がんばって改造してみます。

関係ない話ですけどlinux板にあった「emacs総合スレ」
って消滅したんですか? part2もないみたいですし。そ
こで yahtmlで色がつかないって言ってた人いたんだけど
http://search.luky.org/vine-users.1/msg06804.html
ここにある方法で自分は解決しました。
0149名無しさん@お腹いっぱい。NGNG
>148
> 改行の後ろにカーソルを移動

(progn
  (insert "hoge")
  (save-excursion
    (insert "fuga")))
0150名無しさん@お腹いっぱい。NGNG
>>127
eval した後と書かれていますが、windzoom.el をどのように
使えばいいのか教えて下さい。
0151名無しさん@お腹いっぱい。NGNG
>>150
C-x 2 C-x 1
とかやってみれ
0152名無しさん@お腹いっぱい。NGNG
>>151
eval するというのが分からないのです。
M-: の後何かするのですか?
0153名無しさん@お腹いっぱい。NGNG
>>152
あー、なるほどそういうことか。
そのページを開いて(w3mつかってもいいし、バッファにコピペでもいい)、
 ;;; windzoom.el --- Window manipulation with continuous visual feeback
と書いてある行以降を選択して、M-x eval-regionすればいい。

もし気に入ったら、windzoom.elというファイル名で保存して、
~/.emacs.elに
 (load "windzoom")
と書いておくとよい。
0154名無しさん@お腹いっぱい。NGNG
>>152
M-: を押して、Lisp の式をそのまま入力して、Return。
0155名無しさん@お腹いっぱい。NGNG
>>154
「ミョーンと言いつつ」Return だあね。
0156名無しさん@お腹いっぱい。NGNG
話題の windzoom.el。
http://www.heimat.gr.jp/~nakaji/elips/20030507/4978_2.gz
最新の上記を Meadow1.99 2003-05-01 で動かす(C-x 3 C-x 1)と
Meadow が落ちちゃいますね。
0157名無しさん@お腹いっぱい。NGNG
>>156
漏れも X 上の Emacs 21.3 (FreeBSD 4.5 ports) で落ちるよ・・・
きっと windzoom.el のせいではないんだろうけど、ちょっと今は追ってる暇ないので。
0158名無しさん@お腹いっぱい。NGNG
>>149
(defun yahtml-insert-br ()
(interactive)
(insert "<br>\n"))
(define-key yahtml-mode-map [S-return] 'yahtml-insert-br)
こんな感じでいけますた。ありがとう。
0159名無しさん@お腹いっぱい。NGNG
>>156
Meadowの1.99 2003-04-29版だと正常に動いています。
少なくともちゃんと動いているように見えます。
0160名無しさん@お腹いっぱい。NGNG
emacs -nw で立ち上げるとAlt-[key]が効かなくなります。
Ctr-[で代用できますが、やはりめんどくさいです。
なにか考えられる原因はありますか?
0161名無しさん@お腹いっぱい。NGNG
>>160
tty の仕様
0162名無しさん@お腹いっぱい。NGNG
>>160
Alt-XをEsc Xに変換して送るtemrinal emulator使えば?
(multi-)gnome-terminalとかputty(たしかそう)とか。
0163名無しさん@お腹いっぱい。NGNG
ChangeLogメモ取り始めたんですけど手軽でいいですね。これ。
ttp://pop-club.hp.infoseek.co.jp/emacs/changelog.html
ここにあるclmemo.elっての使ってるんですが、日本語の
エントリーの補完が面倒です。migemoと組あわせること出来ない
のかなーとつぶやいてみるテスト。
0164名無しさん@お腹いっぱい。NGNG
>>163
以下のように定義してみるのはどう?
アルファベットで日本語のエントリが入力できる。当然補完もできる。
(setq clmemo-entry-list
'(("Japanese" . "日本語")
("entry" . "エントリ")))
0165名無しさん@お腹いっぱい。NGNG
X 環境でメニューバーとツールバーを消したくて

(menu-bar-mode nil)
(tool-bar-mode)

と .emacs の最初に書いています。両方とも消えるのですが、起動直後
Welcome to GNU Emacs... の画面が表示されずエラーになります。

Wrong type argument: number-or-marker-p, (+ -6)

と最下段に表示されます。メニューバーとツールバーがうまく消せている方は
いらっしゃいますでしょうか。
0166名無しさん@お腹いっぱい。NGNG
>>164
すごいです。補完できました。
めちゃめちゃ便利になった。さんくす!
0167165NGNG
すみません。バージョンは

GNU Emacs 21.2.1 (i386-unknown-netbsdelf1.6, X toolkit) of 2002-09-20

です。.emacs に (tool-bar-mode) だけを記述しても同じエラーになります。
ツールバーの正しい消し方をご教示いただければうれしいです。
0168名無しさん@お腹いっぱい。NGNG
>165
M-x describe-function menu-bar-mode
M-x describe-function tool-bar-mode
0169名無しさん@お腹いっぱい。NGNG
>>168
はいそれは見てみました。
(tool-bar-mode) でトグルするはずで、実際ツールバーは消えているんですが
エラーがでるんですよね。

(tool-bar-mode 0)

としてもだめでした。

(tool-bar-mode 1)

とするとエラーはでないですが、ツールバーは(当然ながら)表示されています。
(以上は .emacs にそれだけを記述して試してみた結果です。
ツールバーが出ていることを前提としている機能がデフォルトであるんでしょうか。

あ、それからメニューバーのほうはうまくいっていることがわかりました。
0170名無しさん@お腹いっぱい。NGNG
>169
> はいそれは見てみました。

見るんじゃなくて読んで下さい
0171165NGNG
エラーがでるのは .Xresources に

Emacs*geometry: 80x33-0-0

があるからでした。これをコメントにし xrdb -load .Xresources してから起動すると
エラーは出なくなりました。

Emacs*geometry: 80x33+0+0

にしてもエラーはなくなりました。geometry に -0-0 と指定すると
だめなようです。
0172165NGNG
だめなのは最後の -0 のようです。バグかな....
0173名無しさん@お腹いっぱい。NGNG
>>170
はい。読みました。
0174名無しさん@お腹いっぱい。NGNG
>>170
質問者の状況が理解できない場合は黙っていた方がよい
0175名無しさん@お腹いっぱい。NGNG
emacs上でシェルを使うにはいくつかモードがあるみたいですね。
自分の認識では
shell-mode
telnetとか使えない
term-mode
telnet使えるけどよく固まる
eshell-mode
elispで実装されたシェル。メリットあんの?
ansi-term
shell-modeとterm-modeを自由に切替えられる
感じ。とりあえずこれがいいのかな?

って感じですけど合ってますでしょうか。
0176名無しさん@お腹いっぱい。NGNG
tramp で ssh の鍵認証を使って編集するにはどうすればいいでしょうか。
ssh-agent を使えばイイのは分かるのですが、

localhost ---(1)---> hostA ---(2)---> hostB

という状態で、経路(2)に鍵認証が必要な場合、tramp での編集は不可能ですか?
0177名無しさん@お腹いっぱい。NGNG
>>175
M-x ansi-term と M-x term は殆ど同じだよ。
コード見れば分かるけど。
0178名無しさん@お腹いっぱい。NGNG
>>177
そうなんでつか。
とりあえず ansi-term 使うことにします。
/etc/DIR_COLORS に Term = eterm を追加
したら配色も好みに変更できていいかんじ
でした。
0179名無しさん@お腹いっぱい。NGNG
>>175
term-mode では
C-c C-q で pager を有効にしないと一度に
何行も画面に出力するプログラムでは固まっちゃうけど
それは知ってる?
0180名無しさん@お腹いっぱい。NGNG
>>179
いや、知らなかったです。
ansi-termでも同じ機能ありますね。参考になりました。
0181名無しさん@お腹いっぱい。NGNG
>>164
今気づいたんですけど、エントリー名聞かれて
Jpanese+って答えると「日本語」に展開されないですね。。
■ このスレッドは過去ログ倉庫に格納されています