1 名前:名無しさん@お腹いっぱい。 [2011/11/29(火) 17:50:44.24 ] 前スレ Emacs Part 38 hibari.2ch.net/test/read.cgi/unix/1308635178/
611 名前:名無しさん@お腹いっぱい。 mailto:sage [2012/01/08(日) 19:00:19.17 ] >>608 C-u 0 w w runs the command dired-copy-filename-as-kill, which is an interactive compiled Lisp function in `dired.el'. It is bound to w. (dired-copy-filename-as-kill &optional ARG) Copy names of marked (or next ARG) files into the kill ring. The names are separated by a space. With a zero prefix arg, use the absolute file name of each marked file.
612 名前:名無しさん@お腹いっぱい。 mailto:sage [2012/01/08(日) 19:51:29.65 ] >>609 まだ開発続いてると思うけど。
613 名前:名無しさん@お腹いっぱい。 mailto:sage [2012/01/08(日) 20:38:47.17 ] >>609 lookup て辞書検索できる lookup のことかな。 次といっても dict と epwing が理解できればそれで十分に思える、自分には。
614 名前:名無しさん@お腹いっぱい。 mailto:sage [2012/01/08(日) 20:54:03.71 ] epwing自体がおわコンというか… 変換スクリプトもメンテされてないし、入手不可能だったり。
615 名前:名無しさん@お腹いっぱい。 mailto:sage [2012/01/08(日) 20:57:40.10 ] ネット辞書から引けたほうがまだいいわな。 ただ emacs-w3m がいまいちだからねえ。 emacs-xwidget + webkit が安定して使えるようになったらうっはうはなんだが・・・
616 名前:名無しさん@お腹いっぱい。 mailto:sage [2012/01/08(日) 21:14:40.45 ] >>615 それなら普通にブラウザ使う方がいい。
617 名前:名無しさん@お腹いっぱい。 mailto:sage [2012/01/08(日) 21:56:44.63 ] >>612 RHEL6のx64でまともに動かんかった emacsが悪いのか外部が悪いのかよく分からん 4文字の単語を退いたときだけ駄目とか変な挙動いろいろで調べる気が起きん
618 名前:名無しさん@お腹いっぱい。 mailto:sage [2012/01/08(日) 22:02:12.17 ] >>616 むしろブラウザだけでいい
619 名前:名無しさん@お腹いっぱい。 mailto:sage [2012/01/08(日) 22:21:01.13 ] firefox+keysnailにファイルエディット機能つければemacsの代わりに使えるんじゃね?
620 名前:名無しさん@お腹いっぱい。 mailto:sage [2012/01/08(日) 22:25:56.90 ] むしろfirefoxにemacsを組み込んだ方が
621 名前:名無しさん@お腹いっぱい。 mailto:sage [2012/01/08(日) 22:34:39.67 ] ブラウザにEmacs組み込むのと Emacsにブラウザ組み込むのどっちが楽だろう
622 名前:名無しさん@お腹いっぱい。 mailto:sage [2012/01/08(日) 22:42:25.03 ] >>621 後者は既出感が…
623 名前:名無しさん@お腹いっぱい。 mailto:sage [2012/01/08(日) 22:44:19.10 ] ちゃんとJavaScript 解釈してかつ elisp からブラウザの状態弄れるのがいいなあ
624 名前:名無しさん@お腹いっぱい。 mailto:sage [2012/01/08(日) 22:48:48.36 ] なんか面白い elisp ないかしらん
625 名前:名無しさん@お腹いっぱい。 mailto:sage [2012/01/09(月) 01:29:57.86 ] >>624 seimei.el tako.el trr.el
626 名前:名無しさん@お腹いっぱい。 mailto:sage [2012/01/09(月) 01:43:55.29 ] なんであれだけ発行部数出てないんだろうねぇ。
627 名前:名無しさん@お腹いっぱい。 mailto:sage [2012/01/09(月) 02:55:49.39 ] >>621 Javascript PC Emulator ttp://bellard.org/jslinux/ で、ブラウザ上でQEmacsが使えます。 ~ # which emacs /usr/bin/emacs ~ # ls -l /usr/bin/emacs lrwxrwxrwx 1 root root 2 May 14 2011 /usr/bin/emacs -> qe ~ # ls -l /usr/bin/qe -rwxr-xr-x 1 root root 108240 May 16 2011 /usr/bin/qe ~ # strings /usr/bin/emacs | fgrep -i version QEmacs version 0.3.1, Copyright (c) 2000-2003 Fabrice Bellard
628 名前:名無しさん@お腹いっぱい。 mailto:sage [2012/01/09(月) 03:17:21.81 ] 【スタッフ募集】路線名を擬人化させたエロゲ【鉄オタも】 hayabusa.2ch.net/test/read.cgi/news4vip/1326032146/ 【wiki】 www38.atwiki.jp/train_erog/ 【避難所】 jbbs.livedoor.jp/game/54004/
629 名前:名無しさん@お腹いっぱい。 mailto:sage [2012/01/09(月) 08:39:46.95 ] >>625 tako.el みて普通に日本語のシンボル名作れることに驚愕した
630 名前:名無しさん@お腹いっぱい。 mailto:sage [2012/01/09(月) 12:53:58.93 ] 関数の中で直接呼び出されている関数*だけ*置き換える方法ってありませんでしょうか? (defun greeting (msg who) (message "%s, %s" msg who)) (defun hello (who) (message "===hello===") (greeting "hello" who)) みたいになっている時、 hello の中で直接呼ばれてる message だけ置き換えたいのです。 flet を使うと greeting の中の message まで置き換えられてしまいます。 関数定義をそのまま引っ張ってきて書き換えたものを再定義したり fset したりする以外に方法はありませんでしょうか?
631 名前:名無しさん@お腹いっぱい。 mailto:sage [2012/01/09(月) 12:58:14.67 ] 関数を around アドバイスして flet ってやったらできないんだっけ?
632 名前:名無しさん@お腹いっぱい。 mailto:sage [2012/01/09(月) 12:58:40.71 ] あ、馬鹿なこと言ったごめ。
633 名前:名無しさん@お腹いっぱい。 mailto:sage [2012/01/09(月) 13:57:27.13 ] 全然うまい方法が思いつかなかったので、じゃあせめて置き換え後の関数で 呼び出し元の関数を判断して挙動を変えようと思ったのですが、 今度は呼び出し元の関数の調べ方がわかりません。 b.hatena.ne.jp/IMAKADO/elisp/callee/ とかは見つかったんですが 肝心のリンク先が壊れて見れないという・・・トレースとか書いてあるから バックトレースの内容を参照するってことなんでしょうかね・・難しい。
634 名前:名無しさん@お腹いっぱい。 mailto:sage [2012/01/09(月) 14:42:51.45 ] なんかものすごく力技な感じになりましたが一応実装できたので貼っておきます。 なんかもっとスマートな方法はないのか・・・・ (defun greeting (msg who) (message "%s, %s" msg who)) (defun hello (who) (message "===hello===") (greeting "hello" who)) (defun callee () "呼び出し元の関数名を文字列で返す" (let ((bt (split-string (with-output-to-string (backtrace)) "^ *\\|\n" t))) (while (and bt (not (string-match "^callee\\>" (pop bt))))) (cadr bt))) (defadvice hello (around ad-hello-no-heading activate compile) "hello が直で呼び出している message だけ ignore に置き換える" (let ((org-message (symbol-function 'message))) (flet ((message (format-string &rest args) (if (string-match "^ad-Orig-hello\\>" (callee)) ;; advice の場合は ad-Orig-* になる (ignore) (apply org-message format-string args)))) ad-do-it)))
635 名前:597 mailto:sage [2012/01/09(月) 16:29:31.21 ] >>598-599 >>607 ありがとうございます。 indent-line-function等で制御するよりも>>607 を改変すればよさそうだと思いました ですが改変がうまくいきません if (x>0) { proc1() proc2() } else if (x<0) { proc3() proc4() } else { proc5() proc6() } こういう風に自動的にインデントさせようとして www.gnu.org/software/emacs/manual//html_node/elisp/SMIE-Grammar.html#SMIE-Grammar の("then" insts "end")を("{" insts "}")、 ("if" exp "then" inst "else" inst)を("if" exp inst "else" inst)、 (insts (insts ";" insts) (inst))を(insts (insts insts) (inst))、 に書き換えましたが、{を入力してC-jを押すと(newline-and-indent) (wrong-type-argument integer-or-marker-p nil) とエラーが出ました このif (test) {procs} else if (test) {procs} else {procs} を (procsは改行区切りです) インデントさえできればいいのですが どうすればよいでしょうか
636 名前:597 mailto:sage [2012/01/09(月) 16:39:18.77 ] あと、調べていて気づいたのですが www.emacswiki.org/emacs/IndentingC#toc1 このcc modeをdefine-generic-modeで作成したモードで 使えればよさそうだと思いました というのも整えようとしているのがc++ likeのコードに似ているからです 上のsmie改変がうまくいかないときにはこれで十分です define-generic-modeで作成したモードの初期化部分で このcc modeの機能を利用することはできるでしょうか
637 名前:名無しさん@お腹いっぱい。 mailto:sage [2012/01/09(月) 16:39:19.97 ] ちなみにサンプルの設定ではうまく動いたの? smieって何やってるのかわからなかったけど smie-setup で indent-line-function 設定してるのな。 ちょっと真面目に使い方勉強してみるか。
638 名前:名無しさん@お腹いっぱい。 mailto:sage [2012/01/09(月) 16:40:28.70 ] >>636 特定のモードを元にモードを作る場合は define-derived-mode を使うといいよ。
639 名前:名無しさん@お腹いっぱい。 mailto:sage [2012/01/09(月) 17:09:57.88 ] >>635 "}"とかが token として認識されてないんじゃないの?
640 名前:597 mailto:sage [2012/01/09(月) 17:50:59.31 ] >>637 はい。サンプルは動きました。↓の各セクションから以下の設定をコピペして www.gnu.org/software/emacs/manual//html_node/elisp/SMIE.html#SMIE (eval-when-compile (require 'cl)) (require 'smie) (defvar sample-smie-grammar (defvar sample-keywords-regexp (defun sample-smie-forward-token () (defun sample-smie-backward-token () インデント分をこう設定し (defvar sample-indent-basic 4) メジャーモードを作成する (define-generic-mode の初期化部分で (list (function (lambda () (add-hook 'hoge-mode-hook (lambda () (smie-setup sample-smie-grammar #'sample-smie-rules) と書きました。 あと、>>635 の(insts (insts ";" insts) (inst))は書き換えないままでした 書き換えるとエラーになります すみません >>639 確かにtokenの設定が抜け落ちていました。ですが (defvar sample-keywords-regexp (regexp-opt '("+" "*" "," ";" ">" ">=" "<" "<=" ":=" "="))) を (defvar sample-keywords-regexp (regexp-opt '("+" "*" "," ";" ">" ">=" "<" "<=" ":=" "=" "{" "}" "(" ")"))) に書き換えましたがだめでした >>638 なるほど、ただキーワードの色づけ設定は引き継ぎたくないのでdefine-gereric-modeで設定しました インデントとキーフックのみ特定のモードを引き継ぐという機能があればいいのですが
641 名前:名無しさん@お腹いっぱい。 mailto:sage [2012/01/09(月) 18:02:41.16 ] >>640 自分とこでちょっと動かしてみたいけど長そうだから ↓ここにコピペしてURL教えてくれ paste.lisp.org/new/emacs
642 名前:597 mailto:sage [2012/01/09(月) 19:05:20.29 ] 書きました paste.lisp.org/display/126938 よろしくお願いします
643 名前:名無しさん@お腹いっぱい。 mailto:sage [2012/01/09(月) 19:42:06.40 ] うおお、難しい とりあえずコメントの ';' と 区切り文字の ';' が干渉してるのと sample-smie-forward-token で a+b みたいなのが一気に通過しちゃうのが気になったけど じっくり取り組まないとわからんなあ・・・
644 名前:名無しさん@お腹いっぱい。 mailto:sage [2012/01/09(月) 21:32:24.24 ] サンプルのまんまで実行しても emacs 23 では wrong-type-argument が出るねえ。 emacs 24 で実行するとエラーは出ないけどちゃんと動いてるような感じがしない。 サンプルそのままで実行してもぶら下がりelseがちゃんと処理できてないように見えるなぁ。
645 名前:名無しさん@お腹いっぱい。 mailto:sage [2012/01/10(火) 00:11:10.77 ] >>629 skk に含まれてる skk-ja-names.el とか見てみろよ。 こんなだぞ。 (defalias 'SKKモード 'skk-mode) (defalias 'SKKのバージョン 'skk-version) (defalias 'SKKのバグを報告する 'skk-submit-bug-report) (defalias 'SKKのチュートリアル 'skk-tutorial)
646 名前:名無しさん@お腹いっぱい。 mailto:sage [2012/01/10(火) 11:26:09.75 ] load-path の追加に normal-top-level-add-subdirs-to-load-path を使うのを 止めたら起動時間が 500〜700ms 近く早くなって感動した
647 名前:名無しさん@お腹いっぱい。 mailto:sage [2012/01/10(火) 15:26:23.62 ] emacs使いの大半はcapslockをctrlにしている? それともそのまま?
648 名前:名無しさん@お腹いっぱい。 mailto:sage [2012/01/10(火) 15:30:40.42 ] そんなの調査のしようがないからなぁ。
649 名前:名無しさん@お腹いっぱい。 mailto:sage [2012/01/10(火) 15:34:21.26 ] 大半かどうかは知らんけどEmacs関係なく一定数いることは確か。 MSなんか公式でCTRL<=>CAPS逆にするドライバ配布してるし。 これも呪いの一つだとは思う。
650 名前:名無しさん@お腹いっぱい。 mailto:sage [2012/01/10(火) 17:29:15.59 ] なんでこれでエラーがでるんでしょう? (string-match (migemo-get-pattern "popw") "popwin") ここまでは大丈夫なのに。 (string-match (migemo-get-pattern "pop") "popwin")
651 名前:名無しさん@お腹いっぱい。 mailto:sage [2012/01/10(火) 17:37:09.14 ] 失礼しやした。 キャッシュがぶっ壊れていただけだった。
652 名前:名無しさん@お腹いっぱい。 mailto:sage [2012/01/10(火) 18:44:24.40 ] >>649 MSのドライバ配布なんて聞いたことがなかったから調べてみた www.atmarkit.co.jp/fwin2k/win2ktips/1182ctrl2cap/ctrl2cap.html ふむふむこれか。楽ちんなツールもあるもんだな
653 名前: 忍法帖【Lv=34,xxxPT】 mailto:sage [2012/01/10(火) 18:48:32.71 ] 入れ替えじゃなくてcapslockをctrlにしたい
654 名前:名無しさん@お腹いっぱい。 mailto:sage [2012/01/10(火) 19:51:36.16 ] 職場なんかだと交換よりCAPS潰すの方が ちょっと同僚が叩いた時とかに面倒がなくていいわ
655 名前:名無しさん@お腹いっぱい。 mailto:sage [2012/01/11(水) 00:27:15.52 ] 最新のソースを取得するにはどうすればいいんだ? ttp://savannah.gnu.org/projects/emacs/ ここに書いてあるとおり bzr branch bzr://bzr.savannah.gnu.org/emacs/trunk としても、メールで[Emacs-diffs]が届いた時点のソースが取得出来ない。 その後、bzr updateしても一向に更新されないし、bzrよーわからん。 そもそも、bzr branchが異様に時間が掛かるし、bzr腐ってる。
656 名前:名無しさん@お腹いっぱい。 mailto:sage [2012/01/11(水) 00:32:21.68 ] github のミラー使ったら? https://github.com/emacsmirror/emacs >A Mirror of the Emacs Bazaar repository ― Read more >www.emacswiki.org/emacs/EmacsFromGit
657 名前:名無しさん@お腹いっぱい。 mailto:sage [2012/01/11(水) 01:05:13.24 ] gitのミラーはとまってることがまれにあるのが玉に瑕。
658 名前:名無しさん@お腹いっぱい。 mailto:sage [2012/01/11(水) 08:32:51.99 ] git clone git://git.savannah.gnu.org/emacs.git
659 名前:名無しさん@お腹いっぱい。 mailto:sage [2012/01/11(水) 10:21:02.18 ] ecbとかセマンティックは消滅しちゃうんだろうか
660 名前:名無しさん@お腹いっぱい。 mailto:sage [2012/01/11(水) 12:14:29.24 ] 23.4のtarballsまだかよ。
661 名前:名無しさん@お腹いっぱい。 mailto:sage [2012/01/11(水) 12:40:39.01 ] カーソル移動は(previous-line)でできることは分かったのですが、 カーソル位置にある文字とその一つ前の文字を取得する関数はありますか? 取得した文字によって処理を分岐させたいのですが方法が分かりません
662 名前:名無しさん@お腹いっぱい。 mailto:sage [2012/01/11(水) 12:56:44.81 ] \C-x = が似たようなことをやっている。
663 名前:名無しさん@お腹いっぱい。 mailto:sage [2012/01/11(水) 13:01:57.88 ] char-after char-before following-char preceding-char
664 名前:名無しさん@お腹いっぱい。 mailto:sage [2012/01/11(水) 13:08:21.16 ] >>662-663 ありがとうございます
665 名前:名無しさん@お腹いっぱい。 mailto:sage [2012/01/11(水) 13:49:11.90 ] >>659 いや、普通に残ってる。 w3 っていつの間に消えてたんだろう・・・
666 名前:名無しさん@お腹いっぱい。 [2012/01/11(水) 16:05:23.89 ] *scratch*バッファをキルしたあとで,また*scratch*バッファを 開く方法無いですか? やりたいことは,*scratch*バッファの内容を復元することではなく メモ用のバッファを作ることなのですが・・・
667 名前:名無しさん@お腹いっぱい。 mailto:sage [2012/01/11(水) 16:09:05.64 ] >>666 www.bookshelf.jp/soft/meadow_29.html#SEC392 とかを参考に。
668 名前:名無しさん@お腹いっぱい。 mailto:sage [2012/01/11(水) 16:10:02.14 ] 普通に C-x b で *scratch* を開けばいいよ。別に特別なバッファじゃない。 お好みで initial-major-mode にしてあるメジャーモードにすればいい。 scratch の内容保存系の lisp おいてるところよく見ると 消せないようにするだけの設定が抜き出せるからそれ参考にしてみれば?
669 名前:名無しさん@お腹いっぱい。 mailto:sage [2012/01/11(水) 16:10:06.91 ] >>666 www.bookshelf.jp/soft/meadow_11.html#SEC75 つーかこっちか。 モード設定は勝手にやってくれるかも。
670 名前:名無しさん@お腹いっぱい。 [2012/01/11(水) 16:36:53.69 ] >>667 ,668,669 しばらくC-x b *scratch* を使ってみることにします. ありがとうございます.
671 名前:名無しさん@お腹いっぱい。 mailto:sage [2012/01/11(水) 19:20:52.27 ] abbrevの登録単語削除の方法がサパーり判らんのでスゲームカムカしてきた C-u C-x a l
672 名前:名無しさん@お腹いっぱい。 mailto:sage [2012/01/11(水) 21:05:05.68 ] M-x list-abbrevs して適当に消して C-c C-c じゃない? abbrev まともにつかったことないな・・・
673 名前:名無しさん@お腹いっぱい。 mailto:sage [2012/01/11(水) 21:43:02.80 ] 無名関数の再帰を調べていたら Y コンビネータが出てきた あのわけわからん世界に繋がりつつあるんだと思うとちょっとうれしい
674 名前:名無しさん@お腹いっぱい。 mailto:sage [2012/01/11(水) 21:56:17.64 ] 文字列中の "$@"、または "$" をそれぞれスペース一個にする処理を書いています。 ただし、"$$" はエスケープ処理のパターンなので "$$@" なんて場合は "$$ " に置換したいです。 ( "hoge$@$$@hage" なんかは "hoge $ hage"になる) こういうエスケープ文字を含む置換は一回の置換で済ますのは難しいでしょうか?
675 名前:名無しさん@お腹いっぱい。 mailto:sage [2012/01/11(水) 22:18:20.68 ] >>674 > ただし、"$$" はエスケープ処理のパターンなので "$$@" なんて場合は "$$ " に置換したいです。 だと "hoge$@$$@hage" -> "hoge $$ hage" にならないといけないような。 とりあえず (replace-regexp-in-string "\\(\\$?\\)\\$@?" "\\1 " "hoge$@$$@hage") -> "hoge $ hage" となる。
676 名前:名無しさん@お腹いっぱい。 mailto:sage [2012/01/11(水) 22:40:32.37 ] >>675 ああっ・・・すみません、"hoge$@$$@hage" は "hoge $$ hage" でした。 なるほど、直前の $ があれば保存するって書き方も出来るんですね。 もう少し考えてみます。ありがとうございます。
677 名前:名無しさん@お腹いっぱい。 mailto:sage [2012/01/11(水) 22:44:05.81 ] >>676 下手糞だけれど、 (replace-regexp-in-string "\\(\\$?\\)\\$@?" "\\1\\1 " "hoge$@$$@hage")
678 名前:名無しさん@お腹いっぱい。 mailto:sage [2012/01/11(水) 22:57:17.40 ] >>677 $$ の場合、前の$を2つおいちゃうわけですね ただその場合 "hoge$$hage" が "hoge$$ hage" になってしまいます ううむ・・・
679 名前:名無しさん@お腹いっぱい。 mailto:sage [2012/01/12(木) 08:16:55.07 ] emacs24 のパッケージシステム、ELPAの登録少なすぎ糞がと思ってたけど mamalade 追加したら予想してたよりしっかり登録されてて感心した。
680 名前:名無しさん@お腹いっぱい。 mailto:sage [2012/01/12(木) 09:45:12.56 ] ELPA標準+marmaladeでel-getはオワコンか
681 名前:名無しさん@お腹いっぱい。 mailto:sage [2012/01/12(木) 09:57:57.84 ] el-get + githubのemacsmirror これ最強な
682 名前:名無しさん@お腹いっぱい。 [2012/01/12(木) 10:00:49.74 ] emacsmirror いいよな。 emacswiki のelisp 落としたい放題
683 名前:名無しさん@お腹いっぱい。 [2012/01/12(木) 10:23:06.46 ] そんなものよりるびきちさんのauto-installを使えよ
684 名前:名無しさん@お腹いっぱい。 mailto:sage [2012/01/12(木) 11:34:39.88 ] emacsmirrorのレポジトリ群からel-get用レシピ生成するelispはよ
685 名前:名無しさん@お腹いっぱい。 mailto:sage [2012/01/12(木) 18:37:38.11 ] emacs24のlexical-binding、ヘッダに lexical-binding: t とか入れると 全部の let が文脈依存になるのかよ・・・ 使いづれえ
686 名前:名無しさん@お腹いっぱい。 mailto:sage [2012/01/13(金) 07:43:15.33 ] scratch buffer で lexical どうやんのかな
687 名前:名無しさん@お腹いっぱい。 mailto:sage [2012/01/13(金) 10:28:58.27 ] lexical-let を正式サポートでよかったのに。
688 名前:名無しさん@お腹いっぱい。 mailto:sage [2012/01/13(金) 10:35:18.21 ] 冗談はやめてくれ。
689 名前:名無しさん@お腹いっぱい。 mailto:sage [2012/01/13(金) 10:41:53.08 ] *scratch* で M-: (setq lexical-binding t) でいいんじゃない? ;; 今まで (setq a 100) (defun foo () (message "%d" a)) (progn (let ((a 200)) (foo)) (foo)) => 200 100 ;; lex bind (setq lexical-binding t) (setq a 100) (defun foo () (message "%d" a)) (progn (let ((a 200)) (foo)) (foo)) => 100 100 ただし、a が defvar で宣言されている場合は lexical-binding を t にしてても強制的に dynamical binding (ようするに今までのと同じ)になる。 だから基本的には置き換えしてもそんなに影響はでないはず。
690 名前:名無しさん@お腹いっぱい。 mailto:sage [2012/01/13(金) 10:51:34.62 ] あと lexical-binding t にすると lambda が closure を返すようになるな。 バッファ内の未評価の defvar とかが評価結果に含まれててなんかすごく気持ち悪いけど。
691 名前:名無しさん@お腹いっぱい。 mailto:sage [2012/01/13(金) 10:57:03.63 ] バッククオート展開で無理やり変数埋め込みとかしなくてよくなるのは嬉しい
692 名前:名無しさん@お腹いっぱい。 mailto:sage [2012/01/13(金) 11:06:45.92 ] >>689 どっかで defvar してるシンボル名とバッティングしないような名前を使わなきゃいけないところは 変わらんってことか。 ネームスペースはよ
693 名前:名無しさん@お腹いっぱい。 mailto:sage [2012/01/13(金) 14:48:38.91 ] auto-completeでメジャーモードhoge-modeの補完候補を~/.emacs.d/ac-dict/hoge-modeの各行としたいです tabを押さずに自動的に補完候補を表示するスタイルにしたいと思います .emacsに (setq ac-auto-start t) (add-to-list 'ac-dictionary-directories "~/.emacs.d/ac-dict") (add-to-list 'ac-modes 'hoge-mode) と書いてhoge-modeを~/.emacs.d/ac-dictに置いたのですが何にもなりません ac-dict/hoge-modeは改行(lf)区切りなのですが、それがいけないのでしょうか cx4a.org/software/auto-complete/manual.ja.html このマニュアルにはそういうことが書いていないのでよくわかりません
694 名前:名無しさん@お腹いっぱい。 mailto:sage [2012/01/13(金) 15:27:05.91 ] 当然だけど (require 'auto-complete-config) とか (ac-config-default) とかは普通に書いてあるんだよな?
695 名前:名無しさん@お腹いっぱい。 mailto:sage [2012/01/13(金) 16:16:39.75 ] >>694 (require 'auto-complete-config) は書いていましたが (ac-config-default)が抜けていました。 ばっちり動きました!ありがとうございました。
696 名前:名無しさん@お腹いっぱい。 mailto:sage [2012/01/14(土) 10:09:51.35 ] anythingってupgradeするたびに動かなくなるね。ぽぽぽぽーん。。 すごいわ。修正された行数とかもすさまじいし。。 うんざり。
697 名前:名無しさん@お腹いっぱい。 mailto:sage [2012/01/14(土) 10:20:52.49 ] Semanticはちゃんと補完してくれてかなりいいんだけど、カーソルの下の 関数名の定義場所がエコーエリアに表示されているにもかかわらず、 そこに飛ぶ術がないという糞仕様。 そもそも使いづらいからAnything用のインターフェースでも作るかな…
698 名前:名無しさん@お腹いっぱい。 mailto:sage [2012/01/14(土) 10:27:57.09 ] あ、動いた。どうやらanything-match-plugin.elが必須になったぽいな。 そしてこのモッサリ感。鈍重すぎる。 もともと腐ってたのが白骨化した死骸のような感じになってきたな。
699 名前:名無しさん@お腹いっぱい。 mailto:sage [2012/01/14(土) 12:07:34.45 ] ごめん質問。ひさびさのEmacsで困ってる。 eshellでも(call-proccess ... )の出力をバッファに出しても 表示される日本語部分が化けてしまう。UTF-8なテキストファイル開くと化けない。 UTF-8環境なLinux上。Emacs23にて。 set-language-environment "Japanese"だし set-terminal-coding-systemもset-keyboard-coding-systemも set-buffer-file-coding-systemもdefault-buffer-file-coding-systemも 全部utf-8としたし、実際化けてるバッファでも左下はU:と表示されてるからutf-8に なってるはずなんだが。 なにか解決のヒントくれたらおいら嬉しいのでおねがいしまふ
700 名前:名無しさん@お腹いっぱい。 mailto:sage [2012/01/14(土) 12:14:26.08 ] default-coding-system は設定してある? 最近は個別にコーディングシステム設定しないで (prefer-coding-system 'utf-8-unix) とかするもんらしい。 バッファ/ファイル名からプロセスから何から何まで一発でやってくれるよ。
701 名前:名無しさん@お腹いっぱい。 mailto:sage [2012/01/14(土) 12:22:24.16 ] あわわ × default-coding-system ○ default-process-coding-system でした
702 名前:名無しさん@お腹いっぱい。 mailto:sage [2012/01/14(土) 12:24:27.36 ] >>697 anything と semantic で検索するとちらほら引っかかるけど それじゃだめなん?
703 名前:名無しさん@お腹いっぱい。 mailto:sage [2012/01/14(土) 12:34:23.81 ] >>699 process-filter-multibyte-p set-buffer-multibyte とかの multibyte 関係。
704 名前:名無しさん@お腹いっぱい。 mailto:sage [2012/01/14(土) 12:37:58.99 ] むしろ一旦何も設定しない状態で試したほうがいいと思うの
705 名前:名無しさん@お腹いっぱい。 mailto:sage [2012/01/14(土) 12:44:07.38 ] そもそも最近の emacs って LANG=ja_JP.UTF=8 とかしておけば特に何の設定もしなくても ちゃんと日本語でUTF-8な環境にセットアップしてくれるんだよな。
706 名前:名無しさん@お腹いっぱい。 [2012/01/14(土) 13:20:19.97 ] 編集中の文書のアウトライン表示させるためにsr-speedbarを試しています。 www.emacswiki.org/emacs/SrSpeedbar なかなかいい感じですが編集中ファイルと同じディレクトリに他のファイルが あると,speedbarにそれらのファイル以外も表示されてしまいます。編集中の ファイルだけをspeedbarに表示する方法があれば教えてください。
707 名前:名無しさん@お腹いっぱい。 mailto:sage [2012/01/14(土) 13:33:09.07 ] >>706 自分で新たに speedbar のモードを書くしかないと思う。 *SPEEDBAR* で b とか r を押せば開いているバッファが表示されるけれど、これは違うのだろうし。
708 名前:名無しさん@お腹いっぱい。 mailto:sage [2012/01/14(土) 13:48:41.17 ] speedbar-file-regexp を make-local-variable して バッファ名だかバッファファイル名だかだけ引っかかるような設定にすりゃいいんでないの。 これも悪くないな d.hatena.ne.jp/kitokitoki/20100517
709 名前:699 mailto:sage [2012/01/14(土) 14:06:07.65 ] >>700 (prefer-coding-system 'utf-8-unix) でいけました。ありがとー
710 名前:697 mailto:sage [2012/01/14(土) 14:10:38.94 ] >>702 ttp://dev.ariel-networks.com/Members/matsuyama/open-anything-emacs/ ここで目的のものが見つかった。 ただ、Anythingのソース作成方法を理解してないからよくわからん。 積読状態だった例の本をちゃんと読むか…
711 名前:名無しさん@お腹いっぱい。 mailto:sage [2012/01/14(土) 15:07:22.59 ] るびきちさんが叩かれてる理由がだんだん分かってきた。