名無しさん@お腹いっぱい。<><>2013/06/09(日) 14:05:32.09 <> 語り合いましょう。
GNU Emacs - GNU Project - Free Software Foundation (FSF)
https://www.gnu.org/software/emacs/
EmacsWiki: サイトマップ
http://www.emacswiki.org/emacs/
Emacsのトラノマキ | 検索結果: | ありえるえりあ
http://dev.ariel-networks.com/wp/?s=Emacs%E3%81%AE%E3%83%88%E3%83%A9%E3%83%8E%E3%83%9E%E3%82%AD
前スレ
EmacsPart42
http://toro.2ch.net/test/read.cgi/unix/1356319580/ <>Emacs Part 43
名無しさん@お腹いっぱい。<><>2013/06/09(日) 14:16:55.54 <> M-x otsu <>
名無しさん@お腹いっぱい。<>sage<>2013/06/09(日) 17:57:02.10 <> リンク三つ目なんだこりゃ。ドン引き <>
名無しさん@お腹いっぱい。<>sage<>2013/06/09(日) 19:10:42.22 <> 宣伝乙 <>
名無しさん@お腹いっぱい。<>sage<>2013/06/09(日) 19:42:32.09 <> せめて >>2 以降に書けよ <>
名無しさん@お腹いっぱい。<>sage<>2013/06/09(日) 21:03:23.59 <> >>1
テンプレ修正
語り合いましょう。
GNU Emacs - GNU Project - Free Software Foundation (FSF)
https://www.gnu.org/software/emacs/
EmacsWiki: サイトマップ
http://www.emacswiki.org/emacs/
前スレ
EmacsPart42
http://toro.2ch.net/test/read.cgi/unix/1356319580/ <>
名無しさん@お腹いっぱい。<>sage<>2013/06/10(月) 13:29:42.68 <> ここ最近公開されたおもしろいelispは何かある? <>
名無しさん@お腹いっぱい。<>sage<>2013/06/10(月) 17:32:12.55 <> 特にない <>
名無しさん@お腹いっぱい。<>sage<>2013/06/10(月) 20:35:52.33 <> 前スレ >>972
(defun my-japanese-search ()
(interactive)
(run-with-idle-timer 0.1 nil 'isearch-edit-string)
(isearch-forward))
としてみれば、どうかな!? <>
名無しさん@お腹いっぱい。<>sage<>2013/06/11(火) 00:21:28.71 <> desktop-save-modeってwindow configulationを保存しないけど、保存させるには
どんな設定をすればいい? <>
名無しさん@お腹いっぱい。<>sage<>2013/06/12(水) 00:51:46.56 <> C-x r N なんて便利なコマンドあったんだな。知らなかった。
表示のカスタマイズはC-u C-x r N だな。
こういう便利機能を時々発見するのもEmacsの醍醐味だね。 <>
名無しさん@お腹いっぱい。<><>2013/06/13(木) 03:30:16.46 <> 馬鹿にスレ立てさせんな <>
名無しさん@お腹いっぱい。<>sage<>2013/06/13(木) 10:00:37.24 <> ならさっさと自分で立てれ。 <>
名無しさん@お腹いっぱい。<>sage<>2013/06/13(木) 11:08:49.90 <> >>11
これ何に使うと便利と感じるの?
数値計算屋さんで変な定数何回も入力するとか? <>
名無しさん@お腹いっぱい。<>sage<>2013/06/13(木) 12:03:49.54 <> [奥が深い症候群] <>
名無しさん@お腹いっぱい。<>sage<>2013/06/13(木) 13:08:03.60 <> >>14
>>11 じゃないけど wdired でファイルに連番づけするときなどに活用してる。 <>
名無しさん@お腹いっぱい。<>sage<>2013/06/13(木) 18:04:18.24 <> >>16
cua-set-rectangle-markの方が使いやすいと思うけど。 <>
名無しさん@お腹いっぱい。<>sage<>2013/06/13(木) 22:06:41.99 <> define-minor-modeで複数行を/* */でコメントアウトするように設定したいのですがどうすればいいですか
define-generic-modeではコメントの設定で("/*" . "*/")と書けば良かったのですが、define-minor-modeの方が分かりません。
お願いします <>
名無しさん@お腹いっぱい。<>sage<>2013/06/13(木) 23:32:15.78 <> マイナーモードとメジャーモードって区別でマイナーモード側でコメント設定する必要性がわからんな。
elisp(メジャー)モードでマイナーモードを使うようにしたからって、コメントが /* */ になったって嬉しくもなんともない。
具体的になにしたいんだか書いたほうがいいと思うぞ。 <>
名無しさん@お腹いっぱい。<>sage<>2013/06/14(金) 01:38:49.32 <> そういわれればそうですね
考え直します <>
名無しさん@お腹いっぱい。<>sage<>2013/06/14(金) 22:29:16.06 <> process-send-string
とかprocess系の関数で質問です。
この関数で設定したstringが実際にプロセスへ送信されるタイミングはいつですか?
たとえば
process-send-string proc "hoge"
process-send-string proc "huga"
process-send-string proc "hage"
とした場合、
3つキューに詰まれた上で、lispのコールスタックが上層までもどった時点なのか、
それとも
process-send-stringを実行した直後なのか。
基本この関数は非同期ですよね?
非同期だけど、少なくとも上記のように3連続で実行している間に送信されないことが保障されているほうが
ありがたいのですが・・、どういう実装なんでしょう?
勝手なイメージとしては、 process-send-stringでキューかバッファに積んでいって
lispのコールスタック上層に戻ったときに送信されるのが望ましいのですが。 <>
名無しさん@お腹いっぱい。<>sage<>2013/06/14(金) 22:58:25.87 <> 上の質問に絡んだ内容ですが、
現在編集中のバッファで
process-send-string proc
を実行するような関数が実行されている状態で
emacsがこれとはまったく無関係に
別のバッファを開いて、そのバッファでprocess-send-string procを実行するとします。
send対象のprocは同一プロセスです。
この場合、送信されるデータはどのようになりますか?
分かりやすく書くと
作業中のバッファAで
process-send-string proc "a:hoge"
process-send-string proc "a:huga"
process-send-string proc "a:hage"
とし、
emacsが裏でオープンするバッファBのc-mode-hookなどで
process-send-string proc "b:hoge"
process-send-string proc "b:huga"
process-send-string proc "b:hage"
が実行された場合です <>
名無しさん@お腹いっぱい。<>sage<>2013/06/15(土) 00:22:27.38 <> >>21
正確な解説じゃないだろうけど、知ってる範囲で説明すると
> この関数で設定したstringが実際にプロセスへ送信されるタイミングはいつですか?
process-connection-type によってかわる。
大雑把にいえば t のときは改行を送信したとき。
nil のときは process-send-string 関数が呼ばれたとき。
> 基本この関数は非同期ですよね?
> 非同期だけど、少なくとも上記のように3連続で実行している間に送信されないことが保障されているほうが
> ありがたいのですが・・
ここの意味はよくわからないけど、 process-send-string から帰ってこないことはありえる。
非同期ではないと思う。
で >>22 を読んでて思ったのだけど
process-connection-type の設定を考慮したら直面してる問題が解決したりしない? <>
名無しさん@お腹いっぱい。<>sage<>2013/06/15(土) 01:13:04.14 <> eww.el --- Emacs Web Wowser
こんなのがコミットされてた。
ただ、shr.el --- Simple HTML Renderer がベースだから、表示能力は推して知るべしだ。 <>
名無しさん@お腹いっぱい。<>sage<>2013/06/15(土) 11:21:55.22 <> auto-complete-clang-async.el ネタです。
NTEmacsスレでやっていたのですが、ある程度まとまったんでこちらにも。
前スレでこの話があったけど、 >22 の人かな?
純粋にたくさんファイルを開いたときならダメだけど、そうではなくて clang-complete プロセスが
いっぱい残る問題ならこれでたぶん解消すると思います。
NTEmacs スレッド 3
http://anago.2ch.net/test/read.cgi/software/1325573999/616 <>
名無しさん@お腹いっぱい。<>sage<>2013/06/15(土) 15:52:21.39 <> VimGolf in Emacs | Irreal
http://irreal.org/blog/?p=1953
thingatpt.elのforward-whitespace関数にキーバインドを割り当てていれば7手でいけるが
素のemacsのキーバインドで7手で本当に達成できるか分からない
M-@ [mark-word] と M-( [insert-parentheses] で2手分を使ってしまうから
f3とf4を駆使すると思うのだけれど、分かる人はいる? <>
名無しさん@お腹いっぱい。<>sage<>2013/06/15(土) 16:45:10.28 <> >>26
コメントに書いてある
electric-pair-modeを使うそうだ <>
22<>sage<>2013/06/15(土) 21:51:35.76 <> > > この関数で設定したstringが実際にプロセスへ送信されるタイミングはいつですか?
>
> process-connection-type によってかわる。
> 大雑把にいえば t のときは改行を送信したとき。
> nil のときは process-send-string 関数が呼ばれたとき。
>
ありがとう、ためしてみます。
> > 非同期だけど、少なくとも上記のように3連続で実行している間に送信されないことが保障されているほうが
> > ありがたいのですが・・
>
> ここの意味はよくわからないけど、 process-send-string から帰ってこないことはありえる。
> 非同期ではないと思う。
lisp以外の言語で非同期プログラムなどを書く場合
他のプロセス・スレッドや同期オブジェクトにアクセスしたタイミングでプリエンプションされる可能性があるので
そういった意味で言いました。 <>
22<>sage<>2013/06/15(土) 22:08:34.16 <> >>25
> auto-complete-clang-async.el ネタです。
> 前スレでこの話があったけど、 >22 の人かな?
はいそうです。
> 純粋にたくさんファイルを開いたときならダメだけど、そうではなくて clang-complete プロセスが
> いっぱい残る問題ならこれでたぶん解消すると思います。
auto-complete-clang-asyncの問題としては、
・バッファ毎にclang-complete.exeを割り当てるので
ファイルを8個以上ひらくとパイプエラーになってしまうのでそれ以上開けない。
・64bit版がない。
というのがあるので
64bit版のclang-complete.exe相当のものを自作して試しています。
1バッファ1プロセス起動はやめて、nバッファ1プロセスという形にしています。
なのでclangの補完対象になるバッファは全て1つのclang-complete.exeで管理しています。
ここで問題がおきていて、
あるバッファでclang-compelteへ補完コマンドを送信中に
裏でCEDETが動作して、別バッファにincludeされる対象のファイルを自動的にオープンすることがあり
その際にc-common-hookなどにセットしてあるclang-completeへの登録コマンドなどが動作して
clang-completeのstdinに入ります。
これで応答がなくなってしまったことがあり
このときに、コマンドの送信順番がどうなるかが気になっています。
process-connection-typeがnilの場合でも
process-send-string単位ということなので
バッファAのprocess-send-stringと
バッファBのprocess-send-stringが
入り乱れる形で送信されるのであれば厄介な話だなとおもって上で聞きました。
ただemacs-lisp自体はシングルスレッドなんですよね?
なので並列性に関しては心配していませんが、
平行性はどういう単位で実現されているのかで、問題の解決方法が変わってくるとおもいます。 <>
25<>sage<>2013/06/16(日) 06:12:00.66 <> >>29
Windows固有な部分があるんであっちに書きました。
NTEmacs スレッド 3
http://anago.2ch.net/test/read.cgi/software/1325573999/618 <>
名無しさん@お腹いっぱい。<><>2013/06/16(日) 17:51:32.94 <> いちおつ <>
名無しさん@お腹いっぱい。<>sage<>2013/06/16(日) 18:11:36.10 <> java-modeのenumがうまくインデントされないんだけどいい解決方法ないかな
一応ググっては見たんだけど英語をまともに読めないし試してもうまく動かなくて困ってる <>
名無しさん@お腹いっぱい。<>sage<>2013/06/16(日) 19:18:20.59 <> エスパーさんお呼びですよー <>
名無しさん@お腹いっぱい。<>sage<>2013/06/16(日) 19:43:51.69 <> 読んだぁ〜? <>
名無しさん@お腹いっぱい。<>sage<>2013/06/17(月) 02:17:51.92 <> なんでこのくらいでエスパーが必要なのかわからない
java-modeのenumがうまくインデントされない解決方法わかる人居るか聞いてるんだけど <>
名無しさん@お腹いっぱい。<>sage<>2013/06/17(月) 02:25:15.45 <> ちょろっと触ってみた感じではわりと賢くインデントしてくれるようなんだが
どういう風にうまくインデントされないのかを書け
あとたぶんemacs標準添付のjava-mode使ってると思うから、そのemacsのバージョンとかも <>
名無しさん@お腹いっぱい。<>sage<>2013/06/17(月) 02:33:40.26 <> "GNU Emacs 23.4.1 (i486-pc-linux-gnu, GTK+ Version 2.24.10)
of 2012-09-10 on murphy, modified by Debian"
enum hoge{
a,
b,
c,
d,
};
こんな感じになってしまう <>
名無しさん@お腹いっぱい。<>sage<>2013/06/17(月) 02:38:10.61 <> emacsではjava書かんから見てないがそこだけmmm-mode使ってc++-modeとかにしたらえがっぺ。 <>
名無しさん@お腹いっぱい。<>sage<>2013/06/17(月) 02:49:37.81 <> 取り敢えずそれを頼りに明日頑張ってみる
ありがとう <>
名無しさん@お腹いっぱい。<>sage<>2013/06/17(月) 02:49:52.57 <> >>37
java-modeってcc-mode.elが提供してるのね
emacs23添付のは確かにそうなるなあ
emacs24添付のだと問題無く綺麗にインデントしてくれる <>
名無しさん@お腹いっぱい。<>sage<>2013/06/17(月) 03:03:12.00 <> それなら emacs24 の cc-mode.el のと24のを ediff すりゃええべ。
多分ファイルすり替えしてもうまく動かんだろうからね。 <>
名無しさん@お腹いっぱい。<>sage<>2013/06/17(月) 08:10:18.16 <> >>35
みんな同じ環境を使っていると思っちゃいけない。それじゃ典型的なしろーとだぞ。
最低限環境と*具体的に*どうなるのかemacs -Q(古いのだと -q --no-site-initだっけ?)で
起動したらどうなのかを書いたほうがいい。
素の最新版でどうなるかを試せればさらによし。 <>
名無しさん@お腹いっぱい。<>sage<>2013/06/17(月) 12:42:55.81 <> 自分の質問の仕方が悪かったのは謝る
これを機会に最新版入れてみる <>
名無しさん@お腹いっぱい。<>sage<>2013/06/17(月) 22:37:36.09 <> define-generic-modeでc++のインデント規則をそのまま利用するには
どうすればいいのでしょう <>
名無しさん@お腹いっぱい。<>sage<>2013/06/18(火) 08:30:55.42 <> Emacs ユーザーの心の狭さがまた一つ露呈したのか。
それがこのスレの悲しさよ。 <>
名無しさん@お腹いっぱい。<>sage<>2013/06/18(火) 08:54:48.23 <> 純情な子羊ユーザーが迷い込むたびに
このスレは容赦なく牙を向いてきた。
それこそ10年も前からこのスレは血を吸って生きてきたのさ。 <>
名無しさん@お腹いっぱい。<>sage<>2013/06/19(水) 23:12:24.03 <> >>24
eww.elがちょっと盛り上ってきたな。
http://lars.ingebrigtsen.no/2013/06/eww.html
ここで画面が見れる。文字の大きさが反映されれば結構いいかもね。 <>
名無しさん@お腹いっぱい。<>sage<>2013/06/24(月) 21:17:43.81 <> emacs信者が来たよ <>
名無しさん@お腹いっぱい。<>sage<>2013/06/24(月) 23:25:26.36 <> まぁEmacsスレだからな。 <>
名無しさん@お腹いっぱい。<>sage<>2013/06/25(火) 01:00:34.94 <> 気になるelispを導入しようとしているのですが
melpa, elpa, el-get, auto-installと最近はいろいろな言葉を聞くので
うまく使ってみたいです
これまではelispを地道にsite-lispに放り込んで居たのですが
上記の仕組みを使うとどういうことができるのでしょうか <>
名無しさん@お腹いっぱい。<>sage<>2013/06/25(火) 09:05:10.99 <> >>50
M-x コマンド
で勝手に引っ張ってきてくれる <>
名無しさん@お腹いっぱい。<>sage<>2013/06/25(火) 10:48:22.84 <> 許可は得てるで <>
名無しさん@お腹いっぱい。<>sage<>2013/06/25(火) 13:39:48.41 <> その仕組みで何か悪さできないの? <>
名無しさん@お腹いっぱい。<>sage<>2013/06/25(火) 13:41:05.74 <> 君のがんばり次第。 <>
名無しさん@お腹いっぱい。<>sage<>2013/06/25(火) 16:32:24.48 <> >>52
Emacs乙 <>
名無しさん@お腹いっぱい。<>sage<>2013/06/25(火) 16:37:24.44 <> 何言ってんだ <>
名無しさん@お腹いっぱい。<>sage<>2013/06/25(火) 17:39:03.50 <> 横向きの方が有利かもしれない <>
名無しさん@お腹いっぱい。<>sage<>2013/06/27(木) 14:22:18.56 <> ある特定のファイルが更新されていた場合に、バッファへの読み直しをさせるには、どのように書けば良いでしょうか?
メモ書きファイルに追加書き込みさせるのに、
(swith-to-buffer memo-file-path)とバッファを切り替えているのですが、
更新されている場合には、changed on disk. Reread from diskと聞かれてemacs lispの処理が止まってしまいます。 <>
名無しさん@お腹いっぱい。<>sage<>2013/06/27(木) 15:24:51.16 <> >>58
読み直ししたいなら無理矢理(revert-buffer nil t)とでもすればいいんじゃね
もしswitch-to-bufferをやめてset-bufferとかwith-current-bufferあたりで済む話ならそっちを使って逃げるとか <>
58<>sage<>2013/06/27(木) 16:59:52.53 <> >>59
(revert-buffer nil t)でいけました。ありがとうございます。 <>
名無しさん@お腹いっぱい。<>sage<>2013/06/28(金) 11:36:07.09 <> hoge.org から
hoge.tex やhoge.html
を生成するコマンドをmakefileに書きたいのだけど
どんなコマンド書けばいいのでしょう <>
名無しさん@お腹いっぱい。<>sage<>2013/06/28(金) 11:39:12.40 <> $ git --init
$ touch ticket.org
でemacs使った簡易Redmineもどきできるな
ticket.orgからmakefileも生成してほしい <>
名無しさん@お腹いっぱい。<>sage<>2013/06/28(金) 12:57:41.35 <> >>61
つ basename
というかemacsスレでする質問じゃないな。 <>
名無しさん@お腹いっぱい。<>sage<>2013/06/28(金) 13:04:48.24 <> そうだな。
>>61 は http://toro.2ch.net/test/read.cgi/unix/1079538957/ で本当にやりたいことを聞いたらいいよ。 <>
名無しさん@お腹いっぱい。<>sage<>2013/06/28(金) 13:15:06.38 <> batch で云々って話ではなく? <>
名無しさん@お腹いっぱい。<>sage<>2013/06/29(土) 02:09:17.95 <> と意味不明な供述を繰り返しており <>
名無しさん@お腹いっぱい。<>sage<>2013/06/29(土) 09:13:38.14 <> >61
コマンドラインからelisp実行したいのね
elisp への引数指定がめんどそう <>
名無しさん@お腹いっぱい。<>sage<>2013/06/29(土) 11:33:50.44 <> >>61
普段emacs上で手動でやっているんだと思うけれど
どういう操作をしているのかを書いてみそ <>
名無しさん@お腹いっぱい。<><>2013/06/30(日) 04:43:25.31 <> shell-modeで改行無しのテキストファイルをcatしても中身が表示されないです。
何か設定すれば見えるようになりますか? <>
名無しさん@お腹いっぱい。<>sage<>2013/06/30(日) 07:59:58.66 <> >>69
ファイルの内容を abc だけで試したけど
emacs24.3@ubuntu13.04, emacs24.3@gnupack では問題ないな
環境と、ファイルの内容を詳しく
この件ではあまり関係ないとは思うけれど、お約束で emacs -Q で起動したときの結果も <>
名無しさん@お腹いっぱい。<>sage<>2013/06/30(日) 12:26:18.35 <> >>69
$ echo abc
abc
$ echo -n abc
abc$
$ echo -n abc > /tmp/t.txt
$ cat /tmp/t.txt
abc$ <>
名無しさん@お腹いっぱい。<><>2013/06/30(日) 15:44:02.22 <> >>70,71
どうやらzshだとダメみたいです。
explicit-shell-file-nameにbashやtcshを指定したら表示されました。
zshでも何もしないsedにパイプすれば表示されるんですが・・・
% echo -n abc
% echo -n abc | sed ''
abc
% cat /tmp/t.txt
% cat /tmp/t.txt | sed ''
abc <>
名無しさん@お腹いっぱい。<>sage<>2013/06/30(日) 16:54:21.56 <> unsetopt prompt_cr <>
名無しさん@お腹いっぱい。<><>2013/06/30(日) 17:06:33.05 <> >>73
表示できました!ありがとうございます!! <>
名無しさん@お腹いっぱい。<>sage<>2013/07/01(月) 02:42:02.55 <> 感動した <>
名無しさん@お腹いっぱい。<>sage<>2013/07/01(月) 11:20:26.65 <> >>61
(org)Batch execution
を読んで、
org-export-as-html
などを実行するように変更する。 <>
名無しさん@お腹いっぱい。<>sage<>2013/07/02(火) 12:42:22.55 <> http://poulenc.eng.kagawa-u.ac.jp/~hiconyan/doku.php?id=emacs:powerline
emacs起動時にこのcustom-set-facesの設定が反映されません。他の設定はokです
custom-set-facesを手動で評価すると設定は意図した通りに反映されます
何か追加で設定しなければいけないのですか <>
名無しさん@お腹いっぱい。<>sage<>2013/07/02(火) 12:47:03.08 <> >>77
.emacs 読み込んだ後に defface で face つくられてんでねーの?
eval-after-load 使って対象 face が load された後に custom-set-faces 呼んでみたら? <>
名無しさん@お腹いっぱい。<>sage<>2013/07/03(水) 13:06:49.62 <> >>78
autoloadしてeval-after-loadの中でcustom-set-facesを使ってみましたが
なぜかうまくいきませんでした
ただset-background-colorで設定できたのでこれを使おうと思います
ありがとうございました <>
名無しさん@お腹いっぱい。<>sage<>2013/07/03(水) 14:53:27.86 <> autoloadが何の関係あるんだろ?
eval-after-loadのformをクオートしてないのでは。 <>
名無しさん@お腹いっぱい。<>sage<>2013/07/05(金) 17:59:46.12 <> c++-modeなどで特定のキーワードにfaceをつけたくて
font-lock-add-keywords
を使ってみたんですが、
コメントに含まれているワードまでfaceがついてしまい困っています。
コメント中のワードには適用しないようにするのはどうすればいいでしょうか?
ちなみにこんなかんじでつかってます。
(font-lock-add-keywords
c++-mode
'(
("\\<\\(Hoge\\)\\>" 1 font-lock-keyword-face t)
))
これだと
// Hoge a;
とか
/*
Hoge a;
*/
にも適用されてしまいます。 <>
名無しさん@お腹いっぱい。<>sage<>2013/07/05(金) 19:57:10.11 <> font-lock-add-keywordsのdocstringに書かれているように既知のバグです。 <>
名無しさん@お腹いっぱい。<><>2013/07/06(土) 19:28:07.16 <> commentのfaceを最後に持ってくる、では駄目? <>
名無しさん@お腹いっぱい。<><>2013/07/07(日) 05:11:15.65 <> 気にしないようにしてたのに気になってきたじゃないか <>
名無しさん@お腹いっぱい。<>sage<>2013/07/07(日) 18:04:36.93 <> Emacs + org-mode + python in reproducible research; SciPy 2013 Presentation - YouTube
https://www.youtube.com/watch?v=1-dUkyn_fZA <>
名無しさん@お腹いっぱい。<>sage<>2013/07/08(月) 20:20:53.52 <> C-x C-s セーブ時に以下のエラーがでてしまします。
Saving file c:/hogehoge.cpp
basic-save-buffer-2: Opening output file: invalid argument, c:/hogehoge.cpp
エラーが出ないファイルと出るファイルがあり、
エラーになる場合はセーブができません。
考えられる原因はなんでしょうか?
使用しているのはemacs24.3です。 <>
名無しさん@お腹いっぱい。<>sage<>2013/07/08(月) 21:31:03.03 <> hidden ファイル
アンチウイルス <>
名無しさん@お腹いっぱい。<>sage<>2013/07/08(月) 23:38:43.64 <> rootはやめとけ <>
名無しさん@お腹いっぱい。<>sage<>2013/07/08(月) 23:44:43.26 <> 89 to Joe <>
名無しさん@お腹いっぱい。<>sage<>2013/07/10(水) 03:37:54.56 <> Macなんですが
ttp://sakito.jp/emacs/emacs24.html#usr-local
を参考にIMEパッチをあてて、/usr/local/にバイナリ生成しました。
しかしターミナルからemacsコマンドで開くとEmacsで文字やらコマンドが打てなくなりました。厳密にはEmacsがアクティブになりません。
/usr/local/bin/を見るとemacsとemacs-24.3というものがあり
ターミナルでemacsとうち、起動するとターミナルの上の部分がemacs-24.3になります。
対処法などはないでしょうか? <>
名無しさん@お腹いっぱい。<>sage<>2013/07/10(水) 08:33:34.95 <> 以下のようにshell-commandを発行すると、
(shell-command (concat "saykana hello"))
(Shell command succeeded with no output)
のように表示されてしまうのですが、
なにも表示されないようにするにはどうすればよいでしょうか? <>
名無しさん@お腹いっぱい。<>sage<>2013/07/10(水) 09:53:18.03 <> >>91
1. message-log-max + message nilでくるむ。楽だけど message 自体は一瞬表示される。
(let (message-log-max)
(shell-command)
(message nil))
2. shell-command-to-string を使う。
3. call-process, start-process などの low level api を使う。 <>
91<>sage<>2013/07/10(水) 23:42:50.12 <> >>92
ありがとうございました。
楽だったので1を使いました。 <>
名無しさん@お腹いっぱい。<>sage<>2013/07/11(木) 03:03:31.81 <> >>90
たぶん Emacs.app をビルドして
/Applications フォルダにドラッグして入れたほうがいいんじゃね
やり方はそのサイトにはあるはず
OSX のアプリとしては /Applications に入れたほうがいいとおも <>
名無しさん@お腹いっぱい。<><>2013/07/12(金) 09:18:21.23 <> モードラインに日付と時間を出しているのですが、環境によって同じバージョン(24.2)で
表示が違うのはどうしてでしょうか。
2013-07-12 Fri 09:06 ← Cygwin
2013-07-12 Fri 09:06 0.36 ← Mac OS X 10.6
init.el にはこう書いています。
(setq display-time-format " %Y-%m-%d %a %R")
(display-time) <>
名無しさん@お腹いっぱい。<>sage<>2013/07/12(金) 11:02:06.62 <> Cygwin って loadavg 取れないんじゃなかったかな <>
名無しさん@お腹いっぱい。<>sage<>2013/07/12(金) 11:41:21.19 <> M-: (load-average)
すれば取得出来てるかどうか分かる。
ちなみに(122 123 120)だった。 <>
名無しさん@お腹いっぱい。<>sage<>2013/07/12(金) 18:23:21.64 <> emacs 24.3のquery replaceがおかしい気がします。
c++-modeなどでつかっていますが、たまに以下のような動作をします。
abc0
abc1
abc2
abc3
abc4
これの一部を abc > xyz とreplaceするとします
abc0(no)
abc1(no)
abc2(yes)
abc3(yes)
abc4(yes)
という風に選択する予定なので
abc0,abc1をnoでスキップ
abc2をyesでリプレース
以前のemacsでの挙動ならabc3をリプレースするか問い合わせてきますが
いきなりスキップしたはずのabc0から再度問い合わせしてきます。
再度abc0,abc1をスキップしてabc3をリプレースすると
再びabc0を問い合わせてきます、これを繰り返す状態になります。
状況の再現性についてですが
その他周りのテキストも関係しているのか
↑のテキストだけはりつけて query replaceしても再現しないと思います。
ただ、発生しているときは、なんどやっても必ず同じ挙動になります。 <>
名無しさん@お腹いっぱい。<>sage<>2013/07/12(金) 19:48:39.46 <> imenu-treeで階層化したimenuを表示したく、そのためのimenu側の設定をお聞きします
対象のファイルはこのようなものです
* 見出し1
** 見出し1.1
内容1
* 見出し2
** 見出し2.1
内容2
http://dev.ariel-networks.com/Members/matsuyama/imenu/の「独自のインデックス作成機能を作る」で
1階層のインデックス作成はできたのですが、それ以上の深さをimenuにどう伝えるのかさっぱり分かりません
おわかりの方はいらっしゃいますか <>
名無しさん@お腹いっぱい。<><>2013/07/12(金) 19:50:59.48 <> >>96-97
Cygwin 側が変なんですね。なんか値が4つ入ってるし。
(0 0 0 0) ← Cygwin
(28 16 15) ← Mac OS X 10.6
気にしない事にします。ありがとうございました。 <>
名無しさん@お腹いっぱい。<><>2013/07/13(土) 16:56:37.80 <> Emacs を使っていれば一流のハッカーみたいな風潮、もうやめない? <>
名無しさん@お腹いっぱい。<>sage<>2013/07/13(土) 17:04:10.60 <> はい <>
名無しさん@お腹いっぱい。<>sage<>2013/07/13(土) 17:09:20.77 <> いいえ <>
名無しさん@お腹いっぱい。<><>2013/07/13(土) 17:12:31.07 <> 便利だから使ってるだけだが <>
名無しさん@お腹いっぱい。<>sage<>2013/07/13(土) 17:13:40.80 <> Emacsも使えないハッカーとか(笑) <>
前スレ972<>sage<>2013/07/13(土) 17:51:22.86 <> >>9
>としてみれば、どうかな!?
遅レスで申し訳ないです。ありがとうございました。うまく行きました。
個人的にこれでかなりストレスを軽減できます。 <>
名無しさん@お腹いっぱい。<>sage<>2013/07/13(土) 18:11:15.36 <> Emacsの起動時のロゴが、雄牛が牝牛を襲ってる図にみえてしょうがないんですが、どうにかしてもらえませんかね? <>
名無しさん@お腹いっぱい。<>sage<>2013/07/13(土) 20:46:36.12 <> >>101
そんな風潮ないよ。 <>
名無しさん@お腹いっぱい。<>sage<>2013/07/13(土) 21:32:10.41 <> だよな <>
名無しさん@お腹いっぱい。<>sage<>2013/07/14(日) 00:39:29.35 <> リアルな話をすると、底辺 IT 現場では
Emacs とか Linux とか聞いただけでハッカー扱いしてくれるからな……
一般的にはそんなもん。 <>
名無しさん@お腹いっぱい。<>sage<>2013/07/14(日) 06:13:23.04 <> >>99
自分も以前そういうのが欲しくて探したけど簡単な方法がなかった記憶がある。
TeXでの例。(てきとう)
https://gist.github.com/kenoss/5992132
使ってないし管理もしてないので改造するよりは自分で書いた方が早いと思う。
ツリーにしたければ(多分)imenu-create-index-functionでツリーを返す必要がある。
(imenu--index-alistのヘルプ参照。) <>
99<>sage<>2013/07/14(日) 14:21:08.63 <> >>111
ありがとうございます。やってみます。 <>
名無しさん@お腹いっぱい。<>sage<>2013/07/14(日) 17:54:15.54 <> http://www20.atwiki.jp/kobapan/pages/25.html
に
font-lock-warning-face t
や
font-lock-warning-face prepend
とありますが、tやprependのような設定についてどのドキュメントを見ればいいのでしょう? <>
名無しさん@お腹いっぱい。<>sage<>2013/07/14(日) 18:36:16.59 <> font-lock-keywords(variable)のdocstringより
;; font-lock.elをprependで検索した。
OVERRIDE and LAXMATCH are flags. If OVERRIDE is t, existing fontification can
be overwritten. If `keep', only parts not already fontified are highlighted.
If `prepend' or `append', existing fontification is merged with the new, in
which the new or existing fontification, respectively, takes precedence.
If LAXMATCH is non-nil, that means don't signal an error if there is
no match for SUBEXP in MATCHER. <>
名無しさん@お腹いっぱい。<><>2013/07/15(月) 00:00:25.52 <> >>107
(setq inhibit-startup-message t)
しておけば。 <>
113<>sage<>2013/07/15(月) 11:28:51.10 <> >>114
ありがとうございます! <>
名無しさん@お腹いっぱい。<>sage<>2013/07/16(火) 00:31:09.37 <> tramp でリモートのファイルを編集するときに
auto-complete-mode を使っていると、
./
とタイプするとリモートのファイルを探しに行って固ってしまう。
実際には何10分も待てば帰ってくるのですが、事実上固まるに等しい状態です。
不便で仕方がないのですが、何か良い方法ありますか? <>
名無しさん@お腹いっぱい。<>sage<>2013/07/16(火) 15:20:05.71 <> org-modeで見出しは*, **, ***ですが、その行に自動的に着色される設定を変更したいです
変更したいのは*と**の場合で、font-lock をいじるのかと思ったのですが
該当するものを見つけられませんでした
org-modeで見だしの色を変更している人はいませんか <>
名無しさん@お腹いっぱい。<>sage<>2013/07/16(火) 16:15:32.51 <> org-level-1 とか org-level-2 の face 変えればいいんでわ? <>
名無しさん@お腹いっぱい。<>sage<>2013/07/16(火) 19:04:33.39 <> >>117
auto-completeを窓から捨てる。
trampに罪はない。 <>
名無しさん@お腹いっぱい。<><>2013/07/17(水) 07:41:50.54 <> >>117
Gitにあるacを使う
リリースが追いついてないらしい <>
118<>sage<>2013/07/17(水) 12:54:49.66 <> >>119
それです!ばっちりでした <>
名無しさん@お腹いっぱい。<>sage<>2013/07/17(水) 14:16:33.27 <> ちなみにカーソル合わせて M-x describe-face で face がわかるよ。 <>
名無しさん@お腹いっぱい。<>sage<>2013/07/17(水) 14:32:02.03 <> windowがsplitされているかどうかを判定する関数はありますか? <>
名無しさん@お腹いっぱい。<>sage<>2013/07/17(水) 14:46:39.93 <> get-buffer-window-list して要素数数えるとかなのかねえ。 <>
名無しさん@お腹いっぱい。<>sage<>2013/07/17(水) 20:54:09.54 <> >>121
githubのもので解決しました。 <>
名無しさん@お腹いっぱい。<>sage<>2013/07/18(木) 18:34:10.59 <> emacs org-modeの ditaa で以下の縦線、横線をキーバインド一発で入力する方法ないですか?
-----
|
|
| <>
名無しさん@お腹いっぱい。<>sage<>2013/07/18(木) 18:54:44.98 <> ありますよ。 <>
名無しさん@お腹いっぱい。<><>2013/07/18(木) 22:28:46.01 <> >>124
one-window-pならsplitされていない事がわかるはず。 <>
124<>sage<>2013/07/20(土) 09:12:37.10 <> >>129
ばっちりです! <>
名無しさん@お腹いっぱい。<>sage<>2013/07/21(日) 18:46:21.14 <> Stevey's Blog Rants: January 2008
http://steve-yegge.blogspot.jp/2008_01_01_archive.html
わかりやすい <>
名無しさん@お腹いっぱい。<>sage<>2013/07/21(日) 18:47:17.90 <> リンクがおかしかった
こっち
Stevey's Blog Rants: Emergency Elisp
http://steve-yegge.blogspot.jp/2008/01/emergency-elisp.html <>
名無しさん@お腹いっぱい。<><>2013/07/23(火) 00:55:38.10 <> 新しいEmacsに入った eww という擬似Webブラウザ、
emacs-w3mよりも圧倒的に速いな。いったいどういう原理で
動いているんだろう? <>
名無しさん@お腹いっぱい。<>sage<>2013/07/23(火) 09:41:34.59 <> ソース読めばいいだろう。
最近の Emacs だと外部プロセスって意外と速くないんだよな。 <>
名無しさん@お腹いっぱい。<>sage<>2013/07/23(火) 10:12:59.92 <> んなことなかんべ <>
名無しさん@お腹いっぱい。<>sage<>2013/07/23(火) 10:51:17.78 <> w3mがその証拠。chromeやffの方が速いだろ、と思う。 <>
名無しさん@お腹いっぱい。<>sage<>2013/07/23(火) 10:54:33.32 <> 外部プロセスを呼ぶこと自体は遅くないんじゃないの。
外部プロセスから受け取ったデータの処理が遅いだけで。 <>
名無しさん@お腹いっぱい。<>sage<>2013/07/23(火) 16:13:13.65 <> その根拠は? <>
137<>sage<>2013/07/23(火) 16:18:02.38 <> 根拠ってほどのものはないです。 <>
名無しさん@お腹いっぱい。<>sage<>2013/07/23(火) 17:29:36.30 <> emacs-w3m は昔から遅かったから
プロセス一般の話に持ってっちゃいかん <>
名無しさん@お腹いっぱい。<>sage<>2013/07/23(火) 19:37:06.23 <> gnusに戻りたいよう <>
名無しさん@お腹いっぱい。<>sage<>2013/07/26(金) 14:44:29.27 <> init-loaderとESUP(Emacs Start Up Profiler)の併用について質問します
init-loaderでサブディレクトリ内のelispを読み込んで評価しているのですが、esupではそれぞれのelispの処理時間を計測してくれません
init-loaderによって読み込まれた一つずつのファイルについてもESUPで調査し結果を出力するにはどうすればよいですか <>
名無しさん@お腹いっぱい。<>sage<>2013/07/27(土) 01:47:51.92 <> >>133
パースにlibxml2を使っている。
libxml2が速いんだろうね。 <>
名無しさん@お腹いっぱい。<>sage<>2013/07/29(月) 20:17:38.96 <> yatexが勝手にeucに変換してしまうので
文字化けする
何か設定すればutfのまま使えるの? <>
名無しさん@お腹いっぱい。<>sage<>2013/07/29(月) 21:11:53.37 <> >>144
YaTeX-kanji-codeをチェック.
あとはLocal variables. <>
名無しさん@お腹いっぱい。<>sage<>2013/07/29(月) 21:33:28.86 <> emacsでコマンド起動するときに、一緒に新規ファイル作成をする方法を教えてくれ
viでいうところの↓と同じ事をemacsでやりたい
$ vi hello.txt
→ hello.txtファイルが実在しなくてもエディタが起動する
→ その状態で保存すると、hello.txtファイルが作成されて編集内容が保存される
$ emacs hello.txt
→ hello.txt does not exist. と表示されてemacsが起動しない <>
名無しさん@お腹いっぱい。<>sage<>2013/07/29(月) 21:49:44.01 <> touch hello.txt; emacs hello.txt <>
名無しさん@お腹いっぱい。<>sage<>2013/07/29(月) 21:50:38.17 <> つーか、emacs hello.txt で普通にできない? <>
名無しさん@お腹いっぱい。<>sage<>2013/07/29(月) 22:01:08.18 <> >>147
touchするのが面倒なのよ
でも、コマンドを作って、そんな形にすればいいってことに気づいた
thx
>>148
うそーっと思ってlinux上で実行してみたら出来た
Emacs MacPortはあかんのか <>
名無しさん@お腹いっぱい。<>sage<>2013/07/29(月) 22:10:38.45 <> Mac の話ならこっちで聞けばいいのに。
Mac de Emacs総合スレ v7
http://anago.2ch.net/test/read.cgi/mac/1328699139/ <>
名無しさん@お腹いっぱい。<>sage<>2013/07/29(月) 22:15:53.59 <> そんなスレがあったのですね
失礼しました <>
名無しさん@お腹いっぱい。<>sage<>2013/07/30(火) 08:52:34.22 <> Macだが/usr/bin/emacsでも
/opt/local/bin/emacs (MacPort)でも問題ない。 <>
名無しさん@お腹いっぱい。<>sage<>2013/07/30(火) 17:29:37.14 <> >>149
えっとね。
$ sw_vers -productVersion
10.7.5
$ port installed emacs-app |tail -1
emacs-app @24.3_1+fullscreen+inline+jpfont+patches (active)
$ open -a Emacs.app hoge.txt ; echo $?
The file /Users/xxx/hoge.txt does not exist.
1
と、確かになるけど、
$ /Applications/MacPorts/Emacs.app/Contents/MacOS/Emacs hoge.txt; echo $?
0
なの。だから、
$ alias |grep emacs=
alias emacs='/Applications/MacPorts/Emacs.app/Contents/MacOS/Emacs'
としておけば、普通に
$ emacs hoge.txt; echo $?
0
になる。 <>
名無しさん@お腹いっぱい。<>sage<>2013/07/30(火) 17:51:01.02 <> openコマンドのメッセージだな...
$ open -a hogehogeboo /tmp/t.txt
The file /tmp/t.txt does not exist. <>
名無しさん@お腹いっぱい。<>sage<>2013/07/31(水) 09:00:25.10 <> >>152
Emacs Mac port っていうmac向けに改良したemacsのことです
2本指のジェスチャーとかに対応していて使いやすいです
port installed | grep emacs
emacs-mac-app @4.2_0+imagemagick+rsvg (active)
>>153-154
おお!
たしかにopen -a していました
直接Contents/MacOS/Emacsを叩けば良かったんですね <>
名無しさん@お腹いっぱい。<>sage<>2013/07/31(水) 10:24:13.31 <> >>150でやれよ。 <>
名無しさん@お腹いっぱい。<><>2013/08/01(木) 07:39:53.27 <> >>156
別にイイじゃねえか、知らなかったこと知れるし
心の狭いヤツだな <>
名無しさん@お腹いっぱい。<><>2013/08/01(木) 16:22:48.41 <> >>157
そういう若手イケメンなレスをすると
このスレでは住人生命終わるぞ。
ここは冴えないEmacsオヤジ達の聖域。
ここで長生きしたかったら
安居酒屋での生き方ってもんを身につけるこったあ。 <>
名無しさん@お腹いっぱい。<>sage<>2013/08/01(木) 20:13:17.45 <> どこかの設定がおかしいせいか、emacsが数十秒に一回、数秒間固まってしまうようになりました
どのmajor-modeでも起こるようでして、minor-modeが原因かと思いましたが、恥ずかしながら原因をまだ突き止められていません
似たような症状に陥り問題を解消した方はいますか <>
名無しさん@お腹いっぱい。<>sage<>2013/08/02(金) 00:06:01.73 <> >>159
とりあえず timer-list みてあやしげなの cancel-timer で止めてみれ。 <>
名無しさん@お腹いっぱい。<>sage<>2013/08/02(金) 12:06:25.89 <> >>160
ありがとうございます。この記事のとおり、原因はpopwin:close-popup-window-timerでした
Emacs がちらつく原因を特定する - Qiita [キータ]
http://qiita.com/akisute3@github/items/11f20d2bddae7d7bcaea
大変助かりました <>
名無しさん@お腹いっぱい。<>sage<>2013/08/03(土) 11:17:30.24 <> >>142ですがinit-loader-show-logで十分でした <>
名無しさん@お腹いっぱい。<>sage<>2013/08/03(土) 18:53:11.91 <> しばらく小指が使えないのだけど
ctrを押さないで操作するか
ctrを違う場所に移動するのにお勧めのキー
はありませんでしょうか <>
名無しさん@お腹いっぱい。<>sage<>2013/08/03(土) 18:59:21.13 <> >>163
日本語キーボードなら変換、無変換あたりどうよ。
キーボードを買い換えるとかなら↓で。
Keyboard キーボード 3
http://toro.2ch.net/test/read.cgi/unix/1285489282/ <>
名無しさん@お腹いっぱい。<>sage<>2013/08/03(土) 20:25:21.18 <> 前にここで教えてもらって変換、無変換に割り当ててるけど
小指痛くならないしいいわこれ <>
名無しさん@お腹いっぱい。<>sage<>2013/08/04(日) 08:30:00.05 <> 浅田真央さんのお母さんは良いお母さんです。 <>
名無しさん@お腹いっぱい。<>sage<>2013/08/04(日) 09:21:15.55 <> なぜならEmacsを使っているからです。 <>
名無しさん@お腹いっぱい。<>sage<>2013/08/04(日) 11:41:10.74 <> >>165
変換と無変換の両方ともctrlにするの? <>
名無しさん@お腹いっぱい。<>sage<>2013/08/04(日) 12:40:59.51 <> そこはお好みで。 <>
名無しさん@お腹いっぱい。<>sage<>2013/08/04(日) 13:00:02.00 <> ttp://www.pfu.co.jp/hhkeyboard/kb_collection/images/symbolics.gif
Lispマシンのキーボードに似た配列になる <>
名無しさん@お腹いっぱい。<>sage<>2013/08/04(日) 13:04:34.89 <> >>170
その配列だとCTRLを親指じゃなくて小指で押すことになるんじゃないのかねえ?
おれの親指はZの下までは伸びないぞ <>
名無しさん@お腹いっぱい。<>sage<>2013/08/04(日) 13:14:34.95 <> 指摘されて初めて気がついた
でも俺の小指ではZのした辺りまで届かないんだよな <>
名無しさん@お腹いっぱい。<>sage<>2013/08/04(日) 15:16:29.13 <> 欧米人は手がデカいんじゃね。 <>
名無しさん@お腹いっぱい。<>sage<>2013/08/04(日) 15:28:40.11 <> 小指使えないとshiftも移動させないといけなくなるな <>
名無しさん@お腹いっぱい。<>sage<>2013/08/04(日) 15:40:05.15 <> >>173
欧米人は手がデカいと言っても、
指が長いだけじゃなくて手のひらの幅も広いんだから、
親指をあそこまでも持ってくのは逆にキツイだろw <>
名無しさん@お腹いっぱい。<>sage<>2013/08/04(日) 19:39:35.25 <> >>169
なるほど
面白そうだから試してみる <>
名無しさん@お腹いっぱい。<>sage<>2013/08/04(日) 20:37:14.34 <> 肝はAの左なのでHHK信者は心して見るように。 <>
名無しさん@お腹いっぱい。<>sage<>2013/08/05(月) 00:30:19.04 <> >>172
小指の下の方、手の付け根あたりで押すという技もあるけどね。同時押しが増えてくると辛いか。 <>
名無しさん@お腹いっぱい。<>sage<>2013/08/05(月) 11:07:55.67 <> >>170のキーボードで、
CtrlとMetaの同時押しを多用するemacsのLispモードが使い物になるとは思えないんだよねえ <>
名無しさん@お腹いっぱい。<>sage<>2013/08/05(月) 22:12:37.83 <> >>179
Super とか Hyper を使うのではないの?
>>163
SandC とか SandS という方法も無くは無い。 <>
名無しさん@お腹いっぱい。<>sage<>2013/08/06(火) 00:24:51.54 <> ctrlを小指の付け根、metaは反対側の小指 <>
名無しさん@お腹いっぱい。<>sage<>2013/08/06(火) 00:40:23.12 <> Unix端末にはSuperがなかったから代用でC-M-とかにしたんだろうねえ <>
名無しさん@お腹いっぱい。<>sage<>2013/08/06(火) 08:05:38.36 <> 自分はTabの位置にAltを置いてる。Hyper(左手親指)はemacsで使って、SuperはXmonadで使う。
似非SandS(右手親指)も使ってる。小指が壊れたときどうするんだろう。
>>181
右手側のキーが死んだりしない? <>
名無しさん@お腹いっぱい。<>sage<>2013/08/06(火) 14:03:38.95 <> >>180
Sandって何だ? <>
名無しさん@お腹いっぱい。<>sage<>2013/08/06(火) 14:08:50.36 <> >>184
http://hp.vector.co.jp/authors/VA002116/sands/ <>
名無しさん@お腹いっぱい。<>sage<>2013/08/07(水) 01:12:26.77 <> やっぱり足踏みだろ
飛行機のシミュレータ好きそうなやつ多そうだし <>
名無しさん@お腹いっぱい。<>sage<>2013/08/07(水) 01:19:49.71 <> >>185
s & sってことか。 砂場遊びでも始まるのかとおもった。 <>
名無しさん@お腹いっぱい。<>sage<>2013/08/07(水) 23:36:57.11 <> >>185
スペースキーを長押しして離した時にスペースが挿入されなければ、かなりいいな。
SKK使いはShiftで小指を酷使するからEmacsで実装して欲しいもんだ。
Emacsなら実装出来るはずだろうけど、やり方が良くわからん。。残念 <>
名無しさん@お腹いっぱい。<>sage<>2013/08/08(木) 12:02:06.33 <> 長押し検知する方法が timer で監視ぐらいしか思いつかん。他に方法あんのかな?
timer 使う実装方法を選んじゃうと popwin みたいに次第に腐っていく気がする。 <>
名無しさん@お腹いっぱい。<>sage<>2013/08/08(木) 13:09:17.21 <> Emacs内でやらなきゃいかんの? <>
名無しさん@お腹いっぱい。<>sage<>2013/08/08(木) 16:13:11.03 <> >>188
key-chordとspace-chord使う。 <>
名無しさん@お腹いっぱい。<>sage<>2013/08/09(金) 01:08:35.69 <> >>191
space-chord.elは某氏作か。とりあえず、紹介ページのとおりに設定したが、うまくいかん。
fedrao17で24.3を使ってるが、winの人とかはうまくいくのか? <>
名無しさん@お腹いっぱい。<>sage<>2013/08/09(金) 01:40:59.48 <> お、trunkにdos.elがコミットされた。
これ必須だったから標準で入ってると助かる。
しかし、コミットされたとたんみんなから修正されまくった挙句
bat-mode.elにリネームされちゃったw
標準に取り込まれたら、もう自分のもので無くなってしまうという罠。 <>
名無しさん@お腹いっぱい。<>sage<>2013/08/09(金) 17:36:05.95 <> 文字コード関連の質問です
utf8で出力したいファイルをwith-temp-fileで開き
sjisのファイルをinsert-file-contents-literallyから読み込んで
編集したいのですがutf8で出力する仕方がわかりません
どう設定すればよいですか <>
名無しさん@お腹いっぱい。<>sage<>2013/08/09(金) 17:44:53.19 <> buffer-file-coding-systemを設定すれば? <>
名無しさん@お腹いっぱい。<>sage<>2013/08/10(土) 09:52:36.16 <> >>195
ありがとうございます。 <>
名無しさん@お腹いっぱい。<>sage<>2013/08/13(火) 14:42:19.47 <> elispでは(declare (indent 1))とすることでマクロのインデントを
調整することができますが(以下のように)、slimeとCommon Lispにおいて
同等の動きをさせるにはどうすればよいのでしょうか?
;; 最低一回は評価するwhile
(defmacro do-while (cond &rest body)
(declare (indent 1))
`(progn
,@body
(while ,cond
,@body))) <>
名無しさん@お腹いっぱい。<>sage<>2013/08/14(水) 01:36:21.54 <> その以下のように書けばいいんじゃねーのか?w <>
名無しさん@お腹いっぱい。<>sage<>2013/08/14(水) 12:36:42.65 <> clとemacs切り離されているので言語内でインデントには言及できないと思います。 <>
名無しさん@お腹いっぱい。<>sage<>2013/08/14(水) 12:42:04.13 <> ;; (cl-indent 名前 手本)
(cl-indent 'iterate 'let)
(cl-indent 'collect 'progn)
(cl-indent 'mapping 'let)
(cl-indent 'mapping 'let)
.emacsにこのように記述することでうまくいきました <>
名無しさん@お腹いっぱい。<>sage<>2013/08/15(木) 10:37:52.64 <> http://ergoemacs.org/emacs/using_voice_to_code.html
Emacs Pinkieってことばがあるんだね
初めてしった <>
名無しさん@お腹いっぱい。<>sage<>2013/08/20(火) 15:33:38.13 <> emacs lispの質問です
特定の関数内で呼び出す関数の返り値を外部から変えることはできますか?
(defun foo (x) (print x))
(defun bar1 () (foo "a"))
(defun bar2 () (foo "b"))
defadviceでfoo関数そのものを自由にいじれるのは分かったのですが
このうちbar1で呼び出すfoo関数の返り値だけを変えるようにして
bar2で呼び出すfoo関数はそのままにしておきたいです <>
名無しさん@お腹いっぱい。<>sage<>2013/08/20(火) 16:37:00.50 <> >>202
もっとエレガントにできないものか。
(defadvice foo (after hoge disable)
(setf ad-return-value "c"))
(defadvice bar1 (around fuga activate)
(ad-enable-advice #'foo 'after 'hoge)
(ad-activate #'foo)
ad-do-it
(ad-disable-advice #'foo 'after 'hoge)
(ad-activate #'foo)) <>
名無しさん@お腹いっぱい。<>sage<>2013/08/20(火) 17:05:33.59 <> >>202
(backtrace) みるとかどうよ。 <>
名無しさん@お腹いっぱい。<>sage<>2013/08/20(火) 23:56:31.72 <> defadvice自体がエレガントかどうかっていう議論もあるような気がする
ちゃんと他人のプログラムのことを考えたうえでのものならいいんだけどね <>
名無しさん@お腹いっぱい。<>sage<>2013/08/21(水) 04:32:22.04 <> >特定の関数内で呼び出す関数の返り値を外部から変える
設計が腐ってる臭いがする <>
名無しさん@お腹いっぱい。<>sage<>2013/08/21(水) 09:13:35.10 <> emacsのカレンダーをA4のミスコピー用紙の裏紙に印刷して
半分におって綴じるとシステム手帳に代わりになる
みたいなブログを以前に見た記憶あるのですが
半分におって綴じる
の部分は普通にクリップで挟むだけなのでしょうか?
何かシステム手帳みたいな物はないのでしょうか <>
名無しさん@お腹いっぱい。<>sage<>2013/08/21(水) 11:02:25.76 <> >>207
ホッチキスでとめると便利だよ。 <>
名無しさん@お腹いっぱい。<>sage<>2013/08/21(水) 11:05:29.33 <> >>206
馬鹿か?adviceの話なんだから設計具合など関係ない。 <>
名無しさん@お腹いっぱい。<>sage<>2013/08/21(水) 12:53:27.36 <> >>209
そんなキミにひとつ名言を捧げよう
トンカチを握ったヤツには
全ての問題が釘に見える <>
202<>sage<>2013/08/21(水) 13:31:08.95 <> >>203-206
ありがとうございます。考え直してみます。 <>
名無しさん@お腹いっぱい。<>sage<>2013/08/22(木) 00:04:13.53 <> defadviceじゃなくてfletとかlabelsを使えば?
他人のelispの中での関数呼び出しの挙動を少しだけ変えるときはそうしてることが多い。 <>
名無しさん@お腹いっぱい。<>sage<>2013/08/22(木) 13:15:11.99 <> そのコメントを見て気になっていたのですが、obsolete macro と指摘されていたlabelsとfletについてお尋ねします
`labels' is an obsolete macro (as of 24.3); use `cl-labels' instead.
`flet' is an obsolete macro (as of 24.3); use either `cl-flet' or `cl-letf'.
このようなエラーメッセージが出るようになったので
labelsをcl-labelsにdefmacroしたいのですが
defaliasのようなもので設定すればよいのでしょうか <>
名無しさん@お腹いっぱい。<>sage<>2013/08/22(木) 16:57:05.22 <> >>213
まずは自分で試してみるべし
ただ、obsolete認定されたんなら cl-flet を使う方向で考えたほうが前向きなような気がする
下位互換を考えるならば、 cl-flet がない環境では cl-flet を defalias してあげればいいと思う
他人のコードならそのうち対応するだろうから、気にしない <>
名無しさん@お腹いっぱい。<>sage<>2013/08/22(木) 17:21:39.01 <> fletはダイナミックスコープだったけどcl-fletはレキシカルなんだよなー
flet相当のことはcl-letfで一応できるけどちょっと冗長になる
(cl-letf (((symbol-function 'foo) (lambda () ...))) ...) <>
名無しさん@お腹いっぱい。<>sage<>2013/08/22(木) 19:37:33.87 <> >>214-215
なるほど、他人のコードで更新が停滞しているものだったので
どこまで手を入れるか考えあぐねていました
symbol-functionを使う手は考えていなかったので参考になります <>
名無しさん@お腹いっぱい。<>sage<>2013/08/23(金) 22:54:02.83 <> へー、レキシカルになったのか。
個人的には少しの手間でダイナミックスコープ特有のバグが減らせるなら喜ばしい。 <>
名無しさん@お腹いっぱい。<>sage<>2013/08/29(木) 00:41:43.14 <> 最近本家更新ないけどどうなってるん?
次は24.4?25? <>
名無しさん@お腹いっぱい。<>sage<>2013/08/30(金) 19:15:11.92 <> 次が何番でもいいんですけど、
(setq scroll-conservatively 99999) とかでやってる 1行スクロールが時々飛ぶ現象が、いい加減直ってくれたらいいなと思いますです。
2009年ごろには認知されてるのに…。 <>
名無しさん@お腹いっぱい。<>sage<>2013/08/31(土) 01:13:51.60 <> Changelogには確か直ったと書いてあった <>
名無しさん@お腹いっぱい。<>sage<>2013/08/31(土) 10:15:25.73 <> >>220
まじですか。24.2.1では相変わらずときどき飛びますです。
(setq scroll-conservatively most-positive-fixnum) で若干マシにはなりますけど <>
名無しさん@お腹いっぱい。<>sage<>2013/08/31(土) 14:14:08.78 <> Emacs上でXサーバ、VNC、RDPクライアントっぽい事が出来るスクリプトとか無いでしょうか? <>
名無しさん@お腹いっぱい。<>sage<>2013/08/31(土) 16:56:45.03 <> Emacs内にX等の窓をだすっていうんだったら多分ない。
Webkitを取り込んだバージョンのなんかだとその内出来るかもしれんけど。 <>
名無しさん@お腹いっぱい。<>sage<>2013/08/31(土) 23:43:27.29 <> NEWSを調べたところ24.3からだね。↓こんな感じ
*** If you customize `scroll-conservatively' to a value greater than 100,
Emacs will never recenter point in the window when it scrolls due to
cursor motion commands or commands that move point (e.f., `M-g M-g').
Previously, you needed to use `most-positive-fixnum' as the value of
`scroll-conservatively' to achieve the same effect. <>
名無しさん@お腹いっぱい。<>sage<>2013/09/01(日) 00:13:50.51 <> >>224
ごめん24.1からだった。。
ということは直ってないし、永久に直らないね多分。 <>
名無しさん@お腹いっぱい。<>sage<>2013/09/01(日) 06:35:18.99 <> >>225
わざわざ調べてくれてありがd
飛ぶときに recenter が働いていたというのがちょっと疑問な気がします。
ひょっとすると似て非なる現象なのかもしれないです。
あまり頻繁ではないので、引き続き我慢しますです。 <>
名無しさん@お腹いっぱい。<>sage<>2013/09/01(日) 08:35:34.05 <> 先端だと
(setq scroll-conservatively most-positive-fixnum)
すると飛ばないような気がするなあ。 <>
名無しさん@お腹いっぱい。<>sage<>2013/09/01(日) 09:56:00.97 <> most-positive-fixnum を使えば飛ぶ頻度は格段に(ときどき→まれに)減るのですが、油断していると飛びますw
emacs -q 環境では飛んだことがないので、かなり環境に依存するのではないかと。
フォントが小さい場合や、toggle-truncate-lines で折り返しなしにしたときに起きやすいような気が… <>
名無しさん@お腹いっぱい。<>sage<>2013/09/01(日) 10:38:45.02 <> 環境依存ってか最近はメジャーモード自体がいろいろ凝ったことをやるし
たいていはマイナーモードもてんこ盛りだから
もう fundamental-mode でもない限りそもそもレベルで重いわな
そんなことより vi/emacs 使うなら
5行5文字以上の移動にキー押しっぱなししてるうちはニワカ
という教えも思い出してやってください <>
222<>sage<>2013/09/01(日) 11:05:29.52 <> >223
そうですか。 XserverさえアレばEmacsだけ入った*Nixとか
Emacs詰め合わせを持ち込んですぐに自分の環境を整備、、、
とか期待したんですが、、、 どうもありがとうございました。
aalibだけを使ったXserverが有るらしので、Emacsと合わせて
どうやれば最小構成でポータブルに持っていけるのか、、、
難しいかな <>
名無しさん@お腹いっぱい。<>sage<>2013/09/01(日) 12:52:48.06 <> >>229
みんなどうやって移動してるんだ?
forward-wordとかisearch-forward使って移動してるんだけどこれでいいんか? <>
名無しさん@お腹いっぱい。<>sage<>2013/09/01(日) 13:03:22.05 <> >>229
そうは言っても、スクロールくらいは普通のエディタっぽい動きをしてほしい <>
名無しさん@お腹いっぱい。<>sage<>2013/09/01(日) 13:16:25.85 <> >>231
君のディスプレイをのぞきこんだ人に
「カーソルと画面が飛びまくって何してんのかぜんぜんわからない。
てかそれってエディタなの?」
と言われたら一人前ですな <>
名無しさん@お腹いっぱい。<>sage<>2013/09/01(日) 13:29:50.00 <> 編集するときや読みたい場所わかってるときはぴょんぴょん飛ぶのもいいけど
全文読む時なんかは普通にスクロールしてほしいよね <>
名無しさん@お腹いっぱい。<>sage<>2013/09/01(日) 13:33:16.53 <> マウスのスクロール使えばなんとか <>
名無しさん@お腹いっぱい。<>sage<>2013/09/01(日) 14:19:53.99 <> >>229
emacs/vim 両方使うが、vim の時は fa とか ta とかで移動することは多いけど、
emacs だと普通に C-f C-b とかで移動してる。
これっておかしいの? <>
名無しさん@お腹いっぱい。<>sage<>2013/09/01(日) 14:31:28.51 <> んなもん好きにせいよw
おかしいと言われたら直すのか? <>
名無しさん@お腹いっぱい。<>sage<>2013/09/01(日) 15:52:17.74 <> 俺もみんながどうやって移動してるか知りたい
今のところhelm-c-moccurとfoward-wordと連打が多い
あとはsmartparens.elの移動も使い始めた
今気になってるのはpophintとvim のfっぽい挙動
これは便利っていうのあったら教えてください <>
名無しさん@お腹いっぱい。<>sage<>2013/09/01(日) 15:58:56.37 <> 移動だけじゃないけどlispを編集するならpareditが超便利 <>
名無しさん@お腹いっぱい。<>sage<>2013/09/01(日) 15:59:09.13 <> emacsといえばsexp系移動 <>
名無しさん@お腹いっぱい。<>sage<>2013/09/01(日) 16:11:59.62 <> sexp はいつ見ても sex-predicate に見えてしまう <>
名無しさん@お腹いっぱい。<>sage<>2013/09/01(日) 16:12:47.21 <> >>237
直すかどうかわからんが、もっと効率がいい方法がわかりゃ検討するさ <>
名無しさん@お腹いっぱい。<>sage<>2013/09/01(日) 16:29:47.92 <> カーソルキーにスクロールを割り当ててるけど結構便利 <>
名無しさん@お腹いっぱい。<>sage<>2013/09/01(日) 16:31:53.31 <> この話題になると明確な答えが出ることはない
それは本当に上手い話は独り占めが基本だからだ! <>
名無しさん@お腹いっぱい。<><>2013/09/01(日) 16:53:20.25 <> ● 流出でこのスレすっかり寂れててわろた……
わろた……orz <>
名無しさん@お腹いっぱい。<>sage<>2013/09/01(日) 16:56:11.56 <> えっ!むしろ今までより盛り上がってるような <>
名無しさん@お腹いっぱい。<>sage<>2013/09/01(日) 17:01:45.56 <> 夏の全鯖規制祭りが解けて久々に書けてるヤツの方が多いだろ <>
名無しさん@お腹いっぱい。<>sage<>2013/09/01(日) 17:54:06.21 <> ace-jump-mode使ってる? <>
名無しさん@お腹いっぱい。<>sage<>2013/09/01(日) 19:11:08.72 <> >>233
昔、コードレビューでそんな感じになって、途中で通訳してくれる人が来てくれて助かった。
Emacsって社内の標準エディタだったんだけど…。 <>
名無しさん@お腹いっぱい。<>sage<>2013/09/01(日) 19:23:15.15 <> コードレビューの時は操作が飛びすぎるとレビュアーの理解が追いつかないから、GUIの統合開発環境でわかりやすく飛んでる <>
名無しさん@お腹いっぱい。<>sage<>2013/09/01(日) 19:57:30.03 <> >>248
10年位上Emacs使ってるけど、初めて知りました。
これよさそう。
今酔ってるから、あした試してみるね。あんがと! <>
名無しさん@お腹いっぱい。<>sage<>2013/09/01(日) 23:45:48.15 <> デフォの半画面スクロールに慣れるとそれで良くなるよ。
しばらく我慢して使ってみ。 <>
名無しさん@お腹いっぱい。<>sage<>2013/09/01(日) 23:53:27.74 <> >>252
View-scroll-half-page-*のこと?
これって割当てられてるキーバインドあるのかな <>
253<>sage<>2013/09/02(月) 00:02:42.24 <> 何言ってるんだ俺
そんなコマンドないぞ <>
名無しさん@お腹いっぱい。<>sage<>2013/09/02(月) 05:21:25.10 <> C-v・M-vだろう。 <>
名無しさん@お腹いっぱい。<>sage<>2013/09/02(月) 05:37:31.12 <> あ、書き込めた。移動系はC-sが多いな。
isearchからM-s oでoccurに派生したり、M-s h rでマーカーに派生したり。
あとは、C-x r SPCでレジスタ利用かな。
重くなったらナローイングするけど、一つのバッファに対して複数指定できれば便利かもね <>
名無しさん@お腹いっぱい。<>sage<>2013/09/02(月) 07:38:50.06 <> ThinkPadのトラックポイント(小声) <>
名無しさん@お腹いっぱい。<>sage<>2013/09/02(月) 09:09:16.26 <> もうメンテされてなさそうだけどanything-c-moccurが多い <>
名無しさん@お腹いっぱい。<>sage<>2013/09/02(月) 13:25:35.65 <> いまさらながら auto-complete 入れてみた。
スクラッチバッファに (point) と書こうとしたら、候補に pong と出てきた。
M-x pong してみた。
しばし仕事中に遊んでしまった。 <>
名無しさん@お腹いっぱい。<>sage<>2013/09/02(月) 14:14:43.68 <> ナローイングとか使ったことないわ <>
名無しさん@お腹いっぱい。<>sage<>2013/09/02(月) 14:19:56.84 <> ナローイングめっちゃ使うなあ
弄るときも読む時も使う <>
名無しさん@お腹いっぱい。<>sage<>2013/09/02(月) 16:10:01.02 <> レジスタ置いてもそのまま忘れて自力で戻ってることがよくあるw
タグジャンプしてんのに自力で戻ってることもよくあるww <>
名無しさん@お腹いっぱい。<>sage<>2013/09/02(月) 16:12:56.55 <> set-family-attributeのfamilyで任意のフォントを指定できますが
そのフォントを指定したディレクトリ内から探してくるよう設定することはできませんか
フォントのパスを格納している変数が何かあるかと思ったのですが、探せませんでした <>
名無しさん@お腹いっぱい。<>sage<>2013/09/02(月) 16:35:47.90 <> >>258
helm-c-moccurに移行しないの? <>
名無しさん@お腹いっぱい。<>sage<>2013/09/02(月) 18:30:56.87 <> >>261
どんなとき便利なんだろう。
レジスタってなんか覚えられん。 <>
名無しさん@お腹いっぱい。<>sage<>2013/09/02(月) 20:55:28.43 <> >>264
あるんだ。じゃあいい加減helmに移行しようかな <>
名無しさん@お腹いっぱい。<>sage<>2013/09/02(月) 22:08:02.67 <> ナローイングは関数とかクラスとかの中のシンボルを一括で変項したいとき使う。読むときに使うってのは他に意識を散らさないためにするのかな。
レジスタはキーボードマクロと一緒に使うくらいだな。 <>
名無しさん@お腹いっぱい。<>sage<>2013/09/02(月) 22:34:34.67 <> ナローイングはローカル変数の検索に使うことが多いな
悲しいかなむやみにでかい関数なんかにもよく出会う
ポイントの移動には視線ポインティングデバイスが普及してくれるとうれしいと思う
でかい画面でC-sでの移動も、途中で引っかかったりすると、ポイントがどこにあるのか探す羽目になったりするし
できれば複数人の視線分のポインタが色違いで出てくれたりするとうれしいな <>
名無しさん@お腹いっぱい。<>sage<>2013/09/03(火) 00:13:19.28 <> ビデオ会議中におっぱいに視線ポインタが集中して気まずくなるのか <>
名無しさん@お腹いっぱい。<>sage<>2013/09/03(火) 02:26:50.99 <> >>269
それはボインだ。 <>
名無しさん@お腹いっぱい。<>sage<>2013/09/03(火) 13:06:34.82 <> このスレ加齢臭がする <>
名無しさん@お腹いっぱい。<>sage<>2013/09/03(火) 13:41:15.29 <> キーボードに専用キーつけて、押している間だけ反応するとかにしないと、なんにしても使い物にならないとは思う
医療用のだと瞬きで反応したりするけれど、エディタ使うような奴には無理があるしな
ビデオ会議中、視線ポイント有効キーを押している間は、チラ見もしないという集中力が求められるのは当然のこと^^ <>
名無しさん@お腹いっぱい。<>sage<>2013/09/03(火) 13:49:28.13 <> 寄り目にすると有効になるとかできたらいいな <>
名無しさん@お腹いっぱい。<>sage<>2013/09/03(火) 20:26:13.92 <> フットスイッチとか普通に売ってるし、SFネタで良ければマスタースレーブ方式の
パワードスーツで武器選択する際には舌でスイッチしてたっけ。 <>
名無しさん@お腹いっぱい。<>sage<>2013/09/03(火) 23:16:12.01 <> 小指だけでも辛いものがあるのに、舌使うなんてこと想像もしたくないぞ
現行のキーボードでもカーソル移動系のキーが余るだろう(そのくらいの精度がないと使えんし)から、
フットスイッチまではいらないと思う
コンピュータの操作でポインタ移動系はかなりのウェートを占めていると思うしな
ディスプレイとの距離の問題があるから少なくともカメラ2つは必要そうだけれど、
なんせかんせ3Dばやりなんだから各ディスプレー毎に3Dカメラ搭載がデフォになるのはそう遠くないと思う
ずいぶん前から視線をトレースする(光学系かな?)ことってできてたと思うし、
デジタル処理加えれば何とかなりそうな気がするんだけれど、いまだに出てこないというのはなんかあるのかな? <>
名無しさん@お腹いっぱい。<>今日はお休みなさいませ<>2013/09/03(火) 23:47:51.88 <> evil-surround で質問です。ご指南下さい。
複数行を tag で囲むには どのようにすればよいのでしょうか?
やりたいこと
aaa
bbb
ccc
↓
"aaa"
"bbb"
"ccc"
やったこと
visual mode で選択し、s" と入力してみたのですがだめでした。
↓こんな感じになったりします。
"aaa
bbb
ccc"
# とりあえず regex で置換してます。
# cscope って便利ですね。 <>
名無しさん@お腹いっぱい。<>sage<>2013/09/04(水) 01:20:31.37 <> isearchでの移動だとカーソルと移動先の文字の位置関係を気にしないといけないからace-jumpでの移動に切り替えようと思ってたんだけど、
ace-jumpをC-c SPCに割り当ててるとどうにも使いにくいのでいい方法はないか調べてたらこんなのがあった。
```
どんなもんかと簡単に説明すると、H-a 〜 H-z, H-0 〜 H-9をすべてace-jump-modeに割り当て、例えばH-c通したら即座に画面上の文字cにジャンプしようとするようにします。
画面上に文字cが1つしか現れていなければH-cで即座にジャンプしますし、複数現れていればH-c bみたいな感じで2ストロークで飛べます。
候補が多すぎる場合はそれに応じてストローク数は増えますが、大体2-3回です。
Hって何って人は後述の修飾キーの説明をどうぞ。
```
ちょっと強引がけどすごく使いやすい。 <>
名無しさん@お腹いっぱい。<>sage<>2013/09/04(水) 06:04:48.26 <> >>276
それはvimユーザーの方が詳しそう
>>277
vimのfをバッファ全体に拡張してhintを加えた感じか
pophintから乗り換えようかな <>
名無しさん@お腹いっぱい。<>sage<>2013/09/04(水) 11:27:13.00 <> ace-jump-modeを使ってみたけれど面白いねこれ
別ウィンドウを表示しているときにlineの移動コマンドを呼び出すと、ウィンドウをまたいで特定の行に移動することが簡単にできるないでこういうことができるなんて面白い <>
名無しさん@お腹いっぱい。<>sage<>2013/09/04(水) 18:24:55.35 <> >>276
C-x ( ←キーマクロの開始
C-a ←行頭へカーソルの移動
" ←「"」の入力
C-e ←行末へカーソルの移動
" ←「"」の入力
C-n ←次の行へカーソルの移動
) ←キーマクロの終了
そんで、例えば4行分キーマクロを実行させたければ
実行したい位置へカーソルを移動させて
4 C-x e
と、実行する。ちなみにわかるとは思うが7行分実行させたい場合は
7 C-x e
な。 <>
280<>sage<>2013/09/04(水) 18:39:18.02 <> >>276
スマン。キーマクロの終了が間違っていた。
ただしくは、
C-x ) ←キーマクロの終了
だった。 <>
名無しさん@お腹いっぱい。<>sage<>2013/09/04(水) 18:46:33.21 <> 移動の話になるといっつも思うのは何行下とか何桁右とか瞬間的にわかるの? <>
280<>sage<>2013/09/04(水) 18:59:41.45 <> column-nuber-mode とか line-number-mode のこと? <>
名無しさん@お腹いっぱい。<>sage<>2013/09/04(水) 19:07:46.25 <> >>280
俺も最近まで知らなかたけど
C-x e の後にeを押した回数だけキーマクロが実行される
つまり4回キーマクロを実行したい場合はC-x e e e eと入力すれば良い
他にはコマンドを複数回実行したい場合は
C-u 4 C-x e (これで4回キーマクロが実行される)
の他に
C-4 C-x e
なんて方法もある <>
名無しさん@お腹いっぱい。<>sage<>2013/09/04(水) 19:08:57.72 <> >>284
> 俺も最近まで知らなかたけど
(Type e to repeat macro)
って表示されてるのに。 <>
名無しさん@お腹いっぱい。<><>2013/09/04(水) 19:13:05.23 <> (Type e to repeat macro)
ほんとだ、俺も今まで全く見てなかった・・ <>
280<>sage<>2013/09/04(水) 19:14:19.05 <> 俺は今、初めて知った。
>>284 ありがd。 <>
280<>sage<>2013/09/04(水) 19:23:36.94 <> >>276
重ね重ねのミス本当にスマン。
キーマクロを繰り返し実行するときは
>>284 さんのように C-「繰り返し回数の数値」が正解。 <>
名無しさん@お腹いっぱい。<>sage<>2013/09/04(水) 19:25:27.03 <> マクロはマクロのキーバインドを忘れてしまって結局使わないってパターンがおおいわ・・
dmacro も一時期使ってたけど今の emacs で動くのかな <>
276<>sage<>2013/09/04(水) 22:42:58.27 <> >>278
Vim 板で訊いてみます。
>>280
情報ありがとうございます。
でも evil-surround でやってみたいのです。
kbd-macro だと regex とあまり変わらないので・・・。
ace-jump-mode 面白いですね。使わせていただきます。
あと Hyper, Super なる修飾キーがあるとは全然知りませんでした。
ありがとう。
Super を <convert> もしくは <non-convert> に割り当てたいんですが
どなたかご存知ありませんでしょうか? <>
名無しさん@お腹いっぱい。<>sage<>2013/09/05(木) 00:05:50.53 <> 行頭、行末でいいんならそんなにregexp使わなくてもできるだろ
先頭行と最終行は手でやるって前提。いきなりやる程自信はないんでいつもquery付だけど
M-% C-q C-j [Enter] " C-q C-j " [Enter]
y g
M-% C-q C-j [Enter] " C-q C-j ", [Enter]
y g
っつーのはまれによく使う <>
名無しさん@お腹いっぱい。<>sage<>2013/09/05(木) 00:38:56.67 <> そんならこれでいいんじゃない
M-x replace-regexp [Return] .* [Return] "\&"
空行をスキップしたいなら
M-x replace-regexp [Return] .+ [Return] "\&" <>
名無しさん@お腹いっぱい。<>sage<>2013/09/06(金) 16:07:21.10 <> 散々既出だと思うのですが、カーソル移動系のコマンドを作ろうとすると、
(let ((bol (save-excursion (beginning-of-line) (point)))
:
などをものすごい頻度で使います。
もうそろそろ、C関数で行頭/行末のposを返す関数を載せてホスィ <>
名無しさん@お腹いっぱい。<>sage<>2013/09/06(金) 16:29:08.42 <> >>293
1996-11-25 Karl Heuer <kwzh@gnu.ai.mit.edu>
* editfns.c (Fline_beginning_position, Fline_end_position): New fns. <>
名無しさん@お腹いっぱい。<>sage<>2013/09/06(金) 16:36:10.57 <> >>294
M-x describe-function line-end-position して、自分の盲目さに気づきました。
1996年というと自分はまだ elisp 触っておりませんです。お恥ずかしい限り。 <>
名無しさん@お腹いっぱい。<>sage<>2013/09/06(金) 21:28:40.44 <> >>248
ドン亀だけど、ace-jump-mode 使ってみました
すごくいい!ありがとうござます! <>
名無しさん@お腹いっぱい。<>sage<>2013/09/07(土) 13:32:45.16 <> 移動系は行を跨いだ移動と行内の移動で違うな
あと画面内の移動とファイル全体の移動も違う <>
名無しさん@お腹いっぱい。<>sage<>2013/09/09(月) 17:34:27.58 <> >>294
gnu.ai.mit.edu
神々の住まうドメイン <>
名無しさん@お腹いっぱい。<>sage<>2013/09/09(月) 17:53:52.32 <> .emacs.d直下のelisp全部消しちまった・・・
サルベージは諦めたのでお勧めのemacsの設定を公開してるgithubリポジトリとか教えてください。 <>
名無しさん@お腹いっぱい。<>sage<>2013/09/09(月) 19:09:32.89 <> バニラから使い始める
↓
気づいたところで足りないものを足していく
↓
けっこうすぐ元に戻る
↓
必要なものだけきれいに揃っており、結果的に大掃除完了
↓
しあわせ <>
名無しさん@お腹いっぱい。<>sage<>2013/09/09(月) 19:30:33.91 <> あるある
xemacs とか mule でも動くように設定してある部分とかいらんしね
使いもしない言語のパッケージとかノリでいれたのとかもばっさり消えてすごくすっきり <>
名無しさん@お腹いっぱい。<>sage<>2013/09/10(火) 00:01:25.03 <> gitに対するvc-annotateが遅すぎて死にそうなんですが、
中の人はなにをやってて遅いんでしょうかね?
やりたいことは
git blameしたのと同じ表示を得ることと、
指定コミットや前後のコミットへの移動(表示)だけなのに。 <>
名無しさん@お腹いっぱい。<>sage<>2013/09/10(火) 04:50:23.49 <> YOU ソース追ッチャイナヨ! <>
名無しさん@お腹いっぱい。<>sage<>2013/09/11(水) 10:37:53.15 <> バニラってなんすか?emacsen? <>
名無しさん@お腹いっぱい。<>sage<>2013/09/11(水) 10:38:41.43 <> >>304
http://catb.org/jargon/html/V/vanilla.html <>
名無しさん@お腹いっぱい。<>sage<>2013/09/11(水) 10:39:18.69 <> 「素の」ってことだ。 <>
名無しさん@お腹いっぱい。<>sage<>2013/09/11(水) 11:00:58.53 <> >>305
>>306
Ergo Emacs みたいな派生品があるのかと思いました。
おお、勉強になりますた。 <>
名無しさん@お腹いっぱい。<>sage<>2013/09/11(水) 18:55:48.34 <> >>304
>バニラってなんすか?emacsen?
研究社 リーダースプラス英和辞典
a. ありきたりの, 平凡な, 普通の. <>
名無しさん@お腹いっぱい。<>sage<>2013/09/11(水) 23:51:02.10 <> >>308
リーダーズ英和辞典第2版
3 《電算俗》 普通[ありきたり]の機種, 汎用[標準]機種;
俗語かい! <>
名無しさん@お腹いっぱい。<>sage<>2013/09/11(水) 23:57:02.74 <> Jargon=計算機俗語
ってことじゃないの? <>
名無しさん@お腹いっぱい。<>sage<>2013/09/12(木) 00:07:09.10 <> >>309
全部引用しろよ
vanilla
n. _《電算俗》 普通[ありきたり]の機種, 汎用[標準]機種; _
《俗》 《性嗜好が》 フツーの人, まともな人;
《黒人俗》 白人, 白人女.
a. _《口》 どうってことない, つまらない;
《口》 飾りのない, シンプルな (plain-vanilla_);
《電算俗》 普通の, 標準的な, ありふれた;
《俗》 《性的嗜好が》 正常な, まっとうな,
《ホモ俗》 ストレートの. <>
名無しさん@お腹いっぱい。<>sage<>2013/09/12(木) 01:22:13.38 <> >>310
まぁそうだよ。 <>
名無しさん@お腹いっぱい。<>sage<>2013/09/12(木) 11:24:17.46 <> 一次スレが伸びなかったけど規制食らってた?
そもそも過疎ではあるけど <>
名無しさん@お腹いっぱい。<>sage<>2013/09/12(木) 12:13:21.04 <> このスレ、伸びてた時期なんかあったか? <>
名無しさん@お腹いっぱい。<>sage<>2013/09/12(木) 12:26:50.11 <> ここ数年少なくとも大手ISPの都内近郊は全鯖規制で何ヵ月も締め出されるのがデフォ
正月、GW、お盆などの大型連休はまず全鯖規制が鉄板
いろんな板にいきつけのスレがあるとぱったりと書き込みが減るのが分かる <>
名無しさん@お腹いっぱい。<>sage<>2013/09/12(木) 12:58:23.39 <> 教えてほしんだけど規制って何のためにあるの?
鯖への負荷の低減?NGユーザーの締め出し?○を買わせるため? <>
名無しさん@お腹いっぱい。<>sage<>2013/09/12(木) 13:28:17.45 <> よそでやれ。 <>
名無しさん@お腹いっぱい。<>sage<>2013/09/12(木) 13:29:37.59 <> >>316
こっちで。
【規制議論板】質問でも雑談でもOKのスレッド★358
http://qb5.2ch.net/test/read.cgi/sec2chd/1378616118/ <>
名無しさん@お腹いっぱい。<>sage<>2013/09/12(木) 15:05:37.48 <> vanilla
adj.
[from the default flavor of ice cream in the U.S.] Ordinary {flavor},
standard. When used of food, very often does not mean that the food is
flavored with vanilla extract! For example, vanilla wonton soup means
ordinary wonton soup, as opposed to hot-and-sour wonton soup. Applied
to hardware and software, as in "Vanilla Version 7 Unix can't run on a
vanilla 11/34." Also used to orthogonalize chip nomenclature; for
instance, a 74V00 means what TI calls a 7400, as distinct from a
74LS00, etc. This word differs from {canonical} in that the latter
means `default', whereas vanilla simply means `ordinary'. For example,
when hackers go on a {great-wall}, hot-and-sour soup is the
{canonical} soup to get (because that is what most of them usually
order) even though it isn't the vanilla (wonton) soup. <>
名無しさん@お腹いっぱい。<>sage<>2013/09/12(木) 15:40:21.06 <> それもう>>305に貼ったよ。 <>
名無しさん@お腹いっぱい。<>sage<>2013/09/12(木) 20:24:19.46 <> バニラ味のワンタンスープ・・・ <>
名無しさん@お腹いっぱい。<>sage<>2013/09/12(木) 20:33:46.41 <> wonton=ワンタンだったのか?
漠然と、なんか西洋のスープだと思ってた。
このスレ勉強になるわ <>
名無しさん@お腹いっぱい。<>sage<>2013/09/13(金) 08:23:28.00 <> 歌もあるし海外では人気の料理なんだな
http://www.youtube.com/watch?v=rkIX2fH3_uQ <>
名無しさん@お腹いっぱい。<>sage<>2013/09/14(土) 00:46:25.23 <> xemacsの-vanillaオプションのことも忘れないであげてください
-vanilla Equivalent to -q -no-site-file -no-early-packages. <>
名無しさん@お腹いっぱい。<>sage<>2013/09/14(土) 03:21:37.42 <> まだxemacsって生きているのか <>
名無しさん@お腹いっぱい。<>sage<>2013/09/14(土) 11:12:00.06 <> markdownをhtml5に変換するelispはありますか? <>
名無しさん@お腹いっぱい。<>sage<>2013/09/15(日) 02:39:58.84 <> 現在定義されているキーボードマクロをラムダ式の形式で取得することは
できますか?
たとえば、
C-x ( C-a " C-e " C-n C-x )
と定義されているときに、
(lambda ()
(move-beginning-of-line nil)
(insert "\"")
(move-end-of-line nil)
(insert "\"")
(next-line))
を取得するようなことは可能でしょうか? <>
名無しさん@お腹いっぱい。<>sage<>2013/09/15(日) 03:22:55.36 <> >>327
キーボードマクロは、キーの記録をとるだけだからねえ。
それでも良ければ、
M-x name-last-kbd-macro で適当な名前をつけて
M-x insert-kbd-macro でカーソル下に挿入 <>
328<>sage<>2013/09/15(日) 03:25:54.53 <> ちなみにaという名前をつけたら
こんな感じで挿入されるんだけど、
(fset 'a
"\C-n")
これをinit.leとかに書いておけば、M-x aで呼び出せるし、
キーに割り当てることもできる。
関数書けなかった時は、こんな感じでお茶を濁していた。 <>
名無しさん@お腹いっぱい。<>sage<>2013/09/15(日) 05:05:17.44 <> >>327
edit-kbd-macro はそれぞれのキーがどのコマンドになるかを調べて
コメントで表示するってことをやってるから、
それを参考に自分で書いてみてはどうか。 <>
327<>sage<>2013/09/15(日) 05:33:28.07 <> >>328
なるほど、symbol-functionで文字列として値をとれるんですね。
(symbol-function 'a)
; "^A\"^E\"^N"
>>329
以下のようになりました。
;; Keyboard Macro Editor. Press C-c C-c to finish; press C-x k RET to cancel.
;; Original keys: C-a " C-e " C-n
Command: last-kbd-macro
Key: none
Macro:
C-a ;; move-beginning-of-line
"
C-e ;; move-end-of-line
"
C-n ;; next-line
edit-kbd-macroを読んでみます。 <>
名無しさん@お腹いっぱい。<>sage<>2013/09/15(日) 07:53:30.87 <> interactiveに呼び出した場合と、関数内から呼び出した場合とで挙動が変わる
関数もあったりするから、関数の呼び出しにするのはいろいろ面倒なんじゃないかな <>
名無しさん@お腹いっぱい。<>sage<>2013/09/15(日) 11:44:37.09 <> >>332
やってはないけど、すべての呼び出しを call-interactively でやればいくね? <>
名無しさん@お腹いっぱい。<>sage<>2013/09/15(日) 12:30:16.75 <> Mac OSのEmacs24を導入しはじめてます。
ELPAで入れたパッケージ(たとえばpopwinなど)が、locate-libraryすると見つからないのに、requireすると参照できるからくりはいったいどうなっているのでしょうか?? <>
名無しさん@お腹いっぱい。<>sage<>2013/09/15(日) 14:23:36.27 <> 【QQ統計】普段メインで使ってるテキストエディタは?
http://qooqoo.tv/qq/id_question_02_17_00_2139479849/question.shtml
vi 76.1%
emacs ?%
viに押されてる。多分、組織票。
おらはEmacs一票入れた。 <>
名無しさん@お腹いっぱい。<>sage<>2013/09/15(日) 14:37:07.39 <> Meadow 使ってる人が Emacs に投票して、「あ、ミスった」となる罠。
ところで投票結果見れんのですが <>
名無しさん@お腹いっぱい。<>sage<>2013/09/15(日) 15:32:09.46 <> http://www.youtube.com/watch?v=O0UgY-DmFbU
C-x r t これしらんかった <>
名無しさん@お腹いっぱい。<>sage<>2013/09/15(日) 15:41:41.04 <> >>335
Vim Part22
http://toro.2ch.net/test/read.cgi/unix/1365071542/260
なにか必死なのが居るから多分じゃなくて本当に組織票だと思う。 <>
名無しさん@お腹いっぱい。<>sage<>2013/09/15(日) 15:47:21.01 <> >>335
質問に答えても最新の統計結果が見れないけどなんでだろう <>
名無しさん@お腹いっぱい。<>sage<>2013/09/15(日) 15:59:40.52 <> 俺も見れなかったな <>
名無しさん@お腹いっぱい。<><>2013/09/15(日) 16:39:40.97 <> ほんとだ見れない
XPの質問の結果は見れるのに <>
名無しさん@お腹いっぱい。<><>2013/09/15(日) 16:59:34.25 <> vimはLinuxでは必須のエディタとして扱われてるのに
Emacsはいつまで経ってもオプション扱い。
高機能エディタは競争が激化していくが
vimはシステム保守用のエディタとして安泰だからなあ。
正直Emacsはジリ貧だと思う。
もうVimacsとか作って本格的にvimを駆逐するしかない。 <>
名無しさん@お腹いっぱい。<>sage<>2013/09/15(日) 17:01:44.49 <> そんなわけわからんアンケートサイトに釣られる必要もないと思う <>
名無しさん@お腹いっぱい。<>sage<>2013/09/15(日) 17:04:12.86 <> vimmerの平均年齢は低いと思う
もしそうならvimmerの声がでかいのも納得いくし
アンケートでも少数が張り切ってるだけだから問題ないだろ <>
名無しさん@お腹いっぱい。<>sage<>2013/09/15(日) 17:47:07.70 <> >>342
最近はnanoとかpicoしか入ってなかったりするだろ。vim終わりってことか。 <>
名無しさん@お腹いっぱい。<>sage<>2013/09/15(日) 20:54:27.07 <> >>342
>vimはLinuxでは必須のエディタとして扱われてる
おじいちゃん乙 <>
名無しさん@お腹いっぱい。<>sage<>2013/09/15(日) 20:57:39.34 <> いつもの
http://www.google.co.jp/trends/explore?q=emacs+vim#q=emacs%2C%20vim&cmpt=q <>
名無しさん@お腹いっぱい。<>sage<>2013/09/15(日) 22:05:12.86 <> emacsは永久に不滅です <>
名無しさん@お腹いっぱい。<>sage<>2013/09/16(月) 01:37:24.83 <> そもそもなんで自分がEmacsを使い始めたのか思い出せない。 <>
名無しさん@お腹いっぱい。<><>2013/09/16(月) 08:42:44.13 <> 最近の若い子はみんなvimだって職場のemacs使いのおじいちゃんが言ってた。
キミは若いのにemacsなんてジジ臭いにもほどがあるよとも言われた。 <>
名無しさん@お腹いっぱい。<>sage<>2013/09/16(月) 13:42:34.95 <> 実践Vimに対応するようなemacsの本ってある?
http://ascii.asciimw.jp/books/books/detail/978-4-04-891659-2.shtml
emacsの哲学って何なのかわからないんだよね <>
名無しさん@お腹いっぱい。<>sage<>2013/09/16(月) 13:44:54.95 <> ここらへんじゃないの?
http://www.amazon.co.jp/dp/4774150029/ <>
名無しさん@お腹いっぱい。<>sage<>2013/09/16(月) 13:45:06.98 <> emacsの哲学ってemacsで全て完結でいいのか? <>
名無しさん@お腹いっぱい。<>sage<>2013/09/16(月) 13:45:38.47 <> っていうか amazon で emacs で検索すると >>351 が出てくるのはなんでや <>
名無しさん@お腹いっぱい。<>sage<>2013/09/16(月) 13:55:50.75 <> おれは>>352が一番最初にくるぞ
だけどEmacsといえばやっぱりこれだよね
http://www.amazon.co.jp/dp/4320024141/ <>
名無しさん@お腹いっぱい。<>sage<>2013/09/16(月) 15:44:01.83 <> とりあえずは kitchen sink かな。
台所の流しのようにとりあえずなんでも突っ込んでしまうというポリシー。
まだソースのどこかにこの(ダサいw)アイコンが残ってるはず。
これは単機能の小さいコマンドを組合せるという、
いわゆる UNIX 哲学に対するかたちで引き合いに出されることが多かった。
だから元々「emacs は UNIX 的ではない」というのが自他ともに認めるところだったりした。
でも反面で移植性・可搬性のためにビルドや実行の枷になり得る依存を
(なるべく)入れないというポリシーもあり、
このため kitchen sink を標榜すからには有ってよさそうなものを拒んでいたりする。
たとえば C で書かれたライブラリを elisp からダイナミックローディングする機能だとか、
X (てかビットマップな GUI) への対応で悶着したのも記憶に新しいところ。
異論は認める。補足も認める。 <>
名無しさん@お腹いっぱい。<>sage<>2013/09/16(月) 15:47:00.56 <> リージョン内部の全角英数を半角英数に変換して
全角カナは半角カナに変換しないようにするにはどうすればいいですか
japanese-hankaku-region関数を使うとどちらも半角になってしいました <>
名無しさん@お腹いっぱい。<>sage<>2013/09/16(月) 16:08:38.81 <> skk-latin-region <>
名無しさん@お腹いっぱい。<>sage<>2013/09/16(月) 16:42:19.55 <> >>357
(japanese-hankaku-region (point-min) (point-max) :ascii-only)
あるいは、
(defadvice japanese-hankaku-region
(around japanese-hankaku-region (from to &optional ascii-only)
activate)
(let ((ascii-only t))
ad-do-it))
でどうですか。 <>
名無しさん@お腹いっぱい。<>sage<>2013/09/16(月) 17:19:37.04 <> >>356
そういう話おもしろいな。 <>
名無しさん@お腹いっぱい。<>sage<>2013/09/16(月) 17:42:27.71 <> >>356
> たとえば C で書かれたライブラリを elisp からダイナミックローディングする機能だとか、
> X (てかビットマップな GUI) への対応で悶着したのも記憶に新しいところ。
>
> 異論は認める。補足も認める。
てかダイナミックローディングほしいんだけど、その話どうなったの?
プロセス間通信ばっかりはもういやだお。
レスポンスわるい。 <>
名無しさん@お腹いっぱい。<>sage<>2013/09/16(月) 17:46:54.08 <> Elisp で C を書けるという発想が欲しい。 <>
名無しさん@お腹いっぱい。<>sage<>2013/09/16(月) 18:41:04.53 <> ダイナミックローディングも C で書くことも
そこそこ emacs を使い込んだら誰もが望むネタの筆頭わけだけど、
C みたいなアーキテクチャやコンパイラに個別対応 (#ifdef の嵐) するハメになる
悪夢のような低級言語で書かずに済むよう lisp という高級言語を選んだ、
というのが出発点で、
「その発想が欲しい」どころか「そういうことをせずに済む」というのが
そもそものところなんですよ。
しかし近頃流行りの ffi がもちっとユニバーサルなものとして完成されてくれば
話もちがってくるんじゃねーのかな、というのがいちユーザとしての私見。 <>
名無しさん@お腹いっぱい。<>sage<>2013/09/16(月) 19:10:58.70 <> 普通の emacs と NTEmacs 使ってる身とすると外部プロセスに頼るものはすごく使いづらい <>
名無しさん@お腹いっぱい。<>sage<>2013/09/16(月) 19:22:39.71 <> >>364
何で? どんなところ? <>
名無しさん@お腹いっぱい。<>sage<>2013/09/16(月) 19:36:22.56 <> >>365
rsense とか emacs-w3m とか starttls あたりかね
rsense は cygwin でもややこしいことになって無理だった <>
名無しさん@お腹いっぱい。<>sage<>2013/09/16(月) 19:47:38.92 <> >>357
C-u M-x japanese-hankaku-region じゃダメなん? <>
名無しさん@お腹いっぱい。<>sage<>2013/09/16(月) 21:31:43.61 <> http://qooqoo.tv/qq/id_question_02_17_00_2139479849/question.shtml
Emacs シェア健闘。
vim 29.8% に対して
Emacsは19.1%
秀丸やWZよりもEmacsのほうがシェア高い <>
名無しさん@お腹いっぱい。<>sage<>2013/09/16(月) 21:48:07.39 <> >>365
横だが Windows で使おうとするとハマること多いね。
Windows 使うこと自体が間違ってるんだけども。 <>
名無しさん@お腹いっぱい。<>sage<>2013/09/16(月) 22:19:30.49 <> >>368
んどーせ釣られたニワカが必死こいてクリック連打してんだろアーヤダヤダ <>
名無しさん@お腹いっぱい。<>sage<>2013/09/16(月) 23:23:26.95 <> ミニバッファ上にカーソルがある状態でM-pを押すと過去の履歴を遡ることができますが、
C-pでも同様のことをするにはどのキーマップを編集すればよいのでしょうか <>
名無しさん@お腹いっぱい。<>sage<>2013/09/16(月) 23:26:44.13 <> minibuffer-local-mapかな? <>
名無しさん@お腹いっぱい。<>sage<>2013/09/16(月) 23:44:30.86 <> >>372
それです!うまく設定できました <>
名無しさん@お腹いっぱい。<>sage<>2013/09/17(火) 01:03:55.91 <> >>371
where-is(C-h k)M-pで調べられるんじゃない。 <>
名無しさん@お腹いっぱい。<>sage<>2013/09/17(火) 01:37:08.44 <> >>364
> 普通の emacs と NTEmacs 使ってる身とすると外部プロセスに頼るものはすごく使いづらい
同じく。
>>364
>何で? どんなところ?
やりたいことにもよるかもしれんが
emacs側のバッファメモリ直接みせたかったりするんだが、
わざわざ全部転送しないといかんとか、いろいろメンドイ。
やり取りが頻繁になると当然重くなるし。 <>
名無しさん@お腹いっぱい。<>sage<>2013/09/17(火) 08:48:07.27 <> 昔まだmuleが独立してリリースされてたころ、dynamic loadingにも対応した
バージョンがあったな。multilingual機能は統合されたけど、そっちは
取り込まれなかった。
多分思想的な問題なんだと思う。任意のdll突っ込めるならプロプライエタリ
なものも突っ込めるしなあ。 <>
名無しさん@お腹いっぱい。<>sage<>2013/09/17(火) 09:30:41.56 <> >>333
それがそうもいかないんだよ
aと打ったときに呼ばれるのはふつーはself-insert-command
これを手書きでいいから call-interacrive で実現してみるといい
M-yなんかも厄介だと思う
キーボードマクロで欠かせないであろうisearchとか <>
名無しさん@お腹いっぱい。<>sage<>2013/09/17(火) 11:44:50.53 <> >>373
なにげに漏れも困ってたから、助かったよ。古いEmacsはC-p で遡れたもんな。
(define-key minibuffer-local-map "\C-n" 'next-history-element)
(define-key minibuffer-local-map "\C-p" 'previous-history-element)
ところで >> 374 さんの言う、where-is を試したけど、キーマップ名は分らずでした。
やり方がまずいのかな。 <>
名無しさん@お腹いっぱい。<>sage<>2013/09/17(火) 12:26:37.13 <> >>378
>>374ですが、勘違いでした。 <>
名無しさん@お腹いっぱい。<>sage<>2013/09/17(火) 13:11:32.78 <> >>379
残念。勘違いでしたか。
キーを押して、それがdefine-key されている キーマップ名を返す関数があればいいと思うのですが、どう書けばいいかわからんです。 <>
名無しさん@お腹いっぱい。<>sage<>2013/09/17(火) 14:20:01.41 <> かつての電総研のハッカー(戸村さんあたりだったと思うが)、.soをダイナミックに
ロード、アンロード出来るようにしましたとMLに投げたら、RMSがそれは独占的プロ
グラム配布への道筋をつける事になりGNUの精神に反するから却下。
ということでダイナミックローダは禁じ手になっている。 <>
357<>sage<>2013/09/17(火) 14:55:48.84 <> 皆さん有難うございます。
当面は>>367のC-u M-xを使うようにして
頻繁に使うようになったら>>359のdefadviceを使うようにしてみます <>
名無しさん@お腹いっぱい。<>sage<>2013/09/17(火) 23:34:03.67 <> >>381
RMSがそれは独占的プロ
>グラム配布への道筋をつける事になりGNUの精神に反するから却下。
>ということでダイナミックローダは禁じ手になっている。
これっていつぐらいの話?
まだRMSかかわってたり権限あるのかな? <>
名無しさん@お腹いっぱい。<>sage<>2013/09/18(水) 01:36:13.04 <> >>383
>これっていつぐらいの話?
20世紀だった事は確実
>まだRMSかかわってたり権限あるのかな?
未だにmlにWindows版の提案とか来ると、そんなの捨ててGNU/Lunuxにしなよとか言って来る <>
名無しさん@お腹いっぱい。<>sage<>2013/09/18(水) 02:39:58.96 <> NativeChecker.com 使えなくなってたので代用品を探してます
pubmedia www6.ocn.ne.jp/~vmel/
というpubmedaから英文を沢山ダウンロードして
grepで英作文の参考になる英文を探すツールが昔あったのですがWindwos7では動きません
emacsでも似たことするツールないでしょうか
指定したディレクトリ内のpdfやテキストファイルにgrepするツール(color-moccurはlinuxでpdf検索できません)
moccur + pubmed なツールあると最高なのですが <>
名無しさん@お腹いっぱい。<>sage<>2013/09/18(水) 09:56:46.47 <> 英作文の前に作文からだな
ハイ次の方どうぞ〜 <>
名無しさん@お腹いっぱい。<><>2013/09/18(水) 10:19:22.48 <> グーグルさん一押しのhttp://pubmode.sourceforge.net/じゃダメなの? <>
名無しさん@お腹いっぱい。<>sage<>2013/09/18(水) 14:42:15.02 <> >>385
コーパスはコーパス専用アプリに任せたら?
ttp://www.d1.dion.ne.jp/~sadatazu/AntConc_nishimura.pdf
↑このおねぇちゃんお薦めのAntConcとかはどう? <>
名無しさん@お腹いっぱい。<><>2013/09/18(水) 15:51:23.50 <> groups.google.com/forum/#!forum/fj.editor.emacs <>
名無しさん@お腹いっぱい。<>sage<>2013/09/19(木) 08:16:08.61 <> >>388
385じゃないけど、AntConc 初めて知りますた。すげーです。
Weblio の例文見ないで済みそうです。
最近このスレ勉強になりまくり。
スレチでごめんなさい。 <>
名無しさん@お腹いっぱい。<>sage<>2013/09/19(木) 10:47:49.25 <> モダンErlang/OTP開発環境 2013 - kuenishi's blog
http://kuenishi.hatenadiary.jp/entry/2013/09/17/193829
知らなかったんだけれど、ErlangではEmacsでの開発を主として念頭に置いているんだね <>
名無しさん@お腹いっぱい。<>sage<>2013/09/19(木) 11:09:42.03 <> べつに言語問わずemacsでの開発以外念頭に置いてませんがなにか? <>
名無しさん@お腹いっぱい。<>sage<>2013/09/19(木) 11:10:41.88 <> いえ、特に何も。 <>
名無しさん@お腹いっぱい。<>sage<>2013/09/19(木) 13:37:47.19 <> マイナー言語制作者「どうせ誰もIDE作ってくれないし俺がEmacs使ってるからお前らもEmacsで書けや」
ってパターン多くね? <>
名無しさん@お腹いっぱい。<>sage<>2013/09/19(木) 13:43:56.98 <> んじゃIDE作ればよくね? <>
名無しさん@お腹いっぱい。<>sage<>2013/09/19(木) 13:56:16.80 <> なにが「んじゃ」なんだかよくわからん <>
名無しさん@お腹いっぱい。<>sage<>2013/09/19(木) 14:12:53.84 <> >>594
例えば?って聞こうと思ったけどやっぱいいわ <>
名無しさん@お腹いっぱい。<>sage<>2013/09/20(金) 02:53:46.49 <> 地震の時に便利な elisp はありますか? <>
名無しさん@お腹いっぱい。<>sage<>2013/09/20(金) 06:25:45.36 <> code.google.com/p/bcui-emacs/source/browse/#svn/trunk/grammar
emacsで英文法チェックしてくれるそうだけど
インストールしても動かない
どこかパス通ってるとこにgrammar.ccをコンパイルした実行ファイルおけばいいんだろうけど、なぜかgrammar.elは実行ファイルを発見してくれない <>
名無しさん@お腹いっぱい。<>sage<>2013/09/20(金) 08:36:15.52 <> exec-path を通してないとか?
初歩的過ぎ? <>
名無しさん@お腹いっぱい。<>sage<>2013/09/20(金) 09:15:46.83 <> ESC キーはAltと同じくMetaキーが割り付けられているようですが、
このESCキーを別のモディファイヤキー(たとえばHyperとかSuper)にすることはできるのでしょうか? <>
名無しさん@お腹いっぱい。<>sage<>2013/09/20(金) 09:56:15.83 <> マジレスすると
ESC に慣れた方がいい
ちなみに C-[ と ESC は同じ <>
名無しさん@お腹いっぱい。<>sage<>2013/09/20(金) 10:08:11.40 <> >>402
おっしゃるとおりなのですが、長年 global-set-key していると、モディファイヤキーが足らなくなってきまして、HyperやSuperが欲しくなってきました。
ctrl-x-map や ctrl+c-map も押しやすいキーは消費しているので、MetaがAltとダブっているESCキーをなんとか活用できないかと思った次第です。 <>
名無しさん@お腹いっぱい。<><>2013/09/20(金) 18:37:11.19 <> みんな一杯キーバインド使ってるのな
俺はCtrlとMetaだけで十分だわ <>
名無しさん@お腹いっぱい。<>sage<>2013/09/20(金) 23:00:25.72 <> 俺はモディファイアキーを増やすためにこんなもん買ってしまったよ
http://bit-trade-one.co.jp/BTOpicture/Products/001-BT/ <>
名無しさん@お腹いっぱい。<>sage<>2013/09/21(土) 01:51:48.99 <> >>401
local-function-key-map 中の (escape . [27]) を
(escape . event-apply-hyper-modifier) とか
(escape . event-apply-super-modifier) に変更すればよい。
便利な設定があったら教えてくれ。
Windows だと application key が空いていそうだが。 <>
名無しさん@お腹いっぱい。<>sage<>2013/09/21(土) 05:59:13.41 <> Emacs: How to Define Super & Hyper Keys
http://ergoemacs.org/emacs/emacs_hyper_super_keys.html <>
名無しさん@お腹いっぱい。<>sage<>2013/09/21(土) 06:05:07.50 <> Windows key も Option key も無いキーボードの場合はどうすればいいですか?
http://www.clickykeyboard.com/2006/1393278/1393278-001.jpg <>
名無しさん@お腹いっぱい。<>sage<>2013/09/21(土) 09:15:40.18 <> >>408
SpaceSaver! 昔それむっちゃ欲しかった。 <>
名無しさん@お腹いっぱい。<>sage<>2013/09/21(土) 10:04:33.12 <> >>406
せっかくヒントを頂いたのに、どうやって変更すればいいか分かりませんです。
ためしにこんなのを書いてみたのですが、(wrong-type-argument listp keymap)と怒られますた。
(let ((l local-function-key-map)
(in '(escape . 55))
(new '())
(pushed nil))
(dolist (e l)
(if (eq (car e) (car in))
(progn (push in new) (setq pushed t))
(push e new)))
(unless pushed (push in new))
new) <>
名無しさん@お腹いっぱい。<>sage<>2013/09/21(土) 12:29:17.35 <> (define-key local-function-key-map [escape] 'event-apply-hyper-modifier) <>
名無しさん@お腹いっぱい。<>sage<>2013/09/21(土) 13:14:31.98 <> >>411
できました。
このスレの少し前に紹介された ace-jump-modeを hyper で使おうと思います。
ttp://d.hatena.ne.jp/rkworks/20120520/1337528737
重ね重ね、ありがとうございました。 <>
名無しさん@お腹いっぱい。<>sage<>2013/09/22(日) 05:17:32.67 <> hoge.zip というファイルだけがあるディレクトリで shell-mode で
ls .z
まで打ってTABキーを押すと、補完されて hige.zip になりますが、これを
ls h とか
ls ho の時だけ補完させたいのですが可能でしょうか? <>
名無しさん@お腹いっぱい。<>sage<>2013/09/22(日) 07:31:07.95 <> 髭!と聞いて。 <>
名無しさん@お腹いっぱい。<>sage<>2013/09/22(日) 15:06:47.78 <> higepon <>
名無しさん@お腹いっぱい。<>sage<>2013/09/22(日) 16:04:46.35 <> >>413
completion-stylesからpartial-completionをdeleteするのはどうでしょうか。
(require 'cl-lib)
; cl-lib
(cl-delete 'partial-completion completion-styles)
; (basic emacs22)
あるいは
(setq completion-styles '(basic emacs22)) <>
名無しさん@お腹いっぱい。<><>2013/09/22(日) 17:18:38.56 <> 日本ではEmacsが最強のエディタとされてるが
海外では意外にWindowsのメモ帳がリバイバルブームきてるんだよなあ。
日本人がいつも後手にまわるのが悔しい。 <>
名無しさん@お腹いっぱい。<>sage<>2013/09/22(日) 18:36:09.50 <> 日本でもEmacsはかなり落ち目だと思うが <>
名無しさん@お腹いっぱい。<>sage<>2013/09/22(日) 18:48:29.82 <> >>416
希望通りの補完になりました。
ありがとうございました。 <>
名無しさん@お腹いっぱい。<>sage<>2013/09/22(日) 19:50:07.86 <> メモ帳はBOMが付くから使えない
そういや、EmacsでUNICODEのCOMBINING系文字を使うと編集が
うまく行かないんだが、コツある?
1文字に2個COMBINING付けたらわけわからなくなった。 <>
名無しさん@お腹いっぱい。<>sage<>2013/09/22(日) 19:58:45.74 <> >>420
>そういや、EmacsでUNICODEのCOMBINING系文字を使うと編集が
>うまく行かないんだが、コツある?
ASCIIしか使わない。
EUCを使う <>
名無しさん@お腹いっぱい。<>sage<>2013/09/22(日) 20:10:18.10 <> えー? 下付き/上付き添字、ベクトルとか共役とか色々装飾
したいじゃん(濁点とか半濁点とかはしたくない)。
あとはA○とかいろいろ。
ASCIIもEUCもできないでしょ。
メモ帳での編集はどうだったかな? 場合によっては負け? <>
名無しさん@お腹いっぱい。<>sage<>2013/09/22(日) 20:13:27.57 <> >>422
TeXで解決 <>
名無しさん@お腹いっぱい。<>sage<>2013/09/22(日) 20:18:55.18 <> TeXってまだあるんだ。
TeXにUNICODEのCOMBINING系文字を食わしたらどうなるのかな? <>
名無しさん@お腹いっぱい。<>sage<>2013/09/22(日) 20:54:15.21 <> メモ帳が流行ってるということは軽量なemacs cloneもくるかな
MicroEmacsにS式、単語単位のカーソル移動機能や予約語の強調表示の追加くらいで十分なんだけどなあ <>
名無しさん@お腹いっぱい。<>sage<>2013/09/22(日) 21:05:57.31 <> Creating A C++ Program In Windows With Notepad And The G++
https://www.youtube.com/watch?v=eMG7ZNq42PU <>
名無しさん@お腹いっぱい。<>sage<>2013/09/22(日) 21:20:08.53 <> >>417
メモ帳で自動インデントとかシンタックスハイライトができるのか? <>
名無しさん@お腹いっぱい。<><>2013/09/22(日) 22:23:37.02 <> おまいら vi に
宗旨替えるするつもりじゃないだろうな!!
そんなことヤル奴はEmacs使いの
風上にも置けない奴だ!
なお、俺氏は齢0x21にて現在は進行形でvimを
チマチマと覚えているところだ! <>
名無しさん@お腹いっぱい。<>sage<>2013/09/22(日) 22:40:42.51 <> そもそも、メモ帳が一度でもブームになったことがあるのか?
いいやない。 <>
名無しさん@お腹いっぱい。<>sage<>2013/09/22(日) 22:42:57.52 <> メモ帳の存在を忘れかけてた
あれを開くの店頭のPCを触るときぐらいだ <>
名無しさん@お腹いっぱい。<>sage<>2013/09/22(日) 22:43:39.45 <> Windows ブームはメモ帳ブームといっても過言ではない。
ほぼ全ての Windows ユーザーがメモ帳を通過したのだから。 <>
名無しさん@お腹いっぱい。<>sage<>2013/09/22(日) 23:23:10.20 <> 仕事ではしょうが無く vim 使ってる。
インターネットに接続出来ないから emacs 単体入れてもどうしようも無いけど・・・
emacs + helm とか諸々が1パッケージになってるものって無いの?
どっちにしろ、.emacs を一から書かんとイカンので無理だが。 <>
名無しさん@お腹いっぱい。<>sage<>2013/09/22(日) 23:31:07.86 <> IDEは魔改造されたメモ帳と見なすことが出来るのではなかろうか <>
名無しさん@お腹いっぱい。<>sage<>2013/09/22(日) 23:34:54.02 <> パッケージをネットワークから持ってくるとか
そんな昔からやってたわけじゃないけどな
だいたいのパッケージはelispファイルを持ってきて適当なとこに置けばいいだけだろ <>
名無しさん@お腹いっぱい。<><>2013/09/23(月) 01:02:56.48 <> よく考えたらネットがまともに使える以前のEmacsってゴミだよな。 <>
名無しさん@お腹いっぱい。<>sage<>2013/09/23(月) 01:19:58.29 <> ネット使えないころから愛用してたよw
最初はテープで貰ってきたw <>
名無しさん@お腹いっぱい。<>sage<>2013/09/23(月) 03:03:14.57 <> シリアル接続の純正VT端末で、window分割で使っていたころの方が、今よりもありがたみがあったような気がする <>
名無しさん@お腹いっぱい。<>sage<>2013/09/23(月) 04:40:16.03 <> >>436
おー、懐かしい。fjのテープ回覧? <>
名無しさん@お腹いっぱい。<>sage<>2013/09/23(月) 07:56:58.17 <> 4年くらいEmacs使ってきたけど
実践Vim読んでかなり心揺れてるw <>
名無しさん@お腹いっぱい。<>sage<>2013/09/23(月) 08:36:25.86 <> 実践vimを読んでいないからわからないけれど
emacsに実装できない機能がたくさん紹介されているの? <>
名無しさん@お腹いっぱい。<>sage<>2013/09/23(月) 10:51:41.35 <> vimは.emacsを編集することが出来ます。 <>
名無しさん@お腹いっぱい。<>sage<>2013/09/23(月) 12:07:05.05 <> emacsにしか出来ないことってのに実はそんなに魅力を感じなくなってきた今日この頃 <>
名無しさん@お腹いっぱい。<>sage<>2013/09/23(月) 12:11:18.49 <> それで別のエディタを使ってみるけどやっぱりemacsに戻っちゃう <>
名無しさん@お腹いっぱい。<>sage<>2013/09/23(月) 12:23:22.53 <> elispしこしこ書いてバッファ内に読みこんだファイルの内容を変更して、即
座に目で見て確認して保存ってこと、他のエディタでできるやつあるの? <>
名無しさん@お腹いっぱい。<>sage<>2013/09/23(月) 14:05:51.65 <> >>439
『心揺れてる』理由が知りたいです。
emacsを数年間利用した上でemacs以外のエディターに移行しようとする方の
意見には興味があります。 <>
名無しさん@お腹いっぱい。<>sage<>2013/09/23(月) 14:42:10.62 <> gitのvc-annotateが遅すぎなので
vimに移行したい <>
名無しさん@お腹いっぱい。<>sage<>2013/09/23(月) 17:12:31.00 <> >>446
package-install mo-git-blame
も遅い? <>
名無しさん@お腹いっぱい。<>sage<>2013/09/23(月) 17:55:56.78 <> >>444
イミフ <>
名無しさん@お腹いっぱい。<>sage<>2013/09/23(月) 18:02:29.57 <> >>448
まあ、だいたい何が言いたいかわかる。
その場しのぎでワンライナーっぽくフィルタみたいなことをやろうとすると確かにEmacsは便利。 <>
名無しさん@お腹いっぱい。<>sage<>2013/09/23(月) 18:29:39.53 <> さあ!人の作ったパッケージ(笑)の出来ひとつで
自分のやることが制限され左右されてしまう
ニワカで低能のみなさんはそろそろ静かにしててね! <>
444<>sage<>2013/09/23(月) 18:46:14.01 <> >>449
> その場しのぎでワンライナーっぽくフィルタみたいなことをやろうとする
これです。これができるエディタって他にあるのかな。
while re-search-forward replace-match で何度も幸せになれたので。 <>
名無しさん@お腹いっぱい。<><>2013/09/23(月) 20:08:15.11 <> どうでもいいんだが、「幸せになれる」って表現
元ネタどこ?てか誰が広めたんだ?
なんかイラッと来るんだが。
幸福実現党かよ。 <>
名無しさん@お腹いっぱい。<>sage<>2013/09/23(月) 20:17:32.40 <> 俺も他人にとってどうでもいいようなスレチでチラウラないちゃもんを
わざわざageで書いてておまけに政治ネタにふってるようなレス見ると
ものすげーイラッと来るわ <>
名無しさん@お腹いっぱい。<>sage<>2013/09/23(月) 20:20:01.89 <> >>453
つまり、幸せになれてないと? <>
名無しさん@お腹いっぱい。<>sage<>2013/09/23(月) 21:30:13.96 <> 多分、パソ通かfjが発祥。言い出した奴は鬼籍に入っている可能性もある。 <>
名無しさん@お腹いっぱい。<>sage<>2013/09/23(月) 21:59:42.57 <> >>444 >>449
そういう利点が、Emacs にはあるよね。
通常のテキストファイルに elisp を付属させて、必要に応じて
eval-last-sexp で簡単に処理したりで、1つのファイル内で簡潔に完結するこ
とができたり。 <>
名無しさん@お腹いっぱい。<><>2013/09/23(月) 22:15:52.76 <> Emacsでいいよslimeもあるし <>
名無しさん@お腹いっぱい。<>sage<>2013/09/24(火) 01:43:42.56 <> >>456
あんましよく知らんけど、カーソルがある行を読み込んでevalにかけるくらいなら
プラグイン作れるエディタなら大抵出来そうな気がするんだが <>
名無しさん@お腹いっぱい。<>sage<>2013/09/24(火) 07:45:00.70 <> 「大抵」ではないと思うぞ。
プラグインがコンパイラ言語のものだと、無理じゃね? <>
名無しさん@お腹いっぱい。<>sage<>2013/09/24(火) 07:57:01.66 <> 編集に限って言えば言うほど使い捨てスクリプト必要になったケースってないけどなあ
ちょっとしたことなら正規表現で事足りてる <>
名無しさん@お腹いっぱい。<>sage<>2013/09/24(火) 08:43:08.98 <> >>458
あくまで「ユーザが学習して利用できるようになれば」だけど...
Emacs は、何か手軽に処理をさせたいときの仕組みが元々組み込まれていて、
その呼び出し方が簡単で自由度が高い感がある。
極端な話、その「仕組み」そのものにもシームレスにアクセスし確認できる点
(たとえば eval-last-sexp のソースコードを describe-function などで追っ
ていく) は、特筆ものだと思う。
いわゆるプラグインだと、シームレスさや手軽さが欠けるんではないかな。も
ちろん、プラグインにも利点はあるだろうが。 <>
名無しさん@お腹いっぱい。<>sage<>2013/09/24(火) 13:01:52.80 <> お前らたまには他のエディタ触ってみたらどうだ
sublime textとかpython知ってりゃ5分でプラグイン作れるようになるぞ <>
名無しさん@お腹いっぱい。<>sage<>2013/09/24(火) 13:40:52.25 <> GUIはノーサンキュー <>
名無しさん@お腹いっぱい。<>sage<>2013/09/24(火) 13:58:31.56 <> プラグインってなんか感電しそうでいやだ。
ワイヤレスが主流の時代に時代遅れ感もあるし。
ワイヤレスインとかのほうが良い。 <>
名無しさん@お腹いっぱい。<>sage<>2013/09/24(火) 14:43:46.23 <> >>462
フック使ってるとプラグインから作るとか面倒すぎる。 <>
名無しさん@お腹いっぱい。<>sage<>2013/09/24(火) 15:54:24.18 <> elisp より python の方が書きやすいのは確かだな・・・
標準パッケージですら手続き型みたいな書き方してるのばっかりだもの。 <>
名無しさん@お腹いっぱい。<>sage<>2013/09/24(火) 17:17:38.06 <> そりゃ、elispは手続き型言語だから。 <>
名無しさん@お腹いっぱい。<>sage<>2013/09/24(火) 18:15:53.93 <> 日本語圏特化型ag -白金- の配備が完了しました - Thinking-megane
http://blog.monochromegane.com/blog/2013/09/23/sg-spec/
elispはまだ誰も公開していないけれどackやagよりもしっくりきそう <>
名無しさん@お腹いっぱい。<>sage<>2013/09/24(火) 18:55:19.69 <> 大抵の処理はマクロとかで間に合うし
マクロじゃ手に負えないようなテキスト処理をelispで書くとか考えただけでゾッとするんだが <>
名無しさん@お腹いっぱい。<>sage<>2013/09/24(火) 19:07:01.27 <> >>468
スレチもたいがいにしとけよコノヤロウ <>
名無しさん@お腹いっぱい。<>sage<>2013/09/24(火) 19:43:18.48 <> マクロはマグロっぽくて臭い。
Elisp は Eclipse と名前かぶってるし……もうやだこの界隈。 <>
名無しさん@お腹いっぱい。<>sage<>2013/09/24(火) 22:50:10.53 <> >>471
名前がかぶっている?
もしそうだとしてもお前が思っている名前だけだろ <>
名無しさん@お腹いっぱい。<>sage<>2013/09/24(火) 22:57:07.21 <> 小学生並の柔軟な発想ですね <>
名無しさん@お腹いっぱい。<>sage<>2013/09/24(火) 23:52:23.90 <> >>462
lispじゃなきゃヤダ <>
名無しさん@お腹いっぱい。<>sage<>2013/09/25(水) 00:33:08.73 <> そもそも、*.elで機能追加するのとプラグインってなにが違うんだ?
プラグインの定義ってあったら教えてほしい。 <>
名無しさん@お腹いっぱい。<>sage<>2013/09/25(水) 01:03:11.59 <> >>474
じゃあgeditだな
編集中のバッファの一部、もしくは全部を標準入力や標準出力にしてコマンドを実行できる機能があるから
お好みのLispが使えるぞ <>
名無しさん@お腹いっぱい。<>sage<>2013/09/25(水) 01:19:49.48 <> 俺なんかは逆にEmacs使いたいけどelispは嫌いだから、できるだけshell-commandでやってるわ <>
名無しさん@お腹いっぱい。<>sage<>2013/09/25(水) 08:45:35.15 <> >>456
>通常のテキストファイルに elisp を付属させて、必要に応じて
>eval-last-sexp で簡単に処理したり
あー、これオレもよくやったわ。
シェルスクリプトだとどこに置いたかすぐに忘れてしまって、何ヶ月後かに似たようなことするときに探せないんだけど、
こうしとくと、その手のテキストを探すだけですむ。その場しのぎだとかなり該当率高いし。 <>
名無しさん@お腹いっぱい。<>sage<>2013/09/25(水) 08:47:58.57 <> ニワカの{エディタ|言語|GUI|OS|自作マシン}談義ほどつまらんものはないわ <>
名無しさん@お腹いっぱい。<>sage<>2013/09/25(水) 08:56:45.98 <> >>477
人が作ったelispを使うだけなら、そんな感じなのも理解できまつ。
でも、ひとたび自分で elisp を書き出すとLisp脳で考えるのがフツーになって、シェルスクリプト書くのがめんどくなる。
末期的には、前に書いた elisp を find-file して、ちょこっと手直しして eval-buffer して終了、みたいなことが結構あるんだなこれが。
場合によってはキーボードマクロ使うより速いし。 <>
名無しさん@お腹いっぱい。<>sage<>2013/09/25(水) 09:11:08.80 <> >前に書いた elisp を find-file して、ちょこっと手直しして eval-buffer して終了、みたいなことが結構あるんだなこれが。
そういうことすっからオレの.emacsが手の施しようのない魔境になっちゃってるんだろうがっ!TT <>
名無しさん@お腹いっぱい。<>sage<>2013/09/25(水) 13:18:14.51 <> よしよしここはおじさんが <>
名無しさん@お腹いっぱい。<>sage<>2013/09/25(水) 16:16:55.22 <> >>481
なんで.emacsが関係あるんだ?いみわからずー <>
名無しさん@お腹いっぱい。<>sage<>2013/09/25(水) 17:26:40.54 <> scratch バッファが一番使用率高くなってくる <>
名無しさん@お腹いっぱい。<>sage<>2013/09/25(水) 21:42:31.13 <> scratch バッファみたいに保存されないところに作業内容を記録する気にはならんな。 <>
名無しさん@お腹いっぱい。<>sage<>2013/09/25(水) 21:47:56.56 <> 保存されるようにすればいいのだ <>
名無しさん@お腹いっぱい。<>sage<>2013/09/25(水) 23:29:01.83 <> アイドル時に勝手に保存されるようにして再起動してもレジュームするようにしてるよ
しょうもない書き捨て .el ファイルが量産されなくなってすっきり <>
名無しさん@お腹いっぱい。<>sage<>2013/09/25(水) 23:41:03.31 <> 保存したければscratch.elをひとつ作っておくのが筋ではなかろうか
保存されないのが*scratch*さんのいいところだろうに <>
名無しさん@お腹いっぱい。<>sage<>2013/09/26(木) 00:59:20.10 <> >>487
同じくです。
最初はそれ用の el を適当に拾ってきてそのまま使ってたんだけど
ある日突然 *scratch* がまっさらになって真っ青になったw <>
名無しさん@お腹いっぱい。<>sage<>2013/09/26(木) 08:30:24.97 <> >>487
できればそのelispを晒してほしいでごわす <>
名無しさん@お腹いっぱい。<>sage<>2013/09/26(木) 10:15:47.08 <> >>490
487じゃないけれど
でらうま倶楽部 : [Emacs]スクラッチバッファを自動保存したり行末コメントをまとめて削除したりな小粒マクロ集
http://blog.livedoor.jp/tek_nishi/archives/3714842.html
これとrun-with-idle-timerを組み合わせればできると思う <>
名無しさん@お腹いっぱい。<>sage<>2013/09/26(木) 11:53:06.25 <> そこまでelisp書く機会が思い付かない
ちょっとしたelispってどんなことをやってるのか教えてほしい <>
名無しさん@お腹いっぱい。<>sage<>2013/09/26(木) 12:12:49.99 <> >>490
はい
http://pastebin.com/y1cgxu7s
kill-buffer 出来なくしたり write-buffer した時に scratch バッファを再作成したりってのもどっかにおちてたけど
別名作ったり複数作ったりする時の完全なやり方が思いつかなかったからそっちは消しちゃった <>
名無しさん@お腹いっぱい。<>sage<>2013/09/26(木) 12:54:27.88 <> >>490です。
ありがとうございました。
何気に、util:aif マクロがいい感じです。
(if (buffer-file-name)
(find-file (buffer-file-name))
(message "このバッファはファイルじゃないでつ"))
とか頻繁に書いていたのですが、こういうマクロを書けばよかったんですね。勉強になりますた。 <>
名無しさん@お腹いっぱい。<>sage<>2013/09/26(木) 13:51:39.03 <> マクロいうてるのがdefmacroの話してるんだかkbd-macroの話してるんだかもっと他の話してるんだかワカンネ <>
名無しさん@お腹いっぱい。<>sage<>2013/09/26(木) 15:24:17.52 <> >>494
aif は On Lisp に載ってるメジャーなマクロシリーズなのでこっちも読んでみてね!
http://www.asahi-net.or.jp/~kc7k-nd/onlispjhtml/anaphoricMacros.html <>
名無しさん@お腹いっぱい。<>sage<>2013/09/26(木) 16:12:57.48 <> >>496
なんと、元は On Lisp のアナフォリックマクロでしたか。
すっかり本棚の肥やしとなっていたので、この機会に読み直しまつ!
グレアム先生、野田先生、ごめんなさい。 <>
名無しさん@お腹いっぱい。<>sage<>2013/09/26(木) 22:19:51.81 <> まだ現象の切り分けもしていないからクレクレ状態で済まないんだけれど、
auto-complete (今週頭にgithabからもらってきたもの) で、c++, cのファイルの末尾に、
ふと気が付くと改行が連続して入っているという現象について、なにか知っている人はいるかな
c/c++のファイルについては、セーブするときに行末の空白とファイル末尾の改行コードを
削除するようにしているから実用上は困ってないんだけど、結構気になるんで何か知っていたら教えてクレクレ
popupしたときに表示領域を確保するために改行コードを一時的につけているんじゃないかということは、
以前から使っているバージョンでも思ってはいる <>
名無しさん@お腹いっぱい。<>sage<>2013/09/27(金) 00:49:02.94 <> >>492
SJISのソースコードにUTF-8の文字列を書かなくちゃいけなくなった時に、
"日本語"ってソースに書いてリージョン選択してコマンド実行すると
↓
static const char data[] = {
0xe6, 0x97, 0xa5, 0xe6, 0x9c, 0xac, 0xe8, 0xaa, 0x9e, 0x00
};
って変換するelispを書いた時はかなり役に立った。 <>
名無しさん@お腹いっぱい。<>sage<>2013/09/27(金) 02:12:32.36 <> そのコード貼ってもええのんやねんでんで <>
名無しさん@お腹いっぱい。<><>2013/09/27(金) 05:57:03.11 <> >>499
おいどんも、コードを貼ってくれることを
希望するでごわす。 <>
名無しさん@お腹いっぱい。<><>2013/09/27(金) 08:38:55.20 <> >>499
高校二年女子です。
わたしからもお願いします。 <>
名無しさん@お腹いっぱい。<>sage<>2013/09/27(金) 10:09:23.52 <> しかたないにゃあ・・・ <>
名無しさん@お腹いっぱい。<><>2013/09/27(金) 12:49:19.21 <> gccのバージョンによって設定を場合分けしたくてこのように書いたんですが
全て"4"と出力されてしまいます
どこが間違っているのでしょうか
(setq debian-x86-64 "")
(setq ubuntu-x86-64 "")
(setq g++ver (shell-command-to-string "g++ -v"))
(defun case-test (value)
(case value
(debian-x86-64 "1")
(ubuntu-x84-64 "2")
(g++ver "3")
(t "4")))
(message (case-test debian-x86-64))
(message (case-test (shell-command-to-string "g++ -v")))
(message (case-test "sklfj")) <>
名無しさん@お腹いっぱい。<>sage<>2013/09/27(金) 15:16:02.54 <> caseを使ってるとこが <>
名無しさん@お腹いっぱい。<>sage<>2013/09/27(金) 17:40:50.49 <> ミニバッファまわりのキーバインドってなんでああも治外法権状態なん?
「お前のglobal-mapなんぞ知るかボケェ!」な奴多すぎだろ <>
名無しさん@お腹いっぱい。<>sage<>2013/09/27(金) 18:45:05.19 <> >>504
高校二年女子です。
まずは、case-test関数をedebug-defunして、ご自分のされていることを確認されたほうがよろしいかと思います。
それと、'g++ -v'そのままではなく、regexで引っ掛ける等しないと、このままではどうしようもないかと。 <>
名無しさん@お腹いっぱい。<>sage<>2013/09/27(金) 19:33:07.95 <> g++ -vよりg++ --versionの方が一行目にバージョンが来るからいじりやすいと思う <>
名無しさん@お腹いっぱい。<>sage<>2013/09/27(金) 19:52:23.40 <> >>507
501のエセ薩摩人です。
499氏がコードを貼り付けなかったら
おいどんと付き合ってください。 <>
名無しさん@お腹いっぱい。<>sage<>2013/09/27(金) 23:01:26.08 <> >>504
>>505が言っているようにcondを使えばよろし
そういう形で分岐したいならこうかな
(defmacro cond-case (value &rest body)
(lexical-let* ((cand (gensym))
(result (gensym)))
`(loop for (cand result) in (quote ,body)
do (when (and (symbolp cand)
(or (equal (symbol-value cand) ,value)
(equal (symbol-value cand) t)))
(return result)))))
(defun case-test2 (value)
(cond-case value
(debian-x86-64 "1")
(ubuntu-x86-64 "2")
(g++ver "3")
(t "4")))
(message (case-test2 debian-x86-64))
(message (case-test2 (shell-command-to-string "g++ -v")))
(message (case-test2 "sklfj")) <>
名無しさん@お腹いっぱい。<>sage<>2013/09/28(土) 07:24:23.71 <> >>509
47歳男子です。
ありがとうございます。今後ともどうぞよろしくお願い致します。 <>
名無しさん@お腹いっぱい。<>sage<>2013/09/28(土) 11:46:59.29 <> >>510
マクロのパワーを見せつけられました。
中2女子の私がこのような達人級のコードを書けるようになるには、何をすればよろしいのでしょうか?
まず服を脱ぐのは無しの方向で、お願いします。 <>
名無しさん@お腹いっぱい。<>sage<>2013/09/28(土) 12:18:52.46 <> まずスク水を着ます <>
名無しさん@お腹いっぱい。<>sage<>2013/09/28(土) 12:27:59.85 <> 服は着たままスク水着るのか <>
504<><>2013/09/28(土) 13:39:46.00 <> ありがとうございます
emacs lisp勉強します <>
名無しさん@お腹いっぱい。<>sage<>2013/09/28(土) 15:22:38.81 <> 512に emacs
のヘルプのここを見ろというレスは付かないのかな? <>
名無しさん@お腹いっぱい。<>sage<>2013/09/28(土) 15:38:34.81 <> >>512
Emacs というより、まずはこんなのかな。
http://www.aoky.net/articles/paul_graham/int.htm <>
名無しさん@お腹いっぱい。<>sage<>2013/09/28(土) 16:30:54.44 <> >>512
エセ薩摩人です。
>まず服を脱ぐのは無しの方向で、お願いします。
では、お口でお願いし ... (/ω\)イヤン
ところで本題だが EmacsLisp に限ったことではないが
プログラミングの上達のコツは
a.自分が欲しい機能をリファレンスを読みながらでも作成してみる
b.他人が書いたコードを読む(初めは少々短めがお勧め)
あたりかな。
>>516
http://www.emacswiki.org/emacs/EmacsLisp%E3%83%AA%E3%83%95%E3%82%A1%E3%83%AC%E3%83%B3%E3%82%B9 <>
名無しさん@お腹いっぱい。<>sage<>2013/09/28(土) 19:28:33.77 <> Webカメラがクラックされると簡易的な地獄が顕現しそうなスレだ <>
499<>sage<>2013/09/29(日) 01:20:21.88 <> (defun util-encode-region-utf8 ()
(interactive)
(save-excursion
(let ((beg (region-beginning))
(end (region-end)))
(end-of-line)
(insert "\nstatic const char data[] = {\n\t")
(mapc #'(lambda (x) (insert (format "0x%02x, " x)))
(encode-coding-region beg end 'utf-8 t))
(insert "0x00\n};")))) <>
名無しさん@お腹いっぱい。<>sage<>2013/09/29(日) 03:13:57.14 <> >>520
わーいありがとう!
姉も喜んでます <>
エセ薩摩人<>sage<>2013/09/29(日) 06:57:21.56 <> >>520
わーいありがとう!
おいどんのチン●も喜んでます <>
名無しさん@お腹いっぱい。<>sage<>2013/09/29(日) 09:34:03.32 <> エセ薩摩人さん、ついにコテハン化w <>
名無しさん@お腹いっぱい。<>sage<>2013/09/29(日) 09:57:01.09 <> >>522
簡潔に書き直せば、こんな感じになりそうだね。
(defun util-encode-region-utf8 (b e)
(interactive "r")
(save-excursion
(let ((s (concat (buffer-substring b e) "\0")))
(end-of-line)
(insert
"\nstatic const char data[] = {\n\t"
(mapconcat #'(lambda (x) (format "0x%02x" x))
(encode-coding-string s 'utf-8)
", ")
"\n};")))) <>
524<>sage<>2013/09/29(日) 10:05:19.46 <> >>522 でなくて >>520 だったよw
>>520->>522 で笑って、手元が狂ってしまったよw <>
名無しさん@お腹いっぱい。<>sage<>2013/09/29(日) 10:43:12.76 <> >>520
おおきに <>
510<>sage<>2013/09/29(日) 15:01:35.14 <> >>504
>>510はおかしいところがいくつかあったので修正するよ ついでにもうちょっと汎用的にしてみた
(require 'cl)
;; http://www.gigamonkeys.com/book/macros-defining-your-own.html
(defmacro with-gensyms (names &rest body)
`(let ,(loop for n in names collect `(,n (gensym)))
,@body))
(defmacro cond-case (value &rest body)
(with-gensyms (cand result x)
`(loop for (cand result) in (quote ,body)
when (symbolp cand) for x = (symbol-value cand)
else for x = cand
when (member x `(,value t))
return result)))
(defun case-test2 (value)
(cond-case value
(123 "aaa")
("hoge" "bbb")
(debian-x86-64 "1")
(ubuntu-x86-64 "2")
(g++ver "3")
(t "4")))
(message (case-test2 123))
(message (case-test2 "hoge"))
(message (case-test2 debian-x86-64))
(message (case-test2 (shell-command-to-string "g++ -v")))
(message (case-test2 "sklfj"))
>>512 defmacroはon lispが、loopマクロはland of lispがわかりやすいよ emacs lispレファレンスだけだど慣れるまで時間がかかるかも <>
名無しさん@お腹いっぱい。<>sage<>2013/09/29(日) 18:32:16.02 <> loop の中身がLISPに見えない件w <>
名無しさん@お腹いっぱい。<><>2013/09/30(月) 02:22:05.16 <> >>528
Boost Spirit も似ている気がする。
言語仕様を上手く使って別言語の世界を作り出している。
Loop言語はマスターするとElispが非常に短くかけるし、
マクロなんでバイトコンパイルすれば速度処理もない。 <>
名無しさん@お腹いっぱい。<>sage<>2013/09/30(月) 07:14:53.59 <> Spiritはコンパイルするのがイヤになる <>
名無しさん@お腹いっぱい。<>sage<>2013/09/30(月) 08:05:41.61 <> >>529
>Loop言語は
!!!
loop はDSLだと思えばよかったのですね。その発想はなかったです。 <>
名無しさん@お腹いっぱい。<><>2013/09/30(月) 12:48:36.98 <> loop 好きだけどアンチも多いらしい <>
名無しさん@お腹いっぱい。<>sage<>2013/09/30(月) 15:11:53.81 <> デバッグが必要になった場合の手間考えると、展開結果が複雑になるようなマ
クロは使わない方が得策だと思う。 <>
名無しさん@お腹いっぱい。<>sage<>2013/09/30(月) 15:30:40.24 <> そのマクロが正しく動くことが保証されてたら大丈夫じゃない? <>
名無しさん@お腹いっぱい。<><>2013/09/30(月) 16:21:25.84 <> Emacs でマクロ否定って Emacs を否定してるようなもんじゃん。
Editor MACroS なめんなよ。 <>
名無しさん@お腹いっぱい。<>sage<>2013/09/30(月) 17:01:41.30 <> elispのloopマクロで面白いものがあれば知りたい <>
名無しさん@お腹いっぱい。<>sage<>2013/09/30(月) 17:06:46.61 <> >>535
マクロ違い <>
名無しさん@お腹いっぱい。<>sage<>2013/10/01(火) 08:43:04.22 <> これの6章にediting macrosについて書いてある
http://haleakala-avenue.style.coocan.jp/lealea/ <>
名無しさん@お腹いっぱい。<>sage<>2013/10/01(火) 08:47:34.26 <> >>536
Common lispのloopマクロをelispで動くようにしたものなんだよね
Land of Lisp 10章のLoopマクロ周期表がおすすめ <>
名無しさん@お腹いっぱい。<>sage<>2013/10/01(火) 09:52:35.10 <> ANSI Common Lisp によるとだな
規格でも loop は定義しきれてないってさ
実際 sbcl で動く loop が clisp でコケたりする <>
名無しさん@お腹いっぱい。<>sage<>2013/10/01(火) 14:32:07.83 <> http://orgmode.org/worg/exporters/ox-overview.html
ここにあるox-texinfoを使って.org->.texiに、
さらにtexi2htmlで.texi->.htmlに変換したら
元の.orgで#+authorで設定していたその設定が失われてしまうようで
This document was generated by *PC-name\user-name* on October 1, 2013 using texi2html 1.82
となってしまいます
.org->.htmlであれば問題なくauthor情報が引き継がれているのですが、どうすれば引き継げるのでしょうか
orgファイルはこう書いています
#+TITLE: Org-mode test
#+AUTHOR: test-name
* hello
- world <>
名無しさん@お腹いっぱい。<>sage<>2013/10/01(火) 17:04:44.91 <> >>541
> This document was generated by *PC-name\user-name* on October 1, 2013 using texi2html 1.82
それで正しいのだと思うが <>
名無しさん@お腹いっぱい。<>sage<>2013/10/01(火) 17:32:22.04 <> >>538
こんなのがあったとは。
RMS信者の私はただいま絶賛感動中です。 <>
名無しさん@お腹いっぱい。<>sage<>2013/10/01(火) 22:48:31.45 <> >>504
なんだかすごいことになっているような気もするが
君がやりたいことへの最短距離は cond を使うことだと思うぞ <>
名無しさん@お腹いっぱい。<>sage<>2013/10/02(水) 00:38:41.21 <> サルでも完全理解loopマクロ講座を誰か書いてくれ <>
名無しさん@お腹いっぱい。<>sage<>2013/10/02(水) 07:08:14.10 <> case に関連して、
ttp://wisdom.sakura.ne.jp/programming/lisp/clisp11.html
ここの最後、
「記号を直接指定すると、記号が評価されてしまうということに注意しなけれ
ばなりません。そのため、リストに記号を指定するか、quote や ' によって明
示的に記号型の値そのものを与えなければならないのです。」
って本当ですか?誰か common lisp に詳しい人教えて。 <>
名無しさん@お腹いっぱい。<>sage<>2013/10/02(水) 08:22:39.45 <> 記号tやnilは直接指定すると
tはotherwiseにnilは空リストに解釈されてしまうから、
tやnilと直接比較したい場合には
クォートするかリストにいれる必要があるよって意味じゃないの?
tやnilじゃなければシンボルは評価されないと思うけどね <>
名無しさん@お腹いっぱい。<>sage<>2013/10/02(水) 09:28:13.09 <> >>545
Common Lisp loop でぐぐればいろいろある <>
名無しさん@お腹いっぱい。<>sage<>2013/10/02(水) 12:47:25.54 <> まったく、いつになったらEmacsは縦書に対応してくれるのか!
Emacs18 の頃から待ってるのに。ぷんぷん! <>
名無しさん@お腹いっぱい。<>sage<>2013/10/02(水) 13:14:23.42 <> 縦書きelispってあったような。 <>
名無しさん@お腹いっぱい。<>sage<>2013/10/02(水) 13:19:49.61 <> >>549
必要なら自分で作るんだ。
Mule拡張もそうだった。 <>
名無しさん@お腹いっぱい。<>sage<>2013/10/02(水) 13:22:44.27 <> 縦書って書いたり閲覧したりするときだけ縦で
テキストデータ自体は他と変わらないみたいな感じがいいのかね <>
名無しさん@お腹いっぱい。<>sage<>2013/10/02(水) 15:43:25.51 <> 縦表示ってことだろうね。 <>
名無しさん@お腹いっぱい。<>sage<>2013/10/02(水) 21:04:50.16 <> >>542
そうですか スレ汚し失礼しました <>
名無しさん@お腹いっぱい。<>sage<>2013/10/02(水) 21:22:21.87 <> save時の処理が重くなっているようなのですが、
関連するhookを確認するにはどこを見ればよいのでしょう? <>
名無しさん@お腹いっぱい。<>sage<>2013/10/02(水) 21:30:44.58 <> caseはちょっとわかりにくいよね
わからないうちはちょっと冗長だけどつねにcondを使っておけばいい
elispじゃcondがネィティブでcaseはcommon lisp互換マクロだし <>
名無しさん@お腹いっぱい。<>sage<>2013/10/02(水) 21:43:06.70 <> >>555
参考になるかわからんけどこのへんかね?
http://www.gnu.org/software/emacs/manual/html_node/elisp/Saving-Buffers.html <>
名無しさん@お腹いっぱい。<><>2013/10/02(水) 22:01:11.53 <> リアルな話になってしまうが正直コモリプは糞だと思っている。 <>
名無しさん@お腹いっぱい。<>sage<>2013/10/02(水) 23:01:05.52 <> ローカル関数すら無いどっかの超絶糞言語に比べればはるかにマシ <>
名無しさん@お腹いっぱい。<>sage<>2013/10/02(水) 23:23:58.73 <> >>559
チューリングマシンの悪口はやめて下さい。 <>
名無しさん@お腹いっぱい。<>sage<>2013/10/03(木) 06:13:05.57 <> >コモリプ
ないわ
ないないない <>
名無しさん@お腹いっぱい。<><>2013/10/03(木) 08:18:31.51 <> (load-theme 'wombat t)
と設定しているのですが,lookupの中だけテーマを変えるには
どうしたらよいでしょうか。
外字が黒文字なので見難くなってしまいます <>
名無しさん@お腹いっぱい。<>sage<>2013/10/03(木) 08:21:08.56 <> lookupって? <>
名無しさん@お腹いっぱい。<>sage<>2013/10/03(木) 09:06:40.73 <> load-theme使ってないからよくわからんが、enable-themeとかで切り替えはできるみたいだけど、
バッファ毎に変更なんてできるのかね?
theme切り替えるんじゃなくて、
lookupの外字のfaceをthemeに合わせてカスタマイズとかじゃダメなん? <>
名無しさん@お腹いっぱい。<>sage<>2013/10/03(木) 10:05:26.66 <> 背景色をバッファ毎に変えるスマートなしくみは現状ないから無理だと思うよ。
フレーム単位なら素直にできるけど。
hiwin ってパッケージあるけどあれはオーバーレイ使って無理やり変更してる。 <>
名無しさん@お腹いっぱい。<>sage<>2013/10/03(木) 11:08:31.34 <> こもりぷてcommonlispのことか
しばらく考えてしまったぞ <>
名無しさん@お腹いっぱい。<>sage<>2013/10/03(木) 14:54:55.50 <> org-mode のラジオターゲットってあまり使われてないんだな
リンクに飛ばないという致命的なバグにも関わらず
検索しても、日本語界隈だと全然ヒットしない
ttp://lists.gnu.org/archive/html/emacs-orgmode/2013-10/msg00105.html
要は、org.el の該当箇所に、「link」つー変数を and の直後に付け加えると直る <>
名無しさん@お腹いっぱい。<><>2013/10/03(木) 15:06:25.14 <> org-modeは肥大化しすぎて、もはやEmacsでやることに無理がある気がする。
このさいOmacsとして独立してほしい。 <>
名無しさん@お腹いっぱい。<>sage<>2013/10/03(木) 15:30:50.00 <> >>568
それいいかも
俺が emacs 使い始めた動機も org-mode だったわけで
実際今は org 除くと emacs あんまり使ってない
かつてはカスタマイズに凝った時期もあったが
やってるうちに手段と目的が逆転して、気づくととんでもなく
時間が経過してたり、ってのがバカバカしくなった <>
名無しさん@お腹いっぱい。<>sage<>2013/10/03(木) 18:10:51.81 <> Emacs24.2〜3辺りの comment-indent ってバグってない?
comment-colum を設定しても、コメント位置がずれるンゴ
リポジトリの先端でも直ってないっぽいし。
手前味噌で直したからいいけど。 <>
名無しさん@お腹いっぱい。<>sage<>2013/10/03(木) 18:11:39.65 <> × comment-colum
○ comment-column <>
名無しさん@お腹いっぱい。<>sage<>2013/10/03(木) 18:20:28.78 <> M-x compile を呼ぶとき常に C-u をつけて呼びたいんだけど
いい方法ないかな <>
名無しさん@お腹いっぱい。<>sage<>2013/10/03(木) 18:23:20.29 <> (compile 4) <>
名無しさん@お腹いっぱい。<>sage<>2013/10/03(木) 18:46:42.96 <> >>573 ありがとう
でも普通 M-x compile するとミニバッファに compile-command がでてリターンすると実行という流れなんだけど
(compile compile-command 4)
をキーバインドしてしまうと compile-command を
ミニバッファで編集するチャンスがなく実行されてしまうのでどうかなと思ってるんだけども <>
名無しさん@お腹いっぱい。<>sage<>2013/10/03(木) 19:32:43.53 <> これかな http://stackoverflow.com/a/6156444
コメントも参照 <>
名無しさん@お腹いっぱい。<>sage<>2013/10/03(木) 22:33:03.85 <> >>575 ありがとう!
(defun compile-with-prefix ()
(interactive)
(let ((current-prefix-arg '(4)))
(call-interactively 'compile)))
とりあえずこれをキーバインドすることにしました。 <>
名無しさん@お腹いっぱい。<>sage<>2013/10/03(木) 23:46:07.11 <> 独り相撲になってしまったけど
(global-set-key (kbd "s-x") '(lambda () (interactive) (execute-extended-command '(4))))
これでもいいかも C-u M-x を汎用的に使えるし <>
名無しさん@お腹いっぱい。<><>2013/10/04(金) 08:51:53.07 <> >>536
4重ループで幅優先探索で迷路を解く例。
http://d.hatena.ne.jp/m2ym/20100115/1263550258
Loopなしで同じことをしようとするとどれくらい
面倒なことになるか… <>
536<>sage<>2013/10/04(金) 12:09:11.61 <> >>578
これはすごいですね
勉強してみます <>
名無しさん@お腹いっぱい。<>sage<>2013/10/04(金) 20:32:38.06 <> とりあえずEmacs界にはEmacs Lispをelispと呼ぶのはやめてほしい。
これはEmacs Lisp以外を「よくないLisp」と言ってるも同然で失礼。
だから生粋のLisperに嫌われるんだ。 <>
名無しさん@お腹いっぱい。<>sage<>2013/10/04(金) 20:48:30.22 <> 滑ってますよ <>
名無しさん@お腹いっぱい。<>sage<>2013/10/04(金) 20:49:03.84 <> どうやって読み取れば
elisp
を「良くないLisp」と読み取れるんだ? <>
名無しさん@お腹いっぱい。<>sage<>2013/10/04(金) 20:51:03.71 <> その昔「(E)」で「カッコイー」と読ませるテレビがあった。 <>
名無しさん@お腹いっぱい。<>sage<>2013/10/04(金) 20:51:40.19 <> >>582
elisp → いーLisp
それ以外の lisp → いーLisp じゃない → よくない Lisp
ってことかと・・・ <>
名無しさん@お腹いっぱい。<>sage<>2013/10/04(金) 21:23:34.94 <> すべったネタに解説で追い討ちしてやるなよ。 <>
名無しさん@お腹いっぱい。<>sage<>2013/10/04(金) 21:35:47.66 <> これがほんとの滑り止めか。 <>
名無しさん@お腹いっぱい。<>sage<>2013/10/04(金) 21:52:21.23 <> >>584
なるほど
elispの皆さんって面白くてステキ <>
名無しさん@お腹いっぱい。<>sage<>2013/10/04(金) 21:53:02.75 <> 面白くはないな。 <>
名無しさん@お腹いっぱい。<>sage<>2013/10/04(金) 21:59:04.81 <> ステキでもないな <>
名無しさん@お腹いっぱい。<>sage<>2013/10/04(金) 22:30:21.79 <> emacsでのゲームイイ!
昔、vzにあったsameshotというのがおもしろかったのを思い出した。 <>
名無しさん@お腹いっぱい。<>sage<>2013/10/04(金) 23:42:36.99 <> >>590
M-x gomoku <>
名無しさん@お腹いっぱい。<>sage<>2013/10/05(土) 06:57:30.92 <> 誰かtrek移植して <>
名無しさん@お腹いっぱい。<>sage<>2013/10/05(土) 10:09:44.56 <> >>590
M-x pong <>
名無しさん@お腹いっぱい。<>sage<>2013/10/05(土) 10:10:24.03 <> >>590
M-x tetris <>
名無しさん@お腹いっぱい。<>sage<>2013/10/05(土) 14:55:30.19 <> >>590
M-x hanoi
ってか、さめショット懐かしい <>
名無しさん@お腹いっぱい。<>sage<>2013/10/05(土) 15:16:18.19 <> sameshotググっても見つからないんだけど
どういうゲームなのそれは <>
名無しさん@お腹いっぱい。<>sage<>2013/10/05(土) 15:25:18.76 <> samegame じゃないかな <>
名無しさん@お腹いっぱい。<>sage<>2013/10/05(土) 22:48:41.76 <> sameshot.defってぐぐっても確かに出てこないな。niftyのライブラリにあるはずだけど。 <>
名無しさん@お腹いっぱい。<><>2013/10/06(日) 16:49:15.16 <> M-x bubbles って samegame なの? <>
名無しさん@お腹いっぱい。<>sage<>2013/10/07(月) 01:10:22.94 <> 実家においてあるPCにvzをインストールしてあるので、その中から見つけてdef
アップするよ。ちょっと待ってください。 <>
名無しさん@お腹いっぱい。<>sage<>2013/10/07(月) 01:44:56.06 <> vz 懐かしい
mifes、emacs と共に俺の人生を時間的に食い荒らした悪魔だ
そういや red++ さんはもう亡くなったのかな <>
名無しさん@お腹いっぱい。<>sage<>2013/10/07(月) 18:45:54.88 <> macのdashみたいなドキュメントのダウンロードと検索ができるelispってない?emacsのbufferでdashの内容を読めるelispでもいいけど。
http://kapeli.com/dash <>
名無しさん@お腹いっぱい。<>sage<>2013/10/07(月) 18:51:57.29 <> >>600
いつまで待てばいいの <>
名無しさん@お腹いっぱい。<>sage<>2013/10/07(月) 19:06:51.89 <> >>602
emacs dash で検索するといくつかひっかかったよ
Mac つかったことないから内容は精査してない <>
名無しさん@お腹いっぱい。<>sage<>2013/10/07(月) 22:13:45.83 <> >>602
こんなのがあったとは。
買ってしまうかも… <>
名無しさん@お腹いっぱい。<>sage<>2013/10/07(月) 22:25:04.80 <> カーソル位置のワードを引数にDash.appを呼び出すのはすでにあるが、
602が言っているのは直接Dashのドキュメント群ををEmacsのバッファで読むというやつかね?
w3mとsqliteを組み合わせて実現するのかな? <>
名無しさん@お腹いっぱい。<>sage<>2013/10/07(月) 22:50:47.99 <> >>606
>602が言っているのは直接Dashのドキュメント群ををEmacsのバッファで読むというやつかね?
macのフルスクリーンモードでemacsを使ってるから、dashのウィンドウにフォーカスが移るとめんどくさい。それが解消されればdashを買ってもいいんだけど <>
名無しさん@お腹いっぱい。<><>2013/10/09(水) 16:18:13.71 <> -nw つけてターミナル上でEmacsを起動するとMetaキーが変わるから
設定したいのですが、どう設定すればいいでしょうか <>
名無しさん@お腹いっぱい。<>sage<>2013/10/09(水) 19:36:31.89 <> OS(Window System)と何のターミナルか書けよ <>
名無しさん@お腹いっぱい。<>sage<>2013/10/09(水) 20:14:34.53 <> >>609
シグマ製OSと東京駅 <>
名無しさん@お腹いっぱい。<>sage<>2013/10/09(水) 20:15:19.47 <> つまんね。 <>
名無しさん@お腹いっぱい。<>sage<>2013/10/09(水) 21:40:41.85 <> ターミナルだとOSがキーを食べちゃうから
OS側で無効にするんだろ <>
名無しさん@お腹いっぱい。<>sage<>2013/10/10(木) 11:07:10.32 <> >>608
テメーの端末のマニュアル読め
はい次ッ!!! <>
名無しさん@お腹いっぱい。<>sage<>2013/10/10(木) 20:17:14.62 <> >>608
とりあえずこれを読んでみればいいと思うよ
http://www.emacswiki.org/emacs/MetaKeyProblems <>
名無しさん@お腹いっぱい。<>sage<>2013/10/16(水) 17:03:01.57 <> 検索時の”I-search:”の文字色が暗すぎてよく見えないのですが、.emacsでどの設定色を変更すればいいのでしょうか? <>
名無しさん@お腹いっぱい。<>sage<>2013/10/16(水) 18:37:41.54 <> ちょうど良いからemacsの配色変更、一番良いやり方教えてくれ。
vimの方だとこういうエミュレーターを見つけた。
http://bytefluent.com/vivify/ <>
名無しさん@お腹いっぱい。<>sage<>2013/10/16(水) 22:38:21.07 <> M-x list-faces-display で探す
そしてそのままCustomize Face使って変更してしまう <>
名無しさん@お腹いっぱい。<>sage<>2013/10/17(木) 05:15:53.74 <> ひでえ便乗見たわ <>
名無しさん@お腹いっぱい。<>sage<>2013/10/17(木) 09:15:32.05 <> ありがとう <>
名無しさん@お腹いっぱい。<>sage<>2013/10/17(木) 09:23:58.97 <> リバースビデオ的なことしようとするから苦労するんじゃないの?
普通に白っぽい地(俺はantiquewhite)に黒でいいと思うんだが。 <>
名無しさん@お腹いっぱい。<>sage<>2013/10/17(木) 11:33:07.80 <> list-faces-displayいじり始めると一日が終わるわ <>
名無しさん@お腹いっぱい。<>sage<>2013/10/17(木) 17:23:45.36 <> 標準の白地に黒文字でやってても
ansi-color の色つき文字は黒地に白文字を想定してるとしか思えない色合いだから
調整必須だよな・・・ <>
名無しさん@お腹いっぱい。<>sage<>2013/10/17(木) 18:18:03.63 <> 複数のディレクトリに入っている複数のファイルを特定のフレーズで検索し
ヒットした場所を違うフレーズに置き換えるいい方法はありますか?
今はanything-grep-findでファイルを横断的に検索して
ヒットした箇所を開きreplace-stringで置き換えています <>
名無しさん@お腹いっぱい。<>sage<>2013/10/17(木) 18:56:21.36 <> moccur-editかな?
http://d.hatena.ne.jp/higepon/20061226/1167098839 <>
名無しさん@お腹いっぱい。<>sage<>2013/10/17(木) 20:27:28.75 <> sed -i -e 's/from string/to string/g' files.... <>
名無しさん@お腹いっぱい。<>sage<>2013/10/17(木) 21:28:57.26 <> >>622
みんな黒地に緑文字だと思ってた。白地とか目疲れると思うけど、視力低い人は見やすいのかな。 <>
名無しさん@お腹いっぱい。<>sage<>2013/10/17(木) 21:33:03.73 <> 普通のアプリとかWebサイトとか圧倒的に白地に黒文字が多いから、
プログラム関係だけ黒地に白系文字にするとウィンドウ切り替えたときに
目の対応が追いつかない <>
名無しさん@お腹いっぱい。<>sage<>2013/10/17(木) 22:31:45.18 <> >>623
find-grep-dired -> t -> Q かな
find-grep-dired 自体が buggy ぽいけど <>
名無しさん@お腹いっぱい。<>sage<>2013/10/17(木) 23:15:20.57 <> >>626
> みんな黒地に緑文字
ただのじじいの懐古趣味かよ
黒字にアンバーなら許す <>
名無しさん@お腹いっぱい。<>sage<>2013/10/17(木) 23:19:40.23 <> 普通はデフォルトの白地
黒地は括弧付けたいだけ <>
名無しさん@お腹いっぱい。<>sage<>2013/10/17(木) 23:24:00.71 <> アズキ色に白色だろJK <>
名無しさん@お腹いっぱい。<>sage<>2013/10/18(金) 00:37:07.61 <> 黒/緑は別に目にいいわけでもないってのを何かで読んだ記憶があるんだよなぁ
コントラストを急激に変えない方がいいからディスプレイの後ろにも間接照明を置けとかは聞いた <>
名無しさん@お腹いっぱい。<>sage<>2013/10/18(金) 02:34:35.95 <> >>632
じゃあ周りも暗くしてる俺は黒地だな。 <>
名無しさん@お腹いっぱい。<><>2013/10/18(金) 03:25:08.22 <> 背景は白派だけど目がチカチカするので
ごく薄いグレーにしてる <>
名無しさん@お腹いっぱい。<>sage<>2013/10/18(金) 06:41:00.66 <> 白地に白文字にして高度なセキュリティ環境を実現してるわ <>
名無しさん@お腹いっぱい。<>sage<>2013/10/18(金) 08:08:01.30 <> 何その一色碁 <>
名無しさん@お腹いっぱい。<>sage<>2013/10/18(金) 09:11:06.32 <> フォントをちっちゃくしてるから、黒地に白文字だと潰れて識別できない。
で、ベージュというか薄オレンジっぽい背景色に変えた。 <>
623<>sage<>2013/10/18(金) 12:54:03.19 <> >>624 >>628
ありがとうございました
両方試してみました。find-grep-diredの方がなぜかうまく動かなかったのでmoccur-editを導入してみました
ばっちりです <>
名無しさん@お腹いっぱい。<>sage<>2013/10/18(金) 15:13:10.55 <> >>633
じっさい暗い部屋で白地に黒を長時間とかやってると
ガンガン視力下がりそうではある <>
名無しさん@お腹いっぱい。<>sage<>2013/10/18(金) 15:14:36.84 <> 黒背景派だったけど大抵のツールが白系の背景色で
頑張ってカスタマイズして回るのもだるくなってきたのでそのまま派に・・・ <>
名無しさん@お腹いっぱい。<>sage<>2013/10/18(金) 15:57:02.22 <> 目に優しいと聞いたので、一時期黒板カラー (つまり背景は濃い緑) だった。 <>
名無しさん@お腹いっぱい。<>sage<>2013/10/18(金) 16:00:48.73 <> robin hoodというカラーテーマをベースに少し変更している <>
名無しさん@お腹いっぱい。<>sage<>2013/10/18(金) 21:58:07.25 <> 自動調光が有効になってて明るいと、数時間くらいの作業でも頭が痛くなってくんだよね。無効にしてさらに黒地だと12時間は平気。 <>
名無しさん@お腹いっぱい。<>sage<>2013/10/18(金) 22:02:36.94 <> 紙媒体に目を移すことも多いから輝度低めの白背景にしてるわ
でも端末エミュレータは昔から黒背景から変えてないなあ <>
名無しさん@お腹いっぱい。<>sage<>2013/10/18(金) 22:03:35.12 <> 部屋が暗いとか調光がどうとかそっちを見直せ
別に白地でも24時間平気だ <>
名無しさん@お腹いっぱい。<>sage<>2013/10/18(金) 22:06:50.77 <> 部屋暗くしてたら黒背景だろうが白背景だろうが確実に視力落ちそうだな <>
名無しさん@お腹いっぱい。<>sage<>2013/10/18(金) 22:08:47.70 <> この手の話題ってよく出てくるけど
決定打になるような学説みたいなのって出てないもんなのかね <>
名無しさん@お腹いっぱい。<>sage<>2013/10/19(土) 00:50:26.49 <> サボるときはコントラスト低めの配色だなあ。 <>
名無しさん@お腹いっぱい。<>sage<>2013/10/19(土) 01:19:45.00 <> Qtみたいな特殊なAPIをclangで補完したりシンタックスチェックしたりできないかね <>
名無しさん@お腹いっぱい。<>sage<>2013/10/19(土) 08:43:02.27 <> shell-modeが動いているshellバッファで、コマンド入力待ちかコマンド動作中か
をelisp側から判定したいんだけど、なんかいい方法ないかな? <>
名無しさん@お腹いっぱい。<>sage<>2013/10/19(土) 12:39:05.86 <> >>646
昔からそうだが、眼鏡かけてないぞ。
逆に鍛えられてるかも。 <>
名無しさん@お腹いっぱい。<>sage<>2013/10/19(土) 15:03:59.85 <> get-buffer-process, process-idでPIDとって、それを親に持つプロセスを/procから探す <>
名無しさん@お腹いっぱい。<>sage<>2013/10/19(土) 19:52:07.41 <> >>652
バックグラウンドでプロセスが走っていてもshellが入力待ちであればOKと
したいんだけど、/procから判定できる? <>
名無しさん@お腹いっぱい。<>sage<>2013/10/19(土) 21:03:13.77 <> >>650
自分でこんなの考えてみました。こんなんでいいんだろうか..。とりあえず動きました。
(defun shell-input-waiting-p (buffer-name)
(interactive)
(with-current-buffer buffer-name
(save-excursion
(comint-goto-process-mark)
(not (bolp))))) <>
名無しさん@お腹いっぱい。<>sage<>2013/10/19(土) 21:19:28.45 <> bgプロセスが何を吐くのかも明示されていないのに、何でいいのか悪いのかなんて言えようか(いや言えん)
つか、悩むくらいなんだからbgプロセスもstdout, stderrに何らかの出力をしてしまって見分けがつかん
てな状況を想像してしまうのは俺だけか <>
名無しさん@お腹いっぱい。<>sage<>2013/10/19(土) 21:41:45.66 <> >>655
まさに。654はバックグラウンドプロセスが何か出力するとだめでした..。 <>
名無しさん@お腹いっぱい。<>sage<>2013/10/19(土) 23:10:28.25 <> >>654
少しまともになったか。
(defun shell-input-waiting-p (buffer-name)
(with-current-buffer buffer-name
(save-excursion
(comint-goto-process-mark)
(let ((process-mark-point (point)))
(forward-line 0)
(comint-skip-prompt)
(eq (point) process-mark-point))))) <>
名無しさん@お腹いっぱい。<>sage<>2013/10/19(土) 23:16:15.89 <> >>657
(comint-goto-process-mark) が行の先頭にあればだめでした。
でも、その判定を追加すればなんとか使えそう。 <>
名無しさん@お腹いっぱい。<>sage<>2013/10/19(土) 23:26:31.45 <> >>653
wchan(wait channel)で判別できると思う <>
名無しさん@お腹いっぱい。<>sage<>2013/10/19(土) 23:36:34.70 <> 別の解っていうのも十分あり得るんで、もそっと具体的に何をしたいのかを書いてみるのが吉かと <>
名無しさん@お腹いっぱい。<>sage<>2013/10/20(日) 00:15:32.53 <> >>660
NTEmacsのスレで紹介したりしてたんだけど、ちょっと前にtrampにも対応する
shell-popもどきを作った。 www49.atwiki.jp/ntemacs/pages/34.html
結構便利に使っているんだけど、shellバッファで時間の掛かる処理を動かして
いるときには shellバッファをポップアップしないようにしたい。
それで質問したのでした。今のところ、以下をfletに追加すればいけそうかなぁと。
(shell-input-waiting-p (buffer-name)
(with-current-buffer buffer-name
(save-excursion
(comint-goto-process-mark)
(let ((process-mark-point (point)))
(forward-line 0)
(and (comint-skip-prompt)
(eq (point) process-mark-point))))))) <>
名無しさん@お腹いっぱい。<>sage<>2013/10/20(日) 00:41:45.47 <> >>659
cygwinのpsでは見れない情報みたい。メインはNTEmacs+cygwinなのです。 <>
名無しさん@お腹いっぱい。<>sage<>2013/10/20(日) 12:29:09.42 <> >>662
OS依存な方法にならざるを得ないのだから、NTEmacsスレで聞くべき。 <>
名無しさん@お腹いっぱい。<>sage<>2013/10/20(日) 18:25:21.29 <> Emacs の shell-mode 内で完結する方法があったらい知りたいなーってレベルだったんだろ
まあそれは難しいってことなんだけど <>
名無しさん@お腹いっぱい。<>sage<>2013/10/20(日) 20:18:56.41 <> list-system-processes や process-attributes を利用できるかもしれないね。
(info "(elisp) System Processes")
で調べてみたらいいかもね。 <>
名無しさん@お腹いっぱい。<>sage<>2013/10/20(日) 21:21:40.73 <> >>665
すごいな、ちゃんとNTEmacsでもps並に情報でてきたわ <>
名無しさん@お腹いっぱい。<>sage<>2013/10/21(月) 07:15:56.97 <> >>665
情報ありがとう。process-attributesというのもあるんですね。
今回はNTEmacs+Cygwin"でも"動くものにしたいんだけど、そうすると
psの情報を使うのは難しそうな気がしてきました。NTEmacsから起動
するbashはfakecygptyを経由していたりもして。
とりあえず完璧な判定にはならないけどcomintのコマンドでなんとか
することにしたいと思います。意見くれた方ありがとうございました。 <>
名無しさん@お腹いっぱい。<>sage<>2013/10/24(木) 22:25:43.51 <> ibus.elじゃなくてFcitx.el作っておくれませ
irieさま <>
名無しさん@お腹いっぱい。<><>2013/10/24(木) 23:01:47.11 <> フォントの設定の仕方がいろいろありすぎてどれを使っていいかわからない <>
名無しさん@お腹いっぱい。<>sage<>2013/10/24(木) 23:09:05.05 <> やってみてちゃんとフォントが変わったなら別にその方法でかまわんと思う <>
名無しさん@お腹いっぱい。<>sage<>2013/10/24(木) 23:34:05.33 <> でもobsoleteとかdeprecatedとかになっちゃて、次の版からなくなったりする <>
名無しさん@お腹いっぱい。<>sage<>2013/10/24(木) 23:39:28.80 <> 最新だと
(set-frame-font "Ricty-12.5")
って感じ?
文字セットごとに設定する方法は知らない。 <>
名無しさん@お腹いっぱい。<>sage<>2013/10/25(金) 00:16:14.78 <> Rictyのサイトに
(set-face-attribute 'default nil
:family "Ricty Discord"
:height 120)
(set-fontset-font (frame-parameter nil 'font)
'japanese-jisx0208
(cons "Ricty Discord" "iso10646-1"))
(set-fontset-font (frame-parameter nil 'font)
'japanese-jisx0212
(cons "Ricty Discord" "iso10646-1"))
(set-fontset-font (frame-parameter nil 'font)
'katakana-jisx0201
(cons "Ricty Discord" "iso10646-1"))
とかあったからこれ真似したらいいのかなとか思った <>
名無しさん@お腹いっぱい。<>sage<>2013/10/25(金) 04:38:18.33 <> emacs -nw で起動した時だけ
error: Fontset 'tty' does not exists
って出るんだけど、解決法はないかな? <>
名無しさん@お腹いっぱい。<>sage<>2013/10/25(金) 08:49:22.94 <> window-systemがnilでないときだけフォントを設定する <>
名無しさん@お腹いっぱい。<>sage<>2013/10/25(金) 10:48:09.45 <> うちでは (display-graphic-p) が t の時だけ
フォント絡みやフレームサイズの設定するようにしてるわ。 <>
名無しさん@お腹いっぱい。<>sage<>2013/10/25(金) 10:51:04.70 <> 理想を言えば、 .Xdefaults とか起動時の引数とか NTEmacs だとレジストリとかでフォント設定したほうが
起動した時にフォント変更で一瞬だけリサイズされたりするのを回避できていいんだよな。
ウィンドウサイズもしかり。 <>
名無しさん@お腹いっぱい。<>sage<>2013/10/25(金) 12:29:29.59 <> >677
そう思って自分は~/.Xresourcesに設定してる。>>674のようなこともないし。
skkを使っているのでemacs24.useXIM: falseが便利。 <>
名無しさん@お腹いっぱい。<>sage<>2013/10/25(金) 13:10:30.70 <> .Xdefaults は文字セット毎にフォント変えたりするのが面倒くさかった記憶がある <>
名無しさん@お腹いっぱい。<>sage<>2013/10/25(金) 15:29:30.04 <> >>679
最近はxft使えるから昔と比べるとずいぶん簡単になったよ. <>
名無しさん@お腹いっぱい。<><>2013/10/25(金) 15:38:48.62 <> packageでelispを管理してるけど、
packageのリポジトリにないelispはpackageのディレクトリで管理してる?
やっぱり他のディレクトリにしてる? <>
名無しさん@お腹いっぱい。<>sage<>2013/10/25(金) 20:13:56.46 <> default で ~/.emacs.d/elpa に入るのにそれ以外のものを挿入してしまうなんて変態もいいとこだと思う。 <>
名無しさん@お腹いっぱい。<>sage<>2013/10/25(金) 20:46:36.24 <> el-getでレシピ書いてそっちで管理してる <>
名無しさん@お腹いっぱい。<>sage<>2013/10/25(金) 21:30:49.21 <> http://mimosa-pudica.net/unix-font.html
> ちなみにあまり知られていない気もしますが、 Xft は既に obsolete です。
> cairo はフォントレンダリングに Xft を使用しません。(ただし obsolete と
> は言っても Firefox を筆頭に、 Xft を使っているプログラムは多くあります) <>
名無しさん@お腹いっぱい。<>sage<>2013/10/26(土) 02:53:26.23 <> 俺、cairo って何となく gnome 系かと思ってた。 <>
名無しさん@お腹いっぱい。<>sage<>2013/10/26(土) 09:30:06.25 <> >>681
俺は必ずわけるようにしてる。
ただ、最近はパッケージなかったら自分で作ることが多い。
一回作ってしまえば大抵使い回せるからね。 <>
名無しさん@お腹いっぱい。<>sage<>2013/10/26(土) 11:51:31.22 <> 手動でやってる俺に隙はない <>
名無しさん@お腹いっぱい。<>sage<>2013/10/26(土) 12:04:19.00 <> 新規で環境作りなおす時なんかは package からで何の問題もないわな
ただ marmalade が無いと正直足りないからいちいち足さなきゃいけないあたりがまだ面倒 <>
名無しさん@お腹いっぱい。<>sage<>2013/10/26(土) 17:27:03.60 <> package とかどうせ数年で飽きてメンテされなくなりそうだし
自前でやっとくのが一番な気が <>
名無しさん@お腹いっぱい。<>sage<>2013/10/26(土) 17:37:46.79 <> バニラにちょっとした物足すくらいが精神衛生的にも丁度良いと思う <>
名無しさん@お腹いっぱい。<>sage<>2013/10/26(土) 22:32:04.87 <> >>688
> ただ marmalade が無いと正直足りないから
ごめん、これって、英語圏かどこかの慣用的な言い方なの?
もしくは、パッケージとしてあるのかな?
参考までにお聞きしたいw <>
名無しさん@お腹いっぱい。<>sage<>2013/10/26(土) 22:34:40.08 <> http://marmalade-repo.org/ <>
名無しさん@お腹いっぱい。<>sage<>2013/10/26(土) 23:07:47.28 <> 今はこの三つ設定してるな
(setq package-archives '(
("gnu" . "http://elpa.gnu.org/packages/")
("marmalade" . "http://marmalade-repo.org/packages/")
("melpa" . "http://melpa.milkbox.net/packages/"))) <>
名無しさん@お腹いっぱい。<>sage<>2013/10/26(土) 23:20:15.00 <> >>690
やがてデフォルト教に入信していくわけですね
実際大昔の設定みてるとアホなこだわりしてたなーとか思うの結構あるんだよなあ <>
691<>sage<>2013/10/27(日) 00:01:02.88 <> >>692-693
thx.
自分は、おそらく慣用的な言い方だと踏んでいたので、内心、ちょっとズッコ
ケた感じだわw <>
名無しさん@お腹いっぱい。<>sage<>2013/10/27(日) 17:27:20.65 <> 「バニラ」っていいかたなんかやだ。
俺の中ではチョコレートがスタンダードで
そこからがオプションなんで。 <>
名無しさん@お腹いっぱい。<>sage<>2013/10/27(日) 17:56:16.51 <> じゃあチョコレートって言えばいいよ <>
名無しさん@お腹いっぱい。<>sage<>2013/10/27(日) 18:22:31.10 <> 「バニラ」がいやなら「すうどん」でいいだろ。 <>
名無しさん@お腹いっぱい。<>sage<>2013/10/27(日) 18:23:21.01 <> すっぴん <>
名無しさん@お腹いっぱい。<>sage<>2013/10/27(日) 20:50:16.31 <> 「しろめし」で、ひとつ <>
名無しさん@お腹いっぱい。<><>2013/10/27(日) 23:29:33.59 <> .emacs.d/init.elで
(set-locale-environment nil)
(set-language-environment "Japanese")
(prefer-coding-system 'utf-8)
(set-default-coding-systems 'utf-8)
(set-terminal-coding-system 'utf-8)
(set-keyboard-coding-system 'utf-8)
(set-buffer-file-coding-system 'utf-8)
(setq default-buffer-file-coding-system 'utf-8)
と設定しているのですが、
Emacsでファイルを作成しC-x RET f
で確認すると
Coding system for saving file (default japanese-iso-8bit)となってしまいます。
どこか間違っているのでしょうか? <>
名無しさん@お腹いっぱい。<>sage<>2013/10/28(月) 00:10:05.65 <> C-x RET f で出てくるデフォルトは現在のファイルのエンコーディングとは限らないような気がする。
コード見てみるとデフォルト決めるのに色々やってるなあ
あと色々沢山設定してるけど、今は特別なことしないなら↓だけで問題ないと思ったけど。
(set-language-environment 'Japanese)
(prefer-coding-system 'utf-8)
キーボードだの端末だのバッファだのは全部 prefer-coding-system でやってくれる。
その後にファイル名のコーディングとかプロセスのI/Oを一部別なのに変更したいときだけ
個別に変えればいい。 <>
名無しさん@お腹いっぱい。<>sage<>2013/10/30(水) 02:05:51.26 <> >>702
> あと色々沢山設定してるけど、今は特別なことしないなら↓だけで問題ないと思ったけど。
> (set-language-environment 'Japanese)
> (prefer-coding-system 'utf-8)
今はこれさえも必要ないはず。
環境変数見て、Emacsが適切に設定してくれます。
mule-ja-2009の09808のスレッドで半田さんが解説してくれているんだけど、
アーカイブ残ってないのね。。。 <>
名無しさん@お腹いっぱい。<>sage<>2013/10/30(水) 15:24:53.44 <> LANG=ja_JP.UTF-8 とか設定しておけばいいってことかな。
emacs -q したら普通に current-language-environment が Japanese になってたし
なんちゃら-coding-system も utf-8-unix とかになってたわ。
デフォルト教が捗るなこれは。
標準で C-h がバックスペースじゃないことだけがどうしても納得いかないけど。 <>
703<>sage<>2013/10/31(木) 01:13:53.38 <> >>704
最近のディストリビューションだと、LANGの設定も要らないと思いますよ。 <>
名無しさん@お腹いっぱい。<>sage<>2013/10/31(木) 13:52:58.77 <> 重隅 or 言葉の綾レベルだがつっこませてもらう
LANGの設定が要らないんじゃなくて
ディストリがはじめからやっといてくれるだけだろ
設定は要る <>
名無しさん@お腹いっぱい。<>sage<>2013/10/31(木) 14:01:33.83 <> 重隅って言うのか。 <>
名無しさん@お腹いっぱい。<>sage<>2013/10/31(木) 18:20:29.45 <> 大隈重信 <>
名無しさん@お腹いっぱい。<>sage<>2013/11/01(金) 01:13:59.15 <> しげくま <>
名無しさん@お腹いっぱい。<>sage<>2013/11/01(金) 09:52:50.80 <> Emacs アイコンがコミットされるまで
http://www.slideshare.net/nanasess/emacs-5282932
あれ日本人が作ったのか。 <>
名無しさん@お腹いっぱい。<>sage<>2013/11/01(金) 15:05:06.95 <> 採用された時にこのスレで話題にならなかった? <>
名無しさん@お腹いっぱい。<>sage<>2013/11/01(金) 15:43:58.47 <> なったっけ? <>
名無しさん@お腹いっぱい。<>sage<>2013/11/01(金) 15:45:08.83 <> どっかでちょっと話題になった気はする
当時なにかそのことで書き込んだ記憶がある
スラドだったかも? <>
名無しさん@お腹いっぱい。<>sage<>2013/11/01(金) 17:59:34.56 <> むかしのアイコンがどんなだったか忘れてしまった
四角だったよな <>
名無しさん@お腹いっぱい。<>sage<>2013/11/01(金) 19:01:08.80 <> 今時なアイコンすぎてかっこ良すぎ違和感あった
emacsって古くさいアイコンを想像するので、
いい意味で予想外 <>
名無しさん@お腹いっぱい。<>sage<>2013/11/02(土) 00:55:35.59 <> >>710
口髭w > RMS <>
名無しさん@お腹いっぱい。<>sage<>2013/11/02(土) 09:00:20.79 <> *scratch* で変な式評価してエラーになると *scratch* が空になってしまいますが
エラー時はミニバッファに「この馬鹿たれが!」とかメッセージを出すだけに
する事は可能ですか? <>
名無しさん@お腹いっぱい。<>sage<>2013/11/02(土) 09:45:14.66 <> >>717
変な式って、具体的にどんな式? <>
名無しさん@お腹いっぱい。<>sage<>2013/11/02(土) 10:08:30.24 <> >>718
変ってわけでもないんですけど、これとかカーソル以降が消えちゃいます
(replace-regexp-in-string "^\^" "" "") <>
名無しさん@お腹いっぱい。<>sage<>2013/11/02(土) 10:48:41.80 <> >>717
eval-expression-debug-on-error と debug-on-error を両方 nil にすればできそうだけど
そんなことしなくても C-] で再帰編集から抜ければ消えた部分戻ってくるよ <>
名無しさん@お腹いっぱい。<>sage<>2013/11/02(土) 14:20:36.93 <> >>720
なんと!ほんとだ!完全に消えたわけじゃなかったんですね
ありがとうございました <>
名無しさん@お腹いっぱい。<>sage<>2013/11/03(日) 18:49:49.38 <> vimのH,M,Lに相当する動きって出来ませんか? <>
名無しさん@お腹いっぱい。<>sage<>2013/11/03(日) 19:21:17.77 <> M-r で出来るけど、標準だと middle→top→bottomで順次移動になってて
直接それぞれに移動ってのはそのままだとないみたい。
(move-to-window-line 0) で H
(move-to-window-line nil) で M
(move-to-window-line -1) で L 相当の動きになると思うから
適当にキーバインドしてやってもいいかもね <>
名無しさん@お腹いっぱい。<>sage<>2013/11/03(日) 19:55:59.34 <> >>722-723
タイプ数は増えるけど
C-u 0 M-r とか C-u -1 M-r とか
C-u も使うようにしたほうがいいかも。
広いディスプレイで作業してるなら、大ざっぱな移動よりも、
linum-mode で行番号表示しておいて goto-line で移動 C-u 数字 M-g g とか、
narrow-to-region を使ったほうが作業効率が上がる場合もありそうだね。 <>
名無しさん@お腹いっぱい。<>sage<>2013/11/03(日) 20:30:14.82 <> >>723,724
C-c h, C-c m, C-c l にバインドして使うことにしました
ありがとうございます <>
名無しさん@お腹いっぱい。<>sage<>2013/11/03(日) 21:20:26.73 <> 数字プリフィクスなら M-数字 がいいんじゃないかな
M-0 M-r とか M-- M-r ならメタキーから手を離さないから比較的楽だ <>
名無しさん@お腹いっぱい。<>sage<>2013/11/03(日) 22:48:02.24 <> emacsにc++の自動補完機能を導入しようと思ったのですが途中で詰まってしまいました
http://d.hatena.ne.jp/uhiaha888/20130304/1362382317
これの
$ git clone git://github.com/Golevka/emacs-clang-complete-async.git
$ cd emacs-clang-complete-async
$ make
ここでmakeを実行すると
cc -std=c99 -I/usr/include -DNDEBUG -D_GNU_SOURCE -D__STDC_CONSTANT_MACROS -D__STDC_FORMAT_MACROS -D__STDC_LIMIT_MACROS -O3 -fomit-frame-pointer -g -Wall -Wextra -pedantic -O3 -I./src -c -o src/obj/msg_handlers.o ./src/msg_handlers.c
makefile.mk:43: recipe for target `src/obj/msg_handlers.o' failed
make: *** [src/obj/msg_handlers.o] Error 1
このようなエラーが出て止まります。アドバイスをください。 <>
名無しさん@お腹いっぱい。<>sage<>2013/11/03(日) 23:24:53.54 <> >>727
llvm 3.2 で make したけどエラーにはならなかった。
コンパイル時のエラーメッセージが書かれていないんでよくワカランけど、
こっちの環境では msg_handlers.c のコンパイルはこんな↓感じ
cc -std=c99 -I/usr/lib/llvm-3.2/include -DNDEBUG -D_GNU_SOURCE -D__STDC_CONSTANT_MACROS -D__STDC_FORMAT_MACROS -D__STDC_LIMIT_MACROS -g -O2 -fomit-frame-pointer -fPIC -Wall -Wextra -pedantic -O3 -I./src -c -o src/obj/msg_handlers.o ./src/msg_handlers.c <>
名無しさん@お腹いっぱい。<>sage<>2013/11/04(月) 06:58:45.10 <> >>726
C-2 M-2 C-M-2 系って意外に知られていないような気がする <>
名無しさん@お腹いっぱい。<>sage<>2013/11/04(月) 07:25:22.83 <> C-aで行頭に、
C-a aで全選択、
とかしたいんですが、
設定方法はありますか? <>
名無しさん@お腹いっぱい。<>sage<>2013/11/04(月) 09:31:50.52 <> C-aで行頭に戻って、そこにaを挿入するときはどうすんの? <>
名無しさん@お腹いっぱい。<>sage<>2013/11/04(月) 09:45:15.87 <> C-a C-g a じゃね? <>
名無しさん@お腹いっぱい。<>sage<>2013/11/04(月) 09:48:24.04 <> >>730
key-chord とかなんかそれ系のでそういうの出来たような気がする。
C-a a の a 打つまでの時間が短かったら全選択とみなすみたいな。
key-chord は同時押しだったかもしれない。
なんか似たような変態的なキーバインドパッケージ一時期増えた時のどれかだな。
あと、C-a だけだと行頭、 C-a C-a だと全選択、みたいに連続で押すと挙動が代わるのもあるよ。
sequential-command だったかな。 <>
名無しさん@お腹いっぱい。<>sage<>2013/11/04(月) 18:43:08.25 <> C-x h を、覚える <>
名無しさん@お腹いっぱい。<>sage<>2013/11/04(月) 21:32:28.37 <> emacs上でocamlを学習したいので環境を作ったのですが.mlファイルを
開いてもモードがlispになりcamlモードで開けませんどこがおかしいのでしょうか?
OS:Windows7 64bt
emacs設定
home/.emacs.d/elisp
tuareg-2.0.6
他:ttp://wwwfun.kurims.kyoto-u.ac.jp/soft/lsl/ocaml.html
のOcaml-mode3.05の全て
Ocaml.exeの位置
C:\OCaml\bin
emacs設定
(add-to-list 'load-path "~/.emacs.d/lisp/tuareg-2.0.6")
(setq tuareg-interactive-program "ocaml")
(autoload 'tuareg-mode "tuareg" "Major mode for editing Caml code." t)
(autoload 'tuareg-run-caml "tuareg" "startup a Caml toplevel" t)
(autoload 'camldebug "camldebug" "Run the Caml debugger." t)
(autoload 'tuareg-imenu-set-imenu "tuareg-imenu" "Configuration of imenu for tuareg" t)
(add-hook 'tuareg-mode-hook 'tuareg-imenu-set-imenu) <>
名無しさん@お腹いっぱい。<>sage<>2013/11/04(月) 22:36:07.87 <> README を読めば
(setq auto-mode-alist
(cons '("\\.ml[iylp]?$" . caml-mode) auto-mode-alist))
が必要ってのがわかるはず <>
名無しさん@お腹いっぱい。<>sage<>2013/11/04(月) 22:57:28.44 <> >>736
ありがとう
(setq auto-mode-alist
(cons '("\\.ml[iylp]?$" . caml-mode) auto-mode-alist))
(autoload 'caml-mode "caml" "Major mode for editing Caml code." t)
(autoload 'run-caml "inf-caml" "Run an inferior Caml process." t)
を追加しても動きませんでした。
.mlファイルが(Lisp)で起動されてしまう。
M-x caml-modeは [No match]になってしまう
もう少し調べてみます。 <>
名無しさん@お腹いっぱい。<>sage<>2013/11/04(月) 23:09:32.51 <> >>735 においてあるのは Ocaml-mode3.05 だけど、
>>735 で書いてる設定は tuareg-mode の設定に思える。
tuareg に一緒に添付されてるパッケージを使うんであれば ocaml-mode って必要ないのでは? <>
名無しさん@お腹いっぱい。<>sage<>2013/11/04(月) 23:27:36.38 <> 最初はcaml-modeで動かそうとしたのですが、動かず
その後turregを入れました。
M-x tuareg-mode も[No match]になります。
tuareg関連のファイルはtuareg-2.0.6に入れてelisp
に入れています。
elispにはauto-completeも入れていますがこちらは動作しています。
現在の.emacs.dはこんな感じです。
;ocamlモードの設定
(setq load-path
(append '("C/Ocaml/bin")
load-path))
(setq auto-mode-alist
(cons '("\\.ml[iylp]?$" . caml-mode) auto-mode-alist))
(autoload 'caml-mode "caml" "Major mode for editing Caml code." t)
(autoload 'run-caml "inf-caml" "Run an inferior Caml process." t)
(add-to-list 'load-path "~/.emacs.d/lisp/tuareg-2.0.6")
(setq tuareg-interactive-program "ocaml")
(autoload 'tuareg-mode "tuareg" "Major mode for editing Caml code." t)
(autoload 'tuareg-run-caml "tuareg" "startup a Caml toplevel" t)
(autoload 'camldebug "camldebug" "Run the Caml debugger." t)
(autoload 'tuareg-imenu-set-imenu "tuareg-imenu" "Configuration of imenu for tuareg" t)
(add-hook 'tuareg-mode-hook 'tuareg-imenu-set-imenu) <>
名無しさん@お腹いっぱい。<>sage<>2013/11/04(月) 23:42:03.61 <> ちゃんと eval するか再起動はしてるんだろか。
autoload が評価されてるなら [No match] にはならないと思うんだけどな。 <>
名無しさん@お腹いっぱい。<>sage<>2013/11/04(月) 23:55:12.39 <> 再起動は設定をかえるためにやってるんですが
ダメそうです。
c-modeは普通にM-x c-modeで呼び出せるんだが…
遅くまでありがとう <>
名無しさん@お腹いっぱい。<>sage<>2013/11/05(火) 00:06:12.99 <> c-mode は標準で設定されてるから特に何もしなくても動くんだけどね。
*scratch* バッファに上記の設定貼り付けて M-x eval-buffer でもだめかね。
設定ファイルコンパイルしてなくて古い init.elc が読み込まれてるとかのオチな気がする。 <>
名無しさん@お腹いっぱい。<>sage<>2013/11/05(火) 02:06:53.32 <> (append '("C/Ocaml/bin")
C/ -> C:/
中身見ていないけれど、binの下に *.el[c] があるのか
load-pathってexpand-file-nameしなくてもよくなったんだっけ?
(add-to-list 'load-path (expand-file-name "~/.emacs.d/lisp/tuareg-2.0.6"))
まずは *scratch* で (load-library "calm") を評価するところから始めたほうがいいと思う。 <>
名無しさん@お腹いっぱい。<>sage<>2013/11/05(火) 09:53:55.83 <> 今は load-path は expand-file-name しなくてもちゃんと認識されるようになってるね。
~/.emacs.d/misc とか普通に入れて使ってる。 <>
名無しさん@お腹いっぱい。<>sage<>2013/11/05(火) 14:35:42.53 <> >>728
遅くなってすみません。そうでしたか。もうちょっといじってみます。 <>
名無しさん@お腹いっぱい。<>sage<>2013/11/05(火) 22:31:48.55 <> >>742
設定を色々ためしながらいじっているのでコンパイルは
しないようにしています。
確認してみると.emacs下に.elcはなかったです。
>>743
*scratch*で(load-library "caml")を実行したところ
Loading ~ユーザ名~.emacs.d/elisp/caml.el(source) ...done
となりました。
読み込めてはいるのかな?
ttp://wwwfun.kurims.kyoto-u.ac.jp/soft/lsl/ocaml.html
のOcaml-mode3.05の全てをelispフォルダに放り込んでいるので
これのcaml.elは読み込めているようです
少し進展がありました。
M-x caml-modeだけだとNo matchになりますが
*scratch*で(load-library "caml")実行後にM-x caml-mode
を実行すると(caml)で実行できました。
init.elが悪いのかな <>
名無しさん@お腹いっぱい。<>sage<>2013/11/05(火) 22:53:37.38 <> init.el に load-library なり load なりを入れて
それでも M-x caml-mode が動かないんだとしたら init.el がちゃんと読まれていないか
期待通りに動いていないかだね。 <>
名無しさん@お腹いっぱい。<>sage<>2013/11/05(火) 23:11:01.03 <> initial.elに(load-library "caml")を追加しても
M-x caml-modeが動きませんでした。
initial.elの前半に記述している(set-foreground-color "white")
などは動作しているのでocamlの設定中心にinitial.elをデバックしてみます。 <>
名無しさん@お腹いっぱい。<>sage<>2013/11/05(火) 23:16:52.42 <> もしかして古い ~/.emacs とか ~/.emacs.el があるんじゃないのかね。
init.el よりそっちのが読み込みの優先度高いよ。 <>
名無しさん@お腹いっぱい。<>sage<>2013/11/05(火) 23:26:36.24 <> コマンドプロンプトでemacs --debug-initを実行したところ
Debugger entered--Lisp error: (void-function c-toggle-auto-state)
(c-toggle-auto-state t)
と出たため(c-toggle-auto-mode t)をコメントアウトしたところ
無事.mlファイルがcamlモードで起動できました。
ありがとうございました。
emacs関連で2日も使ってしまった。
「Emacs実践入門」だけでは知識不足か。 <>
名無しさん@お腹いっぱい。<>sage<>2013/11/05(火) 23:41:24.64 <> さすがにそれはわざわざデバッグモードで起動せんでも
起動時にエラー出てるような気がするんだけど <>
名無しさん@お腹いっぱい。<>sage<>2013/11/05(火) 23:55:55.90 <> melpaにtuaregがあるから、packageを使ってインストールしたほうが楽なように思う。
けれどWindowsでpackage使うにはtarなどをインストールしないといけないかも。 <>
730<>sage<>2013/11/06(水) 05:24:58.76 <> >> 731
時間が十分短い場合→全選択、少し空けば→a挿入、みたいなイメージ。
>> 732
ごめんなさい、C-a C-g a はよく判りませんでした。
>> 733 sequential-command だったかな。
おおお、C-a、C-aでバッファ先頭に飛ぶ例があるね。
これを使えば、C-a C-aで全選択もわけなさそう。
>> 734 C-x h を、覚える
知らんかった…。当座はこれでしのぎます。 <>
名無しさん@お腹いっぱい。<>sage<>2013/11/06(水) 07:53:57.23 <> >>753
やりたいことこの辺に近いかな。
http://d.hatena.ne.jp/rubikitch/20090219/sequential_command
http://web.archive.org/web/20081011163429/http://taiyaki.org/elisp/accel-key/ <>
名無しさん@お腹いっぱい。<>sage<>2013/11/06(水) 09:44:18.83 <> taiyaki.org の人は今 google ime 作ってるんだよな <>
名無しさん@お腹いっぱい。<>sage<>2013/11/06(水) 09:52:27.08 <> うん、知ってる。 <>
名無しさん@お腹いっぱい。<>sage<>2013/11/06(水) 12:57:25.84 <> help-echo プロパティで表示出来るツールチップをマウスオーバーではなく
関数で強制的に表示って出来ないですかね。 <>
名無しさん@お腹いっぱい。<>sage<>2013/11/06(水) 13:24:02.97 <> 既出かもしれないけど eval-after-load のフォームの中までバイトコンパイルさせる方法考えた。
(eval-after-load "hoge" `(funcall ,(lambda ()
(message "ここはコンパイルされるよ!")
))
もっとも eval-after-load 内にそんなごつい処理かかないだろうし、ロード時に一回しか走らないしで
大した違いが出るとは思えないけど。 <>
名無しさん@お腹いっぱい。<>sage<>2013/11/06(水) 21:49:23.91 <> バイトコンパイルってファイルが小さくなるだけじゃないの?
速度変わらないんだったら大した意味ないんじゃない? <>
名無しさん@お腹いっぱい。<>sage<>2013/11/06(水) 21:56:42.85 <> バイトコンパイルしないとより遅くなるぞ。 <>
名無しさん@お腹いっぱい。<>sage<>2013/11/06(水) 22:08:47.81 <> eval-after-loadまでコンパイルする必要はないだろう・・・・ <>
名無しさん@お腹いっぱい。<>sage<>2013/11/07(木) 01:57:20.77 <> >>759
たかがサイズのためにどんだけまわりくどい手間かけてんだよ… <>
名無しさん@お腹いっぱい。<>sage<>2013/11/07(木) 02:35:13.66 <> たかがサイズ
されどサイズ <>
名無しさん@お腹いっぱい。<>sage<>2013/11/07(木) 07:43:47.94 <> ファジィな痛みー <>
名無しさん@お腹いっぱい。<>sage<>2013/11/07(木) 08:01:14.52 <> >>759
elispのバイトコンパイラはlisp専業だったlucidが手を入れた最適化コンパイラ
実行速度も向上する <>
名無しさん@お腹いっぱい。<>sage<>2013/11/07(木) 09:02:32.14 <> js2-modeとか最適化でかなり変わるね <>
名無しさん@お腹いっぱい。<>sage<>2013/11/07(木) 10:27:50.93 <> 極力起動時の処理を軽くしようとして eval-after-load に関数定義とかまで押し込んでる場合は
>>758 は有効だと思う。
もっとも init.el に書く程度の内容だったらやっぱり誤差だろうな。 <>
名無しさん@お腹いっぱい。<>sage<>2013/11/07(木) 12:43:20.42 <> org-modeのファイルを開くときに折り返しを有効にしている状態で開くにはどうすればよいですか?
今はファイルを開いた後に(toggle-truncate-lines)を手動で1回評価しています <>
名無しさん@お腹いっぱい。<>sage<>2013/11/07(木) 13:13:02.22 <> org-mode-hook に toggle-truncate-lines を追加してやればいいんじゃないかな <>
名無しさん@お腹いっぱい。<>sage<>2013/11/07(木) 14:51:59.91 <> >>768
以前探して見つけたのは、org-startup-truncated を NIL にしておく方法。 <>
名無しさん@お腹いっぱい。<>sage<>2013/11/07(木) 22:39:25.58 <> X11のフォント設定に依存しない、直接ttfファイル等を指定して
フォントを設定することはできますか? <>
名無しさん@お腹いっぱい。<>sage<>2013/11/08(金) 02:11:35.30 <> 今のところ OS に認識させないと無理だと思う。 <>
名無しさん@お腹いっぱい。<>sage<>2013/11/08(金) 12:40:42.05 <> twittering-modeを使っているのですが
urlをクリックしたときに指定したブラウザでそのリンクを開くよう設定できますか <>
名無しさん@お腹いっぱい。<>sage<>2013/11/08(金) 12:55:08.45 <> browse-url を使ってるみたいだから、
browse-url-browser-function を browse-url-firefox とか好きなのに変更すればいい。
デフォルトで何が選べるかは browse-url の先頭のコメントのところに列挙されている。
そこにない場合は自分で適当に追加すればいい。
twittering-mode の url クリックの時だけ変更したいなら
twittering-click に包囲 advice でも追加してそこでだけ browse-url-browser-function を変更すればいい。 <>
名無しさん@お腹いっぱい。<>sage<>2013/11/08(金) 16:50:57.45 <> >>774
できました!大変助かりました。感謝です。 <>
768<>sage<>2013/11/09(土) 01:24:53.69 <> >>769-770
両方を参考にしてorg-mode-hookでorg-startup-truncatedをnilにすることにしました
ありがとうございました <>
名無しさん@お腹いっぱい。<><>2013/11/09(土) 22:33:14.63 <> package で color-theme のSolarizedをインストールして
設定ファイルにGithubに書かれているように書き込んだのですが
Emacsを起動する際に
Unable to find theme file for `solarized-dark'と出て、適用されない状態で起動されます。
Pathを確認したところしっかりとPackageでインストールされたものが
はいるディレクトリは通っていますし、
M-x load-file RET ~/.emacs.d/init.el
とするとエラーは出ずにしっかりとSolarizedのColorthemeが適用されます。
原因は何なのでしょうか? <>
名無しさん@お腹いっぱい。<>sage<>2013/11/09(土) 22:48:15.90 <> >設定ファイルにGithubに書かれているように書き込んだのですが
これのURLがないとなんとも <>
名無しさん@お腹いっぱい。<>sage<>2013/11/10(日) 11:09:20.67 <> >>750
遅レスだけど、これは caml.el の作者のバグっぽいね。
c-toggle-auto-state は、cc-cmds.elを読み込まないと定義されないけど
きっと作者の環境の .emacs には、これをどこかで読み込ませる設定でも
あって、これを require するのを忘れたんだろう…
対処するならば、
(eval-after-load 'caml
'(require cc-cmds))
という方法もある。
というか、ocaml 使うなら MELPA から tuareg 入れておいたら、
autoload設定も auto-mode-alist の追加も不要なはずなんだけどなぁ。
** <>
名無しさん@お腹いっぱい。<>sage<>2013/11/10(日) 11:19:21.48 <> >>758
この話題、ちょっと前の gnu.emacs.devel でもあったね。
Emacs 24.4 では lexical-binding の機能を活かして、
コンパイル時に変数チェックまでしてくれるから、
eval-after-load の中もコンパイルすると、変数名のミスなどが見つかるので
有効。もっとも、読み込まないライブラリがあると逆にこれは鬱陶しいので、
ライブラリがない場合は、
(with-no-warnings) で囲むようなマクロを作っておけばさらに便利。
実は Emacs 24.4 には、すでに同じようなことをしてくれる
with-eval-after-load マクロが定義されている。。。 <>
名無しさん@お腹いっぱい。<>sage<>2013/11/10(日) 11:32:27.62 <> >>777
勘で書くけど、
多分、init.el で、
(package-initialize)
を先頭の方で書いていないんじゃないかな。
これ書かないと、MELPA経由でインストールしたパッケージへの
アクセスが init.el でできない。
(package-initialize) は、init.el 読み込み完了後に
(もしinit.el で実行していないなら)自動的に行われるので
起動後は設定できるとか。 <>
名無しさん@お腹いっぱい。<>sage<>2013/11/10(日) 11:35:18.32 <> >>780
>with-eval-after-load マクロが定義されている。。。
なんでいままでなかったんだレベルだな <>
名無しさん@お腹いっぱい。<>sage<>2013/11/10(日) 11:37:23.74 <> これか
(unless (fboundp 'with-eval-after-load)
(defmacro with-eval-after-load (file &rest body)
`(eval-after-load ,file
`(funcall (function ,(lambda () ,@body))))))
さっさか導入しちゃうのも悪くないな <>
名無しさん@お腹いっぱい。<>sage<>2013/11/10(日) 12:29:19.02 <> >>730
これも遅レスだけど、最近、一部で話題の領域選択ツール:
https://github.com/magnars/expand-region.el
rの連打でどんどん選択領域を広げてくれる。 <>
名無しさん@お腹いっぱい。<>sage<>2013/11/10(日) 13:04:05.71 <> 投下
auto-insert で挿入するテンプレートを yasnippet に処理させる
& ~/.emacs.d/template にモード名でファイルを放り込んでおけば勝手に auto-insert の対象にする
(add-hook 'find-file-hook 'auto-insert)
;; テンプレートファイルのフォルダ. モード名のファイルを配置する (java-mode.java や emacs-lisp-mode.el など)
(setq auto-insert-directory (locate-user-emacs-file "template"))
(defvar auto-insert-template-modtime nil "テンプレートディレクトリの更新時間.")
(defun auto-insert-yas-expand ()
"`auto-insert' するテンプレートを `yasnippet' のスニペットと見做して展開する."
(yas-expand-snippet (buffer-string) (point-min) (point-max)))
(defadvice auto-insert (before auto-insert-update-template activate)
"`auto-insert' 前にテンプレート一覧を更新する."
(let ((modtime (file-attributes auto-insert-directory)))
(unless (equal modtime auto-insert-template-modtime)
(setq auto-insert-template-modtime modtime)
(setq auto-insert-alist nil)
(dolist (template (directory-files auto-insert-directory nil "^[^.]"))
(add-to-list 'auto-insert-alist
(cons (intern (file-name-sans-extension template))
(vector template 'auto-insert-yas-expand))))
)) <>
名無しさん@お腹いっぱい。<>sage<>2013/11/10(日) 17:01:24.63 <> >>777
theme は、普通の load-path とは、違う変数をたどるんだけど、
そこいらへんも、package system で、ちゃんと、面倒見てくれてるのかな?
custom-theme-directory
custom-theme-load-path
調べてみると、良いかもしれない。 <>
名無しさん@お腹いっぱい。<>sage<>2013/11/10(日) 18:20:01.75 <> locate-file (locate-library とか executable-find) の実行結果をキャッシュするのを作った。
init.el なんかでパッケージの有無で分岐して設定変更なんかしてる場合にちょっとだけ起動が速くなる。
http://pastebin.com/hCAGBh6H
locate-file-cache.el で保存してなるべく早い位置で require する。
二回目以降の起動ではキャッシュを読むようになるのでディスクアクセスが発生しなくなって
ちょっとだけ速くなる。 <>
名無しさん@お腹いっぱい。<>sage<>2013/11/10(日) 18:26:48.25 <> >>785
いいね。abbrev, dabbrev, skeleton, tempo, とか全部 yasnippet/auto-complete
に整理してるんで助かった。
(defadvice auto-insert (before auto-insert-update-template activate)
"`auto-insert' 前にテンプレート一覧を更新する."
(dolist (template (directory-files auto-insert-directory nil "-mode\\.[^~]+$"))
(let ((mode (intern (file-name-sans-extension template))))
(setq auto-insert-alist (assq-delete-all mode auto-insert-alist))
(add-to-list 'auto-insert-alist
(cons mode (vector template 'auto-insert-yas-expand))))))
snippet ですむのにわざわざ elisp で実装してドヤ顔している人ってなんなの?
と思わないことはない。 <>
名無しさん@お腹いっぱい。<>sage<>2013/11/10(日) 18:46:53.13 <> SSD だとあんまり気にならなくない? <>
名無しさん@お腹いっぱい。<>sage<>2013/11/10(日) 19:07:33.60 <> >>789
普通のHDDでも誤差レベル。
自分ところは 37 回ぐらい executable-find とか locate-library してるけど
起動時間が 1.0 sec から 0.9 sec になった程度の差だった。
自己満足ではある。 <>
名無しさん@お腹いっぱい。<><>2013/11/10(日) 20:34:49.57 <> 1万回起動すれば1000秒(約16分)の差になる。
メロスも16分遅れていたら約束を果たせなかったかもしれない。
人生の行方を決めるには十分な時間さ。 <>
名無しさん@お腹いっぱい。<>sage<>2013/11/10(日) 20:51:46.13 <> 一日2回起動するとしても16分稼ぐのに13年もかかるのか・・・
PCの性能があがると更に差は縮まるだろうしなかなか過酷な旅路になるな <>
名無しさん@お腹いっぱい。<>sage<>2013/11/10(日) 21:17:59.12 <> >>787
一時的なファイルチェックなんかに locate-file 使われると詰むから
init.el 内のみで機能するようにした方が無難だと思う。 <>
名無しさん@お腹いっぱい。<>sage<>2013/11/10(日) 21:29:59.18 <> init.elc ファイル見てて思ったんだけど、advice 定義の中身ってコンパイルされてないのね。
上の方で eval-after-load の中身をコンパイルしてたけどこっちは出来ないんだろうか。
オプションに compile って付けてみたけど効果がよくわからない。 <>
名無しさん@お腹いっぱい。<>sage<>2013/11/10(日) 22:02:56.27 <> >>794
適当にadviceした関数の定義をsymbol-functionで見てみるとどうやらコンパイルされてるっぽいから
特に何もしなくてもいいんじゃないのかね。defadviceしたタイミングでコンパイルされるんだろうきっと。 <>
名無しさん@お腹いっぱい。<>sage<>2013/11/10(日) 23:29:44.99 <> そうすると init.el に advice 書きまくるとバイトコンパイルのせいでどんどん遅くなるんじゃないかって気がしてきた
実際 flet とか advice の中に書いとくと起動時に Compile-Log のバッファが出来てて warning が記録されてる・・ <>
名無しさん@お腹いっぱい。<>sage<>2013/11/10(日) 23:38:22.34 <> adviceは(あんまり)使うべきではない
http://www.emacswiki.org/emacs/AdviceVsHooks <>
名無しさん@お腹いっぱい。<>sage<>2013/11/10(日) 23:53:51.94 <> >>790
37回という回数はどうやって計測するの? <>
名無しさん@お腹いっぱい。<>sage<>2013/11/11(月) 00:04:03.16 <> >>798
occur で数えたよ。ダサい答えでごめんなさい。
require した別のファイルの中でも呼んでたりするだろうから実際はもう少し多いかもね。
それこそ advice でも書いて数カウントでもしたほうがいいのかもしれない。 <>
名無しさん@お腹いっぱい。<>sage<>2013/11/12(火) 00:43:56.46 <> 流れぶった切るけど。文字列の最初の空白のみからなる行を削除するのってemacsではどう書くのがいい?
Gaucheだと
(regexp-replace #/^( *\n)*/ str "")
と書けるけど、emacsだと
(string-match "^\( *\n\)*" " \n\n \n hoge\n \n")
はnilになるので。 <>
名無しさん@お腹いっぱい。<>sage<>2013/11/12(火) 01:13:26.16 <> 次のバージョンていつリリースされんだろう? <>
名無しさん@お腹いっぱい。<>sage<>2013/11/12(火) 01:41:42.06 <> >>799
なるほど
ありがとう <>
名無しさん@お腹いっぱい。<>sage<>2013/11/12(火) 02:15:21.12 <> >>800
\( \) を "" の中に書くときは "\\( \\)"
^ だと行頭すべてにマッチしてしまうので文字列の頭だけなら \\`
(replace-regexp-in-string "\\`\\(?: *\n\\)+" "" " \n\n \n hoge\n \n")
;=> " hoge\n \n" <>
名無しさん@お腹いっぱい。<>sage<>2013/11/12(火) 08:21:26.07 <> \\`[ \n]*\n
\t はいらんかえ <>
名無しさん@お腹いっぱい。<>sage<>2013/11/12(火) 15:59:22.67 <> マクロを eval-when-compile 内で定義しておいてロード時には見えないようにしてる場合、
defadvice の中でそのマクロを使ってしまうとコンパイル時に展開されないためか実行時にエラーになってしまいます。
これを回避する方法はないのでしょうか?
cl を eval-when-compile で使いたいのに advice の中で使ってるせいでうまくいかない・・・
; コンパイル時のみ有効なマクロ
(eval-when-compile
(defmacro moo ()
'"moo!"))
; 関数内でマクロ使用
(defun foo ()
(moo))
; アドバイス内でマクロ使用
(defun bar ()
nil)
(defadvice bar (before ad-bar activate)
(moo))
; コンパイル後のファイルをロードして実行した結果:
; (fboundp 'moo) => nil
; (foo) => "moo!"
; (bar) => Error: void-function moo ("moo!" になってほしい) <>
805<>sage<>2013/11/12(火) 16:02:59.87 <> 一部間違えました。
(defadvice bar (before ad-bar activate)
(moo))
↓
(defadvice bar (after ad-bar activate)
(setq ad-return-value (moo))) <>
名無しさん@お腹いっぱい。<>sage<>2013/11/12(火) 16:18:13.86 <> eval-when-compileで思ったが>>787でやってるキャッシュなんか
全部eval-when-compileでやっちゃえばいいんじゃないかと思ったわ
どうせ違う環境にもってったらそんときinit.elコンパイルし直すだろうしな
(when (eval-when-compile (executable-find "w3m")) ...)
みたいな
マニュアルみてもコンパイル時に定数に置き換えるっていってるし <>
名無しさん@お腹いっぱい。<>sage<>2013/11/12(火) 17:17:42.94 <> >>806
ad-return-value は before after advice では使えなかった記憶が。
around advice 使うしかなかったような。 <>
805<>sage<>2013/11/12(火) 17:23:22.70 <> >>808
>>806 で after になおしています。
macroexpand でもダメだったし無理なんですかねえ・・・ <>
805<>sage<>2013/11/12(火) 17:24:22.75 <> じゃないや・・ マニュアルによると ad-return-value は after でも使えるみたいです。 <>
名無しさん@お腹いっぱい。<>sage<>2013/11/12(火) 18:49:40.14 <> 原理的なおっ説教ですまないが、
- advice を使う
- cl パッケージを cl-* なしで使う
という2重の意味でこまったことをしている気がする。。。
根本から立ち戻って、本当にそれしか方法がないのか再考はできないかなぁ。
Emacs 24.4. の nadvice.el が使えるようになったら色々と捗る気はするが、
捗らないかもしれない。 <>
名無しさん@お腹いっぱい。<>sage<>2013/11/12(火) 19:09:32.20 <> >>811
advice はともかく cl-* を使ってるかどうかは関係なくね?
どっちにしろ (require 'cl) しないと使えない上
(require 'cl) はライブラリで使う時は eval-when-compile にしてランタイムに使うなってのは
変わってないでしょ。 <>
名無しさん@お腹いっぱい。<>sage<>2013/11/12(火) 19:34:05.00 <> >>805
stackoverflow でも似たような質問出ていたけど最後は結局普通に require しろで終わってたな。
他に考えられる方法としては、advice の中身を別関数建てにして予めコンパイルさせるぐらいか。
これだとロード時じゃなくコンパイル時にちゃんと中身までマクロ展開されるし
関数名 typo とかしてても Warning 出してくれるようになる。
(eval-when-compile (defmacro moo () "moo!"))
(defun bar () nil)
(defun ad-bar-internal () (moo))
(defadvice bar (after ad-bar activate) (setq ad-return-value (ad-bar-internal))) <>
名無しさん@お腹いっぱい。<>sage<>2013/11/12(火) 21:39:43.17 <> (require 'cl) がランタイムで禁止だったのは同名のEmacs Lispの関数を上書きして、
他のソフトがどっちを使っているのか分からなくなる問題があったため。
最近のEmacs は、clパッケージの関数の先頭に全部 cl- をくっつけることで名前衝突を防ぎ、
普通にrequire できる、 (require 'cl-lib) というのがあるので、支障がなければこっちを
使うべき。 <>
805<>sage<>2013/11/12(火) 21:57:02.45 <> 色々調べたり試してみましたが advice の中で素直にマクロ展開させるのは無理そうでしたorz
cl を止めて cl-lib にしたところコンパイル時の警告が出なくなったので、
自前のマクロ用に>>813さんに指摘された関数の形でくくりだすのと合わせて対応してみます。
>>811さんの教えてくださった nadvice ですが、さらっと見た感じ
advice の中身も普通の関数みたいにコンパイル時にパースされるみたいですね。
導入が楽しみです。
ありがとうございました。 <>
名無しさん@お腹いっぱい。<>sage<>2013/11/13(水) 00:45:42.47 <> >>805,806
(defadvice bar (after ad-bar compile activate)
(setq ad-return-value (moo))) <>
800<>sage<>2013/11/13(水) 02:53:28.57 <> >>803-804
ありがとう。汚いコードを書かずに済みました。
バックスラッシュは……普段rx使ってるのでという言い訳を。
(replace-regexp-in-string (rx string-start (* (or blank "\n")) "\n")
""
" \n\n \n hoge\n \n") <>
805<>sage<>2013/11/13(水) 12:01:28.13 <> >>816
ありがとうございます。
それは前も試しましたが void-function になります。
compile オプションの説明、Info 見ても正直よくわからないんですよね。
elc ファイル直接見てもわかるんですが事前にコンパイルするって命令ではないようです。
(この場合だと elc の中で moo が展開されていない)
preactivate もいまいち使いどころがわからないし色々 advice は難しい・・・ <>
名無しさん@お腹いっぱい。<>sage<>2013/11/13(水) 12:34:44.71 <> >>818
24.3.1 で (bar) -> "moo!" となるけど? <>
805<>sage<>2013/11/13(水) 12:47:16.49 <> >>819
(fboundp 'moo) が t になってませんか?
(symbol-function 'bar) でコンパイル済みの中身がでますが、その中で moo は展開されていますでしょうか。
なにかの拍子に未コンパイルの方を一度でもロードしてしまうと
moo が定義されてしまってそのまま動いてしまったりするので。 <>
名無しさん@お腹いっぱい。<>sage<>2013/11/13(水) 14:41:26.54 <> >>820
じゃあこれでどうだ?
(defadvice bar (after ad-bar preactivate activate)
(setq ad-return-value (moo)))
(eval-when-compile
(ad-compile-function 'bar)) <>
805<>sage<>2013/11/13(水) 15:19:12.49 <> >>821
うーむ、結果変わりませんでした。
preactivate の説明みてると事前にコンパイルしてくれても良さそうな内容に見えるんですけどねえ・・ <>
名無しさん@お腹いっぱい。<>sage<>2013/11/13(水) 16:23:51.22 <> emacs終了時に.recentfへの書き込み時間がいつの間にか伸びるようになってしまいました
package経由でインストールしたelispのせいだと思うのですが、どれが原因か絞り切れていません
なにかいい調べ方はありますか <>
名無しさん@お腹いっぱい。<>sage<>2013/11/13(水) 16:41:56.79 <> recentf-save-list が終了時に .recentf に保存する関数みたいだけど、
実際にそれに時間かかってるのか、それとも他のが終了時に時間かかってて
たまたま .recentf に保存してるメッセージが長く表示されてるように見えてるだけなのか見てみたほうがいいかも。
benchmark とか elp 使って recentf-save-list の実行にかかる時間測ってみるとかね。
あと kill-emacs-hook の中身とか。 <>
名無しさん@お腹いっぱい。<>sage<>2013/11/13(水) 19:15:16.60 <> バイナリファイルをオープンして最初の4byteをリトルエンディアンでリードして返す、
みたいな処理はemacs lispでどう書けますか?
C言語ならfopenしてfreadするだけなのですが… <>
名無しさん@お腹いっぱい。<>sage<>2013/11/13(水) 19:29:14.98 <> 一旦どっかのバッファに読む必要があるけど insert-file-contents-literally を使えばいいと思う。
これだとファイルのどこをどれだけ読むか指定出来る。
文字コード変換とかしないで読み込んでくれるけど、(set-buffer-multibyte nil) は必要だったかもしれない。 <>
名無しさん@お腹いっぱい。<>sage<>2013/11/13(水) 19:46:38.84 <> >>826
ありがとうございます!
やっぱりバッファに読む必要があるんですね。
ファイルサイズが大きいとメモリ喰いそうだけど、仕方ないんですかね。。
まずは教えて頂いた関数をヒントに試してみます。 <>
名無しさん@お腹いっぱい。<>sage<>2013/11/13(水) 19:52:09.47 <> こんな感じ?なんかもっとスッキリ出来るのかな。
あと素の emacs だと 28bit までしか扱えなかったんじゃなかったっけ。最近のは違うんだろうか。
あと insert-file-contents-literally は全部読み込むわけじゃなく、指定した範囲だけ読み込むから
とんでもなく大きい場合でも問題ないよ。
(defun read-dword (filename pos)
(with-temp-buffer
(set-buffer-multibyte nil)
(insert-file-contents-literally filename nil pos (+ pos 4))
(let ((result 0))
(dotimes (c 4 result)
(setq result (+ (lsh result 8)
(string-to-char (buffer-substring (- 4 c) (- 5 c))))))
))) <>
名無しさん@お腹いっぱい。<>sage<>2013/11/14(木) 00:49:11.09 <> >>828
サンプルありがとうございます。期待通りに動作しました。
insert-file-contents-literallyは&optionalの引数(beg end)で読み込む範囲を指定できるのですね。
ちゃんとマニュアル読むべきでした。すみません。
あと自分のはemacs 23.4.1ですが整数型はsigned 29bitまでしか扱えませんでした。 <>
名無しさん@お腹いっぱい。<>sage<>2013/11/14(木) 12:22:56.48 <> >>824
有難うございます! <>
名無しさん@お腹いっぱい。<>sage<>2013/11/16(土) 17:18:42.52 <> Emacsがどういうオプションでビルドされたかを見るにはどうすればいい? <>
名無しさん@お腹いっぱい。<>sage<>2013/11/16(土) 20:09:14.64 <> system-configuration-options でわかるみたいだ <>
名無しさん@お腹いっぱい。<>sage<>2013/11/17(日) 05:15:43.15 <> たまに *Quail Completions* ってバッファが出来てるんですけど
これは何者ですか? <>
名無しさん@お腹いっぱい。<>sage<>2013/11/17(日) 08:36:04.83 <> ソースをagでググれば
emacs/lisp/international/quail.el
にありますね。
簡易入力メソッドフレームワーク "qual" のつくるバッファ。
Emacsの入力フレームワークは「たまご」egg(たくさんまたせてごめんなさい)
→eggの簡易版「うずらのたまご」quail.el
→quailの簡易版「こまどりのたまご」robin.el
という形になっていて、ちょっとしたものをつくる場合は robin.el は便利。 <>
名無しさん@お腹いっぱい。<>sage<>2013/11/17(日) 10:02:17.99 <> >>834
ありがとうございます。そういう事だったのですね。
Win や Mac の IME しか使ったことなくて分かってませんでした。
単に \ を入力したつもりが Ctrl + \ を押しちゃってただけでした・・・ <>
名無しさん@お腹いっぱい。<><>2013/11/18(月) 00:53:06.94 <> smartrepを導入したのですが、smartrepによる連続操作実行後にカーソルキーによるカーソルの移動や
Deleteキーによる文字削除の動作を行うと、smartrepの解除と共にアルファベットが入力されてしまうのですが
これを回避する方法はありますか??
C-fやC-b、C-dを使えば問題ないのですが・・
環境は Windows + Cygwin です。 <>
831<>sage<>2013/11/18(月) 01:52:01.08 <> >>832
おお!これだ!ありがとう! <>
名無しさん@お腹いっぱい。<><>2013/11/18(月) 15:46:47.28 <> >>836
Mac使ってて、そういう現象は確認できなかったけど…
他のライブラリが影響を及ぼしていないかを確認するため、
素Emacsでsmartrep以外全てオフにした最小限の状態でも
同じ現象が起こるか確認できる?それで起こるなら
そのコードを張ってみてください… <>
名無しさん@お腹いっぱい。<>sage<>2013/11/19(火) 00:55:47.81 <> >>838
Macで.emacs.dを削除して最小構成でやってみたのですが、
C-x oooooで画面を切り替えたあと→を押すと「C」と入力されてしまいます。
設定は以下になります。 <>
名無しさん@お腹いっぱい。<>sage<>2013/11/19(火) 01:01:35.18 <> (require 'package)
(add-to-list 'package-archives '("marmalade" . "略"))
;; load-pathを追加する関数を定義します.
(略
(add-to-load-path "elisp")
(add-to-load-path "elpa")
;;; C-x o,o,o...で画面切り替えを行えるようにします。C
(require 'smartrep)
(smartrep-define-key global-map (kbd "C-x")
'(("o" . 'other-window))) <>
名無しさん@お腹いっぱい。<><>2013/11/19(火) 06:15:48.72 <> >>840
こうさん。こちらじゃ再現しない。最小限構成にしても出るのなら、
もうEmacsそのものの環境の問題とかじゃないかな?
でも確かに C-x o のsmartrep 化は便利だなぁ。
いつも windmove で動いてたけどこっちに乗り換えてみるか。 <>
名無しさん@お腹いっぱい。<>sage<>2013/11/19(火) 08:24:01.35 <> >>841
最後まで付き合ってくれてありがとうございました。
これを機会にC-f,b,n,pを使用した操作に切り替える
という手法で解決しようとおもいます! <>
名無しさん@お腹いっぱい。<>sage<>2013/11/19(火) 21:06:07.19 <> カーソルキーがエスケープシーケンスな環境とか。 <>
名無しさん@お腹いっぱい。<>sage<>2013/11/19(火) 22:07:38.27 <> 24.4とか、25って、どうなってるん?
最近リリースないな <>
名無しさん@お腹いっぱい。<>sage<>2013/11/19(火) 23:02:57.58 <> 24.4のリリースを検討し始めたとこだね。
俺的な改善点はeshellでgitのログとか見れるようになるとこだな。(わかる人しかわからんか) <>
名無しさん@お腹いっぱい。<>sage<>2013/11/19(火) 23:15:58.99 <> っていうかgitのログすら見れんシェルを付けるなと。
eshellって名乗るぐらいなら
gitログくらいグラフィカルに表示しろ。 <>
名無しさん@お腹いっぱい。<>sage<>2013/11/19(火) 23:20:46.75 <> eshell なんかまだ使ってる人いるんだな <>
名無しさん@お腹いっぱい。<>sage<>2013/11/20(水) 00:07:56.62 <> eshellはるびきちさんが推してたので一応使ってる <>
名無しさん@お腹いっぱい。<>sage<>2013/11/20(水) 01:27:10.80 <> つうかeshell以外なに使うんだ? <>
名無しさん@お腹いっぱい。<>sage<>2013/11/20(水) 02:11:18.24 <> 普通にshell-mode
と見せかけて通はterm、これ
素人が手を出すとバッファからぬけられなくなって往生する諸刃の剣 <>
名無しさん@お腹いっぱい。<>sage<>2013/11/20(水) 09:23:43.23 <> 僕は ansi-term ちゃん! <>
名無しさん@お腹いっぱい。<>sage<>2013/11/20(水) 09:33:37.82 <> eshellの利点はwindows上でMSYSとか入れなくても、とりあえずcd,ls,cpとか使える事だな。
後はgnuwin32とかからgrepなんかの必須コマンドを落としてくればOK <>
名無しさん@お腹いっぱい。<>sage<>2013/11/20(水) 09:55:01.65 <> eshellはなんつーか内部処理の実装が効率悪すぎなんだよね
安全側に寄せてるんだろうけど思わぬ所でシステムコールしまくりみたいな <>
名無しさん@お腹いっぱい。<>sage<>2013/11/20(水) 12:06:55.65 <> 基本 shell-mode で、たまに ansi-term かな。 <>
名無しさん@お腹いっぱい。<>sage<>2013/11/20(水) 12:30:42.98 <> Unix 系 OS 上での eshell のいいところってなんだろう <>
名無しさん@お腹いっぱい。<><>2013/11/20(水) 15:30:20.84 <> やっぱりカラフルterm+ ♪ <>
名無しさん@お腹いっぱい。<>sage<>2013/11/20(水) 16:52:17.10 <> eshell はファイルを一気に開いたりするにはいい <>
名無しさん@お腹いっぱい。<>sage<>2013/11/20(水) 17:11:59.76 <> find-file でもワイルドカード使えるよね普通に <>
名無しさん@お腹いっぱい。<>sage<>2013/11/21(木) 00:12:14.72 <> eshellのもうひとつ便利な機能は**/*.hとかで、ディレクトリを再帰的に辿ってpathを生成してくれるところ <>
名無しさん@お腹いっぱい。<>sage<>2013/11/21(木) 01:07:11.71 <> shell-mode 弄りすぎて他のは使えなくなってしまった <>
名無しさん@お腹いっぱい。<>sage<>2013/11/21(木) 14:28:57.98 <> マクロについて質問です。
elisp の info によると、マクロ内で let を使って変数を作った場合
引数内でのその変数名を上書きしてしまうことを問題点としてあげています。
http://www.gnu.org/software/emacs/manual/html_mono/elisp.html#Surprising-Local-Vars
この例の中で、(let ((max 0)) ...) ではなく (let ((tempvar (make-symbol "max"))) ...) を使えばいいと書いてあるのですが、
これって max については intern されないので問題ないですが
結局 tempvar については同じ問題をはらんでますよね? <>
名無しさん@お腹いっぱい。<>sage<>2013/11/21(木) 14:42:30.04 <> その上の例のmaxはマクロが展開された結果に残るけど、
下の例のtempvarは展開時に使うだけで展開された結果には残らない。 <>
名無しさん@お腹いっぱい。<>sage<>2013/11/21(木) 15:05:26.93 <> >>862
なるほど、マクロの理解が足りてませんでした。
評価結果で置換されるわけだから外側の let は置換後の結果にあらわれてこないと。
(defmacro foo1 () (bar)) と (defmacro foo2 () '(bar)) の違いということですね。
いまいちなんでマクロ本体にシングルクォートを置くのかわからず使っていました。
ありがとうございます。 <>
名無しさん@お腹いっぱい。<>sage<>2013/11/21(木) 15:16:24.70 <> もう一つ質問です。
intern-soft で非 nil が返ってくるのに obarray の中にシンボルが見つからないということはありうるのでしょうか。
emacs -q で起動した emacs に対して以下を評価しました:
(require 'cl-lib)
(intern-soft "cl-find") ; => cl-find
(cl-find (lambda (sym) (string-match "^cl-find" (symbol-name sym))) obarray) ; => nil
intern-soft では cl-find が定義されてるように返ってくるのですが、
cl-find で検索した結果は nil となってしまいました。
実際に obarray を展開してインクリメンタルサーチしても実際中に入っていないように見えます。 <>
名無しさん@お腹いっぱい。<>sage<>2013/11/21(木) 15:45:04.87 <> mapatoms で vector (obarray) をお探しくだせぇ
参考
(let ((vec (make-vector 1 nil)))
(intern "a" vec)
(intern "b" vec)
(list
(intern-soft "a" vec)
(intern-soft "b" vec)
(intern-soft "c" vec))) <>
名無しさん@お腹いっぱい。<>sage<>2013/11/21(木) 15:50:00.99 <> obarray より cl-find の使い方からだな <>
名無しさん@お腹いっぱい。<>sage<>2013/11/21(木) 16:02:45.34 <> >>865
ありがとうございます。
mapatoms で探索させたところ見つかりました。
(require 'cl-lib)
(let ((found nil))
(mapatoms (lambda (sym) (when (string-match "^cl-find" (symbol-name sym))
(setq found t))))
found) ;; => t
vector ⊂ sequence だと思っていたのですが必ずしもそういうわけでもないってことなんでしょうかね
(pp obarray) させた結果にも cl-find が出てきませんでしたし。
もうすこし vector について勉強してみます。 <>
名無しさん@お腹いっぱい。<>sage<>2013/11/21(木) 16:13:23.22 <> (length obarray) と mapatoms で数えた要素数が異なるのもなんでかわからない・・・
(let ((count 0))
(mapatoms (lambda (sym) (setq count (1+ count))))
count) ;; length の結果とかなり異なる (ex 1511 vs 22728 など)
length のドキュメントを見る限り普通に vector にも使えそうな感じではあるのですが。 <>
名無しさん@お腹いっぱい。<>sage<>2013/11/21(木) 16:20:27.07 <> 自己解決しました。
obarray は vector ではあるが、中身は hash 構造になっているので mapatoms 以外での探索は出来ないとのこと。
ちゃんと obarray の説明の所に書いてありますね。length での値が異なるのも納得できました。
http://www.gnu.org/software/emacs/manual/html_node/elisp/Creating-Symbols.html <>
名無しさん@お腹いっぱい。<>sage<>2013/11/21(木) 16:21:05.35 <> 解決したらしいけどおまけ。
http://www.mew.org/~kazu/doc/elisp/hash.html <>
名無しさん@お腹いっぱい。<>sage<>2013/11/21(木) 16:22:27.85 <> mapatomsのドキュメントを読んだ感じだと
http://www.geocities.co.jp/SiliconValley-Bay/9285/ELISP-JA/elisp_103.html
obarrayがフラット(?)なvectorじゃないだけじゃない?
emacs lispを余り知らないからはっきりと言えないけど
vector ⊂ sequence は正しいんじゃない? <>
名無しさん@お腹いっぱい。<><>2013/11/21(木) 19:05:20.92 <> imaximaのgnuplot連携ですが外部のgnuplotを呼び出さずにインラインで描画させる方法有りませんか? ( ; ; )誰か助けてorz <>
名無しさん@お腹いっぱい。<>sage<>2013/11/21(木) 19:22:24.33 <> 呼び出さないってのは gnuplot の window に描画させるんでなく、emacs の window 内に表示させたいってことだよね?
gnuplot がない環境でも動くようにって話ならそりゃ無理じゃねえの?としか。 <>
名無しさん@お腹いっぱい。<>sage<>2013/11/21(木) 19:42:55.65 <> rskkservはruby 1.9に対応してないようですが、
これは簡単には動きませんか? <>
名無しさん@お腹いっぱい。<><>2013/11/21(木) 19:53:42.68 <> >>873
gnuplot自体は有ってgnuplot-modeでプロセス作ってコマンド入れればインラインで描いてくれます。
imaximaで使うgnuplotをemacs外部のプロセスじゃなくemacs内のプロセスでインラインにならないかと。 <>
名無しさん@お腹いっぱい。<><>2013/11/21(木) 20:00:30.54 <> >>872
Imaximaのサイトやブログに書いてあったよ。
Tutorial of Imaxima inline graph
sites.google.com/site/imaximaimath/tutorial-of-imaxima/tutorial-of-imaxima-inline-graph
draw関数によるグラフのプロット 入門編 - Maximaでつづる数学の旅
d.hatena.ne.jp/jurupapa/20110613/1307977715
> imaximaではグラフをEmacsのバッファの中にインラインで表示することができ
> るのですが、そのために、draw2d()の代わりにwxdraw2d()関数を使用します。
> 引数などの書式は両者とも全く同じです。 <>
名無しさん@お腹いっぱい。<><>2013/11/21(木) 20:33:40.54 <> >>876
おおおお、(≧∇≦)
ありがとうございます(^o^)/ <>
名無しさん@お腹いっぱい。<><>2013/11/24(日) 06:56:36.40 <> 今更ながら24.3にしてみたですけど、
Warning: function `map' from cl package called at runtime
これはどうすれば黙らせられます? <>
名無しさん@お腹いっぱい。<>sage<>2013/11/24(日) 10:19:50.70 <> byte-compile-warnings から cl-functions を抜けばいい。
cl-functions だけ外してずらずら列挙するか、'(not cl-functions) とか設定するとか。 <>
名無しさん@お腹いっぱい。<>sage<>2013/11/24(日) 10:22:34.51 <> あと正攻法でいくならで cl-map に置き換えるとか。
直接書き換えないんでも バージョンみて defalias して上げりゃいいと思う
ただ cl-flet なんかは flet と挙動自体が変わってて cl-letf にしないとダメな場合もあるから
単純に defalias すればいいってわけでもなかったりするのもある <>
名無しさん@お腹いっぱい。<>sage<>2013/11/25(月) 11:31:24.63 <> C++/CLI を semantic が理解できるようにする方法があったら教えてくださいませ。
c++-modeで開いてみたときの印象からは、 ^ を *, & と同じように扱えれば何とかなりそうなんだけど、
どこをどうすればいいのかがわからなくて。
Doxgenタイプのコメントをつけたいのだけれど、いちいち手で作るのは勘弁してほしいというだけなんで、
semantic使わないで、関数のコメントのテンプレートを生成する方法があれば、そちらもよろしく。 <>
名無しさん@お腹いっぱい。<>sage<>2013/11/25(月) 12:05:42.27 <> 自分で調べろクソが <>
名無しさん@お腹いっぱい。<>sage<>2013/11/25(月) 16:33:52.79 <> そこら辺はもう MS の VC 使うとかの方が健全な解な気がしてる <>
名無しさん@お腹いっぱい。<>sage<>2013/11/25(月) 17:54:53.59 <> C# なら /// でコメントのテンプレート吐いてくれるからいいんだけれど、
C++ だと吐いてくれないから Semantic で何とかならないかと
もしかして、最近のVCではできたりするのかな?
2013 Express インストールしてみる <>
名無しさん@お腹いっぱい。<>sage<>2013/11/25(月) 21:35:52.50 <> /usr/share/emacs/lisp/cedet/semantic/bovine/c.el ぐらいを改造してC++に対応させる、のは無理か。
テンプレートだけなら /usr/share/emacs/etc/srecode/cpp.srt に加筆。 <>
名無しさん@お腹いっぱい。<>sage<>2013/11/25(月) 23:57:40.26 <> 正規表現をつかって検索した単語にmultiple-cursorsすることってできますか?? <>
名無しさん@お腹いっぱい。<>sage<>2013/11/26(火) 00:27:18.08 <> 繰り返しが含まれる正規表現なんかだとなんかあやしい結果になりそうだなそれ
a*b みたいなのだと aaaaaaaaab とか aab に同時にカーソルが現れて欲しいってことでしょ? <>
名無しさん@お腹いっぱい。<>sage<>2013/11/27(水) 13:41:39.57 <> windowsのgnupackでemacsを使っています
twittering-mode.elでmaster passwordを使ってタイムラインを開こうとすると
パスワードを入力してenterを押したとたん
"the authorized token is loaded"
というメッセージがエコー欄に表示されてEmacs自体が完全に固まることがあります
そのときは強制終了させなければいけません
正常にタイムラインが表示されることがほとんどなのですが、エラーの結果が重大なので気がかりです
どのような原因が考えられるのでしょうか <>
名無しさん@お腹いっぱい。<>sage<>2013/11/27(水) 16:29:10.23 <> リンク可能なテキストの作成について質問します
テキスト,ファイル名,行番号からなるリストが複数あります
'(("test text1" "~/foo/test1" 3)
("test text2" "~/foo/test2" 5))
これをもとにテキストの文字列全体にファイル名のその行番号を紐付けてリンクして
文字列として返すようにしたいのですがどうすればいいのでしょうか
http://www.gnu.org/software/emacs/manual/html_node/elisp/Changing-Properties.html
これのset-text-propertyを使うとは思うのですが、propをどういじればリンクできるかが分かりませんでした
どうぞよろしくお願いします <>
名無しさん@お腹いっぱい。<>sage<>2013/11/27(水) 16:34:45.14 <> >>888
NTEmacs 固有っぽい気がする
http://anago.2ch.net/test/read.cgi/software/1325573999/ <>
名無しさん@お腹いっぱい。<>sage<>2013/11/27(水) 16:35:57.32 <> >>889
返すってのはツールチップみたいに表示したいってこと? <>
名無しさん@お腹いっぱい。<>sage<>2013/11/27(水) 20:57:59.73 <> >>891
889です
すみません言葉足らずでした
ツールチップの表示ではなくてリンクを埋め込んだテキストを普通に表示する、という意味です
org-modeでurlを書くと自動的にクリッカブルな文字列になりますが
あのようなものをorg-mode以外でも使いたいのです <>
名無しさん@お腹いっぱい。<>sage<>2013/11/27(水) 21:04:29.97 <> 普通に表示するってのは、マウスクリックでそのテキストにリンクしてるファイルを find-file して
リンクしてる行までジャンプして表示する、ってことでいいのかな。
http://www.gnu.org/software/emacs/manual/html_node/elisp/Clickable-Text.html#Clickable-Text
クリッカブルな文字列のプロパティの作り方はここでよさそう。
find-file して forward-line する関数をくっつけてやればいいんじゃないのかな。 <>
名無しさん@お腹いっぱい。<>sage<>2013/11/27(水) 21:44:57.26 <> ありがとうございます。やってみます。 <>
878<>sage<>2013/11/28(木) 02:04:03.37 <> >>879>>880
すみません遅くなりましたが、ありがとうございましたm(_ _)m
とりあえず byte-compile-warnings にしてみます <>
名無しさん@お腹いっぱい。<>sage<>2013/11/28(木) 14:31:41.55 <> >>890
ありがとうございます。NTEmacsスレで聞いてみます <>
名無しさん@お腹いっぱい。<>sage<>2013/11/28(木) 14:32:48.49 <> emacsスレからこちらに誘導されてきました
windowsのgnupackでemacsを使っています
twittering-mode.elでmaster passwordを使ってタイムラインを開こうとすると
パスワードを入力してenterを押したとたん
"the authorized token is loaded"
というメッセージがエコー欄に表示されてEmacs自体が完全に固まることがあります
そのときは強制終了させなければいけません
正常にタイムラインが表示されることがほとんどなのですが、エラーの結果が重大なので気がかりです
どのような原因が考えられるのでしょうか <>
名無しさん@お腹いっぱい。<>sage<>2013/11/28(木) 14:59:23.62 <> 出戻ってんじゃねえかw <>
名無しさん@お腹いっぱい。<>sage<>2013/11/28(木) 15:46:22.94 <> すみません
素で間違えてしまいました <>
名無しさん@お腹いっぱい。<>sage<>2013/11/28(木) 16:16:24.53 <> >>897
やべー少しウケたw <>
名無しさん@お腹いっぱい。<>sage<>2013/11/28(木) 21:43:45.34 <> 微笑ましい <>
名無しさん@お腹いっぱい。<>sage<>2013/11/29(金) 05:31:41.64 <> evil使ってるとforward-sexpが行末で止まってしまうんですが、これはevil-move-cursor-backをnilにする以外では避けようがないんですかね <>
名無しさん@お腹いっぱい。<>sage<>2013/11/30(土) 02:53:35.49 <> >>902
それ、evil 関係なくない?
うちでは、普通に動いてるっぽいけど。 <>
名無しさん@お腹いっぱい。<>sage<>2013/11/30(土) 09:09:31.90 <> anything-c-moccor-occur-by-moccorを
あらかじめキーワードを指定した状態で呼び出したいです。
ミニバッファに
patter:キーワード
↑キーワードがすでに打ち込まれた状態でキーバインドから呼び出したいのですが、
わかる方いらっしゃいますか? <>
名無しさん@お腹いっぱい。<>sage<>2013/11/30(土) 09:50:04.68 <> >>904
これかな。
(anything-c-moccur-occur-by-moccur-base "キーワード") <>
名無しさん@お腹いっぱい。<>sage<>2013/11/30(土) 10:56:30.83 <> >>905
実行できました。
ありがとうございます!! <>
名無しさん@お腹いっぱい。<><>2013/11/30(土) 14:51:51.78 <> >>903
あんまりEmacsに慣れてないからよくわかんないんだけど
・閉じ括弧でC-M-f(forward-sexp)を呼ぶと、モード・位置関係なく Scan error: "Containing expression ends prematurely" と出てカーソルは移動しない
・それ以外の場合はEmacsモードでは普通に動作する
・evilのnormalステートだとカーソルが行の最後の要素の一番後ろの文字の上に乗った状態で引っかかる。閉じ括弧じゃないならエラーメッセージは出ないけどやっぱり動かない
・evil-move-cursor-backをnilにするか、行末にスペースがあるとちゃんと次の要素に飛んでくれる
っていう状態です
誰か助けて
ちなみに
GNU Emacs 24.3.1 (i386-mingw-nt6.0.6002)で
evilのバージョンは1.0.8です <>
名無しさん@お腹いっぱい。<>sage<>2013/11/30(土) 14:55:22.09 <> vimに移るかevilを捨てるか選んで <>
名無しさん@お腹いっぱい。<>sage<>2013/11/30(土) 17:21:04.87 <> evilのメリットってctrlを使わないでカーソル移動ができることなのかな
そうだとするならばモード移動の切り替えも面倒な気がするけれど
慣れてしまったせいかemacsのctrl+n, ctrl+pの方がモードを気にせず楽だと思うけれどね <>
名無しさん@お腹いっぱい。<>sage<>2013/11/30(土) 17:47:39.09 <> >>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 で使ってすましてる。 <>
名無しさん@お腹いっぱい。<>sage<>2013/11/30(土) 19:15:09.87 <> 変更されているバッファを一度にすべて保存するコマンドはありますか?
今はemacs終了時に変更されているバッファを保存するかどうか聞かれるのでyを何度も押しています <>
名無しさん@お腹いっぱい。<>sage<>2013/11/30(土) 19:19:09.40 <> >>911
save-some-buffers に universal-argument を付けて実行。
C-u C-x s かな。
buffer-save-without-query を t にしておけば C-x s で問答無用で保存してくれるようになる。
そのかわり終了時にも聞かれなくなるかもしれない。 <>
名無しさん@お腹いっぱい。<>sage<>2013/11/30(土) 21:16:51.36 <> >>912
ありがとうございます <>
名無しさん@お腹いっぱい。<><>2013/11/30(土) 23:10:44.15 <> >>910
ほんとだ、insertステートだと問題なく動く
多分、normalステートだと行末の改行にカーソルが乗らずに一文字戻るって仕様なんだね
理屈は分かったから後はこっちで色々いじってみるよ
どうもありがとう <>
名無しさん@お腹いっぱい。<>sage<>2013/12/01(日) 13:14:05.85 <> smart-compile とか flymake とか quickrun ってなんか上手に統合出来そうな気もするんだけど
すでにそういうパッケージってあったりするんだろうか <>
名無しさん@お腹いっぱい。<>sage<>2013/12/03(火) 12:17:55.72 <> そう思うなら自分で探してみたらいーんじゃないでしょうかね <>
名無しさん@お腹いっぱい。<>sage<>2013/12/04(水) 08:41:44.37 <> (interactive "s表示用テキスト : ")
ミニバッファ側
表示用テキスト : 「」
「」に初期値を入れておきたいのですが、やりかたが見つからず。
C-x C-fのようなかんじです。
よろしくおねがいします。 <>
名無しさん@お腹いっぱい。<>sage<>2013/12/04(水) 11:28:06.67 <> それこそその find-file を見てみりゃわかると思うけど
単に自前でプロンプト出す関数を使ってるだけの話だね。
(defun with-default-input (text)
(interactive (list (read-input "Text: " "hello, world")))
(message "Input text: %s" text)) <>
名無しさん@お腹いっぱい。<>sage<>2013/12/05(木) 00:14:15.27 <> >>918
ありがとうございます。
できました。
lisp全体にですが理解が浅いので助かります。
read-inputってはじめて知りましたw <>
名無しさん@お腹いっぱい。<>sage<>2013/12/05(木) 02:34:57.31 <> popup-select-windowの表示方法でバッファ一覧を確認できないのでしょうか?
http://d.hatena.ne.jp/khiker/20100924/popup_select_window のスクリーンショットが一番わかりやすいです。 <>
名無しさん@お腹いっぱい。<>sage<>2013/12/05(木) 11:05:36.28 <> 説明読んだがどういう動きするのかよくわからなかった・・・
3つ以上に分割してる時に選んだ先のウィンドウをわかりやすく表示するってこと? <>
名無しさん@お腹いっぱい。<>sage<>2013/12/05(木) 12:40:22.02 <> 使ったらすぐ分かった。ウィンドウが 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))))
)) <>
名無しさん@お腹いっぱい。<>sage<>2013/12/05(木) 12:56:33.94 <> 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)
)))) <>
名無しさん@お腹いっぱい。<>sage<>2013/12/05(木) 13:03:36.67 <> >>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))))) <>
名無しさん@お腹いっぱい。<>sage<>2013/12/05(木) 16:29:41.76 <> smartrep.elでenterキーにコマンドを割り当てたいです
keyboard-quitを割り当てたいのですが("<enter>" . 'keyboard-quit)と書いても何も起きませんでした <>
名無しさん@お腹いっぱい。<>sage<>2013/12/05(木) 19:46:43.05 <> <return> じゃないの? <>
名無しさん@お腹いっぱい。<>sage<>2013/12/05(木) 22:33:13.02 <> >>926
そうでした... <>
名無しさん@お腹いっぱい。<>sage<>2013/12/06(金) 01:23:33.45 <> えんたあああああああああああああああああああいああああああああああああ!!!!
魔がさした。反省はしてない <>
名無しさん@お腹いっぱい。<>sage<>2013/12/06(金) 09:23:32.56 <> entire? <>
名無しさん@お腹いっぱい。<>sage<>2013/12/06(金) 10:10:44.44 <> しかしキーボードにはEnterって書いてあるのに、Returnキーとはこれいかに
昔の名残か <>
名無しさん@お腹いっぱい。<><>2013/12/06(金) 13:36:03.15 <> enterは電算端末
returnはタイプライター、パンチカードの名残り
押すとキャリッジがリターンしたから <>
名無しさん@お腹いっぱい。<>sage<>2013/12/06(金) 14:47:30.59 <> 元々はリターンキーだったろ。エンターなんて最近。PC-98もリターンキーだったろ? <>
名無しさん@お腹いっぱい。<><>2013/12/06(金) 15:11:35.54 <> 大昔から「入力」「送信」なんて表記もあったよ <>
名無しさん@お腹いっぱい。<>sage<>2013/12/06(金) 17:15:48.23 <> >>933
キーボードに? <>
名無しさん@お腹いっぱい。<>sage<>2013/12/06(金) 18:04:31.55 <> 送信キーは何かで見たな。
大学の図書館にあった検索端末だったかな。 <>
名無しさん@お腹いっぱい。<>sage<>2013/12/06(金) 18:43:51.63 <> Macのjisキーボードには
enter / return両方刻印されてるな。 <>
名無しさん@お腹いっぱい。<>sage<>2013/12/06(金) 22:53:20.42 <> compile について質問です。
エラーが発生するまで *compilation* ウィンドウを開かない方法はないでしょうか? <>
名無しさん@お腹いっぱい。<>sage<>2013/12/06(金) 23:14:15.73 <> http://yohshiy.blog.fc2.com/blog-entry-132.html
ここにそれっぽい事が書いてある <>
名無しさん@お腹いっぱい。<>sage<>2013/12/06(金) 23:38:05.74 <> >>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)))))) <>
名無しさん@お腹いっぱい。<>sage<>2013/12/07(土) 00:31:47.18 <> >>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))))) <>
名無しさん@お腹いっぱい。<>sage<>2013/12/07(土) 12:33:27.07 <> compilation buffer を最初から表示させないのを作ってみた。エラーの時だけ表示される。
font-lock のとこもうちょっとなんとかならんのかしら。
エラーが起きたかどうかをテキストプロパティから判別してるんだけど、
font-lock が遅延評価かなんかしてるせいか display-buffer しないとプロパティが設定されない。
fontify-buffer は font-lock-mode だと機能してくれなくて 一旦 font-lock-mode 解除とか間抜けなことするはめに。
(defadvice compilation-start (around compile-silently activate)
"コンパイル時にバッファを表示しない."
(cl-letf (((symbol-function 'display-buffer) 'ignore))
ad-do-it))
;; コンパイルエラー時のみ *compilation* バッファ表示
(add-hook 'compilation-finish-functions
(lambda (buffer msg)
(with-current-buffer buffer
(font-lock-mode -1)
(font-lock-fontify-buffer)
(font-lock-mode 1)
(when
(text-property-not-all (point-min) (point-max)
'compilation-message nil)
(display-buffer buffer))))
) <>
名無しさん@お腹いっぱい。<>sage<>2013/12/07(土) 12:56:08.08 <> きたねーコード貼るな
日記にでも書いてろ <>
名無しさん@お腹いっぱい。<>sage<>2013/12/07(土) 12:56:19.26 <> なにも表示させたくないならflymakeとかも検討してみたら? <>
名無しさん@お腹いっぱい。<>sage<>2013/12/07(土) 14:06:43.00 <> emacs 上でテストを書く時にサポートしてくれるようなパッケージってありますでしょうか?
具体的には本体とテストを簡単に行き来出来るようなパッケージを探しています。 <>
名無しさん@お腹いっぱい。<>sage<>2013/12/07(土) 17:25:01.89 <> そんなものありません <>
名無しさん@お腹いっぱい。<><>2013/12/07(土) 22:57:48.90 <> >>944
`ff-find-other-file' を使えば出来る気がする。
そう思ってググったらCofeeScript用の設定例が見つかった。
https://github.com/yasuyk/coffee-fof/blob/master/coffee-fof.el <>
名無しさん@お腹いっぱい。<>sage<>2013/12/08(日) 09:04:29.88 <> 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))) <>
名無しさん@お腹いっぱい。<>sage<>2013/12/08(日) 10:37:49.54 <> 設定ファイル内で、
コンパイル時にライブラリが存在してるかどうかチェックして require したり
実行ファイルが存在するかチェックして設定したり、なんてのがよくありますが、
Cのプリプロセッサみたいにコンパイル時にチェックを済ませてしまうことって出来ないんでしょうか?
(if (executable-find "ruby") (setq hoge "aaa"))
みたいなのがあった場合、コンパイル時に executable-find を実行、if の条件判断までやってしまって
ruby がない場合は elc ファイル内になにも残らず、存在する場合は setq だけ残したいです。 <>
名無しさん@お腹いっぱい。<>sage<>2013/12/08(日) 11:03:21.40 <> マクロを使え
(defmacro if-on-compile (cond &rest form)
(when cond `(progn ,@form))) <>
名無しさん@お腹いっぱい。<>sage<>2013/12/08(日) 11:17:07.24 <> common lispなら
(if #.(executable-find "ruby") (setq hoge "aaa"))
でいけると思う。
emacs lispでも#.は使えるみたいだけど狙った結果になるかわからん <>
名無しさん@お腹いっぱい。<>sage<>2013/12/08(日) 11:21:30.61 <> すまん#.使えないやん <>
名無しさん@お腹いっぱい。<>sage<>2013/12/08(日) 12:06:16.44 <> >>949
それだと cond が評価されない気がする
(defmacro if-on-compile (cond &rest form)
(when (eval cond) `(progn ,@form))) <>
名無しさん@お腹いっぱい。<>sage<>2013/12/08(日) 12:37:34.71 <> (when (locate... をそれに全部置き換えて eval-when-compile を駆使しまくった結果・・・・
emacs-init-time が 0.9 から 0.8 になった
すげえ虚しい
修正に10分くらいはかかってそうだから 6000回 は emacs を起動しないと元が取れない <>
名無しさん@お腹いっぱい。<>sage<>2013/12/08(日) 13:30:22.30 <> emacsの起動時間が0.5秒を超えている奴は起動するたびに人生を無駄使いしていると悟るべき。 <>
名無しさん@お腹いっぱい。<>sage<>2013/12/08(日) 15:27:05.37 <> emacsなんて一週間以上そのまま使い続けたりするし <>
名無しさん@お腹いっぱい。<>sage<>2013/12/08(日) 15:36:26.12 <> 俺も再起動は滅多にしないな
するとしたらOSをリブートしたときとかinit.el関連を書き換えたときくらいかな
強制終了するまでは起動しっぱなしだわ <>
名無しさん@お腹いっぱい。<>sage<>2013/12/08(日) 16:02:39.75 <> navi2ch とか wanderlust とか twittering-mode を使わなくなったら
わりと頻繁に終了させるようになった。 <>
名無しさん@お腹いっぱい。<>sage<>2013/12/08(日) 16:29:26.42 <> shell-mode が快適すぎて終了させる気にならない <>
名無しさん@お腹いっぱい。<>sage<>2013/12/08(日) 16:49:43.64 <> がんがん再起動するけど <>
名無しさん@お腹いっぱい。<>sage<>2013/12/08(日) 16:55:47.17 <> >>953
君にとっては小さな0.1秒でも、
1000年後、2000年後の子孫にとっては貴重な100時間になるかもしれない。
これこそが俺達がパフォーマンスチューニングをする最大の理由なんだ。 <>
名無しさん@お腹いっぱい。<>sage<>2013/12/08(日) 17:06:54.96 <> emacs-uptime が 8時間こえたことない。たぶん。 <>
名無しさん@お腹いっぱい。<>sage<>2013/12/08(日) 17:08:10.01 <> self-insert-command の処理時間短縮に成功したなら誇っていい <>
名無しさん@お腹いっぱい。<>sage<>2013/12/08(日) 17:29:32.30 <> shell-mode で exit した時にバッファやウィンドウも閉じて欲しいんですがどのようにしたらいいんでしょうか?
それっぽいフックがないか探したのですが見当たりませんでした。 <>
963<>sage<>2013/12/08(日) 17:50:04.03 <> 自己解決しました。
ぐぐったら process-sentinel に設定してる例があったのでそれを参考に作ってみました。
(add-hook 'shell-mode-hook
(lambda ()
(set-process-sentinel (get-buffer-process (current-buffer))
(lambda (process event)
(let* ((buf (process-buffer process))
(win (get-buffer-window buf)))
(when (and win (not (one-window-p)))
(delete-window win))
(kill-buffer buf)))))) <>
名無しさん@お腹いっぱい。<><>2013/12/08(日) 23:51:05.87 <> >>960
パフォーマンスチューニングする時間にプログラム書いて金に変え、cpuスペックを2倍にした方が合理的。
あるいは、複数端末にして使い分けるとか。 <>
名無しさん@お腹いっぱい。<>sage<>2013/12/09(月) 22:54:55.89 <> しかし最新のCPUにしてもEmacsは重く感じる…
光速を越える事が出来ないように、Emacsが軽くなることは永遠にないんだろうね。 <>
名無しさん@お腹いっぱい。<>sage<>2013/12/09(月) 23:01:05.03 <> 一昔前のノートPCでemacs24.3だけど軽いよ <>
名無しさん@お腹いっぱい。<><>2013/12/09(月) 23:39:12.96 <> >>966
うはw
>>967 の報告で話盛ったのが即バレしてるww
だっさー <>
名無しさん@お腹いっぱい。<>sage<>2013/12/10(火) 04:15:12.92 <> >>941のだと grep とかの compilation-start を使う他の関数まで影響が出るので書き換えた
(dolist (func '(compile recompile))
(eval `(defadvice ,func (around ,(intern (format "%s-silently" func)) activate)
"エラー発生時のみ *compilation* バッファ表示"
(cl-letf (((symbol-function 'display-buffer) 'ignore)
((symbol-function 'set-window-start) 'ignore)
((symbol-function 'set-window-point) 'ignore))
(let (compilation-start-hook) ; local hook ではなく compile のみの hook
(add-hook 'compilation-start-hook
(lambda (proc)
(make-local-variable 'compilation-finish-functions)
(add-hook 'compilation-finish-functions
(lambda (buffer msg)
(with-current-buffer buffer
(font-lock-mode -1)
(font-lock-fontify-buffer)
(font-lock-mode 1)
(if (or (not (string-match "finished" msg))
(text-property-not-all (point-min) (point-max)
'compilation-message nil))
(display-buffer buffer)
(when (get-buffer-window buffer)
(delete-window (get-buffer-window buffer))))))
)))
ad-do-it))))
) <>
名無しさん@お腹いっぱい。<>sage<>2013/12/11(水) 10:11:26.40 <> ゴミはってんじゃねえよ <>
名無しさん@お腹いっぱい。<>sage<>2013/12/11(水) 18:53:48.05 <> add-hook とか設定を書き換えたときに
設定を有効にするにはどうしたらいいの
再起動するしかないかな <>
名無しさん@お腹いっぱい。<>sage<>2013/12/11(水) 19:03:51.74 <> add-hookしたらすぐ有効なんじゃね? <>
名無しさん@お腹いっぱい。<>sage<>2013/12/11(水) 19:10:21.42 <> eval-region したり eval-last-sexp したりすればいいのでは。 <>
名無しさん@お腹いっぱい。<>sage<>2013/12/11(水) 19:16:04.18 <> >>972 >>973
どうもうまくいかないのさ
みんなうまくいってるの
global-set-key とかならうまくいくけども <>
名無しさん@お腹いっぱい。<>sage<>2013/12/11(水) 19:37:29.60 <> 言葉が足りてない気がする。 <>
971<>sage<>2013/12/11(水) 19:42:05.14 <> 例えば local-set-key とか書き換えて評価しても
反映されないんだけど <>
名無しさん@お腹いっぱい。<>sage<>2013/12/11(水) 19:53:45.41 <> (local-set-key (kbd "<f11>") "hello")
これを scratch バッファで eval-last-sexp で評価して f11 押して hello ってはいらんのなら
なんか余計な設定してるんだろ <>
名無しさん@お腹いっぱい。<>sage<>2013/12/11(水) 19:57:20.85 <> add-hook は run-hooks とかで実行されない限り有効にならんから
たとえば c-mode-hook になんか追加してもすでに c-mode になってるバッファでは何も起きないよ。
ファイル開き直すなり再度 c-mode にし直すなりしないと run-hooks が働かない。
local-set-key はしらん。目的のバッファじゃなくて init.el 開いてるバッファで eval してるってオチじゃないの。 <>
名無しさん@お腹いっぱい。<>sage<>2013/12/11(水) 23:44:15.71 <> >>976
具体的に。 <>
971<>sage<>2013/12/12(木) 11:37:11.49 <> local-set-key のやつは
ファイル開き直すのでうまくいきました
以前にどうやってもうまく行かないケースがあって
質問しようと思ってたのを忘れてしまった
どうもありがとう <>
名無しさん@お腹いっぱい。<>sage<>2013/12/12(木) 17:12:42.30 <> init.el で eval してたってオチか <>
名無しさん@お腹いっぱい。<>sage<>2013/12/12(木) 21:05:21.60 <> Emacsでテキストをマウスクリック、またはテキスト上でEnterし特定の関数を実行させたいです。
set-text-properties等でイベント別に実行させたりできるのでしょうか?
または別に専用の関数等あるのでしょうか? <>
名無しさん@お腹いっぱい。<>sage<>2013/12/12(木) 21:22:38.38 <> >>982
お察しの通り、set-text-properties で指定したテキストに対して専用のキーバインドを設定できる。
そこで return なり mouse-1-down なりに好きな関数を設定してやれば ok。
http://www.gnu.org/software/emacs/manual/html_mono/elisp.html#Clickable-Text
http://www.gnu.org/software/emacs/manual/html_mono/elisp.html#Special-Properties
あたり参考に。 <>
名無しさん@お腹いっぱい。<>sage<>2013/12/12(木) 21:55:15.46 <> >>983
ありがとうございます!
英語は苦手ですが参考にしてやってみます <>
名無しさん@お腹いっぱい。<>sage<>2013/12/13(金) 17:58:25.68 <> http://emacsrocks.com/e13.html
やべー凄過ぎて脱糞した
俺もこうなりたい <>
名無しさん@お腹いっぱい。<>sage<>2013/12/13(金) 19:17:13.70 <> そりゃ見た目にハデで効率あがるのも認めるけど
やってることはマークと正規表現とquery-replaceを縦横に使いこなすっつー
emacs使いにとっちゃ息をするほどの操作と同じことだろ <>
名無しさん@お腹いっぱい。<>sage<>2013/12/13(金) 19:22:31.50 <> emacs使いっていうか大抵のエディタ使ってる奴はそれぐらいのことするわな。
multiple-cursor ってなんかズレたらどうしようってイメージしかないんだよな <>
名無しさん@お腹いっぱい。<>sage<>2013/12/14(土) 00:43:18.79 <> もちろん普通のEmacserは関数内とかでC-M-hでリージョン選択してquery-replaceをするだろうね
それとC-x r tかな
ただ、インパクトは凄いんで multiple-cursor を暫く使ってみる事にするよ <>
名無しさん@お腹いっぱい。<>sage<>2013/12/14(土) 03:05:44.32 <> cua-mode で満足してたのに、また面白そうなもの教えてくれやがって・・・ <>
名無しさん@お腹いっぱい。<>sage<>2013/12/14(土) 10:26:26.39 <> cua といえば C-S-space の cua-toggle-global-mark ってあんまり使われてなさそう <>
名無しさん@お腹いっぱい。<>sage<>2013/12/14(土) 13:14:07.36 <> 代用はあるけど
単純にかっけえなあw <>
名無しさん@お腹いっぱい。<>sage<>2013/12/14(土) 14:39:31.77 <> >>990
cuaモードを使ってるけど、cua-toggle-global-markは使ったことなかった。
今使ってみたけどあらかじめペースト先を指定しておく位の使い方しか分からなかった。
何か便利な使い方があったら教えてくれ。 <>
名無しさん@お腹いっぱい。<>sage<>2013/12/14(土) 16:30:21.76 <> 連番を指定回数分バッファに出力する何かいい方法はないでしょうか
1
2
3
4
5
こういう風に各行に一つずつ出したいです <>
名無しさん@お腹いっぱい。<>sage<>2013/12/14(土) 16:35:39.39 <> rectangle-number-lines <>
名無しさん@お腹いっぱい。<>sage<>2013/12/14(土) 16:46:24.23 <> >>992
ぶっちゃけそれぐらいじゃない?
multiple-cursor みたいにへえーおもしれーって一回触っておわる系。 <>
名無しさん@お腹いっぱい。<>sage<>2013/12/14(土) 17:32:26.95 <> C-u M-! seq 1 5 <>
993<>sage<>2013/12/14(土) 17:33:10.84 <> >>994
ありがとうございます。その関数を使えばリージョンの各行に数値を挿入できることを確認しました。
ですが指定した個数を挿入することはできないようです。
(defun test (start end)
(loop for i from start to end do (insert (concat (number-to-string i) "
"))))
(test 1 10)のように始まりと終わりの数値を指定すればそれを一気に挿入するのが理想ですが
そのようなものがあれば知りたいです。
あとlispの書き方でつまずいたのですがdefunの引数に&optionalを指定したとき、デフォルトの値を設定することはできませんか?
上の例だとstartの既定値を1にしたいと思ったのですが、やり方が分かりませんでした。 <>
993<>sage<>2013/12/14(土) 17:34:22.77 <> >>996
ばっちりです!ありがとうございます! <>
名無しさん@お腹いっぱい。<>sage<>2013/12/14(土) 17:36:46.70 <> Emacs Part 44
http://toro.2ch.net/test/read.cgi/unix/1387010164/ <>
名無しさん@お腹いっぱい。<>sage<>2013/12/14(土) 20:29:30.22 <> おらー! <>
1001<><>Over 1000 Thread<> このスレッドは1000を超えました。
もう書けないので、新しいスレッドを立ててくださいです。。。 <>