xyzzy Part14

このエントリーをはてなブックマークに追加
1ミスターエックスワイジー
亀井さん作成のエディタxyzzyのスレです。
過去ログや関連サイトなどは>>2-10あたり。

・謎のぺぇじ -- 作者の亀井氏のページ
http://www.jsdlab.co.jp/~kamei/

・XyzzyWiki
http://xyzzy.s53.xrea.com/wiki/?FrontPage
2ミスターエックスワイジー:2006/05/30(火) 21:05:31 ID:qOVX5tCZ
・XyzzyWiki -- NetInstaller/配布パッケージ一覧
http://xyzzy.s53.xrea.com/wiki/?NetInstaller%2F%C7%DB%C9%DB%A5%D1%A5%C3%A5%B1%A1%BC%A5%B8%B0%EC%CD%F7

・HIE no xyzzy -- 日江氏による QandA, Reference, Extended xyzzy lisp library
http://hie.s64.xrea.com/xyzzy/

・HIE no xyzzy -- xyzzyの情報がかなり網羅的に集まったページをNamazu検索
http://hie.s64.xrea.com/namazu/namazu.cgi

・xyzzy Lisp Programming -- M.hiroi氏によるlispでプログラミングを楽しもうのページ
http://www.geocities.co.jp/SiliconValley-Oakland/1680/xyzzy_lisp.html

・Junk Scripts -- 2ch-mode,NetInstallexxrの作者服部氏のぺーじ
http://www7a.biglobe.ne.jp/~hat/
3ミスターエックスワイジー:2006/05/30(火) 21:06:22 ID:qOVX5tCZ
4ミスターエックスワイジー:2006/05/30(火) 21:07:27 ID:qOVX5tCZ
「何もしてないのに2ch-modeで書き込めなくなったよ」という人用

2chのクッキーの仕様が変更されたようです
06年5月30日現在の対処法は



C:/Program Files/xyzzy/site-lisp/.../form.l

"submit=~A&FROM=~A&mail=~A&MESSAGE=~A&time=~D&bbs=~A"
という行を
"submit=~A&FROM=~A&mail=~A&MESSAGE=~A&time=~D&bbs=~A&hana=mogera"
と変更して
M-x byte-compile-fileで再コンパイル
で、xyzzy再起動すればOK




※Part13の912さんのレスを引用しました
5名無し~3.EXE:2006/05/30(火) 21:35:24 ID:iOqjum6a
ミスター乙!
6名無し~3.EXE:2006/05/31(水) 01:15:40 ID:yQu4Ddh2
おつ
7名無し~3.EXE:2006/05/31(水) 13:00:34 ID:00LbnRMz
Netinstallerのパッケージ、結構増えてるんだな
8名無し~3.EXE:2006/05/31(水) 14:13:30 ID:lW51u+xV
今はALL Sites(195)かな?他にもある?
9名無し~3.EXE:2006/05/31(水) 14:34:58 ID:9yC+jwri
10名無し~3.EXE:2006/05/31(水) 14:47:40 ID:lW51u+xV
ALL Sites (195)
Megahurtz (4)
Junk Scripts (23)
66MHz.com (13)
雑記帖 (32)
kia's website (18)
xyzzyのじかん (19)
ふかふか (7)
HIE no xyzzy (13)
FortuneOverture (4)
Masatoshi's xyzzy extend lisps (10)
On Slant (1)
Memory Palace (2)
with xyzzy!!ってことで (2)
chez sugi (1)
雄猫のがらくた置き場 (3)
人生捨ててます? (8)
とらいきゃっち・ふぁいなりー (1)
Yutaka Nomura's xyzzy page (3)
へなちょこリファレンス (5)
ななしの人の部屋 (3)
いらんこと。 (1)
らいおさむのお屋敷 (2)
sazasaza (4)
気まぐれにxyzzy (11)
silog (5)
----------------------------------
何が抜けているんだろうか;
11名無し~3.EXE:2006/05/31(水) 15:06:42 ID:9yC+jwri
12名無し~3.EXE:2006/05/31(水) 15:47:01 ID:lW51u+xV
202になりました。thx
13名無し~3.EXE:2006/05/31(水) 18:10:26 ID:zBwdwViN
xyzzy lispからmysqlとやりとりする方法ってありませんか?
14名無し~3.EXE:2006/06/02(金) 02:54:59 ID:/pI6CpP0
>>11
そこにあるisearch-decoというのを入れたら
「不正なデータ型です: nil: keymap」
というダイアログが出るようになってしまったんですが、なぜでしょうか
(load-library "isearch-deco")を.xyzzyに書いただけなんですが
15名無し~3.EXE:2006/06/03(土) 21:50:04 ID:vej9fh4Y
即死回避!
16名無し~3.EXE:2006/06/05(月) 21:43:48 ID:vgxRtmkE
>>14
(load-library "isearch") も書いた?
17名無し~3.EXE:2006/06/05(月) 21:52:40 ID:ibNNA88+
CやFortranで数値計算用のプログラムを作って、それをxyzzyから操作する時、
数値などを入力しEnterを押すと、そのたびに入力した文字が消えるので、これを消えない
ようにしたいのですが、どうすればいいんですか?
18名無し~3.EXE:2006/06/05(月) 23:32:15 ID:6rZQd0oQ
どうやってxyzzyから操作しているのかをまず書かなければ
誰もわかりませんよ?
19名無し~3.EXE:2006/06/06(火) 00:05:35 ID:VClggrvV
前スレ700が言ってたac-modeってのを移植した人が降臨した模様
http://white.s151.xrea.com/wiki/index.php?script%2Fac-mode

2017:2006/06/06(火) 04:10:18 ID:6kY7O4Dz
>>18
失礼しました
 M-x shellでshell-modeにして、exeファイルを呼び出して実行しています。
例えばc=a+bの結果を返すプログラムで説明すると、この場合、"a"と"b"を入力するわけですが、
"a b"と入力してEnterを押すと、結果(答え)が同じ行に上書きさえれて出力され、入力した値が消えてしまいます。

 これだと入力した値とその結果を比較したい場合に不便なので、入力した値はそのまま残し
結果を次の行に出力させたいわけです。
よろしくお願いします。
21名無し~3.EXE:2006/06/06(火) 05:39:35 ID:G6HVjtdt
>>20
shell の拡張入れてる?
入れてなければ shell3 とか shell-ext 入れたらそうなるとおもう。
はずしてるかも知れなけど、 shell を使うなら入れておいて損はない拡張だと思うよ。
22名無し~3.EXE:2006/06/06(火) 09:07:05 ID:CqjxBf1l
shell3 だとなってないような
2317:2006/06/06(火) 19:08:24 ID:6kY7O4Dz
>>21 >>22
shell3を入れてみましたけど同じでした。
C-nやC-pでshellの履歴をたどれるので、”shell3.l ”は読み込んでると思うんですけど、
何かの設定がマズイのかな?
24名無し~3.EXE:2006/06/06(火) 21:27:45 ID:ss4tZ24t
>>23
設定の問題ではなくて、
exeファイルを呼び出して実行するとそうなるのが普通と思うよ。
shell.l の 77 行目 (delete-region start end)
をコメントしたコードを
(in-package "editor") ... (in-package "user")ではさんで
.xyzzy に書いてみたらうまくいくかも。副作用ありそうだけど。
2521:2006/06/06(火) 22:26:59 ID:G6HVjtdt
>>22-24
たしかに shell3 は、そうなってなかった。ごめん。
shell-ext では、消さないで 色を変えてくれるように
なっていたんで、それだけでも報告しとく。
2617:2006/06/06(火) 23:33:05 ID:6kY7O4Dz
>>24
>exeファイルを呼び出して実行するとそうなるのが普通と思うよ。
そうなんですか。
EmacsやMeadowで、上に書いたような使い方が出来てたので
xyzzyでもできると思ってました。

>shell.l の 77 行目 (delete-region start end)
>をコメントしたコードを
>(in-package "editor") ... (in-package "user")ではさんで

