元スレEmacs Part 43
emacs覧 / PC版 /みんなの評価 :
901 = :
微笑ましい
903 = :
>>902
それ、evil 関係なくない?
うちでは、普通に動いてるっぽいけど。
904 = :
anything-c-moccor-occur-by-moccorを
あらかじめキーワードを指定した状態で呼び出したいです。
ミニバッファに
patter:キーワード
↑キーワードがすでに打ち込まれた状態でキーバインドから呼び出したいのですが、
わかる方いらっしゃいますか?
905 = :
>>904
これかな。
(anything-c-moccur-occur-by-moccur-base "キーワード")
906 = :
>>905
実行できました。
ありがとうございます!!
908 = :
vimに移るかevilを捨てるか選んで
909 = :
evilのメリットってctrlを使わないでカーソル移動ができることなのかな
そうだとするならばモード移動の切り替えも面倒な気がするけれど
慣れてしまったせいかemacsのctrl+n, ctrl+pの方がモードを気にせず楽だと思うけれどね
910 = :
>>907 は、 cursor 位置の emacs と、vi 系の違いを理解していない。と思う。
試しに、forward-sexp を、evil の insert state や emacs state で、やってみ。
normal mode のbox cursor と、 emacs での box cursor の位置の解釈の仕方が、
違うんだ。
行末での cursor 位置の違いを emacs state と normal state で
見比べてみると、一個ずれてるのに気づくと思うけど。
ちなみに、エラーメッセージの意味は、閉じカッコの手前で forward に進もうとするから、進めねーよ(意訳)ってことだろう?
対策としては、advice とか使って、ちょっと、手を加えるとかになるんじゃないんかな。
おれは、insert state で使ってすましてる。
911 = :
変更されているバッファを一度にすべて保存するコマンドはありますか?
今はemacs終了時に変更されているバッファを保存するかどうか聞かれるのでyを何度も押しています
912 = :
>>911
save-some-buffers に universal-argument を付けて実行。
C-u C-x s かな。
buffer-save-without-query を t にしておけば C-x s で問答無用で保存してくれるようになる。
そのかわり終了時にも聞かれなくなるかもしれない。
913 = :
>>912
ありがとうございます
914 = :
>>910
ほんとだ、insertステートだと問題なく動く
多分、normalステートだと行末の改行にカーソルが乗らずに一文字戻るって仕様なんだね
理屈は分かったから後はこっちで色々いじってみるよ
どうもありがとう
916 = :
そう思うなら自分で探してみたらいーんじゃないでしょうかね
917 = :
(interactive "s表示用テキスト : ")
ミニバッファ側
表示用テキスト : 「」
「」に初期値を入れておきたいのですが、やりかたが見つからず。
C-x C-fのようなかんじです。
よろしくおねがいします。
921 = :
説明読んだがどういう動きするのかよくわからなかった・・・
3つ以上に分割してる時に選んだ先のウィンドウをわかりやすく表示するってこと?
922 = :
使ったらすぐ分かった。ウィンドウが 3つ以上の時に popup で選択先を選べて
かつ選ぶウィンドウをわかりやすく色付けするって拡張だったのか。
バッファ選択の場合、iswitchb なんかだと↓付けることで
現在選ぼうとしてるバッファがリアルタイムで表示されてちょっとはわかりやすくなるんじゃないかな
popup.el で表示させたいんだったら自分でなんか書かないとだめじゃないかね。
(require 'cl-lib)
(defadvice iswitchb-exhibit
(after ad-iswitchb-exhibit-with-display-buffer activate)
"選択しているバッファをウィンドウに表示する."
(when (and (eq iswitchb-method iswitchb-default-method)
iswitchb-matches)
(let ((iswitchb-method 'samewindow)
(selected (get-buffer-window
(cl-find-if-not 'minibufferp (buffer-list)))))
(when selected
(select-window selected)
(iswitchb-visit-buffer
(get-buffer (car iswitchb-matches)))
(select-window (minibuffer-window))))
))
923 = :
popupで表示して選ぶだけならこれでいける
(switch-to-buffer
(popup-menu* (mapcar
(lambda (b) (popup-make-item (buffer-name b) :value b))
(cl-remove-if (lambda (b)
(string-match "^ " (buffer-name b)))
(buffer-list)
))))
924 = :
>>923
delq はもっと使われていい。
(switch-to-buffer
(popup-menu*
(delq nil (mapcar
(lambda (buf)
(unless (string-match "^ " (buffer-name buf))
(popup-make-item (buffer-name b) :value buf)))
(buffer-list)))))
926 = :
<return> じゃないの?
927 = :
>>926
そうでした...
928 = :
えんたあああああああああああああああああああいああああああああああああ!!!!
魔がさした。反省はしてない
930 = :
しかしキーボードにはEnterって書いてあるのに、Returnキーとはこれいかに
昔の名残か
931 = :
enterは電算端末
returnはタイプライター、パンチカードの名残り
押すとキャリッジがリターンしたから
932 = :
元々はリターンキーだったろ。エンターなんて最近。PC-98もリターンキーだったろ?
933 = :
大昔から「入力」「送信」なんて表記もあったよ
934 = :
>>933
キーボードに?
935 = :
送信キーは何かで見たな。
大学の図書館にあった検索端末だったかな。
938 = :
http://yohshiy.blog.fc2.com/blog-entry-132.html
ここにそれっぽい事が書いてある
939 = :
>>938
ありがとうございます。正常なら開かないのではなく正常なら閉じる、しかなさそうな感じですね。
gcc とかだとコンパイルエラーでも終了時のステータスが 0 だったので face で判断するのを書いてみました。
(add-hook 'compilation-finish-functions
(lambda (buffer msg)
(unless (with-current-buffer buffer
(let ((cur (point-min)) found)
(while (and cur (not found))
(setq found
(let ((face (get-text-property cur 'face)))
(memq 'compilation-error
(if (listp face)
face
(cons face nil)))))
(setq cur (next-property-change cur)))
found))
(when (get-buffer-window buffer)
(delete-window (get-buffer-window buffer))))))
940 = :
>>939
compilation-messageの方使うともうちょい短くなるな。
(add-hook 'compilation-finish-functions
(lambda (buffer msg)
(when (and (not (with-current-buffer buffer
(text-property-not-all (point-min) (point-max)
'compilation-message nil)))
(get-buffer-window buffer))
(delete-window (get-buffer-window buffer)))))
942 = :
きたねーコード貼るな
日記にでも書いてろ
944 = :
emacs 上でテストを書く時にサポートしてくれるようなパッケージってありますでしょうか?
具体的には本体とテストを簡単に行き来出来るようなパッケージを探しています。
945 = :
そんなものありません
946 = :
>>944
`ff-find-other-file' を使えば出来る気がする。
そう思ってググったらCofeeScript用の設定例が見つかった。
http://github.com/yasuyk/coffee-fof/blob/master/coffee-fof.el
947 = :
direx でディレクトリを先に表示するようなのを書いた
(defadvice direx:node-children (around sort-files activate)
"direx でディレクトリを最初に表示する."
(let ((org-directory-files (symbol-function 'directory-files)))
(cl-letf (((symbol-function 'directory-files)
(lambda (directory &optional full match nosort)
(if nosort
(funcall org-directory-files directory full match nosort)
(sort (funcall org-directory-files directory full match)
(lambda (a b)
(let ((dir-a (file-directory-p a))
(dir-b (file-directory-p b)))
(if (eq dir-a dir-b)
(string-lessp a b)
(if dir-a t)))))))))
ad-do-it)))
948 = :
設定ファイル内で、
コンパイル時にライブラリが存在してるかどうかチェックして require したり
実行ファイルが存在するかチェックして設定したり、なんてのがよくありますが、
Cのプリプロセッサみたいにコンパイル時にチェックを済ませてしまうことって出来ないんでしょうか?
(if (executable-find "ruby") (setq hoge "aaa"))
みたいなのがあった場合、コンパイル時に executable-find を実行、if の条件判断までやってしまって
ruby がない場合は elc ファイル内になにも残らず、存在する場合は setq だけ残したいです。
949 = :
マクロを使え
(defmacro if-on-compile (cond &rest form)
(when cond `(progn ,@form)))
950 = :
common lispなら
(if #.(executable-find "ruby") (setq hoge "aaa"))
でいけると思う。
emacs lispでも#.は使えるみたいだけど狙った結果になるかわからん
みんなの評価 :
類似してるかもしれないスレッド
- Emacs Part 40 (1001) - [92%] - 2012/9/7 0:30
- Emacs Part 47 (995) - [92%] - 2015/4/19 13:01
- Emacs Part 42 (1001) - [92%] - 2013/6/9 5:15 △
- Emacs Part 44 (1001) - [92%] - 2014/2/8 8:01 △
- Emacs Part 53 (989) - [92%] - 2022/12/5 12:45
- Emacs Part 46 (984) - [92%] - 2014/12/24 14:15
- Emacs Part 45 (1001) - [92%] - 2014/6/23 9:45
- Emacs Part 48 (997) - [92%] - 2015/12/9 15:15
- Emacs Part 49 (974) - [92%] - 2016/12/7 9:45
- Emacs Part 33 (1001) - [92%] - 2010/3/9 20:01 ○
- Emacs Part 41 (1001) - [92%] - 2012/12/24 4:15
- Emacs Part 32 (1001) - [84%] - 2009/12/20 2:04 ○
- Emacs Part 31 (1001) - [84%] - 2009/10/23 10:31 ○
- Emacs part 23 (1001) - [84%] - 2008/2/8 0:04 ☆
トップメニューへ / →のくす牧場書庫について