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

Emacs part9

レス数が950を超えています。1000を超えると書き込みができなくなります。
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 part8
http://pc.2ch.net/test/read.cgi/unix/1051455239/

Emacs Lisp で書かれたプログラムのバグを知らせる方法
http://www.jpl.org/elips/BUGS-ja.html
0872名無しさん@お腹いっぱい。NGNG
Emacs 21.3.50って、フォント回りに変更が入ってるのかあ。
Emacs 21.3 と同じ設定で、全然違う表示になってもうた。しょぼん。
0873名無しさん@お腹いっぱい。NGNG
>>871
C-x d 潰したとしても ffap 使ってれば C-x C-f でワイルドカード効くし。
0874名無しさん@お腹いっぱい。NGNG
>>869
をぉそんなものがあったとは! ありがとうございました。
もう一度、dired-xを勉強しなおしてきます。

最近はnxml-modeにはまっています。
もうxml文書はこれ以外で作る気にはなりませんね。

smartdocのrelaxngスキーマが欲しい・・・
0875名無しさん@お腹いっぱい。NGNG
>874

DTDとrelaxのスキーマがついてるみたいだから、
trangかsun relaxng converterあたりで変換すれば
とりあえず使えるんじゃない?
試して無いけど。
0876名無しさん@お腹いっぱい。NGNG
Emacs上での予測入力(POBOXとか)ってここでいいんでしょうか?


0877名無しさん@お腹いっぱい。NGNG
>>876
うーん、linux板の最強のIMスレかな?
0878名無しさん@お腹いっぱい。NGNG
modeline を2行以上に変更したいんですが、これって可能なんですか?
0879名無しさん@お腹いっぱい。NGNG
また、キトクなことを…
0880名無しさん@お腹いっぱい。NGNG
シェルモードで質問させてください。

hogehoge -h
pwd

という履歴があったとして、C-p で pwd が出ますが、"ho" まで入力して "hogehgoe -h" を
補完するにはどうすればよいのでしょうか?
TAB では履歴ではなくコマンド名 "hogehoge" という補完になってしまいます。
0881名無しさん@お腹いっぱい。NGNG
>>880
自己フォローです。C-r を使わずに、TAB を入力するような手順で補完したいのです。
0882名無しさん@お腹いっぱい。NGNG
これかな。
comint-previous-matching-input-from-input

C-c M-r 押しにくいが。
0883名無しさん@お腹いっぱい。NGNG
>>882 Thx! ありがとー。さっそく使わせていただきます。
0884名無しさん@お腹いっぱい。NGNG
>>882
ってことは tails-comint-history.el はいらなくなるのか。サンクス。
0885名無しさん@お腹いっぱい。NGNG
skk を使ってます。
tex のソースを書く時には、"\"がそのまま入力されて欲しいです。
このように skk の挙動を major-mode 毎に変更するには、どうしたら
よいのでしょうか?
ご存知の方いらっしゃいましたら、よろしくお願いします。
0886名無しさん@お腹いっぱい。NGNG
>>885
context-skk 使うとか。
0887名無しさん@お腹いっぱい。NGNG
>>886
それでもいけるの?
別解としては、
*-mode-hook にひっかけて、skk-rom-kana-rule-list と
skk-rule-tree を make-local-variable()してから
(setq skk-rule-tree (skk-compile-rule-list ...))
するなり、skk-rom-kana-rule-listでの "\"に対応するルールに、
メジャーモードを見るような関数を設定するってのがあるかな。
後者には skk-dinsert が便利かもしれん。
0888名無しさん@お腹いっぱい。NGNG
>>885
SKKスレがあるので、移動してはいかが?
ttp://pc.2ch.net/test/read.cgi/unix/1049225392/

京大側のSKK MLの、2000/01/26のメール4通(Subject: insert of \)が
お目当てのもののようだ。
手元のを引用していいものか不明なので、ポインタだけ。
0889名無しさん@お腹いっぱい。NGNG
>886,887
ありがとう
>888
逝ってきます
0890名無しさん@お腹いっぱい。NGNG
マ板のEmacsスレから流れてきました。マルチポスト済みません。

>Emacsにelf-modeみたいなのあったりしますか?
>hexl-modeだとただのバイナリエディタですが、
>それではオブジェクトファイル形式みたいなのは
>見えて来ないですよね。かといってobjdump -dだと
>ただのアセンブラになっちゃう。
>どんな機能かはさておくとしても、オブジェクトファイル用の
>メジャーモードなんてものが、もしあったら
>おしえてください。