これはまだlispが理解できてないので勉強してやってみます。
(どういじればいいのかわからない ・゜・(ノД`)・゜ )
27名無し~3.EXE:2006/06/06(火) 23:48:05 ID:LP0QrLsh
置き換えを実行した後、置き換えた文字列をハイライトさせる
lispってありますか?
2814:2006/06/07(水) 01:51:55 ID:k7iaWe5O
>>16
自己解決しましたすいません

バックトレースを見たらlookup-key-commandというのが関係してるようなので
isearch-deco.lの870行目と874行目をコメントアウトすることで
>>14のダイアログは出なくなりました
今の所これで全ての機能が使えてるようなのでとりあえず満足してます
29名無し~3.EXE:2006/06/07(水) 02:06:27 ID:co3+BQiR
>>26
shellをcmd.exe(command.com)以外のshellにする。
設定は変数 *eshell* で。

もしくは数値を入力するときにこっちのコマンドで
(in-package "editor")
(defun my-shell-send-input ()
(interactive)
(let ((*shell-echo* nil))
(declare (special *shell-echo*))
(shell-send-input)))
(define-key *shell-mode-map* #\M-j 'my-shell-send-input)

# ところで shell-alternate-send-input の定義間違ってない?
# *shell-echo* じゃ無くて *shell-ret* のような。
30名無し~3.EXE:2006/06/07(水) 03:22:58 ID:A83Q60oM
ここらでeshellをxyzzyに移植してくれる神降臨祈願
31名無し~3.EXE:2006/06/07(水) 03:25:22 ID:sSFzczHz
祈願
32名無し~3.EXE:2006/06/07(水) 08:30:59 ID:NDpgHMRr
>>29
> # *shell-echo* じゃ無くて *shell-ret* のような。

それが正しそうだね
*shell-echo* に代入した "\r" とかって使われてないよなーとは思ってた
3329:2006/06/07(水) 23:44:05 ID:HRMq9rVA
>>32
賛同が得られて心強いです。
Wikiにpatchを投げておきました。
34名無し~3.EXE:2006/06/09(金) 18:42:27 ID:/X+xHp8e
(defun test (&optional s e)
(interactive "r")
(if (mark)
(message "aru")
(message "nai")))

リージョンがないときには"nai"と出てほしいのですが、「マークが設定されていません」というエラーが出てしまいます。
&optionalの使い方が間違っているのでしょうか?
35名無し~3.EXE:2006/06/09(金) 18:57:26 ID:OQ+gOpd8
>>34
エラーが出る箇所は2箇所。
・(interactive "r")
・引数無しでの (mark)

修正してみました。
(defun test ()
(interactive)
(if (mark t)
(message "aru")
(message "nai")))
36名無し~3.EXE:2006/06/09(金) 19:07:27 ID:/X+xHp8e
>35
どうもありがとうございます。
確かにそうすると"nai"と出てくれるのですが、引数にリージョンを渡しても渡さなくても、
それに応じて動く関数はどう書いたらいいのかな、ということを質問したかったです。
言葉が足りなかったようですいません。
37名無し~3.EXE:2006/06/09(金) 23:18:37 ID:FTbGxXmM
>>36
こうかな

(defun test (s e)
  (interactive (list (mark t) (point)))
  (if s
      (message "aru")
    (message "nai")))
38名無し~3.EXE:2006/06/09(金) 23:33:07 ID:/p4UGjmk
>> 36
35さんも書いてるけど、(mark)を(mark t)にすれば
よいんでないの。

(defun test (&optional s e)
(interactive "r")
(if (mark t)
(message "aru")
(message "nai")))
39名無し~3.EXE:2006/06/10(土) 02:13:34 ID:JxQQb4+L
久々に2ch-modeをバージョンアップしたら、
以前はスレッドや板を選択した後自分で"r"を押して
最新の差分を取得してたのが、選択すると自動的に
最新の状態に更新されるようになった。
元の挙動に戻すにはどこをいじれば良いのでしょう?
40名無し~3.EXE:2006/06/10(土) 02:24:40 ID:tFr+0uY3
オンラインモード?
41名無し~3.EXE:2006/06/10(土) 02:57:32 ID:JxQQb4+L
>>40
それでした。ありがとうございます。
42名無し~3.EXE:2006/06/10(土) 18:58:20 ID:z6JbR0Ew
>>37
このinteractive式はじめて見るな。リスト渡せるのか。
リファレンスに解説あります?
43名無し~3.EXE:2006/06/10(土) 19:57:27 ID:CgW3aDJS
>>42
interactive の項目の「arg-descriptors がストリングでない場合・・・」
ってところにちょっとだけ書いてある。

実例は ~/lisp/pframe.l で二箇所使われてるだけみたい。
44名無し~3.EXE:2006/06/10(土) 20:22:58 ID:fonFgE2V
>>42
リストを渡せるというより、interactive式を評価した結果はリストであり、
要素数は仮引数の数と同じ。そのようなものであれば、いかようにでも書ける、
んじゃないかなと理解してます。
45名無し~3.EXE:2006/06/11(日) 03:55:46 ID:f6Si8h9/
>>42
ggrep.l でも使われてました。
46名無し~3.EXE:2006/06/14(水) 19:36:52 ID:cAIpFikU
初めて2ch-modeを使ってみたんですが書き込みが反映されません。
書き込みは出来ないんでしょうか?
47名無し~3.EXE:2006/06/14(水) 19:46:40 ID:3gCm7lEp
> C:/Program Files/xyzzy/site-lisp/.../form.l
> の
> "submit=~A&FROM=~A&mail=~A&MESSAGE=~A&time=~D&bbs=~A"
> という行を
> "submit=~A&FROM=~A&mail=~A&MESSAGE=~A&time=~D&bbs=~A&hana=mogera"
> と変更して
> M-x byte-compile-fileで再コンパイル
> で、xyzzy再起動すればOK

これかな
48名無し~3.EXE:2006/06/17(土) 22:46:10 ID:KY4IwIxT
test
49名無し~3.EXE:2006/06/18(日) 23:24:20 ID:wBvmpQiT
test
50名無し~3.EXE:2006/06/20(火) 22:41:26 ID:fpfSjeAv
マジックリンでくりんくりん
51名無し~3.EXE:2006/06/21(水) 21:46:35 ID:6EgpS823
KaTeXについての質問です。
site-lisp/katex/以下をバイトコンパイルした後、
”:”や”;”でギリシャ文字などの補完をしようとすると

不正な関数です: elisp::KaTeX-math-japanese-sign

という警告?が出ます。
どうもバイトコンパイルするとこうなるらしく、実際に
site-lisp/katex/の*.lcを削除すると、この問題
は解決するんですけど、なんでこうなるんですか?

52名無し~3.EXE:2006/06/23(金) 00:30:26 ID:kWFOy9aw
M-x calendar だと *Calendar* バッファが開いてカレンダーが表示されるのに、
*scratch*で (calendar) や (calendar 2006) を評価しても
*Calendar*バッファが開きません。こういうものなのでしょうか?

また、この差分の原因を捜してみようかと思ったのですが、
Emacsのedebugのように、S式をステップ実行で確認できるようなツールはありませんか?

53名無し~3.EXE:2006/06/23(金) 00:54:11 ID:0wPvWFcw
>>52
> M-x calendar だと *Calendar* バッファが開いてカレンダーが表示されるのに、
> *scratch*で (calendar) や (calendar 2006) を評価しても
> *Calendar*バッファが開きません。こういうものなのでしょうか?
評価するというのが、LFD (eval-print-last-sexp)だったり、
C-x C-e (eval-last-sexp)だったりしたら、そういうもの。
これらのコマンドはカーソル位置を保存します。
54名無し~3.EXE:2006/06/23(金) 09:52:40 ID:f5DcGcFZ
>>52
ステップ実行するにはstepマクロ。
http://xyzzy.s53.xrea.com/reference/wiki.cgi?p=step

1ステップごとに評価するS式(マクロ展開済み)をダイアログで表示する。
かなり使いにくく感じた。
55名無し~3.EXE:2006/06/24(土) 21:12:06 ID:DFLdHJwt
回答ありがとうございます。

>>53
「カーソル位置を保存する」という意味を私が勘違いしているのかも知れませんが
save-excursionとはまた違うのでしょうか?
つまり、*Calendar* が見えないのが不思議なのです。

(progn
(calendar)
; (other-window)
(switch-to-buffer "*Calendar*"))

ここで(other-window)を実行するかしないかで、表示が変わるのが分かりません。

>>54
一応標準機能であるんですね。早速あとで試します。
56名無し~3.EXE:2006/06/25(日) 13:13:16 ID:eINrGK1s
だれか数独を移植してくれませんか?
ttp://www.columbia.edu/~jr2075/elisp/sudoku.el
57名無し~3.EXE:2006/06/25(日) 13:51:52 ID:eX4UXmlr
すでにあるよ
58名無し~3.EXE:2006/06/25(日) 13:53:27 ID:eX4UXmlr
59名無し~3.EXE:2006/06/25(日) 14:30:07 ID:eINrGK1s
>>57-58
ありがと!
60名無し~3.EXE:2006/06/25(日) 14:41:26 ID:Nb4QszS7
interactiveに呼び出した関数にS式を渡すとき、
これにデフォルト値を設定する事はできますか?

こんな感じで使いたいのです。

(defun foo (d w f)
  (interactive "DDirectory: \nxWild: \nFOutput file: "
    :default1 '("*.cpp" "*.h")) ; ←これがうまく動かない
  (with-open-file (out f :if-exists :overwrite)
    (format out "~{~A~%~}" (directory d :wild w))))
61名無し~3.EXE:2006/06/25(日) 18:42:34 ID:PUE2zstV
>>60
eval.cc の l.1925 を見ると x にデフォルト値は指定できなさそうな雰囲気。
x ではなく s ならできるのでこんな感じにするのかな?

(defun foo (d w f)
  (interactive "DDirectory: \nsWild: \nFOutput file: "
    :default1 "*.cpp;*.h")
  (setq w (split-string w #\; t " "))
  ...)
62名無し~3.EXE:2006/06/25(日) 18:43:00 ID:k7l1ondr
>>60
(defun foo (d w f)
(interactive "DDirectory: \nsWild: \nFOutput file: "
:default1 "*.cpp;*.h") ; ←これがうまく動かない
(with-open-file (out f :if-exists :overwrite)
(format out "~{~A~%~}" (directory d :wild w))))

63名無し~3.EXE:2006/06/25(日) 18:45:32 ID:k7l1ondr
かぶった orz
6460:2006/06/25(日) 21:40:05 ID:Nb4QszS7
>>61の方法でうまくいきました。
ありがとうございます。
65名無し~3.EXE:2006/06/28(水) 10:04:52 ID:Bs3/UbJG
(directory-namestring "D:/")
"D:/"
(directory-namestring "C:/")
"C:/"
(directory-namestring "D:")
"D:/"
(directory-namestring "C:")
"C:/xyzzy/"

ナゼ? "3"とか入れるとまた違ったりするし。
66名無し~3.EXE:2006/06/28(水) 14:33:47 ID:Q7frfx28
DOS時代はドライブ毎にカレントディレクトリが保存されてて、
c:\dos で d: と打って、c: と打ったら、c:\dos に戻ってきてた。

うまくいえんが、Windowsでもそういうことなんじゃないかな。
67名無し~3.EXE:2006/06/28(水) 21:05:54 ID:+/4uXjbs
Windowsでもコマンドプロンプロを開いてc:とかdとかやれば
ドライブごとのカレントディレクトリが保存されてる様子がわかるよ。
68名無し~3.EXE:2006/06/28(水) 22:56:40 ID:Zd6wKNOT
プロンプロの語感に嫉妬
69名無し~3.EXE:2006/06/29(木) 21:58:07 ID:gIwx3ajY
プロンプロン♪
70名無し~3.EXE:2006/06/30(金) 15:01:15 ID:BQcBPLWX
www-modeで、バッファバーをタブブラウザのタブのように
使っているのですが、他にもこう言う人は居ますか?

かなり快適なんですが、表示文字が長いとかソースが含まれるとか
色々いじらないところは多そうですが、かなり使い勝手が良いです。

2ch-mode見たいに、専用のタブ(バー)を最終的に作られれば
良いなと思ってるのですが、後から無断で拡張するとか
出来るのか謎です。
71名無し~3.EXE:2006/06/30(金) 15:30:52 ID:hXXnkUjq
>>70
> www-modeで、バッファバーをタブブラウザのタブのように
> 使っているのですが、他にもこう言う人は居ますか?
居ます。

> 2ch-mode見たいに、専用のタブ(バー)を最終的に作られれば
> 良いなと思ってるのですが、後から無断で拡張するとか
> 出来るのか謎です。
出来ます。ライセンスを確認してください。
72名無し~3.EXE:2006/06/30(金) 16:31:32 ID:BQcBPLWX
>>071 そうですか、ちょっと頑張ってみます。
いま、バッファバーのサイズをちょっといじってたのですが
*buffer-ba-length*とかでどうにかなるだろうとタカ括っていたのに
上手くいかず、こりゃ真面目に勉強しないとダメだなと
思い直していたところです・・・

バッファバーに*www=srcバーを表示させないようにとも考えてますが
これは以前2ch-mode関係をバッファバーに表示しないスクリプト
が出てたので、それを参考に弄って見ようと思います。

本来のxyzzyの使い方とは掛けなれてるのでしょうが、
慣れるとブラウザとしても優秀な働きをしてくれそうで
xyzzyを知らずに居たことを後悔しています。
73名無し~3.EXE:2006/06/30(金) 20:48:14 ID:2Z+6SPrr
>>72
バッファバーを出さないだけならHIEさんのページにある
ttp://hie.s64.xrea.com/xyzzy/note/www-mode.html#www-hide-buffer
7465:2006/07/01(土) 02:00:32 ID:T6oOaT6+
>>66,67
Win95で使い始めたクチでしたから、そんな仕組みがあったとは
思いもしませんでした。お二人ともありがとうございました。
75名無し~3.EXE:2006/07/01(土) 09:58:48 ID:uhzTIf9R
refer-for 2006-06-10版 ($Rev: 224 $) を使用しようとしたのですが、
M-x refer-for を実行すると、
ファイルがロードできません(</path/to/xyzzy>/reference/reference.xml)
とエラーがでます。
正常動作するかたいらっしゃいましたら、環境を教えていただけないでしょうか。


【確認1】
</path/to/xyzzy>/reference/reference.xml には、
reference.xml 2006.06.29版 が存在しており、find-file で開くことはできます。

【確認2】
IEは6で、以下の設定をしています。
(setq refer-for::*msxml-prog-id* "Msxml2.DOMDocument.3.0")

【確認3】
(refer-for::create-document-object) を評価すると、とりあえず、
#<oledata xxxxxxxx> のような値は返ってきます。
76名無し~3.EXE:2006/07/01(土) 12:35:04 ID:YrS22MQA
>>73 何から何まですいません。
いま試してみた所、ビューの部分だけはずしてやると、
あたかもタブブラウザかの用なバッファになりました。
本当にありがとうございました。
77名無し~3.EXE:2006/07/01(土) 12:55:22 ID:VVj8i36A
>>75
reference.xmlの32648,34987,35637の各行の & を &amp; に書き換えてみてください。
78名無し~3.EXE:2006/07/01(土) 15:31:37 ID:uhzTIf9R
>>77
ありがとうございます。
reference.xml の該当箇所を書き換えた後、先のエラーはでなくなりましたが、
新たに下記エラーがでました。
ファイルがロードできません(</path/to/xyzzy>/refer-for-search.xml)

これは、refer-for.l の *style-file-for-search* を defvar しているところで
(ed:etc-path) が使用されており、かつ、私が refer-for.l を siteinit.l で
ロードしているから発生しています。

siteinit.l を読み込んだ後に (ed:etc-path) (というよりは ed:*etc-path*) の
値が設定されるため、拡張Lisp では (ed:etc-path), *ed:*etc-path* の値を
使用するべきではありません。
# siteinit.l ロード前後の判断に使うというアクロバティックな方法としては
# 使用できますが。

ファイルがロードできません(</path/to/xyzzy>/refer-for.xml)

も同様にエラーとして出ましたので、最終的に、以下設定を siteiniti.l に
追加することで正常動作しました。

(setq refer-for::*style-file*
(merge-pathnames "etc/refer-for.xsl" (si:system-root)))
(setq refer-for::*style-file-for-search*
(merge-pathnames "etc/refer-for-search.xsl" (si:system-root)))

ありがとうございました。
79名無し~3.EXE:2006/07/02(日) 09:04:58 ID:WROxNHXP
>>78
> siteinit.l を読み込んだ後に (ed:etc-path) (というよりは ed:*etc-path*) の
> 値が設定されるため、拡張Lisp では (ed:etc-path), *ed:*etc-path* の値を
> 使用するべきではありません。
これは知りませんでした。
書き換えておきました。
どうもです。
80名無し~3.EXE:2006/07/02(日) 09:30:10 ID:wI7p1q1u
>>79
ご対応ありがとうございました。

hook に引っ掛けて、実際の評価を遅らせれば (ed:etc-path) の値は
使えますが、直に defvar する場合なんかは使用できないんですよね。

引っかかりやすいトラップです (^^;
81名無し~3.EXE:2006/07/02(日) 21:19:08 ID:+XFwiPDA
>>76
俺もみよみまでちょっといじってみたよ。
(concat *www-buffer-name-prefix* "VIEW: ")
の代わりに
(string-trim " *WWW " *www-buffer-name-prefix*)
ってしたら、少しだけ短くなった。
82名無し~3.EXE:2006/07/03(月) 18:33:28 ID:YBVJ4Av9
リファレンスの更新お疲れさまです。
83名無し~3.EXE:2006/07/03(月) 18:47:32 ID:BLTf8UjM
>>81 それは、>>73のサイトのソースを
(setq *www-buffer-name-prefix* " *WWW ")
(setq *www-buffer-src-prefix*
  (string-trim " *WWW " *www-buffer-name-prefix*))
           〜中略〜
(setq *www-buffer-form-textarea*
  (concat *www-buffer-name-prefix* "TEXTAREA*"))
こうするって事でしょうか?


buffer.lを少々見てみましたが、どうもバッファの長さ
を調節できるような記述が無く(最も、length とか longで
検索してみただけですが)新しくスクリプトを書き加えないと
2ch-modeのタブのように20文字規制をかけられない様です。

2ch-modeのソースをもう少し見てみて、どこか参考になるところを
探してみようと思います、もし他の方で成功された方がおられれば
ぜひご教授願いたいところです。
8481:2006/07/03(月) 21:36:50 ID:YM5Hum+7
>>83
> こうするって事でしょうか?
そうです。
短くなるのは" *WWW "の分だけですけど。
さらに、こうしちゃうとexitしてもバッファが残ってしまうという問題が……
すいません、だめだめでしたね。
85名無し~3.EXE:2006/07/03(月) 22:42:52 ID:rT+QiOFI
そういえば、 バッファ名の最大長が 320文字? くらいで、
www-mode でそういったファイル開くとうまく開けなかったなぁ。と、言ってみるテスト。
86名無し~3.EXE:2006/07/04(火) 01:26:23 ID:/OE1gqUk
C-[ に自作の関数を割り当てたいのですが、これはどうしたら出来るのでしょうか?
C-[ には ESC が割り当てられているみたいなのでこれを解除したいのですが。。
87名無し~3.EXE:2006/07/04(火) 01:59:26 ID:qk5opYKX
www-mode時のバッファの長さだけど、
url表示させないだけで済ませられない?
これなら、バッファにurlを送る所で
適当な文字列にするか、送らないだけで済むかと。
まぁ、どうやるかって聞かれても俺は知らないけど。
88名無し~3.EXE:2006/07/04(火) 03:25:34 ID:+obsCmye
流れきっちゃってわるいけど、
write でこんなエラー出されても、手に負えない・・・ orz

>CALL STACK 73: (write #S(my-structure 中略) :stream #<stream 54268640> :escape nil :readably nil)
>CALL STACK 72: 中略

不正なデータ型です: 524298: stream

89名無し~3.EXE:2006/07/04(火) 13:08:45 ID:s36qQ+xF
ttp://nazoking.s31.xrea.com:8080/k/grep-mode.l
ここのgrep-mode.lを使わせてもらっているのですが、2ch-modeのgrep.lとフック変数?が同じようで、
2ch-modeを使ったあとにgrepすると名前が衝突してgrep-modeが起動しません。そこでgrep-mode.lを
mygrep-mode.lに変更して、ファイルの中身もgrepという文字列を→mygrepに置換しました。
siteinit.lの記述も
(in-package "editor")
(autoload 'mygrep-mode "mygrep-mode" t)
(add-hook '*grep-hook* 'mygrep-mode)
(add-hook '*grepd-hook* 'mygrep-mode)
(add-hook '*ggrep-hook* 'mygrep-mode)
(add-hook '*ggrepd-hook* 'mygrep-mode)
(in-package "user")
に直しました
そうすると衝突はしなくなりましたが、絞り込みダイアログ
が使えなくなりました。そこでダイアログの部分だけmygrepからgrepに戻しました。
そうすると無事に動くようになりました。
ただ、私はLispド素人なのでこれでいいのか不安です。
どうでしょうか?
90名無し~3.EXE:2006/07/05(水) 23:33:50 ID:2dIknw/+
>>86
こんな感じでできるかも。何か弊害があるかもしれない。

(setf (aref *kbd-translate-table* 27) #\F20)
(global-set-key #\F20 'forward-char)

>>89
まあちゃんと動いてるなら悪くはないような。
他の案としてはソースの in-package か export してるところをいじるとかも考えられる。
91名無し~3.EXE:2006/07/06(木) 03:12:04 ID:GH/bIQlk
MLって今でも投稿あるの?月に何通くらいのペースでしょうか?亀井さんの
最後の投稿はいつでしょうか。
92名無し~3.EXE:2006/07/06(木) 03:41:16 ID:v9UzN59o
ttp://hie.s64.xrea.com/xyzzy/ml/

ネタ振りのつもりならイタ杉
93名無し~3.EXE:2006/07/06(木) 06:59:48 ID:l9AMN/jC
>>92
何が?
9489:2006/07/07(金) 11:24:10 ID:/70VPn+q
>>90
なるほど。
安心しました。ありがとうございました
95名無し~3.EXE:2006/07/07(金) 21:47:01 ID:hn30Xe8N
おせえてください。
xyzzyをUSBメモリに詰めて持ち運んでいるのですが
USBメモリのルートを取得したいと思ってます。
今は
(defun removable-root ()
(append-trail-slash (car (split-string (si:system-root) "/"))))
と書いて対処してるんですが、なんかいまいちな気がしています。
refarenceでpathname-deviceという関数をみつけたんですが
ドライブネームだけ吐き出す(コロンをつけてくれない)ので使い勝手がよくありません。
良い方法はないでしょーか。
96名無し~3.EXE:2006/07/08(土) 01:42:15 ID:0sq+TB0/
>>95
どれも妥当で、いまいちでないと思います。
なにか問題がありますか?
97名無し~3.EXE:2006/07/08(土) 14:31:03 ID:CGBeo/iK
>>96
そうですか。ありがとうございます。
文字列をきったりはったりしているんで
もうちょっと良い方法があるはずなのではと
思ってました。
98名無し~3.EXE:2006/07/08(土) 15:21:36 ID:+sT4hJkl
(merge-pathnames "/" (si:system-root))
99名無し~3.EXE:2006/07/08(土) 16:18:21 ID:J/hQMxjL
ん?それだったらこうじゃない?
(merge-pathnames "/" (pathname-device (si:system-root)))
100名無し~3.EXE:2006/07/08(土) 20:21:56 ID:fZrSIsEo
ん?それだったらこうじゃない?
(append-trail-slash (pathname-device (si:system-root)))
101名無し~3.EXE:2006/07/08(土) 21:37:44 ID:0sq+TB0/
「Q:/」のようなのを取得したいのだから、>>098-100 じゃなくてこうじゃない?
(concat (pathname-device (si:system-root)) ":/")
102名無し~3.EXE:2006/07/08(土) 22:01:31 ID:oCdBQjW5
98に一票だな
103名無し~3.EXE:2006/07/08(土) 22:03:51 ID:SculdLNh
「コロンをつけてくれない」って言ってるんだからこうだろ。
(format nil "~a:" (pathname-device (si:system-root)))
104名無し~3.EXE:2006/07/08(土) 22:14:35 ID:0sq+TB0/
>>102
おお。>>98 のトリッキーですね。
(merge-pathnames "/" (si:system-root)) で
C:/ や D:/ になるんですね。

>>103
でも、今書いて対処しているという >>95 の removable-root は
「C:/」みたいなのを取得してるし。
欲しいものは本人しかわからないね。

と外野が不要に騒いでみる。
105名無し~3.EXE:2006/07/09(日) 04:46:36 ID:U25h56mC
空気を読まずに
(defun drive-name ()
(pathname-device (si:system-root)))
(defun drive-name/ ()
(concat (drivename) ":/"))
106名無し~3.EXE:2006/07/09(日) 16:27:42 ID:HItCS7vH
>(merge-pathnames "/" (si:system-root))
トリッキーすぎて将来の互換性が心配。。。
107名無し~3.EXE:2006/07/09(日) 22:00:29 ID:fv/benFD
つまらん質問にいろいろありがとー。
やりたかったのは簡単なランチャをつくりたかっただけれす。
USBめもりによくつかうアプリも詰め込んでるんで
こんなかんじで
(defconstant *removable-root* (merge-pathnames "/" (si:system-root)))
(defvar *apps-dir* (merge-pathnames "bin" *removable-root*))
(defvar *launcher-pairlis*
(mapcar #'(lambda (x) (cons (file-namestring x) x)) (directory *apps-dir* :recursive t :depth 2 :absolute t :wild "*.exe")))

(defun launcher (apps)
(interactive (list (completing-read "launcher: " (mapcar #'car *launcher-pairlis*) :case-fold t :must-match t)))
(shell-execute (cdr (assoc apps *launcher-pairlis* :test #'equalp))))
貼りように書き直したんで動くかわかりませんが、
いろいろおせえてくれた方々へどんなことがしたかったのか説明れす。ほんと参考になりやした。
108名無し~3.EXE:2006/07/15(土) 22:35:59 ID:Oy0oeaD8
質問です!
close-session-dialogと
close-sessionの違いがわかりません
同じ動作に見えるのですが…
どう違うのでしょうか?
109名無し~3.EXE:2006/07/15(土) 23:01:36 ID:9V0g/VHb
>>108
ファイルの関連付けられてないバッファを保存するときにダイアログを出すか出さないか
110名無し~3.EXE:2006/07/15(土) 23:36:15 ID:Oy0oeaD8
>>109
なるほどー
ありがとうございます
111名無し~3.EXE:2006/07/23(日) 17:59:22 ID:6ztjKO/H
保守
112名無し~3.EXE:2006/07/23(日) 19:18:39 ID:BjCNxH00
c:/hoge/以下の、拡張子がcsvのファイルをリストに入れたいのですが、どうしたら出来ますか?
113名無し~3.EXE:2006/07/23(日) 19:47:27 ID:Xh+Y9Gmb
>>112
こういうこと?
(directory "C:/hoge" :wild "*.csv" :recursive t :absolute t)
114名無し~3.EXE:2006/07/23(日) 19:55:19 ID:BjCNxH00
>113
そういうことです。どうもありがとうございます。
directoryはinfo-modokiにもちゃんと載っていますね。探したつもりだったんですがorz
助かりました。
115名無し~3.EXE:2006/07/24(月) 21:56:56 ID:SbFihUVF
2ch-mode 0.0.14-3で
http://pc8.2ch.net/test/read.cgi/sec/1148196937/l50
このスレが開けないんだけど何故だかわかりますか?

ステータスバーには
"Software caused connection abort"
と出力されます。
116名無し~3.EXE:2006/07/25(火) 04:41:48 ID:HcpBWHUP
当てずっぽうだけど
・ウイルスのコード
・ノートン先生
だと思う
117名無し~3.EXE:2006/07/25(火) 09:33:54 ID:hcL90lkz
一応ノートン先生の入ってる俺のとこでは開けたけど
OnloadとかJavaScriptらしきものが張られてるからそのせいっぽいね
118名無し~3.EXE:2006/07/25(火) 13:15:19 ID:F6Rbbf40
---------------------------------------------------- 終了 ----------------------------------------------------
                                                                                                                 
119115:2006/07/25(火) 20:18:18 ID:GF+vCty7
>>116-117
どうやらgzip転送を有効にしてるとエラーになるようです。無効にすると問題なく読み込めました。
UNZIP32.DLLのバージョンは5.42.0.2です。

もし時間がありましたら試してもらえるとありがたいです。
120名無し~3.EXE:2006/07/26(水) 23:23:01 ID:XKRdMbaS
おしえてください。
あるフレーム(A)はバッファタブ非表示&画面4分割以上
(ウィンドウサイズはバラバラ)、フレーム(B)はバッファ
タブ表示の状態で、フレーム(A)とフレーム(B)を切り替え
続けるとフレーム(A)のウィンドウ分割線(height)が自動的に
変化していきます。(↓こんな感じ)

┌─┬───┐ ┌─┬───┐
│ │ │ ├─┤ │
├─┤ │ -----> │ │ │
│ ├───┤ │ │ │
│ │ │ │ ├───┤
└─┴───┘ └─┴───┘

自分の環境だけかも知れないんですけど、何か回避策は
ないでしょうか?

121120:2006/07/26(水) 23:33:13 ID:XKRdMbaS
連書きすみません。
バッファタブ表示/非表示切替は、こんな感じでやってます。
(defvar *hide-baffer-bar-frame-list* '("aaa" "bbb" "ccc"))

(defun select-pseudo-frame-proc ()
(let ((frm (ed::pseudo-frame-name (selected-pseudo-frame))))
(if (find frm ed::*hide-baffer-bar-frame-list* :test 'string-equal)
(hide-command-bar 'buffer-bar)
(show-command-bar 'buffer-bar))
(refresh-screen)))

(add-hook '*select-pseudo-frame-hook* 'select-pseudo-frame-proc)

122名無し~3.EXE:2006/07/27(木) 21:19:53 ID:78hO9l68
>>121
バッファバーを左(or 右)におく
123名無し~3.EXE:2006/07/29(土) 07:24:36 ID:CW/iL0ap
クロスラインカーソルを表示する方法ってあります?

124名無し~3.EXE:2006/07/30(日) 11:26:30 ID:rNjM6w/i
elisp移植キットの
(file-name-nondirectory)
の定義のところ、
(setq letter (substring dir 0 2))
てのは、
(setq letter (substring file 0 2))
じゃないかと思って直したんですけど、自分、変なことしてないですよね?
125名無し~3.EXE:2006/08/01(火) 00:11:22 ID:7M4ubM49
>>123
> クロスラインカーソルを表示する方法ってあります?
ありません。
126名無し~3.EXE:2006/08/01(火) 00:23:57 ID:7M4ubM49
>>124
> じゃないかと思って直したんですけど、自分、変なことしてないですよね?
変なことはしていませんが、作者さんに報告するなりしておかないと、
Emacslisp移植キット の次の版が出たときに再度哀しい目にあいます。
127励ましあえスレ518:2006/08/03(木) 10:53:55 ID:ymaBesCM
スレ違いで誘導されてきました。

lispの勉強にJavaのコンパイル、実行をする物を作ろうとしたんですが
出だしから躓いてしまっています。
下のスクリプトを動かすと*java-arg*が未定義だと怒られてしまいます。
" -encoding utf-8 "を concatの引数部分に直接書けばコンパイルは行えました。
何がいけないんでしょうか?
それと実行したときに *cmd* バッファを分割されてできた新しいウィンドウに表示したいのですが
どの関数を使えば良いんでしょうか…。

(defvar *java-prog* "javac")
(defvar *java-arg* " -encoding utf-8 ")
(defvar *script-directory* "c:\\java\\Hoge.java")

(with-output-to-temp-buffer ("*cmd*" 5)
(make-process (concat *java-prog* *java-arg* *script-directory*)))
128名無し~3.EXE:2006/08/03(木) 11:23:13 ID:RDvZw17W
>>127
make-process ?
call-process か execute-shell-command じゃねーの。
リファレンスとか調べた?
129名無し~3.EXE:2006/08/03(木) 14:21:27 ID:7YLA5IAY
>>127
きちんと評価すると起こられないので、
(defvar *java-arg* ... の行を評価していないだけではないでしょうか?
どの文をどこに書いて実行していますか?


想像で書いてみました

(let ((prog "javac")
      (arg " -encoding utf-8 ")
      (path "c:\\java\\Hoge.java")
      (cmdbuf "*cmd*"))
  (execute-shell-command (concat prog arg path)
                         nil cmdbuf)
  (switch-to-buffer-other-window cmdbuf))
130名無し~3.EXE:2006/08/03(木) 15:40:50 ID:AVtxmDQ8
&#160; って全角スペース?
131名無し~3.EXE:2006/08/03(木) 15:56:03 ID:aRbhQzSu
最近みかけるな、これ。
2chビューア何使ってるんだろ
132名無し~3.EXE:2006/08/04(金) 02:13:06 ID:Ar8snvAZ
>>128
違いが良くわからなかったので適当に選びました
>>129
eval-defunで実行してました。
書きたかったコードは正にそれです

ありがとうございました。
133名無し~3.EXE:2006/08/04(金) 08:39:56 ID:8LFchpI3
>>129
129さんおしえて
2chビューア何?
134129:2006/08/04(金) 17:57:47 ID:rmkpSwLF
ビューアのせいではなくて、使用者のせいでした。
みづらくてすいません。

2ch-mode で閲覧中、
書き込もうとしてレス入力→「スペースを変換」
書込を実行すると、仕様変更のせいでエラーがでたので、
ブラウザでスレを開いて
スペース変換済みのレスをコピペで送信してしまいました。
135名無し~3.EXE:2006/08/05(土) 03:44:30 ID:c+o/gRtr
どなたか EDITOR=xyzzy で svk 使ってる人います?
コミット時のログをセーブしようとしても「別のプロセスが使用中」
みたいに言われて保存できないorz
svn では問題なかったんだが…仕方ないので EDITOR=notepad で運用中カナシス
136名無し~3.EXE:2006/08/05(土) 14:01:53 ID:gQHbvLlO
21 follow follow her advice ...(以下略
22 consider consider the ...(以下略
23 increase increase by...(以下略
24 expect expect you to ...(以下略

最初の単語のみを一括で選択する方法ないでしょうか?
137名無し~3.EXE:2006/08/05(土) 18:24:41 ID:J9pWev8A
>>136
選択って?
何がやりたいのかよく分からないよ
138名無し~3.EXE:2006/08/05(土) 20:55:33 ID:sigi99Vm
>>136
短形選択(Ctrlを押しながらドラッグ)のことかな?
139名無し~3.EXE:2006/08/05(土) 21:31:31 ID:QKuyyJW9
短形(たんけい)じゃなくて矩形(くけい)ですよ
140名無し~3.EXE:2006/08/05(土) 21:42:31 ID:6k58dFX/
最初の単語って言ってるんだから違うんじゃなかろうか

ところでparentagのparen.lの中に書いてる「使い方」の説明が
「(turn-on-paren)を使ってね」になってるが(turn-on-global-paren)の間違いでは?

作者にこう送りたかったがサイトにメールアドレス載ってなかったので
ここ見てるかもしれないからここに貼りました。
141名無し~3.EXE:2006/08/05(土) 21:46:54 ID:gQHbvLlO
すみません、最初の単語の部分を選択してコピーしたかったんです。
矩形選択で実現できるのでしょうか?
あまり使いこなせていないもので(^^;
142名無し~3.EXE:2006/08/05(土) 21:50:17 ID:15yfoOkO
follow
consider
increase
expect
を選択ですか?
143名無し~3.EXE:2006/08/05(土) 22:27:13 ID:gQHbvLlO
そうです。もうひとつ追記

単語の次に英文が来ていますが

077 Pen This is a pen.
の場合もあります。
ナンバーは4桁まで表記で

1〜
10〜
100〜
1000〜
のようになっています。
144名無し~3.EXE:2006/08/05(土) 22:32:53 ID:2BpxoM5s
>>143
バッファの内容をコピーして、正規表現で置換するのが一番簡単だと思う。

正規表現による置換は、
検索 - 置換 で 席表現にチェックを入れて、

^[0-9]+[ \t]*\([^ \t]+\).*
から
\1
へ置換する。

これでどう?
145名無し~3.EXE:2006/08/05(土) 22:36:31 ID:2BpxoM5s
ところで、そういうふうに構造化されているなら、
cvsとか使うのもいいんじゃない?
146名無し~3.EXE:2006/08/05(土) 22:38:56 ID:gQHbvLlO
正規表現ですか、本を買ってみようかな。
cvsですか、参考にしてみます。
ありがとうございます。
先に正規表現を試して見ますね。
147名無し~3.EXE:2006/08/05(土) 22:47:45 ID:gQHbvLlO
正規表現は試しましたが、一部単語が切れてしまいます。

一行につき、最初の半角スペースと二番目の半角スペースに挟まれたものを
選択するとうまくいくと思いますが知識不足です。
自分でももう少し調べてみようと思います。
ありがとうございました。

Lispも勉強して便利なモードをかけるようになりたいと思っています。(いつになるやら(^^;))
ありがとうございました。
148名無し~3.EXE:2006/08/06(日) 03:51:37 ID:ZxDn0wdZ
>>145
csv?
cvs の出てくる文脈じゃないから多分そうかと思いますが。
149名無し~3.EXE:2006/08/06(日) 13:05:10 ID:vkaoG4Gq
すでに存在するファイルを作成することはできません
と出てファイルを上書きできません。
Googleで一応調べてみましたが、情報がありません。
どなたか解決策や原因をご存知の方教えてください。
150名無し~3.EXE:2006/08/06(日) 15:26:09 ID:9NaTZrQl
上書きといってもいろいろな操作方法があります。
どういう操作をするとどうなるか、順をおって説明を書いてください。
151名無し~3.EXE:2006/08/06(日) 16:34:59 ID:jVbXiHsT
152名無し~3.EXE:2006/08/06(日) 17:29:44 ID:inQgOXxW
>>150 にまで薦めなくてもいいような…
153名無し~3.EXE:2006/08/06(日) 18:51:21 ID:dLHV+lER
>>147
(defun copy-nth-field (n)
(interactive "nField: ")
(copy-to-clipboard (apply 'concat (save-excursion (goto-char (point-min))
(with-input-from-selected-buffer (let (words l)
(while (setq l (read-line *standard-input* nil))
(let* ((f (split-string l #\SPC)) (s (nth n f)))
(and s (push (concat s "\n") words))))
(reverse words)))))))
read-lineでPerlやAWKみたいに書いてみたけどいまいち。
154名無し~3.EXE:2006/08/06(日) 20:55:10 ID:jACoNtwF
>>147
> 一部単語が切れてしまいます。
もしかして t のところで切れてる?
そうだったら「エスケープシーケンスを理解しろ」にチェックを入れてみて。
155名無し~3.EXE:2006/08/07(月) 11:59:00 ID:w2mXyYdj
勉強しはじめたばかりだけどLispって難しいな…
関数とか異常に数が多いし、とにかく良く分からん
気合で続けていればいつかわかるようになるんだろうか
156名無し~3.EXE:2006/08/07(月) 13:53:57 ID:vgU6JlVa
関数が多いのは素人の私にはありがたい
157名無し~3.EXE:2006/08/07(月) 15:04:30 ID:AMrlSPIQ
>>155
リファレンス入れてやりたいことに似たことやってるlisp追ってけば
なんとなくはわかるようになるよ
158名無し~3.EXE:2006/08/07(月) 16:55:39 ID:oDZ0+K9N
>>155
はじめのうちはそんなもん。
知らない関数が多いと訳わからんかもしれないけど、
リファレンスを使いつつ勉強していけばなんとかなるよ。
159名無し~3.EXE:2006/08/07(月) 19:04:22 ID:+/oUcrho
>>155
作りたい機能があるなら、適当に書いていれば直にわかるようになるよ。
160149:2006/08/07(月) 22:11:53 ID:HzLZenwL
txtファイルを編集して上書き保存しようとすると
"すでに存在するファイルを作成することはできません"
のようなエラーになります。

>ID:jVbXiHsT様
入門xyzzyに該当のトラブルが載っているということでしょうか?
161名無し~3.EXE:2006/08/07(月) 22:15:04 ID:L3z4mX02
>>160
どのtxtファイルを開いてもそうなるの? それとも特定のファイルだけ?
162名無し~3.EXE:2006/08/07(月) 22:33:33 ID:HzLZenwL
特定ファイルです。
163名無し~3.EXE:2006/08/07(月) 22:44:52 ID:Ecev98vf
そのファイルだけ書込み禁止になっているとか。
164名無し~3.EXE:2006/08/07(月) 23:01:43 ID:HzLZenwL
モード行は --**--のようになっているので上書き禁止ではないと思うのですが。。
165名無し~3.EXE:2006/08/07(月) 23:02:31 ID:HzLZenwL
すいません。
-**-です。
166名無し~3.EXE:2006/08/07(月) 23:27:07 ID:kQI7vjlv
それで結局「どういう操作をするとどうなるか」がまだわからないわけで
167名無し~3.EXE:2006/08/07(月) 23:42:08 ID:CkO6yqhk
メニューから上書きしてるんじゃねーの?

>>149
メモ帳とか他のエディタでは上書きできるのかい?
168名無し~3.EXE:2006/08/07(月) 23:44:55 ID:Ecev98vf
たしかに。エラーメッセージが何なのかもわからんし。

msgdef.h:286: "すでに存在するバックアップファイルの削除ができません"),
msgdef.h:350: "すでにサブプロセスが走っているため実行できません"),
msgdef.h:380: "誰かがすでに同じファイルを編集しています。\n編集を継続しますか?"),
msgdef.h:630: "ツールバーはすでに存在します"),
filer.l:359: (cons 'text (concat "同じ名前のファイルがすでに存在します。"
foreign.l:88: (error "~Aはすでに宣言されています" decl))
grepd.l:199:(if (yes-or-no-p "grepはすでに動作中です。死なす?")
kbdmacro.l:39: (error "キーボードマクロはすでに実行中です"))
pframe.l:75: (error "~Aはすでに存在します" name))
pframe.l:169: (error "~Aはすでに存在します" name))
process.l:185: (if (yes-or-no-p "すでにサブプロセスを実行中です。死なす?")
session.l:148: (yes-or-no-p "~A~%はすでに存在します。上書きしますか?"

どれよ?
169名無し~3.EXE:2006/08/08(火) 08:23:47 ID:78fWspMZ
"すでに存在するファイルを作成することはできません"
このままのメッセージです。
ためしにviで編集してみましたが問題なく上書き保存できます。
操作はメニューから-ファイル-上書き保存です。
170名無し~3.EXE:2006/08/08(火) 08:25:39 ID:rbIb0YU+
rename-file で NEW-NAME に存在するファイル名を渡すと
「既に存在するファイルを作成することはできません。」
って出るな。

Win32 エラー ERROR_ALREADY_EXISTS かも。
171名無し~3.EXE:2006/08/08(火) 08:41:49 ID:rbIb0YU+
メニューからだと save-buffer-dialog が呼ばれて、
たぶんバッファは file visited だから save-buffer でエラーが出てるのかな。

バックアップを作ってるならそこで問題が起きてる可能性もありそう。
詳しくは fileio.cc の save-buffer の定義をちゃんと読まないとわからないかも。
172名無し~3.EXE:2006/08/08(火) 08:47:35 ID:doBqoDNW
ローカルのファイル?
ネットワーク上のファイル?
173名無し~3.EXE:2006/08/08(火) 09:31:29 ID:78fWspMZ
ローカルファイルです。

共通設定の部分のバックアップファイル
[バックアップファイルをつくる] [作らない]
[番号が最後までいったら勝手に詰める][ファイルを保存したら常にバックアップファイルを作る]
にチェック
以上に設定してみると上書きできました。

変更点は[番号つきバックアップファイルの作り方]の欄を[常に作る]から[作らない]にした点です。
174名無し~3.EXE:2006/08/09(水) 00:06:57 ID:Ng8JKuc9
(with-open-stream (fuga (open "c:/hoge/xyzzy/test.txt" :direction :io))
(read-char-no-hang fuga)
)
ってすると「EOFに達しました」というエラーが出るんですが何が悪いんでしょうか。
:direction を :input にするとちゃんと読んでくれるんですが。
175名無し~3.EXE:2006/08/09(水) 11:37:02 ID:yQ2BrRaN
:append :overwrite ?
176名無し~3.EXE:2006/08/10(木) 13:41:24 ID:FG4YaKQM
xyzzyとcygwinを使っているのですが、C-x &でmakeなどと実行すると、
EUCのエラーメッセージが文字化けしてしまいます。
サブプロセスの実行結果の文字コードを自動判定して表示させる方法はありますか。

177名無し~3.EXE:2006/08/10(木) 14:55:05 ID:KiIOgrtH
>>176
ファイルを開くタイミングでの自動判定は、開くとき以外は呼び出せない気がする。
確認してないけど、出力するバッファを文字化けするプログラムのときだけ
EUC にしておくでとりあえず回避はできないの?
それでだめなら、ファイルに出力してそれを自動で開くプログラムを書く事になるん
じゃないかな。
もっといい方法があるかもしれないけど。
178177:2006/08/10(木) 15:11:22 ID:KiIOgrtH
ちなみに、バッファを euc にしてから出力する専用のコマンドは、これでできているかも。

(defun execute-subprocess-euc (cmd &optional (arg nil f) bufname environ directory)
(interactive "e& \np" :history0 'execute)
(let ((*command-output-mode-hook* *command-output-mode-hook*))
(push #'(lambda () (set-buffer-fileio-encoding *encoding-euc-jp*)) *command-output-mode-hook*)
(if f
(execute-subprocess cmd arg bufname environ directory)
(execute-subprocess cmd))))
179名無し~3.EXE:2006/08/10(木) 16:08:57 ID:OBmJGCBk
grepはダイアログからしか使わんからこう書いてるんだが
(defun grep ()
(interactive)
(grep-dialog))
単純にalias貼ることってできる?
180名無し~3.EXE:2006/08/10(木) 16:27:00 ID:KiIOgrtH
>>179
> 単純にalias貼ることってできる?

(setf (symbol-function 'grep) #'grep-dialog)
181名無し~3.EXE:2006/08/11(金) 19:24:55 ID:xNYndk4p
dくす
182名無し~3.EXE:2006/08/12(土) 02:38:00 ID:pyfb7foY
(if (\= 0 (point-max)) (message-box "何か書いてる") (message-box "何も書かれてない"))

結果が常に"何も書かれてない"になってしまいます
"\="を"="に変えても同じなので比較の仕方が間違ってるのだと思いますが
正しい書き方がわかりません。どう書けば良いのでしょうか?
183名無し~3.EXE:2006/08/12(土) 03:04:33 ID:HxBATTAr
/= のこと?
184名無し~3.EXE:2006/08/12(土) 05:45:29 ID:HnqOGgQn
どうやって実行してるの?
ミニバッファから?
185182:2006/08/13(日) 02:35:00 ID:PIJ7QUTy
バックスラッシュとスラッシュ見間違えてました…。
実行はeval-bufferを使ってます。
ありがとうございました。
186名無し~3.EXE:2006/08/13(日) 14:59:24 ID:qrq+zPAu
onig.dllのonig_newをlispで使えるようにするにはどうすればいいでしょうか?

(c:define-dll-entry
c:int onig_new ()
"onig.dll" "onig_new")

というところまではなんとなくわかったのですが、引数のところでどのように
書けばいいのかわかりませんでした。
ちなみに、onig_newについては
ttp://www.geocities.jp/kosako3/oniguruma/doc/API.ja.txt
ここを参考にして試しました。

187名無し~3.EXE:2006/08/13(日) 16:48:28 ID:w81LGmmB
>>186
引数の所は型名のリストになる。
例えば
(HWND INT)
ポインタの場合は
((INT *))

lisp/wip/winapi.l が参考になると思う。
188名無し~3.EXE:2006/08/14(月) 05:57:02 ID:x4kz9vML
何か処理をして成功なら戻り値を t ,失敗なら nil にしたいのですが
どう書けばいいんでしょうか?
↓こうじゃないかと考えて書いたダメコード
(message (foo))
(defun foo ()
(let ((x "5"))
(if (= "5" x) (return t) (return nil))))
189名無し~3.EXE:2006/08/14(月) 06:08:17 ID:7uTJ6nPg
>>188
・Lispではほとんどの場合、最後に行った処理が勝手に戻り値になる。
 Lispのreturnはcでいうbreakに近い。
・ = は数値にしか使えない。文字列比較にはequalなどを使う。

(defun foo ()
(let ((x "5"))
(equal "5" x)))

Lispの勉強は↓とかで。
http://www.geocities.jp/m_hiroi/xyzzy_lisp.html
190名無し~3.EXE:2006/08/14(月) 14:14:06 ID:qkcqwtUF
>>187
ありがとうございます。
型名が構造体を表す場合はどうすればいいのでしょうか?
また、"#define hoge 1" 等置き換えされているものは"(c:define hoge 1)"
"typedef int hoge" とされているものは"(c:define-c-type c:int hoge)"
とすればいいのでしょうか?
191名無し~3.EXE:2006/08/14(月) 14:29:32 ID:qkcqwtUF
続けてすいません。
foreign.l に(*define-c-type :uint8 u_char)という記述があったのですが、
これは"typedef unsigned char u_char;"されているということでいいのでしょうか。
192名無し~3.EXE:2006/08/14(月) 16:34:12 ID:8xeEo5V2
構造体は define-c-struct で定義。第一引数が型名になる。
他はあってると思う。
193名無し~3.EXE:2006/08/16(水) 05:11:23 ID:Sdo5vc3n
>>189
ありがとうございます

(message (foo))ではなく (foo) でいいことに気づくまで30分ほどかかりました…。
194名無し~3.EXE:2006/08/17(木) 19:45:03 ID:A+YuO09b
xyzzy使ってて不便な点ってどこですか?
195名無し~3.EXE:2006/08/17(木) 20:03:30 ID:mxBRTyVL
>>194
俺はデフォルトだと、マウス選択でのコピー&ペーストが面倒だと思う。
winkey.lを使えば解決するが。
196名無し~3.EXE:2006/08/17(木) 20:05:01 ID:F6FrVv1X
>>194
自分のマシンじゃないと不便でしょうがなくなる
197名無し~3.EXE:2006/08/17(木) 20:13:39 ID:cco9975c
確かに他人のxyzzyほど使いづらいものはないね。
198名無し~3.EXE:2006/08/18(金) 00:36:54 ID:VmNqrU55
それは高カスタマイズ性の副作用…というよりは裏側だからな
199名無し~3.EXE:2006/08/18(金) 01:16:58 ID:ipZKjhXH
>>194
表示関連が弱いとこ。
200名無し~3.EXE:2006/08/18(金) 08:59:07 ID:RX67rz4n
>>194
気軽に知人にオススメできない
201名無し~3.EXE:2006/08/18(金) 12:38:26 ID:H6iyT02H
このお方は一体どこへ行ってしまったの?

803 :名無し~3.EXE sage:2006/05/01(月) 06:19:25 ID:3B5tbPQv
本体に手を入れて追加したい機能ってありますか?
GWの予定が変わって暇なんでできることであればやってみようかと。
202名無し~3.EXE:2006/08/18(金) 14:09:25 ID:DAYLdUBr
>>201
君の心の中にいるよ
203名無し~3.EXE:2006/08/18(金) 21:25:46 ID:rtzCNODm
>>192
ありがとうございます。oniguruma.h に
#define ONIGENC_MBC_ENC_LEN(enc,p) (enc)->mbc_enc_len(p)
というのがあるんですが、これはどうやってlispで表せばいいのでしょうか?
また、
typedef struct {
int (*mbc_enc_len)(const OnigUChar* p);
.....}
の、int の行はどうやってlispで表すのでしょうか?

204名無し~3.EXE:2006/08/19(土) 12:14:35 ID:CJj9G3L0
お前ら、フォントは何使ってますか?
205名無し~3.EXE:2006/08/19(土) 14:36:17 ID:Gx/vHZ4v
桃花丸ゴシックL
206名無し~3.EXE:2006/08/19(土) 15:26:49 ID:a/KaIM7k
Osaka使ってたけど、「T」とかうまく表示できない文字があったからMSゴシックに戻した。
207名無し~3.EXE:2006/08/19(土) 15:44:30 ID:BDWVSBq5
Osakaだったけど、最近MS *ゴシックEx+にした
208名無し~3.EXE:2006/08/20(日) 02:10:28 ID:FFEZ+G3G
>>201
あっ音沙汰なしですみません。
ぼちぼちやってます。
気長にお待ちください。。
#なんか多忙につき、全然手を付けてません。。^^;
209名無し~3.EXE:2006/08/22(火) 11:56:56 ID:WvVbkDKH
google calendar api を使って、xyzzy から google calendar のイベントを追加、
編集、削除できたら面白いかなあと思って、
ttp://code.google.com/apis/gdata/calendar.html とか見て調べたのですが、
イベントを追加、編集、削除する方法が分かりませんでした。
分かる方、よろしかったら教えてくださいませ。

自分で調べて分かったのは、atom-modoki.l を使って、
(atomm::atomm-get-feed "Private Address" "username" "password")
で feed ができるということぐらいです。
210名無し~3.EXE:2006/08/22(火) 13:24:21 ID:G9reuUx9
循環リストに追加する関数書いてみたけど、車輪の再発明な悪寒…
バイトコンパイルすると動かなくなるのは何故でしょう?

(defun insert-to-circle (symbol item)
  (let ((clist (eval symbol)))
    (set symbol
      (if (consp clist)
        (setf (cdr ((lambda (f) (funcall f f clist))
                    (lambda (f a)
                      (cond ((eq (cdr a) clist) a)
                            ((eq (cdr a) nil) a)
                            (t (funcall f f (cdr a)))))))
              (cons item clist))
        (progn
          (setf clist (list item))
          (setf (cdr clist) clist))))))

(setq a '#1=(1 2 3 . #1#))
(insert-to-circle 'a 4)

ちなみにこれの副産物
ttp://mksoft.hp.infoseek.co.jp/trash/auto-compile.l
211名無し~3.EXE:2006/08/22(火) 14:02:20 ID:XGZT4tWY
>(setq a '#1=(1 2 3 . #1#))
こういう #1 みたいなのの使い方を解説してるサイトってない?
gensym 代わりに使ってるのは見るんだがよくわからん。
212名無し~3.EXE:2006/08/22(火) 14:08:50 ID:DIZCGzb8
2chのログファイルっぽいファイル名(/^[0-9]{8,10}\.dat$/)だったら
ファイルを開いた時点で
2ch-modeのthread-open-local-datで開いたのと同じ動作をさせたいのですが
そういう方法はありますか?
213名無し~3.EXE:2006/08/22(火) 14:17:02 ID:G9reuUx9
>>211
テンプレにもあるけど、ここ見た。
ttp://www.geocities.jp/m_hiroi/xyzzy_lisp/abclisp10.html#yori15
214名無し~3.EXE:2006/08/22(火) 14:24:06 ID:lbv7JX7I
変数が定義されていません: clist
(defun insert-to-circle (symbol item)
(setf clist (eval symbol))
(set symbol
(if (consp clist)
(setf (cdr ((lambda (f) (funcall f f clist))
(lambda (f a)
(cond ((eq (cdr a) clist) a)
((eq (cdr a) nil) a)
(t (funcall f f (cdr a)))))))
(cons item clist))
(progn
(setf clist (list item))
(setf (cdr clist) clist)))))
にしてみたらいけた
215名無し~3.EXE:2006/08/22(火) 14:50:36 ID:G9reuUx9
letはずしてグローバルにすりゃいけるのは当然かと。
一時変数なんでletの中に閉じ込めておきたいんだけど、無理かな。
バイトコンパイルしなければちゃんと動いてるし。
216名無し~3.EXE:2006/08/22(火) 17:00:33 ID:XGZT4tWY
>>213
thx

>>210
(lambda (f) (funcall f f clist)) を (funcall (lambda (f) (funcall f f clist)) に代えたらいいみたいよ。
217名無し~3.EXE:2006/08/22(火) 18:39:41 ID:G9reuUx9
>216
ありがと。できた。
218名無し~3.EXE:2006/08/22(火) 20:29:55 ID:EhZxGx1P
219名無し~3.EXE:2006/08/23(水) 17:31:46 ID:83qhGyN5
Ticagoのボールドを使いたいがTicago_fixはボールドじゃないから使えない。
orz
220名無し~3.EXE:2006/08/23(水) 19:02:42 ID:AGfXcNk7
Lispのコメントは ";" が2個なら字下げされて
3個なら行頭に置かれると聞いたんですが
何故1個じゃなくて3個なのか。何か意味があるんでしょうか?
221名無し~3.EXE:2006/08/23(水) 19:34:52 ID:E9ix9bAl
>>220
こういう慣習があるので
http://www.fan.gr.jp/~ring/doc/elisp-manual/elisp_662.html

CLtL にもあった。
セミコロンの説明の There is no functional difference 以下
http://www.supelec.fr/docs/cltl/clm/node190.html
222220:2006/08/24(木) 08:34:35 ID:2kyulGnV
>>221
なるほどそんな意味が。
dです
223名無し~3.EXE:2006/08/26(土) 20:51:07 ID:2WNooHky
>CALL STACK 5: (set-window-configuration (window-configuration 0 ((nil nil nil ...)) ...))
>CALL STACK 4: (system:*byte-code ...)
>CALL STACK 3: (select-pseudo-frame #S(editor::pseudo-frame name "Frame 1" winconf (window-configuration 0 ((nil nil nil ...)) ...) save-p t selected-fn nil deleted-fn nil))
>CALL STACK 2: (system:*byte-code ...)
>CALL STACK 1: (#<lexical-closure: (anonymous)> #S(editor::pseudo-frame name "Frame 1" winconf (window-configuration 0 ((nil nil nil ...)) ...) save-p t selected-fn nil deleted-fn nil))
不正なwindow-configurationです

Netinstallerを起動後にqを押していって終了させるんだけど、こんなエラーが出るようになった。
解決方法や原因をご存知の方教えてください。orz
224名無し~3.EXE:2006/08/27(日) 02:57:47 ID:jKptvxht
(add-hook '*post-command-hook*
(lambda ()
(popup-string "fuaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
\n\n\n\n\n\n\n\n\n\n\n" (point))))

ってしたとき、マウスカーソルの位置とポップアップの位置との距離が近いと
ポップアップされないことが頻発するんだけど
これってどうにかならない?
225名無し~3.EXE:2006/08/27(日) 06:22:35 ID:/L/vEQPi
>>224
ここで似たような事やってるので参考にする。
http://ohkubo.s53.xrea.com/xyzzy/#2ch-modification
226名無し~3.EXE:2006/08/28(月) 15:49:42 ID:gc/YbUQA
開いているファイルのタイトルバーを多段形式にしたり、グループにまとめたりする方法はありますか?
できたら便利だと思っているんだけどなー。
227名無し~3.EXE:2006/08/28(月) 16:48:48 ID:OnUh0co0
タイトルバー?
228名無し~3.EXE:2006/08/28(月) 22:25:13 ID:216vIauV
>>226
バッファバーだよね。 とりあえず今のところないはず。
<チラシ宇野ら>
bufbar2 を改造してそんな風にできないかと挑戦したけど、途中で挫折した。
とりあえず元の バッファバー と共存できるようには修正したけど、一部の
バッファだけ表示されるように作るのと、どうやって分類するかで結局つま
づいたはず。
そういえば、これもやりかけだったんだなーと思い、久しぶりに見直したら
バッファバーの左クリック時に呼び出される *buffer-bar-hook* を見つけた。
元々、これにフックされている set-buffer でバッファの表示を変えていた。
これで、元のバッファバーと同期して bufbar2 の表示も更新できた。

229226:2006/08/29(火) 13:43:22 ID:xviqq7vg
すみません、バッファバーです。
未だにバッファの概念に慣れていません。orz

>>ID:216vIauV
難しいようですね、情報ありがとうございます。
230名無し~3.EXE:2006/08/30(水) 21:27:21 ID:UZ3X6f3Q
filer.l のコピー関数とかをパクった lisp 書いてるんだけど
これ公開するときってライセンスは xyzzy と一緒のにしないといけないの?
231名無し~3.EXE:2006/08/31(木) 00:15:05 ID:sb2N60eE
>>230
$XYZZY/html/LICENSE.html にあるけど、 MITライセンスらしいので
ここ読んでください。 短くて読む気の起きるライセンスです。
http://www.opensource.jp/licenses/mit-license.html
232名無し~3.EXE:2006/08/31(木) 00:43:06 ID:UC9ta8L+
MITライセンスは、立場的に中立なBSDライセンスのようだから、
ドキュメントに作者の名前書くだけで良さそう
233名無し~3.EXE:2006/08/31(木) 02:06:52 ID:D/jGG0pj
>>232
ライセンスの話をしてるときに
良さそうとか曖昧なこと言うのやめない?
234名無し~3.EXE:2006/08/31(木) 02:47:37 ID:/Eh/7I1N
作者の名前(著作権表示)だけじゃダメでしょ。
MITライセンスの条文(本許諾表示)も必要。

って解釈で合ってるよね?
235名無し~3.EXE:2006/08/31(木) 03:42:58 ID:oJ3pG4ol
ということは、自分がBSDで配布してたら
自分の名前
MITライセンスの関数の作者名
BSDの条文
MITの条文
ってなってごちゃごちゃするけどそんなもん?

さらにその配布ファイルの関数をパクった人がNYSLにするなら
BSDとMITとNYSLの条文もいるってことになって、
またごちゃごちゃするけどそんなもん?

謝辞としてこれこれを参考にさせていただきました
って書いてるのにライセンスのところに作者名を入れてない人もいるけど、
参考にした程度だと書かなくてもいいの?
その場合、具体的に何をやったら元の作者名書かないといけないの?

あと、名無しの人が書いたwikiのtipsのライセンスはどうなるの?

質問ばっかりでスマン。
236名無し~3.EXE:2006/08/31(木) 21:28:47 ID:e/h0kEME
http://xyzzy.s53.xrea.com/wiki/index.php?cmd=read&page=tips%2F%B1%A6%A5%AF%A5%EA%A5%C3%A5%AF%A4%B7%A4%CA%A4%AC%A4%E9%A5%DB%A5%A4%A1%BC%A5%EB%B2%F3%C5%BE%A4%C7%A5%D0%A5%C3%A5%D5%A5%A1%A4%F2%B0%DC%C6%B0
ここの一番上にあるのを導入したんだけど,たまに右クリックなしで切り替えるようになってしまう.
なんでだろう.orz
237名無し~3.EXE:2006/09/01(金) 05:12:33 ID:vTAi5Pbl
>>236
それは、xyzzy上で右クリックしながらポインタを画面
の外に持っていってクリックを戻したときに起こる。

これで直るはず。
(defun initialize-right-button-state ()
(setq *mouse-right-button-state* nil))
(add-hook '*activate-hook* 'initialize-right-button-state)

238名無し~3.EXE:2006/09/01(金) 14:24:07 ID:nPm9ArvA
>>237
ありがとうございました。m(_ _)m
大丈夫なようです。

自分で不具合が直せないため、導入していないLispがよくあります。
自身がLispができればいいんですけどね、申し訳ないです。
239名無し~3.EXE:2006/09/01(金) 17:23:28 ID:GGxVsPi4
久しぶりにkamailv3バージョンうp
240名無し~3.EXE:2006/09/07(木) 06:10:32 ID:2B+nMoNO
文字コードを変更して新しく開きなおす
の 入力をどうしても覚えられないので
C-u と
C-x C-v をそれぞれdescribe-bindingでみて
みようみまねで書いてみましたが、できませんでした。

(defun open-with-other-encode ()
(interactive)
(universal-argument 'find-other-file))

universal-argumentがそもそも繰り返しのはずなのに
なんでこの入力この動作になるんでしょうか?
241名無し~3.EXE:2006/09/07(木) 06:44:54 ID:si//edUL
> universal-argumentがそもそも繰り返しのはずなのに
> なんでこの入力この動作になるんでしょうか?
interactive の 0z のおかげ。

encoding を引数に取る関数を書いて、
interactive で zEncoding: でエンコーディング入力できるようにして、
現在のバッファのファイル名と一緒に find-other-file に渡す

と言う関数を書けば良いんじゃない?
242名無し~3.EXE:2006/09/07(木) 11:53:07 ID:YGI1vnoq
>240
(defun open-with-other-encode ()
(interactive)
(let ((*prefix-args* 'universal-argument)
(*prefix-value* 4)
)
(call-interactively 'find-other-file)
))
243名無し~3.EXE:2006/09/07(木) 19:22:00 ID:qpx1Pfz4
(messege "hello")を評価するとtと表示されます
なぜhelloと表示されないのでしょうか?
244名無し~3.EXE:2006/09/07(木) 19:44:32 ID:mEKmrbjU
>>230 の話題、結局どうしたらいいんだろ。

>>243
戻り値がステータスバーに表示される方法で評価してるせい。
messageの戻り値がt。
↓を評価してCtrl+1押してみ。
(global-set-key #\C-1 (lambda () (interactive) (message "hello")))
245名無し~3.EXE:2006/09/07(木) 19:48:17 ID:qpx1Pfz4
>>244
あー、わかった気がします
ありがとうございました
246名無し~3.EXE:2006/09/07(木) 20:27:57 ID:5JrdhSsh
セッションファイルを開いても、trace out putを常に表示しておく方法はありますか?
247名無し~3.EXE:2006/09/07(木) 22:41:02 ID:VXNJ/Vsf
>>246
うちではこれでうまくいってる
が、 *stack-trace-buf* ってどこで定義されてるんだかよくわからなくなった
(buffer-stream-buffer *error-output*) で取得するのが正しいかも

(in-package "ed")
(defun close-session (&optional noask (create-new t) (fn #'write-file))
  (interactive "p")
  (save-some-buffers (not noask) fn)
  (auto-save-session-file)
  (let ((protected-bufs (list (find-buffer "*scratch*")
                              user::*stack-trace-buf*)))
    (dolist (buffer (buffer-list))
      (or (member buffer protected-bufs)
          (delete-buffer buffer))))
  (delete-all-pseudo-frames create-new)
  (delete-other-windows)
  (setq *current-session-file-name* nil)
  (clear-message))
(in-package "user")
248名無し~3.EXE:2006/09/08(金) 18:59:59 ID:LhFyI3S9
すみません質問してもいいでしょうか?

例えば、拡張子 asm のファイルだけ、タブ1個分の表示幅を8とかに
したい場合、どのように設定すればいいでしょうか?

今のところ毎回、ローカル設定で変えていますが、記憶されないので、
不便に思ってます。
249名無し~3.EXE:2006/09/08(金) 20:31:43 ID:SjoCkA1v
教えてください。
バイトコンパイルすると期待通りの動作してくれなくて困ってます。
バイトコンパイルしなければ期待通りに動くし、
全く同じファイルをバイトコンパイルして
うまく動くlcを作ってくれることもあります(ファイルサイズが微妙に違う)。

変な思い違いをしているんでしょうか?
アドバイスください。

xyzzy v0.2.2.235
OS win2k/xppro

---test.l---
(provide "hoge")
(defpackage "hoge" (:use "lisp" "editor"))
(import 'hoge::foo)
(in-package "hoge")
(setq foo 'foo)

期待する動作
M-x load-file "~/test.l"
---*scratch*---
foo
->foo
250名無し~3.EXE:2006/09/08(金) 21:04:51 ID:Eo/TQyqs
すみません、行カーソルだけでなく、列カーソルも表示させたいのですが、
そのような方法はありますか?
251名無し~3.EXE:2006/09/08(金) 21:29:23 ID:qDbMLykA
>>250
素直にmeadowでも使ったらいいのに・・・
252名無し~3.EXE:2006/09/08(金) 23:10:17 ID:gMK292Hj
>>248
asm-mode を使ってるならフックに引っ掛ける。
そうでなければこんなのとか?

(pushnew '("\\.asm$" . (lambda () (set-tab-columns 8 (selected-buffer))))
         *auto-mode-alist*
         :test 'equal)

>>249
lc を見比べればうまく行く場合と行かない場合でどう違うかはわかると思う。
バイトコンパイル時に hoge::foo が user から見えるかどうかの違いかな。
253248:2006/09/08(金) 23:44:30 ID:LhFyI3S9
>>252
Thanx! 本当にありがとうございます。すごく助かりました!
254名無し~3.EXE:2006/09/08(金) 23:52:51 ID:Eo/TQyqs
>251
やはり無理ですか。最近また秀丸を使う機会があったのですが、列カーソルもありましたので
xyzzyでも可能かと思ったんですが、無理ですか、さすがに・・・
255名無し~3.EXE:2006/09/09(土) 06:03:51 ID:2U+BkgiP
>>254
秀丸で出来るから他のソフトでも可能と思うのが意味不明
256名無し~3.EXE:2006/09/09(土) 12:25:36 ID:xMRFy2/P
>>252
ありがとうございます!
教えてもらってからあれこれ試してみて、
期待どおりの動作をしてくれる場合とそうでない場合の
状態がわかりました。

以下恥ずかしい話ですが…
userで変数fooがバインドされているとバイトコンパイルで
修飾子fooを無視してlcを作るみたいです。
考えてみるとそのほうが動作としていいですもんね。

実際にしたかったのは、自作パッケージ内でdefvarして
.xyzzyで変更するということだったのですが、
つくる過程で.xyzzy内に変更を書いてしまっていたので
それが先に読み込まれてしまって修飾子抜きの
lcが作られていたみたいです。

ほんとありがとうございました。
257名無し~3.EXE:2006/09/09(土) 12:30:49 ID:elDZo+MD
vi-modeあるみたいだけど、まだ微妙だな。
258名無し~3.EXE:2006/09/09(土) 13:07:34 ID:2U+BkgiP
>>257
どの辺が?
他のmodeに比べてもできは普通だとおもうけど・・・
259名無し~3.EXE:2006/09/10(日) 01:44:26 ID:HD6ieWQX
>>256
> 実際にしたかったのは、自作パッケージ内でdefvarして
> .xyzzyで変更するということだったのですが、
そういうことでしたらこう書くべきかと。
rijndael.lはその辺のことを意識して書いたつもりです。

(provide "hoge")
(eval-when (:compile-toplevel :load-toplevel :execute)
(defpackage "hoge" (:use "lisp" "editor") (:import-from "user" foo)))
(in-package "hoge")
(setq foo 'foo)

userパッケージが自作パッケージよりも先に存在するので、
userパッケージから自作パッケージにインポートするという流れのほうが
自然だと思います。
260名無し~3.EXE:2006/09/10(日) 21:50:24 ID:FGcvQRuY
>>259
ありがとうございます!!
さっそくパクらせてもらいました。
数回バイトコンパイルしたところまったく異常なし(当たり前か)。
感謝です。

でもやっぱり変な思い違いしてたんだなあ。
ご指摘どおり
> userパッケージから自作パッケージにインポートするという流れのほうが
そのとおりでございやす。

rijndael.l面白そうですね。使わせていただきます。
いろいろありがとうございました。
261240:2006/09/13(水) 07:29:45 ID:GwK42zMx
>>242
ありがとうございます。
始めに思っていた通りの動作になりました
>>241
丁寧な説明有難うございます。
なんとか書けました。
(defun reopen-with-other-encode (encode)
(interactive "zEncoding: ")
(find-other-file (concat (default-directory (buffer-name (selected-buffer))) (buffer-name (selected-buffer))) encode))
262名無し~3.EXE:2006/09/13(水) 08:02:32 ID:UYVKx3kT
get-buffer-file-name
263240:2006/09/13(水) 09:02:44 ID:GwK42zMx
>>262
スッキリしました。どもです
264名無し~3.EXE:2006/09/14(木) 11:04:16 ID:sWKk10sN
dabbrev-popupの挙動は仕様なんでしょうか?
例えばmultiply-by-sevenという文字を補完する場合、multまで打ち込んで
dabbrev-popupを使うとmultmultiply-by-sevenのようになってしまいます
dabbrev-expandの場合はmultiply-by-sevenとなり、残りの文字だけを挿入してくれます
265名無し~3.EXE:2006/09/14(木) 14:15:21 ID:cf3C6ORQ
complete+を使ってるならその辺の設定を全部コメントアウトしれ
俺んとこもそうなったけど、↑をやったら直った
それでもダメだというならもうワカンネ
266名無し~3.EXE:2006/09/14(木) 18:10:49 ID:Oo+kI9/7
すみませんAutohotkey用の定義ファイルみたいな物はありますか?
267名無し~3.EXE:2006/09/14(木) 23:36:11 ID:UsIjxPgj
>>266
脳内補完が一切不要な程度に誰が読んでも意味がわかるように書いてください。
268名無し~3.EXE:2006/09/15(金) 10:23:17 ID:LM5yxnWh
>>265
その通りでした
該当部分をコメントアウトしたらちゃんとした動作になりました
ありがとうございました
269名無し~3.EXE:2006/09/15(金) 13:19:43 ID:Hq8/ss16
>>266
みたいな物って何?
270名無し~3.EXE:2006/09/15(金) 16:58:04 ID:BPf8rfjL
いつのまにかcrayonzen氏のHPが消えてる。
adjust-column や hmark を使わせてもらってたので残念。
復活はしないのかな。
271名無し~3.EXE:2006/09/15(金) 20:25:54 ID:I6nLJXCF
xyzzyの音 の「後ろ向きに行を削除」を使っているのですが
ミニバッファでは無効になってしまうようです。
有効にするにはどうすればいいのでしょうか?

(defun backward-kill-line ()
(interactive)
(kill-region (point) (progn (goto-bol) (point))))
272名無し~3.EXE:2006/09/15(金) 20:42:15 ID:snJYLxIP
こうしてみるとか? ちょっと動作違うかな。
(defun backward-kill-line ()
(interactive "*")
(kill-line 0))

271でも使えたけど。
273名無し~3.EXE:2006/09/16(土) 11:30:19 ID:nOm3gmtP
complete+バージョンうp
上の方で言ってる件は修正されたようだ
274名無し~3.EXE:2006/09/16(土) 16:54:45 ID:UIFb1xtq
>>273
おー、直ってますね
でもえらく重くなりましたね
275名無し~3.EXE:2006/09/16(土) 20:28:20 ID:EAdj8C4t
>>274
そんなに重くなったとは思わないのですが…
バイトコンパイルしてます?
276名無し~3.EXE:2006/09/17(日) 04:27:04 ID:wOxJRT79
>>272
だめなようです。通常のバッファでは動くんですが
Findfile や renemeで出したミニバッファ上では動きません。
277名無し~3.EXE:2006/09/17(日) 09:29:13 ID:uTOE2d6b
>>276
どっちでも問題なく動作してると思うんだけど。
期待する動作と実際の動作がどう違うのか具体的に書いて。
278名無し~3.EXE:2006/09/17(日) 12:20:48 ID:pyY8bzSl
やった事とやりたい事を詳しく書きますと

まずsiteinit.lに以下のように書いて、ダンプファイルを削除、再起動
(defun backward-kill-line ()
(interactive)
(kill-region (point) (progn (goto-bol) (point))))
(global-set-key #\C-j 'backward-kill-line)

この時点で通常のバッファ(*scratch*や c:\temp\foo.txt)では
C-jでカーソルより前の部分を削除できるが
Rename(C-x C-n)等でミニバッファ上で作業してる時は
C-jを押しても無反応。(初めから表示されてるアドレスを削除したい)
今はC-a(行頭に移動), C-k(カーソルより後ろを削除)で対応してる。

こんな感じです。どこかおかしい所ありますか?
279名無し~3.EXE:2006/09/17(日) 12:33:57 ID:VvPU0zaA
C-j
280名無し~3.EXE:2006/09/17(日) 13:28:31 ID:hisz+BMI
>>278
(define-key minibuffer-local-map #\C-j 'backward-kill-line)
(define-key minibuffer-local-completion-map #\C-j 'backward-kill-line)
(define-key minibuffer-local-must-match-map #\C-j 'backward-kill-line)
(define-key minibuffer-local-command-line-map #\C-j 'backward-kill-line)
281名無し~3.EXE:2006/09/17(日) 15:56:33 ID:OJdocvee
>>278
#\LFD = #\C-j

( define-key で定義された) ローカルなキーバインドは
( global-set-key で定義された) グローバルなキーバインドより優先される

minibuffer.lの最後のほうに定義されているのは
ミニバッファで使われるローカルなキーバインド

ミニバッファでは補完の種類等によって4つのローカルなキーマップがある

…この辺が分かればいいかな。
282名無し~3.EXE:2006/09/17(日) 16:01:28 ID:7Qe7UV8K
>>275
バイトコンパイルしてます
補完に*Completion*バッファを使ってますが、
多分、「*Completion*バッファの候補のマッチしてる部分を強調表示機能追加」の処理
によって(私の貧弱な環境では)かなり重くなったのだと思います
前のバージョンで不足ないのでそちらを使っています
283名無し~3.EXE:2006/09/19(火) 03:57:59 ID:xYqALZ2K
>>280-281
キーバインドの設定が根本的に間違えてたんですね。
ありがとうございます。解決しました。
284名無し~3.EXE:2006/09/20(水) 11:25:10 ID:bGZ2sbB5
どうか>>212にヒントだけでもください。
285名無し~3.EXE:2006/09/20(水) 12:20:14 ID:CMVAxCOE
>>284
君は初心者スレのほうがよくないか?
286名無し~3.EXE:2006/09/20(水) 12:40:52 ID:SsRgfT0P
ヒントだけならだすが
・thread-open-local-dat のファイル名を取得して動作するバージョンを作る。
・ファイルを開くときのhookに引っ掛ける
287名無し~3.EXE:2006/09/20(水) 14:54:41 ID:6DhF21eV
288名無し~3.EXE:2006/09/21(木) 06:53:03 ID:mJ5ybNlv
>>285
初心者ですがLispのコードが必要かどうかを判断基準にしてこっちに来ました。
只今頑張って勉強中なので勘弁してくれると嬉しいです
>>286-287
ありがとうございます。
thread.lにファイル名を取得するバージョン my-thread-open-local-dat を書いて
siteinit.lに以下を追記

(find-file (concat (si:system-root) "site-lisp/2ch/main.l"))
(eval-buffer "main.l")
(kill-buffer "main.l")
(find-file (concat (si:system-root) "site-lisp/2ch/thread.l"))
(eval-buffer "thread.l")
(kill-buffer "thread.l")
(find-file (concat (si:system-root) "site-lisp/2ch/macro.l"))
(eval-buffer "macro.l")
(kill-buffer "macro.l")
(add-hook '*before-find-file-hook*
#'(lambda (x)
(when (string-matchp "[0-9]\\{8,10\\}\.dat$" x)
(2ch::my-thread-open-local-dat x)
(selected-buffer))))

これである程度希望する動作に近づけることができたのですが
いくつかわからない所があったので質問させて頂きます。

thread-open-local-dat が定義されてるthread.lを直接変更してるので2ch-modeを更新するときマズそう。
→ siteinit.lに書く場合はどう書けばいいのか
正規表現 "[0-9]\\{8,10\\}\.dat$" を
"^[0-9]\\{8,10\\}\.dat$"にすると認識してくれなかった
→ 先頭一致の正しい書き方
ファイルを探して→実行して→閉じる の繰り返しはもっとまともな書き方はないものか。
289名無し~3.EXE:2006/09/21(木) 08:35:27 ID:uLrnf97J
>>288
> thread-open-local-dat が定義されてるthread.lを直接変更してるので2ch-modeを更新するときマズそう。
> → siteinit.lに書く場合はどう書けばいいのか
関数定義も siteinit.l に書けばいいんでない?
その場合 in-package を忘れないように。

> 正規表現 "[0-9]\\{8,10\\}\.dat$" を
> "^[0-9]\\{8,10\\}\.dat$"にすると認識してくれなかった
> → 先頭一致の正しい書き方
先頭一致の書き方はそれでいい。
file-namestring でファイル名だけ取り出せばマッチするんじゃないかな。

> ファイルを探して→実行して→閉じる の繰り返しはもっとまともな書き方はないものか。
load とか require とか。
この場合
(require "2ch/main")
で必要なものは全部ロードされる。
290名無し~3.EXE:2006/09/21(木) 10:28:53 ID:mJ5ybNlv
>>289
詳しい解説ありがとうございます。
2chのdatファイルを開けば自動的に2ch-modeで見れるようになりました。

それで元々これがしたかった理由は
「grepで2chのログが引っかかったとき、そのままだと見にくい。」
だったのですが、今試してみたところgrepの結果から
first-errorでジャンプする場合ファイルを開くこと自体ができませんでした。

grepからの結果でも開けるようにするには何処を触ればいいのでしょう?
291名無し~3.EXE:2006/09/21(木) 10:36:57 ID:Vm0PMqWP
>>290
質問の回答ではないけど、2ch-modeのgrep機能つかうんじゃだめ?
292名無し~3.EXE:2006/09/21(木) 14:06:25 ID:ZSxDV/nD
>>291
2ch/grep.lを見てみたんですが使い方がわかりませんでした
どう使うんでしょうか? 解説してる所とかありませんか
293名無し~3.EXE:2006/09/21(木) 16:08:06 ID:Vm0PMqWP
>>292
/ を打鍵する
294名無し~3.EXE:2006/09/21(木) 16:30:39 ID:rwLDOY4O
>>292
または ? を打鍵する
295名無し~3.EXE:2006/09/22(金) 03:53:40 ID:igF4Tzdd
>>293-294
ありがとうございます。
試してみましたが、これは2ch-modeで取得したログ内から検索するものなんですね。
該当の2chログは面白そうなスレッドを過去ログサイトなどからdatファイルで拾ってきた物なので
残念ながら自分の用途には使えませんでした。
ぶつ切りの情報を出してしまい、すいません。
296名無し~3.EXE:2006/09/22(金) 07:53:22 ID:NSODtBz6
>>295
いや、追っかけスレに追加すれば過去ログでもgrepできるでしょ。
だいぶ前にここの過去ログに追加の仕方を書いたような気がする。
297296:2006/09/22(金) 07:59:33 ID:NSODtBz6
失礼、励まし合うスレの方だった。
ttp://makimo.to/2ch/pc5_software/1088/1088948470.html#669
298名無し~3.EXE:2006/09/22(金) 08:57:39 ID:ZVtR/bqX
>>295
あなたが作った関数my-thread-open-local-datを貼ってください
299名無し~3.EXE:2006/09/24(日) 07:11:11 ID:91fL7Gs8
>>296-297
スレ番までどうもありがとうございます。これでgrepも使えるようになりました

一つ気づいたのが
("ソフトウェア" "pc5.2ch.net" "/software/" "1063367821.dat" "xyzzyの使い方がわからぬヤシ 励ましあえ その3" "1001")
とありましたが
("ソフトウェア" "" "" "1063367821.dat" "xyzzyの使い方がわからぬヤシ 励ましあえ その3" "1001")
こう書いて過去ログを .2ch/dat/ の下に入れても見えるようです。

ただ、この方法ですと.2ch/ 配下にしか .dat ファイルを置けないのがまた問題になってしまいます。
その過去ログは外部からでも参照したい時の為に定期的にレンタルスペースにUPしてまして
Webサイト用のフォルダから移動させたくないのです。
ですので、もう少しgrepの結果からでも飛べるようにするにはどうすればいいか調べてみます。

>>298
(defun my-thread-open-local-dat (&optional data-file)
(interactive)
(let* ((if (equal data-file nil)
(data-file (file-name-dialog :title "Local dat"
:default *thread-local-dat-directory*)))
(board "local")
以降は thread-open-local-dat を何も弄くってません。
data-fileが与えられなかった場合はオリジナルと同じ動作にしようとしたのに
できなかった跡が残ってます。
300名無し~3.EXE:2006/09/24(日) 10:22:02 ID:wc8FX4Hc
>>299
>  (let* ((if (equal data-file nil)
>   (data-file (file-name-dialog :title "Local dat"
>  :default *thread-local-dat-directory*)))
これだと if を (equal data-file nil) の結果に束縛してる。

こっちが意図する動作?
(let* ((data-file (or data-file
                      (file-name-dialog :title "Local dat"
                                        :default *thread-local-dat-directory*)))
301名無し~3.EXE:2006/09/24(日) 11:14:00 ID:mhjwUtlV
>>299
こっちの環境ではgrep結果から飛べるけどなぁ
多分grep-mode.lかpicup-grep.lのおかげでできていると思う

希望の行数に飛べないという問題があるけど
302名無し~3.EXE:2006/09/24(日) 13:44:28 ID:oMPivKk0
右クリックが利かなくなった。
原因がわからずorz
303名無し~3.EXE:2006/09/24(日) 13:56:43 ID:91fL7Gs8
>>300
data-file が nil であれば file-name-dialog を出して値を取得する
を書きたかったのですが…。
>>if を (equal data-file nil) の結果に束縛してる。
すいません意味がよくわかりません、「束縛」とはどういうことでしょうか。

1: (setq data "foo1")
2: (let* ((data (or data "foo2")) (list data)))
例えばこの場合1:をコメントアウトすれば "foo2",しなければ "foo1" としたいのですが
思う通りの結果になりません。この場合はどう書けばいいのですか?
>>301
あとで試してみます。
304名無し~3.EXE:2006/09/24(日) 16:24:14 ID:3T71CTSr
>>303

>>299 だとifっていう"変数"に(equal data-file nil)の結果を代入してる。
> data-file が nil であれば file-name-dialog を出して値を取得する
ならきっと>>300
分からんならリファレンスとにらめっこしてください。
あと、その例は何を言いたいのかよく分からない。
1を一度評価したらコメントアウトとか関係なくない?
305300:2006/09/24(日) 16:53:01 ID:4gZxlSbZ
回りくどい言い方をしてしまったね。
要は let* の書き方が間違ってる、と。

>>303 の後半でやりたかったのは

(let ((data "foo1"))
  (let ((data (or data "foo2"))) data))
=> "foo1"

(let ((data nil))
  (let ((data (or data "foo2"))) data))
=> "foo2"

ということかな。
306名無し~3.EXE:2006/09/27(水) 05:14:51 ID:ybJ6KKQC
>>304-305
やっと理解できました。ありがとうございます
>>301
grep-mode.lを入れた所grepから飛べるようになりました。
ただ、grep検索が終わった直後に以下のエラーメッセージが出てしまいます
「名前が衝突するため,exportできません: editor*grep-mode-hook*」
ここで詳細はわかったので解決策を探してみます。
http://xyzzy.s53.xrea.com/qanda/wiki.cgi?p=fd00024f7f81b950a586fe6a752a0158
307名無し~3.EXE:2006/09/27(水) 08:36:08 ID:phECrriO
308名無し~3.EXE:2006/09/27(水) 16:49:43 ID:xvd6nGZz
>>306
俺は昔こんなのを教えてもらった。最後の二行が回避策。

;;; grep-mode.l
(in-package "editor")
(autoload 'grep-mode "grep-mode" t)
(add-hook '*grep-hook* 'grep-mode)
(add-hook '*grepd-hook* 'grep-mode)
(add-hook '*ggrep-hook* 'grep-mode)
(add-hook '*ggrepd-hook* 'grep-mode)
(in-package "user")
;;; 2ch-mode の grep との衝突を回避
(load-library "2ch/main")
(shadow '(2ch::grep-mode 2ch::*grep-mode-hook*) "2ch")
309名無し~3.EXE:2006/09/27(水) 17:26:57 ID:zzzdP877
>>308
横からdクス。
grep-modeを先に読み込む事で回避していたが、
これで順序に依存しなくできるのか。
310名無し~3.EXE:2006/09/28(木) 09:41:34 ID:7LFf1/U+
どちらか名前を変えた方がいいじゃないか。
311名無し~3.EXE:2006/09/28(木) 13:31:24 ID:TDZQ6DMS
>>307-308
何から何までありがとうございます
中を弄らなくていいので>>308の方法を使わせてもらいました。
312名無し~3.EXE:2006/09/28(木) 23:16:45 ID:XlSukfjC
一番最近のバッファというか、C-xbで出てくるバッファを取得する方法ってありますか?
313名無し~3.EXE:2006/09/28(木) 23:24:04 ID:ubTri8Yr
たぶん(other-buffer)じゃないか。
314312:2006/09/29(金) 00:09:56 ID:VojApy1D
>>313
(defun switch-to-buffer (buffer &optional nowarn)
(interactive "BSwitch to buffer: " :default0 (other-buffer))
ここから(other-buffer)が出てきたんだと思うけどlispから非インタラクティブに取得出来ないようです。
これは取得できないのかもしれない。サンクス
315名無し~3.EXE:2006/09/29(金) 00:26:13 ID:7VYIX01E
> lispから非インタラクティブに取得出来ないようです。
この部分はどういうこと?

ところで、other-buffer は非表示バッファを返さないんだね。
316名無し~3.EXE:2006/09/29(金) 10:13:18 ID:aoHJs1gx
software板から移動してきました。

From: [784] 名無しさん@お腹いっぱい。 <sage>
Date: 2006/09/29(金) 08:59:35 ID:4zAxJ21W0

auto-save-buffers.lを使わせてもらっているのですが、保存するときに、
共通設定で「マウスカーソルを消す」にしていても、一瞬カーソルがちらっと見えてしまうのが気になります。
何とかならないでしょうか。
_______________________________________________________

From: [785] 名無しさん@お腹いっぱい。 <sage>
Date: 2006/09/29(金) 10:09:18 ID:4zAxJ21W0

マウスカーソルをどこか適当な座標に飛ばしてしまえばいいかなと思ったのですが、
require-mouse-moveという謎な関数が見つかったもののどうしたものやら……
_______________________________________________________
317名無し~3.EXE:2006/09/29(金) 13:55:37 ID:tjV7gyoy
よく調べてないけどChangeLogに

Mon Oct 15 2001 Version 0.2.2.213
関数require-mouse-moveはダミーになった。現在のキーマップでMouseMoveが有効かどうかを見るようにした。

ってあるから require-mouse-move は関係ないんじゃね
318名無し~3.EXE:2006/09/29(金) 14:08:51 ID:9BbbaHi/
>>316

>>225のとこのkonata-mouse.lを参考にいろいろすりゃ何とかなると思う。
319名無し~3.EXE:2006/09/29(金) 14:15:14 ID:etun0bVf
>>314
出来ると思いますが…?
320名無し~3.EXE:2006/09/29(金) 14:31:52 ID:9BbbaHi/
>>319
たぶんバッファをいくつか開いた状態で
↓みたいにやったときのことじゃないかな。
(progn
(next-buffer)
(msgbox "~S" (other-buffer))
(next-buffer)
(msgbox "~S" (other-buffer))
)
321名無し~3.EXE:2006/09/29(金) 14:59:21 ID:aoHJs1gx
>318
descriptionを見る限りではそのまま使えそうな気がします。
どうもありがとうございました。
322312:2006/09/29(金) 22:37:50 ID:VojApy1D
すいませんother-bufferでできました。単にC-xbとかバッファを消したときに出てくるバッファに
set-bufferしたかっただけなのでこれで十分です。
てっきりC-xoのother-windowと勘違いしてたようでろくに試してなくて
other-bufferってのははじめて使うっぽいです。助かりました
323名無し~3.EXE:2006/09/30(土) 18:17:09 ID:TrjrrRp8
質問です:

デフォルトc-x c-sの保存で文字エンコーディングをutf-8にして保存死体のですが,
ローカル設定ー>もろもろ
の中の文字エンコーディングのところで選択してもなってくれません.
いちいち上書き保存の時に選択しなければならないのはすごく面倒いです.
何かよい方法はありませんか?
324名無し~3.EXE:2006/09/30(土) 19:54:01 ID:6o07b9Vp
全てのファイルでやっちゃっていいならこんな感じ。
(global-set-key '(#\C-x #\C-s)
#'(lambda ()
(interactive)
(save-buffer *encoding-utf8*)))

そうじゃないならset-encoding-eol-code.lっていうのがある。
でもどこから落としてきたんだろう。
作者はOHKUBOさんなんだけど。
325名無し~3.EXE:2006/10/01(日) 00:56:28 ID:Nj0JsAPN
C-x C-k f で毎回変更するのはダメですね。
326名無し~3.EXE:2006/10/01(日) 06:57:25 ID:Bs17e5Os
開くときにutf8で開けばいいんじゃなかろうか。
(setq *default-fileio-encoding* *encoding-utf8*)
327名無し~3.EXE:2006/10/02(月) 06:39:17 ID:w9KIgB5y
>>323みて思い出したけど、
セッションファイルにローカル設定も保存されるようにすることは可能ですか?
328名無し~3.EXE:2006/10/02(月) 08:09:36 ID:hw3o68bj
>>327
可能。ただ自分でセーブ、ロードする関数を書くことになる。
あと元々の関数を上書きする必要もある。
329名無し~3.EXE:2006/10/03(火) 13:19:46 ID:fqiU69F0
単語に半角英数字以外が含まれているかどうか調べるにはどうしたらよいですか?
330名無し~3.EXE:2006/10/03(火) 13:47:02 ID:fqiU69F0
string-looking-atですね。
失礼しました。
331名無し~3.EXE:2006/10/03(火) 19:43:21 ID:fqiU69F0
start-selection-as-regionで作ったセレクションがあっても、
pre-selection-pはnilを返すのですが、このセレクションの有無を調べるにはどうしたらいいですか?
332名無し~3.EXE:2006/10/03(火) 19:57:56 ID:9Nxy2xLr
get-selection-type とか?
333名無し~3.EXE:2006/10/03(火) 20:06:10 ID:fqiU69F0
>332
うまくいきました。
どうもありがとうございます。
334名無し~3.EXE:2006/10/04(水) 14:22:53 ID:K4oxRdeS
黒い羽根さんのlispに色々と付け足して秀丸風に近付けようと
「何も記録されてなかった場合は前回のマクロを残す」
「xyzzy起動時に前回のマクロを読み込む」の2つの機能をつけたかったのですが
どうしてもわからない所があったので質問させてもらいます

1つは name-last-kbd-macro で作ったシンボルを処理が終わったら
消してしまいたいのですが希望する動作の関数が見つかりませんでした。(unintern を使ってる部分)

コメントアウトしてる set-last-kbd-macro の部分で
前回のマクロを読み込んでおきたいのですが
コメントをはずすと"XYZZY_HOME/lispはディレクトリです"とエラーが出てしまいます

シンボルの削除方法、set-last-kbd-macroのエラーの原因はどうすればわかるのでしょうか?

>>335 lispコード
335名無し~3.EXE:2006/10/04(水) 14:24:50 ID:K4oxRdeS
(defun set-last-kbd-macro ()
(find-file (concat (si:system-root) "kbd-macro-temp.l"))
(setq *last-kbd-macro* (eval-buffer (find-buffer "kbd-macro-temp.l")))
;(delete-buffer (find-buffer "kbd-macro-temp.l")))
)
(defun auto-save-kbd-macro()
(if *last-kbd-macro*
(progn (name-last-kbd-macro "auto-save-kbd-macro-name")
(save-excursion (find-file (concat (si:system-root) "kbd-macro-temp.l"))
(set-buffer (find-buffer "kbd-macro-temp.l"))
(delete-region (point-min) (point-max))
(insert-kbd-macro 'auto-save-kbd-macro-name)
(save-buffer)
(delete-buffer (find-buffer "kbd-macro-temp.l")))
;(unintern 'auto-save-kbd-macro-name)
)
(progn (save-excursion (set-last-kbd-macro)))))
;(set-last-kbd-macro)
(defun startend-kbd-macro()
(interactive)
(if (kbd-macro-saving-p)
(progn
(message "end memory key")
(end-kbd-macro)
(auto-save-kbd-macro))
(progn
(message "start memory key")
(start-kbd-macro))))
336名無し~3.EXE:2006/10/04(水) 20:13:44 ID:71sbWesL
>>334
> 1つは name-last-kbd-macro で作ったシンボルを処理が終わったら
> 消してしまいたいのですが希望する動作の関数が見つかりませんでした。(unintern を使ってる部分)
シンボルを消すなら unintern でいいと思うけど。
(in-package "ed") とか書いてるなら
(unintern 'auto-save-kbd-macro-name "user")
で。
337名無し~3.EXE:2006/10/04(水) 20:26:23 ID:7XDwm4i4
(first-error)でバッファを開かずに
ただファイル名だけを取得したいんですが
どうすればいいんでしょうか。
338名無し~3.EXE:2006/10/04(水) 20:30:15 ID:38tNNCfU
>>334
> 「何も記録されてなかった場合は前回のマクロを残す」
> 「xyzzy起動時に前回のマクロを読み込む」の2つの機能をつけたかったのですが
勘だけど
(register-history-variable '(*last-kbd-macro*))
で済まない?
339334:2006/10/06(金) 00:15:30 ID:SxFaoHEo
>>336
userパッケージの中でやってますし、念のために 引数に "user"を足してみましたが
2回目以降のキーボードマクロ記録時にこの確認メッセージがでてしまいます

"auto-save-kbd-macro-nameのキーボードマクロ定義を置き換えますか?"

>>338
いけそうな気がするんですが、両方とも効果なしでした。
340338:2006/10/06(金) 03:30:28 ID:/iJIWFX7
>>339
~/.xyzzyへどうぞ

(defun save-last-kbd-macro ()
(with-open-file (out "~/last-kbdmacro.l"
:direction :output
:if-exists :overwrite
:if-does-not-exist :create)
(format out "(setq *last-kbd-macro* ~S)~%" *last-kbd-macro*)
t))
(add-hook '*kill-xyzzy-hook* 'save-last-kbd-macro)
(when (file-exist-p "~/last-kbdmacro.l")
(load-file "~/last-kbdmacro.l"))
341334:2006/10/06(金) 05:49:05 ID:SxFaoHEo
>>340
ありがとうございます。
希望通りの動作になりました。
コード見て勉強させてもらいます。
342名無し~3.EXE:2006/10/09(月) 12:00:54 ID:2aAfA7LS
emacs系のエディタは何度かトライして挫折していたけど、
xyzzyで割り切ってGatesから始めたら、何とか使えそうだ。
343名無し~3.EXE:2006/10/09(月) 12:13:50 ID:LGR1ZzDH
>>342
昔と違って今はわかりやすい説明もあるしね
Gatesよりはwinkeyをすすめるけど
344名無し~3.EXE:2006/10/09(月) 19:05:39 ID:0wQKJ6iJ
説明は昔からあったかもしれないけど、分散しすぎていた感じはあるね。
345名無し~3.EXE:2006/10/09(月) 19:38:33 ID:GjqAFXKP
俺は割り切って2ch-modeしか使わない。とりあえず幸せ。


レポート書いてた時は羅線や印刷に世話になったけど・・・
346名無し~3.EXE:2006/10/09(月) 19:50:06 ID:ai/45vSj
昔程ではないけど、今も結構分散してると思う。特にtips系。
ML、2ch、wiki、個人のブログ…
wikiにでも、全部まとめたりできないかなー
347342:2006/10/09(月) 21:53:40 ID:2aAfA7LS
>>343
winkeyにしてみたら何かちょっと不便なので、Webで調べてwinkey2と
いうのを入れたら良い感じになりました。
348名無し~3.EXE:2006/10/10(火) 00:58:00 ID:XQHmysDN
xyzzyの細かい話はないけど
Emacs 電子書棚の所が物凄くまとまっているから
大体あそこ見たら分かるような気がする。
349名無し~3.EXE:2006/10/10(火) 18:32:21 ID:MuMG1NUt
>>346
どうするのがいいと思う?
350名無し~3.EXE:2006/10/10(火) 18:35:38 ID:HT5zQcxN
>>346
まとめたところで分散によるデメリットを超える?
351名無し~3.EXE:2006/10/10(火) 18:47:17 ID:r/E9paKK
まずは2chのスレッドなくすところからだな。
352346:2006/10/11(水) 03:27:29 ID:Lrtgs3ok
そもそもの思いとして、NetInstallerみたいに1つのインタフェースで
いろんなtips系の小さいlispを簡単に持ってこれたらいいなっていうのがあります。

で、実際にそういうのを作るとなればHTMLなりなんなりを
パースしないといけないのですが、
2ch・ML・個人のブログごとにバラバラの書式で書かれたものに
全部対応するなんて無理なので、
決まった書式で1箇所にまとまってた方がいいんじゃないかと思いました。
しかし、著作権が絡むので作者の方々が動かないと始まらないという
なんとも情けない状況です。
2chに投稿された名無しさんのtipsも多分同じ(書いた人が動かないと)
だと思いますが、著作権に詳しくないのでよくわかりません。
あまり拘って出るモノも出ないような状態は好きではないのですが、
何かあると困るので…。

>>349
現状tipsが一番(?)多くあり、かつ、皆で編集できるwikiにまとめるのがいいと思います。
荒らしが来たら面倒だと思いますが…。
353346:2006/10/11(水) 03:28:36 ID:Lrtgs3ok
改行が多すぎると怒られたので続きです。

>>350
すみません。質問の意図が分かりません…。

まとめる意味はあるのか?ということなら、
まず上で妄想したTips用NetInstallerです。
他に、あちこちで検索する手間や、検索して見つけられなかった場合に
車輪の再発明をしてしまうことを少なくすることが出来ると思います。
皆が1箇所にtipsを書いてくれるようになったら、色々なサイトをチェックする手間も省けます。
あと新参の方に優しいかもしれません。

まとめる手間をかけてまでやる意味はあるのか?ということなら、個人の主観によると思います。
残念ながら、現状に満足している人にはあまり魅力的でないと思います。
違ったらすみません。

長文失礼しました。
354名無し~3.EXE:2006/10/11(水) 03:52:37 ID:aPvn35QT
じゃあまず353が率先してWikiにまとめるってことで。
あとは気が向いた人が手伝えばおkじゃね?
355名無し~3.EXE:2006/10/11(水) 04:24:32 ID:6pzeuiKS
細かくリンク張りまくるんじゃダメかな。
タグでカテゴリ分け出来るようにしたりしてさ。
356名無し~3.EXE:2006/10/11(水) 04:29:44 ID:21ejio6z
>>355
それがいいと思う。Wiki の TipsDirectory を充実させるとかで。
346 の妄想みたいなことになったら、Wiki 以外に Tips 書きにくくなりそうでいやだなー。
357名無し~3.EXE:2006/10/11(水) 06:51:46 ID:+bcabLG6
wikiに全部をまとめらるとは思えないしさ
それにwikiに人が集まったら重くなるだけだし
そしたらまたwiki自体が細分化されそう

個々でグーグルとか検索サイトを利用したほうがいいとおもう
358名無し~3.EXE:2006/10/11(水) 07:12:08 ID:AbcNw03i
適当に自分用に作ったのをブログに自分の書くのは
無責任でもいいから楽だけど。Wikiは少し気合を入れないとできそうにない。
例えWikiの人が気軽にとか言っても、見ている人が多いからね。
359名無し~3.EXE:2006/10/11(水) 08:12:35 ID:+bcabLG6
それは逆だよ
ブログの場合間違ってたら指摘されるよ
それで直してる箇所があるサイトをよくみるでしょ
直さなかったら無責任だしさ
360名無し~3.EXE:2006/10/11(水) 08:43:35 ID:AbcNw03i
まあ、考え方は人によるけど、自分がそう思うというだけだよ。
それに、指摘されることは問題じゃないね。
まず、指摘する人もそんなにいないし。
361名無し~3.EXE:2006/10/11(水) 16:12:48 ID:IBaxwfcW
俺も >>358 とまったく同じことを考えてた。
正直適当に書いたものは自分のページに載せるほうが気が楽。
Wiki には「出来がいい」と思えるものじゃないと投稿できない。
362名無し~3.EXE:2006/10/11(水) 22:10:02 ID:0WqJfAxh
うまくいってる
363名無し~3.EXE:2006/10/11(水) 22:16:34 ID:0WqJfAxh
すまんw
うまくいってるwikiでも実質がんばってるのが一人だったりするからな
前、xyzzyの記事書くと勝手にリンクはってくるサイトあったけど、あれも手動でやってたんだよな
364名無し~3.EXE:2006/10/12(木) 00:41:02 ID:N5trFhe4
>>363 それは手動じゃない可能性もあるんじゃね?
xyzzyのWikiにRSS読むの
タグにxyzzywikiとか付けたら回収するようなのをつければ良いじゃね。
リンクは一応自動でされるでしょ。SBMとかのRSS読めば誰かが勝手に
登録とかもしてくれそう。まあ、Wikiの情報で満足できないような人は
自分で探しそうなので、それが良い事なのか、よく分からないが
365名無し~3.EXE:2006/10/12(木) 01:03:27 ID:8965hoF/
366名無し~3.EXE:2006/10/13(金) 15:07:43 ID:vV6i+YEy
現状、Wikiで十分ですよ?
すごく役に立ってるし、集積していけばいいと思う。

管理がしっかりしてさえいればそれでいいです。
荒らし(SPAM)対策やってくれたり、
突然、何も言わずに消滅したりしなければ、安心して使えるし。
(昔、プログラム関係のwikiが突然、消滅したことがあったので orz)
367名無し~3.EXE:2006/10/13(金) 16:35:08 ID:C6jGD+TX
>>366
wikiだけしか見なくて平気?
368名無し~3.EXE:2006/10/13(金) 18:52:59 ID:wZgY2CKM
>>357
> 個々でグーグルとか検索サイトを利用したほうがいいとおもう

コメントにxyzzyとわかるタグを入れておくといいかも。

; kame-editor-xyzzy: ここに概要を書く

Google Code Searchはアーカイブの中も見てくれるそうだし。
369名無し~3.EXE:2006/10/13(金) 21:28:39 ID:mSrJp6Uq
WikiのTipsDirectoryを見て、十分情報まとまってるじゃん、と思ったが、
単なるリスト風テキストだから、
得たい情報があるときに調べるとかってもんじゃないね。
あれが検索しやすいリンクのデータベースになるといいかも。
370名無し~3.EXE:2006/10/13(金) 22:06:10 ID:3VtKMyiF
>>369
中の人だけじゃそこまで手が回らないから、おまいさんやってくれよ。
tipsだけじゃなく、こっちとかもまとめて。
http://xyzzy.s53.xrea.com/qanda/wiki.cgi?p=FrontPage
371名無し~3.EXE:2006/10/14(土) 01:55:24 ID:N/F9qaaN
wikiのTipsDirectoryみたいにリンク貼りまくる場合は
リンク切れがあるから怖い。
実際今みたらリンク切れて、キャッシュもないところがいくつかある。
ていうか、リンク貼りまくったら結局自分のブログに書いたtipsも人目につくんだから、
最初からwikiに投稿すればいいんじゃない?ってならない?
あと、変数を設定するだけのやつはわざわざリンク貼らんでもいいような。
372名無し~3.EXE:2006/10/14(土) 07:17:47 ID:go5HRe98
ブログの手間とwikiの手間じゃ比べられないよ
373名無し~3.EXE:2006/10/14(土) 07:37:19 ID:tIMH8c5z
自分のところに書いた方が好き勝手にやれるから気楽。
そこまで強制されたんじゃ書き込みができなくなる気がする。
374名無し~3.EXE:2006/10/14(土) 11:50:08 ID:c89E8X06
Blog までリンクを張らなくても、
Wiki内で探しやすいように分類するだけでも、
tipsが見やすくなる気がするけど。
375名無し~3.EXE:2006/10/14(土) 13:32:27 ID:FZupSg6z
自分が必要な情報については自分は知らないので書けないし
自分が知っていることは、必要性が理解できないので、何がいるのか分からない。
376名無し~3.EXE:2006/10/14(土) 14:00:56 ID:YnA6k6R7
ExtLib みたいな感じで、ExtTips みたいなものを作ってみるとかどうだろう?
377名無し~3.EXE:2006/10/14(土) 14:41:32 ID:tIMH8c5z
>>375
自分で調べた課程とか、知るに至るまでにわかりにくかった
ところとかを書けばいいんじゃないですかね?

>>376
リンクを張るだけなら、元々公にされているものなので著作権は
問題にならないと思いますが、ExtLib にしてもリンク切れが
多いし、新しい情報があまり載っていないような感じですね。

個人で全てに対応するのは困難だと思うので、多くの人に協力
してもらいやすいような形にできたらいいんじゃないでしょうか?
(その分荒らしが問題になりそうですが)
378名無し~3.EXE:2006/10/14(土) 15:48:15 ID:FZupSg6z
要らない事って書いてしまうと
必要な情報が埋もれてしまうような気もする。
分散しているって、そういうことだろ。
379名無し~3.EXE:2006/10/14(土) 16:08:44 ID:tIMH8c5z
>>378
確かにそうかも。
しかし、今のところ埋もれるほど情報は多くないような
気がするので、何も書かないよりはいいような気もする。

自分としてはそれほど必要性は感じないけど、
そういう意味ではまとめるのも意味があるのかも。
380名無し~3.EXE:2006/10/15(日) 04:26:53 ID:pw2zXLS1
xyzzyのTipsを溜めてる個人サイトの人が
サイト内検索をHyperEstraierのestmasterで
公開してくれるといいんだけどな。
おのおののnodeをリンクすれば一つの検索インターフェイスで
リンクしたサイトぶんの語句を一気に検索できる。

ただ自宅鯖で個人サイトやってる人じゃなきゃダメなんだよな.。。
381名無し~3.EXE:2006/10/15(日) 15:29:02 ID:r/AzDoO2
>>380
HyperEstraier は使った事ないけど便利そうだね。

xrea で HyperEstraierを動かすって言うのがあるから、
wiki にも入れてもらえたらなー。
http://fruit.blogdns.com/hyperestraier/index.html
382名無し~3.EXE:2006/10/15(日) 22:17:06 ID:F24V2E6e
入門CommonLisp買ってきた。
いつの間にか出てたんだね。
383名無し~3.EXE:2006/10/16(月) 00:10:31 ID:T94ZkD9B
俺もこの間本屋で見掛けたので速攻確保した。
まだ一ページも読んでないorz

反省はしている。
384名無し~3.EXE:2006/10/17(火) 17:35:24 ID:ME94lgKq
>>383
そいつを俺に寄付すれば万事解決
さもなくば万事休す
385名無し~3.EXE:2006/10/18(水) 00:25:09 ID:gHmtv/BG
(set-syntax-end-comment *syntax-table* #\LFD nil t)

(set-syntax-end-comment *syntax-table* #\LFD t t)
の場合があるけど違いはなんですか?
386名無し~3.EXE:2006/10/18(水) 17:00:38 ID:J2tWPfIn
>>385
ちょうどこないだ試したとこのような。
基本的には S 式とか括弧とかを移動する関数に影響があるみたい。
forward-sexp とか goto-matched-parenthesis とか。

t ..... コメント中の括弧も数える
nil ... コメント中の括弧は無視する

という感じだと思う。
ソースをきちんと読んだわけじゃないから間違ってるかも。
387名無し~3.EXE:2006/10/19(木) 00:39:53 ID:cOKpvKNn
scheme-mode.l の配布サイトが閉鎖してしまった模様。
誰かどこかにうpきぼんぬ。
388名無し~3.EXE:2006/10/19(木) 09:09:22 ID:zLLXzkzv
>>387
再配布許可がないので無理
389名無し~3.EXE:2006/10/19(木) 18:35:58 ID:FyB6sn8G
Netinstallerでparen入れられなくなってる。すぐ見つかるからいいけど。
390名無し~3.EXE:2006/10/19(木) 18:56:30 ID:Yvgtbv/3
そういうのはWikiのどこに突っ込みを入れるのかよく分からんね。
391名無し~3.EXE:2006/10/19(木) 21:35:33 ID:3gkx9M4e
favorites.l入れて、site-lispやら%HOME%やらのショートカット突っ込む これ最強
392名無し~3.EXE:2006/10/19(木) 23:53:44 ID:3nI3RX47
html+-mode で保存時に browserex でカーソルがある場所? を
表示するようにする拡張lispってどこかにありませんでしたか?
navigate-current-file or buffer だと表示するだけで違うので。

昔 2ch で見た気がするけど、どうしても見つからない…
393名無し~3.EXE:2006/10/20(金) 01:00:32 ID:jk25Iw9T
ども。
>>392
自分の日記に書いたような記憶があったので掘り起こしてみました。
もしこれのことであれば。
(defvar *hoge-preview-filename* "00HogePreview.html")
(defvar *hoge-preview-work-bufname* " *hoge preview*")
(defun hoge-preview ()
  (interactive)
  (let ((point (point))
        (file (merge-pathnames *hoge-preview-filename* (default-directory)))
        (buffer (get-buffer-create *hoge-preview-work-bufname*))
        (buffer-contents (buffer-substring (point-min) (point-max))))
    (save-excursion
      (set-buffer buffer)
      (delete-region (point-min) (point-max))
      (insert buffer-contents)
      (goto-char point)
      (html-mode)
      (skip-syntax-spec-backward "^}")
      (insert "<a name=\"HogePreview\"></a>")
      (write-file file)
      (bx:navigate (concat file "#HogePreview")))
    (delete-buffer buffer)))
(define-key ed::*html+-mode-map* '(#\C-x #\C-s)
            #'(lambda ()
                (interactive)
                (if (fboundp 'save-buffer-with-time-stamp)
                    (save-buffer-with-time-stamp)
                  (save-buffer))
                (when (bx:browser-open-p) (hoge-preview))))
394名無し~3.EXE:2006/10/20(金) 14:23:56 ID:x9oKQZr3
>>393
おぉ、これです。思ったとおりのことができました。
ありがとうございます。
あと1つ気づいたのは、 html-mode は loadup.l ではロードされないので、
この使い方は環境によってはシンボルの衝突を起こします。
だから ed::html-mode の方がいいと思います。
395394:2006/10/20(金) 14:46:04 ID:x9oKQZr3
あぁ、うそ書いてました。
defs.l で export されてますね。
じゃぁ何でうちの環境でシンボル衝突したんだろう…
396名無し~3.EXE:2006/10/20(金) 16:11:07 ID:nHcER1gH
ミニバッファでC-kしても消えてくれないんですね
設定で消せるようにできるんでしょうか
397名無し~3.EXE:2006/10/20(金) 17:58:49 ID:JBeGUbU4
>>396
設定したかどうかわからんけど、
うちはできるよ。
398名無し~3.EXE:2006/10/20(金) 20:22:54 ID:QabRtE7u
>>396
「何が」消えて欲しいのか詳しく
399名無し~3.EXE:2006/10/20(金) 21:33:52 ID:cWP+D6aq
kamailV3使ってみたけど、メール読むたびHDDがガリガリ言うのは仕様?
Den8Viewなら大丈夫?
400名無し~3.EXE:2006/10/20(金) 22:29:20 ID:5LceDZ3S
>>396
もうちょっと詳しく説明できんのか?
401名無し~3.EXE:2006/10/20(金) 23:21:25 ID:Vav1NFPu
>>396
俺エスパーなんだが、今日はちょっと受信にムラがあって、自信ないすまん。
多分C-kではなくてC-xkでミニバッファーを消したいってことだろ。
無理だからC-gかESC-ESCで消してくれ。
402名無し~3.EXE:2006/10/21(土) 00:42:34 ID:ptYeN607
きっと>>396はミニバッファでkill-lineが効かないんだろう(デフォルトなら効くはず)
それで消えてくれないと言っている、と想像
403名無し~3.EXE:2006/10/21(土) 01:37:12 ID:8DV2ZPi2
396の人気に嫉妬。
404名無し~3.EXE:2006/10/21(土) 01:48:11 ID:kjV1VL0E
C-x C-f C-a C-k で消えたが…
405名無し~3.EXE:2006/10/21(土) 10:29:30 ID:j2xMS/JC
拡張Lispどっさり更新着てます
お疲れ様です
406名無し~3.EXE:2006/10/22(日) 14:39:24 ID:hPWCLQch
ウム
407名無し~3.EXE:2006/10/22(日) 18:25:36 ID:sCdo/I5c
なにがどっさりきた?
408名無し~3.EXE:2006/10/22(日) 18:55:40 ID:dFvS4wH7
>>407
olt2とかの更新。NetInstallerの話し。
409名無し~3.EXE:2006/10/22(日) 19:39:28 ID:+GDKTByB
>>408
いや、>>405 書かれた時間はまだ olt2 の更新はきていなかったよ。
410名無し~3.EXE:2006/10/24(火) 21:12:05 ID:DTkQOmN9
olt2かtreeview、どちらか分からないけど再描画が激し過ぎるよ…。
howmで検索や保存をしたり、rss-modeでRしたり、
2ch-modeでTしたりするとすっごいチラつく。

でもソースがデカ過ぎて追えない orz
411名無し~3.EXE:2006/10/24(火) 22:31:37 ID:NLYch54B
>410
右クリして、アウトライン設定のとこで「カーソル追従」のチェックをはずすとかいうことではなくて?
412名無し~3.EXE:2006/10/24(火) 23:14:04 ID:OLwsL+K2
>>410
好きなようにlisp修正すればいいだけじゃん
文句言ってる時間無駄だとおもうぞ
413名無し~3.EXE:2006/10/24(火) 23:32:12 ID:DTkQOmN9
>>411
外しても効果がないです。
howmでC-c , gして検索した時や、そこからC-nやC-pで切り替える時に、
一瞬だけ行番号や元のファイルが見えるので、
作業用のバッファの段階で表示してるのだと思います。
さらに、olt2を起動していない状態だと大丈夫なので、
*create-buffer-hook*に引っかかっている
outline-tree-create-buffer-node-by-bufferあたりから呼ばれてる関数に、
過剰にrefresh-screenが入っているのではないかと思うのですが。
414名無し~3.EXE:2006/10/25(水) 02:40:46 ID:7sliBQp4
ども。
>>410-413
なんとなく勘で対応してみましたが、どうでしょう。
415名無し~3.EXE:2006/10/25(水) 02:48:45 ID:0K/zRAkU
>>414
修正ありがとうございます。
ばっちりです。
416名無し~3.EXE:2006/10/25(水) 03:03:32 ID:7sliBQp4
ども。
>>415
なによりです。
では、歯を磨いて眠ります。
おやすみなさい。
417名無し~3.EXE:2006/10/31(火) 21:01:15 ID:feu9eVcs
Gmail Managerみたなのもできるってことですか?
418名無し~3.EXE:2006/11/01(水) 23:50:33 ID:1dyHdKia
選択した文字列の文字数を簡単に知る方法を教えてください。
選択しただけでモード行に表示してくれたりすると嬉しいのですが...
419名無し~3.EXE:2006/11/02(木) 00:58:56 ID:niGdArAY
>>418
> 選択した文字列の文字数を簡単に知る方法を教えてください。
> 選択しただけでモード行に表示してくれたりすると嬉しいのですが...
(add-hook '*post-command-hook*
#'(lambda ()
(when (eql (get-selection-type) 2)
(message "Selected chars: ~D" (abs (- (selection-point) (selection-mark)))))))
420418:2006/11/02(木) 01:21:20 ID:nfk1HUcZ
>>419
ありがとうございます! まさしくそんなのを求めておりました。
xyzzyを使い始めたばかりなんですが、いろんなことが出来るんですね。

それで十分満足してますが、もし改行はカウントせず表示する方法が
ありましたらアドバイスください。
421名無し~3.EXE:2006/11/02(木) 22:09:11 ID:OmvUVxvo
>>420
> それで十分満足してますが、もし改行はカウントせず表示する方法が
> ありましたらアドバイスください。
アドバイスはめんどー
(add-hook '*post-command-hook*
#'(lambda ()
(when (eql (get-selection-type) 2)
(message "Selected chars: ~D" (- (abs (- (selection-point)
(selection-mark)))
(abs (- (save-excursion (goto-char (selection-point)) (current-line-number))
(save-excursion (goto-char (selection-mark)) (current-line-number)))))))))
422418:2006/11/02(木) 22:34:52 ID:nfk1HUcZ
>>421
どうもありがとうございました! まったく期待通りです。
423名無し~3.EXE:2006/11/02(木) 22:36:59 ID:moDJB1S/
>>421
ちょうど欲しかったので感動した!
424名無し~3.EXE:2006/11/02(木) 23:35:34 ID:nfk1HUcZ
>>421
XyzzyWikiに転載させていただきました。
425名無し~3.EXE:2006/11/03(金) 10:02:25 ID:fSQ8xIAG
>>424
2chの書き込みの著作権は、2ch運営側にあるからまずくないか?
426名無し~3.EXE:2006/11/03(金) 10:03:26 ID:h4rF11dy
>>424
勝手にやるなよ・・・
427名無し~3.EXE:2006/11/03(金) 16:03:59 ID:/GkzCXaq
>>425
気にしすぎだ。
428名無し~3.EXE:2006/11/03(金) 16:35:16 ID:VDK8zY63
書いた人からすると、ご自由にどうぞって感じ。
インデントはちゃんとして欲しかったけどね。
429名無し~3.EXE:2006/11/03(金) 16:58:51 ID:yFTvBrKl
>>425
なんか君は騙されてると思うぞ。
430名無し~3.EXE:2006/11/03(金) 18:38:55 ID:EUcpm1RV
2ch至上主義者なんだろ。キモイ
431名無し~3.EXE:2006/11/04(土) 00:32:06 ID:I1gF5J0j
逆だろ、ひろゆきは前に著作権は書いた人にあるに
決まっている的な事を云っていたので
多分、理解していないことを人に指摘していると思われ。
432名無し~3.EXE:2006/11/04(土) 15:19:32 ID:tjjeV6J6
xyzzyにてhowmを使っています。

xyzzy:0.2.2.235
howm-wrap:1.1.0.3
howm:1.1.0.3

howm_menuより「a」にて一覧表示をすると、ファイルの一覧は見れるのですが、
タイトルが同時に表示されません。

2006-11-04-115754.howm |  【ここにタイトル表示がされない】
2006-11-03-235256.howm |
2006-11-03-234231.howm |
2006-11-03.howm |

「T」と入力して、表示をトグルさせようとしても"書き込み禁止バッファです。"となってしまいます。
このような仕様となっているのでしょうか?
433名無し~3.EXE:2006/11/04(土) 16:19:58 ID:NoMLSAHv
>>432
過去ログ読もうよ。
434名無し~3.EXE:2006/11/04(土) 16:28:18 ID:NoMLSAHv
励まし合うスレに過去4回同じ質問がでてますね。
READMEにも書いてあります。
435名無し~3.EXE:2006/11/04(土) 16:58:00 ID:tjjeV6J6
>>433
>>434
ありがとうございました。
解決しました。

howm-init.lに書き込めば良かったのですね。
すっきりしました。
436名無し~3.EXE:2006/11/07(火) 07:03:33 ID:7NTBHyB9
質問です。
会社でxyzzyを使っています。先日ネットインストーラを使おうとしたところ
タイムアウトで失敗しました。
理由は会社から外部へ接続する際に自動構成スクリプトなるものを利用している
ためだと思われます。

xyzzyでプロキシの設定はできるみたいなのですが自動構成スクリプトに対応させることは
できるのでしょうか?教えてください。

xyzzyの使い方が〜のスレでは教えてくれなかったので、
ここへきました。
437名無し~3.EXE:2006/11/07(火) 09:25:02 ID:7VS36ht6
>>436
マルチダメ
こっちで回答してもらってるのに無視ですか?

xyzzyの使い方が分からぬやし 励ましあえ その9
http://pc7.2ch.net/test/read.cgi/software/1143621919/935

935 名前:名無しさん@お腹いっぱい。[sage] 投稿日:2006/11/04(土) 06:39:55 ID:Q522I33N0
質問です。
会社でxyzzyを使っています。先日ネットインストーラを使おうとしたところ
タイムアウトで失敗しました。
理由は会社から外部へ接続する際に自動構成スクリプトなるものを利用している
ためだと思われます。

xyzzyでプロキシの設定はできるみたいなのですが自動構成スクリプトに対応させることは
できるのでしょうか?教えてください。

438名無し~3.EXE:2006/11/07(火) 09:38:26 ID:uJwitQPp
>>436
多分出来るんじゃない。
439名無し~3.EXE:2006/11/07(火) 16:40:10 ID:UoVmZot8
>理由は会社から外部へ接続する際に自動構成スクリプトなるものを利用している
>ためだと思われます。


このへんをハッキリさせないとなぁ
440名無し~3.EXE:2006/11/07(火) 17:28:51 ID:wRyWbf90
>>439
IEのプロクシの、自動構成スクリプトだと思われ。

>>437
自動構成スクリプト(〜.pac)って、確かメモ帳で中身が見られたはず。
プロクシのアドレスが載ってると思うので、それを設定すればOK(だと思う)。
441名無し~3.EXE:2006/11/07(火) 22:43:49 ID:YTKWVhlo
俺はProxomitronみたいなローカルproxyかませて、xyzzyからは常にそれ経由から行うようにしてる。
.pacから抜き出した串をオミトロンに全部登録して、タスクバーから切り替え。自動設定では無いけど、
接続場所によってころころ串変わるから、いちいち串の設定の値変えるよりは相当楽。
Lisp書くスキルもないし。


442名無し~3.EXE:2006/11/07(火) 23:43:18 ID:8xrgHYSX
俺はこんなの書いてる

(require "www/www")
(defun set-proxy (host port)
;www-mode用
(setq www::*www-proxy-host* host)
(setq www::*www-proxy-port* port)
;2chとか用
(setq ni::*http-proxy-host* host) ; PROXY のホスト
(setq ni::*http-proxy-port* port) ; PROXY のポート
)
で切替は
(set-proxy "inet-gw" 80);社内
とか
(set-proxy nil nil) ;yahoo
443名無し~3.EXE:2006/11/08(水) 00:28:26 ID:V5FZ021S
>>442
ni::〜は netinstaller 用で、2ch-mode は www-mode の設定を使ってるんじゃなかったっけ?
まぁ両方同じ値に設定されるみたいなんで問題はないんだけど。
444名無し~3.EXE:2006/11/11(土) 08:54:01 ID:Az8bSxMq
共通設定ダイアログを使わずに、表示フォントサイズを
手早く切替える方法を教えてください。

445名無し~3.EXE:2006/11/11(土) 09:35:51 ID:Z/ozJHD4
>>444
lisp ではフォントサイズは変えられないはず。
やるとすれば、xyzzy.ini を変更→xyzzy を終了(セッションを保存)
→xyzzy を再起動(セッションを復元)
みたいな感じでいけるかも。
446名無し~3.EXE:2006/11/11(土) 14:09:11 ID:WKPiYCwC
>>444
複数のiniファイルを用意して、起動時オプションでiniファイル
を指定して起動する。オプションはhtml/00README.htmlで確認して。
447445:2006/11/11(土) 15:14:41 ID:Z/ozJHD4
ああ、xyzzy を終了してしまったら lisp で制御はできないか..
なので、@xyzzy.ini を変更→Aセッションを保存→Bxyzzy.exe をAで保存したセッションで起動
→C現在の xyzzy を終了 でいけるんじゃないかと思います。 Bで iniファイルを指定すれば
@はいらないかも。試してないのでまちがってたらすいません。
448444:2006/11/11(土) 16:24:38 ID:Az8bSxMq
ありがとうございます。試してみます。
xyzzy再起動を避けるため、共通設定ダイアログをいじる
uwscスクリプトという手もあるかもしれません。
449名無し~3.EXE:2006/11/11(土) 16:40:14 ID:NxxOJaYS
手早くって書いてあるのにか・・・
450名無し~3.EXE:2006/11/11(土) 17:19:22 ID:feuKK6br
手早く切り替えるための機能を入手するために、
手間は惜しまない。これがプログラマ。
451名無し~3.EXE:2006/11/12(日) 01:11:32 ID:3ijgZ5QM
xyzzyのリファレンスの正規表現の欄を見て、\Sc、\scという書き方があるのを
知ったんですが、これはどういう風に使うんですか?
説明では「シンタックスが c の 1 文字にマッチ」等あるんですが、
ここでいうシンタックスがどういう意味なのかさえ分かりませんでした。
452名無し~3.EXE:2006/11/12(日) 01:30:42 ID:+498GzSq
>>451
ヒント:
\sw = \w
\Sw = \W
453名無し~3.EXE:2006/11/12(日) 02:04:23 ID:3ijgZ5QM
>>452
うーん、わかったようでわからない状態です。
\S\ = [^\] とかはわかったんですが、\sを使うメリットがわかりません。
\sでしか表わせない文字及び文字列とかはないのでしょうか?
454名無し~3.EXE:2006/11/12(日) 05:02:23 ID:EMEzVVkt
>>453
c の部分に skip-syntax-spec-forward と同じものが使える。
http://xyzzy.s53.xrea.com/reference/wiki.cgi?p=skip%2Dsyntax%2Dspec%2Dforward
455名無し~3.EXE:2006/11/12(日) 12:16:02 ID:h2zPLJzL
>>454
ありがとうございます。これで理解することができました。
ただ、jを使うと漢字が対象じゃなくて全角文字が対象になるっぽいんですが、
これはそのページが間違ってるのか、それとも\sと組み合わせると動作が
少しかわるんですかね?
456名無し~3.EXE:2006/11/12(日) 13:00:37 ID:N3MDEDMK
>>455
syntax.cc 見た感じだと、文字の内部コードで判断してるらしい。
詳しくは見てないけど、半角カタカナ以外のマルチバイト文字は
一部のゴミ文字を除いて全部マッチしそう。

(map 'list 'kanji-char-p "(・∀・)")
=> (t t t t t)
とか。
正規表現だからというわけではないと思う。

「漢字」というと紛らわしいかもしれないね。
457名無し~3.EXE:2006/11/12(日) 23:30:17 ID:m68xj2yP
昨日のオフ会はどんな感じだったのか、教えてくらさい
458名無し~3.EXE:2006/11/15(水) 20:07:56 ID:xBtrHx8/
   ;ヾ、,.、,、.、rツ ッッシ、:':' r':' _,、-'゙_,  や 公 帰 そ
 ,、,、,ミッン、,._        _,、-'゙_,、-'゙.   っ 園. り ん
 、ィッ ,:、 ゙''ゞ=ミ、~.: _,、-'゙_,、-'゙  __,  て の 道 な
 }; ヾ ゙' {!li;:,. _,、-'゙_,、-'゙ _,、-'゙,::|_|  来  ト に わ
 ゞァ''゙ぐ _,、-'゙_,、-'゙ _,、-'゙,、-''" .|_   た イ  あ け
 ,ヘ:'_,、-'゙_,、-'゙..::「┴_,エ ┴  ''"_|_|  の. レ る で
  └i'゙-ニ,ニエ,.:|ニ「 _エ ┴  ''"_|_   だ に
    |エ | ニエ, |ニ「 _エ ┴  __.|_|_
    |エ | ニエ, |ニ「 _エ ┴ 「fj.||__|__| _|
    |エ | ニエ, |[8] _エ ┴ └‐_|_|__l__,|⊥ |__
    |エ | ニエ, |二 _.エ 二.._ |__|__| _|_|_
    |エ | ニエ, |┴ _.エ 二.._ |_|__l__,|⊥ |__|
    |エ | ニエ, |工 _.エ 二.._ |__|__| _|_|_
    |エ | ニエ, |工 _.エ 二.._ |_|__l__,|⊥ |__
  -,-=''┷━━|┬ニエ ┬--  .|__|__| _|_|_
   ''ーニ_''ー::、_ ゙┷ 工_二'‐-、,_|_|__l__,|⊥ |__
  二二二`''ーニ`_''ー-、_¨''━、L|__|__| _|_|_
  二二二二二二二`''ーニ_''ー 、_       |⊥ |__
459名無し~3.EXE:2006/11/18(土) 03:17:32 ID:zk4Bq4rW
>>457の破壊力によって、スレ凍結しそうな勢いな件について。
というか、ここまで静かだと何かやましい事があったんじゃ(ry
460名無し~3.EXE:2006/11/18(土) 03:49:37 ID:ZUi9gOOW
461名無し~3.EXE:2006/11/18(土) 12:22:04 ID:Lrl52d9f
http://xyzzy.g-artistic.net/2006/11/11/xyzzy-off-4/
cperl-mode


キタ━━━━━━(゚∀゚)━━━━━━ !!!!!
462名無し~3.EXE:2006/11/19(日) 02:34:48 ID:NQV3rfe4
タブを xyzzy の外に D&D すると、そこにもう 1 つの xyzzy が現れてそのタブの内容
を表示する機能が欲しい(秀丸のタブの分離、emacs のフレームみたいな機能)
と期待を込めて言ってみる。
463名無し~3.EXE:2006/11/19(日) 03:29:18 ID:brhNm4bI
Windowが分割できるのに何で分離するの?
464名無し~3.EXE:2006/11/19(日) 04:37:26 ID:hPVmn4Bw
マルチディスプレイとか?
465名無し~3.EXE:2006/11/19(日) 16:51:38 ID:ACd4KEjL
>>462
かっこ良さそうだな。
でも今の1ウィンドウ1プロセスの実装からすると実現は難しそうだ。
466名無し~3.EXE:2006/11/19(日) 19:10:06 ID:UxcHHHih
meadowとか他では出来るのにな・・・
467名無し~3.EXE:2006/11/19(日) 21:08:26 ID:brhNm4bI
xyzzyはmeadowじゃないから。
meadowじゃ駄目なのか?
468名無し~3.EXE:2006/11/19(日) 23:09:52 ID:oauRFQDv
つーか、meadowはemacs
469名無し~3.EXE:2006/11/19(日) 23:42:15 ID:vXwgpD0F
と完全互換ではない
470名無し~3.EXE:2006/11/20(月) 01:21:51 ID:xq3y5eiU
なんかやろうとすると「ミニバッファでは〜できません」とかなるから
C-gでミニバッファ閉じると、ポイントやら状態が戻りまくっていらいらするのは俺だけですか
ミニバッファ入ったら必ず実行かC-gするの忘れないほどできた人間じゃないんですよね
471名無し~3.EXE:2006/11/20(月) 01:39:28 ID:oIEBrQwb
>>470
で、どうしたいですか?
472名無し~3.EXE:2006/11/20(月) 01:48:58 ID:79DxbyF9
いらいらするなら自分で直せばいいじゃない
xyzzy はそういうエディタだよ
473名無し~3.EXE:2006/11/20(月) 08:10:32 ID:bLyMC7Cf
>>470
慣れるとなくなるよ。それが出るのは、
ミニバッファから抜けるときにC-gを使わない。
つまりマウスで移動しているからじゃないかと
474名無し~3.EXE:2006/11/20(月) 22:51:19 ID:yDPWYWcL
ミニバッファからは C-x o とかでも抜けられる。
ま、要は慣れの問題だろ。
475名無し~3.EXE:2006/11/23(木) 23:13:36 ID:Cs2+yAWo
xyzzyの改造版があったサイトってなくなったの?
usbメモリ用にソース書き換えてた所
476名無し~3.EXE:2006/11/24(金) 10:09:37 ID:z/av/iID
howm用ニューヨーク証券取引所の休日データ
間違いがあったらゴメン

NYSE Holidays
[2006-12-25]@ Christmas
[2007-01-01]@ New Year's Day
[2007-01-15]@ Martin Luther King, Jr. Day
[2007-02-19]@ Washington's Birthday
[2007-04-06]@ Good Friday
[2007-05-28]@ Memorial Day
[2007-07-04]@ Independence Day
[2007-09-03]@ Labor Day
[2007-11-22]@ Thanksgiving Day
[2007-12-25]@ Christmas
477名無し~3.EXE:2006/11/24(金) 10:42:54 ID:yN3oNtAE
>>475
ちょこちょこ修正版ってやつか?
今ググったら見つからないな
478名無し~3.EXE:2006/11/24(金) 11:20:49 ID:NChrkapC
479名無し~3.EXE:2006/11/27(月) 12:59:44 ID:W0Le85a7
質問です。
サンスクリット語の特殊な発音記号つきのフォント(Unicode のラテン
文字拡張追加領域の文字)を表示させるのに、
MS Reference Sans Serif とかいうフォントを使っているのですが、
■■(ただし半角)という表示になってしまいます。
xyzzy 上でうまく表示させる方法はあるでしょうか?
480479:2006/11/27(月) 13:01:51 ID:W0Le85a7
だいぶ下がってたので上げておきます
481名無し~3.EXE:2006/11/27(月) 13:43:39 ID:IOnc1pN0
>>478
それ便利なんだけど
本家がバージョンアップしたときのことを考えるとね・・・
変更部分が書いてあるけど
その部分がずっと変更されないとは限らないし・・・
ソース読めるようになればいいんだけどさ
482名無し~3.EXE:2006/11/28(火) 00:09:12 ID:luNkKLhl
和英辞書で
変化を英語に変換したら縦にchangeって表示されたけど何で?
みんなも?
483名無し~3.EXE:2006/11/28(火) 01:39:15 ID:ks8XYFRo
最近の子は質問すらまともに出来ないのか・・・
484名無し~3.EXE:2006/11/30(木) 23:27:52 ID:SoWtjjij
>>481
本家で対応してくれるように要望するのは?
485名無し~3.EXE:2006/12/01(金) 02:17:27 ID:KA8/5JeA
TextMateの補完機能?らしきものがvimやEmacsには
あるのにxyzzyにはないからxyzzyはもうヤバイとか言われているのが
なんともやるせない
486名無し~3.EXE:2006/12/01(金) 07:14:09 ID:qZlejSdW
>>485
どこで言われてるの?
あと補完機能はあるよ。
487名無し~3.EXE:2006/12/01(金) 12:33:44 ID:KSDuYL9l
どうもxyzzyのネガティブキャンペーンをしたくてしょうがない奴がいるようだ
488名無し~3.EXE:2006/12/01(金) 12:43:01 ID:34LvBKrg
今まで利用者側で開発側はよく知らないんだけど、xyzzyってKAMEI氏が一人で
開発してるの?一応オープンソースらしいけど、どっかにプロジェクトページ
でもあるの?
489名無し~3.EXE:2006/12/01(金) 12:54:50 ID:Jv8x0ccD
>>488
亀井さん一人だね。同僚の赤塚さんも開発に協力してたらしいけど
オープンソース化はされてるけど、今のところプロジェクトはない
490名無し~3.EXE:2006/12/01(金) 15:59:56 ID:UojCqP/Y
でもkamei以外のバージョンがいくつかあるみたいだね
自分が使ってるのは画像が表示できる奴
491名無し~3.EXE:2006/12/01(金) 17:04:15 ID:bA9TBmhT
独自ビルドプロジェクトがあるんですか。
画像表示いいなー
492名無し~3.EXE:2006/12/01(金) 17:04:37 ID:WkCuSZsN
>>490
詳しく。
493名無し~3.EXE:2006/12/01(金) 21:24:39 ID:KA8/5JeA
>>486
え?あるの。それは知らなかった。場所はテキストエディタスレだよ。
494名無し~3.EXE:2006/12/01(金) 22:31:25 ID:Jv8x0ccD
>>493
デフォルトで静的補完と動的補完があるぞ
ac-modeなんていう便利な物も作られている
もしなくても、Lispインタープリタ積んでるんだから作れるしね
495名無し~3.EXE:2006/12/01(金) 22:42:19 ID:KA8/5JeA
いや、それは全部唯の補完だし。
496名無し~3.EXE:2006/12/01(金) 23:03:43 ID:WkCuSZsN
>>485が言ってるのはこのへんのことかな。
というか多分勘違いしてて、Snippetがないからヤバイんじゃなくて、
盛り上がってないって言ってるだけじゃない?

テキストエディタをまた〜り語ろう ver.21
526 [2006/11/30(木) 00:49:47 ID:SnTbTeS10] 名無しさん@お腹いっぱい。 <sage>

vimでTextMateのエミュレート普通に出来てるね
ttp://www.vim.org/scripts/script.php?script_id=1318

Emacsのrails.elとsnippet.elでも同じ事出来るみたいだしやっぱりこの二つは別格かぁ

527 [2006/11/30(木) 01:23:49 ID:97U8/eYl0] 名無しさん@お腹いっぱい。 <sage>

emacsのsnippet.elはいろいろバグや使いにくいとこあるので
自分で修正して使ってる。emacsももっと盛り上がってくれ。

528 [2006/11/30(木) 01:49:50 ID:SnTbTeS10] 名無しさん@お腹いっぱい。 <sage>

emacsは普通に生きてるじゃない
それよりヤバいのはxyzzyかな
やっぱり作者のリアクションがないと盛り上がらないみたいで
こういうvimやemacsみたいな反応がない
ユーザー層が日本に限られているのもあるんだろうけどやっぱり熱が冷めてきている気がする

529 [2006/11/30(木) 04:11:06 ID:5bvNY0Kb0] 名無しさん@お腹いっぱい。 <sage>

xyzzyのlispは全体的に、Emacsの恩恵を受けて成立しているから
動きが遅れるのは仕方がないこと。emacsのがあるなら誰かが作るかもね。
まあ、スクリプトの新しいのとか更新頻度を見る限り
変化は特にない感じだけど。
497名無し~3.EXE:2006/12/02(土) 00:40:26 ID:MMmEQnkS
xyzzy使ってるならlispの様子は、いつもと同じで減っても増えてもいないし
気にする必要がないと思う。しかし補完が一つないだけで
落ち目みたいに思われてしまうのが、現状でしょ。
498名無し~3.EXE:2006/12/02(土) 01:03:16 ID:QWH/sRtg
>>490
kwsk!!
499名無し~3.EXE:2006/12/02(土) 11:26:06 ID:MpF1QZVJ
textmate の方は、ユニットテスト用のコードを生成したりできるようだけど、
emacsへの部分移植の snippet.el は、補完後のカーソル位置も指定+αの
補完という感じなのか?
むかし Eclipse のように javadoc用のコメント文を関数宣言から生成する
コードを書いたけど、そういうたぐいか?

>>490
SPI on xyzzy ではなくて?
500名無し~3.EXE:2006/12/02(土) 18:55:19 ID:iWPbpbEe
browserex のことじゃないですかね。

インライン表示はかなり難しそう。
表示速度が落ちるなら本末転倒な気もするし。

emacs は画像・フォントなど柔軟に表示できても
画面をスクロールさせるとテキストを読みにくくなるのがつらい。

emacs から開発者が来てくれないものか..
501名無し~3.EXE:2006/12/02(土) 21:45:51 ID:zX8SI9uv
>>497
>しかし補完が一つないだけで落ち目みたいに思われてしまうのが、現状でしょ。
これは君が負い目を感じてるからじゃないの?

機能の有無だけしか誰も言ってないんだからさ・・・
xyzzyのほうが上な機能も当然あるし
その機能が重要かどうかは人によるんだからさ
502名無し~3.EXE:2006/12/03(日) 05:35:08 ID:E8PwqEAw
>>501
負い目というか>>485の受けての発言だと 第三者の俺は推測してみる
503名無し~3.EXE:2006/12/03(日) 09:29:27 ID:jCyphw3Q
別に落ち目とは思わないし、Windows上で動くエディタとして
かなりすばらしいと思うけれど、開発者が少ないというのは
前から言われているところ。

別にプログラマじゃなくても拡張lispなどを書いてる人はいるんだから
特にプログラマの人には協力してもらえたらなと思います。
504名無し~3.EXE:2006/12/03(日) 11:50:53 ID:Po7v9jqA
プログラマでもlisp書けるのは少数派。
505名無し~3.EXE:2006/12/03(日) 13:20:21 ID:jCyphw3Q
>>504
まあ、そうかもしれないですけどね。

でも、リストとかループ構造とか考え方の基本は似てるのでは?

リファレンスとか解説本なんかも充実してきてることですし、
協力者が増えてくれれば喜ばしいと思いますね。
506名無し~3.EXE:2006/12/03(日) 13:25:13 ID:RNyAGqIS
いまリッチな補完を実装しようと思ったら
汎用で強力なdo-completionのようなものから作らないといけないのかな。
507名無し~3.EXE:2006/12/03(日) 13:35:35 ID:jCyphw3Q
>>506
TextMateとかリッチな補完とか良く分かってないですが、
補完なら、shiro さんの complete+ とか ac-mode とかありますよ。
たたき台にできるかは分かりませんが。
508名無し~3.EXE:2006/12/03(日) 17:14:31 ID:D+6ussB5
lispで特定のフォルダから条件にマッチするファイル名を取得するには
どうすればいいですか?
509名無し~3.EXE:2006/12/03(日) 17:35:00 ID:D+6ussB5
あ、directoryを使えばできそうです。
510名無し~3.EXE:2006/12/04(月) 00:17:45 ID:YyWHWuip
内蔵ファイラー使っている人いる?
便利な使い方とか、拡張とか教えて欲しい
511名無し~3.EXE:2006/12/04(月) 00:47:04 ID:qnqtjxnI
>>510
使いまくり。
grepとかdiffとかgresregとかまとめてリネームとか。
512名無し~3.EXE:2006/12/04(月) 10:20:12 ID:U8Bbt76n
いろいろ機能追加してたらキーバインド足らなくなって困ってる>ファイラ
513名無し~3.EXE:2006/12/04(月) 18:46:00 ID:h9hqRveM
490はいつになったら出てくるの?
514名無し~3.EXE:2006/12/04(月) 19:32:53 ID:YyWHWuip
>>511-512
なるほど。メインファイラーとしてはどうですか?
今までエディタ側からのサブ機能(というかOpenDialog)としか使ってなくてもったいないなと。
515名無し~3.EXE:2006/12/04(月) 20:14:02 ID:qnqtjxnI
>>514
むしろメインファイラなんだけど。
エクスプローラなんて使ってられるかっての。

Jで登録フォルダにジャンプとか。
でもファイラでdiff位しか機能追加はしてない。
あと下の部分にキーの意味はほぼ全て表示させるようにしてる。
516名無し~3.EXE:2006/12/04(月) 20:54:12 ID:hS2BeOVE
>>514
十分使えるよ。というか、その辺の腐ったファイラより遥かに優れてるよ。
カスタマイズも自由自在だし。
ただしxyzzyを良く使っている人じゃないとxyzzyが邪魔になるかもしれないけど。
517名無し~3.EXE:2006/12/04(月) 21:00:06 ID:hS2BeOVE
>>506
do-completionを適当に拡張すれば
do-completionそのものを作る必要はないと思うよ。

>>507
shilogに書いてあったのをよく読めば
一番新しい所にTextMateの感想とか書いてあるから
518名無し~3.EXE:2006/12/04(月) 21:10:25 ID:k7MYfZPa
>>514
注意点はファイラで重い処理をさせると、ついでにエディタにも触れなくなるってこと。
519名無し~3.EXE:2006/12/04(月) 21:13:54 ID:qnqtjxnI
>>518
あるあるwww
たまにたくさんのファイルを上書きコピーとかするとお茶飲むしかなくなることがある。
520名無し~3.EXE:2006/12/04(月) 21:14:04 ID:fhYmq/1l
ファイラは「あふ」で、xyzzy のはここ2、3年使っていない orz
521名無し~3.EXE:2006/12/04(月) 21:16:21 ID:4XVGvfQa
俺はDynaで同じくxyzzyのは触らない・・・
522名無し~3.EXE:2006/12/05(火) 07:30:33 ID:HTtg+C5n
アンケート一覧/xyzzy使いのファイラ - XyzzyWiki
ttp://xyzzy.s53.xrea.com/wiki/index.php?%A5%A2%A5%F3%A5%B1%A1%BC%A5%C8%B0%EC%CD%F7%2Fxyzzy%BB%C8%A4%A4%A4%CE%A5%D5%A5%A1%A5%A4%A5%E9

アンケート作ってきた。
523名無し~3.EXE:2006/12/05(火) 17:16:23 ID:fqGbrZTc
xyzzy をデフォルトで使っているのですが、C-SPC でマークが設定できません。
C-SPC, C-w でカットしようとすると、「マークが設定されていません」とエラーに
なって困っています。

.xyzzy に
(global-set-key #\C-SPC 'set-mark-command)
と記述しても、xyzzy 起動のときに
「C:/Documants and Settings/ユーザ名/.xyzzy. 1: 文字コードが範囲外です: C-SPC」
とやはりエラーになります。

どうしても C-SPC, C-w でカットしたいのですが、どなたか直し方を教えて頂けませんか?
524名無し~3.EXE:2006/12/05(火) 17:57:33 ID:dPxE8zVE
>>523
#\C-SPC は #\NUL に設定されてるので(keyboard.l 参照)
(global-set-key #\NUL 'set-mark-command)
とすればOK。
ていうか、デフォルトでそうなってなかったっけ?
525523:2006/12/05(火) 19:01:08 ID:fqGbrZTc
>>524
レスありがとうございます。今
(global-set-key #\NUL 'set-mark-command)
やってみました。xyzzy 起動のときにエラーには
なりませんでしたが、マークは設定されませんでした。

> ていうか、デフォルトでそうなってなかったっけ?

ですよね〜。そうだったはずなのに…どっかで変な
設定に変わったのかと思ってインストールしなおしたり
バージョンアップ・ダウンしてみたんですが、効果ないん
ですよ。他のキーバインドは問題ないんですが。

ちっくしょー。
526名無し~3.EXE:2006/12/05(火) 19:18:53 ID:QbMmKD7C
なんか変なソフトつっこんでて、それがCtrl+SPACEの入力を食ってるに1カノッサ
527名無し~3.EXE:2006/12/05(火) 19:44:27 ID:Nn343f62
>>523
[C-x ?]して[C-SPC]を押した時ステータスバーに
NUL runs the command set-mark-command
と表示されるか?
528523:2006/12/05(火) 20:10:36 ID:fqGbrZTc
皆さんご親切にありがとうございます。

>>526
なるほど。こりゃ切り分け大変そうですね。
今走ってるプロセスのうちのどれかですよね?>Ctrl+SPACEの入力を食ってる

>>527
[C-x ?] すると、
ステータスバーに「C-x ?」
ミニバッファに「Describe key briefly:」
と表示されますが、続けて [C-SPC] しても
変化ありませんでした。
529523:2006/12/05(火) 20:35:57 ID:fqGbrZTc
連投すみません。

最も最近インスコした Web カメラのソフト Logicool QCam 10.0 のプロセス
QuickCam10.exe を殺したら、あっさり直りました。

皆様ありがとうございました。お騒がせしました。

; これに悩んで今日一日何時間無駄にしただろう。何やってんだ漏れ orz
530名無し~3.EXE:2006/12/06(水) 01:14:45 ID:BiHQJCje
デフォルトだとM-SPCとC-@もset-mark-commandになってるよ。
俺はC-SPCを別ソフトで使ってるからC-@を使ってる。
531名無し~3.EXE:2006/12/08(金) 05:54:59 ID:ujCnboe9
call-processしたときにDOS窓が出てこない
ビルドをどこかで見た記憶があるんですけど、
どなたか場所わかりませんか?
532名無し~3.EXE:2006/12/08(金) 09:58:14 ID:jtMZS+2F
>>531
(call-process "notepad" :show :hide)
これ?
533名無し~3.EXE:2006/12/08(金) 14:43:13 ID:a5rtwp88
wikiにあるbuffer-bar-click-to-deleteについてなんですが、
左Wクリックとミドルクリックに別々の機能を割当ることってできませんか?
534ららら:2006/12/08(金) 17:40:35 ID:8vth809M
指定ディレクトリ以下のすべての .l ファイルに対して、
一括でバイトコンパイルしたいんだけどー、そんなコマンドある?
535名無し~3.EXE:2006/12/08(金) 19:03:47 ID:qd1IaBSn
ない。書くのが早いよ。
536名無し~3.EXE:2006/12/08(金) 19:42:51 ID:UmMAWUWm
ファイラでまとめてマークしてBじゃ出来なかったっけ?
537名無し~3.EXE:2006/12/08(金) 20:25:05 ID:ujCnboe9
>>532
あ・・・それでいいですね。orz
ありがとうございます。
538名無し~3.EXE:2006/12/08(金) 20:54:03 ID:eg+WGskA
>>534
byte-recompile-directory
539ららら:2006/12/08(金) 21:56:01 ID:8vth809M
>>538
それだ!ありがとー。
540ららら:2006/12/08(金) 21:57:33 ID:8vth809M
セレクション内のテキストに対して、
置換ダイアログを用いて置換することはできないのー?
541名無し~3.EXE:2006/12/08(金) 22:52:26 ID:YbwEmd4t
>>540
リージョンを C-x n でナローイングしてから置換で十分
542名無し~3.EXE:2006/12/09(土) 00:05:49 ID:roXcRMid
543ららら:2006/12/10(日) 16:08:07 ID:xpzGmHi1
>>540 >>542
ありがとうー。
リージョンとセレクションって面倒だねー。
544名無し~3.EXE:2006/12/13(水) 00:04:35 ID:bS8HCAgg
ちなみにビスタでもxyzzyは動くのだろうか・・・?
545名無し~3.EXE:2006/12/13(水) 01:04:17 ID:i8DcvN6u
ビスコ?
546名無し~3.EXE:2006/12/13(水) 18:45:51 ID:VUkD1aZN
動かなかったらクリスピーで良いよ。
ビスコの何が良いのかさっぱり分からんが
xyzzyの何がいいのかはよく分かる。
547名無し~3.EXE:2006/12/14(木) 12:08:54 ID:wpdwI2h2
最近編集したファイルとその中身(の一部)を一覧表示してくれるlispって既にありますか?
548名無し~3.EXE:2006/12/14(木) 14:35:57 ID:4DvVbgvD
howmはちと違うか。参考にはなりそうだけど
549名無し~3.EXE:2006/12/14(木) 14:56:37 ID:vClk10fS
(mapc #'find-file *minibuffer-file-name-history*)
で最近使ったファイルを全部開いてくれるから、後は好きなように直してくれぃ。
550名無し~3.EXE:2006/12/14(木) 19:40:00 ID:BygaknY9
>>547
最近閉じたファイルでいいなら、save-place.l
551名無し~3.EXE:2006/12/14(木) 20:58:17 ID:wpdwI2h2
単に開いたファイルではなく、編集して保存したファイルのリストはどうやったら得られますか?
*after-save-buffer-hook*に何か引っ掛けて自前で集めることになるんですかね。
552名無し~3.EXE:2006/12/15(金) 00:07:15 ID:Qs72hPgu
最近編集したファイルの中身をどういう用途に使うのさ。
自分流の使い方を考えなくても等価の機能が既に
ありそうな予感。
553名無し~3.EXE:2006/12/15(金) 00:42:49 ID:jRaFi24I
>>551
(sort (copy-list *minibuffer-file-name-history*) #'>= :key #'file-write-time)
てことかな?
554名無し~3.EXE:2006/12/15(金) 01:47:43 ID:a1cA2Dfz
>>553
それだとだいぶ前に見たapacheのログとか
2ch-modeのdatファイルとかが先頭付近にきてしまう。
すでに無くなったファイルがあればエラーもでる。
後者は:keyをこんな風にすればいいんだけど。
#'(lambda (x)
(or (and (file-exist-p x)
(file-write-time x))
0))
>>551が何の為に保存したファイルのリストが
欲しいのかわからないからアレだけれども。
555名無し~3.EXE:2006/12/15(金) 02:17:04 ID:0+UGZsyU
セッションの自動保存だとだめなん?
556名無し~3.EXE:2006/12/15(金) 05:43:57 ID:8Z05d2YF
>>551
save-place.lを利用するなら多分こんな感じじゃないかと
(add-hook '*after-save-buffer-hook* #'(lambda () (interactive) (ed::save-place (selected-buffer))))
(setq *save-place-default-sort-method* 3)
557556:2006/12/15(金) 05:50:40 ID:8Z05d2YF
あ、(interactive)はいらないですね。
558名無し~3.EXE:2006/12/15(金) 19:54:10 ID:0mAWmf+H
>>547です。
皆様色々とヒントを下さってありがとうございます。
私は文章を書くとき、適当、というかほとんどでたらめにファイル名を付けるので、後になって
「あのとき書いたあれ、何つったっけ」となることが多いのです。
といって、ファイル名を考えるのは面倒だし、そもそもファイル名にあまり情報を持たせようとするとキリがなくなりそう。

そんなときに、どれがどれかすぐにわかる一覧があったらいいなあ、というのが動機です。
いくつか方法がありそうなのでボチボチ試してみることにします。

559名無し~3.EXE:2006/12/16(土) 01:44:49 ID:bgSumDHw
>>558
Grep
560名無し~3.EXE:2006/12/16(土) 01:49:19 ID:bgSumDHw
ファイラでShift+Wも良いかもね。
561名無し~3.EXE:2006/12/16(土) 02:16:54 ID:Kkipb/pG
>560
Shift+wってはじめて知った。いいねこれ。
自分も>558に必要なのはGrepだとおもう。
562名無し~3.EXE:2006/12/16(土) 03:21:05 ID:pqfcYdwd
【エディタ】ソース何で書いてる? 1スレ目
http://pc8.2ch.net/test/read.cgi/tech/1164154920/156
http://pc8.2ch.net/test/read.cgi/tech/1164154920/161


よそのスレでこんな質問があったけど、こういう拡張lispってある?
563名無し~3.EXE:2006/12/16(土) 06:31:34 ID:bj7xXVNz
>>562
それ、俺が不満漏らしたヤツだw

564名無し~3.EXE:2006/12/16(土) 06:36:44 ID:LCs3AgPw
>>563
自分でかけw
565名無し~3.EXE:2006/12/16(土) 06:54:40 ID:bgSumDHw
一部一致でジャンプだと逆に変な所に飛んでしまいそうなので
パッケージとかオブジェクトみたいなのを識別するようにしたら
良いんじゃないか?言語ごとに変わってしまうけど。
566名無し~3.EXE:2006/12/16(土) 08:07:19 ID:0/Q+XrYp
xyzzy Part10 の550以降辺りにlist-functionの一覧をバッファに出力するのがある。
これだったら自由に検索してジャンプできるんじゃない?
使ってないから知らんけど。
567名無し~3.EXE:2006/12/16(土) 08:11:49 ID:QR6yihXO
grepじゃ遅いよ。
568名無し~3.EXE:2006/12/16(土) 13:00:24 ID:aigBj60G
どっかで拾ったもの。

(defun list-file ()
(interactive)
(let ((hist (subseq *minibuffer-file-name-history* 0 100))) ;; リストの数
(multiple-value-bind (result data)
(dialog-box '(dialog 0 0 262 108
(:caption "File List") ;; ポップアップのキャプション
(:font 12 "FixedSys") ;; フォント設定
(:control
(:listbox files nil #x50b10101 7 7 248 75)
(:button IDOK "OK" #x50010001 148 88 50 14)
(:button IDCANCEL "cancel" #x50010000 205 88 50 14)))
(list (cons 'files hist))
'((files :must-match t :enable (IDOK))))
(when result
(let ((file (cdar data)))
;; ファイルを開く
(when (file-exist-p file)
(find-file file)
(add-history file '*minibuffer-file-name-history*)))))))

たぶん >>547 >>558 は、これにファイルの内容 (冒頭数行か最新の編集行) が
表示され、さらにファイル・タイプで分類もできる…という贅沢なものを
望んでいるんだろうね。howm 以外では浮ばんなあ。

あったら俺も欲しい。
569名無し~3.EXE:2006/12/16(土) 14:15:53 ID:AXej8liN
>>568
たけしょうさんのところかな。
subseq は、ENDよりも要素数が少ないとエラーが出るので直してみた。
あとダイアログも少し大きくした。

(defvar *list-file-numbers* 100)
(defun list-file ()
(interactive)
(let ((hist (subseq *minibuffer-file-name-history* 0
(min (length *minibuffer-file-name-history*)
*list-file-numbers*)))) ;; リストの数
(multiple-value-bind (result data)
(dialog-box '(dialog 0 0 262 148
(:caption "File List") ;; ポップアップのキャプション
(:font 12 "FixedSys") ;; フォント設定
(:control
(:listbox files nil #x50b10101 7 7 248 115)
(:button IDOK "OK" #x50010001 148 128 50 14)
(:button IDCANCEL "cancel" #x50010000 205 128 50 14)))
(list (cons 'files hist))
'((files :must-match t :enable (IDOK))))
(when result
(let ((file (cdar data)))
;; ファイルを開く
(when (file-exist-p file)
(find-file file)
(add-history file '*minibuffer-file-name-history*)))))))
570名無し~3.EXE:2006/12/16(土) 14:33:44 ID:AXej8liN
部分一致でジャンプは、lispなら apropos で探してジャンプでそれなりに使
えるけど、他の言語でもやるなら一致するものを探す tags-find-endtry-1 以外
に、部分一致するものを探す関数を選択できるようにしたらできそうだね。
571名無し~3.EXE:2006/12/16(土) 17:14:00 ID:+/v+65iv
>>568
しかとされっぱなしでちょっとへこんでるんだけど、
save-place.l+556じゃだめなんですかね。
http://homepage2.nifty.com/kimagurenixyzzy/save-place.html
からダウンロードするかNetInstallerから導入できます)

最近閉じたファイル(556のコードを追加すれば最近保存したファイルも)の
一覧をバッファに表示して、閲覧・開くことができます。
ファイル名・ファイルの更新日時・ファイルを閉じた時間でソートができます。
572563:2006/12/16(土) 18:08:46 ID:bj7xXVNz
いやですね。
動作としては、Ctrl+Gとか押すと、
list-functionで表示される関数がダイアログ(もしくはバッファ)で表示されて、
文字列を入力すると、部分一致で選択され、
エンターでジャンプといった感じです。

まんま、Borland Development Studio の拡張アドオン GExperts のfunction list の挙動なんですがw
573名無し~3.EXE:2006/12/16(土) 18:23:36 ID:FxI0z2JP
scheme-modeはもうどこ探してもないんだろうか・・・
574名無し~3.EXE:2006/12/16(土) 18:35:36 ID:WFfAmueZ
>572
ダイアログである必要が無いなら、Part10の551-552でバッファにリスト表示できて
isearchで部分一致が選択できてエンターでジャンプできるよ
575名無し~3.EXE:2006/12/16(土) 19:36:28 ID:sqEkMuts
>>572
そういうときはダイアログじゃなくミニバッファでやるのがいい。
completing-readにリスト渡せばok。

標準のミニバッファじゃ不満あるかもしれんが
ミニバッファ拡張入れりゃけっこう便利。
公開されてるミニバッファ拡張ってcomplete+くらいしかないけど。

(defun my-list-function ()
(interactive)
(unless (and (eq *list-function-buffer* (selected-buffer))
(eql *list-function-modified* (buffer-modified-count)))
(setq *list-function-list* (long-operation
(save-excursion
(funcall build-summary-function)))
*list-function-selected* nil
*list-function-buffer* (selected-buffer)
*list-function-modified* (buffer-modified-count)))
(let ((result (completing-read "関数一覧: "
(mapcar (lambda (list)
(format nil
"~A ~A"
(second list)
(first list)))
*list-function-list*)
:must-match t)))
(when result
(string-match "[1-9]*$" result)
(goto-line (parse-integer (match-string 0))))
))
576名無し~3.EXE:2006/12/16(土) 19:43:20 ID:QR6yihXO
>571
ごめんなさい。決して、しかとしていたわけではありません。
実はsave-place.lはだいぶ以前から使わせていただいており、非常に重宝しております。
ただ、save-place-list-bufferは全然使っていませんでした。
で、試してみたのですが、かなりいい感じですね。
フィルタを工夫すれば、ほぼ望み通りのことが出来そうだと思いました。どうもありがとうございます。

not existのファイルがネットワーク上のものだった場合、xyzzyがしばらく固まってしまいますが、
これはwindowsの仕様?ですよね。
577名無し~3.EXE:2006/12/16(土) 20:00:45 ID:+/v+65iv
>>576
ネットワーク環境がないのでちょっとわからないんですが、
もしかすると、file-exist-p のところで固まっているのかもしれません。
だとすると、避ける方法ってあるのかな?
578名無し~3.EXE:2006/12/16(土) 23:44:16 ID:AXej8liN
>>577
文字列からネットワークファイルと推察される場合は、
file-exist-p をしないとか?
579名無し~3.EXE:2006/12/17(日) 00:51:56 ID:OwErIRGv
>>578
そうですよね。
しかし、あらかじめ情報を保存しないファイルを指定する仕様となっているので、
*save-place-exclude-regexp*にネットワークファイル(フォルダ)を
指定して、既にネットワークファイルの情報が保存されている場合には
*save-place-list*バッファでC-kでファイル情報を削除して、C-x C-s
で保存してみて下さい。>>576
580名無し~3.EXE:2006/12/17(日) 14:23:28 ID:8pV9nIc0
winapiでタブの外観をフラットとかに変えることってできる?
581名無し~3.EXE:2006/12/17(日) 21:16:13 ID:9q1hYRD3
>579
とりあえずそうすることで回避することにします。
582名無し~3.EXE:2006/12/18(月) 01:33:48 ID:NXkYFiqO
指定したリージョン中において、

1.英文のワード数
2.和文の文字数

をそれぞれカウントすることはできますか?
583名無し~3.EXE:2006/12/18(月) 03:23:59 ID:JkBMani1
>>582
(defun foo ()
(interactive)
(let ((reg "\\<[-A-Za-z]+\\>")
(start (mark))
(end (point))
n)
(save-excursion
(save-restriction
(narrow-to-region start end)
(goto-char (point-min))
(setq n (count-matches reg))))
(msgbox "英文のワード数 : ~A個" n)))
和文の方は正規表現をどうかくべきかよく分からなかった。
ググると、
[ぁ-ん] 全角ひらがなを検索
[ァ-ヶ] 全角カタカナを検索
[亜-K] 全ての漢字(亜(889F)〜K(FC4B))を検索
こんなのが見つかったけど、これだけでは "〜" とかがマッチしないので、、、
584名無し~3.EXE:2006/12/18(月) 05:19:35 ID:NXkYFiqO
>>583
すごい!
ありがとうございました
585名無し~3.EXE:2006/12/18(月) 09:09:44 ID:a0k2FaxA
非アスキー文字全部数えてみた

(defun count-non-ascii-chars (start end)
  (interactive "r")
  (save-excursion
    (save-restriction
      (narrow-to-region start end)
      (goto-char (point-min))
      (let ((n 0))
        (while (progn
                 (skip-chars-forward "\x00-\x7f")
                 (not (eobp)))
          (let ((p (point)))
            (scan-buffer "[\x00-\x7f]\\|\\'" :regexp t)
            (incf n (- (point) p))))
        (msgbox "非アスキー文字数 : ~A個" n)))))
586名無し~3.EXE:2006/12/18(月) 16:35:11 ID:8E1rgG0G
xyzzyって設定済みMeadowみたいに最初から拡張lispが入っていて、
使えるように設定されてるものってありませんか?
587名無し~3.EXE:2006/12/18(月) 17:44:18 ID:nypfagv2
>>586
ないです。だから、あなたにお願いしたい。
588名無し~3.EXE:2006/12/18(月) 20:19:05 ID:2nZYf7wH
>>586
netinstallerで十分じゃない?
589名無し~3.EXE:2006/12/18(月) 23:50:49 ID:p0vVd75+
netinstaller設定済みとか初心者にはいいかもね。
590名無し~3.EXE:2006/12/18(月) 23:56:49 ID:f7DA4kGa
最初は相当敷居が高かったけどコンパイルとかやらされないだけEmacsよりマシ
591名無し~3.EXE:2006/12/19(火) 04:00:53 ID:2cNYjdT5
本もあるしね。たまに眺めると自分が使ってない機能に気づいたりする
592名無し~3.EXE:2006/12/19(火) 05:09:09 ID:h68hAuqW
今のxyzzyはかなり敷居が低いと思うよ。
それに自分で拡張しないならxyzzyのメリットが
Emacs風味のキーバインドくらいになるような気もするし。
593名無し~3.EXE:2006/12/19(火) 09:50:23 ID:HAauy087
ttp://at-aka.blogspot.com/2006/12/emacs-c.html#clmemo-20061208-ispell
で紹介されている M-x align の xyzzy 版がほしいのですが、
どこかにありますか。
594名無し~3.EXE:2006/12/19(火) 10:53:47 ID:H94B5ayE
>>593
indent-to-token 更新しておきました。
netinstaller からどうぞ。
595名無し~3.EXE:2006/12/19(火) 13:00:08 ID:HAauy087
>>594
ありがとうございます!
596名無し~3.EXE:2006/12/19(火) 17:55:14 ID:vG3V/pOx
KaMailV3の使い方がイマイチわからん
これってフォルダ分けはしないもの?
597名無し~3.EXE:2006/12/20(水) 14:35:21 ID:OWtfu7Ls
しない。基本はデータベースに登録して必要なときに検索するスタイル。
必要に応じてタグ付けしておいてもいい。
598名無し~3.EXE:2006/12/20(水) 18:25:38 ID:GRarNc44
MLに面白いのが来てるな
599名無し~3.EXE:2006/12/21(木) 10:56:45 ID:SnHMfrnz
Perl、Ruby の x += "追加文字列" を Lisp で表現するにはどうすればいいんでしょうか

(setq *filer-guide-text*
(concat (*filer-guide-text* "説明")))

こう書いてみたのですが *filer-guide-text* は関数ではない とエラーになってしまいます
600名無し~3.EXE:2006/12/21(木) 12:35:52 ID:06XHuuOW
(setq *filer-guide-text* (concat *filer-guide-text* "説明"))
601名無し~3.EXE:2006/12/21(木) 12:40:20 ID:+Lr/9BxG
>>599
info-modoki-mode でも導入し、
リファレンスのconcat の項を見るべし。
602名無し~3.EXE:2006/12/21(木) 12:43:07 ID:06XHuuOW
*filer-guide-text*の中身はリストか
(setq *filer-guide-text* (nconc *filer-guide-text* (list "説明")))
603名無し~3.EXE:2006/12/21(木) 12:47:26 ID:4yGrKQAI
2ch-modeでBBSPINKみたいのに出来ない?
なんで?
604名無し~3.EXE:2006/12/21(木) 14:28:22 ID:i0xJjZDY
日本語でry
605名無し~3.EXE:2006/12/21(木) 14:45:42 ID:rLjqkPbh
>>603
PINKに対応しているボードを指定すればいい
606名無し~3.EXE:2006/12/21(木) 15:19:16 ID:nLiuqGfe
pw.l の複合鍵を忘れた…orz
607名無し~3.EXE:2006/12/21(木) 15:37:53 ID:G0iLFyYQ
xyzzyのlispでgrepみたいに指定したファイル中の文字列を引っ掛ける関数は
ありますか?
608名無し~3.EXE:2006/12/21(木) 17:47:17 ID:2cZrNTlA
scan-bufferとか?
609名無し~3.EXE:2006/12/21(木) 18:10:46 ID:HyOSmb2v
>>605
どうやって指定するんですか?
610名無し~3.EXE:2006/12/21(木) 18:12:59 ID:1hnTitzp
何?引っ掛けるって。何をどこに引っ掛けるのかわからんし。
やりたいことは
lisp/grep.lやlisp/grepd.lあたりをみて自前で書く
call-process等で外部のgrepを起動して結果だけ貰ってくる
のどちらかだろうけど。
611matsuoka:2006/12/21(木) 19:06:26 ID:5qMu/bKU
scheme-mode.l の人でーす。
配布に使用させてもらってたサーバーのハードディスクが夏ごろ落ちてから、
以降移り先もなく配布も止まってます。ふいに消えてしまってごめんなさい
ものはあるので来年にはなんとかしてーなぁと思っているところです。
もう少しお待ちくださいませ。言う場もないのでこの場をお借りしました。
# WikiWiki FUN 自体が復活できると一番いいんですけどね…厳しいかも
612名無し~3.EXE:2006/12/21(木) 19:11:49 ID:pXHExqDm
>>611
復活がんばってください。それまでわくわくてかてかして待ってます。
613名無し~3.EXE:2006/12/21(木) 21:50:53 ID:IygSJhxa
>>603
いまのバージョンだとたしかBBSPINKの板が板一覧に表示されない
んじゃなかったかな。otherbbsを使うのが1つの手。

http://xyzzy.s53.xrea.com/wiki/?cmd=read&page=tips%2F2ch-mode%20%C2%BEBBS%B3%C8%C4%A5
614名無し~3.EXE:2006/12/21(木) 21:55:31 ID:NxDYsuAK
O'sエディタみたいなスタイル切り替えが欲しい
615名無し~3.EXE:2006/12/22(金) 13:58:33 ID:tdlNCTuv
>>614
自分で作るといい。そういう実際の動作と関係ない機能を
作る人は中々居ないよ。
616名無し~3.EXE:2006/12/22(金) 14:48:13 ID:5vQwIya8
なんか書けなくない?
617名無し~3.EXE:2006/12/22(金) 15:45:27 ID:dqnsx2iO
>>616
winapi 駆使してもできないの?
だめなら c++ で書けばいい
618名無し~3.EXE:2006/12/22(金) 22:22:09 ID:1A0IzgrQ
それを欲しがるのは文系ユーザなんだろ、察してやれ
619599:2006/12/22(金) 22:31:59 ID:zrMy60Mu
>>600-602
ありがとうございます。勉強します
620名無し~3.EXE:2006/12/22(金) 23:31:15 ID:iSfhH1O3
なあ、お前らにちょっと聞きたいんだが、
左CtrlとCapsLockって入れ替えorCapsLockを左Ctrlにしてるよな?
その場合、Aの横にあるキー(元CapsLockキー)はどの指でどんな風に叩けば楽なんだ?
最近、左Ctrlの叩き過ぎで手が痛くて楽な方法を探してるんだけど、よくわかんなくて。

特に、C-a,C-s,C-x,とか左手だけで押すであろうキー全般について意見をくれ。

CASE1:小指の先で叩いた場合
C-xとか押しにくくない?
CASE2:薬指で
ホームポジションから離れてしまいませんこと?
CASE3:中指で
ホームポジションから(ry

621名無し~3.EXE:2006/12/22(金) 23:56:37 ID:fY/zp/w7
キー配置デフォ、小指の付け根でCtrl押すのが一番ラク
622名無し~3.EXE:2006/12/23(土) 00:22:17 ID:zCk+AmIa
>>620
小指で押しっぱなしにしてる。
C-x の x は薬指か中指、C-c は人差し指を使うこともある。
押しにくいときは手首の角度とかを調整してみるとマシになるかも。
623名無し~3.EXE:2006/12/23(土) 00:58:36 ID:u7vvp/3G
俺はデフォのまま使ってるよ
ピアノやってたせいか、指が鍛えられていて疲れることはない
624名無し~3.EXE:2006/12/23(土) 04:25:15 ID:ZGUVBBR4
>>620
A横Ctrlで小指。C-a,C-sは薬指で、C-xは中指だな。
ちなみにC-cは人差し指。元々cを人差し指で押す癖あるし。
あ、C-x C-sはx=人差し指,s=中指だわ。
ピアノの所為かヴィオラの所為か、疲れたことは無いな。
625名無し~3.EXE:2006/12/23(土) 08:28:42 ID:ddpmTkk9
>>620
C-a, 小指(Caps)-薬指
C-s, 小指(Caps)-薬指
C-x, 小指(Caps)-中指
C-x, C-s, 小指(Caps)-中指-中指

Winkeyでの切り取り操作の場合は
C-x, 小指(左Ctr)-人指し指

手が痛いならキーの深さが浅いキーボード買った方がいいんじゃないか?
キーピッチも小さいとなお良し!
626名無し~3.EXE:2006/12/23(土) 09:02:20 ID:WL1buJCI
たまには右Ctrlも使ってあげてください
627名無し~3.EXE:2006/12/23(土) 09:08:19 ID:UbWkcNZN
右Ctrlを5年も使ってないことに気がついた。
628名無し~3.EXE:2006/12/23(土) 10:03:28 ID:kv5OxMlW
今は閉鎖されてるcrayon氏の recent-delete-file.l と hmark.l
を使いたいのですが誰か持っている人いませんか?
629名無し~3.EXE:2006/12/23(土) 10:36:07 ID:tJPAYOvs
vi-mode改造して使っているから、あまり疲れない。
630名無し~3.EXE:2006/12/23(土) 11:29:33 ID:2meO35IB
HHKなので右Ctrl無い
631名無し~3.EXE:2006/12/23(土) 12:12:27 ID:iHQrVYXn
>>628
recent-delete-file.l は自分で改変したものを持ってますが、ライセンスが
わからないのでupできず。
hmark.lは持ってませんが、マーク関係の拡張は他にもいくつかあるはず。
632620:2006/12/23(土) 13:35:49 ID:nw8L50H9
>レスくれた人達
ありがとう。
凄く参考になった。
キーボードを替えることも視野に入れて考えてみる。

# 家のはすぐに替えられるけど会社のはどうしよう。
# どう考えても会社の方が長くキーボード叩いてるしなぁ。
633名無し~3.EXE:2006/12/23(土) 15:51:10 ID:phaRaXcU
普通のキーボードには右にctrlキーがあるんだね
知らなかった
634名無し~3.EXE:2006/12/24(日) 03:49:38 ID:4RBGcFRo
vi-modeなので安心。
そろそろyGで最後の一行がコピーされないバグは直してもいい気がする(<気づいてるなら直せ)
635名無し~3.EXE:2006/12/24(日) 06:04:48 ID:a6oaZ4sk
どのモードでもインデントにタブを使わない場合はどう設定すればいいんでしょうか?

(setq-default indent-tabs-mode nil) や (setq indent-tabs-mode nil) を
.xyzzy に書いたのですがインデントにタブが使われてしまいます

今は *hoge-indent-tab-mode* それぞれに nil を設定してるんですが 一括で行う方法はありませんか?
636名無し~3.EXE:2006/12/24(日) 09:52:44 ID:u0W4KjEz
>>635
そのモード独自の *hoge-indent-tabs-mode* が設定されてるなら
一つ一つ設定するしかないんじゃない?
637名無し~3.EXE:2006/12/24(日) 10:05:50 ID:pkQmd4M0
こうするとどうだろう
(add-hook '*create-buffer-hook*
          (lambda (buf) (setq indent-tabs-mode nil)))

真っ当なやり方とは思えないが……
638名無し~3.EXE:2006/12/24(日) 10:06:06 ID:+SVZ6n1w
*find-file-hooks*にフックさせるとかは?
639名無し~3.EXE:2006/12/24(日) 11:25:20 ID:uKSuLraj
>>636-638
ありがとです。
デフォルトの設定の為の変数とかがあると思ってたんですが
ちょいと変わった事しないとないんですね
パッと見た目のわかりやすさ重視で *hoge-indent-tabs-mode* を設定する事にします
640名無し~3.EXE:2006/12/24(日) 12:18:55 ID:BB6TubKy
outline-tree2(2006.10.25)だと、Lispのインタラクティブな関数も
defun (not command)に分類されてしまいませんか?
以前は、defun (command)に分類されていたと思うのですが。

個人的には、インタラクティブでもそうでなくても同じ項目に分類
された方がいいような気がするので、それでいいといえばいいのですが。
641640:2006/12/24(日) 12:46:44 ID:BB6TubKy
詳しく解析してませんが、cr-lisp.lを古いものに戻したら(not command)
と (command)が別々に分類されるようになったので、cr-lisp.lの
仕様変更が原因のようです。
642名無し~3.EXE:2006/12/25(月) 18:04:26 ID:c2JTGycx
lengthのような関数で、文字数ではなく、文字のバイト数を返す関数はありますか?
また、substringのような関数で、文字数ではなく、バイト数で指定する関数はありますか?
初自作lisp書いてて、2バイト文字を含む列表示が崩れてしまい戸惑ってます
643名無し~3.EXE:2006/12/25(月) 18:13:44 ID:CttecEHp
>>642
count-column とか、"column" でリファレンスを検索するといろいろみつかるよ。
644名無し~3.EXE:2006/12/25(月) 18:19:38 ID:c2JTGycx
>>643
ありがとう!
stringなんちゃらばっかし見てました
645名無し~3.EXE:2006/12/25(月) 19:09:26 ID:c2JTGycx
やっぱしsubstringのバイト数で指定するぽいの
見つからなかったorz
646名無し~3.EXE:2006/12/25(月) 19:49:43 ID:5yhEiJbj
>>645
1.convert-encoding-to-internal でバイナリに変換する
2.subseq で必要なバイト数を取り出す
3.convert-encoding-to-internal で元の文字コードに戻す
4.右端の文字が文字化けすることがあるので、右端から1文字削除

こんな感じでどうでしょう?
647名無し~3.EXE:2006/12/25(月) 20:32:47 ID:ash4a2gh
こういうことなんか??
全然違ったらすまん。
(defun string-columns (str)
(let ((n 0))
(every #'(lambda(x) (setq n (+ n (char-columns x)))) str ) n))
648名無し~3.EXE:2006/12/25(月) 22:02:26 ID:ex7skQYd
>>645,647
ありがとうございます。
とりあえず以下のような感じでsubstringのバイト数指定バージョンを作りました。

(defun substringbyte (str start end)
(substring (convert-encoding-to-internal *default-fileio-encoding*
(subseq ( convert-encoding-to-internal *encoding-binary* str )
start (+ end 1))) 0 -1))
649名無し~3.EXE:2006/12/25(月) 23:50:41 ID:VsYZRvW7
くそ、乗り遅れた

Ctrlは、薬指だぜ
HHKLite2なので右Ctrlがねーぜ!!
650名無し~3.EXE:2006/12/26(火) 08:55:28 ID:IVydCAVy
>>649
HHKLite2って普通のキーボードに比べてどのへんがいいんですか?
651名無し~3.EXE:2006/12/26(火) 08:56:29 ID:WFf+uCcx
main()
{
 char *str =
  "0xFF"
  "0xFF"
  "0xFF";

 _asm{
  hoge hoge
  hoge hoge
  hoge hoge
  }
}

// c-modeで↑のようなコードをオートインデントすると↓のようになってしまいます。
// このような状況で階段状にならないようにしたいのですが、
// c-mode.lを弄ろうとしてもさっぱりです。 ボスケテクダサイ

main()
{
 char *str =
  "0xFF"
   "0xFF"
    "0xFF";

 _asm{
  hoge hoge
   hoge hoge
    hoge hoge
     }
}
652651:2006/12/27(水) 01:36:25 ID:bKiQgf9l
c-continued-statement-offsetを弄ったらそれっぽくなりました^^;
653名無し~3.EXE:2006/12/27(水) 05:40:07 ID:UBDwfeXR
>>650
Capsの位置に、Ctrlがデフォルト
HHKL2+窓使いの憂鬱でカスタマイズしまくると最強

カーソルキーが、右シフトの下。
だが、つかってない。

カーソル移動は、全て、窓使いの憂鬱で、
モディファイやーキー同時押しのviカスタム
ホームポジションから、はずさずして、
・改行
・移動
・ファンクションキ押下
ができる
654名無し~3.EXE:2006/12/27(水) 10:40:37 ID:rgMhfvJF
HHKL2いいんだけど、すぐにへたる。おなじ形でもっと丈夫なのないのかな?
655名無し~3.EXE:2006/12/27(水) 11:37:02 ID:gGdTJKD4
pro2
656名無し~3.EXE:2006/12/27(水) 14:58:16 ID:EDSwUhyZ
>>652
> c-continued-statement-offsetを弄ったらそれっぽくなりました^^;

(setq c-continued-statement-offset 0)
したらうまくいったってこと?
657名無し~3.EXE:2006/12/27(水) 15:08:54 ID:Svh155xy
偶には KEK-EA9AU の事思い出してあげてください
658名無し~3.EXE:2006/12/27(水) 17:57:16 ID:j+Nt4POt
>>653
レスどうもです。
Capsの位置にCtrlがあるとxyzzyでは便利そうですね。
以前、AltIMEでキーの入れ替えをやったことがあるんですが
ソフトのインストール時に不具合が出たので今は使ってません。

HHKL2+は小さめなキーボードなのでキーが押しやすそうですね。
でも、テンキーとかファンクションキーとかはいらんのですか?

>>654
655さんも言ってますが、HHKB Professional2というのがありますね。
ちょっと高いですが。
659658:2006/12/27(水) 18:05:12 ID:j+Nt4POt
あらら、コピペミスだ
×→HHKL2+
○→HHKL2
です。
660名無し~3.EXE:2006/12/27(水) 18:55:01 ID:qih4vcQd
Lite2には独立カーソルキーがあるけど、Pro2にはないから同じ形ではない。
661名無し~3.EXE:2006/12/27(水) 19:00:17 ID:Svh155xy
>>658 キーの変更でChangkeyはどう?
http://satoshi.web5.jp/f_soft/dw_win.htm
662名無し~3.EXE:2006/12/28(木) 19:39:45 ID:KT0jS6U1
アクセス規制解けたかな?(何もしてないのに..)

>>661
どうもです。とりあえず入れてみました。
設定が簡単でわかりやすいですね。

しばらく試してみて不具合が出ないようならば、
使ってみようかと思います。
663名無し~3.EXE:2006/12/29(金) 15:18:17 ID:SBkkK5Mp
>>656
(setq c-indent-level 2)
(setq c-continued-statement-offset 0)
(setq c-argdecl-indent 5)
(setq c-brace-offset 2)
(setq c-brace-imaginary-offset 0)
(setq c-label-offset -2)
(setq c-comment-indent 2)
;; な感じです。



{
 if(1 == hoge)
  return 0;
}
// これだと↑ のような場合に↓のようになるのがあれですが、階段状になるよりはいいかなと。
{
 if(1 == hoge)
 return 0;
}
664名無し~3.EXE:2006/12/29(金) 23:51:32 ID:6oowFQop
セミコロン付きのマクロとかそうなるな
範囲選択して一番上の行に合わせるLisp書くとかしか思いつかん
665名無し~3.EXE:2006/12/29(金) 23:52:57 ID:6oowFQop
すまん>>651からリロードしてなかったw
666名無し~3.EXE:2006/12/30(土) 12:59:34 ID:WwMiU4Lu
lisp で homeDir を指定するのは xyzzy のソースコードをいじらないと
ムリでしょうか?
667666:2006/12/30(土) 21:28:42 ID:BoiZ9qCy
かなり怪しげですが、一応こんな感じで動くような気がします(多分)。
(siteinit.l に記述する。homedir を (si:system-root) にする場合)

(defun set-homedir ()
(find-file (merge-pathnames "xyzzy.ini" (user-config-path)))
(let ((buf (selected-buffer))
(homedir (remove-trail-slash (si:system-root))))
(goto-char (point-min))
(when (scan-buffer (compile-regexp "^\\[init\\]"))
(delete-region (match-beginning 0)
(progn (forward-line)
(goto-eol)
(forward-char)
(point))))
(goto-char (point-max))
(unless (bolp)
(insert "\n"))
(insert (format nil "[init]~%homeDir=\"~A\"~%" homedir))
(save-buffer)
(delete-buffer buf)
(unless (path-equal homedir (user-homedir-pathname))
(load-file (merge-pathnames ".xyzzy" (si:system-root))))))
(add-hook '*pre-startup-hook* 'set-homedir)

おかしなところがあったら修正たのみます。
668666:2006/12/30(土) 22:03:14 ID:BoiZ9qCy
少し改良してこんな感じにしてみました。(かなり無理矢理です(^^;)
(defun set-homedir ()
(let ((homedir (remove-trail-slash (si:system-root)))
buf)
(unless (path-equal homedir (user-homedir-pathname))
(find-file (merge-pathnames "xyzzy.ini" (user-config-path)))
(setq buf (selected-buffer))
(goto-char (point-min))
(when (scan-buffer (compile-regexp "^\\[init\\]"))
(delete-region (match-beginning 0)
(progn (forward-line)
(goto-eol)
(forward-char)
(point))))
(goto-char (point-max))
(unless (bolp)
(insert "\n"))
(insert (format nil "[init]~%homeDir=\"~A\"~%" homedir))
(save-buffer)
(delete-buffer buf)
(call-process (merge-pathnames "xyzzy.exe" homedir))
(kill-xyzzy)
)))
(add-hook '*pre-startup-hook* 'set-homedir)
669666:2006/12/30(土) 22:12:36 ID:BoiZ9qCy
(setq buf (selected-buffer))
の後にでも
(make-local-variable 'make-backup-files)
(setq make-backup-files nil)
を追加すればバックアップファイルが作られなくなります。
670名無し~3.EXE:2007/01/01(月) 01:58:33 ID:wzzpRsj5
あけましておめでとうございます。

新年早々質問なんですが、ダイアログボックスで値が入力されていないと
ボタンを押せないようにするには、dialog-boxの第3引数に
'((hoge :non-null t :enable (IDOK)))
とう感じにすればいいみたいなんですが、これをhogeだけじゃなく、
fooという変数にも値が代入されてないと押せないようにするには
どうすればいいでしょうか?
671653:2007/01/03(水) 00:56:32 ID:Lb2V6q2s
>>658
> でも、テンキーとかファンクションキーとかはいらんのですか
テンキーは、いるときだけ、つなぐ。
HHKL2は、ハブもってるので、つなぎやすい。

ファンクションキーは、HHKL2デフォは、Fnキー+数字。
ただ押しにくいから、モディファイヤーキー(同時押しキー)を定義して、
モディファイヤーキー+数字キーで、押せるようにしている。

Professional2もいいのだが、モディファイヤーキーとして使っている変換、無変換がないので、
俺敵には残念。

親指シフト並に変態なので、(他の環境でキレるので)あまりお奨めしない。
672名無し~3.EXE:2007/01/03(水) 20:09:10 ID:GensYYHn
ä などの特殊な文字の参照文字(?)の \X0164とか を調べる関数は
Xyxxyで用意されてるんでしょうか?

今は毎回引数が足りない関数を書いてエラー表示から読んでいますが
禿しくめんどくさいので、もっと良い方法を教えていただけませんか
673名無し~3.EXE:2007/01/03(水) 21:16:27 ID:A5uC9QKI
char-unicode とか。
674名無し~3.EXE:2007/01/05(金) 00:30:07 ID:noyxlfq5
確認のためにも聞きたいんだけど、みんなはautoload派?それともrequire派?

自分の認識だと、
「siteinit.lに書く場合はダンプ作成速度に差異があって、
 起動速度に差異はほとんどない。.xyzzyに書く場合は起動速度に差異がでる。」
という感じなんだけどあってる?
そのためsiteinitではrequireで、.xyzzyではautoloadで読み込んでるんだけど。
675名無し~3.EXE:2007/01/05(金) 00:40:05 ID:noyxlfq5
但し書きとして
「起動時フローに呼ばれる関数をautoloadで読み込む場合は、siteinit.lでも
差異がでる。」
が抜けてた。
676名無し~3.EXE:2007/01/05(金) 07:17:30 ID:Hl7tstV/
>>674
少しでも早く起動したいからほとんど siteinit でrequireしている。
.xyzzy は最低限の設定ぐらい。
677名無し~3.EXE:2007/01/05(金) 14:39:05 ID:+Q3FgblR
>>674
全ての設定は siteinit.l。

ほとんど使わない機能は autoload
よく使うのは require
あと autoload だと設定しづらい場合も require

例えば howm は autoload で C-c , を押した時点でロード
されるとか、ggrep や buf2html はメニュー設定+αまでロードして、
本体は autoload させている。

こうしないとダンプサイズが10M超えてしまう。
今は 6Mくらい。
678名無し~3.EXE:2007/01/05(金) 18:03:24 ID:UPhHfkz0
そういえばダンプサイズにも影響でるね。
ダンプサイズは気にしてなかったから忘れてたけど。
それにしても、ダンプサイズが10Mってすごいなー。
俺も色々拡張してるけど、ダンプサイズは3.16Mぐらいだった。
679名無し~3.EXE:2007/01/10(水) 17:06:56 ID:PELeb85L
multi-modeの導入方法が良く分からないです。
どなたか教えてください。
680名無し~3.EXE:2007/01/10(水) 22:45:19 ID:nh5Z7rm9
教えて君は迷惑
681名無し~3.EXE:2007/01/11(木) 03:12:15 ID:XHDswPsT
励まし合うスレの人かな
>>679
multi-mode.l の中にインストール方法も書いてるから
それ読んでもわからないことあったら
何をして何がわからないかもう少し詳しく書いて
682名無し~3.EXE:2007/01/11(木) 16:54:44 ID:o3Fy1/76
flex-fillはもう公開停止?なのかな?
683名無し~3.EXE:2007/01/11(木) 18:35:30 ID:QyP54hOm
Shift-F6 で start-selection-as-region 開始して、
カーソル移動してセレクション作った状態だと、
pre-selection-p が t にならない気がするのだけど、そういうもの?
こういうのってどこ調べればいいんだろう……
684名無し~3.EXE:2007/01/11(木) 19:08:58 ID:XHDswPsT
685名無し~3.EXE:2007/01/11(木) 19:18:30 ID:XHDswPsT
selectionがある時と無い時で動作を変えたいので
win-key.lを参考に書いてみたんですが
どう変数を追加したらいいかわからなく困っています。
既にある変数に何かを追加する場合はどうすればいいのでしょうか?

(defvar *my-default-selection-keymap*
(let ((keymap (make-sparse-keymap)))
(define-key keymap #\C-f 'function-foo)
keymap))
;(setf selection-keymap (+ *default-selection-keymap* *my-default-selection-keymap*))
(define-key esc-map #\C-f #'forward-char)
686名無し~3.EXE:2007/01/11(木) 20:11:21 ID:XNn8kWUv
>>683
その目的では get-selection-type が使えるみたい。
selection-start-end の定義からさかのぼってみると、
ありました。
687名無し~3.EXE:2007/01/11(木) 20:11:29 ID:QyP54hOm
>>684
お、改良版があるのですね。試してみます、サンクス。

うーん、emacs の transint-mark-mode があれば簡単なんだけど、
セレクションとクリップボードとリージョンで訳が分からなくなりつつ……
688名無し~3.EXE:2007/01/11(木) 20:19:50 ID:XNn8kWUv
>>685
セレクション時で常に同じ動作させるなら、
(setq-default ed::selection-keymap (make-sparse-keymap))
して、あとは
(define-key ed::selection-keymap 〜〜)
としていけばいいのでは。

win-key.l を持ってないので知らないけど、これを使っているならたぶん
(define-key ed::selection-keymap 〜〜)
だけでいけると思う。

使用する状況で、keymapを一部変えたい時は、
マイナーモードというのでやる事になる。
minor-mode-map で grep したらいろいろ出てくるんじゃないかな。
689名無し~3.EXE:2007/01/11(木) 22:02:54 ID:XHDswPsT
>>688
できましたありがとうございます!
define-key で既に有る keymap に追加することになるんですね。
690名無し~3.EXE:2007/01/11(木) 23:38:56 ID:GnOUmjNJ
USBで、xyzzy使う方法だけど

@echo off
cd > xyzhome.dat
copy xyzzy.set+xyzhome.dat xyzstart.bat
echo start xyzzy.exe>> xyzstart.bat
call xyzstart.bat
del xyzstart.bat
del xyzhome.dat

これあるじゃん?
%~dp0使ったら、もう少しスマートにかけないかな・・・
691名無し~3.EXE:2007/01/11(木) 23:41:37 ID:GnOUmjNJ
未テストですが、

@echo off
set XYZZYHOME=%~dp0
start xyzzy.exe %1 %2 %3 %4 %5 %6 %7 %8 %9

な感じでいけないですかね。
692名無し~3.EXE:2007/01/12(金) 06:47:37 ID:fRkTw/WS
あんまりdosコマンドに詳しくないけど、98seじゃ使えないコマンドとかあったよね?
まぁ、もう98se以下のOSは考慮に入れなくてもいいのかもしれないけど。
693名無し~3.EXE:2007/01/12(金) 08:11:35 ID:dm+6Okyw
>>691
古いwindowsを切り捨てるのなら %1 %2 ... は %* でいいんじゃね。
694名無し~3.EXE:2007/01/13(土) 00:40:23 ID:xInFLz6E
NetinstallerでR

おっ、なんか新しいの増えてるぜ

作者のサイトチェックするか

http://miyamuko.s56.xrea.com/xyzzy/images/drive-info.png

ちょwwwおまwwwwwwwww

大喜びでインストールして drive-info-popup-disk-free-space-kuma-- 実行

キタ━━━(゚∀゚)━━━!!

1回やればもう満足なのでアンインス(ry
    ∩___∩   /)
    | ノ      ヽ  ( i )))
   /  ●   ● | / /
   |    ( _●_)  |ノ /  いまここクマー
  彡、   |∪|    ,/
  /    ヽノ   /´
695名無し~3.EXE:2007/01/13(土) 01:44:42 ID:9ICmT53R
>>694
これを応用してgrepなどの進行状況をクマーで表示して欲しいな。
696名無し~3.EXE:2007/01/13(土) 02:24:04 ID:EXtOMM94
分離したがこんなものを作って誰が得をする?

(defparameter *kuma-template* "
              0        25        50       75      100%
             ┝━━━━━┿━━━━━┿━━━━━┿━━━━━┥
_   ∩___∩   /)\n_   | ノ      ヽ  ( i )))\n_  /  ●   ● | / /
_  |    ( _●_)  |ノ /   ~A\n_ 彡、   |∪|    ,/\n_ /__  ヽノ   /´\n_(___)     /")
(defparameter *kuma-canvas-width* 36)
(defparameter *kuma-border-width* 90)
(defun kuma-string (r &key header footer kuma border kanryo)
(concat header
(if header "\n")
(substitute-string
(format nil *kuma-template*
(or kuma
(if (>= r 1) "完了クマ――!!" "ここクマ――!!")))
"^_"
(make-sequence 'string
(floor (* *kuma-canvas-width* (if (< 1 r) 1 r)))
:initial-element #\ ))
(if footer "\n")
footer
"\n"
(make-sequence 'string
(or border
*kuma-border-width*)
:initial-element #\-)))
(defun kuma-popup (r &key header footer kuma border point)
(popup-string (kuma-string r :header header :footer footer :kuma kuma :border border) (or point (point))))
697名無し~3.EXE:2007/01/13(土) 02:28:12 ID:EXtOMM94
↑のテスト用

(let ((n 50))
(dotimes (i n)
(sleep-for 0.01)
(kuma-popup (/ (+ i 1) n)
:header "このあたりがヘッダ。文字かける"
:footer "このへんがフッタ。文字かける")))
698名無し~3.EXE:2007/01/13(土) 06:03:53 ID:i8XjTbWD
>>694
クソワロタ

>>696
さらにワロタ

でも、ちょっとずれるね。折り返される
699名無し~3.EXE:2007/01/13(土) 09:15:38 ID:klFJ9J+o
ext-lisp-maketags.l だけど、define-history-variable にも対応してくれないかな。
700名無し~3.EXE:2007/01/13(土) 14:47:12 ID:FiOyvfaf
>>699
対応しました。
701名無し~3.EXE:2007/01/13(土) 14:51:43 ID:PM9s0JYg
作業中のバッファの現在の行(カーソルのある行)を
ruby textfilter.rb
に引き渡して結果(標準出力)で元の行を置換したいのですが
どのようにすればいいのでしょうか。

外部コマンドの結果を任意のバッファに出力する命令はいくつかあるようですが
カレントバッファの現在の位置に出力することは可能ですか?
702699:2007/01/13(土) 15:27:54 ID:oMvRBt8t
>>700
ありがとうございます。動作確認しました。
merge-tags.l などもそうですけど、lisp書こうとするときに便利に使わせてもらってます。
703名無し~3.EXE:2007/01/13(土) 17:15:48 ID:FiOyvfaf
>>702
お。正直なところ、どちらも使ってくれてる人がいるとは
思ってなかったので、とてもはげみになる。ありがとう。

>>701
execute-subprocess が近いけど、出力するバッファを erase-buffer
しているから、これだと現在位置に出力する事はできないね。

make-process と process-filter 使えばその手はなんでもできる。
けど、めんどう。

(let ((proc (make-process "bash.exe"))
(ostream (make-buffer-stream (selected-buffer) (point))))
(set-process-filter proc #'(lambda (p x) (format ostream "~A\n" x)))
(process-send-string proc "ls\n")
(sit-for 0.01)
(kill-process proc))

704名無し~3.EXE:2007/01/13(土) 17:46:09 ID:/l9aZ9wb
ext-lisp-maketags.lってどこにあるんですか?
705名無し~3.EXE:2007/01/13(土) 17:59:55 ID:FAT8zB/8
>>704
netinstallerから。
Wikiのサイト一覧の 思いつくままxyzzy
706699:2007/01/13(土) 18:33:18 ID:oMvRBt8t
>>704
先を越されたけどNetInstallerからですね。

ついでにいうとldoc2,stack-trace-modeも使わせてもらってます。
あと、parenはもちろん、ref2doc,re-builderなんかもlisp書くにはいいですね。
707703:2007/01/13(土) 18:39:33 ID:PM9s0JYg
>>703
ありがとうございます
ちょっと難しくて、私にはうまくできなかったので、結局以下のようにしました

(defun insert-subprocess (cmd)
(interactive "scommand: ")
(let (bol eol line)
(setq bol (progn (goto-bol) (point)))
(setq eol (progn (goto-eol) (point)))
(setq line (progn (buffer-substring bol eol)))
(delete-region bol eol)
(save-window-excursion
(execute-subprocess (concat cmd " " line))
(sleep-for 0.1)
(setq line (buffer-substring (point-min) (point-max))))
(insert line)))

作業バッファいちいち作るのは気持ち悪いのですが、しかたなしとします。
あとはsleep-forではなく、確実にsub processの終了を待つことができるとよいのですが・・・
708701:2007/01/13(土) 18:40:04 ID:PM9s0JYg
↑名前701でした。
709名無し~3.EXE:2007/01/13(土) 19:01:42 ID:kuGhF8pP
>>701
filter-regionかも。
710名無し~3.EXE:2007/01/13(土) 19:36:08 ID:oMvRBt8t
>>707
かなり適当ですが、
例えばこんな感じにすれば待ち合わせできると思います。

(setq line "")
(while (zerop (length line))
(sleep-for 0.1)
(setq line (buffer-substring (point-min) (point-max))))

filter-regionて内部でcall-processを使ってるんですね。
call-processなら:wait tで待ち合わせできますよ。
711710:2007/01/13(土) 19:59:17 ID:oMvRBt8t
上のコードだと、結果が何も返らないときに無限ループになる
ような気がするので、

(let ((line "")
(wait 0))
(while (and (zerop (length line))
(< wait 3))
(sleep-for 0.1)
(incf wait 0.1)
(setq line (buffer-substring (point-min) (point-max)))))

の方がいいかも。
703のコードとか、call-processが使えるならその方がいいと思いますが。
712名無し~3.EXE:2007/01/13(土) 20:14:45 ID:/l9aZ9wb
>705,706
どうもありがとう。
いただきました。
713名無し~3.EXE:2007/01/13(土) 20:46:04 ID:PM9s0JYg
>>709-711
filter-regionでどんぴしゃのようです
while...sleep-forも勉強になりました
ありがとうございました
714名無し~3.EXE:2007/01/13(土) 22:26:45 ID:EXtOMM94
>>698
あれ、折り返されちゃうの?
(defparameter *kuma-border-width* 90)
の数値を上げてもダメかな。
715名無し~3.EXE:2007/01/13(土) 23:06:31 ID:Huo7DxWX
C-u M-|
ってなかったっけ?
716名無し~3.EXE:2007/01/14(日) 00:06:12 ID:FiOyvfaf
>>698 >>714
*kuma-template* 内の _ の直前の空白を2箇所削除すればOK
717名無し~3.EXE:2007/01/14(日) 03:50:38 ID:71ccUdNa
>>716
これでいいのかな。

(defparameter *kuma-template*
(concat "\n              0        25        50       75      100%\n"
"             ┝━━━━━┿━━━━━┿━━━━━┿━━━━━┥\n"
"_   ∩___∩   /)\n"
"_   | ノ      ヽ  ( i )))\n"
"_  /  ●   ● | / /\n"
"_  |    ( _●_)  |ノ /   ~A\n"
"_ 彡、   |∪|    ,/\n"
"_ /__  ヽノ   /´\n"
"_(___)     /"))
718名無し~3.EXE:2007/01/14(日) 15:25:00 ID:OUHZNaS4
>>717
ずれます・・・
http://sylphys.ddo.jp/upld2nd/pc2/src/1168755880238.png

って、別に使わなさそうだからいいけどw
719名無し~3.EXE:2007/01/14(日) 15:25:47 ID:OUHZNaS4
ずれるというか、見切れる?
720名無し~3.EXE:2007/01/15(月) 04:30:24 ID:5oW3L3SD
>>718
なんか俺のクマーと違う、特に目のあたりが。。
721名無し~3.EXE:2007/01/15(月) 05:42:17 ID:p5VJ4RXH
>>718
"_" の横幅が狭いフォントだからかな。
(defparameter *kuma-border-width* 90) を
(defparameter *kuma-border-width* 120) くらいにすりゃズレないと思われ。
722名無し~3.EXE:2007/01/15(月) 12:31:45 ID:JZ8tDTCV
>>721
http://sylphys.ddo.jp/upld2nd/pc2/src/1168831660923.png
直りました!

完了くまー!!が見切れたので、
結局
(defparameter *kuma-border-width* 130)
にしました。
723名無し~3.EXE:2007/01/16(火) 11:00:16 ID:hudprf8q
C++モード(またはそれを継承しているPHPモード等)でインデントの挙動を変更したいんですが、どうすればいいんでしょうか?

例えば
if (1)
{
となるようにしたいんですが、
if (1)
 {
となってしまいます。
たぶん元々は
if (1) {
のような、コーディングスタイルを想定しているのだと思うのですが、自分のスタイルとは合わないもので。
724名無し~3.EXE:2007/01/16(火) 17:25:55 ID:NhAXNoyI
>>723
c++-brace-offset を、-2 など適切な負の値に設定すべし。
詳しくはこことか↓
http://www.jsdlab.co.jp/~kei/xyzzy/xyzzy2.html#c_indent
725名無し~3.EXE:2007/01/16(火) 17:42:07 ID:hudprf8q
>>724
おおお!.xyzzy に

;; 括弧の設定
(setq c++-brace-offset -2)

を追加していけました。
ありがとうございました!
726名無し~3.EXE:2007/01/17(水) 15:40:56 ID:AIRBck57
start-timer に関数登録すると初回の関数呼び出し時だけ2回呼ばれません?
727名無し~3.EXE:2007/01/17(水) 16:15:03 ID:oQr/fWsh
再現するテストコードを。
728名無し~3.EXE:2007/01/17(水) 17:00:05 ID:AIRBck57
>>726
(defun test ()
(message-box "OK"))
(stert-timer 5 'test)
こんなんです
初回呼び出し時のみ OKダイアログが2つ連続して出ません?
729名無し~3.EXE:2007/01/17(水) 22:44:49 ID:u6XoevbE
今scratchで書いて試した感じだと一回しか出ないよ。
730名無し~3.EXE:2007/01/17(水) 23:14:12 ID:iUfBaNFH
今scratchで書いて試したら2回出たよ。
731名無し~3.EXE:2007/01/17(水) 23:14:15 ID:ekr2reaF
>>728
俺も出ないよ
別のPCでやってみるか
OSとかPC環境も書いてくれ
732名無し~3.EXE:2007/01/17(水) 23:24:32 ID:Ob+Q8A8w
俺は2回でた。osは2000
733名無し~3.EXE:2007/01/17(水) 23:40:17 ID:fJQABiv1
俺も2回。xp, 0.2.2.235
734名無し~3.EXE:2007/01/17(水) 23:48:44 ID:iUfBaNFH
こんなにバラバラなのも珍しいなw
アーカイブ展開したてのデフォxyzzyでも2回出たよ。
osはxp.
735名無し~3.EXE:2007/01/18(木) 01:12:54 ID:3i/gxopz
2回出た。win2k。
736名無し~3.EXE:2007/01/18(木) 03:58:50 ID:yt843O8m
2回出る。xp, 0.2.2.235
第三引数(ONE-SHOT-P)をtにすると1回だけ。
737名無し~3.EXE:2007/01/18(木) 08:40:25 ID:T9T8RYPp
win2k 2回

質問です
replace-dialog で 「バッファの先頭から」に初めからチェック入れておきたいので
(setf *replace-whole-buffer* t) として見ましたがダメでした。
誰か設定方法教えてくれませんか
738名無し~3.EXE:2007/01/18(木) 10:00:32 ID:WhvNiCze
どういう風に駄目なのか分からないけど、名前の衝突が出るなら
replace-dialogを読み込んでおかないと駄目。
739名無し~3.EXE:2007/01/18(木) 10:08:35 ID:WhvNiCze
機能1回しか出ないと書いたけど
今見たらコピペで試したのが問題だった。
(defun test ()
(message-box "OK"))
(start-timer 5 'test)
こういうことだよね?エラーの報告とOKを見間違えていた。
740名無し~3.EXE:2007/01/18(木) 10:53:36 ID:T9T8RYPp
>>738
(setf ed::*replace-whole-buffer* t) でいけました
ありがとうございました
741名無し~3.EXE:2007/01/18(木) 11:47:37 ID:YM+VCiL0
>>739
書き込むときstart-timerのスペル間違えました
それで OK のダイアログ2回でませんか?
742名無し~3.EXE:2007/01/18(木) 14:04:40 ID:mwT77++U
2回出るっていうのは、5秒後にももう一度出るって事か?
上の実行のさせ方だと、何回でも message-box がでるけど。

これでも2回出るの。あと、何回でも (start-timer 5 'test t) を
評価したら、その分何回もでるんだが。

こうすれば、1回の評価で1回しか出ない。

(defun test ()
(message-box "OK"))
(start-timer 5 'test t)

XP SP20.2.2.235 だけど、1回だけ。

743名無し~3.EXE:2007/01/18(木) 14:34:26 ID:9M2PP95/
うちも XP SP2 の 0.2.2.235 だけど、2回でる
2回出るっていうのは、登録してから5秒後にOKが出て
OKを押すともう一個OKが出るって事でいんだよね?
744名無し~3.EXE:2007/01/19(金) 11:51:09 ID:MRTgs05r
>>743
そういうこと。
745742:2007/01/19(金) 19:21:52 ID:wk9SJjka
拡張を全部はずして実行したけど、やっぱり1回。
746名無し~3.EXE:2007/01/19(金) 19:37:15 ID:qDBrssd0
>>745
たぶん勘違いしてるから、はじめから読み返して。
747742:2007/01/20(土) 22:47:03 ID:TYnlnM2b
>>746
正直すまんかった。2回出る。
748名無し~3.EXE:2007/01/23(火) 00:28:25 ID:jHv6OXHl
サロゲート文字を試してみたいのですが、
xyzzyで使える等幅のフォントでサロゲート文字まで入ってるフォントって何かないでしょうか?
749名無し~3.EXE:2007/01/23(火) 14:02:55 ID:p42JbXPd
>>748
サロゲート文字が入ったフォントがどれかは知らないけど、
メイリオは入ってるんじゃないの。
等幅じゃなくても、xyzzy.ini直接編集すれば指定できるし。

サロゲート文字がちゃんと扱えるか、表示、移動、buffer-substring、
subseq、scan-buffer 等報告してくれるとありがたい。
750名無し~3.EXE:2007/01/24(水) 01:10:30 ID:o0Wwl2+8
>>749
コピペした文字をフォントをメイリオにしたメモ帳に持って行くとちゃんと表示されたので
フォントだけ設定すれば表示はできるんじゃないかなって思った。
ini直接編集で、明日会社で試してみる。
メモ帳ですらBackSpaceで半分ずつ消えていく変な挙動なんだよなぁ。
751名無し~3.EXE:2007/01/24(水) 03:17:50 ID:w9a8t1kf
scheme-mode って今は手に入れられない?
なんかリンクも切れちゃってるし見つからないんだけど。
752名無し~3.EXE:2007/01/24(水) 04:52:01 ID:kZ8eAYJa
753名無し~3.EXE:2007/01/24(水) 11:07:14 ID:eTAuQNtp
質問させて下さい。
version 0.2.2.235を使用しています。
Gresregにて正規表現を使い、単一行モード(改行コードを無視し、ファイル内容を単一行として扱う)
にて置換を行いたいと考えているのですが、そのようなことは可能なのでしょうか?

Perlでいうところの、$ext =~ /test/s;
このような修飾子sの働きをして欲しいのです。

>>1-2のテンプレを一通りみたのですが、そのような内容を見つけられませんでした。
もし宜しければお力添えして頂けると幸いです。
754750:2007/01/25(木) 00:11:22 ID:dGQs+e4H
>>749
ini直接編集でフォントの指定を全部メイリオにした、普通の文字はメイリオで表示される。
でも、xyzzy上ではサロゲート文字は化けたまま。表示もできなかった。orz
化けた文字をクリップボードエンコーディングをUTF16でコピペするとメモ帳では表示される。
環境はXP上でメイリオだけ突っ込んだ状態。Vista上での挙動は未テストだけど多分同じじゃないのかなぁ。
755名無し~3.EXE:2007/01/25(木) 01:37:57 ID:ajxWrKVZ
>>752
ありがとう。

定期的にここは見てるんで過去ログチェックをしなかったんだけど
記憶からすっぽり落ちていたようだ。
756名無し~3.EXE:2007/01/25(木) 21:42:24 ID:5TZ7hnGX
>>753
1.ファイルを開く
2.改行コードのあるポイント位置を変数に保存する
3.改行コードを置換して一行テキストにする
4.置換を行う
5.2で保存したポイント位置がずれたら修正する
6.置換後のテキストに、保存したポイント位置に改行コードを挿入する

こんな感じでどうでしょう?

というか、Emacsで同等の機能はないんですかね?
あればそれを移植するのが早いと思いますが。
757名無し~3.EXE:2007/01/25(木) 23:16:52 ID:DjRcD2OS
perlでやればいいと思う。
適材適所だよ。
758名無し~3.EXE:2007/01/25(木) 23:23:04 ID:QR+OTm+R
>適材適所
細木や江原やあるある大辞典並みにうぜぇ
759名無し~3.EXE:2007/01/26(金) 00:08:26 ID:QuPP6j/0
>>753
外してると思うけど
[^\n](改行以外の文字)
を使えば、何とかなる場合も多いのではないかと思った。
760名無し~3.EXE:2007/01/26(金) 00:47:39 ID:PEOFSCuM
>>753
違うのは ^, $, . の処理?
^, $ については \\` と \\' で代用できるかも。

(string-match "xyz$" "xyz\nabc")
=> 0

(string-match "^abc" "xyz\nabc")
=> 4

(string-match "xyz\\'" "xyz\nabc")
=> nil

(string-match "\\`abc" "xyz\nabc")
=> nil

. を改行にマッチさせるのは無理っぽいので \\(.\\|\n\\) と書くしかないかな。
変換関数を書いておけばいいかもしれない。
761名無し~3.EXE:2007/01/26(金) 02:29:17 ID:ANBwiqty
>>753
perlとかrubyでやれば一発でできる
xyzzyの出番ではない
762名無し~3.EXE:2007/01/26(金) 03:16:43 ID:JInyekZM
>>753
xyzzyの正規表現はEmacsのと同じで古式ゆかしいやつだから無理だよ。

つーか、いい加減Perlとかと同じ「普通の」正規表現もサポートしてほしい。
もうそういう時代なんだから。
boost::regexとかonigurumaとか、いくらでも実装あんだし。
あとLispにリテラルも欲しい。C++でもそうだが、文字列リテラルとして正規表現を書くのはきつい。
763名無し~3.EXE:2007/01/26(金) 04:06:21 ID:vo4O+BHU
検索語を一文字ずつ取り出して

a\\(\\|\n\\)b\\(\\|\n\\)c\\(\\|\n\\)d\\(\\|\n\\)e\\(\\|\n\\)

みたいにすれば、一応

abcde

abc
de

のどちらにもヒットしますね。
ただ、これだと正規表現は無理っぽいですが。
764名無し~3.EXE:2007/01/26(金) 05:09:40 ID:ShoQc7b7
    _, ._
  ( ・ω・)
  ○={=}〇,
   |:::::::::\, ', ´
.,.,,.,.,..,.,,.,,.,,(,@)a\\(\\|\n\\)b\\(\\|\n\\)c\\(\\|\n\\)d\\(\\|\n\\)e\\(\\|\n\\)


いや、ごめん
765名無し~3.EXE:2007/01/26(金) 19:17:26 ID:o3SPUikW
スニペットの作者さんとこにあるスクリーンキャストって分かりやすくて良いですね
もっと公開してるサイト無いでしょうか
766名無し~3.EXE:2007/01/26(金) 19:47:14 ID:8poSIW/S
outline-tree2のスクリーンキャストがあったと思います。
他は見たことないですね。
767名無し~3.EXE:2007/01/26(金) 19:48:43 ID:xAvP3KC7
2009年頃はやるんじゃなかったけ lisp
768名無し~3.EXE:2007/01/27(土) 01:00:31 ID:M1PHdCSy
オープンソースなんだから気に入らないなら自分でいじれ
769名無し~3.EXE:2007/01/27(土) 01:12:48 ID:nnpIj8Kt
>>768
んなもん意味ねーよボケ
770名無し~3.EXE:2007/01/27(土) 01:14:15 ID:Di2lorig
何が意味ないのか
771名無し~3.EXE:2007/01/27(土) 09:15:14 ID:FmSxcSu6
なんか機嫌悪いなみんな。(´・ω・`)
772名無し~3.EXE:2007/01/28(日) 10:01:59 ID:9hbpWVu8
ソフト板で聞いたけど、レスつかなかったのでこちらで。

2ちゃん閲覧だけ xyzzy 2ch-mode から Jane View に乗り換えようと
思ってるんだけど、ログの移行とか簡単に出来るのかな?
Jane併用してる人いましたら、それやれる便利ソフトとか教えて。
773名無し~3.EXE:2007/01/28(日) 11:20:34 ID:x8fXgrE2
なぜ回答がもらえないか考えないのかな・・・
774名無し~3.EXE:2007/01/28(日) 15:12:19 ID:2owjMxeq
>>772
過去ログにあった気もする。だからレス付かないのかも。
775名無し~3.EXE:2007/01/28(日) 18:10:00 ID:9hbpWVu8
過去ログ読んだがhtml to datやdat to htmlじゃきれいにできないみたいなこと書いてあった。それが答え?
それに代わるソフトを答えられないって事は、結局、便利なのはないorスレ住人も知らないってこと?

776名無し~3.EXE:2007/01/28(日) 19:17:31 ID:eiqOau9q
>>775
xyzzyはフリーソフトでサポートの義務はないので、
質問に答えるかどうかは回答者の自由。

自分としては今まで何回か回答してきたが、せっかく回答しても
お礼どころか何の返答もないことが多く、さらにLispを貼り付けるのが
悪いといわれたような気がするので特に励ましあうスレの
方で今後回答するのはやめることにした。

君も回答者に責任を転嫁する逆ギレ君の一人ですか?
777名無し~3.EXE:2007/01/28(日) 21:10:34 ID:zOwUnZ5o
xyzzyの"~/.2ch"以下とJaneの"Jane2ch.exe/Logs/2ch"以下を見てみればなんとなく分かると思うんだけどな。
778名無し~3.EXE:2007/01/29(月) 01:16:24 ID:FTp2alQD
>>775
煽られるのはフト板で諦めるのが早すぎだからかも

でも775の態度を見るとこれ移行誰も答えないだろうけどさ・・・
779名無し~3.EXE:2007/01/29(月) 04:26:55 ID:g84vQd4V
タメ口で質問しちゃ厨扱いだよな、もう半年ROMってろ
780名無し~3.EXE:2007/01/29(月) 12:46:37 ID:gUaMj+/j
答えさせるように質問する事を考えた方が良い。
どういう風に言うと2chスクリプトがレスポンスを返すのか
日本語を研究した方が良いね。
755の場合、日本語コンパイラの性能に期待しすぎ。
781名無し~3.EXE:2007/01/30(火) 09:20:46 ID:ogMpvi58
質問に答えるのにもそれなりに時間を取られるが、
答えた後も、それが要望に添うものだったのかどうか確認するために
しばらくスレを見ていなくてはならないのがつらい。
質問をする以上、お礼はともかくできるだけ早く返答してほしい。

ところで、リファレンス更新されてますね。
xyzzyには色々とお世話になっているので、できるだけ協力しようと
は思うんですが..
782名無し~3.EXE:2007/01/30(火) 12:22:19 ID:mAJJj8Sy
>それに代わるソフトを答えられないって事は、結局、便利なのはないorスレ住人も知らないってこと?
なんでこういう結論になるんだろうな?
あとわざわざ書く理由が分からん
783名無し~3.EXE:2007/01/30(火) 13:15:24 ID:Xsr3Vm4s
>>781
> ところで、リファレンス更新されてますね。
> xyzzyには色々とお世話になっているので、できるだけ協力しようと
> は思うんですが..

何でも良いから、行動に移そう!
784781:2007/01/30(火) 18:47:02 ID:nRxNG0EY
>>783
自分としては拡張Lispを公開したり、Wikiや2chで質問に答えたり
すでにそれなりに行動に移しているつもりなんですが。

それでも十分でないのかもしれないですが、あまりこちらに
力を注ぐと本来しなければならないことが出来なくなってしまうので..

そのうち時間と気持ちに余裕が出来たらまた何か公開するかもしれません。
785名無し~3.EXE:2007/01/30(火) 19:26:03 ID:+YV574vj
>>781
俺には今はお礼を言うことぐらいしか出来ないけど
頑張ってくれ! そしてありがとう!
786名無し~3.EXE:2007/01/31(水) 05:32:21 ID:3rCvI2Z8
>>781
既に行動に移していたなんて,さすがじゃん
787名無し~3.EXE:2007/01/31(水) 06:18:50 ID:zH07M65K
(string (unicode-char 228))
(replace-string "\X0164" "ä")

一行目があると「ä」が置換されません。
string と unicode-char の項目を見てみましたが
何が邪魔してるのか全くわかりません。何が原因なんでしょうか?
788名無し~3.EXE:2007/01/31(水) 20:54:18 ID:uIBpIDEe
>>787
同じものを同じもので置換したから、
結果は変わらないように見えているだけでは?
789名無し~3.EXE:2007/02/01(木) 18:45:05 ID:ZP4qBV/Y
>>788
すいません…。頭沸いてました。次からもう少し落ち着いてから書きこきます
本当は2行目は (replace-string "ä" "\X0164") でした。

出来なかった理由はEsc Esc で Evalしたとき1個目のリスト(?)しか読み込まないことを知らなかったからです。
スレ汚し失礼。。。
790名無し~3.EXE:2007/02/02(金) 03:36:20 ID:ukAkuzDl
質問お願いします。
現在のバッファのエンコーディング(モード行に表示されている)
を取得するにはどうすればよいでしょうか?
791名無し~3.EXE:2007/02/02(金) 04:43:50 ID:LBm5oCL+
>>790
buffer-fileio-encoding
詳細はリファレンスを。
792790:2007/02/02(金) 05:57:04 ID:xAjY+v8R
>>791
トンです。
793名無し~3.EXE:2007/02/03(土) 11:39:17 ID:lvL7mFYv
Vistaでxyzzyを使うときの問題点とかまとめたサイトある?
794名無し~3.EXE:2007/02/03(土) 14:18:40 ID:Zi6ywULS
無い
795名無し~3.EXE:2007/02/03(土) 14:57:33 ID:XLQwnlC4
むしろ何か問題あるのなら、ここかwikiに書くと他の人の参考になるかも
796名無し~3.EXE:2007/02/03(土) 16:00:40 ID:lvL7mFYv
Vistaで使ってるのだけれど、

C:/Program Files/xyzzy/usr/hoobar/wxp/.xyzzy.history
既に存在するファイルを作成することはできません。

とか言われる。
797名無し~3.EXE:2007/02/03(土) 16:04:57 ID:MGN22iTk
> C:/Program Files/xyzzy/usr/hoobar/wxp/.xyzzy.history
> 既に存在するファイルを作成することはできません。
>
> とか言われる。

エスパー 出番ですよ。
798名無し~3.EXE:2007/02/03(土) 18:00:45 ID:OsFCW33d
終了時にそのエラーが出て終了できないとか?
799名無し~3.EXE:2007/02/03(土) 19:02:24 ID:lvL7mFYv
OK押せば終了できます。
800名無し~3.EXE:2007/02/03(土) 20:20:35 ID:e/+QB3u6
で?
801名無し~3.EXE:2007/02/03(土) 22:42:09 ID:XUEHPZaK
ヒストリが保存されてないとか?
802名無し~3.EXE:2007/02/03(土) 23:01:15 ID:lvL7mFYv
ヒストリって最近使ったファイルのことですよね?
それならちゃんと表示されます
803名無し~3.EXE:2007/02/03(土) 23:07:07 ID:lvL7mFYv
↑間違いでした
usr以下を消してからxyzzyを起動すると先ほどのダイアログが出なくなります。
ただしヒストリは保存されません。
考察するにProgram Files以下にファイルを作ったりすることができないよう
になったみたいです。
804名無し~3.EXE:2007/02/03(土) 23:45:19 ID:Zi6ywULS
>>803
考察しなくても常識だよ。
vista使ってないけど
805名無し~3.EXE:2007/02/04(日) 00:05:50 ID:XWbgJtSY
>>803
それなら他のところに移しちゃえば?
806名無し~3.EXE:2007/02/04(日) 02:02:36 ID:oTT5bh6U
>>803
新しいOS使うなら以前からの変更点くらいはチェックしてからのほうがいいぞ
やることやったうえで考えるようにしないと時間を無駄にするだけ
807名無し~3.EXE:2007/02/04(日) 10:24:37 ID:GaBmsFku
Vistaでxyzzyを使うときにバイナリを置く場所として
最適なのはどこだと思いますか?
808名無し~3.EXE:2007/02/04(日) 10:49:22 ID:Y+rGcGRc
>>806
説明書読まずにゲーム始めるやつと、読んでから始めるやつみたいだな。
でも、結局どちらも変らんよ。
809名無し~3.EXE:2007/02/04(日) 13:06:56 ID:1GJFRS0x
>>808
ゲームの場合はな。
810名無し~3.EXE:2007/02/05(月) 00:23:24 ID:cVSQZloy
xyzzyはゲームだろ。
811名無し~3.EXE:2007/02/05(月) 00:48:13 ID:yqoLmRZO
xyzzyのカスタマイズは確かにゲームかもしれん
812名無し~3.EXE:2007/02/05(月) 01:16:55 ID:dDRaH9TX
Vistaの売りはセキュリティ面で改善されていてより安全になるということ
813名無し~3.EXE:2007/02/05(月) 01:44:26 ID:2J9vzx3p
>>807
C直下にxyzzyてフォルダを作って放り込め。
814名無し~3.EXE:2007/02/06(火) 10:45:39 ID:ASwbHTCN
Vistaでコンパイルした人いるのかな
自分は低スペックマシンなので試せないが
815名無し~3.EXE:2007/02/06(火) 23:23:28 ID:1KLM8805
試す必要はないけど、それは試さない理由にならない。
816名無し~3.EXE:2007/02/07(水) 00:16:48 ID:oEdkBElt
低スペックはコンパイルしない理由にはならないが
Vistaをインストールしない理由としては十分。 日本語てむずかしい
817名無し~3.EXE:2007/02/07(水) 00:18:32 ID:BaeygD2k
ガタガタぬかしてんじゃねぇ。さっさとコンパイルしやがれ!!
818名無し~3.EXE:2007/02/07(水) 00:36:17 ID:4RsR00m/
今派入る
819名無し~3.EXE:2007/02/07(水) 10:09:54 ID:ONCyEJUj
普通にVistaのことを省略してインストールできない言っているんだろう
>>815は低レベルな釣りor漏り
>>816くらいのレスならまだいいが。
820名無し~3.EXE:2007/02/07(水) 22:56:24 ID:4T0EbeRB
igsearch.l ですが、outline-tree2 の無い環境だとバイトコンパイルできない模様。
igsearch-switch-olt2 をとりあえず以下のように書き換えると上手く行くっぽい。

(defun igsearch-switch-olt2 ()
(unwind-protect
(isearch-exit)
(if (modulep "outline-tree2")
(progn
(in-package "outline-tree2")
(outline-tree-isearch-forward)
(in-package "editor")))))
821名無し~3.EXE:2007/02/08(木) 06:16:51 ID:HQJWKtcl
>>819は俺様が絶対に正しい分類厨。
822名無し~3.EXE:2007/02/08(木) 08:14:32 ID:GgZDY4Z8
>>819 はおバカさんだなぁ
823名無し~3.EXE:2007/02/09(金) 22:21:20 ID:H0uDuTZG
指先が xyzzy を求める。
824名無し~3.EXE:2007/02/10(土) 00:40:08 ID:M2dxbzK5
minibuffer-messageって何に使うの?
メッセージでてもすぐ消えるんだけど。
825名無し~3.EXE:2007/02/10(土) 02:05:45 ID:tdLKxrJL
>>824
コマンド終了時にクリアされるようだから,
終了まで時間のかかるコマンドなら使い道があるのかも.
826名無し~3.EXE:2007/02/10(土) 02:11:41 ID:H+lI+kJP
>>824
minibuffer-promptとほぼ同じ。
minibuffer-promptでlispフォルダ内をgrepしれ。
827名無し~3.EXE:2007/02/10(土) 10:06:29 ID:kBUNm4S9
>824
messageを出すのにステータスバーじゃ小さくて嫌なときに、sit-forと組み合わせて使うことがある。
828名無し~3.EXE:2007/02/11(日) 17:14:21 ID:mkihxxjq
igsearchいいですね。
isearce-decoから乗り換え決定しました。
829名無し~3.EXE:2007/02/11(日) 17:22:09 ID:2N3/VMGR
Vistaに最適化したインストーラー作って欲しいな。
環境変数とか設定ファイルの保存場所とか自動でやって
くれるやつ。
830名無し~3.EXE:2007/02/11(日) 17:27:08 ID:8mUfXBMn
逆におれは isearch-deco に戻そうかと思案中。
一覧は カレントバッファに対するgrepで作れるけど、
画面分割して表示するのが当たり前の自分の使い方では、
検索して見つかった時に igsearch を中止すると、カーソル
がどこにあるか探すことになって不便。

ウィンドウを仕切りなおして一覧表示するかどうかのデフォルト値
と、検索中にそれを切り替えるコマンドが用意されるといいんだけどな。
831名無し~3.EXE:2007/02/11(日) 18:19:00 ID:HJBOLw1J
>>830
> 検索して見つかった時に igsearch を中止すると、カーソル
> がどこにあるか探すことになって不便。
行カーソルを表示したり、キャレットをブロックにしてキャレットの色を
目立つ色に変更するとだいぶ良いと思うのですが、どうでしょう。

> ウィンドウを仕切りなおして一覧表示するかどうかのデフォルト値
ウィンドウの仕切りなおしがいらないってことでしょうか?
一覧表示自体がいらないってことでしょうか?
前者なら一覧が変なところに表示されたら見づらいと思うのですが…。
後者なら*igsearch-grep*です。
832名無し~3.EXE:2007/02/11(日) 19:02:53 ID:8mUfXBMn
>>831
> 行カーソルを表示したり、キャレットをブロックにしてキャレットの色を
> 目立つ色に変更するとだいぶ良いと思うのですが、どうでしょう。

ある程度それはしてますけど、キャレットを探すことで思考が中断されるの
は物忘れの激しい自分には辛いです。

> 一覧表示自体がいらないってことでしょうか?
> 後者なら*igsearch-grep*です。

*igsearch-grep* でした。それで自分のしたいようにできないかとちょっと
コード書いてみましたが、まだ少しうまくいきません。
やりたいことは、C-s サーチ中に 表示・非表示を切り替えるという事です。

833830:2007/02/11(日) 19:04:38 ID:8mUfXBMn
;; デフォルトは一覧表示しない。
(setq *igsearch-grep* nil)

;; *igsearch-abort-hook* を追加。
(defvar *igsearch-abort-hook* nil)
(defun igsearch-abort ()
(let ((last *isearch-last-match*)
(curstr *isearch-current-string*))
(loop
(unless *isearch-status*
(unless (string= curstr "")
(setq *last-search-string* curstr))
(run-hooks '*igsearch-abort-hook*)
(quit))
(and (not last)
*isearch-last-match*
(return))
(igsearch-pop-status))))
834830:2007/02/11(日) 19:05:36 ID:8mUfXBMn
;; *igsearch-grep* の値をトグル
(defvar igsearch-grep-old nil)
(defun toggle-igsearch-grep (&optional (arg nil sv))
(interactive)
(if (null igsearch-grep-old)
(setq igsearch-grep-old (list *igsearch-grep*)))
(setq *igsearch-grep* (if sv
arg
(not *igsearch-grep*)))
(ed::igsearch-show-candidate))

;; 元の状態に戻す
(defun recover-igsearch-grep-status ()
(when (consp igsearch-grep-old)
(setq *igsearch-grep* (car igsearch-grep-old)
igsearch-grep-old nil)))

(add-hook '*igsearch-abort-hook* 'recover-igsearch-grep-status)
(define-key ed::*isearch-map* #\M-C-t 'toggle-igsearch-grep)
835830:2007/02/11(日) 19:53:45 ID:8mUfXBMn
自分のしたいことできました。お騒がせしてすみません。
836名無し~3.EXE:2007/02/11(日) 20:06:22 ID:HJBOLw1J
>>830
やってみました。どうでしょうか。
837830:2007/02/11(日) 20:48:28 ID:8mUfXBMn
>>836
こちらではちゃんと使えています。

しっかりと見てるわけではないですが、hookを追加する方だと色々と修正が出
るのに対し、この方法だとそれはないのですね。

でも、切り替えた時点で一覧を表示するようにはできないでしょうか。
切り替えた時点で一覧を見たいことは確定しているので、もう一度
C-s 等を押すまで表示されないのは少し不便です。
838名無し~3.EXE:2007/02/11(日) 21:17:59 ID:HJBOLw1J
>>837
たしかにそうですね。修正しました。
839830:2007/02/11(日) 21:22:21 ID:8mUfXBMn
>>838
一覧表示にトグルすると、現在の候補もちゃんとハイライト
されていて、まさに望む動作になりました。
ありがとうございました。
840名無し~3.EXE:2007/02/13(火) 03:42:03 ID:jPWhSM2+
KaMailV3でpngファイル添付して送信すると壊れません?
841名無し~3.EXE:2007/02/13(火) 16:18:34 ID:nwWlKj4Q
iniファイル編集してメイリオ使えるようにしたいんですが、

[Font]
...
Japanese=19,"FixedSys",128

の部分の "19" と "128" は何を意味するのでしょうか?
適当にいじると文字化けしたりサイズが合わず、うまくいきません。
アドバイスお願いします。
842名無し~3.EXE:2007/02/13(火) 16:27:30 ID:WeLSU/LR
>>841
メイリオを等幅にできるパッチがあるからMeiryoKeで検索してみるといい
843841:2007/02/13(火) 17:45:34 ID:nwWlKj4Q
>>842

レスありがとうございます。
MeiryoKe を手に入れましたが、meiryo のバージョンが 5.0 でないため
パッチを適用できませんでした。

そもそも、メイリオは等幅ではなくて、そのままでは xyzzy では
使えないものなのでしょうか?
844名無し~3.EXE:2007/02/13(火) 22:07:11 ID:16PZCZvy
無理。
845名無し~3.EXE:2007/02/13(火) 23:55:19 ID:i2/CBWEw
>>841 = 842

xyzzy ではプロポーショナル・フォントは使えない。ini ファイルを
手動でいじっても、レイアウトが崩れてちゃんと表示できない。

だから MeiryoKe で Meiryo ver. 5.0 にパッチをあてて等幅に
するしかないよ。5.0 は手に入りづらいけど、善意で公開して
いる人がいる。

リンク張ると迷惑がかかるから、「メイリオ フォント 5.0」で
ぐぐってみて。

846名無し~3.EXE:2007/02/13(火) 23:56:27 ID:i2/CBWEw
>>845

> >>841 = 842

>>841 = 843 のまちがい。スマソ
847名無し~3.EXE:2007/02/14(水) 20:15:39 ID:8F25sMUz
Katex modeについて質問します。

Katex本体を ~/site-lisp/katex ディレクトリに展開しました。

.xyzzyに
(push "e:/xyzzy/site-lisp/katex" *load-path*)

site-lisp/siteinit.lに
(push "e:/xyzzy/site-lisp/katex" *load-path*)
(require "elisp")
(push '("\\.tex$" . elisp::katex-mode) *auto-mode-alist*)
(autoload 'elisp::katex-mode "katex" t)
(setq elisp::tex-command "platex")

を追加し、shift+ctrl+右クリックで、ダンプファイルを作り直しました。

xyzzyを起動し、.texファイルを開くとKatexモードになります。ここでxyzzyを終了し、
再起動した後 .texファイルを開くと
「ファイルが見つかりません "katex"」
ダイアログが出現し、Fundamentalモードでファイルを開いた状態になります。
以後、何度 .texファイルを開いても、Katexモードは出現しません。
(ダンプファイルを作り直すとKatexモードで開けますが、再起動すると同じ症状が出ます。)

xyzzyを再インストールし、クリアな状態でKatexをインストールしても、同じでした。
848名無し~3.EXE:2007/02/14(水) 20:40:24 ID:SmGr44E0
>>847
referenceの*load-path* と*default-load-path* を見たところ、
siteinit.lでは *default-load-path* にpushしなきゃだめらしいよ。
849名無し~3.EXE:2007/02/14(水) 21:01:34 ID:8F25sMUz
>>848
siteinit.lを
(push "e:/xyzzy/site-lisp/katex" *default-load-path*)
に書き換えましたが、
「ファイルが見つかりません "elisp"」
ダイアログが出て、xyzzyが起動しませんでした。
850名無し~3.EXE:2007/02/14(水) 21:08:13 ID:SmGr44E0
>>849
(setq *default-load-path* '("e:/xyzzy/site-lisp/katex"))
ではどうかな?

851841:2007/02/15(木) 02:24:37 ID:xErDsp+G
>>845

コメントありがとうございます。
等幅フォント、見つけることができますた。
852847:2007/02/15(木) 07:25:40 ID:ahvwrDhB
環境変数XYZZYHOMEを登録してませんでした。
特に不具合なく動いています。
ごめんなさい。
853名無し~3.EXE:2007/02/16(金) 00:39:50 ID:jZReI3qc
bregex.dllキタ━━━━━━(゚∀゚)━━━━━━ !!!!!
http://raido.sakura.ne.jp/southly/rn/?1171550503.txt
854名無し~3.EXE:2007/02/16(金) 01:26:27 ID:OZhjVLss
>>853
そこリンク禁止じゃね?
マナーくらい守ろうよ
ソフトの寿命を縮めるだけ
855名無し~3.EXE:2007/02/16(金) 01:46:54 ID:pjVh4nVG
grepした結果の1行がすごく長い行で
F10でジャンプしようとしてもできないのですがなんとかならないでしょうか?
856名無し~3.EXE:2007/02/16(金) 02:15:32 ID:jZReI3qc
勝手にリンクしてしまい、申し訳ありません
禁止事項についてどこで確認できるのか教えてください。
857名無し~3.EXE:2007/02/16(金) 07:48:18 ID:26ZfUfoh
リンク禁止って、今時そんな事を文字通りの意味で言っているとも思いにくい。
ありえんだろ。実際。
858名無し~3.EXE:2007/02/16(金) 08:11:22 ID:7cyZJy3P
無断リンクは是です 22
http://pc10.2ch.net/test/read.cgi/hp/1155405550/

> あと、リンク禁止なんてことはもちろんありません。どうぞご自由に。
859名無し~3.EXE:2007/02/16(金) 12:52:18 ID:OZhjVLss
俺もサイト作ってるけど
一般的な掲示板とかならいいんだけど
正直2ちゃんで晒すのはやめてほしい。
本人はよかれとおもってるから何も言えないんだがな・・・
860名無し~3.EXE:2007/02/16(金) 14:05:04 ID:7cyZJy3P
俺は別にさらされてもいけど、宣伝乙、作者乙っていわれるのがいや。
861855:2007/02/16(金) 14:34:41 ID:z/vDfAgA
自己解決した。
*error-regexp-list*の2番目の正規表現がgrep結果の内容の:とマッチしててgrep結果の内容までファイル名に渡していた。
これを書き換えたら直った。
862名無し~3.EXE:2007/02/16(金) 18:51:34 ID:2pH48YXw
>>853 宣伝乙
>>860 作者乙
863名無し~3.EXE:2007/02/16(金) 21:28:44 ID:qdqISmq+
>>862
感じ悪。
864名無し~3.EXE:2007/02/17(土) 00:27:49 ID:yxfBvzC3
(while t
 (dolist (c '(33478 33449 33471 33474 33453 33471 33476 10))
    (princ (code-char c))
    (sit-for 0.03)))
865名無し~3.EXE:2007/02/17(土) 07:42:47 ID:vXgqf4iX
winkey.l を読み込んだ状態で selection
866名無し~3.EXE:2007/02/17(土) 07:46:35 ID:vXgqf4iX
すいません途中で送信してしまいました
selection を killの履歴 ではなく clipboard にだけ入れたいので
下のように書いたのですが、それでもkillの履歴に入ってしまいます
copy-selection-to-clipboard の時点で履歴に入ってしまうようなんですが
何故そうなるかがわかりません。
どこが間違ってるか教えてもらえませんでしょうか

(defun copy-and-delete-selection-to-clipboard ()
(interactive)
(save-window-excursion
(copy-selection-to-clipboard))
(delete-selection)
(define-key ed::selection-keymap #\C-x 'copy-and-delete-selection-to-clipboard)
867名無し~3.EXE:2007/02/17(土) 08:23:13 ID:vXgqf4iX
>>866
コピー失敗してました
誤 (delete-selection)
正 (delete-selection))
でした。
868名無し~3.EXE:2007/02/17(土) 23:16:30 ID:a6yPpd1z
>>866
うちでは再現しませんでした。
869名無し~3.EXE:2007/02/18(日) 08:49:04 ID:V2UgwDNi
すげぇ
870名無し~3.EXE:2007/02/18(日) 18:40:55 ID:8eIxrX7S
>>762
Common Lispの言語仕様どうなってるんだっけ?
もし正規表現の方法まで細かく規定されてるんなら
それ以上はしないんじゃない?
871名無し~3.EXE:2007/02/18(日) 19:13:07 ID:Qy4Hr0ak
>>870
ttp://xyzzy.s53.xrea.com/wiki/index.php?%B3%C8%C4%A5lisp%2FBoost.Regex
すぐ上にも別のURLがありますが、Boostは実装済みのようです。
872名無し~3.EXE:2007/02/18(日) 19:41:27 ID:zFYFfW/Q
>>870
正規表現はなかった気がする。
CLtL2 を検索したけどそれらしい記述も見当たらないし。
873866:2007/02/19(月) 04:17:48 ID:yyLj8lCP
>>868
ありがとうございます
…うちでも再現しなくなってました。 理由はわかりません ○| ̄|_
874名無し~3.EXE:2007/02/20(火) 20:38:33 ID:/MNGe2J3
ldoc2のバージョンアップで
M-x netinstallerとか
M-x 2chが出来なくなったような。

…こういうときにNetInstallerから前のバージョンに戻すキーがほすぃ。
875名無し~3.EXE:2007/02/20(火) 20:51:48 ID:/McW/iPO
俺はなってないな
てかバックアップしとけばいいだけ
876名無し~3.EXE:2007/02/20(火) 20:55:14 ID:/MNGe2J3
>>875
あれ。なんか変なことをやってるのかな。

バックアップはNetInstallerがしてくれてるので、それを一発でってことです。
877名無し~3.EXE:2007/02/20(火) 21:14:00 ID:7Sxze64k
>>872THX
じゃあCommon Lispの範囲内にはおさまるんだ
作者さんの気分でやってくれるかもね

つーか(Lispに限らず)正規表現Perlレベルでどっか標準化しないのかな?
878名無し~3.EXE:2007/02/20(火) 22:02:03 ID:EyZ4uYMu
>>874
うちでは起動直後はM-x netinstallerできるが、任意のバッファを
開くとできなくなるような気がした。
それと、バッファによってインデントがおかしくなることがある気がする。

*buffer-package*をdefvar-localに戻して、make-local-variable
を削除したら動いている感じ。

ついでに*this-command*がmouse-nopのときにもドキュメントを
表示してくれるとうれしいな。
879名無し~3.EXE:2007/02/20(火) 23:04:56 ID:jwkyc81g
>>874
> ldoc2のバージョンアップで
> M-x netinstallerとか
> M-x 2chが出来なくなったような。

使っている拡張によって出たりするようです。
原因を完全に追うところまではしてないので、はっきりとは言えませんが、
おそらく原因となっていた部分を戻したので、今度は問題ないと思います。
netinstaller から更新してください。それができない場合は、

XYZZY/site-lisp/ni-autoload/whimsical_xyzzy/ldoc2.l

を削除 & ダンプしたら、netinstaller 使えるでしょうか?

ちなみに、旧バージョンは以下にもあります。
http://www.jaist.ac.jp/~m-nakano/ni/ldoc22006.11.21.zip
880名無し~3.EXE:2007/02/20(火) 23:30:44 ID:jwkyc81g
>>878
> *buffer-package*をdefvar-localに戻して、make-local-variable
> を削除したら動いている感じ。

まさにそれをしました。

> ついでに*this-command*がmouse-nopのときにもドキュメントを
> 表示してくれるとうれしいな。

本日、 2回目の更新で対応しました。
881名無し~3.EXE:2007/02/21(水) 02:52:05 ID:V3qwp5Mo
>>877
そうはいうがな、Perl5のそれを元にして微妙に拡張していたりする
Javaとか.NETがあったりするし、PerlはPerlで5.10.xでまた微妙な
拡張をするようだ。マイナーなところではPythonとか鬼車も微妙に違いが
あるしね。

で、「誰が」標準を定める団体(ISOとかECMAか?)に仕様を提出すればいいと?

そもそもPerl自体がOpengroupとかで挙げられている必須のツールに
入ってないんじゃなかったっけ?
882名無し~3.EXE:2007/02/21(水) 03:35:40 ID:t2nsVkme
>>881
Boost.Regexでは、Perl式のことをECMAScript式とも呼んでるから、
すでにECMAにあるものと考えていいんじゃないかと思う。
少なくともBoostの中の人はそう考えてるっぽい。
883名無し~3.EXE:2007/02/21(水) 23:12:45 ID:TZGhJrAS
>>880
修正ありがとうございました。
884881:2007/02/22(木) 01:23:11 ID:YMp6Elkd
>>882
団体名でECMA出しておいて、ECMAScriptのことはすっかり忘れていた。ツッコミ感謝。
Boostは良く知らないのだけど、まあそれなりの「整った仕様」だとしても
それはBoostなりECMAScriptの一部じゃない?

そりゃあ何もないよりは良いかもしれないけど、「(Perl5互換の)正規表現のリファレンス」
にするにはちょっと弱いんじゃないかなあ。まあPOSIXのあれもシェルとかユーティリティ
部門に押し込められているけど、各ツールで共通にしているわけだし(2つの大別はある)。
885名無し~3.EXE:2007/02/22(木) 18:34:51 ID:0LqOpUnp
ミニバッファ上でfind-fileとかしてる時に、tab補完でディレクトリショートカットが展開されないのが
我慢ならなかったので(調べても*before-find-file-hook*に追加する奴しか見つからなかったし)、
入力にディレクトリ.lnkがあったら全て展開していくlispを書いてみた。
需要があるかどうかわからんけど、wikiのtipsに上げてみたので欲しい人はどうぞ。
886名無し~3.EXE:2007/02/23(金) 16:45:00 ID:acR1ne2X
>>884
Boostの正規表現で参照されてるのは
ECMA-262でその仕様の中に正規表現についての記述がある。

BoostがそのうちC++の標準に含まれてBoostの正規表現も仕様に載るだろうと思うけど。
887名無し~3.EXE:2007/02/24(土) 03:34:00 ID:9/60n3/g
>>886
ん? ECMA-262ってECMAScriptじゃなかったっけ?

わかりづらいかき方で申し訳なかったが、ある言語の仕様の一部としてあるんじゃ
ちょっと立場的には弱いんじゃないの? ということ。

Boost経由でC++0xに入るなら影響はでかいだろうけどさ。


888名無し~3.EXE:2007/02/26(月) 20:36:21 ID:bNj37iPr
テキストファイルを開いている最中、たとえば
#include "hoge.h" とかあったときにカーソルが矢印のとこさしていた場合

ここでなにか lisp-command うつと新しい buffer 開いて移動してくれる
みたいなものってないでしょうか?
vim でいう [ f みたいなもので "relative-path" or '...' だと
current path -> 登録されているディレクトリを検索し、
マッチした最初のファイルに飛んでくれるようなものを期待しています。

ここまでなくてもいいので、似たようなものってないでしょうか?
僕のクリック力では見つからなかったのであるかないかだけでもよろしく
お願いします。
889名無し~3.EXE:2007/02/26(月) 21:28:33 ID:FMGSLH4N
>>888
ffapですかね。
890名無し~3.EXE:2007/02/26(月) 22:48:44 ID:bNj37iPr
ありがd
891名無し~3.EXE:2007/02/26(月) 22:49:26 ID:64gGACX/
移植版のffapってたまにもっさりなんだよなぁ。
892名無し~3.EXE:2007/02/26(月) 23:32:31 ID:iJQquo2b
>>891
昔書いたやつが利用価値無いかと思ったけど、
そうでもない場合がありそうなので netinstaller で公開してみました。
open-pattern-path です。よかったらどうぞ。
893名無し~3.EXE:2007/02/27(火) 10:35:55 ID:jCij4qlg
>892
どうもありがとうございます。
diaryに書いていただいたコードを貼り付けてみたら軽快になりました。

ちなみに以前は、たとえば(require "ffap")だったら、
"ffap"の辺りでC-xC-fするとさくっといけるのに対して、
"require"のところだともっさりしていました。
894名無し~3.EXE:2007/02/27(火) 12:13:19 ID:8LnpUEhr
ちょっとした勘違いをしてる人が
895名無し~3.EXE:2007/02/27(火) 15:43:33 ID:jCij4qlg
"require"のところでC-xC-fしたときにミニバッファに"d:/hoge/ffap.l"が出ることを期待しているわけじゃないです。
この場合、"d:/currentdirectory/"と出るわけですが、これが出てくるまでにややもっさりする、という話です。
896名無し~3.EXE:2007/02/27(火) 16:02:24 ID:OzNrOY2O
>>895
その場合はrequireで検索してて、
requireっていうファイル見つからないために
登録されてる全てのディレクトリから検索してるせいでもっさりしてるんだと思う。
897名無し~3.EXE:2007/02/27(火) 23:03:09 ID:fVZASlF+
勘違いってのは、892さんとffapの作者さんとは別人だって
ことじゃないの?
898名無し~3.EXE:2007/02/28(水) 12:31:32 ID:KE0IhSPb
勘違いを勘違いしているのは気づかんかったわ
899名無し~3.EXE:2007/03/01(木) 21:00:36 ID:WOqDvYYN
最近、板更新したら2ch-modeで2ch見れんくなったんだが、
話題として出て無いってことはおれん所だけなんかな。
900名無し~3.EXE:2007/03/01(木) 21:07:55 ID:v656sqfy
 bbsmenu.htmlは新しくなっているはずなのに、板一覧を更新して
もそれが反映されないことがあったので調べてみた。その結果、ペ
ージの内容が更新されていてもサイズが前と全く同じ場合に更新さ
れていないと判断されてしまうことがわかった。普通は更新されたら
サイズがちょっとは変わるものだが、ttp://pc10.2ch.net/ttp://pc11.2ch.net/
みたいに1文字変わるだけの更新だったりすると、サイズが変わら
ないため板一覧が更新されないという現象が起こってしまう。

修正は、http-get()を

; バイト数での比較
(when (and *http-compare-size*
(not gzip-p))
(not (equal *menu-url* url)));追加
(when (and (not force)

とすればよいと思われる。

で、otherbbsにも反映しようと思ったのだが、添付にパスワードが
必要になったみたいで添付できない。これって○○を入れろとか決
まってたんでしたっけ?
901名無し~3.EXE:2007/03/01(木) 21:22:44 ID:KMbfqyBy
>>899
BBSPINKが見られなくなったという場合は
otherbbs を使ってください or それを参考に 2ch-mode を修正してみてください。

それ以外は >>900 を除いて自分の環境では特に問題は感じていませんが…。

ちなみに otherbbs を使う場合は、>>900 の修正は otherbbs の方に行ってください。
902名無し~3.EXE:2007/03/01(木) 23:20:01 ID:WOqDvYYN
>>900-901
ご丁寧にありがとう。

でも、pcXX.2ch.net鯖の板が見れなくなってるみたい。スレ一覧の形式がわからんよってなる。
どちらかというと、bbsmenu.htmlが更新されたせいで見れなくなってるくさい。R押す前までは見れてたから。
ためしに、bbsmenu.html消して、再度更新してみたけど、同じ。bbsmenu.htmlの形式が変わったんかな?
とにかく、いま板一覧は更新しない方がいいですよ。
BBSPINKに関しては、いままで、bbsmenu.htmlを手編集してました。

あと、302エラーになるせいでPC関連の追っかけスレが全部過去ログになってしまった。。。
前もあったけど、これ直すの面倒なんだよね。
903名無し~3.EXE:2007/03/01(木) 23:40:54 ID:oSE4nhlq
>>902
~/.2ch にある bbsmenu.html に書かれてある Windows 板の URL を見てみてください。
ttp://pc10.2ch.net/win/
になってませんか?
ttp://menu.2ch.net/bbsmenu.html
のデータを見ると
ttp://pc11.2ch.net/win/
になっています。この変更がファイルサイズが同じであるため2ch-modeで認識されていない
のが原因ではないかと思います。

自分の環境では >>900 の修正をすることでいままで更新なしとされていた更新が
行われて、「形式がわからんよ」や 302 が出ないようになりました。ちなみに
*menu-file-name*、*2ch-base-url*はデフォルトです。

ただ、そちらの環境では板一覧更新後に今の状況になったというのが謎ですね…
自分の推測が外しているだけなのかなぁ…。

>あと、302エラーになるせいでPC関連の追っかけスレが全部過去ログになってしまった。。。

大量に 302 が出る場合、板移転であることが多いですね。
自分はとりあえず過去ログにしますかが出たら「いいえ」と答えて様子を見ることに
しています。
904名無し~3.EXE:2007/03/01(木) 23:42:51 ID:oSE4nhlq
あ、Windows板の変更は一例で、他の板も似たような変更が行われているものと思います。
905名無し~3.EXE:2007/03/02(金) 05:01:19 ID:zTdYKbRC
pc10使ってた板(PC等、ネット関係の多く)が全部pc11に移行してる。
~/.2ch/bbsmenu.html のpc10を全部pc11に置換すれば良いよ。
906名無し~3.EXE:2007/03/02(金) 13:07:38 ID:kbzVdBhz
>903-905
ありがとう。なんとか、見れるようになりました。

>ただ、そちらの環境では板一覧更新後に今の状況になったというのが謎ですね…
これについては、こちらの恥ずかしい勘違いでした。申し訳ない。
907名無し~3.EXE:2007/03/02(金) 20:39:51 ID:Kr+hpdtv
>>900
PukiWikiで添付を開けていると機械的に広告がはっつけられるので閉じました。
良い設定や運用方法があるならなんとかしたいのですけど。
908名無し~3.EXE:2007/03/02(金) 21:58:53 ID:i2lIA/+A
>>907
貼られてたのはコメント(の大量のURL)じゃないんですか?
909名無し~3.EXE:2007/03/02(金) 22:05:04 ID:Q4ABJ7yU
>>907
そうだったんですか…残念です…。

ということなので、とりあえずということで自分のサイトに最新版の otherbbs を置きました。
http://www.green.dti.ne.jp/poi/2ch_mode_otherbbs/2ch_mode_otherbbs.lzh
です。
DTIってアクセスログが見られないからどれくらい需要があるかわからないのが悲しい。
Wikiだとダウンロード数が見られるから自分の作ったものを他の人にも使ってもらえていると
感じることができて嬉しかったなぁ。

>>908
およ、添付は関係なかったりするんですか?復活できるんだったら嬉しいんですが…
910名無し~3.EXE:2007/03/02(金) 22:56:49 ID:Kr+hpdtv
あんまりここのトピックとは関係なさげなので
心苦しいですがご容赦ください。

>>907
http://pukiwiki.sourceforge.jp/dev/?%B3%AB%C8%AF%C6%FC%B5%AD%2F2006-12-16#vce01157
悩まされていたのはこれです。

>>908
なんとなし前と全く同じようにはできなさそうなのですが
考えてみます。mailがお嫌いでなければ現状でも対応できそうですが…


lispの添付はともかく(運用で回避はできそう)
説明の画像が気楽に貼れないのは痛いんですよねぇ
911名無し~3.EXE:2007/03/02(金) 23:26:33 ID:1K4JgA2i
>>910
なるほど、spam画像の置き場として使われている訳ですか…。

>なんとなし前と全く同じようにはできなさそうなのですが
>考えてみます。mailがお嫌いでなければ現状でも対応できそうですが…

それってメールで添付ファイルを送って代わりに添付してもらうっ
てことですよね。それはあまりにもそちらの手間がかかってしまっ
て申し訳ないです…。
912名無し~3.EXE:2007/03/02(金) 23:26:44 ID:EWKaeEpC
>>910
CVS最新だと対策済みのハズ。
ただ、遅くても夏までに次バージョンリリースされそうな予感はする。

# 最近の更新内容から考えて。
913名無し~3.EXE:2007/03/03(土) 06:41:05 ID:/gPdxWcM
900のってそのまま書けばいいの?
)1個多い気がするけど
914名無し~3.EXE:2007/03/03(土) 06:58:12 ID:7gaCI2IO
>>913
試すなり解読するなりして
間違ってる箇所があるなら直してくれよ。
何のための掲示板だよ・・・
915名無し~3.EXE:2007/03/03(土) 10:57:12 ID:LqOGnLi9
>>913
(゚д゚)?

(゚Д゚)…

Σ(´Д`)
---
; バイト数での比較
(when (and *http-compare-size*
           (not gzip-p);)を1個取る
           (not (equal *menu-url* url)));追加
  (when (and (not force)
---
でした…

   _______  _______  ______
 〈 スミマセン       〈 スミマセンスミマセン   〈 コノトオリデス
  ∨ ̄ ̄ ̄ ̄ ̄ ̄  ∨ ̄ ̄ ̄ ̄ ̄ ̄  ∨ ̄ ̄ ̄ ̄ ̄
 (´Д`;)ヾ      (;´Д`)             ヾ
   ∨)        (  八)         (´Д`;)、
   ((          〉 〉           ノノZ乙

指摘有難うございました…
916名無し~3.EXE:2007/03/03(土) 11:02:49 ID:D4JQ9bHo
 あ、otherbbsの方は最初からそうなっているのでダウンロードし
直す必要等はありません。
917名無し~3.EXE:2007/03/03(土) 17:00:43 ID:lh6fEu3t
また〜り語るスレでxyzzyが熱いな
918名無し~3.EXE:2007/03/03(土) 21:26:05 ID:Hsa9OA4i
>CALL STACK 13: (toggle-paren nil)
>CALL STACK 12: (system:*byte-code ...)
>CALL STACK 11: (editor::snippet-mode t)
>CALL STACK 10: (system:*byte-code ...)
>CALL STACK 9: (editor::snippet-mode-on)
>CALL STACK 8: (system:*byte-code ...)
>CALL STACK 7: (snippet-expand)
>CALL STACK 6: (system:*byte-code ...)
>CALL STACK 5: (editor::ac-mode-expand-abbrev-after-complete)
>CALL STACK 4: (run-hooks editor::*ac-mode-complete-hook*)
>CALL STACK 3: (system:*byte-code ...)
>CALL STACK 2: (#<lexical-closure: ac-mode-complete-or-indent>)
>CALL STACK 1: (command-execute ac-mode-complete-or-indent)
引数が多すぎます: (toggle-paren nil)
って叱られます。
919名無し~3.EXE:2007/03/03(土) 21:37:37 ID:w9w8jTbt
>>918
paren は、そのサイトの人が公開しているやつを入れてるか?
paren.l はいっぱい種類があるぞ。
920名無し~3.EXE:2007/03/03(土) 22:39:51 ID:Hsa9OA4i
依存関係があったのか、知らなかった
921名無し~3.EXE:2007/03/07(水) 17:56:25 ID:c/jKR5/N
silogさんとこのparenって、(turn-on-paren)って書いとけばxyzzy起動したときから有効になるの?
俺のxyzzyだと(turn-on-global-paren)て書かないと起動時に有効にならない
922名無し~3.EXE:2007/03/07(水) 19:12:19 ID:GtRn3H+u
(turn-on-paren)は1つのバッファ。
(turn-on-global-paren)は全バッファ。

多分、元のparenのusageに(turn-on-paren)って書いてあるから
他のもそう書いてあるんだと思うけど、
求めるものは(turn-on-global-paren)だろうね。
923名無し~3.EXE:2007/03/07(水) 22:20:41 ID:c/jKR5/N
>>922
そういうことだったんですね
ありがとうございます
924名無し~3.EXE:2007/03/07(水) 22:29:12 ID:xO5Hf0ka
*before-find-file-hook* が前回終了時のバッファを復元した時に効かなくて困ってる。
ac-mode-on を引っ掛けるのに何かいいのないですか。
925名無し~3.EXE:2007/03/08(木) 16:38:24 ID:u8oA2vxP
復元の説明をする
926名無し~3.EXE:2007/03/08(木) 23:56:48 ID:tbrJ2FJa
さまざまの 終了時の状態を保存する にチェック入れた状態です。
*post-startup-hook* ってのが良さげなんで試してみます。
927名無し~3.EXE:2007/03/09(金) 19:52:52 ID:Zg79sr2v
>>926
個人的にはセッションを使うのがいいんじゃないのかと思う。
ac-mode はセッションによる前回の状態の復元はサポートしているみたいだし。
意識せずとも終了時の状態を保存する仕組みとして、デフォルトセッション
という拡張lispもあるよ。
928名無し~3.EXE:2007/03/09(金) 20:36:07 ID:mN+AxPgo
「さまざまの 終了時の状態を保存する」
の実体はセッションだから一緒だと思う。

>>924は*before-find-file-hook*に引っかかってる関数のどれかが
non-nilを返しててそれ以降が実行されてないんだと思う。
素直に*find-file-hooks*に引っ掛けちゃまずい理由でもあるの?
929924 :2007/03/10(土) 01:19:53 ID:B0BbXG74
>>927
効かないのです。
>>928
Emacs の desktop より使い勝手のいいxyzzyのセッションに惚れこんでるのと、Emacs の ac-mode より(略
とりあえず *before-find-file-hook* を評価して片っ端から調べてみます。
アドバイスどうもです。
930名無し~3.EXE:2007/03/10(土) 07:48:35 ID:3HjD7FRE
セッションでファイルを開けば(終了時の状態を保存するも同じ)、
*before-find-file-hook* とか、*find-file-hooks* とか効かんだろ。
927 とか 928 とか分かってレスしているとは思えん。
931名無し~3.EXE:2007/03/10(土) 09:14:55 ID:8hRK0KRO
>>930
おまいこそ分かってレスしているとは思えん。
*before-find-file-hook* とか、*find-file-hooks* とか効くぞ?
セッションがどういう風に実装されてるか追ってみたらいい。
932名無し~3.EXE:2007/03/10(土) 10:06:31 ID:Y4o19ByW
>>931
930 ですが、勘違いでした。スレ汚してごめんなさい。
あー、恥ずかしいortz
933名無し~3.EXE:2007/03/10(土) 10:34:08 ID:B0BbXG74
>>932
クラウチングスタートでしょうか
934名無し~3.EXE:2007/03/12(月) 23:29:13 ID:RT1HPV/j
昨夜から xyzzy 使ってるのですが、winapi をたたきたくて悩んでます。

putenv をいじりたくてあれこれしているのですがこれって可能なのでしょうか?
(c:define-dll-entry winapi:_putenv (winapi:PSZ winapi:PSZ)
"msvcrt" "_putenv")
のようなものを想定しています。

makefile のほうに /MT と書かれているので LIBCMT をたたけるのかな???とか
考えているのですけど、できるかできないかだけでも助言いただけないでしょうか?
935名無し~3.EXE:2007/03/12(月) 23:34:17 ID:+rZfZwkR
kernel32.dll の SetEnvironmentVariable 使えば?
936名無し~3.EXE:2007/03/12(月) 23:49:34 ID:RT1HPV/j
>>935
返事ありがとうございます。
コード眺めていたら si:getenv で getenv をラップしていたので、
対応する putenv を使用しなくてはいけないと考えていました。
で、実際にそれは試してみたのですけれど、 execute-subprocess がうまく
うごかなくて、上記の方法を試そうと考えました。

とりあえず、シンボルは解決できたっぽいのですけれど、
putenv が -1 を返す。。。msvcrt.dll 使用
本体はいじりたくたいのですけれど、ちょっと考えます。。。
ご存知の方いたら助言お願いします。
937名無し~3.EXE:2007/03/13(火) 04:05:37 ID:M+PEKitX
putenv で 0 が帰ってくるところまでできたのですが、
xyzzy の本体のほうに反映させることはできなかったでした。
なので結局 execute-subprocess に環境変数を渡してそこで
いじることにしました。
すれ汚してごめんなさい。
938名無し~3.EXE:2007/03/13(火) 07:24:27 ID:HHAIV3Ut
>>937
たしか起動時にgetenvして解析してxyzzy内部で保持している値を
使いまわすので後からputenvしても駄目だった気がする。

昔ソース呼んでたときの記憶なんで間違ってるかも試練が。
#いや、激しく記憶違いかも。
939名無し~3.EXE:2007/03/13(火) 18:01:49 ID:TKfLvd3q
treeviewでマウスのD&Dイベントを受けとることってできますか?
940名無し~3.EXE:2007/03/13(火) 18:10:39 ID:TKfLvd3q
treeview.dllに手入れしないと無理かな?
941名無し~3.EXE:2007/03/14(水) 00:21:51 ID:N/YLDerk
できるとおもいますよ。
942名無し~3.EXE:2007/03/14(水) 09:55:34 ID:ZEtBloXY
バッファがのファイル名がなく バッファ名が *untitled* の時は
名前を付けて保存 みたいな操作にしたく思ってます。
ところが下記のLispを呼び出すと rename の 引数が足りないと怒られてしまいます。

リファレンスを見るとファイル名は必須のようですが不定のものなので
実行時に指定できるようにしたいのですが、どうすればできるのでしょうか?

(add-hook '*save-buffer-no-filenames-hook*
#'(lambda ()
(if (equal (buffer-name (selected-buffer)) "*untitled*")
(rename)
(save-buffer)
nil)))
943名無し~3.EXE:2007/03/14(水) 09:59:46 ID:UjyIkaHN
save-as-dialog
944名無し~3.EXE:2007/03/14(水) 11:19:08 ID:TLTYQpKZ
>>942
(call-interactively 'rename)
945名無し~3.EXE:2007/03/14(水) 12:21:56 ID:ZEtBloXY
>>943
できればダイアログ無しでいきたいので…。
>>944
できました! ありがとうございます!
(add-hook '*save-buffer-no-filenames-hook*
#'(lambda ()
(if (equal (buffer-name (selected-buffer)) "*untitled*")
(progn
(call-interactively 'rename)
(save-buffer))
nil)))
946939:2007/03/14(水) 13:47:55 ID:PcmXhZgy
>>941
どうやれば受けとることができますか?
947名無し~3.EXE:2007/03/14(水) 18:56:04 ID:xQfmAeDI
がりがりwinapiを書く必要はあるでしょう
948名無し~3.EXE:2007/03/15(木) 02:42:11 ID:pGQrXqpM
D&Dより
アイコンをファイルからとって来たり
ノードごとに文字色が変えられたり
中クリックでバッファ/ディレクトリを閉じられたり
ノードを並び替え出来て欲しいなー。
949名無し~3.EXE:2007/03/15(木) 06:49:15 ID:G9E/y+9T
それはtreeview.dllではなく、outline-treeへの要望では。

dllにはフォント変更のインタフェースないみたいだけどoutline-treeではやってるし、
winapi頑張れば大抵のことは今のdllでなんとかなるのでは、という印象。
950名無し~3.EXE:2007/03/15(木) 16:41:49 ID:HsgO+AVo
2ch-mode の otherbbs で追加したしたらばの「スレのURLコピー」って正しく動作しないのが
仕様ですよね?

× ttp://jbbs.livedoor.jp/game/test/read.cgi/game/1165125229/
ttp://jbbs.livedoor.jp/bbs/read.cgi/game/26423/1165125229/

正しく取得できるように改造したいと思ってlispを追っているのですが
thread-url-copy、tracking-thread-url-copyからthread-url-readとかthread-url-read-cgiを
見て言ったあたりで挫折しました。

どなたかヒントいただけないでしょうか?
951名無し~3.EXE:2007/03/15(木) 23:09:24 ID:DKoixqs2
>>950
実装してみたので試してみてください
http://www.green.dti.ne.jp/poi/2ch_mode_otherbbs/2ch_mode_otherbbs.lzh
952950:2007/03/16(金) 09:09:43 ID:ekoedn9k
>>951
ばっちりです、ありがとうございました。
953名無し~3.EXE:2007/03/17(土) 23:58:33 ID:rOnFwl+b
>>952
(・∀・)ヨカッタ

一応種明かしをすると、スレバッファには、バッファローカル変数として、
thread-host
thread-path
thread-dat
thread-bbs
等が存在します。なので、これらからURLを組み立てればOK。
今回は、otherbbsで
get-url-from-host-path-dat-bbs-num-for-browser (host path dat &optional bbs startnum endnum)
という関数が定義されているので、これに上記4つのデータを渡すことでURLを
得ることができます(この関数はホスト名がしたらばのものだったらしたらばの、まちBBSだったら
まちBBSの、それ以外だったら2chのフォーマットでURLを生成してくれる)。最後にこれを利用して
thread-url-copy()、thread-open-browser()を修正して完了となります。
954名無し~3.EXE:2007/03/19(月) 20:16:54 ID:Abfg74K/
py-modeバージョンうpキタ━(゚∀゚)━!!
955名無し~3.EXE:2007/03/22(木) 00:03:29 ID:W1cpL7SU
snippet.lを導入して試しに使用方法の2を試したんだけど、なんか
最初に展開したときと2回目に展開したときの動作が違うのはなんでだろう?

動作が違うのは展開した直後にC-nを押したとき。
2回目以降はC-nを押すと移動先のデフォルト値が消されるような動作になる。
956名無し~3.EXE:2007/03/24(土) 18:20:06 ID:LAt3h/lV
change-default-fileio-encoding で文字コードを変更したら
ファイルの内容が変更された、と判断したいんですがどの関数を呼べばいいんでしょうか?

文字コード変更直後に上書きしても
「変更されてませんよ〜」と言われるので変えたいんです
957名無し~3.EXE:2007/03/24(土) 20:26:34 ID:9dqUkqn/
(set-buffer-modified-p t)
958名無し~3.EXE
>>957
ありがとうございます