Emacs part 22
■ このスレッドは過去ログ倉庫に格納されています
0001Zeno ◆5nZQbNmQPs
2007/06/03(日) 08:46:53このスレッドは皆が Emacs に関しての情報を共有し合う場である.
まあ気楽にやっていこうではないか
EmacsWiki http://www.emacswiki.org/
Emacs 電子書棚 http://www.bookshelf.jp/
GNU Emacs - GNU Project - Free Software Foundation (FSF) http://www.gnu.org/software/emacs/
emacs - SCM: CVS Repositories [Savannah] http://savannah.gnu.org/cvs/?group=emacs
NTEmacs スレッド http://pc11.2ch.net/test/read.cgi/software/1097170623/
前スレ http://pc11.2ch.net/test/read.cgi/unix/1168261179/
最新の stable リリースは「22.1」であり、本体は
* http://ftp.gnu.org/pub/gnu/emacs/emacs-22.1.tar.gz
* http://ftp.gnu.org/pub/gnu/emacs/windows/emacs-22.1-bin-i386.zip (Windows)
からダウンロード可能である.
ちなみに吾の名は Zeno -- Emacs を使用した情報操作の魔術師である.
0575名無しさん@お腹いっぱい。
2007/09/04(火) 09:42:090576名無しさん@お腹いっぱい。
2007/09/04(火) 11:44:330577名無しさん@お腹いっぱい。
2007/09/04(火) 11:52:220578名無しさん@お腹いっぱい。
2007/09/04(火) 15:59:070579名無しさん@お腹いっぱい。
2007/09/04(火) 16:34:33set-buffer-process-coding-system
0580名無しさん@お腹いっぱい。
2007/09/04(火) 22:54:270581名無しさん@お腹いっぱい。
2007/09/04(火) 23:23:28Alt押しながらx s e t - b u f f e r - p r o c e s s - c o d i n g - s y s t e TAB Enter
スペース入れて書いたけどスペースキーは押さなくていい。
0582名無しさん@お腹いっぱい。
2007/09/05(水) 00:13:530583名無しさん@お腹いっぱい。
2007/09/05(水) 02:52:16echo あああ
は日本語で表示されるのですが、その他はダメでした
output, input 共に euc-jp です
0584名無しさん@お腹いっぱい。
2007/09/10(月) 21:32:04基本的な編集操作は覚えたのですが、Vimで使っていた便利な昨日の使い方が分かりません。
1. 直前に行った操作の繰り返し(Vimで言う、 ".")
2. 指定キャラクタまで移動。(Vimで言う、 "f") // df>で、次に">"が現れるまでを削除等
3. 現在の行の最初にヒットした部分の置き換え(Vimで言う、":s/abc/def/") // :1,5s/abc/def/ 1〜5行目の最初だけ置き換え
このような編集を、Emacsで行う方法が分かりません。
もしよろしければ、VimとEmacsの対応する操作を記述しているサイトなどがあれば教えて頂けるとありがたいです。
どうか宜しくお願いします。
0585名無しさん@お腹いっぱい。
2007/09/10(月) 22:36:44> 1. 直前に行った操作の繰り返し(Vimで言う、 ".")
C-u 使え。
使い方は C-u 繰り返したい数字 繰り返したい操作。
例えば、C-u 5 C-n すれば下に 5 行移動。
または、直前に行った操作だけでいいのなら下のでどうよ?
C-: (eval (cdar command-history))
面倒くさいだろうから適当な関数定義してどっかのキーに割り当ててくれ。
後はマクロを使えばいけるかも。使ったこと無いが。
> 2. 指定キャラクタまで移動。(Vimで言う、 "f") // df>で、次に">"が現れるまでを削除等
C-s の isearch と C-Space の set-mark-command でいいんじゃね?
例えば、C-s > RET C-Space C-s > C-w
もしくは M-x replace-regexp
> 3. 現在の行の最初にヒットした部分の置き換え(Vimで言う、":s/abc/def/")
今ひとつよくわからんが、M-x replace-regexp \(^.*?\)abc RET \1def RET でどうよ?
現在の行だけということなら、query-replace-regexp 使って一回置き換えして
止めればいいし。
// :1,5s/abc/def/ 1〜5行目の最初だけ置き換え
C-x n n の narrow-to-region 使ってください。
でもきっと VIPER-mode とか使えば問題無いです:-)
0586名無しさん@お腹いっぱい。
2007/09/10(月) 22:55:26無理に vi の常識持ち込まずに
頭切り替えて使った方がいいよ。
0587名無しさん@お腹いっぱい。
2007/09/10(月) 23:05:58これは M-z > でいけるかな
0588名無しさん@お腹いっぱい。
2007/09/10(月) 23:29:43そうそう。そのままあてはめるのは辛いだけ。
0589名無しさん@お腹いっぱい。
2007/09/10(月) 23:36:141 は繰り返しで何をしたいかによって
適したやり方は違ってくると思う。
C-u とかキーボードマクロもあるけど、
たとえば各行のある特定のカラムに aaa を挿入したい
なんて場合は region 選択して C-x r t aaa RET とか。
2 は C-s > C-x C-x C-w だな。おれは。
3 はおれなら M-% しちゃう。
0590名無しさん@お腹いっぱい。
2007/09/11(火) 00:50:41あとは repeat(C-x z) とか、
repeat-complex-command(C-x Esc Esc) とかですかね。
0591名無しさん@お腹いっぱい。
2007/09/11(火) 02:56:55>>>>>■ おすすめ2ちゃんねる 開発中。。。 by FOX ★
このスレを見ている人はこんなスレも見ています。(ver 0.20)
uim スレッド 7 [Linux]
【名古屋】脱ヲタクファッションオフin名古屋 4着目【脱ヲタ】 [定期OFF]
京都市内の道路事情・道路整備について Part8 [運輸・交通]
東北学院大学part84 [大学生活]
Perlコーディング初心者質問スレ Part 55 [WebProg]
0592名無しさん@お腹いっぱい。
2007/09/11(火) 12:16:19それが記録されるのはIEだけ。
ここみたいにIE以外で見てるのが多そうな場所では意味なし。
0593名無しさん@お腹いっぱい。
2007/09/11(火) 12:48:36普段は専ブラだけどもさ。
0594名無しさん@お腹いっぱい。
2007/09/11(火) 12:51:170595名無しさん@お腹いっぱい。
2007/09/13(木) 14:16:50emacs上のマウスカーソルは.emacsに何を書けば消せるのですか?
emacsで文章を書くとき
マウスカーソルが邪魔なので
フォーカスがemacsにあるときにはマウスカーソルを消したいのです。
googleで「emacs マウスカーソル 消去」で検索したら
Meadowでのマウスカーソルの消去法はわかりました。
(setq w32-hide-mouse-on-key t)
しかし肝心のemacsでのマウスカーソルの消去法がわかりません。
どなたか教えてください。
ちなみに
emacsはGNU Emacs 22.1.1
です。
0596名無しさん@お腹いっぱい。
2007/09/13(木) 14:19:250597名無しさん@お腹いっぱい。
2007/09/13(木) 15:26:38(mouse-avoidance-mode 'banish)
0598名無しさん@お腹いっぱい。
2007/09/13(木) 16:31:510599名無しさん@お腹いっぱい。
2007/09/13(木) 19:09:43ワシもそれ使ってる
X限定だね
0600名無しさん@お腹いっぱい。
2007/09/13(木) 20:10:280601595
2007/09/13(木) 20:56:25そんなのがあるんですね。
(mouse-avoidance-mode 'banish)
を使ってみたんですけど、
悪くないですね。
ありがとうございました。
>>600
マウスカーソルが文字に重なるのが嫌なのです。
だからといって文字の色と同じにしようとしても
プログラムをするさい、宣言や関数名とかで
文字色が違うので・・・
0602名無しさん@お腹いっぱい。
2007/09/13(木) 20:57:49Emacs 以外にも使えるし。
0603名無しさん@お腹いっぱい。
2007/09/14(金) 10:38:54unclutter使ってるとき、OpenOffice.orgの上だと激しく点滅してCPU喰いまくる
んだけど対処法ある? スレ違いスマソ。
0604名無しさん@お腹いっぱい。
2007/09/14(金) 10:45:120605595
2007/09/14(金) 11:50:34unclutterを知りませんでしたので
調べて使ってみました。
これが一番いいな!と思いました。
結局unclutterを使っていこうと思いました。
ありがとうございました。
0606名無しさん@お腹いっぱい。
2007/09/14(金) 12:49:570607595
2007/09/14(金) 15:10:59マウスカーソルが文字の上に来て
微妙に文字が見えにくくなるのがいやなので
ちょっと求めるものじゃないです
unclutterを使ってると
emacsを終了した時点で
xtermにフォーカスが移らないというとこがたまに起こります。
(たぶん何か変な操作をした、するんだと思います)
何か微妙な感じがして
(mouse-avoidance-mode 'banish)
に戻しました。
0608名無しさん@お腹いっぱい。
2007/09/14(金) 19:16:06http://news21.2ch.net/test/read.cgi/news7/1189722312/
米Google社は14日、日本のプログラマ亀井哲弥氏に対し154億円を支払い、
Google社に移籍しxyzzyの開発に専念してもらう事に「大筋で合意した」と発表した。
Google社が個人を買収するのは異例。亀井氏はテキストエディタ「xyzzy」の開発者であり、
Google社のスポークスマンは報道陣に対し「xyzzyをweb上に移植することで、
Emacs・viなどの伝統的なテキストエディタに対する強力なライバルにしたい。」とコメントした。
0609名無しさん@お腹いっぱい。
2007/09/14(金) 20:33:44つまんねーから氏ねよレス乞食
0610名無しさん@お腹いっぱい。
2007/09/15(土) 02:49:410611以下、名無しにかわりましてVIPがお送りします。
2007/09/15(土) 10:34:59(c-set-style "linux")
(setq tab-width 4)
(setq indent-tabs-mode nil)
(setq c-basic-offset tab-width))
(add-hook 'c-mode-hook 'my-4-mode-hook)
ってやるとc-modeでインデントがスペースになるのに
(defun my-ntabs-mode-hook ()
(setq indent-tabs-mode nil))
(add-hook 'yatex-mode 'my-ntabs-mode-hook)
ってやってもyatex-modeの行頭のインデントがスペースになりません
なんでですか?
0612名無しさん@お腹いっぱい。
2007/09/15(土) 11:06:470613823
2007/09/15(土) 11:51:02キーにバインドさせるべき関数が分からなくて困っています。
Perlモードで使用すると、メニューバーに「Perl」が現れ、
そこから「Run」を選択すると、編集中のスクリプトを実行できます。
これを\C-tjにバインドしたいと思い、調べたところ、どうやら、
(add-hook 'perl-mode-hook
'(lambda ()
(local-set-key "\C-tj" 'FUNCTION)))
のように.xemacs/init.elに書けばよいようなのですが、
ここのFUNCTIONに何を書けば良いのかが分かりません。
何と書けばよいでしょうか?
0614名無しさん@お腹いっぱい。
2007/09/15(土) 12:24:12(local-set-key [delete] 'delete-backward-char)
)
(add-hook 'c-mode-hook 'my-c-mode-hook)
c-modeでdeleteを押したとき、タブをスペースに展開せずにタブごと消してほしいのですが、
うまくいきません。
どっかまちがってますか?
0615以下、名無しにかわりましてVIPがお送りします。
2007/09/15(土) 12:56:56言われて気づいた
yatex-mode-hookだわな
ありがとう、助かった
0616名無しさん@お腹いっぱい。
2007/09/15(土) 15:28:25M-x describe-key
で実際にdeleteで何が実行されたか確認したらいいんじゃね
0617名無しさん@お腹いっぱい。
2007/09/15(土) 15:57:54> どっかまちがってますか?
はい。圧倒的に間違っています。
> Add to the value of hook the function function.
> function is not added if already present.
> function is added (if necessary) at the beginning of the hook list
> unless the optional argument append is non-nil, in which case
> function is added at the end.
>
> The optional fourth argument, local, if non-nil, says to modify
> the hook's buffer-local value rather than its default value.
> This makes the hook buffer-local if needed, and it makes t a member
> of the buffer-local value. That acts as a flag to run the hook
> functions in the default value as well as in the local value.
>
> hook should be a symbol, and function may be any valid function. If
> hook is void, it is first set to nil. If hook's value is a single
> function, it is changed to a list of functions.
0618617
2007/09/15(土) 16:01:48お詫びの印に俺の.emacsの一部を進呈する。
(add-hook 'c-mode-common-hook
'(lambda ()
(define-key (current-local-map) "\C-c\C-c" 'compile)
....
0619名無しさん@お腹いっぱい。
2007/09/15(土) 17:29:160620名無しさん@お腹いっぱい。
2007/09/15(土) 17:30:15find . \( -type f -exec grep -q -e 文字 \{\} \; \) -exec ls -ld \{\} \;
が実行されますが、このコマンドを変更する方法はありませんか?
あったら教えて下さい
0621名無しさん@お腹いっぱい。
2007/09/15(土) 19:15:10c-mode-base-map を使った方がきれいじゃね?
(add-hook 'c-mode-common-hook
(lambda ()
(define-key c-mode-base-map "\C-c\C-c" 'compile)))
0622名無しさん@お腹いっぱい。
2007/09/15(土) 19:19:52こんな関数があったんだ。find-grep-dired() 見たけど、似たような関数を
自前で用意するしかないような感じでした。
0623名無しさん@お腹いっぱい。
2007/09/16(日) 09:20:270624名無しさん@お腹いっぱい。
2007/09/16(日) 09:24:04etagsを使う。これが無いと死ねる。
0625以下、名無しにかわりましてVIPがお送りします。
2007/09/16(日) 09:58:19使ってみたらプロトタイプ宣言に飛ばされるんですがどうしたらいいでしょうか?
できれば、内容定義してるところに飛びたいんです
0626名無しさん@お腹いっぱい。
2007/09/16(日) 11:14:24普通は飛ばないよ。普通は内容定義してるところに飛ぶと思うんだが。。
$ etags *.[ch]
ってやってからやってみ?
0627名無しさん@お腹いっぱい。
2007/09/16(日) 14:16:41C-uM-.で次のタグに飛べ。
0628以下、名無しにかわりましてVIPがお送りします。
2007/09/16(日) 14:31:59正直言うと使ってるのMeadowでした
linuxはいってるPCのほうではちゃんと動きました
ちなみに、Meadow の方がうまくいかなかったのは付属のetags.exeじゃなくてcygwinの方使ってたせいでした
ご迷惑おかけしました
しかしこれ凄いですね、とてもベンリです
ありがとうございました
0629名無しさん@お腹いっぱい。
2007/09/16(日) 18:50:34(インデントではなく、本当の意味でのマージン) のような動作は可能ですか?
例えば、ディフォルトでは "margin-left : 30px;" で、
outline のレベル 1 にマッチする行には "margin-left : 5px;" と同じようになる設定です。
0630名無しさん@お腹いっぱい。
2007/09/16(日) 20:35:070631名無しさん@お腹いっぱい。
2007/09/16(日) 20:46:51りして、編集作業の方は使い物にならなくなると思う。
0632名無しさん@お腹いっぱい。
2007/09/16(日) 23:36:400633629
2007/09/17(月) 00:29:50一応 text property 一覧全てを読んでみましたが、どれも駄目そうでした。。
>>632
でも、それではインデントと同じ意味合いのマージンになってしまいますよね?
(Emacsの set-left-margin 関数などの。)
僕の疑問は、文字を前方に prepend せずに、ブラウザがCSSの margin-left を処理するのと
同じような効果をEmacs上でも実現可能なのか、ということです。
0634名無しさん@お腹いっぱい。
2007/09/17(月) 00:47:33CSS もそちらの要望もよく判ってないけど overlay 使えばなんとかならんか
ね。
0635名無しさん@お腹いっぱい。
2007/09/17(月) 10:17:150636名無しさん@お腹いっぱい。
2007/09/17(月) 13:32:340637名無しさん@お腹いっぱい。
2007/09/17(月) 16:28:090638名無しさん@お腹いっぱい。
2007/09/17(月) 20:18:240639名無しさん@お腹いっぱい。
2007/09/17(月) 21:55:05/etc以下のファイルもemacsで編集したいのです
0640名無しさん@お腹いっぱい。
2007/09/17(月) 22:07:470641名無しさん@お腹いっぱい。
2007/09/17(月) 22:08:03Shellモードででも触っとけ
0642名無しさん@お腹いっぱい。
2007/09/17(月) 23:37:350643名無しさん@お腹いっぱい。
2007/09/18(火) 00:06:020644名無しさん@お腹いっぱい。
2007/09/18(火) 01:09:170645名無しさん@お腹いっぱい。
2007/09/18(火) 07:44:380646名無しさん@お腹いっぱい。
2007/09/19(水) 09:19:400647名無しさん@お腹いっぱい。
2007/09/19(水) 12:06:560648名無しさん@お腹いっぱい。
2007/09/19(水) 14:01:20emacs本を買ってみたのですが、肝心の習得方法がどこにも載ってませんでした。
0649名無しさん@お腹いっぱい。
2007/09/19(水) 14:30:01まずはチュートリアルをやってみるといい。
メニューが表示されていれば
ヘルプ(Help)ってところに 練習(Emacs Tutorial) ってのがあると思う。
emacs -e help-with-tutorial
か
emacs -e help-with-tutorial-spec-language
で emacs を起動すれば同じようにチュートリアルが始まる。
spec-language の時は言語を選べる。
J<Tab><Enter> とか押せば日本語を選べる。
0650名無しさん@お腹いっぱい。
2007/09/19(水) 15:24:15不可能なのでしょうか?
マクロ、define-key global-set-keyを使う方法で上手くいきませんでした。
0651名無しさん@お腹いっぱい。
2007/09/19(水) 15:35:180652名無しさん@お腹いっぱい。
2007/09/19(水) 16:34:180653名無しさん@お腹いっぱい。
2007/09/19(水) 18:33:30ttp://www.glassgiant.com/custom_keyboard/?l1=C-c&size=large
ttp://www.glassgiant.com/custom_keyboard/?l1=Super&size=large
ttp://www.glassgiant.com/custom_keyboard/?l1=Hyper&size=large
ttp://www.glassgiant.com/custom_keyboard/?l1=M-x+kill-emacs&size=large
お好きなキーをどぞー
0654名無しさん@お腹いっぱい。
2007/09/19(水) 18:55:41C-x o,C-x 1,C-x 2,C-x 3,C-x 0
英小文字oと数字の0が紛らわしいけど
この5つを覚えれば不意のバッファ分割にもマゴつかない
0655名無しさん@お腹いっぱい。
2007/09/20(木) 00:10:59おぉ仲間。
春に半年振りにVerUPした時ぐらいから重たくなった(Meadowですが…)。
特に、でかいヘッダは気が遠くなるぐらいに・・・・
0656名無しさん@お腹いっぱい。
2007/09/20(木) 10:37:21C-xやC-u,C-cもなんらかの関数で入力できないのかなぁと思いまして
キーボード自体はいたって普通のキーボードです
>>653のような商品があるくらいですから方法はあるはずなんですよね
0657名無しさん@お腹いっぱい。
2007/09/20(木) 13:14:12copy-keymapとかset-parent-keymapとかで
ctl-x-mapをマップするような方向でできそう。
0658名無しさん@お腹いっぱい。
2007/09/20(木) 21:46:50C-uに至っては何をかいわんや。
>>656はelisp.info読むとかdescribe-keyしてみるとかすれ。
0659名無しさん@お腹いっぱい。
2007/09/20(木) 23:45:04おっしゃる通りにelisp-infoを参考に色々ためしてたらprefixキーの置換は
(-set-key 設定したいキー なんとか-map)
でできました
C-uはuniversal-argumentのようなのでそれを設定したらできました
あとは使いながらC-なんとか C-それとか のキーバインドをC-なんとか それとかに変えていけば
モディファイ同時押しありの2 ストロークから同時押しなしの2ストロークの環境のできあがりです
どうもありがとうございました
0660名無しさん@お腹いっぱい。
2007/09/21(金) 01:32:17listp じゃないものを対象としちゃってもいいやつ。
0661名無しさん@お腹いっぱい。
2007/09/21(金) 23:08:460662名無しさん@お腹いっぱい。
2007/09/22(土) 09:38:52... こんなのLISPじゃない!!!
0663名無しさん@お腹いっぱい。
2007/09/22(土) 09:56:110664名無しさん@お腹いっぱい。
2007/09/22(土) 10:37:170665名無しさん@お腹いっぱい。
2007/09/22(土) 18:13:06setnu.el と比べてどう?
0666名無しさん@お腹いっぱい。
2007/09/22(土) 21:25:13setnu.el はだいぶ昔に使ったことがあったけど、なんか常用
できないレベルだった気がする。
linum.el はいたって普通に使えてる。
emacs-devel を見ていて知ったんだけど、たぶん標準添付
されそうな感じだよ。
0667名無しさん@お腹いっぱい。
2007/09/22(土) 22:50:15今使ってみたけど、フォントの設定とかfont-lockの性能に大きく左右されるね。
cperl-modeでスクロールが異常に遅くなって焦った。
0668名無しさん@お腹いっぱい。
2007/09/23(日) 00:09:520669名無しさん@お腹いっぱい。
2007/09/23(日) 18:29:130670669
2007/09/23(日) 18:33:230671名無しさん@お腹いっぱい。
2007/09/24(月) 12:26:18HTMLも含め、JavaScriptを正しく再インデントできないでしょうか?
HTMLモードで再インデントを行うと、JavaScriptのインデントが、全て
同一になってしまいます。
0672名無しさん@お腹いっぱい。
2007/09/24(月) 12:54:49mmm-mode
0673名無しさん@お腹いっぱい。
2007/09/25(火) 01:35:51Windows環境で使うならば、Meadowと(NT?)Emacsのどちらを選ぶのがベターでしょうか。
0674名無しさん@お腹いっぱい。
2007/09/25(火) 01:42:20skkとか使うなら関係ないけど。
■ このスレッドは過去ログ倉庫に格納されています