つまりオブジェクトファイルに埋め込まれている各種ヘッダ情報を
なんらかの読みやすい形に整形できるようなelがあればいいなと
思った次第です。無ければないで、今までどおり、hexl-modeで
開いて、バイト数数えるだけなんですけど。。。
0891名無しさん@お腹いっぱい。NGNG
>>890
readelf
0892名無しさん@お腹いっぱい。NGNG
>>891
レスありがとうございます。
readelfは確かに便利ですね。ヘッダ情報の参照には
もってこいだと思います。ただhexl-modeのように
任意の場所を書き換えるには適さないですね。

EmacsLispが書けないので、誰かがそんなのを書いて
くれるまで待つことにしたいと思います。
0893名無しさん@お腹いっぱい。NGNG
elispなんて難しいもんじゃないんだから自分でやってみては。
0894名無しさん@お腹いっぱい。NGNG
elispで何らかの機能をもったメジャーモードを書くのは
そう難しくはないがLispを学ぼうと思うと大変。

メージャーモードを書く事に限定して調べて
そこらへんにころがってる物を参考に書けば
わりと簡単。
真面目に勉強しようとする樹海入り。

とくにCゲンガ-には辛かろうわかりにくかろう。
0895名無しさん@お腹いっぱい。NGNG
Programming in Emacs Lisp
http://www.math.s.chiba-u.ac.jp/~matsu/lisp/
0896名無しさん@お腹いっぱい。NGNG
auto-save-buffers を使っていたら、makefile-mode でタブを入力したときにセーブしようとして
メッセージが出るのが邪魔なので

