Emacs Part 39
■ このスレッドは過去ログ倉庫に格納されています
0001名無しさん@お腹いっぱい。
2011/11/29(火) 17:50:44.24Emacs Part 38
http://hibari.2ch.net/test/read.cgi/unix/1308635178/
0285名無しさん@お腹いっぱい。
2011/12/28(水) 23:13:51.020286名無しさん@お腹いっぱい。
2011/12/28(水) 23:14:14.58elisp本では「筆者がメンテナンス・開発している」anythingになっていた
ちなみに原作者の名前はまったく出てこない。まさに神の御業である
0287名無しさん@お腹いっぱい。
2011/12/28(水) 23:45:54.41anything.elもなんだかんだ言って既存のemacsスクリプトを取り込んで拡張していったから
自ずと限界は見えてしまう
anything.elがemacsの諸ライブラリの統合だと主張するのはわかったから
つぎはvimとemacsの統合というか融合の形を見せてほしい
0288名無しさん@お腹いっぱい。
2011/12/28(水) 23:49:42.010289名無しさん@お腹いっぱい。
2011/12/28(水) 23:55:24.140290名無しさん@お腹いっぱい。
2011/12/29(木) 00:01:08.69外部プログラム使おうぜって主張だったと思うけど。
正直emacs内のhttpライブラリとかうんこちんちんだからなあ。
ただ外部プログラム呼ぶと他の環境に移る時めんどくさい。
0291名無しさん@お腹いっぱい。
2011/12/29(木) 00:35:35.93>正直emacs内のhttpライブラリとかうんこちんちんだからなあ。
詳しく聞きたい
0292名無しさん@お腹いっぱい。
2011/12/29(木) 00:40:34.06なんとか言ってくれよ誰か!俺達が…俺達が費した青春は何だったんだよ!
0293名無しさん@お腹いっぱい。
2011/12/29(木) 00:47:03.98・POSTメソッドをサポートしてない
・非同期接続時にタイムアウト指定できない
・接続待機はコンパイル時のオプション次第によっては非同期にならない
これはあかんよ。
0294名無しさん@お腹いっぱい。
2011/12/29(木) 01:06:16.02postメソッドについては知らなかった
そうだったのか
0295名無しさん@お腹いっぱい。
2011/12/29(木) 11:50:02.700297名無しさん@お腹いっぱい。
2011/12/29(木) 12:49:16.97(custom-set-faces
'(font-lock-keyword-face ((t (:foreground "yellow")))))
のようにすると他のモードにも色が反映されてしまうのですが、
任意のモードのときにのみ特定の色をつけるということは可能でしょうか
0298名無しさん@お腹いっぱい。
2011/12/29(木) 13:09:33.71デフォルトのfaceを使いたくない場合は、自分でfaceを作って
font-lock に教えてあげる必要がある。
特定のフェイスの色をバッファ毎に置き換える方法はちょっと分からない。
(make-face 'hogehoge-green-face)
(set-face-attribute 'hogehoge-green-face nil :foreground "green")
(make-face 'hogehoge-red-face)
(set-face-attribute 'hogehoge-red-face nil :foreground "red")
(font-lock-add-keywords 'hogehoge-mode
'(("^GREEN: .*" . 'hogehoge-green-face)
("^RED: .*" . 'hogehoge-red-face)))
んで、
generic-mode の場合は generic-make-keyword-list って関数があって、
これだとキーワードのリストに対して任意の face を指定出来るみたいだからこっち使ったほうがいいのかもね。
詳しい使い方は関数のヘルプをみてちょうだいな。
0299名無しさん@お腹いっぱい。
2011/12/29(木) 13:11:14.19× generic-make-keyword-list
○ generic-make-keywords-list
0300名無しさん@お腹いっぱい。
2011/12/29(木) 14:34:09.80どうしても変数を渡したい場合は以下の方法しかないんでしょうか?
(setq a "C-c a")
(kbd a) ;; => (wrong-type-argument integer-or-marker-p a)
(eval `(kbd ,a)) ;; => "^C"
0301名無しさん@お腹いっぱい。
2011/12/29(木) 14:57:49.13(macroexpand '(kbd a))
で
>Debugger entered--Lisp error: (wrong-type-argument integer-or-marker-p a)
となるのはなぜなのだろう?
(macroexpand '(dolist (x '(a b c)) (print x)))
は問題ないのに
0302名無しさん@お腹いっぱい。
2011/12/29(木) 15:32:41.59lisp reader作っちゃうような真性lisperの集まるスレに行って聞くといいかも。
プログラム板のschemeとかclとかの。
>>300
(setq a "C-c a")
(read-kbd-macro a)
ってやっちゃうととりあえず願いは叶うんだろうけど、これじゃ不満だろうか?
kbd はシンタックスシュガーな気がするしループの中でなんかするとかそうい
う使い方じゃないんじゃなかろうか。
0303名無しさん@お腹いっぱい。
2011/12/29(木) 15:49:18.27なるほど
0304名無しさん@お腹いっぱい。
2011/12/29(木) 16:11:41.68macroexpandはマクロを実行するものだから。
マクロというのはありえいにいえば処理系に置き換えてもらいたい式を返す関数。
この場合 (kbd 'a) が実行される。
0305名無しさん@お腹いっぱい。
2011/12/29(木) 16:30:54.880306名無しさん@お腹いっぱい。
2011/12/29(木) 17:34:09.08describe-function
C-h をバックスペースにしてなければ C-h f
0307名無しさん@お腹いっぱい。
2011/12/29(木) 19:30:33.63ありがとうございました。
0308名無しさん@お腹いっぱい。
2011/12/29(木) 20:03:41.811タブあたりの半角空白の数を指定するにはどうするのですか
0309名無しさん@お腹いっぱい。
2011/12/29(木) 20:14:26.30(lambda () (setq tab-width 4)))
0310名無しさん@お腹いっぱい。
2011/12/29(木) 20:17:02.17(lambda ()
(set (make-variable-local 'tab-width) 10)
(set (make-variable-local 'tab-stop-list) '(10 20 30 40 50 60 70 80 90))))
0311名無しさん@お腹いっぱい。
2011/12/29(木) 20:17:19.76make-local-variable だった。
0312名無しさん@お腹いっぱい。
2011/12/29(木) 20:35:18.17できました。
0313名無しさん@お腹いっぱい。
2011/12/29(木) 20:45:44.210314名無しさん@お腹いっぱい。
2011/12/29(木) 21:07:39.90るびきちの経歴をはじめて見た気がする
0315名無しさん@お腹いっぱい。
2011/12/29(木) 21:08:33.99Software Design とかで Emacs の特集くまれたのも関係してるのかもね。
0316名無しさん@お腹いっぱい。
2011/12/29(木) 21:08:33.890317名無しさん@お腹いっぱい。
2011/12/29(木) 21:14:15.300318名無しさん@お腹いっぱい。
2011/12/29(木) 21:16:33.71Emacsのキーバインドは呪いだぞ。下手になれるとずーーーーーっと付きまとわれる。
0319名無しさん@お腹いっぱい。
2011/12/29(木) 21:17:07.280320名無しさん@お腹いっぱい。
2011/12/29(木) 21:35:38.97http://www.mag2.com/m/0001373131.html
で500yen/1month払った人の相手は責任もってやります。
0321名無しさん@お腹いっぱい。
2011/12/29(木) 21:39:04.70むしろ入門書よんでたら describe-function とかタブ幅設定知らないってことはないんじゃないのか?
0322名無しさん@お腹いっぱい。
2011/12/29(木) 21:39:34.05> 【月額512円】 1配信あたり約 512円
これが525円? ぼったくりにもほどがある。
0323名無しさん@お腹いっぱい。
2011/12/29(木) 21:53:46.940324名無しさん@お腹いっぱい。
2011/12/29(木) 21:54:34.370325名無しさん@お腹いっぱい。
2011/12/29(木) 22:04:44.970326名無しさん@お腹いっぱい。
2011/12/29(木) 22:17:21.390327名無しさん@お腹いっぱい。
2011/12/29(木) 22:20:05.18起動時の読み込み処理+起動後の処理の両方が速くなるということでしょうか
0328名無しさん@お腹いっぱい。
2011/12/29(木) 22:23:48.15読み込んだ後にどうせ内部的にコンパイルしているわけだし。
0329名無しさん@お腹いっぱい。
2011/12/29(木) 22:49:44.350330名無しさん@お腹いっぱい。
2011/12/29(木) 23:14:35.220331327
2011/12/29(木) 23:28:18.080332名無しさん@お腹いっぱい。
2011/12/30(金) 11:12:48.18(set-fontset-font "xxx" 'japanese-jisx0208 "SomeFont") みたいに直接指定するのと
(set-fontset-font "xxx" 'japanese-jisx0208 (font-spec :family "SomeFont"
:registry "unicode-bmp" :lang 'ja))
みたいにfont-specで指定するのってどう違いがあるんでしょう?
0333名無しさん@お腹いっぱい。
2011/12/30(金) 11:18:48.69(set-fontset-font NAME TARGET FONT-SPEC &optional FRAME ADD)
FONT-SPEC may one of these:
* A font-spec object made by the function `font-spec' (which see).
* A cons (FAMILY . REGISTRY), where FAMILY is a font family name and
REGISTRY is a font registry name. FAMILY may contain foundry
name, and REGISTRY may contain encoding name.
* A font name string.
* nil, which explicitly specifies that there's no font for TARGET.
0334名無しさん@お腹いっぱい。
2011/12/30(金) 11:44:46.71font-spec 使ったり cons セル渡したりすれば良いということなんですね。
font と fontset の仕組みがなかなか理解できないなぁ・・・
list-fontsets で出てくるフォントセット名って必ずしもそこで指定された family に属してるフォントだけってわけでもないんですよね。
0335名無しさん@お腹いっぱい。
2011/12/30(金) 12:15:08.17「そこ」ってどこよ? set-fontset-fontの事?
フォントセットはcreate-fontset*で作成し、その時にフォントセット名を指定する。
set-fontset-fontで指定してないフォントセット名がリストされても何も不思議じゃないんだが。
0336名無しさん@お腹いっぱい。
2011/12/30(金) 12:29:14.72create-fontset* したときにフォントセット名を未指定だと
そのフォントの XLFD がフォントセット名になるじゃないですか。
それがあったから自分にはわかりづらかったんですよ。
なんで Family が * じゃないのに別の Family のフォントが使えるの???みたいに。
フォントセット名って結局は単純に名前なだけで内容は別に XLFD とは関係ないってことなんですよね。
0337名無しさん@お腹いっぱい。
2011/12/30(金) 12:50:29.540338名無しさん@お腹いっぱい。
2011/12/30(金) 12:55:33.81自分以外にも買わないで済ます奴がいるんだなw
0339名無しさん@お腹いっぱい。
2011/12/30(金) 13:23:40.98上に『いまどきのアセンブラプログラミング』を乗せてきた
0340名無しさん@お腹いっぱい。
2011/12/30(金) 14:29:28.44とおもって書評見に行ったらメタクソでワロタ。
中身もトンデモだった。
0341名無しさん@お腹いっぱい。
2011/12/30(金) 14:54:17.740342名無しさん@お腹いっぱい。
2011/12/30(金) 15:00:56.70誤植が結構ある気がするんだよな(とくにemacs lispの方)
正誤表がネットにあればいいのに
0343名無しさん@お腹いっぱい。
2011/12/30(金) 15:04:58.08http://d.hatena.ne.jp/rubikitch/20100810/emacsbookerrata
Emacs Lispテクニックバイブルの方は知らん
電子書籍で販売しないあたりがオールドタイプ
0344名無しさん@お腹いっぱい。
2011/12/30(金) 15:07:51.32>き継ぐことになりました。 原作者はanything開発の時間が取れないとの
>ことで、熱烈なanythingファンの筆者がすぐに次期開発者として名乗りを
>上げ、了承されました。 バグを修正し、使いやすくするために大幅に機
>能を追加しました。 その結果、コードは約4倍に膨れ上がりました。 熱
>狂的なファンも増えました。 anythingを使ったLispプログラムもたくさ
>ん登場しました。 いつしかanythingがないと生きていけない様を表す
>「anything脳」という言葉も登場しました。 anythingで生産性が上がっ
>た人がたくさんいます。 そして現在は「anythingのるびきち」として知
>られるようになりました。
きんもーい
0345名無しさん@お腹いっぱい。
2011/12/30(金) 15:10:59.90> 42歳のおっさんです。前著作とともに購入しました。
> ともに自宅用、会社用に1冊ずつ、合計4冊購入しました。
> ただ、すでに痛み始めているので、ともに、あと1冊ずつ購入することになると思います。
> メルマガも先ほど、購読の手続きを完了しました。楽しみにしています。
0346名無しさん@お腹いっぱい。
2011/12/30(金) 15:58:14.87な本は会社と自宅で2冊買ってたりしてた。
0347342
2011/12/30(金) 16:00:32.43ありがとう。手元にあるemacsテクニックバイブルは2刷りだけど
日本語の文章としておかしい箇所があった気がする
メモをしていなかったので場所は忘れた
コードはざっと見た限りひどい間違いはなさそう
もう一度通読してみるか
0348名無しさん@お腹いっぱい。
2011/12/30(金) 16:55:04.23嘘よくない…。post できるヨ…。
0349名無しさん@お腹いっぱい。
2011/12/30(金) 18:45:36.050350名無しさん@お腹いっぱい。
2011/12/30(金) 19:02:40.920351名無しさん@お腹いっぱい。
2011/12/30(金) 19:04:55.830352名無しさん@お腹いっぱい。
2011/12/30(金) 19:25:34.590353名無しさん@お腹いっぱい。
2011/12/30(金) 21:05:55.40?どういうこと?
0354名無しさん@お腹いっぱい。
2011/12/30(金) 21:23:42.610355名無しさん@お腹いっぱい。
2011/12/30(金) 21:29:48.87おれはこのことに怒っているぞみたいなこと書いてあった。
0356名無しさん@お腹いっぱい。
2011/12/30(金) 21:32:26.59触らぬキに祟りなしとかで何も言わないのか。
0357名無しさん@お腹いっぱい。
2011/12/30(金) 23:04:23.29Common LispだけがLispじゃないんだし。
0358名無しさん@お腹いっぱい。
2011/12/30(金) 23:09:10.31どうせみんな書くんだろうし。
0359名無しさん@お腹いっぱい。
2011/12/30(金) 23:11:07.88リクエストメソッドをPOSTに出来るだけでしょ。
マルチパートの送信も出来ないのにPOST出来るとはとてもとても。
0360名無しさん@お腹いっぱい。
2011/12/30(金) 23:39:38.22clマクロを取りまく現状について
「こうしたねじれた事態は馬鹿げている」と強い口調で書いてはある
けれどバカと馬鹿げているではニュアンスがまるで違うからキとか言うのはよくない
0361名無しさん@お腹いっぱい。
2011/12/30(金) 23:42:51.170362名無しさん@お腹いっぱい。
2011/12/30(金) 23:44:13.73意味わからん。
0363名無しさん@お腹いっぱい。
2011/12/31(土) 00:31:14.97dolist, dotimes は subr.el に標準で用意されている。
正直 cl とマージすればいいと思うんだけど、何かポリシー
があるんだろうな。
0364名無しさん@お腹いっぱい。
2011/12/31(土) 00:33:53.26パッケージとして作るものに (require 'cl) するなって意味だったような。
0365名無しさん@お腹いっぱい。
2011/12/31(土) 00:51:35.45単語だけ切り出したらそう思うかもしれないけど、
全体の文脈からしてかなり烈しい内容だったと思うけどな。
この辺が幼稚な印象を強くしちゃうんだよ。rbktせんせ。
0366名無しさん@お腹いっぱい。
2011/12/31(土) 00:58:58.98find-if とかの cl-seq の中身便利なのに。
0367名無しさん@お腹いっぱい。
2011/12/31(土) 01:07:28.400368名無しさん@お腹いっぱい。
2011/12/31(土) 02:34:37.32>>364
すみません、私はcl.el大好きなんですが、
eval-when-compileで囲んでもやはり使うべきではない、
というのが現在の一般的な意見、ということになっているのでしょうか?
>>366
RMSがキーワード引数が好きではないから、という説を
どこかで聞いた気がします。
0369名無しさん@お腹いっぱい。
2011/12/31(土) 02:41:52.98買うかどうか悩んでるんだ。ソースコード編集してC-c C-cで部分実行するだけならこの画面で十分な気がするんだけどどうだろ
0370名無しさん@お腹いっぱい。
2011/12/31(土) 02:51:04.54使っちゃダメなのがCL関数
じゃないの?
0371名無しさん@お腹いっぱい。
2011/12/31(土) 04:32:15.06The rule against using CL functions at run time is for the sake of the
user. The CL functions are not a standard part of the Emacs Lisp
namespace. Thus, loading CL can conflict with the user's function
definitions.
subr.elでdefunされているremoveと、
cl-seq.elでdefunされているremove-ifとでは、
「can conflict with the user's function definitions」という点で
どのような違いがあるのでしょうか。
0372名無しさん@お腹いっぱい。
2011/12/31(土) 09:34:41.010373名無しさん@お腹いっぱい。
2011/12/31(土) 09:38:21.89喜んで使うのは三流グラマだけ。
0374名無しさん@お腹いっぱい。
2011/12/31(土) 09:52:56.96subr.el で定義されている -> ぶつかったらユーザの責任
cl.el で定義されている -> ぶつかったら cl.el をロードしたやつの責任
という点で異なる
0375名無しさん@お腹いっぱい。
2011/12/31(土) 10:01:45.63ゴミッカスが喜び勢い付くだけだからね〜
0376名無しさん@お腹いっぱい。
2011/12/31(土) 10:18:28.75れる可能性は高いよね。ところでanythingの標準添付の作業ってどこでされて
るんだ?trunk見ても見当たらないんだけど。
0377名無しさん@お腹いっぱい。
2011/12/31(土) 11:45:32.41cedet もそうだけどあえて一緒にしない方がいいパッケージってあるよな
0378名無しさん@お腹いっぱい。
2011/12/31(土) 13:02:19.330379名無しさん@お腹いっぱい。
2011/12/31(土) 13:08:23.97仮にremove-ifがcl-remove-ifという名前でcl-seq.elでdefunされていたとすると、
-> ぶつかったらユーザの責任、なので
-> -> emacs本体の一部として配布されるEmacs Lispコードでeval-when-compileで囲まずに(require 'cl)してOK
と言えるんでしょうか?
あるいは、remove-ifがマクロなら(eval-when-compile (require 'cl))して標準配布物内で使ってOK、だとして、
remove-ifをマクロとして再実装するのはすごくたいへんなんでしょうか?
0380名無しさん@お腹いっぱい。
2011/12/31(土) 13:14:40.25関数に cl-* の接頭辞が付きまくってて目眩がした
ネームスペースの仕組みあればねえ。
0381名無しさん@お腹いっぱい。
2011/12/31(土) 14:00:39.92describe-keyで調べたらこう出ました
(negative-argument ARG)
Begin a negative numeric argument for the next command.
C-u following digits or minus sign ends the argument.
具体的にはどういうことなのでしょうか
使い道を知りたいです
0382名無しさん@お腹いっぱい。
2011/12/31(土) 14:12:24.79C-- 数字 コマンド でそのコマンドに -数字 の引数を与えられるってこと。
C-- 3 C-p とかやると 三行「下に」移動する。
0383名無しさん@お腹いっぱい。
2011/12/31(土) 14:31:15.96なるほど、C-uの繰り返しがデフォルトで4となっていましたが、
それの基本的な機能なのですね
わかりました
0384名無しさん@お腹いっぱい。
2011/12/31(土) 14:34:32.20C-- はあくまで負の数な。
正の数の動作が基本だから
C-3 C-p とか M-3 C-p とかの方が普通。
0385名無しさん@お腹いっぱい。
2011/12/31(土) 14:56:23.71え、POSTできるけど……
■ このスレッドは過去ログ倉庫に格納されています