(add-hook 'makefile-mode-hook
#'(lambda () (delq 'makefile-warn-suspicious-lines local-write-file-hooks)))

してみた。
0897名無しさん@お腹いっぱい。NGNG
(setq local-write-file-hooks (delq 'makefile-warn-suspicious-lines local-write-file-hooks))
か。
0898名無しさん@お腹いっぱい。NGNG
>>893-895
アドバイスありがとうございます。
オブジェクトファイル形式に依存しない汎用的な
メジャーモードを夢見て、ちょっとずつ勉強していきたいと
思います。どうもありがとうございました。
0899名無しさん@お腹いっぱい。NGNG
terminalの中で起動しているのか、Xアプリとして起動しているのかを
判定するにはどうしたらいい?
今までは(console-typ)という関数で判断していたのだが、Linuxを新しく
インストールしなおしたら「そんな関数はない」といわれた。

(emacs-version)
"GNU Emacs 21.2.1 (i686-pc-linux-gnu, X toolkit, Xaw3d scroll bars) of 2002-08-29 on astest"
0900名無しさん@お腹いっぱい。NGNG
>>899
(featurep 'window-system)
(featurep 'x)
あたりかなぁ。
0901名無しさん@お腹いっぱい。NGNG
>>899
変数 window-system
0902名無しさん@お腹いっぱい。NGNG
>>900,901
はやいなー。
window-systemを使ってうまくいきました。どうもありがとう。
0903名無しさん@お腹いっぱい。NGNG
1行が長い場合、折り返して表示されますよね。その「表示の」下の行に行くのって
どうしたらいいんでしょう。
\C-n や 下矢印だと、「改行文字までを1行とみなした、バッファにおける」下の行
に行っちゃいますよね。1行が長い場合だと非常に先まで飛んで行ってしまいます。
(forward-char (window-width)) とかするしかないんでしょうか。
0904名無しさん@お腹いっぱい。NGNG
>>903
そうならないように1行を短くしておくべき。

どうしてもと言うならこれを。
http://www.taiyaki.org/elisp/physical-line/
0905名無しさん@お腹いっぱい。NGNG
>>903
VFAQ
0906903NGNG
>>904 ありがとうございます。
>>905 すんません
0907名無しさん@お腹いっぱい。NGNG
>>897
(remove-hook 'local-write-file-hooks #'makefile-warn-suspicious-lines)
0908名無しさん@お腹いっぱい。NGNG
>>875
せっかくだからやってみたよ。
PureSmartDoc.rlx を、sunのrngconvで、rngに変換しようとしたら、

more than one hedge model is specified where only one is allowed
413:26@file:///home/java/sun/rngconv-20030225/PureSmartDoc.rlx

と出た。少し悩んで、前後の行をちょっとコメントアウトして、無理やり通したあと、
trangで、rncに直して、早速、nxml-modeで使ってみたけど、何か変。
必ず、chapterとかsectionの前にtitle要素を要求される。

もしやと思って、オリジナルのrelaxファイル見てみたら、title属性とtitle要素を
混同していた。仕方がないから、rncを見つつ、色々と微調整して直して、
今はとりあえず使えるようになってる。もともとPureSmartDoc.rlx自身が
SmartDocのサブセットみたいなものだから、他もざっと手を入れた。

しかし、nxml-modeはソースコードみても飽きないね。妖しすぎる。
さすが御大。
0909名無しさん@お腹いっぱい。NGNG
ほしい
ほしい
ほしい
ほしい
ほしい
ほしい
ほしい
ほしい
ほしい
ほしいも
0910名無しさん@お腹いっぱい。NGNG
キーを指定するときの、
[(control Home)] みたいな書き方のキー一覧ってどこを見れば分かりますか?
0911名無しさん@お腹いっぱい。NGNG
領域選択している時だけバックスペースでdelete-regionするには
どうすればいいんですか?
0912名無しさん@お腹いっぱい。NGNG
>>911
どの Emacs で?
0913名無しさん@お腹いっぱい。NGNG
Emacs 20.7.1ベースのMeadowです。
0914名無しさん@お腹いっぱい。NGNG
>>908
欲しいにょ
0915名無しさん@お腹いっぱい。NGNG
>>910
modifier key は、 Elisp の info の Keyboard Events のとこに書いてあるので全部かな。
でも、 function key の一覧は見つからない…
とりあえず keyboard.c の lispy_function_keys がそれっぽいけど…
0916名無しさん@お腹いっぱい。NGNG
http://www.bookshelf.jp/cgi-bin/goto.cgi?file=meadow&node=delete%20region
の設定を使えばできる.delete-char に対するアドバイスにすればいいだけ.
0917911NGNG
>>916
バックスペースにbackward-delete-char-untabifyが割り当てられているので、
(setq transient-mark-mode t)
(when transient-mark-mode
(defadvice backward-delete-char-untabify
(around delete-region-like-windows activate)
(if mark-active
(delete-region (region-beginning) (region-end))
ad-do-it)))
これでうまくいきました。ありがとうございました。
0918名無しさん@お腹いっぱい。NGNG
key event に対応する procedure は describe-key で分かりますが、
procedure に対応する key event を知る方法はありますか?
0919名無しさん@お腹いっぱい。NGNG
where-is
0920名無しさん@お腹いっぱい。NGNG
>>918
あります。

0921名無しさん@お腹いっぱい。NGNG
>>911
pc-selection-mode じゃいかんの?
0922名無しさん@お腹いっぱい。NGNG
>>919
ありがと
0923名無しさん@お腹いっぱい。NGNG
キーバインドが覚えきれません
新しいmodeに割り振るkeyがありませんどうしたらよいのでしょうか?
0924名無しさん@お腹いっぱい。NGNG
>>923
> 新しいmodeに割り振るkey
???
0925エスパーNGNG
>>923
「C-c 英字」があいてるはず。
0926名無しさん@お腹いっぱい。NGNG
>>923
覚えない。指に癖をつけるだけ。

中級は尊い。
0927名無しさん@お腹いっぱい。NGNG
tc2 の関数? tcode-toggle-katakana-mode を
C-` に割り当てたいのですが emacs-lisp では
どう書けばいいのでしょうか?
0928名無しさん@お腹いっぱい。NGNG
(define-key global-map [(control \`)] 'tcode-toggle-katakana-mode)
0929927NGNG
>>928
ありがとうございます。
C-` 押しても toggle されません・・・・
M-x tcode-toggle-katakana-mode
すれば
You can run the command `tcode-toggle-katakana-mode' with C-`
って表示されるのになんでだろう・・。
0930名無しさん@お腹いっぱい。NGNG
>>929
-nw ですか?
0931927NGNG
>>930
-nw というか、 --without-x make しています。
0932名無しさん@お腹いっぱい。NGNG
(logand ?` #16r1f)
=> 0
terminal emulator で C-` に別のシーケンス (C-c ` とか) を吐くように
設定し、それにバインドすれ。
0933名無しさん@お腹いっぱい。NGNG
>>931
そりゃ無理です。

そーいえば一般的には
[(control \`)]
じゃなくて
[(control ?`)]
でした。テキトーに試したら動いたので書いちゃったけど、スマン。
0934名無しさん@お腹いっぱい。NGNG
vip*-modeと他のモードを併用したいのですがどうすればいいのでしょうか?
0935名無しさん@お腹いっぱい。NGNG
viper-mode は他のモードと併用できますよ。
vip-mode は知らん。
vi-mode は無理。
0936名無しさん@お腹いっぱい。NGNG
以前gnu.emacs.sourcesにblockquote.elというのが流れたと思うんですが、
今webのどっかに転がってる場所御存知の方いませんか?

ぐぐると、それを参考にしたというblockquote.vimは見つかるんですが、
肝心のelispの方が見つからんのです。
0937名無しさん@お腹いっぱい。NGNG
>>936
> 以前gnu.emacs.sourcesにblockquote.elというのが流れたと思うんですが、

下記を見ると「boxquote.el」という同じようなものがあるらしい。
http://groups.google.com/groups?q=blockquote.el%E3%80%80emacs&hl=ja&lr=&ie=UTF-8&selm=87zolvgzmh.fsf%40sonera.com&rnum=2

「boxquote.el」は、URLの先にありました。
0938名無しさん@お腹いっぱい。NGNG
>>937
ああ、これでございます。ありがとうございます。
boxquote.elでしたか……。
私はNutti Kotivuori氏とケコーンすべきなのでしょうか。(W

Google Groupも見たのですが、そもそも思い込みで名前を間違えた上
gnu.emacs.sourcesしか検索しなかったのが失敗だったようでございます。
0939名無しさん@お腹いっぱい。NGNG
937さんが教えてくれたURLに、parenface.elというのを見つけたので紹介します。
どこかのLispスレの「lisperは括弧を見ない」という話そのままに、
lisp-mode等で括弧のfaceを薄い色に変えるというものです。
0940名無しさん@お腹いっぱい。NGNG
なんちゃってlisperだけど
カッコみえなきゃ果てしなく困る悪寒
0941名無しさん@お腹いっぱい。NGNG
括弧消すとちょっと pythonっぽく見えるって事なんだろうけど、
'(',')' を ' 'に置き換えたコード見ると激しく辛いな。
0942名無しさん@お腹いっぱい。NGNG
括弧消すと
括弧入れるの忘れない?
#入れてもドコにいれたかわかりにくい とか

このモードは見る用なのかな?
0943名無しさん@お腹いっぱい。NGNG
見えないじゃなくて
うすくするんだろう。
0944名無しさん@お腹いっぱい。NGNG
じゃあ目をこらせば見えるのか
0945名無しさん@お腹いっぱい。NGNG
>>940-942,944
おまえら頭悪すぎ。
0946名無しさん@お腹いっぱい。NGNG
別にそのままでも見ようと思わないかぎり見えないわけだが。

見ようと思うときは show-paren-mode による対応表示。
0947名無しさん@お腹いっぱい。NGNG
ちゃんと括弧でくぎらない言語なんて使いたくない。
0948名無しさん@お腹いっぱい。NGNG
(ちゃんと括弧でくぎらない言語なんて使いたくない。)
0949名無しさん@お腹いっぱい。NGNG
((ない (使いたく)
(なんて (言語
(ちゃんと ((ない くぎら) (で 括弧)))))))
0950名無しさん@お腹いっぱい。NGNG
(defadvice 949 (around うそ-949 activate)
(うそ (なんて ad-do-it)))
0951名無しさん@お腹いっぱい。NGNG
つーか、949は常識を持ち合わせていれば読めないわけだが。
0952名無しさん@お腹いっぱい。NGNG
(equal 949 うんこ) ; => t
0953名無しさん@お腹いっぱい。NGNG
常識とはなんぞや。
文法木という常識を持っていれば普通に読めるだろ。
というか意味がはっきりするから読みやすいくらい。
0954名無しさん@お腹いっぱい。NGNG
Emacs 21.3からCVS-Headに移行したんだが、フォント回りって変更になったの?
なぜか、fixed-なフォントを指定しているんだが、反映されてないっぽい。欝。
0955名無しさん@お腹いっぱい。NGNG
viper-modeの最中に
exコマンドを使おうとすると
:Eval
となってしまいexコマンドが使えません。
そこで質問です。

1. viper-modeでexコマンドを使うにはどうすればいいのでしょうか?
2. :evalとはなんでしょうか?

よろしくお願いします。
0956名無しさん@お腹いっぱい。NGNG
質問の意味がよくわからんけど、
viper-mode 中(mode-line が <V> となってる時)に
: 押せば普通に ex コマンド使えるよ。
0957名無しさん@お腹いっぱい。NGNG
emacs-21.3.50 上で yatex-mode を使用しているのですが、C-l を実行すると
色付けがされなくなってしまします。どのへんを調べればよいでしょうか?
0958名無しさん@お腹いっぱいNGNG
spamfilter.el (0.11) を使おうとしてるんですが、
require: Symbol's value as variable is void: macro-declaration-function
となり使えません。

Makefile の先頭適宜書き換えて、make; make install しただけですが、
どなたかアドバイスお願いします。
0959名無しさん@お腹いっぱい。NGNG
>>957
手元の 1.70 で再現したので調べたら、
YaTeX-font-lock-recenter で (setq font-lock-keywords nil) してるから
っぽい。何でこんなことしてるのか知らないけど。
21.3.50 で使うなら (setq font-lock-set-defaults nil) とでもしとけば?
0960名無しさん@お腹いっぱい。NGNG
>>958 検索
0961名無しさん@お腹いっぱいNGNG
>>960
ググッてるんですが、なかなか見つからないもので。
0962名無しさん@お腹いっぱい。NGNG
古い Emacs 使ってる?
spamfilter.el の with-spamf-corpus の
(declare (indent 2) (debug t))
を削除して make ; make install したらどう?
0963名無しさん@お腹いっぱいNGNG
>>962
Emacs 21.3.1 使ってます。
で、上記(>>962)実行したところエラーがなくなり無事使えます。
ありがとうございました。
0964名無しさん@お腹いっぱい。NGNG
括弧が見えないと困るとか入力忘れるとか逝ってる香具師へ。簡単にまとめてみた。

タコ  - 括弧の数を全部常に数えてしまう。入力時に対応が取れなくて困る。読めない賭けない。
     括弧は邪悪の根源であり、この世の悪を体現していると信じている。
入門  - 編集している周辺の括弧を数えてしまう。ただし一度対応を間違えると嵌る。読み難いとかいってる。
     括弧は恐ろしく、恐怖の対象。
初心者 - エディタの支援機能を使うことを覚える。対応を見るために括弧を消して再入力し、対応括弧を強調するとかしてる。
     後で読むと読みにくいとかいってる。括弧は読み難い。
普通 - インデントを読めるようになる。Emacsの S 式編集コマンドを覚え始める。
     defun 一つ分だけナローイングして編集したり読んだりとか小技も覚え始める。
     括弧はもうどーでもいい。
上級者 - S 式編集コマンドをマスター。さらに処理系毎に専用モードも完全に使いこなすようになる。
     C ライクな文法からのコンバータを使ったりと、様々な小技を使いこなす。括弧の利点を理解してる。
Hacker - S 式の真髄を理解する。もはや括弧は空気のような存在に。
Wizard - ゴスパーやグリーンブラットとはファーストネームで呼び合う仲。
0965名無しさん@お腹いっぱい。NGNG
>>964
まんざらとも思わないが分かりずれぇ
0966名無しさん@お腹いっぱい。NGNG
Hacker より上の判定がいまいち。
0967名無しさん@お腹いっぱい。NGNG
>>964
で、藻前はどこに分類されると?
0968名無しさん@お腹いっぱい。NGNG
中級は尊い
0969名無しさん@お腹いっぱい。NGNG
> 中級は尊い
これよく見るんだけどなんかの格言とか?
0970964NGNG
>>965 やっぱり。最初は箇条書でもーちょい詳細だったのですが、文字数制限にひっかかりまして…。どうせならもっと簡潔にすべきでしたかね。
>>966 ネタを考えてください。その辺で想像力が切れちゃったので。
>>967 現在は普通で上級者を目指しているところですが。正直、漏れの経験に基づく基準ですけど。
0971名無しさん@お腹いっぱい。NGNG
Cのソース書いてて (while ... とかつい書いてしまったことがある。
レス数が950を超えています。1000を超えると書き込みができなくなります。