1 名無し~3.EXE [] 04/12/19 05:13:38 ID:drvadu7y
亀井さん作成のエディタxyzzyのスレです。

過去ログや関連サイトなどは>>2-10あたり。
2 1 [sage] 04/12/19 05:14:52 ID:drvadu7y
関連サイト

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

・xyzzy日記 -- xyzzy初心者 必読のページ
http://web.sfc.keio.ac.jp/~t01089ti/xyzzy.html

・XyzzyWiki
http://xyzzy.s53.xrea.com/wiki/?FrontPage

・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://www.mirai.ne.jp/~gyo/
3 1 [sage] 04/12/19 05:15:40 ID:drvadu7y
過去ログ

Part1 http://yasai.2ch.net/win/kako/979/979930156.html
Part2 http://yasai.2ch.net/win/kako/994/994321779.html
Part3 http://pc.2ch.net/win/kako/1001/10017/1001707308.html
Part4 http://pc.2ch.net/win/kako/1008/10080/1008057054.html
Part5 http://pc.2ch.net/win/kako/1013/10130/1013042550.html
Part6 http://pc3.2ch.net/win/kako/1019/10196/1019691417.html
Part7 http://pc3.2ch.net/win/kako/1032/10329/1032910212.html
Part8 http://pc2.2ch.net/win/kako/1041/10416/1041613876.html
Part9 http://pc5.2ch.net/win/kako/1053/10538/1053880433.html
Part10 http://pc5.2ch.net/test/read.cgi/win/1067394259/
Part11 http://pc5.2ch.net/test/read.cgi/win/1085301777/

関連スレ

・xyzzyの使い方がわからぬやし 励ましあえ その5
http://pc5.2ch.net/test/read.cgi/software/1088948470/

・xyzzyでタグ打ってる人の数 →
http://pc5.2ch.net/test/read.cgi/hp/1005046309/
4 名無し~3.EXE [sage] 04/12/19 07:41:43 ID:mGkyb+ag
・ZZoops
xyzzy news & forum
http://hie.s64.xrea.com/zzoops/

5 名無し~3.EXE [sage] 04/12/19 08:43:07 ID:f0qZGzuk
>>1
乙!
6 名無し~3.EXE [sage] 04/12/19 13:37:13 ID:g+kDS7CC
>>1
乙カレー
7 名無し~3.EXE [] 04/12/19 13:59:22 ID:xBbsumVS
おつでし
8 名無し~3.EXE [sage] 04/12/19 14:25:40 ID:LikI3pE1
・HIE no xyzzy -- xyzzy Mailing List Archive
http://hie.s64.xrea.com/xyzzy/ml/

・xyzzy Lisp Programming -- M.hiroi氏によるlispでプログラミングを楽しもうのページ
http://www.geocities.jp/m_hiroi/xyzzy_lisp.html
9 名無し~3.EXE [sage] 04/12/21 11:36:46 ID:FslNJMgn
前スレでは *pre/*post-command-hook*について議論が出てたけど,
速度に関係することで前々から気になっていたことがあったのでついでにあげておきます.

(provide "xxx")っていうのは, *modules* に "xxx" がなければ,"xxx"を追加する関数で,
(require "xxx")っていう関数は, *modules* に "xxx" がなければ,xxx.l をロードし,
あればロードしない関数です.
# 識者の方,間違ってたらご指摘お願いします.

*.l を保存したら,すぐロードするというコードを使っているんですが,
siteinit.l を書き直すと, provide が書いてないか *load-path* からの相対ファイル名
(.lを除いたもの) になっていないので,何回も読み込まれてしまいます.
そういうものは .xyzzy に書けよという突っ込みもあるとは思いますが,
配布しているライブラリの中にはprovideが適切に設定されていないものが結構あるので,
siteini.lの再読み込みに数10秒程度かかかってました.
ライブラリのコードをちょっと直して適切にprovideを設定すると,再読み込みに1秒もかから
ないので,ライブラリの配布をしている皆さん 一度 provideのチェックをお願いします.
それと,ほとんどの場合 load-library よりも require でロードするようにした方が
いいと思います.

もう自分の手元にあるのは全て修正済みなので正確には分かりませんが,
oltを設定するだけでもかなりの変化があったように思います.
10 名無し~3.EXE [sage] 04/12/22 01:51:36 ID:KBOWO1fw
>>9
> oltを設定するだけでもかなりの変化があったように思います.
公開しているの (load-library "olt/olt") になってますね。
とりあえず (require "olt/olt") にしといていただければ。
11 名無し~3.EXE [sage] 04/12/24 03:39:50 ID:0N7p8+Xy
ほんのちょっとだけ日本語の入ったutf-8nのファイルを
かなりの確率でshift-jisと誤認します。日本語が大量にあれば
誤認はなくなるんですがたまにイライラします。
sift-jisで書くこともあるの全部utf-8nにするわけにもいず
自動認識にしているのですがこの認識率ってlispで上げられない
もんですかね?
12 名無し~3.EXE [sage] 04/12/24 03:49:44 ID:oLG5PHG7
-*- encoding: UTF-8 -*-
13 名無し~3.EXE [sage] 04/12/24 04:27:31 ID:/0jhA86g
>>11
(change-default-fileio-encoding *encoding-utf8n*)
かな。

ちなみにファイルの先頭から(確か)4096 バイトの内容で文字コードの自動判別が
出来ない場合にはデフォルトが使われるようになっていたと思います。
ので、英文がバーっと最初にあってその後に日本語が続くような文章だと
ほぼ確実に自動判別に失敗して、デフォルトが使われることになります。

開くファイルのエンコーディングがわかっている場合には C-u C-x C-f で開くと、
ファイル名の後にエンコーディングを聞いてくるので最悪それで指定するのもあり。
面倒ですけど。

ファイルの内容を弄っていいなら >>12 もありですね。
14 名無し~3.EXE [sage] 04/12/24 17:42:16 ID:QddKBvgP
僕もこの前それをなんとかしようと思って、xhtmlファイルのヘッダのところにコメントで
「沐豊」と書いたら、それ以外全部英文でもutf8nと認識してくれるようになりました
なんでこの2文字になったかはわかりません
15 名無し~3.EXE [sage] 04/12/24 19:27:22 ID:G+MvlNHy
LaTeXに対するoltを .oltで次のように設定しましたが,
subsectionの下にあるparagraphは表示されるのに,sectionの下にあるparagraphが表示されません.
他のoltでも :any-miss を指定すると同様の現象が起こります.
:any-miss を指定した場合の動作がおかしいようですが,バグの特定まではできませんでした.
とりあえず,LaTeXでの設定を書いておきます.

(defun olt-make-regexp-LaTeX-mode (root-hitem)
(olt-make-regexp-internal
:root-hitem root-hitem
:layer-regexp-list
'("\\\\chapter\\*?{\\(\\(?:[^}]\\|{[^}]*}\\)*\\)}?"
"\\\\section\\*?{\\(\\(?:[^}]\\|{[^}]*}\\)*\\)}?"
"\\\\subsection\\*?{\\(\\(?:[^}]\\|{[^}]*}\\)*\\)}?"
"\\\\subsubsection\\*?{\\(\\(?:[^}]\\|{[^}]*}\\)*\\)}?"
"\\\\paragraph\\*?{\\(\\(?:[^}]\\|{[^}]*}\\)*\\)}?"
"\\\\subparagraph\\*?{\\(\\(?:[^}]\\|{[^}]*}\\)*\\)}?"
)
:layer-regexp-list-case-fold nil
:layer-regexp-list-order :any-miss
:dependent-layer-regexp-list
'(;"\\\\caption{\\(\\(?:[^}]\\|{[^}]*}\\)*\\)}?"
"^\\\\label{\\(\\(?:[^}]\\|{[^}]*}\\)*\\)}?")
:dependent-layer-regexp-list-case-fold nil))
16 名無し~3.EXE [sage] 04/12/24 20:04:17 ID:D+9vgoRN
>14
豊の字はともかく、どうやったら沐の字が出てくるんだろう……。
沐浴ぐらいしか熟語知らないよ?
17 11 [sage] 04/12/24 21:00:29 ID:+Z0KXnlC
>>14
これおもしろいっすね。ファイルの先頭に日本語を持ってくるように
します。
18 名無し~3.EXE [sage] 04/12/24 21:06:50 ID:AsitjMkd
私はxml/htmlなら
<!-- UTF-8で書かれたデータです -->
ってコメントをxml宣言直後辺りに入れてる。
19 名無し~3.EXE [sage] 04/12/24 22:27:17 ID:+3m3edHz
>>15
ちょっと試してみた範囲では、私の意図する動作をしているようでした。
現象を再現できるだけの、テストデータを含む情報と、期待されている動作を
書いてメールで送ってみてください。
20 名無し~3.EXE [sage] 04/12/25 00:53:23 ID:nrbMkjLs
>>11
漏れはこれで対処してる。

http://unkai.s19.xrea.com/trial/xyzzy.htm#menu
21 名無し~3.EXE [sage] 04/12/26 02:09:07 ID:Jy2caIuS
一応はっときます。

[ソフトウェア板] xyzzyの使い方が分からぬやし 励ましあえ その6
http://pc5.2ch.net/test/read.cgi/software/1103791938/
22 名無し~3.EXE [sage] 04/12/26 11:04:59 ID:E4vZkELX
こんな漏れがガンガって2ch-mode弄ってみた。
スレ内のID検索ができるようになった。

誰か漏れをほめてやってくれないか?
23 名無し~3.EXE [sage] 04/12/26 11:26:11 ID:F8XGc2j2
おおスゲェ、俺も欲しい。教えてくれ。
24 名無し~3.EXE [sage] 04/12/26 15:18:53 ID:9uQk9ADh
>>22
こんな漏れってどんな漏れ?
漏れもそれ欲しい。
25 名無し~3.EXE [sage] 04/12/26 15:26:47 ID:E4vZkELX
>>23
diffとるの('A`)
つか、使ったことないからなぁ。ソースそのままうpさせていただきまつ。。。
何かあったらすぐ消します。

ttp://www.uploda.net/cgi/uploader2/dl.php?dlpas_id=4865
DLPassはxyzzyで。

スレ内で?押したときのスレ検索ダイアログに日付(ID)を検索するってのが増えとります。
で、検索には、ID:E4vZkELXって感じでドゾー。
ID:は付けても付けなくても大丈夫だとは思うけど、念のため。
26 名無し~3.EXE [sage] 04/12/27 22:26:32 ID:wq7oNR95
ftpupdateはもう手に入らない?
HDDが逝ったので、環境再構築中なんだけど、これは痛すぎるorz
27 名無し~3.EXE [sage] 04/12/28 00:34:47 ID:uVThDnM5
>>25
23じゃないけど頂きましたthx。
28 名無し~3.EXE [sage] 04/12/28 15:03:01 ID:Lb7ksOnf
>>26
作者に直接メールしてみたら?
再配布の許可さえもらえば,簡単に手に入ると思うよ
29 名無し~3.EXE [sage] 04/12/29 00:16:02 ID:9XfLS1z0
 したらばのスレが見られなくなってしまったのでスレ取得のURL
の生成方法を変更しました。

http://home.t04.itscom.net/poi/2ch_mode_enhance/2ch_mode_otherbbs.lzh

 いきなりの仕様変更は辛い…('A`)
30 名無し~3.EXE [sage] 04/12/29 03:06:41 ID:Gi2NDXr6
>>29
>>29
お疲れです。

でもなんかエラー花盛りです……。

・未取得のスレを開くと「ファイルが見つかりません」
・追っかけスレのスレッドを一旦過去スレにして、戻してからスレを開くと「ファイルが見つかりません」(/kako/...から/datにファイルコピーして強引に解決。上のエラーのせい?)
・追っかけスレを巡回更新しても更新を関知しない。再読込しても更新されない
31 名無し~3.EXE [sage] 04/12/29 09:11:47 ID:rkHPjfik
>>30
Σ(゚д゚lll)ガーン
ほんとだ…ダメダメすぎだ…
すいません、ちょっと時間ください… ∧||∧
32 29 [sage] 04/12/29 12:48:18 ID:0a3rcB6l
 直したつもりです。取得し直してみてください。お騒がせしてすみません…。

>・追っかけスレのスレッドを一旦過去スレにして、戻してからスレを開くと「ファイルが見つかりません」
>(/kako/...から/datにファイルコピーして強引に解決。上のエラーのせい?)

 過去スレフラグが立っているものを通常状態に戻す機能って 2ch-mode にありましたっけ?
 どちらにしても、現状ではその機能は otherbbs には実装されていません。すみませんです…。m(__)m
33 名無し~3.EXE [sage] 04/12/29 14:28:48 ID:Gi2NDXr6
>>32
完璧です。ありがとうございました。

> 過去スレフラグが立っているものを通常状態に戻す機能って 2ch-mode にありましたっけ?

2ch::tracking-change-dat がそれらしいです。私はkにこれを割り当ててます。

> どちらにしても、現状ではその機能は otherbbs には実装されていません。すみませんです…。m(__)m

いえ、問題なく動作するようになりました。
やはり未取得のスレと同じような扱いだったからのようですね。
34 名無し~3.EXE [sage] 05/01/01 01:10:04 ID:AJD9892+
いつのまにかやる気がでてる・・・
35 名無し~3.EXE [sage] 05/01/01 03:00:11 ID:7bYtQS9J
>>34
リロード
36 名無し~3.EXE [sage] 05/01/01 10:35:24 ID:ZHYb7OXc
皆さん、検索ってどうされているんでしょうか?
wikiにtips/検索結果をダイアログボックスで表示する
などというものをあげさせてもらってるんですが
あまり需要がないようなので、もっといい方法があるのかと思いまして。
37 036 [sage] 05/01/01 11:29:58 ID:FmWPcyly
ちょっと長いですが、一応上のURLです(検索結果を一覧表示して任意の箇所にジャンプするという内容のコードです)。
http://xyzzy.s53.xrea.com/wiki/wiki.php?tips%2F%B8%A1%BA%F7%B7%EB%B2%CC%A4%F2%A5%C0%A5%A4%A5%A2%A5%ED%A5%B0%A5%DC%A5%C3%A5%AF%A5%B9%A4%C7%C9%BD%BC%A8%A4%B9%A4%EB
38 名無し~3.EXE [sage] 05/01/01 11:58:55 ID:KgPrXqdW
>>36
ちょとしたものの場合はインク利サーチでぐるぐる回りながら探す。
強調かけときたいときはtagで、
定型的な作業の場合はそれにあわせてlispかく。
って感じかなあ。

dsearch突っ込んでないし、lispもよく眺めてないから的外れなこと言ってるかもしんないけど。
39 38 [sage] 05/01/01 12:42:31 ID:KgPrXqdW
入れてみました。確かに便利。
自分の好みとしてはダイアログ表示でなくて、
pop-to-bufferなんかで処理するほうが好きかも。
ひょいっと検索かけてあたりつけてpopしたwindowで
その位置に移動なんていう具合が。
結局、元いた位置にもどることも多いんで。
そういう意味では、検索語の強調を残さないほうがいいんかなあ。

あんまり気にせんでくさい。ちょいと使った感想でした。
40 036 [sage] 05/01/01 13:17:37 ID:gCLCz9PS
>>38
>>39
コメントどもです。

> ちょとしたものの場合はインク利サーチでぐるぐる回りながら探す。
やっぱりインクリメントサーチのメリットは大きいんですかね。
日本語テキストを編集することが多いのでmigemo.lの導入を考えたんですが、
辞書に単語を登録するのが面倒で今の所つかってません。

> pop-to-bufferなんかで処理するほうが好きかも。
はずしてたらすみませんが、C-u M-x grep じゃだめでしょうか。

> 元いた位置にもどることも多いんで。
これはM-x dsearch-goto-return-pointでできると思います(多分(^^ゞ)。

> そういう意味では、検索語の強調を残さないほうがいいんかなあ。
うーん。自分としては検索語の強調はかなり必須なんですよね。(^_^;)
強調を消すのはpickup-pattern-unset-allでしています。
41 036 [sage] 05/01/02 15:22:05 ID:yx1u57/Q
検索はかなり良く使うので、自分で何か勘違いをしているなら早めに正しておきたいと
思って質問させていただいたのですが、皆さんisearchやC-u M-x grep、migemo.lなどの
拡張lispの導入、個別にlispコードを記述といった感じで検索されているのではないかと思いました。
下手なコードですがdsearchは一応自分の想定した動きをしていると思われるので、
当面は従来どおりdsearchとC-u M-x grepの併用で行こうと思います。
42 名無し~3.EXE [sage] 05/01/02 15:51:30 ID:zTYRwJ8p
>>41
オレも少し使ってみたけど、search-dialog を使う人にとっては、
dsearch は便利だと思います。
問題があるとするならばWikiのところに説明文が少なすぎな所だと。
オレも使ってみるまで「検索結果をダイアログボックスで表示する」だけの
Lispだと思い込んでましたので。
画像入りで解説があって欲しいなぁと思います。
43 036 [sage] 05/01/02 16:56:54 ID:cOwTG4bT
>>42
大して需要があるとも思えませんが、一応画像を追加してみました。
44 036 [sage] 05/01/02 18:03:41 ID:T9CPDYdt
上は、このlispの需要があるとは思えないという意味です。
45 名無し~3.EXE [sage] 05/01/02 23:48:35 ID:FyScIGSM
画像、乙。各人は亀井さんの文体に影響を受けてか
そっけない謎めいた感じの紹介が多いので
分けが分からないことが多いので画像ありは助かります。
46 036 [sage] 05/01/03 01:18:56 ID:W/tIXR0C
>>45
それわかりますね。(笑)
自分でもそう思いました。
しかし、Lisp(らしきもの)を書いてみるとなんとなく作る側の気持ちもわかってきたような気がします。
とはいえ、今回は不親切すぎたようで失礼しました。
47 名無し~3.EXE [sage] 05/01/03 10:22:25 ID:FtZIdVnf
2ch-modeで板の更新ができなくなってしまったのですが...
(´・ω・`)ショボーン
48 名無し~3.EXE [sage] 05/01/03 10:48:46 ID:KtfPQaQx
>>47
> 2ch-modeで板の更新ができなくなってしまったのですが...
> (´・ω・`)ショボーン
板一覧の取得URLを変えるとか(*2ch-base-url*)、
取得方法を変えるとか試してから出直してきてください。

あと、状況説明はもっと詳細にヨロシク。
49 名無し~3.EXE [sage] 05/01/03 13:22:45 ID:Un/mGdf/
>>45
うっ
50 名無し~3.EXE [sage] 05/01/03 15:17:20 ID:FtZIdVnf
>>48

お返事ありがとう御座います。
main.lは、(defvar *2ch-base-url* "http://www6.ocn.ne.jp/~mirv/")になっています。
C-tで更新しようとしても、「304 更新なし」と出てきてしまうのです。
*2ch-base-url*をいろいろ変えてチャレンジしています。
51 50 [sage] 05/01/03 15:25:19 ID:FtZIdVnf
base-urlを
http://www.ff.iij4u.or.jp/~ch2/bbsmenu.html
http://www.dd.iij4u.or.jp/~cap/bbsmenu.html

http://www.ff.iij4u.or.jp/~ch2/
http://www.dd.iij4u.or.jp/~cap/
にしてbyte-compileしたところ、今度は、404が出てきてしまいます。
どうしたものか...
52 名無し~3.EXE [sage] 05/01/03 16:07:51 ID:KtfPQaQx
>>50-51
板一覧の取得 URL 変更は以下を ~/.2ch/config.l へ、どうぞ。
(setq *2ch-base-url* "http://www.ff.iij4u.or.jp/~ch2/")
(setq *menu-file-name* "bbsmenu.html")
53 50 [sage] 05/01/03 19:46:20 ID:FtZIdVnf
ありがとうございます。
解決いたしました。
おかけで、xyzzyの仕組みも、ほんの少しだけわかりました。
54 名無し~3.EXE [sage] 05/01/04 21:36:57 ID:hS2OW90q
>>49
乙です。
でも、なんかおもろい。(笑)
55 名無し~3.EXE [sage] 05/01/06 20:15:36 ID:MFZbhuvu
clickable-urlを拡張して file:<相対パス> とか file://<絶対パス> とか
urn:isbn:<ISBN> を紀伊国屋で開くとかHTML中の href="なんとか" とか
src="かんとか" とか、ファイル名のフィルタで関連付けに任せるかxyzzyで
直接開くかとか作ったんだけど需要ある?
あとWindowsネットワーク(\\host\dirみたいの)も。使わんけど
56 名無し~3.EXE [sage] 05/01/06 21:39:55 ID:8Tl1+0Rb
wikiにでも是非頼みます。
57 名無し~3.EXE [sage] 05/01/06 22:32:48 ID:ZORX51V3
>>55さん、俺も使いたいです。よろしければwikiの方にお願います
58 55 [sage] 05/01/07 11:50:18 ID:SBo1kzI8
ttp://xyzzy.s53.xrea.com/wiki/?tips/clickable-url-x
tipsでよろし?
59 名無し~3.EXE [sage] 05/01/07 12:41:26 ID:/d6TfZeM
>>58
ライセンスは大丈夫?
改変したものを、原作者の名前で配布しているよ。

55 = OHKUBO さんなら無問題だけど。
60 名無し~3.EXE [sage] 05/01/07 12:56:43 ID:dBVJsxK9
>>59
> ライセンスは大丈夫?
> 改変したものを、原作者の名前で配布しているよ。
連名になってますよ。
OHKUBOさんと55n88さんと。

OHKUBOさんのライセンスに対するスタンスはどんなだったっけ?
たぶん大丈夫じゃないかなぁ〜
61 名無し~3.EXE [sage] 05/01/07 14:21:00 ID:6/GqPSuD
たぶんじゃマズい
62 名無し~3.EXE [sage] 05/01/07 19:57:07 ID:VK9h2oJa
さすがに無確認ってことはないんでしょう?   
63 57 [sage] 05/01/07 22:11:35 ID:Wt94OiZa
>>58
おお、使わせていただきます。どうも有難う。
64 名無し~3.EXE [sage] 05/01/08 00:27:39 ID:efH22mQy
ライセンスちゃんと確認しろよ?
65 名無し~3.EXE [sage] 05/01/08 01:56:02 ID:SCK0Y04M
服部氏死亡

2ch-modeでBe.2chログイン不能

2ch-mode死亡
66 名無し~3.EXE [sage] 05/01/08 07:08:07 ID:VoRoxkYC
>>65
くだらん文句たれる前にあんたがパッチでも
あてればいいんじゃないの?
67 名無し~3.EXE [sage] 05/01/08 12:31:05 ID:8wUPMVRu
>>66
お前はニュータイプか
68 名無し~3.EXE [sage] 05/01/08 18:01:14 ID:x75R4wAL
とりあえず今のところはProximitron導入してしのぐかなぁ・・・
69 名無し~3.EXE [sage] 05/01/08 18:05:22 ID:x75R4wAL
Proxomitronだった。ゴメソ。

んで、このあたり。
http://be.2ch.net/test/read.cgi/be/1104938282/l50
form-postとform-post-sageを再定義?して書き込みだけ串通すとかできそうだね。
70 名無し~3.EXE [sage] 05/01/08 19:30:03 ID:x75R4wAL
正直すまんかった。勘違いしてた。これじゃむりぽ。
71 名無し~3.EXE [sage] 05/01/09 22:19:26 ID:JGJbYgfR
ちょっと気になったんですけど・・・

(defun foo () (interactive) (message "~S" *last-command*))
(defun bar (&rest x) (message "~S" *this-command*))
(define-key minibuffer-local-completion-map #\M-: 'foo)
(add-hook '*enter-minibuffer-hook* 'bar)

こんなことをやって挙動を見てみると、ミニバッファに入った直後に
*last-command*がnilになってるように見えます。
これはなぜなんでしょう?
72 名無し~3.EXE [] 05/01/11 01:42:51 ID:hMsuACvy
CtrlとCapsLockのキーコードを拾ってxyzzy上でエミュレートできるようにならんかなぁ。
73 名無し~3.EXE [sage] 05/01/11 01:48:03 ID:uq0OBT1L
CtrlとCapsLockを入れ替えたいってことなら、
それを求める人はエディタ上以外でも入れ替えを求める>窓使いの憂鬱とかを使う、という流れになると思う。
74 名無し~3.EXE [sage] 05/01/11 01:52:08 ID:hMsuACvy
>>73
うちの研究室では、1つのアカウントを複数人で使い回したり、手荒なことをするものでw
75 名無し~3.EXE [sage] 05/01/11 02:11:15 ID:gswSDXkV
>>74
xyzzy 上でエミュレートできればOK=xyzzyは自分しか使わない
なら,窓使いの憂鬱あたりで,xyzzy上でだけキーを入れ替えるように設定しては?
見当違いならスマソ
76 名無し~3.EXE [sage] 05/01/11 03:06:29 ID:UvsGgwS0
window xyzzy /xyzzy\.exe/ : Global
mod Control += 英数
key *英数 = *LeftControl
key *LeftControl = *英数
77 72 [sage] 05/01/11 09:17:27 ID:hMsuACvy
>>76見ながらハタと気づいたけど、窓使いの憂鬱はレジストリの書き換えじゃないんだね。
じゃあいくらかましかなぁ。
よし、研究室の人々と相談してみよう。
貴様ら、レスありがとう。
78 名無し~3.EXE [sage] 05/01/11 12:45:27 ID:6J95U1Y5
>>77 俺は共通PCに窓をインスコしておいて自分が使う時だけ立ち上げてるよ。
79 名無し~3.EXE [sage] 05/01/11 17:34:17 ID:4m1sZj/l
CapsLockを使わないなら、
入れ替えじゃなくてCapsLockもCtrlも両方とも
Ctrlにしてしまえばいい。
っていうか、私はそうしている。
共用PCでも案外気づかれないものよ(笑)。
80 名無し~3.EXE [sage] 05/01/11 21:02:30 ID:m0wmrd2h
ttp://xyzzy.s53.xrea.com/wiki/index.php?tips/accents
81 名無し~3.EXE [sage] 05/01/11 21:12:43 ID:TmWfRHO7
(load-library "iso8859-1")
してC-x 8 " aとかやるとウムラウトの文字が入力できたんですな。こんなん知らなかった。凄い便利じゃ
82 名無し~3.EXE [] 05/01/12 03:57:07 ID:YJZdbDqf
はっ!!xyzzyではskkが使えない!?
だめじゃん!
83 名無し~3.EXE [sage] 05/01/12 06:17:34 ID:Uy/exnUq
>>82
> はっ!!xyzzyではskkが使えない!?

SKKIME (ttp://www.tatari-sakamoto.jp/~tatari/skkime.jis.html)
を使えば大丈夫ですよ (まだ開発途上のようですけど)。
84 名無し~3.EXE [sage] 05/01/12 09:54:23 ID:vv92Me9Z
どんなアプリでも SKK が使えるから
SKKIME の存在は自分にとって Windows > X。
85 名無し~3.EXE [sage] 05/01/14 11:09:32 ID:3yzPKa+N
xyzzyから国語辞書を引くことはできるのでしょうか?
HIEさんのところ
http://hie.s64.xrea.com/xyzzy/note/my-kamenu.html
を見るとできるような気もするんですが、どの辞書を使えばいいのかわからないのです。
86 085 [sage] 05/01/14 12:32:41 ID:3yzPKa+N
質問しておいて申し訳ないですが、eijiro.l をダウンロードして
上のURLの意味がわかりました。
ネット上で検索してもさほど重くないことがわかったので、このまま使おうと思います。
87 名無し~3.EXE [sage] 05/01/14 17:05:19 ID:RoFjvsnZ
http://chez-sugi.net/xyzzy/000950.html の“コンパイルエラーの表示”を
使わせていただいているのですが、コンパイル結果の出ているウィンドウを開いたままで
次のコンパイルをする時に、前回と違うバッファでエラーが出ると、うまく飛べないのを
どなたか修正してくださいませんか?
88 名無し~3.EXE [sage] 05/01/14 18:38:52 ID:Su4/RwwK
>>87
もう少し分かるように説明する!
89 87 [sage] 05/01/14 20:30:56 ID:RoFjvsnZ
>>88
たまにしか起こらないので、再現できる手順を示せません。
推測では、前回のエラーのリストを参照して飛ぼうとすることがあるようです。
あいまいですみません。
90 名無し~3.EXE [sage] 05/01/14 22:10:21 ID:LjTB2MEg
>>89
> 推測では、前回のエラーのリストを参照して飛ぼうとすることがあるようです。
コードを眺めた感じ、たぶん仕様です。
適当なタイミングで ed::*error-list* を nil にしてください。
もしくはデフォルトの F10 (first-error) & F11 (next-error) を使ってください。
91 87 [sage] 05/01/15 05:24:13 ID:vXLTCdKT
>>90
コンパイルをする関数の execute-subprocess の直前に、
(setq ed::*error-list* nil)
を足してみました。
たまにしか起こっていなかったので、確実に解決したかどうかを
今すぐには報告できませんが、ある程度使ってみてからまた来ます。
どうもありがとうございました。
92 名無し~3.EXE [sage] 05/01/17 02:41:43 ID:5P7NVxqK
(buffer-size)な使い方で全角を2バイト(文字コードのサイズで)でカウントする方法ってないですか?
ファイルに書いて (get-file-info) が手っ取り早い??。。。
テンポラリなんでファイル作りたくないっス
93 名無し~3.EXE [sage] 05/01/17 07:52:16 ID:bQBgIAkj
>>92
ttp://hie.s64.xrea.com/xyzzy/ml/msg08213.html
ここからのスレッド参照。

> ファイルに書いて (get-file-info) が手っ取り早い??。。。
みたいです。
94 92 [sage] 05/01/17 17:45:03 ID:5P7NVxqK
>>93
サンクス
いくつか載ってたんで参考にしま
95 名無し~3.EXE [sage] 05/01/19 07:54:09 ID:ktXZ7vvG
clickable-uriの
(setq *clickable-uri-keyword-color* '(:color 6 0 :underline))
で色変更ができないような気がするんですが、
勘違いでしたらすみません。
96 名無し~3.EXE [sage] 05/01/19 09:55:35 ID:a21lwIVK
>>95

ども。
変更後は、設定反映のために (clickable-uri-set-regexp) が必要です。
以下ではどうでしょうか。

(setq *clickable-uri-keyword-color* '(:color 6 0 :underline))
(clickable-uri-set-regexp)
97 095 [sage] 05/01/19 18:59:36 ID:Vcne/VeD
>>96
すばやいご回答ありがとうございます。
教えて頂いたようにしたところ色変更ができました。
というか、ちゃんと設定例に書いてありますね(^_^;
お手数お掛けしました。m(_ _)m
98 87 [sage] 05/01/21 10:30:02 ID:KgvI+56C
>>90
あれから使ってみていますが、おかしい挙動は出ないみたいです。
ありがとうございました。

話は変わりますが、hie さんのところの
http://hie.s64.xrea.com/xyzzy/note/file-handling.html#emacs-write-file-and-find-file-process-params
の最後から2行目は、
(funcall (cdr x) (selected-buffer))
の方が良いんじゃないでしょうか? ここに書くのもどうかとは思いますが。
99 名無し~3.EXE [sage] 05/01/21 12:26:44 ID:Qf/eXTdn
どうかと思うならば適切なところで
書くなり伝えるなりしてください。
100 名無し~3.EXE [sage] 05/01/21 21:40:53 ID:fagSfDrp
起動時に明示的にutf8で開く方法ってありますか?
101 名無し~3.EXE [sage] 05/01/22 17:06:55 ID:y45XYxaQ
>>100
「明示的にutf8で開く」ってのは、具体的には、どういった操作をしたら
どういう風になって欲しいと考えていますか?
102 名無し~3.EXE [sage] 05/01/22 17:53:35 ID:+CMEPNUb
>>101
不明瞭な書き込みですみません。


外部アプリからxyzzycli.exeを呼んで起動済みのxyzzyでファイルを開きます。
コマンドラインからファイル名を渡します。
この際、バッファ(ファイル?)の文字コードを必ずutf8nとして開きたいのです。

103 名無し~3.EXE [sage] 05/01/22 17:57:55 ID:Y0D45pjI
直前に実行したコマンドは変数 *last-command* でわりますが、
直前に入力された文字はどうやって調べられますか。
文字入力はたいがい、コマンドself-insert-commandになってしまうので
どの文字が入力されたかを知ることができません。
104 名無し~3.EXE [sage] 05/01/22 18:18:57 ID:J69Rg74J
>>103
> 直前に実行したコマンドは変数 *last-command* でわりますが、
> 直前に入力された文字はどうやって調べられますか。
*last-command-char*
105 103 [sage] 05/01/22 18:38:05 ID:Y0D45pjI
>>104
ありがとうございます。それでいけそうです。
106 名無し~3.EXE [sage] 05/01/22 18:44:45 ID:J69Rg74J
>>102
> 外部アプリからxyzzycli.exeを呼んで起動済みのxyzzyでファイルを開きます。
> コマンドラインからファイル名を渡します。
> この際、バッファ(ファイル?)の文字コードを必ずutf8nとして開きたいのです。
この説明だとよく分かります。

xyzzycli.exe FILENAME -e "(revert-buffer *encoding-utf8n*)"
でどうでしょう。もしくは
xyzzycli.exe -e "(setq *expected-fileio-encoding* *encoding-utf8n*)" FILENAME -e "(setq *expected-fileio-encoding* *encoding-auto*)"
とか。
107 103 [sage] 05/01/22 18:47:04 ID:Y0D45pjI
>>104
直前のキーは *last-command-char* でとってこれるのですが、2つ前のキーってとってこれますか?

やりたいことは、あるキーを押して関数を呼び出したときに、その直前のキーによって動作を変えたいんです。
でも *last-command-char* だと、関数を呼び出したときのキーをとってきてしまい、その直前のキーがとってこれないんです。

(global-set-key #\C-z 'my-func)    ;; C-z を押すと呼び出される

(defun my-func ()
 (interactive "p")
 (if (eq *last-command-char* #\{ )  ;; *last-command-char* は必ず#\C-z になるので、
   (insert "foo")         ;; "foo" が挿入されることはない
  (insert "bar")))
108 名無し~3.EXE [sage] 05/01/22 18:57:57 ID:WjTVVJy7
>>107
> 直前のキーは *last-command-char* でとってこれるのですが、2つ前のキーってとってこれますか?

(char (get-recent-keys) (- (length (get-recent-keys)) 2))
とか?
109 103 [sage] 05/01/22 19:06:38 ID:Y0D45pjI
>>108
それでした。ありがとう。

で、やりたかったことはこんなこと。

;;
;; 改行する直前にタイプしたキーが '{' なら、自動的に '}' を補う
;;
(defun my-c-newline-and-indent (&optional (arg 1))
(interactive "p")
(let* ((keys (get-recent-keys)) ; is vector (0..127)
(len (length keys)) ; = 128
(key (svref keys (- len 2)))) ; = keys[len-2] (keys[len-1] == #\C-j)
(if (eq key #\{ )
(progn
(newline 2)
(insert "}")
(c-indent-line)
(previous-line)
(c-indent-line)
)
(c-newline-and-indent arg)
)))

(global-set-key #\C-j 'my-c-newline-and-indent)
110 名無し~3.EXE [sage] 05/01/22 21:25:53 ID:+CMEPNUb
>>106
C:\Dev\xyzzy\xyzzycli.exe %t -e "(revert-buffer *encoding-utf8n*)"
として見たところ(%tは呼び出し側のマクロで、ファイル名になる)

>CALL STACK 8: (system:|"-reader| #<string-input stream 50860284> #\")
>CALL STACK 7: (read #<string-input stream 50860284> t nil)
>CALL STACK 6: (system:*byte-code ...)
>CALL STACK 5: (read-from-string "\"(revert-buffer")
>CALL STACK 4: (system:*byte-code ...)
>CALL STACK 3: (editor::process-command-line-1 "C:\\dev\\firefox-1.0" nil)
>CALL STACK 2: (system:*byte-code ...)
>CALL STACK 1: (editor::*xyzzycli-helper "C:\\dev\\firefox-1.0" ("C:\\data\\tmp\\mozex\\mozex.textarea.02385fdb6b2ee69037c26bc8124d3b18.txt" "-e" "\"(revert-buffer" ...))
Line 1: 文字列が終了していません


となって上手くいきません。
二番目も同様のエラーになってしまいます。
111 名無し~3.EXE [sage] 05/01/23 09:35:01 ID:peVBK+lA
>>110
xyzzy のバージョンは?
Version 0.2.2.232 でコマンドラインの処理が変わっているみたいなので
一応聞いておきます。
112 名無し~3.EXE [sage] 05/01/23 11:13:32 ID:ebmfEpFv
>>111
最新版の0.2.2.233です。


Firefoxの拡張機能mozexというのからxyzzycli.exeを呼ぶのですが、

C:\Dev\xyzzy\xyzzycli.exe -m html+-mode %t

これまではこんな感じで、一応html+-modeでは開けてます。

113 名無し~3.EXE [sage] 05/01/23 11:53:31 ID:YT2Tkik6
>>112
むぅ〜、不思議ですね。

それじゃあ、

(defun revert-buffer-utf8n ()
(revert-buffer *encoding-utf8n*))

こんな関数を定義しておいて、

xyzzycli.exe %t -f revert-buffer-utf8n

ではどうでしょう。
114 名無し~3.EXE [sage] 05/01/23 23:21:57 ID:ebmfEpFv
>>113
それを.xyzzyで定義しておいて
C:\Dev\xyzzy\xyzzycli.exe -m html+-mode %t -f revert-buffer-utf8n
で成功しました!
どうもありがとうです。
115 名無し~3.EXE [sage] 05/01/23 23:23:56 ID:ImkgpArK
editor::migemo-closeってやたら時間かかるけど、
みんな普通に実行してるの?
*kill-xyzzy-hook*からはずしても別に大丈夫みたいだが
116 名無し~3.EXE [sage] 05/01/24 19:59:53 ID:KXKNHLFb
>>115
はずしてる。
117 名無し~3.EXE [sage] 05/01/25 16:47:37 ID:n2B2PH4i
>>115
え?あれってしなくてもよかったの?終了するときに
めっさ時間かかるのがウザかったんだよね。
で、本当にはずしていいの?どうやってはずすの?
118 名無し~3.EXE [sage] 05/01/25 23:34:22 ID:oHHhdcmJ
migemo使ってないけど、普通にhookから外すならdelete-hook
119 名無し~3.EXE [sage] 05/01/27 22:40:46 ID:dS2rwS2+
>>117
本当にはずしていいかはわからんけど、今まで特に問題はない
ようわからんけど、単語辞書を更新したときは実行しないといかん気がする

.xyzzy
;migemo
(require "migemo")
(migemo-toggle t)
(editor::migemo-open) ;これを実行したときにhookに入るのでここで呼んでみる
(delete-hook '*kill-xyzzy-hook* 'editor::migemo-close)
120 名無し~3.EXE [sage] 05/01/28 18:12:31 ID:ArC1RPVF
(defun show-function-name ()
(save-excursion
(if (scan-buffer "function[ \t]+\\([^ \t\n(]+\\)" :regexp t :reverse t)
(message "~A" (match-string 1)))))
(add-hook '*post-command-hook* 'show-function-name)

を .xyzzy に追加すると、Ctrl 押しながらドラッグの矩形がおかしくなります。
例えば、上の lisp の 1 行の (de にマウスカーソルを合わせ、Ctrl を押しながら
右に移動すると 3 行目の )" までしか選べないのです。
原因、分かる方いませんか?
121 名無し~3.EXE [sage] 05/01/28 20:46:10 ID:45mrlza+
>>120
マウスカーソルで選択範囲を決定した後で
キャレットが移動しているからキャレットでの範囲指定が優先されている
ということなのかなぁ〜
正直俺には分かりません。解説は識者にお任せします。

ただ、問題の解決には以下で OK じゃないでしょうか。
(defun show-function-name ()
(unless (pre-selection-p)
(save-excursion
(if (scan-buffer "function[ \t]+\\([^ \t\n(]+\\)" :regexp t :reverse t)
(message "~A" (match-string 1))))))
(add-hook '*post-command-hook* 'show-function-name)
122 名無し~3.EXE [age] 05/01/29 11:22:04 ID:d9W4fW09
局所にうす 復活
ttp://i9n.s38.xrea.com/

応援してます〜
123 名無し~3.EXE [sage] 05/01/29 12:43:10 ID:I7fmCqv+
リストから重複した要素を取り除くうまい方法ってないでしょうか?
(hoge boo hoge foo) -> (hoge boo foo)
って具合に。
今は
(setq hogehoge '(hoge boo hoge foo))
(let ((lst (list (pop hogehoge))))
(while hogehoge
(if (member (car hogehoge) lst :test #'equal)
(setq hogehoge (cdr hogehoge))
(setq lst (cons (pop hogehoge) lst))))
(reverse lst))
こんな感じで対処してるんですが、リストが長くなると遅すぎて困っとります。
関数あるかとぐぐったが、ぐぐりきれず。
ヒントだけでも教えてプリーズ。
124 名無し~3.EXE [sage] 05/01/29 13:30:04 ID:BMLOX9/k
>>123
remove-duplicates とか。
125 123 [sage] 05/01/29 13:34:59 ID:I7fmCqv+
どーもありがとうございます。
今から試してみます。
126 123 [sage] 05/01/29 14:23:11 ID:I7fmCqv+
途中報告。
要素が10000のリストを使って
123で書いたものと124で教えてもらったものとで時間計ってみました。
123 -> 約8.7秒
124 -> 約1.0秒
        (数年前のおんぼろマシンで比較)
ぜんぜんちゃいます。ほんとありがとう。

ただ、ならびが保証されていないっつーか、
元のリストの並び順を維持したまま、2度目以降に現れる要素を削除したかったので、
もうちょい、いじってみます。
127 名無し~3.EXE [sage] 05/01/29 14:33:36 ID:bQkNhjcF
関数化してcompileしてやれば>123のでも十分な速度が出るんじゃないかな。
128 名無し~3.EXE [sage] 05/01/29 14:39:16 ID:d9W4fW09
>>126
そういうことなら >>124 を見る前に考えていたコードが
役に立つ余地があるかもなので貼っときます。
(setq hogehoge '(hoge boo hoge foo))
(let ((new-list nil))
(dolist (x hogehoge)
(pushnew x new-list :test #'equal))
(reverse new-list))
129 名無し~3.EXE [sage] 05/01/29 14:45:30 ID:BMLOX9/k
>>126
こういうこと?
(remove-duplicates '(hoge boo hoge foo))
=> (boo hoge foo)

(remove-duplicates '(hoge boo hoge foo) :from-end t)
=> (hoge boo foo)
130 名無し~3.EXE [sage] 05/01/29 15:12:01 ID:ZguY6jL8
なんか凄いことになってますね!
久しぶりにxyzzyをインストールしてみます!!
131 123 [sage] 05/01/29 15:19:18 ID:I7fmCqv+
おお、おいらがいじってる間にたくさんのヒントっつーかそのものずばりを
いただいちゃってありがとーございます。

試してみたところ
>>127
関数化してcompileしてやれば>123のでも十分な速度が出るんじゃないかな。
これ最強。信じられんほど速くなった。
>>128で教えてもらったコードと組み合わせてかなりご機嫌っす。

>>129
まさにこれでした。説明下手ですまんです。
これはお手軽でそこそこ速いし、応用利きそう。
さくっと書き流すときに重宝させていただきます。

めちゃめちゃへつらいながらありがとうございますです。
132 名無し~3.EXE [sage] 05/01/29 18:10:25 ID:JdRy7gPZ
>>131
128さんとやっていることは同じですが
dolist より mapc mapcar の方が速いような気がします。
(setq hogehoge '(hoge boo hoge foo))
(let ((new-list nil))
(mapc #'(lambda (x)
(pushnew x new-list :test #'equal))
hogehoge)
(reverse new-list))
133 名無し~3.EXE [sage] 05/01/29 18:31:46 ID:dus2Fjbl
>>131
reverse と nreverse
remove-duplicates と delete-duplicates
の違いを調べてみてはどうでしょう.
134 名無し~3.EXE [sage] 05/01/29 20:29:52 ID:Vx/7JP8B
>>132
lisp は map 系の関数のほうがループ系の関数より効率がいいらしいですね。
c に慣れてる人にはやってることがわかりづらいですが。
135 123 [sage] 05/01/30 00:13:37 ID:AMpBt6oq
面白話ありがとー。とても参考になります。
>>133
delete系とremove系の違いよくわからんです。
『delete系はリストを「破壊的に操作する」ので「効率がいい」』のようなことを見ましたが、
前半部分は使い道がよくわからん。後半部分は何の「効率がいい」のかよくわからん。わからんばっかり。
後半部分はなんとなく、処理が速いのかなーと思ったんすが、
あらためて処理時間計ってみると変わらない、か、若干遅いくらい。
(setq hoge nil)
(dotimes (x 10000)
(setq hoge (cons (random 1000) hoge)))
(delete-duplicates hoge)=>37.053
(remove-duplicates hoge)=>36.993
タイマーは適当につくったもんなんであまり当てにならんとこもあるけど、体感的に違いなしでした。
使い道はおいらが未熟で気づかないだけなんだろーけど、なんの効率がいいのかは気になるる。
136 133 [sage] 05/01/30 00:21:11 ID:h18GbuqK
>>135
(remove-duplicates sequence) = (delete-duplicates (copy-seq sequence))

remove〜 : 一度入力となるシーケンスを全てコピーしてから delete〜 を呼ぶ.
137 123 [sage] 05/01/30 00:46:26 ID:AMpBt6oq
解説どーも。誤差の範囲か、遅かったのは。
慌ててgrepで確認しました。へんなことする前に確認しろって話です。
すんませんです。いやあ、でも楽しかったです。ありがとう

と思っていたら132の書き込みを見落としていたことを発見。
寝よーと思っていたけど、もうちょっと、遊んでからにしやす。
眠いけど、ありがとう。
138 133 [sage] 05/01/30 00:54:12 ID:h18GbuqK
>>137
grepで確認するのもいいけど,タグファイルを生成しとくのも言いと思いますよ.
139 名無し~3.EXE [sage] 05/01/30 23:24:34 ID:8/AtTnLb
xyzzyの問題ではないのかもしれませんが、
ほかのマシン(Linux等)のドライブをマウントして編集&保存すると、
パーミッションに実行権限がついてしまうのですが、
これを回避(パーミッションを変更しない)ことはできますでしょうか?
140 名無し~3.EXE [sage] 05/01/30 23:55:03 ID:h18GbuqK
>>139
さんざん既出だけど
(setq backup-by-copying :remote)
または
(setq backup-by-copying t)
141 名無し~3.EXE [sage] 05/01/31 09:28:26 ID:jK3RQAIH
>>121
おー、OKです。ありがとうございました。
142 名無し~3.EXE [] 05/02/02 19:02:30 ID:9jDzJ5E8
xyzzyでLispモードを使用する時、Lispの予約語の
インテリセンスってどうやればよいのでしょうか?
143 名無し~3.EXE [sage] 05/02/02 20:10:31 ID:JssgqCQO
インテリセンスというのをあんまりよくわかってないんだけど、
M-TAB でそれらしいことはできるような気が。
というかLispで予約語って何を指すんでしょう。
144 名無し~3.EXE [sage] 05/02/02 20:47:37 ID:9jDzJ5E8
>>143
すいません、予約語じゃないですね。
defunとかdefstructとかのキーワードに対して入力補完がしたいんです

ややこしい書き方でごめんなさい
145 名無し~3.EXE [sage] 05/02/02 21:40:00 ID:JssgqCQO
>>144
M-TABは期待するものとは違うんですか?
146 名無し~3.EXE [sage] 05/02/03 11:02:54 ID:KquHtvOX
リファレンスの *do-completion の項に
WORD : nilでなければ単語ごとの補完
とありますが、単語ごとの補完とはなんでしょうか?
いろいろ試してみたのですが違いがわかりません。
147 名無し~3.EXE [sage] 05/02/03 11:38:10 ID:/m0BecFE
>>146
> 単語ごとの補完とはなんでしょうか?
M-x find-file 時の SPC での補完とか。

"_" 混じりの長い名前のファイルを作っておいて、
M-x find-file でそのファイル名を TAB で補完したり、
SPC で補完してみたりすると違いが分かると思います。
148 名無し~3.EXE [sage] 05/02/03 12:02:59 ID:KquHtvOX
>>147
そういうことでしたか。わかりました。
返り値も確かにそうなってますね。
ありがとうございました。
149 名無し~3.EXE [sage] 05/02/03 19:49:20 ID:K0LScjc9
>>145
M-x で出来る入力保補完ってユーザ定義されたキーワード
のみが対称なことないですか?
(def
とかでM-xしてもキーワードの候補が出てこないです。

なんで、なんか方法ないかなと思った次第です。
150 名無し~3.EXE [sage] 05/02/03 19:58:35 ID:MPcJ859P
>>149
ESC TAB
としてみたら。
151 名無し~3.EXE [sage] 05/02/03 20:24:03 ID:/m0BecFE
>>149
もしくは C-M-i (Ctrl + Alt + i) とか。
# オレはこのキーの組み合わせを使ってます。

M-x なんて全く話題に上がっていないと思うんだけど、
敢えて使うのなら
M-x lisp-complete-symbol
ですね。
152 名無し~3.EXE [sage] 05/02/03 23:27:02 ID:K0LScjc9
>>151
ありがとうございます
意図したものと少し異なりますが、これで十分事足ります
153 名無し~3.EXE [sage] 05/02/04 00:20:31 ID:+NBN6Heq
xyzzyって2年くらい前から使ってるんだけど
巨大ファイル閲覧と罫線モードしか使ってなかった。
このスレに来るまでemacsのパチモンだと思っていた。
大きな間違いでした。
本格的なcommon lisp処理系というのが実体ですね!
154 名無し~3.EXE [sage] 05/02/04 00:32:26 ID:Gxs+fILb
>>153
うん, common lisp としてかなり使える.
でも, CLOS がないのが残念.
155 132 [sage] 05/02/04 01:40:34 ID:9c8ukEY7
eval-buffer をしてテストしていたので勘違いをしていたのですが、
こちらのボロパソコンでは、以下のようにバイトコンパイルをすると
mapc より dolist の方が速いようです。嘘言ってすみませんでした。
(defun test1 ()
(interactive)
(let (tick tmplist)
(dotimes (x 100000)
(push x tmplist))
(setq tick (get-internal-real-time))
(mapc #'(lambda (y)) tmplist)
(message (format nil "~A" (- (get-internal-real-time) tick)))))

(defun test2 ()
(interactive)
(let (tick tmplist)
(dotimes (x 100000)
(push x tmplist))
(setq tick (get-internal-real-time))
(dolist (y tmplist))
(message (format nil "~A" (- (get-internal-real-time) tick)))))

コンパイル済み
test1
>167〜273
test2
>67〜71

コンパイル無し
test1
>251〜399
test2
>1344〜1497
156 名無し~3.EXE [sage] 05/02/04 01:56:50 ID:Gxs+fILb
>>155
なんだと!
がんばって mapc になおしちゃったじゃないか.
30個もあるよ, mapc
あの努力はなんだったんだ…
157 名無し~3.EXE [sage] 05/02/04 06:15:31 ID:2F7cg1nG
>>155
関数呼び出しのオーバーヘッドの分かなあ。
まあ、ぶっちゃけ気にするほどの違いはない感じがする。
158 132 [sage] 05/02/04 07:15:54 ID:5XytFJC9
>>156
すいません。
コンパイルせずに計測してみて mapc の方が速いと確信してましたので..
こちらも www-mode を mapc で書き換えたことなどが全て無駄になりました。(^_^;
しかし、www-mode を書き換えてコンパイルして気づいたのでそれは良かったです。
ホントすいませんでした。m(_ _)m
159 名無し~3.EXE [sage] 05/02/04 11:59:15 ID:Abpo+psw
ちょっと実験してみた。

mapcとかdolistの行をそれぞれ
(mapc #'code-char tmplist)
(dolist (y tmplist) (code-char y))
にしてやるとtest1の方が速い。
どっちが速いかは場合によるってことかな?
160 名無し~3.EXE [sage] 05/02/04 17:55:26 ID:S4S5nesj
皆さんコピーとか貼り付けのショートカットデフォルトで使ってますか?
Windows風にカスタマイズして使っていますか?

デフォルトで覚えたいけど、入がWindowsなのでなかなか体が覚えないんですよ。
無理してxyzzy使うな?そんなこと言わないでorz
161 名無し~3.EXE [sage] 05/02/04 18:43:26 ID:ncX2vF5B
Kill/YankはC-wとC-yで、コピー&ペーストはC-InsertとM-Insertで問題なし。
162 名無し~3.EXE [sage] 05/02/04 18:44:51 ID:ncX2vF5B
訂正
×M-Insert
○S-Insert
163 名無し~3.EXE [sage] 05/02/04 18:45:46 ID:DEK7WpXl
>>160
私の場合は、思いっきりWindows風にしてます。
ただ、C-cなどを完全に潰してしまうのもあまり良くないような気がするので、
ここ(http://www.uranus.dti.ne.jp/~shiro-/soft/xyzzy/keybind.html#windows
あたりを参考にするといいんじゃないかと思います。
そういう質問はこっちのスレ(http://pc5.2ch.net/test/read.cgi/software/1103791938/
の方がいいかも。
164 名無し~3.EXE [sage] 05/02/04 20:34:44 ID:bKMeXaGs
もともとEmacs使ってたからキーバインドは殆どいじってないよ。
165 名無し~3.EXE [sage] 05/02/04 22:17:38 ID:+5vlqqP2
もちろんデフォルトで使ってる。
でもEmacsもそうだけど、標準的な日本語キーボードで使う場合、
CapsキーをCtrlキーにしないとあのキーバインドのありがたさはわからんと思う。
166 名無し~3.EXE [sage] 05/02/04 22:30:30 ID:hAbLX+CN
>>155
>>157 も指摘しているとおり、test1 では lambda 関数を呼び出してるのに対して
test2 では何もしていないからじゃないかな。
たぶん >>159 みたいに純粋に同じことをすると mapc の方が速いんだと思う。
167 名無し~3.EXE [sage] 05/02/05 01:30:24 ID:3FhH7rZS
dvorak配列使ってるからキーバインドなんてめちゃくちゃですよ
168 132 [sage] 05/02/05 09:28:23 ID:sA8IWegx
>>159
>>166
コメントどもです。

技量不足でうまく説明できなくて申し訳ないんですが、

バイトコンパイルをした場合には、132のコードのように mapc、lambda
を使ってリストの各要素に対して処理をするよりも、128さんの
コードのように dolist を使った方が速い(mapc は lambda の分遅れる)。

159さんの例のようにリストの全要素に対して一括して処理をする場合
には、mapc を使った方が速いということなんじゃないかと思います。
169 名無し~3.EXE [sage] 05/02/05 21:02:20 ID:/zYyhW6d
emacs風でないとまともに使えません
使い始めて一年近いが、未だにセレクションの使い方がさっぱりわからない
rectangleが使いこなせたら便利だろうなと思うこともある
170 名無し~3.EXE [sage] 05/02/05 21:38:56 ID:/A5Bs1LR
>>169
(defun rectangle-help ()
(interactive)
(popup-string
"------------------------------------
rectangle
C-x r d delete-rectangle
C-x r k kill-rectangle
C-x r o open-rectangle
C-x r t string-rectangle
C-x r y yank-rectangle
C-x r w copy-rectangle"
(point)))
(global-set-key '(#\C-x #\r #\h) 'rectangle-help)
171 名無し~3.EXE [sage] 05/02/06 00:15:02 ID:YqoPvtTd
>>170
おお、ありがとう
popup-stringでヘルプを表示するのっていいね
他にもいろいろやってみることにするよ
172 名無し~3.EXE [sage] 05/02/06 09:58:13 ID:HxnlpKgg
hello guys

最近、Java script 書いてるんだけど、C++モードだと正規表現書いたあとの
インデントが正常に動作しなくなるのよね。

Java scriptモードがあるのは、あんまり期待してないんだけど、
Cモードに依存する部分って、完全にcommon lisp で書かれてるんだっけ?
lispで書かれてるなら、修正できるかなと思うんだけど。
173 名無し~3.EXE [sage] 05/02/06 10:37:48 ID:QFS8Q4Om
>>172
> Java scriptモードがあるのは、あんまり期待してないんだけど、
ttp://www.geocities.jp/kiaswebsite/xyzzy/index.html#jscript-mode
使ったこと無いのでどんなものかは知らない。

c-mode の場合インデントまわりは builtin だったような気がする。
174 名無し~3.EXE [sage] 05/02/06 15:39:10 ID:XpM2Ofu4
前に、browserex使った2ch-mode用のリンク先の画像ビューワ作ってみたヤシなんだが、ごにょごにょと拡張して、縮小して表示するようにしてみた。
あと、o使ってブラウザで開こうとしてもプレビューされてしまうのも修正してみた。
ttp://data.uploda.net/anonymous/etc1/dat5/upload11305.txt

かなりオリジナルを流用してますです。。。ごめんなさいorz

#ほんの少し関数いじるだけなんだけどな。もっとスマートにできないかな。
#ビューワ用のキーバインド作ったほうが楽だったかもと思った。
#例によって正規表現は滅茶苦茶
175 名無し~3.EXE [sage] 05/02/06 16:01:59 ID:t+rLaFxz
ttp://www.stackasterisk.jp/tech/program/perl04_03.jsp より

xyzzy は亀井哲弥さんが製作された、emacs ライクな操作体系と common Lisp による
カスタマイズ機能を持つ、 Windows 用のエディタです。
凄まじい頻度でバージョンアップするのも大きな特徴です。
176 名無し~3.EXE [sage] 05/02/06 16:04:45 ID:MeoXQFUU
現在のバッファの漢字コードを変更して読み直しみたいな関数を作ってて、
漢字コードをポップアップメニューから選びたかったのでこんな感じに書いたんですが、

(defun revert-buffer-encoding-popup ()
(interactive)
(let ((menu (create-popup-menu)))
(add-menu-item menu nil "auto"
#'(lambda() (interactive)
(revert-buffer *encoding-auto*)))
(add-menu-item menu nil "sjis"
#'(lambda() (interactive)
(revert-buffer *encoding-sjis*)))
(add-menu-item menu nil "euc-jp"
#'(lambda() (interactive)
(revert-buffer *encoding-euc-jp*)))
(track-popup-menu menu)))

なんか無駄が多いような気がします。リストを使えばもっとスマートに
書けると思うんですが、どうなんでしょうか。
177 名無し~3.EXE [sage] 05/02/06 17:21:49 ID:dam7uyfF
こんな感じかなあ。
(defun revert-buffer-encoding-popup2 ()
(interactive)
(let ((menu (create-popup-menu)))
(mapc #'(lambda (x)
(add-menu-item menu nil (car x)
#'(lambda ()
(interactive)
(revert-buffer (cdr x)))))
'(("auto" . *encoding-auto*)
("sjis" . *encoding-sjis*)
("euc-jp" . *encoding-euc-jp*)))
(track-popup-menu menu)))
178 名無し~3.EXE [sage] 05/02/06 17:23:35 ID:QFS8Q4Om
うわっ!? 負けた。コードもほぼ同じ。
こんなかな

(defun revert-buffer-encoding-popup ()
(interactive)
(let ((menu (create-popup-menu))
(encoding-list (list *encoding-auto* *encoding-sjis* *encoding-euc-jp*)))
(mapcar #'(lambda (x)
(add-menu-item menu nil (char-encoding-name x)
#'(lambda () (interactive) (revert-buffer x))))
encoding-list)
(track-popup-menu menu)))

; 補完をpopupと勘違いして作った
(defun my-revert-buffer-encoding ()
(interactive)
(let ((*popup-completion-list-default* :always))
(call-interactively 'my-revert-buffer-encoding-1)))
(defun my-revert-buffer-encoding-1 (encoding)
(interactive "zEncoding: ")
(revert-buffer encoding))
179 名無し~3.EXE [sage] 05/02/06 17:39:21 ID:MeoXQFUU
>>177-178
ありがとうございます。なるほど、(mapc)とかが使えるんですね。
(char-encoding-name)も、むだのない感じでいいです。さっそく組み込んでみます。
180 名無し~3.EXE [sage] 05/02/06 17:50:11 ID:ZqB+rfsb
>>175
全然VerUPしないけ不満の出にくい、common lispに準対応したエディタだよねぇ
181 名無し~3.EXE [sage] 05/02/06 20:11:25 ID:XpM2Ofu4
>>180
んだんだ。
182 名無し~3.EXE [sage] 05/02/07 15:35:18 ID:OGuSBw0n
177動かないんだけど、なんで?
183 177 [sage] 05/02/07 18:02:18 ID:2e+AqRvO
>>182
すいません。きちんと確認してませんでした。
以下修正したもの。
(defun revert-buffer-encoding-popup2 ()
(interactive)
(let ((menu (create-popup-menu)))
(mapc #'(lambda (x)
(add-menu-item menu nil (car x)
#'(lambda ()
(interactive)
(revert-buffer (eval (cdr x)))))) ; <- eval 追加
'(("auto" . *encoding-auto*)
("sjis" . *encoding-sjis*)
("euc-jp" . *encoding-euc-jp*)))
(track-popup-menu menu)))
この辺の値の評価のされ方はあまりよく理解してません。

ていうか >>178 氏のコードのほうがスマートですね。
char-encoding-name は知りませんでした。
184 182 [sage] 05/02/07 18:41:03 ID:OGuSBw0n
>>177
動きました。ありがとう!
自分でコード書けないへたれなんで、お手数かけて済みません。
メニューの文字列を自分で定義できるのがいいので、
こちらを使わせていただきます。

176さんも178さんもありがとう。
おかげでファイルの開きなおしがすごく楽になりました。
185 名無し~3.EXE [sage] 05/02/07 18:48:20 ID:7jRV8Sgl
>>183
下のでも可

(defun revert-buffer-encoding-popup2 ()
(interactive)
(let ((menu (create-popup-menu)))
(mapc #'(lambda (x)
(add-menu-item menu nil (car x)
#'(lambda ()
(interactive)
(revert-buffer (cdr x)))))
`(("auto" . ,*encoding-auto*)
("sjis" . ,*encoding-sjis*)
("euc-jp" . ,*encoding-euc-jp*)))
(track-popup-menu menu)))

track-popup-menu って C-n/C-p で移動できなくてやだね...
popup-list ならできるのに
186 名無し~3.EXE [] 05/02/08 11:40:20 ID:igW4KQcB
どなたかお助けください。
php-mode を Windows 風キーバインドで利用するには
どうすれば良いでしょうか? よろしくお願いします。
現在の .xyzzy の内容は以下の通りで、Ctrl+Insert が
コピーになっております。

(load-library "Gates")
(require "php-mode")
(require "php-misc")
(pushnew '("\\.php$" . php-mode) *auto-mode-alist* :test 'equal)
(pushnew '("\\.inc$" . php-mode) *auto-mode-alist* :test 'equal)
187 名無し~3.EXE [sage] 05/02/08 13:01:16 ID:2T7B7tva
>>186
nazokingさんのmyphp-modeを使ってらっしゃいます?
最後に以下を追加。
(define-key ed::*php-mode-map* '#\C-c 'copy-selection-to-clipboard)

いくつかのキーバインドが死ぬかもしれません。
それらは別のキーにバインドしなおしてください。
188 名無し~3.EXE [sage] 05/02/08 13:13:39 ID:2T7B7tva
>>187 追記
php-misc.l に
(define-key *php-mode-map* '(#\C-c #\s) 'php-unit-create-skelton)

があるため、のようですね。
最初の疑問は気にしないでください。
189 186 [sage] 05/02/08 15:02:46 ID:igW4KQcB
>>187-188
できました! どうもありがとうございました。感謝です。
190 名無し~3.EXE [sage] 05/02/11 12:33:13 ID:q31d7MFG
ペグ・ソリティア18穴盤を参考に33穴版を実行中ですが
もう丸5日間実行してますが終わりません。バイトコンパイルは
しています。
ちょっと無謀な挑戦だったでしょうか
参考にしたソース
http://www.geocities.jp/m_hiroi/xyzzy_lisp/peg_src.html#peg18_list

最終的に41穴盤を目指しています。
191 名無し~3.EXE [sage] 05/02/11 20:50:47 ID:92c82Z9S
>>190
パズルですね.計算量的に膨大になってしまうのは仕方ないと思います.
よく分かってないですが,これ,ペグXを動かすしてからペグYを動かすのとYを動かしてXを動かしても
同じ状態になると思いますけど,その時って同じ計算を繰り返しているんでしょうか?
もしそうなら,それをさけると計算量はかなり減るはずです.
192 名無し~3.EXE [sage] 05/02/13 23:43:01 ID:eSlb3Rki
MLに変なのが紛れ込んでない?
193 名無し~3.EXE [] 05/02/13 23:55:18 ID:62HaP2fm
xyzzyにMLなんてあったっけ
194 名無し~3.EXE [sage] 05/02/13 23:55:23 ID:QldHhsns
>>192
明らかに誤爆っしょ
195 名無し~3.EXE [sage] 05/02/13 23:56:50 ID:afzCNcKV
>190
少しは手紙の裏の計算したほうがいいよ。
196 名無し~3.EXE [sage] 05/02/14 00:56:43 ID:gMKmEa+v
どんな計算?
197 名無し~3.EXE [sage] 05/02/14 01:37:26 ID:qg2LRWtp
チラシの裏といえば日記を書くものらしいが、
「封筒裏の計算」というのはちょこっと 計算することを
いうんだそうだ。 "back of envelope"でぐぐれ。
198 名無し~3.EXE [sage] 05/02/14 01:46:43 ID:gMKmEa+v
ちょっと計算すれば膨大な探索になるだろうっちゅうことですか
199 名無し~3.EXE [sage] 05/02/14 02:22:44 ID:s5eRs+4a
膨大だとあいまいすぎるけど、エイヤ!って適当な計算でも
数分なのか数時間なのか数万時間かくらいの予測はできるだろう、と。
200 085 [sage] 05/02/14 22:01:45 ID:WqKm6dIz
以前、xyzzyから国語辞書を引くことができるかという質問をして eijiro.l からの
goo国語 で妥協していた者なんですが、手元に全く使ってない広辞苑第4版のCD-ROMが
あったので、ここ(http://www.afis.to/~start/xyzzy/library/ddwin.html
を参考に ddwin経由で広辞苑を引けるようにしてみました。
goo国語の方が詳しいですが、それよりもすばやく引けるし、串刺し検索なんかも
できて結構いい感じです。
201 名無し~3.EXE [sage] 05/02/15 00:18:16 ID:Aw0WwL8f
>>200
日記はチラシの裏に(ry
202 名無し~3.EXE [sage] 05/02/15 02:39:38 ID:Zy2x3HOQ
ホスィ!って言ってもらいたいんじゃないの、きっと
203 名無し~3.EXE [sage] 05/02/15 02:51:22 ID:kdGnw+RW
ホスィ
204 名無し~3.EXE [sage] 05/02/15 03:08:06 ID:jcNr1tZa
ホッシュー
205 085 [sage] 05/02/15 07:17:17 ID:8bfB5Q2M
>>201
まあ日記みたいなもんですが、ddwinを知らなくて結構感動したので。
そんなの常識なんですかね。
ここに書く必要もないと思いますが、一応導入はこのへん
http://kazuo.fc2web.com/dic/ddwin.htm)を参考にしました。
スレ汚し気味ですいませんです。
206 名無し~3.EXE [] 05/02/15 07:53:47 ID:ZDpgZqHU
なんか起動したら設定全てdだ(涙
207 名無し~3.EXE [sage] 05/02/15 09:29:11 ID:qTlskXkn
xyzzyの入門書の話ってどうなったの?
208 名無し~3.EXE [sage] 05/02/15 10:12:41 ID:mIJXzAhq
あったねーそういう話
209 名無し~3.EXE [sage] 05/02/15 10:21:28 ID:EpRREutO
そんな話もあ〜ったねと〜
210 名無し~3.EXE [sage] 05/02/15 13:00:10 ID:wI81Bt5c
にっきを拝見するに、すすんでるふうじゃない?
211 名無し~3.EXE [sage] 05/02/17 00:13:08 ID:enVkAkrl
花鳥を初めて使ってみました。
これはいいですね!
ツールバーも付けてみました。

platexでコンパイルすると2分割されて結果が下の
バッファにでますが、これを閉じるのはどうやるんですか?
212 名無し~3.EXE [sage] 05/02/17 01:23:37 ID:NDRJIoip
>>211
C-x 1
213 名無し~3.EXE [sage] 05/02/18 22:52:10 ID:ekeqF1IR
かたじけない >212
214 名無し~3.EXE [sage] 05/02/21 22:42:56 ID:X5P5rf/5
テキストエディタxyzzyの読み方だけど亀仙人でいいよね
よし決定
215 名無し~3.EXE [] 05/02/21 23:25:36 ID:lgxTrwIi
カレントバッファの各行末の空白文字を削除する関数とかってありますか?
216 名無し~3.EXE [sage] 05/02/21 23:29:47 ID:TC0sn4xX
>>214
Wikiで一票どうぞ

>>215
http://www.infoseek.co.jp/OTitles?col=OW&qt=%B9%D4%CB%F6+%B6%F5%C7%F2+xyzzy&svx=901908
217 名無し~3.EXE [] 05/02/22 00:58:12 ID:z7bi3atq
Linuxに移ってすっかりEmacsに浮気しとったんですが、舞い戻って来た。
xyzzyってwine上でも一応動きますね。
今気付いたんで、いろいろ試してるとこなんですが。
ちなみにfilerから抜けたり、byte-compileすると落っこちます。
scratchでコソコソ遊んどる分には問題ないみたい。
例によって二回目以降の起動はほぼ一瞬で、Emacsより格段早かったり。

板違い気味なんでageて良いものかどうか...
とか言いながらLinux(SUSE9.2)+wine+xyzzy+2ch-modeで記念age
218 名無し~3.EXE [sage] 05/02/22 01:15:48 ID:bCpfoeH6
>>217
すげー。そんなこともできんのかよ。もっと詳細キボン。
219 名無し~3.EXE [sage] 05/02/22 01:24:58 ID:lxif18Vf
むむー、portsからwine入れそうになっちまったぞw
220 217 [sage] 05/02/22 07:49:31 ID:z7bi3atq
経過報告です

<動作が確認された機能>
・2ch-mode
おそらく完動。不具合全く確認されず。
・www-mode
おそらく完動。これも不具合確認されず。
・kamail
おそらく完動。送信、受信、問題なく成功。
mailfileのarchive等も、
ArchiverDllをしかるべき場所に置くことで問題なく動作。
hotmailもhotwaydが作動しているなら取得可能。
IMAPは試してません。
・outline-tree
おそらく完動。TreeView.dllも問題なく動作。
・migemo
おそらく完動。migemo.dllも問題なく動作。
・netinstaller
おそらく完動。要ArchiverDll
・その他いろいろ...
221 217 [sage] 05/02/22 07:53:45 ID:z7bi3atq
<未動作、不具合が確認された機能>
・browser.dll関連 (browser.l browserex.l rss.l 等々)
wineでexplorerが動く環境であれば、あるいは...。
・filer関連 (mini-bufferからdirectoryを開く等)
主な不具合はfilerから抜けるときに落ちるというだけだが、
これが自分には一番痛い。
mini-bufferからもmount越しのfileは開いてくれない。
(pathの補完はしてくれる)
落ちる際、MS Visual C++のruntimeがどうのとか言っているので、
それが稼動すれば、あるいは...。
filerそのものは、おそらく完動。
コピー、移動、圧縮、展開、textfileのpreview、等々問題無し。

compileで落ちると思っていたのは私の勘違いでした。単にcompileするfileを
尋ねられた時にdirectoryを開いていたためでした。mini-bufferで入力を済ま
せれば、これも問題なくcompileできます。

ざっと試してみただけなので、細かいところまで定かではありませんが、どう
やらほとんど完璧に動作しているようです。Linux上でxyzzyを動かす利点が果
してどれほどあるのか疑問ですが、なんとなく感動したので。

長文、駄文、平にご容赦。とりあえずご報告まで。

screenshotなんか別にいらんよね。
222 217 [sage] 05/02/22 08:11:02 ID:z7bi3atq
versionがすっかり抜けとった。

SUSE LINUX 9.2 (kernel 2.6.8)
wine 20050111
xyzzy 0.2.2.233
2ch-mode 0.0.1.2
kamail 0.0.2.7
...以下略...

でした。
223 名無し~3.EXE [sage] 05/02/22 12:42:54 ID:dW/jXuNb
>217
gecko版browser.dllは使えないのかな。
というよりも移植自体がそんなにハードル高くなさそうだね
224 名無し~3.EXE [sage] 05/02/22 13:02:56 ID:pBeIGfjV
>>217
Wine 20050111はIEが動かないバージョンだから他のバージョンにして
IE入れればbrowser.dllも動くようになるよ。Wine 20050211で動作確認済み。
225 名無し~3.EXE [sage] 05/02/22 19:57:57 ID:E/hyddh9
ファイラで最後に開いたディレクトリを保持する事はできませんか?
226 名無し~3.EXE [sage] 05/02/22 20:52:18 ID:eOI8T/qE
>>225
起動しなおさない間はそうなってるよね?
起動しなおした時の話? 詳細きぼん
227 名無し~3.EXE [sage] 05/02/22 21:05:40 ID:Rdo1GWJO
>>225
ttp://hie.s64.xrea.com/xyzzy/ml/msg07025.html
228 名無し~3.EXE [sage] 05/02/22 21:21:53 ID:W63qSSLT
wine上でのxyzzyで、call-process等でunixのコマンドを実行できますか?
C-x & ls
とか
229 名無し~3.EXE [sage] 05/02/22 21:42:10 ID:ZFVhMKmq
>>217
すげーすげー。変なの。
230 名無し~3.EXE [sage] 05/02/22 21:43:58 ID:E/hyddh9
>>226さん
激しく適当な質問をしてすいません。
改めて見ると我ながら間抜けすぎて泣けてきます。

find-file した時に最初に表示されるディレクトリを
ファイラで最後に開いたディレクトリにしたいのです。
(存在する全てのバッファで)

現在の状態
C-xC-f
Find File: $HOME or バッファに読み込んだファイルがあるディレクトリ

やりたい事は
C-xC-f
Find File: ファイラで最後に開いたディレクトリ

>>227さん
ありがとうございます。レジスタとフック使ってやればいいのですね。
チャレンジしてみます。
231 名無し~3.EXE [sage] 05/02/22 21:46:56 ID:ubud2onz
>>217
スクリーンショットきぼんぬ。
232 名無し~3.EXE [sage] 05/02/22 22:16:16 ID:x3VROyLJ
>>230
227 のリンク先のコードに
(defun find-file (filename &optional encoding nomsg)
(interactive "lFind file: \n0zEncoding: " :title0 "Find file"
:default0 *filer-primary-directory*)
(long-operation
(if (listp filename)
(dolist (file filename t)
(find-file file encoding nomsg))
(set-buffer (ed::find-file-internal filename nil encoding nil nomsg)))))
を加えればいけるかも。
233 名無し~3.EXE [sage] 05/02/22 22:19:45 ID:Rdo1GWJO
>>230
> やりたい事は
> C-xC-f
> Find File: ファイラで最後に開いたディレクトリ
やりたいことがそういうことなら変数名くらいしか参考にならないよ
234 名無し~3.EXE [sage] 05/02/22 22:25:12 ID:pCm2ZtBB
あのー、ファイラのフォントを大きくする方法はありませんか。
235 217 [sage] 05/02/23 01:47:21 ID:VFdUwiQM
>>228
それを試してなかったことに後々気が付いてやってみたんですが...

うーん、そうそうすんなりとは行かんもんやね。
なんかxyzzyenv.exeが一枚噛んでる?
無理っぽいけど、そのうちprocess.lをじっくり眺めていじってみます。
shell-ext.lの作者さんとかならなんとかしてくれるんやないやろか。

ちなみにwine付属のwcmd.exe.soというcmd.exeモドキなら動きました。

>>223
単純にdll置いただけでは少なくとも動かなかったです。

>>224
なんかIE入れるのも、それだけのためにwineのversion上げるのも大義でし
て...。動くのが判っただけで十分です、どうもでした。

>>231
地味ぃ〜なやつでよかったら、そのうちね。
236 名無し~3.EXE [sage] 05/02/23 06:42:43 ID:WnrSH8zK
xyzzyを興味本位で試してみた。
Windows坊な私はかなりつかいずらいけどいろいろおもしろい。
使いこなせるようになりたいけどキーバインドを覚えるのが大変です。
日常的に使ってればそのうち覚えてくるかなー。
でも四六時中プログラム書いているわけでもないので使う機会があまりない。

何か日常的な作業でxyzzyのお勧め使い道はないですか?(例:ブラウザ、メーラ)
でもメーラはBecky使ってるからちょっと簡便かな^^;
ブラウザはwww-mode入れればいいのだろうか・・・
browser.dllとか入れないといけないものなのかよくわかりません。
237 名無し~3.EXE [sage] 05/02/23 06:56:02 ID:m7u33FwD
ここで聞くならまぁ普通に2ch-mode。
238 名無し~3.EXE [sage] 05/02/23 08:01:40 ID:XJQf1Ydq
>>236
> 何か日常的な作業でxyzzyのお勧め使い道はないですか?

自分は xyzzy の設定・カスタマイズが最もよくやる
作業ですw
239 名無し~3.EXE [sage] 05/02/23 09:12:04 ID:dGRTjC6W
>>236
ndmacro や migemo に驚いてみるとか
240 名無し~3.EXE [sage] 05/02/23 09:31:29 ID:giu9SQOH
>つかいずらい

こういう誤字を指摘するlispを書いてみるとか
241 名無し~3.EXE [sage] 05/02/23 10:25:03 ID:Tu1SJSbD
>>236
無理に慣れなくても。
emacsを覚えざるを得なかった人向けの品でしょう。
242 名無し~3.EXE [sage] 05/02/23 10:39:42 ID:AylsC7Sm
五目並べとか。
243 名無し~3.EXE [sage] 05/02/23 10:50:43 ID:d0FFJ4bo
日記つけるとか
244 名無し~3.EXE [sage] 05/02/23 11:08:37 ID:3KomRlhr
昔のカレンダーを眺めるとか
(1582年10月あたりがお勧め)
245 名無し~3.EXE [sage] 05/02/23 12:13:26 ID:JoqGoMza
>244
ワロタ
246 228 [sage] 05/02/23 12:16:19 ID:u7ZFJear
>>235
> 無理っぽいけど、そのうちprocess.lをじっくり眺めていじってみます。
> なんかxyzzyenv.exeが一枚噛んでる?
process.l は関係ないと思います.
wineのバージョンアップで解決って言うのが一番良いですが,
xyzzyenv.cc か process.cc の修正が必要なのかもしれませんね.

> ちなみにwine付属のwcmd.exe.soというcmd.exeモドキなら動きました。
それから unix のコマンド実行可能ですか?

# しかし妙な一致をして焦りました. 228=shell-extの作者
247 名無し~3.EXE [] 05/02/23 17:05:49 ID:GPLjZvPO
今でもWine内からLinuxネイティブなブラウザを呼ぶwinebrowserっていう
プログラムがあるんでラッパをかぶせれば色々できそうな予感。
248 名無し~3.EXE [] 05/02/23 21:24:19 ID:hBnaBSzK
>>244
すごいすごい
これなんで?
249 名無し~3.EXE [sage] 05/02/23 21:34:36 ID:VklIYcZH
グレゴリオ歴に切り替わったのが1582年10月だそうです
http://www.yk.rim.or.jp/~tabby/cal/index.html
250 名無し~3.EXE [sage] 05/02/24 00:09:25 ID:WpfvU+Xm
アー、グレゴリオ暦って1582年からなのか
てっきりみんな信長大好きなのかと思ってしまった
251 名無し~3.EXE [sage] 05/02/24 02:28:44 ID:pH5nK5KH
>>244
見方教えてください^^;
252 名無し~3.EXE [sage] 05/02/24 02:31:00 ID:pDFgQ54p
M-x calendar
253 名無し~3.EXE [sage] 05/02/24 05:36:09 ID:asH5LeJA
こういう馬鹿はちゃんと鎖に繋いでおいて欲しい・・・
877 名前:名無しさん@お腹いっぱい。[sage] 投稿日:05/02/22(火) 00:54:48 ID:kPn/1etL
xyzzy使ってるとemacsがヘボく思えてくるな
254 217 [sage] 05/02/24 06:43:42 ID:WmV9jITg
>>228
なんと本人様でしたか。
御見逸れした上、見当外れなディアクノーゼで恐縮の至りです。

> > ちなみにwine付属のwcmd.exe.soというcmd.exeモドキなら動きました。
> それから unix のコマンド実行可能ですか?

駄目みたいです。
cmd.exeから「毛の抜けた」ような組み込みのcommandしか受けつけてくれません。
これだけ動作するのだって大変なことだとは思いますが、あんまり意味ないかな。
あくまで「おまけ」程度のものということで。

"not emulator"とは言うものの、
Windows環境を結局は隔離して作り上げようというプロジェクトみたいだから、
Unix toolsとのシームレスな連携というのはなかなか難しいんですかね。
まあ、*nix上で動作の望まれる殆どのwinアプリが
連携など望んでもいなければ必要としてもいないようだから、
そんなことしても無意味といえば無意味なんですが。
今後にゆるやかに期待しつつ、
20050211版にしてもunixのコマンドは動かなかったんでsageときます。
255 名無し~3.EXE [] 05/02/24 07:15:29 ID:VERYN9E1
>>253
しかし本当のことだからな
256 228 [sage] 05/02/24 08:02:07 ID:CspRcizz
>>254
> > それから unix のコマンド実行可能ですか?
> 駄目みたいです。
駄目ですか.すごく残念です.
実は本分のほうで,*nix のとあるCUIなツールをcygwin でコンパイルし,
xyzzy をそのツールのフロントエンド+αとして,ここ一年ほど実装してまいりました.
ようやく形になるものが出来てきたところで,プラットフォームの問題がでてきて困っていたのです.

これで一気に解決かと思いましたが,そうは甘くないみたいですね.

> 20050211版にしてもunixのコマンドは動かなかったんでsageときます。
わざわざ試していただき恐縮です.ありがとうございました.
257 217 [sage] 05/02/24 10:48:54 ID:WmV9jITg
なんだかんだ言いながら、せっかくだからscreenshot上げときます。

・てなわけでまずSCIMで入力中
http://penguin.s4.xrea.com/imgboard/img-box/img20050224100412.png
・dialogでAA表示
http://penguin.s4.xrea.com/imgboard/img-box/img20050224100611.png
・outline-tree (すいません、お借りしてます >>228)
http://penguin.s4.xrea.com/imgboard/img-box/img20050224100718.png
・件のwcmd.exe.so
http://penguin.s4.xrea.com/imgboard/img-box/img20050224100850.png
・about-dialog dllが認識されてます。(Kamei様、Watanabe様、許してください)
http://penguin.s4.xrea.com/imgboard/img-box/img20050224100959.png

>>256
> わざわざ試していただき恐縮です.ありがとうございました.
なにをおっしゃいますやら、私も興味があったので試してみただけですから。

そういうことでしたか。
あまりお役に立てなさそうですが、こちらでも色々試してみますので、
頑張って下さいまし。
258 228 [sage] 05/02/24 11:03:22 ID:CspRcizz
>>257 shell-extの作者様
すみません. shell-ext は自分のコードじゃなかったです.orz
自分で勝手に改造して使っていたので,自作のものと勘違いしました.
あぁ,はずかしぃ...
259 名無し~3.EXE [sage] 05/02/24 12:17:30 ID:l/Ybee9Z
>>250
俺漏れもヽ(´ー`)ノ
>>251
ESC ESC と入力して、ミニバッファにカーソルがいったら
(calendar 1582)
260 名無し~3.EXE [sage] 05/02/24 14:39:22 ID:YK8Q7l0V
メニューを英語化してるんですが、「ビュー」>「ツールバー」の
-標準
-バッファ
-フレーム
とかいうサブメニューはどこからでてきてるんでしょうか?ここだけ変えられません。
261 名無し~3.EXE [sage] 05/02/24 14:46:09 ID:VF5ejHR7
>>260
$XYZZY/lisp ディレクトリを「標準(&S)」「バッファ(&B)」「フレーム(&F)」で探してみて。
262 名無し~3.EXE [sage] 05/02/24 16:23:25 ID:CspRcizz
>>260
できれば wiki にアップよろしく.
共通設定の英語化完了しているんだけど,wiki のとは
作り方の方針が違い,アップしてません.
それでも需要ありますかね?
263 名無し~3.EXE [sage] 05/02/24 18:41:22 ID:8fpOypdU
特定のキーバインドを変更するのではなく無効にする、
あるいは global-set-key のように元のキーバインドを
残さずに、完全に他のものと入れ替えてしまうには
どうしたらいいでしょうか?

具体的には、delete-blank-lines (C-x C-o) はまったく
使わない上に、フレーム間を C-x o で移動する際に
よく間違えて押してしまうことがあって困っています。

よろしくお願いします。
264 名無し~3.EXE [sage] 05/02/24 18:45:27 ID:pDFgQ54p
>>263
global-unset-key
265 名無し~3.EXE [sage] 05/02/24 20:15:12 ID:8fpOypdU
>>264
ありがとうございます。
266 260 [sage] 05/02/24 22:27:34 ID:5ZoBHZ5D
>>261
いや、grepしても見つからないのです。どこなの?!
あと、できたらキーボードショートカットのモディファイやキーの表示も
Ctrl -> C
にしたいです。
Beginning of defun ESC Ctrl+a
とか長すぎるでしょ

>>262
wikiって行ったことないけど完成したら僕もアップします
267 名無し~3.EXE [sage] 05/02/24 22:40:58 ID:CspRcizz
>>266
え,wikiにあるlocale.l 使ってないの?
それじゃぁ,ドイツ語化しようとしたときは
またコードを直接編集しなければいけないから,よくないでしょ.
他国語化も視野に入れた,英語化で行こうよ.
268 名無し~3.EXE [sage] 05/02/24 23:59:59 ID:R69VQJEC
>>266
> いや、grepしても見つからないのです。どこなの?!
そんなはずは無いと思うんだけどなぁ???
cmdbar.lとpframe.l
269 260 [sage] 05/02/25 01:38:45 ID:sH2SGm9t
http://www.imgup.org/file/iup10534.gif
↑の148, 150行目ですよね?これをすでに変えてるからgrepでも見つからないと思うんですが。
pframe.lのほうも変えてあります。つーかlocale.lやて?


orz
270 名無し~3.EXE [sage] 05/02/25 01:53:49 ID:VaGKe5DY
>>269
なるほど、該当箇所を変更しても変わらないって話ですか。
確かにおっしゃるとおり。
バイトコンパイルはやってあるでしょうから
一回.xyzzy.historyを消してみてください。
ちゃんと変わりました。
271 名無し~3.EXE [sage] 05/02/25 06:15:34 ID:O5VgwqOB
カレントバッファ以外をすべて閉じるといった操作を
キーボードから行いたいのですが
どうすればいいのでしょうか?
バッファタブの右クリックメニューを拡張し、マウスではできるのですが
↓のようにしてみてもうまく動作してくれません…。

;; これ以外を閉じる
(defun mybb-close-other-buffers ()
(interactive)
(let ((buf0 *buffer-bar-context-menu-buffer*))
(dolist (buffer (buffer-list))
(unless (or (eq buffer buf0)
(string= (buffer-name buffer) "*scratch*"))
(kill-buffer buffer)))))
(global-set-key #\C-1 'mybb-close-other-buffers)
272 名無し~3.EXE [sage] 05/02/25 06:55:21 ID:bqOJZRVG
>>271
*buffer-bar-context-menu-buffer* → (selected-buffer)
273 271 [sage] 05/02/25 07:21:44 ID:O5VgwqOB
>>272
おおっありがとうございます!
無事にキーボードから操作できるようになりました!
これでマウスジェスチャーにも登録できます(・∀・)
274 名無し~3.EXE [sage] 05/02/25 17:48:37 ID:w4j4T36k
むしろ作者に許可もらって英語版を欧州人向けに公開したらどうなんですかね?
275 名無し~3.EXE [sage] 05/02/25 18:20:14 ID:F26pMv6V
>>274
それなら locale.l を xyzzy の一部として組み込んだものを作った方がいいと思う.
ただ,xyzzy 本体に埋め込んである日本語や日本語フォントを locale.l で指定する
ためには,最低限の変数,関数は xyzzy内部で定義することになるだろうね.

なかなかそこまで行動を起こせる人がいないのが問題だけど.
276 260 [sage] 05/02/25 19:17:04 ID:Asckj+Ml
>>270
(;゚∀゚)=3 デキタ! シランカッタ!
277 名無し~3.EXE [sage] 05/02/25 21:19:57 ID:B9HyCSPf
Wikiのはどこまで本気なのかよく分からんからすごく手伝いにくい。
MLで亀井さんとかに相談したらもっといい方法がありそうだし。
# あのまま連想配列でやるのかなぁ〜
# hashにした方がよさそうにみえるんだが。

とりあえず、英訳だけしてくれってほうがまだ手伝える。
278 名無し~3.EXE [sage] 05/02/25 22:45:29 ID:keADMzTL
亀井氏はもう出てくる気ないんじゃないの?
279 名無し~3.EXE [sage] 05/02/25 23:08:49 ID:PyYhVvKu
亀井静か
280 名無し~3.EXE [sage] 05/02/26 03:00:29 ID:evl6TrVx
バッファタブのフォントって変更できますか?
~/lisp以下のファイルのfontを検索して
MS ゴシックを適当なフォントに書き換えてみたけど
どうもうまくいきません…。
バイトコンパイルもしなおして.xyzzy.historyも消したみたけど
ダメでした。そもそもフォントの変更は無理なのでしょうか?
281 名無し~3.EXE [sage] 05/02/26 03:43:53 ID:Gq9gzvhP
>>280
そこは Windowsで指定されたフォントを使用しているので,
lispを漁っても無駄. ただ,どうやって変えるかは忘れた.
282 名無し~3.EXE [sage] 05/02/26 10:22:28 ID:WV6gUC0B
>>277
wikiで翻訳してるの?
283 280 [sage] 05/02/26 13:13:11 ID:evl6TrVx
>>281
リソースハッカーとかを使えばいいんでしょうか…??
ちょっと試してみます。
284 名無し~3.EXE [sage] 05/02/26 16:41:56 ID:Nt2yhLNA
>>282
ttp://xyzzy.s53.xrea.com/wiki/?L10N
285 260 [sage] 05/02/26 17:29:55 ID:07Tdrn+2
>>284
今見てきたけど何の話してるかわかんなかった・・・
とりあえず俺の手書き英語化は完了したしたからいいや。 he he...
286 名無し~3.EXE [sage] 05/02/26 19:24:32 ID:8b2P5rJc
>>285
あぷきぼん
287 名無し~3.EXE [sage] 05/02/27 02:59:28 ID:5InV5uKQ
>>284
そろそろ英訳でもしてみるか
288 名無し~3.EXE [sage] 05/02/27 03:02:36 ID:5InV5uKQ
calendar は国によって国民の休日が違うから訳しても意味ないからあきらめる
英語といってもイギリスとアメリカでは祝日が違うでしょ
289 名無し~3.EXE [sage] 05/02/28 12:58:20 ID:biaOhKrh
2ch-modeでレス読んでる時、IDをクリックするか、なんかのキーを押すと、
同じIDの発言を違うBUFFERに書き出してくれる、もしくはポップアップしてくれる
拡張みたいなものありませんかね?
290 名無し~3.EXE [sage] 05/02/28 13:13:15 ID:f4j+mFJj
>>289
丁度こないだ書いたところだった。
本文長すぎだそうなのでインデントがないのはご容赦を。

(defvar *2ch-extract-regexp* (compile-regexp "ID:\\(.*?\\)\\(]\\|$\\)"))

(defun extract-id-articles (id)
"指定したIDの発言を抽出する"
(interactive "sID: ")
(save-excursion
(goto-char (point-min))
(let ((id-articles "") article pos (article-count 0))
(while t
(setf pos (find-text-attribute 'number :start (1+ (point))))
(let ((line (save-excursion
(buffer-substring (progn (goto-bol) (point))
(progn (goto-eol) (point))))))
(string-match *2ch-extract-regexp* line))
(when (equal id (match-string 1))
(setf article (2ch::thread-current-article))
(incf article-count)
(setf id-articles
(concat id-articles (format nil "~03D [~A] ~A <~A>\n~A\n"
(2ch::thread-line-number article)
(2ch::thread-line-date article)
(2ch::thread-line-name article)
(2ch::thread-line-addr article)
(2ch::thread-line-body article)))))
(if pos (goto-char pos) (return)))
(message-box (format nil "~A" (if id-articles id-articles "no articles."))
(format nil "ID:~A の発言:~D個" id article-count)))))
(compile 'extract-id-articles)
291 続き [sage] 05/02/28 13:13:59 ID:f4j+mFJj
(defun extract-current-id-articles ()
"現在のレスのIDの発言を抽出する"
(interactive)
(let ((article (2ch::thread-current-article)))
(string-match *2ch-extract-regexp* (2ch::thread-line-date article))
(if (match-string 1)
(extract-id-articles (match-string 1))
(message "IDが見つかりません"))))

;config.lに追加して下さいな。
;extract-id-articlesはIDを指定して検索。
;extract-current-id-articlesは現在のレスのIDの発言を検索。
;キーマップへの登録例
(define-key *thread-map* #\J 'extract-id-articles)
(define-key *thread-map* #\j 'extract-current-id-articles)
292 名無し~3.EXE [sage] 05/02/28 19:14:41 ID:cTATDxph
>>290
>>289 ではないけどいただきますた。
293 名無し~3.EXE [sage] 05/02/28 20:16:57 ID:Dy1/8QWm
俺も。動作確認はまだですが欲しいと思っていた機能なので大変ありがたいです。THX!
294 名無し~3.EXE [sage] 05/02/28 21:11:40 ID:e7Ght4lu
>>290
自分も頂きました。
悪魔的に便利な機能ですね。
295 名無し~3.EXE [sage] 05/02/28 21:23:02 ID:q4R4RBd5
>>290
神!
296 名無し~3.EXE [sage] 05/02/28 21:37:13 ID:pstqkOM5
>>290
横からいただきますた。
むちゃくちゃいい感じです。
297 名無し~3.EXE [sage] 05/02/28 21:49:52 ID:f4j+mFJj
問題なくて良かった。
手元のは一行読み取る部分を別関数にしてるので。

でですね、バッファの指定行/現在行の文字列を取得する関数って始めからあったりします?
298 名無し~3.EXE [sage] 05/02/28 22:00:26 ID:biaOhKrh
むぅ、うまく動作してないと思ったらしたらばじゃ駄目ぽかった。
2ch(ここ)なら動作しました。したらばでも動くようにいじったけど俺lisp駄目すぎorz
299 298 [sage] 05/02/28 22:29:41 ID:biaOhKrh
よく見たら2ch_mode_otherbbs.lのしたらばのスレ出力の
仕方が通常の2chと違ってたので、同じになるように直したら幸せになれました。

2ch_mode_otherbbs.lの
720行目が
(setq date (concat date " |" id "|")))
こうなっているので、
(setq date (concat date " ID:" id)))
こういう風に直す。

つらつらっと別の箇所もみましたが、なんか通常の2chの出力の仕方と違うところがいくつかあるっぽい。
まぁこれでしたらばでもID抽出が動いたのでとりあえず報告。
300 名無し~3.EXE [sage] 05/02/28 22:45:19 ID:f4j+mFJj
>>299
うう、other_bbsも使わせてもらってましたが、ID表示のある板に行った事がなかったので検証してませんでした。

>>299の解決法がスマートだと思いますが(正規表現がシンプルになる分多少早いと思います)
>>290-291の中で解決するなら
(defvar *2ch-extract-regexp* (compile-regexp "ID:\\(.*?\\)\\(]\\|$\\)"))

(defvar *2ch-extract-regexp* (compile-regexp "\\(ID:\\||\\)\\(.*?\\)\\(]\\||\\|$\\)"))
に変えて、3箇所ある(match-string 1)を(match-string 2)に差し替えて下さい。
301 名無し~3.EXE [sage] 05/02/28 23:07:58 ID:XdxGBC/m
>>290
バグフィックス
> (message-box (format nil "~A" (if id-articles id-articles "no articles."))
(message-box (format nil "~A" (if (zerop article-count) "no articles." id-articles))

>>297
> バッファの指定行/現在行の文字列を取得する関数って始めからあったりします?
buffer-substring は builtin だし、あなたの方法が最善じゃないかなぁと思います。
302 名無し~3.EXE [sage] 05/02/28 23:35:35 ID:f4j+mFJj
>>301
> バグフィックス
確かに改めてみてみると決してnilにはなりませんね(w
私なら思わず(equal id-articles "")としてしまうところですが、
なるほどzeropと言う手があったとは。勉強になります。

> buffer-substring は builtin だし、あなたの方法が最善じゃないかなぁと思います。

了解です。
それなりに使いでがあると思うんですけどねー。
303 名無し~3.EXE [age] 05/03/01 10:57:18 ID:7pIy5BYw
入門xyzzy age
304 298 [sage] 05/03/01 11:52:23 ID:kiaNUqP0
>>303
むやみに上げる、その心は?
305 名無し~3.EXE [sage] 05/03/01 12:19:57 ID:DOBNSYT+
初心者はげましあえスレもあるのにむやみに上げる、その心は?
306 名無し~3.EXE [sage] 05/03/01 12:34:50 ID:p1BiDy10
ttp://www.cbook24.com/bm_detail.asp?sku=4274066002
307 名無し~3.EXE [sage] 05/03/01 12:39:31 ID:LXshHxJP
>>306
おー、ついに決まったんだ。
308 303 [sage] 05/03/01 13:00:13 ID:7pIy5BYw
http://ssl.ohmsha.co.jp/cgi-bin/menu.cgi?&ISBN=4-274-06600-2
>306と同じだけど、ちょっと詳しいかな
309 名無し~3.EXE [sage] 05/03/01 16:59:41 ID:EWIivmvg
emacs.lについて一言二言あるんだけどどこで誰に言えばいいんでしょ
310 名無し~3.EXE [sage] 05/03/01 18:08:43 ID:hnmwM44H
>>309
> emacs.lについて一言二言あるんだけどどこで誰に言えばいいんでしょ
emacs.l を持っているなら emacs.txt も持っているんじゃないの?
作者の前田さんへ直接メールか、xyzzy ML を使ってください。
311 名無し~3.EXE [sage] 05/03/01 19:43:27 ID:/2w2YMqk
今さらながら lisp 勉強中
読めるようになる気がしない
312 名無し~3.EXE [sage] 05/03/01 21:13:51 ID:4ZzKP011
>>311
関数リファレンス,適切なインデント,paren.l で
すぐ読めるようになる.タグジャンプもあると◎
313 名無し~3.EXE [sage] 05/03/01 21:23:56 ID:ZpBihjt8
ndmacroと↓を併用しているんですが

プログラミング時の変数名の入力を楽に
http://www-komo.ise.eng.osaka-u.ac.jp/~oka/xyzzy.html#dabbrev

これを入れていると
(defvar *chars-to-break-continuous-dabbrev-popup* " \n,(){}[]<>")
で定義されているキーが入力されたときにndmacroがうまく動作が
できないみたいです…。どなたか併用されている人はいますか?
うまい解決法があればアドバイスお願いします…。
314 名無し~3.EXE [sage] 05/03/01 21:30:29 ID:eUX+c4OO
>>311
人のをちょっといじるだけでもいいから、とにかく書いてみるといいと思う。
その際、多分リファレンスは必須(reference.chm が手軽でおすすめ)。
できれば、paren.l、ldoc.l、ref2doc.l もあった方がいい。
315 名無し~3.EXE [sage] 05/03/01 21:57:58 ID:/2w2YMqk
>>312,314
丁寧なアドバイスありがとうございます
括弧地獄にもそのうち慣れるもんですかね
316 名無し~3.EXE [sage] 05/03/01 22:22:12 ID:YEzrSoiY
括弧は慣れればどうってことないと思う。
逆に括弧のないCとかのコードがとっさにparseできないことはある。
(普段lisp以外ほとんど使わないからだろうけど)

ところで、ldoc.l, ref2doc.l は使ってなかったけど、便利そうですね。
F9にtoggle-ldocを割り当ててみた。
317 名無し~3.EXE [sage] 05/03/01 22:43:53 ID:S8B1nz8n
>>313
関数continue-continuous-dabbrev-popupがtを返すようにしてみたらどうなりま
す?
関数ボディの最後と途中にあるreturn-fromを書きかえてみてください。
318 名無し~3.EXE [sage] 05/03/01 22:51:02 ID:eUX+c4OO
ついでに言うなら、eval-buffer、eval-region、デバック用に toggle-trace-on-error
msgbox(数値などを入れてもエラーにならないように、(msgbox (format nil "~A" 変数名))
みたいにして使っている)なんかも知っておくといいかも。

>>316
こんなのもある。
http://www.jaist.ac.jp/~m-nakano/lisp/ldoc2.l
319 名無し~3.EXE [sage] 05/03/01 23:30:29 ID:mmI3d61a
プログラミング言語ユーザーの噂
ttp://d.hatena.ne.jp/kzys/20050212#p2



Lisp
 * SICPを本棚に飾っている。
 * 括弧は気にならないというが、括弧の対応はエディタで強調表示している。
 * しばらくすると処理系を自分で書き、微妙に方言をつくる。


320 名無し~3.EXE [sage] 05/03/02 01:19:57 ID:PIMVtwxq
>>315
info.l や info-modoki-mode なんかも便利。
321 名無し~3.EXE [sage] 05/03/02 02:20:41 ID:qM8DJ9WT
>>319
俺にとっては,

>  * SICPを本棚に飾っている。
飾ってない. Common LISP The Language Second Edition なら飾っている.

>  * 括弧は気にならないというが、括弧の対応はエディタで強調表示している。
括弧の対応はエディタで強調表示しているので, 括弧は気にならないという

>  * しばらくすると処理系を自分で書き、微妙に方言をつくる。
正しい
322 名無し~3.EXE [sage] 05/03/02 02:33:55 ID:FqbWyP5n
>>314
ldco.l ref2doc.lは具体的に何をするものなんですか?
323 名無し~3.EXE [] 05/03/02 02:41:23 ID:K0a7CvW7
>>319


>  * SICPを本棚に飾っている。
>  * 括弧は気にならないというが、括弧の対応はエディタで強調表示している。
>  * しばらくすると処理系を自分で書き、微妙に方言をつくる。
324 名無し~3.EXE [sage] 05/03/02 02:49:22 ID:K0a7CvW7
>>319
上は投稿ミス。失礼。
私は、

>  * SICPを本棚に飾っている。
飾ってる。

>  * 括弧は気にならないというが、括弧の対応はエディタで強調表示している。
括弧がなきゃ綺麗にインデント揃えられないじゃないかー。とか言う。

>  * しばらくすると処理系を自分で書き、微妙に方言をつくる。
書かなきゃ lisp ユーザと言えないのかなあ、と戦々兢々としてみる。

改めて投稿しなおすものでもなかった。
325 名無し~3.EXE [sage] 05/03/02 03:24:34 ID:K0a7CvW7
しかも age ちゃってるよ。死のう。

>>322
まず、ref2doc.l は docstring という、
処理系自体が保持する関数や変数への説明文を
reference.xml から自動生成してくれるものです。
基本的には、docstring は apropos や describe-function といった
調べ物系コマンドで見ることができます。

ldoc.l は lisp-mode 時、
現在カーソル下にあるシンボルについての説明を、ステータスバーに表示するものです。
関数やマクロだったら取る引数を、変数だったら docstring を表示してくれます。
ref2doc.l の配布元にある修正を加えると、
関数についても docstring を表示するようにできます。
326 名無し~3.EXE [sage] 05/03/02 03:46:12 ID:FqbWyP5n
>>325
丁寧にありがとうございます。

ちなみにこれらの機能はlisp書きならほとんどの方が使ってるのですか?
それともある程度上達したらだんだん使わなくなるもんでしょうか?
327 名無し~3.EXE [sage] 05/03/02 04:20:45 ID:qM8DJ9WT
>>326
xyzzyでlispを覚えて3年になる.
関数リファレンスは今は引く回数が減ったけど,
初めてのころより現在のほうが ldocやタグジャンプはよく使うyo

あまり使わない関数の引数の順番まで覚えていられないし,
リファレンスにないような関数は自分でコードを読むからね
328 名無し~3.EXE [sage] 05/03/02 07:36:28 ID:FqbWyP5n
WindowsXPだと環境変数はレジストリに書かれるのですか?
その場合どの部分?
329 313 [sage] 05/03/02 12:13:33 ID:CqnjSyhi
>>317
関数continue-continuous-dabbrev-popupのreturn-fromのところを
(return-from continue-continuous-dabbrev-popup t)))))
↑のように変えてみたのですが、やはりうまくいかないみたいです…。
330 名無し~3.EXE [sage] 05/03/02 13:00:43 ID:HCK6q7u6
>>329
その関数の最後のところもこんな感じで t を返すように。

(defun continue-continuous-dabbrev-popup ()
.....
(dabbrev-popup)))
t)

それと「うまくいかない」をもう少しお願いします。
331 313 [sage] 05/03/02 13:13:40 ID:CqnjSyhi
>>330
説明不足ですみません…。
「うまくいかない」とは" \n,(){}[]<>"らのキー入力を含んでいると
ndmacroにはキーとして認識されない場合があるということです。

指摘のとおり最後の部分にもtを返すようにしたら
無事にうまく動作するようになりました!
ホントにありがとうございます!!
なぜtを返すとよかったのか理由がわからないんですが
lisp勉強して理解できるようになりたい…。
332 名無し~3.EXE [sage] 05/03/02 13:37:17 ID:HCK6q7u6
ndmacroで使っているcommand-executeが途中でnilを返すコマンドにあたるとそ
こで止まっちゃうみたいです。
だからnilを返さないようにしてみたらどうだろうということです。

このあたり詳しくないので何か問題あるかもしれませんが、
そのときはまたそのときに。
333 313 [sage] 05/03/02 14:37:41 ID:CqnjSyhi
>>332
詳しい説明ありがとうございます。
理由がわかって納得しました。

ちなみに
JavaTinyConsoleでも同様の症状がみられたので
jtc-complete.lで
jtc-insert-open-paren
jtc-insert-close-paren
の二つがtを返すようにしたらうまく動作しました。

ホントにありがとうございました。
334 名無し~3.EXE [sage] 05/03/03 11:52:26 ID:OPD9xhLW
質問です.
xyzzy で Windows 版の Chez Scheme を書いている方はいらっしゃいませんか?

私は最近 xyzzy を使い始めたのですが,lisp-mode で書いて,Petite Chez Scheme
のコンソールにコピペしています.もっと良いやり方は無いものでしょうか?
*scratch* バッファがうらやましいです.

なお,M-x shell モードだと,
・なぜかユーザの入力値が消えてしまう.
・非力なマシンだと,shell モードは大変重い.
という理由で,現在は使っておりません.

どなたか,アドバイスをお願いします.
335 名無し~3.EXE [sage] 05/03/03 12:08:08 ID:GiJb42sp
>>334
質問がよくわかりません
336 334 [sage] 05/03/03 12:28:21 ID:OPD9xhLW
では,質問を言い換えてみます.
コンソールアプリである Petite Chez Scheme の開発環境として,xyzzy を
使う場合,何か良いやり方はありませんか?.

理想としては,*scratch* バッファのような,xyzzy 内でそのまま
S式が評価されるようなものがあれば最高なのですが.

shell モードがそれに近いかと思いましたが,上記の理由でうまく行かず,
結局,単なるエディタとして使っているのが私の現状です.xyzzy を使う
メリットはキーバインドとオートインデントのみになっています.

まあ,このレスも xyzzy ではなく emacs で書いているぐらいの初心者なのですが.
337 名無し~3.EXE [sage] 05/03/03 12:42:06 ID:SdBioL8Q
そもそもChez Schemeってなに?^^;
338 334 [sage] 05/03/03 12:54:14 ID:OPD9xhLW
http://scheme.com/
Chez Scheme は,Lisp の方言である Scheme の代表的な実装の一つです.
高速性が売りです.

インタプリタ/コンパイラなのですが,インタプリタのみの Petite Chez Scheme
はフリーで配布されています.
http://scheme.com/csv6.9c/

Dr.Scheme と並んで,Windows でもっとも手軽に使える Scheme だと思います.
339 名無し~3.EXE [sage] 05/03/03 13:04:07 ID:VzukkWtl
>>334
xyzzy の代わりに ChezEdit じゃだめ?
340 334 [sage] 05/03/03 13:12:17 ID:OPD9xhLW
>>339
以前は使っていましたが,現在のマシンは,Windows98 なのです.
ChezEdit は使えません.良いソフトなのですが.

また,マシンが非力なので,Petite Chez Scheme にバンドルされた開発環境は
重すぎて使用は困難です.
341 名無し~3.EXE [sage] 05/03/03 15:49:49 ID:GiJb42sp
>>340
shell3.l か shell-ext.l も試してみた?
あと, ひょっとしたら, bash用とコマンドプロンプト用とで
さらに表示に変化があるかも.
それでだめだと,専用のモードを自作するしかないんじゃないの
342 名無し~3.EXE [sage] 05/03/03 15:56:29 ID:iS8WNg0b
>>340
Chez Scheme のプロセスを利用するのが普通だけど重いって言ってるしなあ。
elisp に対する emacs.l みたいなのを書けばよいんだろうけど、scheme に詳しい人じゃ
ないと難しいんじゃないかなあ。
俺も scheme 勉強したいので欲しいけど。
343 334 [sage] 05/03/03 18:23:57 ID:OPD9xhLW
shell3 は試しましたが,結果は同じで,ユーザ入力の内容が消えてしまうので,
*scratch* バッファの代用にはなりませんでした.

shell-ext は,今試してみましたが,うまくインストールできませんでした.

emacs.l, elisp.l とは,何をするものなのでしょうか?ダウンロードしてみ
ましたが,よく分かりませんでした.Scheme とは無関係そうですが.

それにしても,xyzzy ユーザには Scheme プログラマも多いだろうと
思っていたのですが,定番となる環境は無いのでしょうか.残念です.
しばらくは単なるエディタとして,xyzzy を使うことにします.
ありがとうございました.

Scheme は素晴らしい言語です.Scheme をマクロに採用した xyzzy が出れば
良いのに,とよく思います.
344 名無し~3.EXE [sage] 05/03/03 20:22:45 ID:YKncKhqK
電波警報
345 名無し~3.EXE [sage] 05/03/03 20:35:21 ID:/UQB5K+a
>>343
scheme-mode なんてものもありますが、試してみましたか?
ttp://fun.sci.fukuoka-u.ac.jp/RWiki/rw-cgi.rb?cmd=view;name=xyzzy#label:7

xyzzy の shell-mode はターミナルエミュレーターになっているわけではないので、
対話的なやつは全部ダメです。ターミナルエミュレーターとして使いたければ
tterm.l を活用するアプローチを考えないといけません。
346 名無し~3.EXE [sage] 05/03/03 22:09:51 ID:xSVRL4tz
いまさらですが>>290頂きますた。ものすごく便利です。Thx
ID厨な自分はもう消えてますが>>25のと併用して(・∀・)ニヤニヤしてます。
347 334 [sage] 05/03/03 23:53:35 ID:OPD9xhLW
>>345
ご返事,ありがとうございます.
Scheme モードですが,実は入手して,使い方のよく分からぬままでおります.

tterm.l を活用,とのことですが,そのまま使えるというわけではなくて,それを
参考に Scheme インタプリタと通信するマクロを書け,ということでしょうか?

ちょっと時間がありませんので,とりあえずこれだけ.
348 名無し~3.EXE [sage] 05/03/04 00:25:10 ID:VbtlS8lM
英辞郎CD-ROMデータ(古いやつ)で辞書引きモードに成功しました。

今まで知らなかったなんて損していた気分です。昔アストロビスタ氏が
紹介していたロボワードと同じ操作ですね。クリックすらいらない、マウス
ポインタを合わせるだけで訳語がポップアップされる。

http://diary.noasobi.net/2002/08/diary_020829a.html
ここの人はまじめに英辞郎-A.txt,英辞郎-B.txt〜英辞郎-Z.txt
とファイルを作っていますが
eijiro52.tx → 英辞郎-A.txt とリネームするだけでOKでした。
略辞郎を英辞郎-B.txt という名前にしておいてからgendicすると
いい感じです。
349 名無し~3.EXE [] 05/03/04 00:34:52 ID:JEY5DHpZ
正直英辞郎ならWeb版ひいたほうがよい
350 名無し~3.EXE [sage] 05/03/04 00:46:36 ID:VbtlS8lM
eijiro.l を使うってことですか?
351 名無し~3.EXE [sage] 05/03/04 00:51:29 ID:iOQvHbzG
>>347
> Scheme モードですが,実は入手して,使い方のよく分からぬままでおります.
そうですか。まぁ、頑張ってください。

> tterm.l を活用,とのことですが,そのまま使えるというわけではなくて,それを
> 参考に Scheme インタプリタと通信するマクロを書け,ということでしょうか?
例えば Cygwin だと cygterm というソフトがあってそれを利用できます。
また、TELNETでlocalhostにアクセスして使うとか。(使えるかどうかは知りませんが)

もちろん、Scheme インタプリタと通信するマクロを書くという方法もありです。
352 334 [sage] 05/03/04 09:22:20 ID:i6Q32Xc+
>>351
ありがとうございます.Cygwin はちょっと重くてきびしいです.また,Windows98
が telnet サーバとして機能するという話は聞いたことがありません.
結局,自分でマクロを書くしかないようですね.

私は emacs のカスタマイズもほとんどしたことがなく,emacs-lisp や
Common Lisp はどうも苦手なのですが,この機会に勉強するのもいいかも
知れません.お世話になりました.
353 名無し~3.EXE [sage] 05/03/04 20:12:56 ID:AJGpbQUz
>>290

ID 検索を超便利に使わせてもらっていますが、メッセージ・ボックスは
内容がウインドウに収まらない時 (=スクロール・バー右に出る時)
しか、クリップボードにコピーできないのでしょうか?
354 名無し~3.EXE [sage] 05/03/04 21:43:34 ID:9R/v4sY/
>>353
そうみたいですね。
どうしてもコピーしたければ、Copit などを使うか、
ダイアログボックスのエディットコントロールに内容を
表示するように書き換えるかだと思います。
355 名無し~3.EXE [sage] 05/03/04 23:11:39 ID:+MEKG3+m
亀さんのぺぇじ、久しぶりに覗いてみたらリンク切れ多数…。もおやる気ないのかな。
356 名無し~3.EXE [sage] 05/03/06 07:36:48 ID:7+6F5CZ/
前スレの >>632 さんが、KaTeX における latexmk の使用方法に
ついて質問していましたが、現在 html 化の最中でみれません。

その後の展開あるいは解決策を御存じの方、御教えていただけたら
幸いです。
357 名無し~3.EXE [sage] 05/03/06 08:06:35 ID:4lcq2NT5
>>356
過去ログはにくちゃんねるでみられますよ。
358 名無し~3.EXE [sage] 05/03/06 08:30:22 ID:7+6F5CZ/
>>357

どもです。無事、問題も解決しました。
359 名無し~3.EXE [sage] 05/03/07 19:36:34 ID:7RKvZ0iM
>>334
当方、WinXPですがちょっと入れて試してみました。
で、やっと状況が分かりました。
> ・なぜかユーザの入力値が消えてしまう.
けど、値はちゃんと返ってくるじゃないですか。
だったら、
(setq *shell-echo* nil)
で残るようになります。つーかなりました。
360 名無し~3.EXE [sage] 05/03/07 20:05:30 ID:7RKvZ0iM
>>334
あと、サブプロセスを起動しておきたくないんだったっけ。
filter-region を使うアプローチで大丈夫でした。
素の filter-region だと region を置き換えるので
それを残すように変更すればとりあえず使えるんじゃないですか?
361 名無し~3.EXE [sage] 05/03/08 21:47:04 ID:qZtwdblj
すいません。ちょっと質問です。
ダイアログボックスの位置をずらさずにコマンドを実行できないかと思っているのですが、
ダイアログを閉じずにコマンドを実行する、または、ダイアログの現在の表示位置を取得する、
ということはできるのでしょうか?
362 名無し~3.EXE [sage] 05/03/08 23:25:50 ID:oR0y2947
>>361
スレ違いでなければ、
・「何のダイアログボックス」の位置をずらさずに
・「何のコマンド」を実行しようとしている
のですか?
行おうとしていることを具体例で書いてみてください。
363 名無し~3.EXE [sage] 05/03/09 00:11:59 ID:NzMBrht8
>>362
説明がわかりにくくてすみません。
このコード
http://xyzzy.s53.xrea.com/wiki/?cmd=read&page=tips%2F%B8%A1%BA%F7%B7%EB%B2%CC%A4%F2%A5%C0%A5%A4%A5%A2%A5%ED%A5%B0%A5%DC%A5%C3%A5%AF%A5%B9%A4%C7%C9%BD%BC%A8%A4%B9%A4%EB
を書いた者なんですが(dsearch.l(regexp-keyword-list を使用)というのが該当のものです。)
、検索結果を表示したダイアログボックスから「上検索」・「下検索」・「元に戻す」で該当行に
移動した時に、その行がダイアログボックスに隠れてしまって見にくいことがあるので、ダイアログ
ボックスをドラッグして画面端などに移動したままで該当行に移動できないかなと思ったのです。
一応ダイアログボックスの位置と該当行の表示位置を指定できるようにしているのですが、
ドラッグした位置をキープできればベストのような気がしますので。
この問題は今の私では解決できないような気がするので質問させて頂きました。
364 名無し~3.EXE [sage] 05/03/09 01:17:00 ID:2wb3HZ//
>>363
そもそも、(dialog x y w h ....) の x y で指定できる値は、
正確にはどこを基準としているのでしょうね。
365 361 [sage] 05/03/09 01:42:03 ID:xdqX5Odh
>>364
試してみたところ、x y が両方とも 0 ならばダイアログの大きさに応じて位置を自動調整、
どちらかが 0 でないなら x は xyzzy のウィンドウの左端からわずかに右にずれた所、
y は ツールバーをメニューの下に表示した場合のメニューとツールバーの境目の所、
を基準としているようです。
366 名無し~3.EXE [sage] 05/03/09 01:45:54 ID:V2Weqg9O
>>363
かなり難しいね. winapi の知識がないと無理かも.
その使い方だと,ダイアログは 移動しているのではなくて,
いったん消した後,再度作り出していることになる.
そのときに位置を指定してやれば(dialog の 第1,第2 引き数),
希望の場所に表示できるけど,ダイアログの場所がどこにあるか
dialog-box は返り値として返してくれないので自分で取得しないといけない.
そのためには,dialog-box を再実装する(c++で)しかおれには思いつかない.

xyzzyでMDIを使った例をずいぶん前に誰かが公開していたけど,それも
単純にテキストを表示しているだけで,xyzzyのダイアログほど高機能ではなかった.

とりあえずは c++ のソースを自分で読んでみることだね.
winapiで何とかなるかもしれないけど,そのためにもソース読んだほうがいいでしょ.
367 361 [sage] 05/03/09 02:09:42 ID:xdqX5Odh
>>366
コメントどもです。
やはり難しいですか。私、C++ は全くわからず開発環境もありませんが、
そのうち時間をみつけて調べてみようかと思います。
成果を公開できるとしてもかなり先になると思いますが。
368 名無し~3.EXE [sage] 05/03/09 02:51:52 ID:wyc8Kujc
WinAPIアリなら、検索ダイアログのキャプションを使って FindWindow でハンドル取得して、
MoveWindow を呼び出せば良いと思われ。
369 361 [sage] 05/03/09 23:07:07 ID:0Trj9pn3
>>368
コメントありがとうございます。
試してみたんですが、ダイアログボックスはボタンを押すとウィンドウが
閉じてしまうので、FindWindow でハンドルを取得することはできないようです。
やるとすれば、やはり C++ でダイアログを再実装するしかないような気がします。
とりあえず現状では無理らしいということが分かったので、当面は今のままで
使おうと思います。
皆さんご指導ありがとうございました。
370 名無し~3.EXE [sage] 05/03/11 03:49:13 ID:o2pnOVcD
テキストのエンコーディングを utf8n にするため
テキストの一行目に // -*- encoding: UTF-8N -*- と書いてみたのですが
認識されませんでした。
UTF8N, UTF-8N, UTF-8-N, UTF8-N いずれも駄目で。
書き方間違ってますでしょうか…?

# UTF-8 なら認識されるのですが...
371 名無し~3.EXE [sage] 05/03/11 04:04:00 ID:R0fxpv5h
>>370
Lispをあまりよく知らない俺だが、適当に調べた結果
siteinit.l に次のように書くと取りあえずうまく行くことがわかった

(in-package "editor")
(setf (gethash "UTF-8N" *mime-charset-name-hash-table*) *encoding-utf8n*)

が、この方法で本当に大丈夫なのかはわからんので
あとはエロい人よろしく。。。
372 370 [sage] 05/03/11 09:46:24 ID:o2pnOVcD
>>371
迅速で的確なご教示をいただき、ありがとうございます!
371さんの仰る通りの方法で -*- encoding: UTF-8N -*- がうまく
認識されるようになりました。

延々とエンコーディング名を変え続けて、はまっておりました。(^^;
おかげさまで、大変助かりました。ありがとうございます。
373 名無し~3.EXE [sage] 05/03/12 14:44:41 ID:KIMijmOI
だれかftpupdateとftpdownをうpしてください
374 名無し~3.EXE [] 05/03/12 15:25:32 ID:JgChrOZl
       ___r'⌒ヽ_
     /  l、__,/}::\
     (T´ | ゝ_ィ>};;_.」   もうすぐこんな世の中になるかもしれない
       ! `''ァ、. \__}  http://gazo01.chbox.jp/misc/src/1110504805506.jpg
     〈`^`¬ノ . :〔    
 ,... -- |__イ-、_j|_: . ヽ、--.,,__
´     rニト,  フ ,ゝ__ 〉   `
    └-'´  '.-”

みんなもメールを自民党、官邸、法務省などに送るんだ!!
1つのメールや電話で世の中は変るぞ!!

【人権擁護法案】「朝鮮総連関係者も選任されるのか」自民、審議大荒れ★2[03/11]
http://news18.2ch.net/test/read.cgi/news4plus/1110531032/l50
375 名無し~3.EXE [sage] 05/03/13 00:30:03 ID:2FFKeV41
自分がまだmlに参加してたこと忘れてたよ。
ちょっとびっくりした。
376 名無し~3.EXE [sage] 05/03/13 00:48:31 ID:Oe7F7fAx
>>374
これは挨拶した側の自国語を使う権利も侵害してないか。
377 名無し~3.EXE [sage] 05/03/13 00:56:25 ID:vzkcMxW8
巨大なifのある分岐にきたらそれ以降は処理中断とかしたいときに
quit使ってるんだけどこれだと終わりすぎなので、
返り値返してその関数だけ抜ける方法ってないんですか?
他に書き方あるのかな。。。
378 名無し~3.EXE [sage] 05/03/13 01:00:11 ID:Ka5M8EUr
例外処理を調べたら何とかなりそう
要はsimple-errorを捕捉すればいいんでしょ
379 名無し~3.EXE [sage] 05/03/13 01:05:29 ID:7RDE/3gv
ttp://www.geocities.jp/m_hiroi/xyzzy_lisp/abclisp11.html
380 377 [sage] 05/03/13 12:46:49 ID:vzkcMxW8
コンディションでもいいんだけどなんかむずいし
どっちみちブロックで囲む必要があるっぽいので
block nilで関数の最後まで囲んでreturnで抜けることにしました
Hiroiさんのとこ読めばわかることでしたね
失礼しました

;雪降ってる・・工エエェェ( ´д`)ェェエエ工工
381 名無し~3.EXE [sage] 05/03/13 12:49:12 ID:sa2Ne2eb
Meadow/Emacs Memo をヒントに書いてみました。migemo は考慮していません。
;; isearch の時一文字ずつ追加
(defun isearch-yank-char ()
(interactive)
(let* ((start (+ (point)
(or (length *isearch-current-string*) 0)))
(end (save-excursion
(goto-char start)
(1+ (point))))
(next-word (buffer-substring start end)))
(if (and *isearch-smart-case*
(eq *case-fold-search* :smart)
(not (string-match "[A-Z]" *isearch-current-string*)))
(setq next-word (string-downcase next-word)))
(isearch-push-status)
(isearch-scanner (concat *isearch-current-string* next-word) nil)))
(define-key *isearch-map* #\C-d 'isearch-yank-char)
;; 一文字ずつ削除
(defun isearch-real-delete-char ()
(interactive)
(unless (< (length *isearch-current-string*) 1)
(setq *isearch-current-string*
(subseq *isearch-current-string* 0 (1- (length *isearch-current-string*)))))
(setq *isearch-this-command* 'isearch-search-history-forward))
(define-key *isearch-map* #\C-o 'isearch-real-delete-char)
382 名無し~3.EXE [sage] 05/03/13 13:12:54 ID:Ka5M8EUr
>>380
blockでもいいけど, cond, case の方が適している気がしなくもない
383 名無し~3.EXE [sage] 05/03/13 13:42:08 ID:iYCKgFmO
>>380
return-from 関数名 ではだめなの?
384 380 [sage] 05/03/13 14:44:54 ID:vzkcMxW8
>>383
(defun 関数名()
(return-from 関数名 &返り値))
で返り値を返して終了みたいなので余裕でOKっぽいです
関数もブロックだからreturn-fromに名前が書けるってことか・・・
って>>379のHiroiさんのとこに書いてあるな(汗)
失礼いたしました
385 名無し~3.EXE [sage] 05/03/17 16:59:26 ID:j6DFk/Ap
バージョンアップ来た。びびった。
386 名無し~3.EXE [sage] 05/03/17 17:14:36 ID:hXBh6MmK
>>385
つまんねえ釣りだな




















ほんとにキタ━━━━━━(゚∀゚)━━━━━━!!!!
387 名無し~3.EXE [sage] 05/03/17 17:18:10 ID:9dx8iYt4
Thu Mar 17 2005 Version 0.2.2.234
なんかいろいろ
388 名無し~3.EXE [sage] 05/03/17 18:19:27 ID:ez0Iknag
サポート終了したとか言われた頃使い始めたから
何やら奇跡を目の当たりにしてますよ?


ありがとう━━━━━━(゚∀゚)━━━━━━ !!
389 名無し~3.EXE [sage] 05/03/17 19:19:23 ID:rarqEXsX
何が変わったのかは分からないけど
キタ━━━━(゚∀゚)━━━━!!!!!!
390 名無し~3.EXE [sage] 05/03/17 19:30:49 ID:NWfu+jm0
キタ━━━━━━(。∀゚)━━━━━━ !!
391 名無し~3.EXE [sage] 05/03/17 19:40:48 ID:a7+vl0LW
ソースもきたー
392 名無し~3.EXE [sage] 05/03/17 19:41:00 ID:VQYwTH0e
マジでキタ━━━━━━(゚∀゚)━━━━━━ !!!!!
393 名無し~3.EXE [sage] 05/03/17 19:57:49 ID:cIJDqedY
ソースのREADMEから「公開やめようかなぁ」がキエトル━━━━━━(゚∀゚)━━━━━━ !!!!!
深い意味はないかもしれない、ないかもしれないけど亀井さんありがとう
394 名無し~3.EXE [sage] 05/03/17 20:13:29 ID:VQYwTH0e
ole-for-each キタ━━━━━━(゚∀゚)━━━━━━ !!!!!
これまじでほしかった。

detect-c-or-c++-modeも便利。*.hを読むときにCかC++か判別してくれるっぽい。
395 名無し~3.EXE [sage] 05/03/17 20:20:36 ID:VQYwTH0e
(si::defun-builtin www-url-encode (input-string-or-stream &optional output-stream literal-chars))
(si::defun-builtin www-url-decode (input-string-or-stream &optional output-stream))
(si::defun-builtin filer-calc-directory-size (&optional keep-marks))
(si::defun-builtin filer-calc-directory-byte-size (&optional keep-marks))
(si::defun-builtin ole-enumerator-next (oleobj))
(si::defun-builtin ole-enumerator-reset (oleobj))
(si::defun-builtin ole-enumerator-skip (oleobj &optional count))
(defun find-buffer-colors (buffer)
(defun calc-fact (n)
(defun calc-rshift (x y) (ash x (- y)))
(defun calc-primary-expr ()
(defun calc-postfix-expr ()
(defun calc-unary-expr ()
(defun calc-multiplicative-expr ()
(defun calc-assign-expr ()
(defun calc-expr ()
(defun detect-c-or-c++-mode ()
(defun show-dexplorer ()
(defun filer-delete-mask-string (mask &optional (prefix ""))
(defun filer-delete-mask ()
(defun isearch-paste-or-exit ()
(defun switch-pseudo-frame (name)
(defun pseudo-frame-selector ()
(defmacro calc-assoc-left (name next operators)
(defmacro calc-assoc-right (name next operators)
(defmacro lambda (&whole form &rest bvl-decls-and-body)
(defmacro protect-match-data (&body body)
(defmacro ole-for-each ((var obj &optional (resultform nil)) &body body)
396 名無し~3.EXE [sage] 05/03/17 20:21:15 ID:VQYwTH0e
(defvar *dexplorer-object* nil)
(defvar *dexplorer-help* nil)
(defvar *dexplorer-collection* "ms-help://ms.vscc")
(defvar *dexplorer-filter* "Visual Studio .NET Combined Help Collection")
(defvar *loading-user-initial-file* nil)
(defvar *filer-delete-mask-list*
(defvar *filer-delete-mask* nil)
(defvar *auto-mode-last-buffer* nil)
(defvar *find-file-auto-mode-function* nil)
(defvar *match-data-pool* (let ((r nil))
(defvar .keyword-package. (find-package "keyword"))
397 名無し~3.EXE [sage] 05/03/17 20:26:20 ID:BrzEFI42
ソースコードって(^m^)だっけ?
398 名無し~3.EXE [sage] 05/03/17 20:28:56 ID:WQ3mNow9
vctk2003で無事にビルドでキタ━━━━━━(゚∀゚)━━━━━━ !!!!!
前バージョンでソースの変更してた箇所は修正されてますた
399 名無し~3.EXE [sage] 05/03/17 20:32:20 ID:VQYwTH0e
>>397
(T^T)
400 名無し~3.EXE [sage] 05/03/17 20:34:21 ID:BrzEFI42
>>399
そうそう、これ。今必死にMLのアーカイブ漁ってたよ。ありがとう
401 名無し~3.EXE [sage] 05/03/17 21:08:32 ID:VXqo2liW
オレが使い始めて初めての更新
キタ━━━━ヾ(゚∀゚ )人(゚∀゚)人( ゚∀゚)ノ〃━━━━!!!!!

で、何が変わったの??
402 名無し~3.EXE [sage] 05/03/17 21:17:00 ID:d4QRvhmm
>>401
何が変わったのかはよーわからんが
0.2.2.233 => 0.2.2.234 で
lisp フォルダは、

"about.l" "app-menu.l" "basic-mode.l" "buffer.l" "builtin.l" "calc.l" "calendar.l"
"cc-mode.l" "cfns.l" "cmdbar.l" "cmds.l" "dabbrev.l" "defs.l" "den8view.l" "dialogs.l"
"errors.l" "estartup.l" "evalmacs.l" "filer.l" "files.l" "glob.l" "gmark.l" "grepd.l"
"gresregd.l" "isearch.l" "kbdmacro.l" "lispmode.l" "list.l" "listfn.l" "loptprop.l"
"maketags.l" "menu.l" "misc.l" "monkey.l" "niftylog.l" "ole.l" "optprop.l" "paragrph.l"
"pframe.l" "search.l" "session.l" "setf.l" "sexp.l" "tags.l" "timestmp.l"

が変更されている模様。バグとか、かなり潰されていると思う。
403 名無し~3.EXE [sage] 05/03/17 21:18:01 ID:VXqo2liW
>>402
トンクス

オレが見た感じだとメニューのカタカナが全角になったくらいしか
わからんかった…。
404 名無し~3.EXE [sage] 05/03/17 21:23:40 ID:DtqYcXS4
いまさらだがキタ━━━━━━(゚∀゚)━━━━━━!!!!!
DLしてくる。
405 名無し~3.EXE [sage] 05/03/17 21:41:02 ID:Sw91HQYK
>>402
> バグとか、かなり潰されていると思う。
0.2.2.233 でこれって言うバグあましたっけ?
安定してると更新されてもあまり実感がないのが悔しいですね。
これからじわじわと改良されてるところが明るみに出るのでしょうか。

なにより作者さんが達者でおられることがわかっただけで嬉しいです。
406 名無し~3.EXE [sage] 05/03/17 21:52:24 ID:lBhrdi1a
半角 => 全角カナやMS Pゴシック => MS UI Gothic で
変わってるだけのファイルも多いけど。
日付を見るとこまめに更新されてたみたいですね。

>>405
バグというバグは無いと思うけど、
1582年10月の表示が直ってます。( ̄ー ̄)y-~~~~
407 名無し~3.EXE [sage] 05/03/17 22:13:17 ID:XTvRa705
IMEがONで(ローマ字でなく)カナ入力だとM-x等ができない.
408 名無し~3.EXE [sage] 05/03/17 22:14:48 ID:MzZPhRdp
とりあえずスクロール関係がおかしかった一番重要なバグがつぶされているのが嬉しい。
今までは折り返さないと文字が全部読めなかったから。
409 名無し~3.EXE [sage] 05/03/17 22:25:42 ID:MzZPhRdp
ああ…なおってなかった。
410 名無し~3.EXE [sage] 05/03/17 22:27:04 ID:MzZPhRdp
GrepとGresregの結果表示で同じ症状が出る。
411 402 [sage] 05/03/17 22:45:11 ID:d4QRvhmm
とりあえず、buffer.l をみて
*buffer-bar-hook*
というのが追加されているのを発見した。
buffer-bar をマウスで切り替えると作動する hook でかなり嬉しい
こんな感じ
(add-hook '*buffer-bar-hook* #'(lambda (buffer) (message "~A" buffer)))

ML で昔報告された *post-command-hook* のバグも多分なくなっていると思う。

こういう追加された機能やつぶされたバグがあったら教えてくらはい。
412 名無し~3.EXE [sage] 05/03/17 23:26:29 ID:imMxuNVU
>>407
http://xyzzy.s53.xrea.com/wiki/?%BC%C1%CC%E4%C8%A2%2F29
413 名無し~3.EXE [sage] 05/03/17 23:44:36 ID:wc1fWdn9
新しいバージョンでは
explorer.l でxyzzyのツールバーからexplorerを起動すると、C-x が効かなく
なるみたいなんだけど何でだろう?
414 名無し~3.EXE [sage] 05/03/17 23:58:07 ID:cJbdwN0l
いや、マジで
415 名無し~3.EXE [sage] 05/03/18 00:08:49 ID:XAw9Tura
>>412
こういうのがあったとは.
どうもありがとうございます.
今まではmayuで対応してた.
416 名無し~3.EXE [sage] 05/03/18 02:11:51 ID:Bbkbj0zJ
ソースはどこにあるんですか?
417 名無し~3.EXE [sage] 05/03/18 05:12:46 ID:iZDTAbXW
/(T^T)/
418 名無し~3.EXE [sage] 05/03/18 10:40:46 ID:qKgWsS79
http://www.jsdlab.co.jp/~kamei/(T^T)/src-0.2.2.234.tar.bz2
419 名無し~3.EXE [sage] 05/03/18 11:29:04 ID:4SUcFxwG
multi-mode対応の一発インデントってないの?
420 名無し~3.EXE [sage] 05/03/18 11:37:36 ID:wTmNoMZs
>>419
まかせた
421 名無し~3.EXE [sage] 05/03/18 19:28:56 ID:tJrheRG8
自分で書くのがはやいと思うよ。
422 名無し~3.EXE [sage] 05/03/19 00:59:24 ID:Nqk3UA7d
カナが全角になっただけで5年分くらい新しくなった希ガス
423 名無し~3.EXE [sage] 05/03/20 17:05:18 ID:H6UmTF8J
xyzzy バージョンアップして、2ch-mode バイトコンパイルし直したら、
スレ読み込む時に「不正な関数です: 2ch-mode::tbk-point」ってでるようになった。

皆は平気?
424 名無し~3.EXE [] 05/03/20 17:23:27 ID:ODBcG1YO
>>423
コンパイルし直さずに、中間コードファイルコピーし
て使ってるけど、いまのところ特に問題なし
425 423 [sage] 05/03/20 19:27:53 ID:H6UmTF8J
>424 レスサンクス。
かなり悩んで、あちこち弄りまっくったけど、
どういう訳か aborn.l 入れ直したら直りました。
426 [sage] 05/03/20 22:57:57 ID:dETf5U0J
>>425
tbk-point はマクロなので、恐らく

ttp://www.geocities.jp/m_hiroi/xyzzy_lisp/abclisp17.html の、
●マクロをパッケージにまとめる場合

関係でしょうね。今まで aborn.l をバイトコンパイルしていないで使っていたが
今回バイトコンパイルして使うようになったとか、
前は aborn.l をバイトコンパイルする前に tbk-point が定義されていたファイルをロードしていた
とかかなぁ…?
427 名無し~3.EXE [] 2005/03/21(月) 13:19:34 ID:XQtDR/As
2ch-modeで文字コードの判定がおかしいのか、一部の板やスレが
文字化けして表示されます。同じ症状の人いませんか?
たとえば、今現在、家電製品板のスレ一覧を見るとバケバケです。
subject.txtを多言語ビューワで見るとちゃんとEUC-JPファイルとして
読めるので、ダウンロードは正常にできているようなのですが。
428 名無し~3.EXE [sage] 2005/03/21(月) 13:24:36 ID:6jyCZRHe
>>427
そんなことないなー。
板一覧(*2ch-base-url*)はどこの使ってる?
私はttp://azlucky.s25.xrea.com/2chboard/なんだけど。
429 名無し~3.EXE [sage] 2005/03/21(月) 13:55:40 ID:XQtDR/As
うーん私だけみたいですね
板一覧は
http://www.ff.iij4u.or.jp/~ch2/
ですね
430 名無し~3.EXE [sage] 2005/03/21(月) 14:29:06 ID:PfmUFsZZ
自分も化ける。Emacs Part13 とか。
431 名無し~3.EXE [sage] 2005/03/21(月) 14:45:45 ID:I1Bog+LH
2ch-modeについては無知なのでうまく答えてあげられないけど,
とりあえず Emacs Part13 は化けなかった
432 [sage] 2005/03/21(月) 18:21:37 ID:orYvZBGE
>>427
 2ch の subject.txt は Shift_JIS のはずなので、それは文字コ
ードがおかしくなっていると思います。なぜおかしくなっているの
かはわかりませんが…
433 名無し~3.EXE [sage] 2005/03/21(月) 18:40:43 ID:XQtDR/As
>>432
ああ、すみません。ShiftJISでした。
>>427のカキコが間違いです。
434 名無し~3.EXE [sage] 2005/03/21(月) 19:14:37 ID:oDKjPdB9
最近突然 lispmode でインデントや改行をするたびにエラーが出るようになりました。
トレースはこんなのが出ます。

>CALL STACK 4: (match-data #(nil nil nil ...))
>CALL STACK 3: (system:*byte-code ...)
>CALL STACK 2: (#<lexical-closure: lisp-indent-line>)
>CALL STACK 1: (command-execute lisp-indent-line)
不正なデータ型です: #(nil nil nil nil nil nil ...): match-data

調べてみたところ、どうも lisp-indent-line の中で protect-match-data を展開した後
store-match-data に #(nil nil nil ...) が渡されてエラーになっているようです。

siteinit.l をリネームしてダンプし直し、 -q オプションをつけて起動してみましたが
やはりこの症状が出ます。
設定ファイルの問題ではないということでしょうか・・・
435 434 [sage] 2005/03/22(火) 20:59:35 ID:5ed4Z3eg
.xyzzyに
(setq ed::*match-data-pool* nil)
って書いたらとりあえずエラーは出なくなりました。
が、これでいいのかどうか不安です・・・
436 名無し~3.EXE [sage] 2005/03/23(水) 00:02:12 ID:Xjnnkj5T
>>408

相変わらずカレント行の端までしかスクロールしないけど、、、
これのことじゃないのかな?
437 名無し~3.EXE [sage] 2005/03/23(水) 01:11:20 ID:GzN0SMpl
文字化けの原因わかりました
これと同じでした
http://www.bookshelf.jp/2ch/software/1054141308.html#R76
しかし!ここに書いてあるhookを入れても直らない
仕方ないのでSJISをデフォルトにしますた・・・
438 名無し~3.EXE [sage] 2005/03/23(水) 23:53:10 ID:6mj7rUFk
>>437
同じく。
439 [sage] 2005/03/24(木) 00:31:07 ID:cmDGNQg+
>>437-438
 ということは、2chmenu.html やら subject.txt やら *.dat や
らが EUC-JP になってしまっているということでしょうか?

 2ch-mode を導入した直後の 2chmenu.html の取得は
*2ch-start-hook* より前に行われるので導入直後の1回は
http://www.bookshelf.jp/2ch/software/1054141308.html#R76
のやり方ではだめなような気がしますが、それ以外では
上手くいきそうな感じがするんですけどねぇ…。なんでだろう…?
440 名無し~3.EXE [sage] 2005/03/24(木) 00:53:12 ID:MEjolqm+
>>439
>  ということは、2chmenu.html やら subject.txt やら *.dat や
> らが EUC-JP になってしまっているということでしょうか?

いえいえ、dat や subject.txt 自体はちゃんと SJIS で保存されて
いるんですが、一部のスレッドに SJIS としては不正なシーケンスが
含まれているんです。たとえば 0xa0 0xa0 みたいな。

そうすると、おそらくは xyzzy が文字コードの自動判定に失敗して、
デフォルトのエンコーディングにフォールバックするんですが、
このときデフォルトを EUC に設定していると化ける、SJIS に設定
していると「偶然」化けないってところだと思います。

どこか直すべきところがあるとすれば、2ch の CGI でしょうね…
SJIS のシーケンスとして不正なものをそのまま保存しないでくれと。
まあ、CGI としては byte 列を取り扱う仕様なんでしょうが。

hook が上手く機能しない理由は良くわかりません…
441 名無し~3.EXE [sage] 2005/03/24(木) 16:08:50 ID:fRLTONxU
うほぅ,亀井さん2秒ほどやる気出てる
442 名無し~3.EXE [sage] 2005/03/24(木) 19:37:43 ID:5lfuwXje
うほっ、やる気の量はランダムに決まるのかw
443 名無し~3.EXE [sage] 2005/03/24(木) 22:35:51 ID:BVVdBBxH
何を今さら
444 名無し~3.EXE [sage] 2005/03/24(木) 23:33:56 ID:eFGDHUEo
ランダムに決まるのはやる気のなさの程度であって、やる気があるというのは
怪奇現象だと思われ
445 439 [sage] 2005/03/25(金) 00:06:27 ID:2Pf7SInY
>>440
 うーん… *2ch-start-hook* が走る前に実行されている
menu-load で "2ch: Temp" バッファが作られて、それが使いまわさ
れているのが臭いなぁ…。

 かなり泥臭くて汚いですが、config.l には

(add-hook '*2ch-exit-hook*
          #'(lambda ()
              (setq *default-fileio-encoding* *encoding-euc-jp*)))

 だけ書いて、.xyzzy には

(defun exec2ch ()
  (interactive)
  (setq *default-fileio-encoding* *encoding-sjis*)
  (2ch))

 と書いて exec2ch で起動する…ではどうでしょうか?
446 名無し~3.EXE [sage] 2005/03/25(金) 01:30:39 ID:KbO7EGqa
>>445
それでうまくいきました
ありがとうございます
447 名無し~3.EXE [sage] 2005/03/25(金) 03:49:58 ID:5r3AFtdd
うーん 二日三日前の鯖メンテの頃からPC等カテゴリが"スレ一覧の形式が分からんよ"
になる・・・
448 名無し~3.EXE [sage] 2005/03/25(金) 03:59:12 ID:E1WYuhDY
板一覧の更新してるか?
449 名無し~3.EXE [sage] 2005/03/25(金) 05:23:57 ID:mIsuSq12
質問させてください。
例えば
F8にC-x & を振ってなおかつ、自動で"g++ (現在編集中のファイル名)"を入力させる。
ということができますか?
いちいちC-x &を押してコマンド打つのに疲れましたorz
450 名無し~3.EXE [sage] 2005/03/25(金) 09:18:31 ID:jXJf3zgT
>>447
 自分もなった。で Menu バッファで R を押しても「板更新なし」
になる。実際に 2chmenu.html をブラウザで見ると更新されている
のだが。サーバ上の 2chmenu.html のタイムスタンプがおかしくて
If-Modified-Sinceで更新なしと判断してしまっているのだろうか…。

 …というわけで(?)強引に 2chmenu.html を再読み込みさせる
回避策。ただしちょっと危険なので、2chmenu.html と、
bbsmenu.txt のバックアップは必ずとってから始めてください。

1. 2ch-mode を起動する。
2. 2chmenu.html を削除する。
3. メニューバッファで R を押す。

 これで再読み込みされて、板の移動の動作も起こるはず…。くれ
ぐれも 2chmenu.html を削除するのは 2ch-mode を起動した後にし
てください。2chmenu.html を削除してから 2ch-mode を起動する
と、2chmenu.html が新しくなるだけで、dat ファイル群の移動が
行われなくなってしまうので…。
451 名無し~3.EXE [sage] 2005/03/25(金) 12:07:05 ID:kKgAmFJE
今更だが 0.2.2.234 にバージョンアップ。
気のせいか前より動作が軽快になった気がする。
452 名無し~3.EXE [sage] 2005/03/25(金) 12:16:58 ID:wBf9kWMd
>>447

448でも書かれてるけど、win板などの鯖がpc5.2ch.netからpc8に変わってます
453 450 [sage] 2005/03/25(金) 12:37:44 ID:wndhNX4C
s/実際に 2chmenu.html をブラウザで見ると/実際にサーバ上の 2chmenu.html をブラウザで見ると/
わかりにくいので修正。当然ながら Menu バッファで R で問題なく更新できるなら >>450 は必要ありません。
454 名無し~3.EXE [sage] 2005/03/25(金) 14:59:40 ID:9cEE3owN
板一覧はここを使うといいよ
更新早いし2ch以外の板もタップリ載ってる
http://azlucky.s25.xrea.com/2chboard/bbsmenu.html
455 447 [sage] 2005/03/25(金) 15:59:41 ID:5r3AFtdd
>>448,450,452-454
ありがとう!
(defvar *2ch-base-url* "http://www6.ocn.ne.jp/~mirv/")
になってたのが原因でした。454のに変えたらちゃんと開けました。
456 名無し~3.EXE [sage] 2005/03/25(金) 17:53:54 ID:/Ps6B6P8
>>398
-DDEBUG_GC外したらエラー出た。たいしたことじゃ無いけど。
そんなことより、探し回ってやっとmigemoを拾った。各方面の方々に感謝.
457 名無し~3.EXE [sage] 2005/03/25(金) 18:54:03 ID:lIuMlbRx
>>450
そうか・・・2ch-mode起動させてからR押せばいいのか・・・
めんどくさいの覚悟で2chmenu.html消してからいちいちdatファイル移動してたからなぁ・・・orz

でも勉強になった。
458 名無し~3.EXE [sage] 2005/03/26(土) 14:03:02 ID:uQhTccb3
全角スペースを普段表示しているのですが
2ch-modeの時だけは表示させたくないです。
なんかうまい方法はないですか?
459 名無し~3.EXE [sage] 2005/03/26(土) 16:19:03 ID:K1qj3h+C
つtoggle-full-width-space
460 名無し~3.EXE [sage] 2005/03/26(土) 20:22:02 ID:uQhTccb3
>>459
さんきゅー

でも.xyzzyに
(add-hook '2ch::*view-mode-hook* 'toggle-full-width-space)
ってやってみたらなんも反応せず

(defun view-mode ()
の中に
(toggle-full-width-space nil)
を追加してみたけどやはり動かず…
だれか教えてください
461 名無し~3.EXE [sage] 2005/03/26(土) 21:11:03 ID:ufzIMi0A
>>460
例のごとく、

(add-hook '*2ch-start-hook*
          #'(lambda ()
              (toggle-full-width-space nil)))

(add-hook '*2ch-exit-hook*
          #'(lambda ()
              (toggle-full-width-space t)))
462 名無し~3.EXE [sage] 2005/03/27(日) 13:23:07 ID:B78hagN8
>>413
ども

> 新しいバージョンでは
> explorer.l でxyzzyのツールバーからexplorerを起動すると、C-x が効かなく
> なるみたいなんだけど何でだろう?

試した範囲では再現しないのですが、必ず再現しますか?
もう少し詳しい再現手順を出していただくことは可能ですか?
463 名無し~3.EXE [sage] 2005/03/29(火) 21:37:15 ID:4dr8IcTy
>>462
そのexplorer.lなんですが、C-x f hoge などで新しくバッファをつくって
まだ保存していないときに explorerで開くとエラーになってしまいます。
file-exist-p も見てもらえないでしょうか。
464 名無し~3.EXE [age] 2005/03/29(火) 23:03:50 ID:d1XxqB4j
amazonで本の発注が可能になったのでage
465 名無し~3.EXE [sage] 2005/03/29(火) 23:32:16 ID:Ax5Dx585
とりあえず買い物かごに入れてみた
466 名無し~3.EXE [sage] 2005/03/30(水) 00:29:44 ID:KRN9xzRQ
>>463
ども。

> そのexplorer.lなんですが、C-x f hoge などで新しくバッファをつくって
> まだ保存していないときに explorerで開くとエラーになってしまいます。
> file-exist-p も見てもらえないでしょうか。

おや?
そうしてなかったっけかな、と思って確認してみたら、手元のもののみ
更新していました(2004/09/24)。

更新しときますね。
467 名無し~3.EXE [sage] 2005/03/30(水) 10:30:28 ID:RJKz/WAN
2ch-modeでttp://azlucky.s25.xrea.com/2chboard/bbsmenu.html
から板一覧を取得するconfig.lでの設定法を教えてください。

(setq *2ch-base-url* "http://azlucky.s25.xrea.com/2chboard/")
(setq *menu-file-name* "bbsmenu.html")
(setf (symbol-function 'menu-parse) #'menu-parse-bbstable2)
にしたら
bbsmenu.tstがおっかけとextra_board.txtで設定した分以外吹っ飛んでしまったorz
468 名無し~3.EXE [sage] 2005/03/30(水) 10:38:02 ID:6Lum4M1o
> (setf (symbol-function 'menu-parse) #'menu-parse-bbstable2)
取りあえずこれはいらない。
469 名無し~3.EXE [sage] 2005/03/30(水) 10:47:50 ID:RJKz/WAN
>>468
いらなかったのかありがとう。
昔からつけっぱなしだったから何の疑いもなくそのままでした。
470 名無し~3.EXE [sage] 2005/03/30(水) 15:42:26 ID:rNxBWB2b
お聞きしたいんですが、セレクションの空白だけ削除する方法ってないですかね?
" "を""に置き換えれば出来そうとか考えたんですが、
replace-stringとかだと、バッファ内を置き換えてしまうので、何かいい方法があれば教えていただきたいです。
471 名無し~3.EXE [sage] 2005/03/30(水) 15:51:14 ID:6Lum4M1o
>>470
こんなのどうでそ。
(defun delete-space-in-selection ()
  (interactive)
  (save-excursion
    (save-restriction
      (narrow-to-region (selection-mark) (selection-point))
      (goto-char (point-min))
      (replace-buffer " " ""))))
472 名無し~3.EXE [] 2005/03/30(水) 16:52:58 ID:HE9gVLvf
入手可能で最新の2ch-modeのバージョンっていくつなんでしょうか?
現在自分が使用しているのは0.0.1.1です。
473 470 [sage] 2005/03/30(水) 17:15:20 ID:rNxBWB2b
>>471
すいません、僕の書き方が悪かったですorz
実は、関数の内側で使いたい(空白を抜かした文字列を返したい)んです。
何かヒントをいただけないでしょうか。

#参考になりました。narrow-to-regionで置き換える範囲を制限するんですね。こんな関数があったのか。
474 名無し~3.EXE [sage] 2005/03/30(水) 17:15:58 ID:rNxBWB2b
>>472
今使っているのは0.0.1.2です。
475 名無し~3.EXE [sage] 2005/03/30(水) 17:20:41 ID:6Lum4M1o
>>473
ようはある文字列を正規表現置換したいって事かな。
ならsubstitute-stringとか。
476 470 [sage] 2005/03/30(水) 17:31:58 ID:rNxBWB2b
>>475
(substitute-string (buffer-substring (selection-mark) (selection-point)) " " ""))))

こんな感じで、うまくいきました。
すごく感謝してます。
477 名無し~3.EXE [sage] 2005/03/30(水) 22:59:25 ID:eM4k3W2T
version-up-xyzzyという関数があるのに気付いた
これは何をしてくれるんだろうw
478 名無し~3.EXE [sage] 2005/03/31(木) 00:27:22 ID:gPL/EmVc
ttp://xyzzy.s53.xrea.com/reference/wiki.cgi?p=version%2Dup%2Dxyzzy
479 名無し~3.EXE [] Windows暦21/04/01(金) 19:29:48 ID:W8IKnPtO
scratchでLISPを実行するのにC-jを使いますが、
これを別のキーに割り当てる方法を教えてもらえませんか。
480 名無し~3.EXE [sage] Windows暦21/04/01(金) 20:01:33 ID:hMaorJsA
>>479
ttp://www.uranus.dti.ne.jp/~shiro-/soft/xyzzy/keybind.html#c-i

(defun チラシの裏 ()
(princ "誰か2ch-modeをbeに対応させてくれないかなあ。弄ろうとしたけど漏れのスキルじゃ無理だorz")
(princ "Cookie出力してるところにMDMD=認証コード;DMDM=ID;で出来そうなんだけどなぁ・・・"))
481 名無し~3.EXE [sage] Windows暦21/04/01(金) 23:29:45 ID:2olyLm57
kimoiね。
482 名無し~3.EXE [sage] 2005/04/02(土) 16:50:36 ID:5ajkT2g6
>>480
もしcookieにくっつけるだけでOKならこれでできるような気がしないでもないけど…

(defvar *be-code* nil)
(defvar *be-id* nil)

(setq *be-code* "認証コードを記入")
(setq *be-id* "IDを記入")

(defun form-format-cookie-vars (name email)
  (let ((name-and-mail-cookie    (format nil
                                         "NAME=~A; MAIL=~A"
                                         (url-encode (or name ""))
                                         (url-encode (or email "")))))
    (if (and *be-code*
             *be-id*)
        (format nil "~A; MDMD=~A; DMDM=~A"
                name-and-mail-cookie
                (url-encode *be-code*)
                (url-encode *be-id*))
      name-and-mail-cookie)))

試してはいないので上手くいかなかったらスマヌ。
483 480 [sage] 2005/04/03(日) 11:00:40 ID:6BVQ0q7n BE:14154236-
>>482
キタ━━━━(゚∀゚)━━━━!!
すげぇ。感動しました。

そのまんまじゃログインエラーが出たので、2つめのformatを

(format nil "~A; MDMD=~A; DMDM=~A; "
name-and-mail-cookie
*be-code*
*be-id*)

というふうにするとログインして書き込めました。
本当にありがとうございます。
484 名無し~3.EXE [sage] 2005/04/05(火) 00:23:45 ID:2AUA1TEB
入門書っていつの間にか発売されたんだな。
485 名無し~3.EXE [sage] 2005/04/05(火) 19:29:22 ID:Yaf/eL2Q
でも全然置いてない。
渋谷のとある本屋ではBASICコーナーに置いてあったぞw
書店の書籍検索をしてから探すと吉。
486 名無し~3.EXE [sage] 2005/04/05(火) 19:49:18 ID:N0rNrZJk
藤沢では何故か 7 冊平積みされてたよ。
487 名無し~3.EXE [sage] 2005/04/05(火) 21:16:12 ID:kBOw/kZM
amazonでは4-6週間とか言ってるんだが・・・
488 名無し~3.EXE [sage] 2005/04/05(火) 21:32:40 ID:lsvlB6B1
新宿高島屋の紀伊国屋ではアプリケーションコーナーに数冊置かれてた。
ちょっと読んだ感じでは後ろの百数十ページぐらいだけ欲しいかも
489 名無し~3.EXE [sage] 2005/04/05(火) 23:48:58 ID:Y0m/dVpb
>>487
一週間ほどで来た
490 名無し~3.EXE [sage] 2005/04/06(水) 21:22:35 ID:vfOaW+fI
ファイルの先頭でマイナーモードを指定するのってどうやるんでしょうか?
491 名無し~3.EXE [sage] 2005/04/06(水) 22:44:33 ID:5sv+stqH
>>490
> ファイルの先頭でマイナーモードを指定するのってどうやるんでしょうか?
手抜きだけどこんなのを書けば
(defun ed::find-file-auto-minormode (string)
(ed::find-file-auto-mode string))
(pushnew '("minor" . ed::find-file-auto-minormode) *auto-mode-parameter-alist*)

-*- MODE: Lisp; MINOR: Edict -*-
こんな感じて指定できます。

メジャーモードの指定を同時にしなければならないことと
メジャーモードの指定をマイナーモードの指定より先に書かなければならないことが
手抜きたる所以です。
492 名無し~3.EXE [sage] 2005/04/06(水) 23:17:05 ID:vfOaW+fI
>>491
サンクス. できました.
でも,コード見ていろいろ考えたけど,
なぜ上のような条件が出てくるのかさっぱりでした.
無関係に見えるんだけどなぁ....

たいしたことではないですが,下みたいにしたほうがよさそうでした.
(pushnew '("minor" . ed::find-file-auto-minormode) *auto-mode-parameter-alist* :test #'equal)
493 名無し~3.EXE [sage] 2005/04/06(水) 23:37:53 ID:5sv+stqH
>>492
メジャーモードを実行するとマイナーモードがリセットされるためです。
# (kill-all-local-variables) が実行されますので
なので先にメジャーモードを変えておく必要があります。

> (pushnew '("minor" . ed::find-file-auto-minormode) *auto-mode-parameter-alist* :test #'equal)
確かにこっちがいいですね。
494 名無し~3.EXE [sage] 2005/04/08(金) 01:02:25 ID:xk1+Uda5
>>487
今見たら「通常3〜4日以内に発送」になってた
495 名無し~3.EXE [sage] 2005/04/08(金) 05:40:57 ID:B5PHhF0G
howmで最新のメモだけをサマリとかを表示せずに直接開きたいんだけど
どうすればいい?howm-last-fileみたいな関数はhowm-wrap.lを
いじらずに作れるんでしょか。
496 名無し~3.EXE [sage] 2005/04/08(金) 23:56:19 ID:kzXEiLdF
>>495
メモを日時でソートして最新のものを開くようにすれば、とりあえずできるんじゃないかと。
497 名無し~3.EXE [sage] 2005/04/09(土) 09:48:57 ID:gWO5QsVC
ソース見てないのでよく分からないけど、@メモを保存するときに、save-buffer + howm-last-file
という変数にファイル名を保存みたいな関数を作る、Ahowm-last-file を開く関数を作る
みたいな感じでいいんじゃないでしょうか。
498 名無し~3.EXE [sage] 2005/04/10(日) 01:16:36 ID:Dr1YHO60
質問です
xyzzyでNFS上のファイルを開くのに,公開されたマウントポイントが '\vol\vol1'
のようになっていると,
//{server-name}/vol/vol1/filename.txt
でファイルを開くことができません.
でもディレクトリやファイル名の補完はできるし,ディレクトリ名入力してリターンで
1画面ファイラーもちゃんとNFSのディレクトリを表示してくれます.
ただファイルを開くことができません.

マウントポイントが '\vol' のようなものはファイルを開くことができるし,
//{server-name}/vol/vol1/ をたとえば E:/ にwindowsでマウントしておくと
問題なく使うことができます.

適当なドライブにマウントしないで使う方法はないでしょうか.
サーバは自分の管理下にないのでマウントポイントを変更することができません.
499 名無し~3.EXE [sage] 2005/04/10(日) 18:58:30 ID:ryvBs/c2
>>494
「通常24時間以内に発送します。」に変わってた
http://www.amazon.co.jp/exec/obidos/ASIN/4274066002/qid%3D1113127058/249-3993484-2113161
500 名無し~3.EXE [sage] 2005/04/10(日) 19:00:11 ID:SHe1BN3Y
>>496, 497
サンキューです。やってみます。
501 名無し~3.EXE [sage] 2005/04/10(日) 21:08:42 ID:xLl//CdK
>>498
> 質問です

ML で質問したほうがよいと思いますよ。
502 名無し~3.EXE [] 2005/04/11(月) 14:14:14 ID:eXQploUF
html+-modeをいじってたらC-.でタグを閉じた後
ハイライトが戻らなくなったんですけど、
今までってハイライトを戻すときに何を検出して、どうやって戻してるんですか?
503 名無し~3.EXE [sage] 2005/04/11(月) 16:47:29 ID:j7U5TAKg
>>502
何をしたのかよくわからんけど html+-mode を直接書き換えたの?
.xyzzy とかに書いて関数を上書きしたならすぐ元に戻せると思うんだけど、
そうじゃないなら html+-mode をダウソしなおして比べてみるといいと思う。
504 名無し~3.EXE [sage] 2005/04/12(火) 03:35:10 ID:0G2ZT7rb
rd-mode用のファイルを探しているのですが、以前の作者さんのサイトが開けない上に
ググった結果をいろいろ徘徊しても見つけられません。。。どなた、現在まだ入手可能な
場所をご存じでしたら教えていただけませんか?
505 名無し~3.EXE [sage] 2005/04/12(火) 05:15:50 ID:2cl/fg4X
>>502
ここら辺で消してます。

; ハイライト削除
(defun html+-delete-highlight-tag ()
(and (eq buffer-mode 'html+-mode)
*html+-tag-highlight*
(delete-text-attributes *html+-tag*)))

(add-hook '*pre-command-hook* 'html+-delete-highlight-tag)
506 名無し~3.EXE [sage] 2005/04/12(火) 12:04:40 ID:+hQ+eqCX
>>505
さんくすです。
hookをぶっ壊してたみたいです。戻りました。

別件ですが、parenってハイライトしたあと、戻したときに以前のハイライトを壊すことがありますよね

たとえばc-modeなどでつけたキーワードの色は壊さないのですが、
set-text-colorやset-text-attributeでつけた色はそのまま消してしまいますよね?

これってみなさんいっしょですか?
あと、c-mode.lを見てもtext-attributeを使わずに色をつけているようですが、
どうやってつけているかご存知の方はいますか?

507 名無し~3.EXE [sage] 2005/04/12(火) 12:18:55 ID:HNh0ptr8
>>506
正規表現キーワードでぐぐれ
508 名無し~3.EXE [sage] 2005/04/12(火) 13:33:06 ID:+hQ+eqCX
>>507
なにをぐぐればいいのかわかりにくいのでもうちょっと詳しく

load-keyword-fileでもう色をつけてるのかとkwd.lを探ってみたけど見つからず。
組み込みじゃないですよね?
色付けの関数って
set-text-color
set-text-attribute
以外に何かありましたっけ?
509 名無し~3.EXE [sage] 2005/04/12(火) 13:38:00 ID:HNh0ptr8
>>508
ttp://www.google.com/search?hl=ja&q=%E6%AD%A3%E8%A6%8F%E8%A1%A8%E7%8F%BE%E3%82%AD%E3%83%BC%E3%83%AF%E3%83%BC%E3%83%89+xyzzy&lr=lang_ja
510 名無し~3.EXE [sage] 2005/04/12(火) 14:45:28 ID:rJ7Ms/V7
>>508
> load-keyword-fileでもう色をつけてるのかとkwd.lを探ってみたけど見つからず。

load-keyword-file からの一連の流れで色づけしています。

> 組み込みじゃないですよね?

keyword-hash-table で制御できますが、組み込みです。

> 色付けの関数って
> set-text-color
> set-text-attribute
> 以外に何かありましたっけ?

関数としてはそれだけかもしれません。
しいて言えば、reverse-region もあります。

set-text-color は互換性のために残されており、内部で set-text-attribute を
使用していています。

また、c-mode.l に限っていえば、正規表現キーワードは使用されていません。
511 名無し~3.EXE [sage] 2005/04/12(火) 15:34:05 ID:+hQ+eqCX
>>510
なるほど、なっとくしました。ありがとうございます。
load-keyword-fileから色をつけたものはparenで壊れないということでしょうか。

506のparenが色を書き換えてしまう件ですが、
カーソルが外れた際にちゃんと元に戻してくれるようにしたいのです。
attributeをうまく保存している例はどこかにないですか?
512 名無し~3.EXE [sage] 2005/04/12(火) 15:55:27 ID:rJ7Ms/V7
>>511
> load-keyword-fileから色をつけたものはparenで壊れないということでしょうか。

keyword-hash-table での色づけは、set-text-attribute とは
恐らく無関係です。
詳細を確認したい場合はソースコードを調べてください。

> attributeをうまく保存している例はどこかにないですか?

例ではありませんが、だいたいの保存/復元であれば
paren で色づけする際に該当部分の attribute を保存しておいて、
paren の色づけを外す際に復元するようにすれば可能です。

ただし、保存から復元の間にバッファが編集されると、復元位置ががずれます。
「保存、表示、sit-for での復元の予約」を一コマンド内で行いきる方法も
ありますが、問題もあります。

様々なコードを書き、試し、自分にあったコードにしていくのがよいでしょう。
513 名無し~3.EXE [sage] 2005/04/12(火) 16:39:58 ID:GDQwZfd2
他のウィンドウに移動してもセレクションが見えるようにしたかったので、
510さんの発言を元に書いてみました。
;; セレクションを反転
(defun reverse-selection ()
(interactive)
(if (pre-selection-p)
(let ((beg (selection-mark))
(end (selection-point)))
(reverse-region beg end))
(clear-reverse-region)))
(add-hook '*post-command-hook* 'reverse-selection)
使いものになるかどうかはわからないです。

>>508
> 色付けの関数って
> set-text-color
> set-text-attribute
> 以外に何かありましたっけ?
関数じゃありませんが、regexp-keyword-list なんてのもあります。
514 名無し~3.EXE [sage] 2005/04/12(火) 16:41:10 ID:+hQ+eqCX
>>512
ふむふむ、大変親切なお答えありがとうございました。
編集されるとずれるか、たしかに。
Lispにまだ慣れていないのでparenの解析もまだ済んでいませんが
そろそろと進んでいこうと思います。
まだ試していませんが、
(add-hook '*pre-command-hook* 'paren-highlight)
とすると多少安心感が増すんですかね
515 名無し~3.EXE [sage] 2005/04/13(水) 14:57:04 ID:8j1/nryP
>>514
> まだ試していませんが、
> (add-hook '*pre-command-hook* 'paren-highlight)
> とすると多少安心感が増すんですかね

まず試してから、疑問点について書き込むのがいいでしょう。
また、何故上記のように考えたか理由を書くと、他の方からの指摘を
もらいやすいですよ。
何故上記のように考えましたか?
516 名無し~3.EXE [sage] 2005/04/13(水) 15:34:10 ID:J9ohCsar
xyzzy上でCapsにCtrlを割り当てる方法ってありますか?
大学のPCは制限ユーザーなので、レジストリは書き換えできないし、ソフトのインストールもできません。
窓使いの憂鬱などは試してみたけど上手くいきませんでした。

CapsをCtrlに割り当てるのに慣れてしまっているので、作業効率が大幅ダウンで困ってます。
Lispなどで割り当てるのが可能だったりします?
517 名無し~3.EXE [sage] 2005/04/13(水) 15:46:24 ID:cZrnnuOo
>>516

このスレの最初の方に同じ話題がでてますので、参考にされたら
どうですか。
518 名無し~3.EXE [sage] 2005/04/13(水) 21:37:44 ID:8j1/nryP
>>516
> xyzzy上でCapsにCtrlを割り当てる方法ってありますか?
ありません。
519 名無し~3.EXE [sage] 2005/04/14(木) 00:47:16 ID:gCq9mpzt
>>516
xyzzyとmayuが入ってるんだな?
PC管理者はCapsとCtrlを入れ替えているに違いない!
520 名無し~3.EXE [sage] 2005/04/14(木) 02:24:37 ID:kE11Sl6X
>>516
矛盾だらけの文章をなんとかするのが先決だと思うな。
521 名無し~3.EXE [sage] 2005/04/14(木) 07:40:12 ID:oRLiId9Q
>>516
NT系ならWH_KEYBOARD_LL使ったソフトでレジストリ使わずにいけるよ、たぶん。
自分でDLL作ってLispでSetWindowsHookExを実行すれば
>xyzzy上で
っていうのもいちおう可能。
522 名無し~3.EXE [sage] 2005/04/14(木) 12:28:50 ID:e8hPgDss
CLOSっぽいものを作ってみたけど、どうでしょうか?
(需要はあるのかなぁ?)

http://xyzzy.s53.xrea.com/wiki/?tips%2F%A4%CA%A4%F3%A4%C1%A4%E3%A4%C3%A4%C6CLOS
523 名無し~3.EXE [sage] 2005/04/14(木) 13:27:08 ID:Lzo5oQxF
>>522
頂ました.
暇を見つけて遊んでみたいと思います.
524 名無し~3.EXE [sage] 2005/04/14(木) 17:55:52 ID:U9YgMWIb
>>516
wikiの tips/キーバインドの設定をもう少し柔軟に
で何とかなるかも

mayuが使えるのならそのほうが楽だと思うけど。
525 名無し~3.EXE [sage] 2005/04/15(金) 00:05:50 ID:NHQiMASi
KaMailでGmailアカウントの送受信できてる人いますか?

("pop.gmail.com" "name@gmail.com" "password" t "login" 995)

こんなかんじで設定してみるも 「nil:string 不正なデータ型です」
ってダイアログが出て怒られてしまいます。

そもそもSSLに対応してないってことはないでしょ?
526 名無し~3.EXE [sage] 2005/04/15(金) 00:07:09 ID:NHQiMASi
間違った
("pop.gmail.com" "name@gmail.com" "password" nil "login" 995)
でした。

でも、どっちでも結果は同じだった...
527 名無し~3.EXE [sage] 2005/04/15(金) 02:11:46 ID:ZOuecRiA
KaMail自体はSSL対応してないよ。stone とか使え。
528 名無し~3.EXE [sage] 2005/04/16(土) 01:36:43 ID:Gjn9+kkw
あと KaMail には @ 入りのユーザー名は使えないという制限があったような。
529 名無し~3.EXE [sage] 2005/04/16(土) 02:34:23 ID:/MpDG5Dx
なるほど、そういうことでしたか。
おとなしくThunderbird使っときます...。
stoneでチャレンジしようかとも思いましたが、
そもそもそこまでやる必要があるのか疑問が沸いてきてしまったので
断念することにしました。

ありがとうございました。
530 名無し~3.EXE [sage] 2005/04/17(日) 01:24:46 ID:AoW3z8Ef
ソフ板で聞いたらこちらでとのことなので質問なのですが、
Pythonの
def hoge(bar)
とか
class foo(mono)
のhogeとfooの部分を今まで使ってたPythonWinみたいに強調表示したいと思い、

(defvar *py-func-formats*
(compile-regexp-keyword-list
'(("\\bdef[ \t]+\\([a-zA-Z_]+[a-zA-Z0-9_]*\\)" t (:keyword 1 :bold))
("\\bclass[ \t]+\\([a-zA-Z_]+[a-zA-Z0-9_]*\\)" t (:keyword 1 :bold))
)))
(setq regexp-keyword-list *py-func-formats*)
(add-hook 'ed::py-mode-hook 'py-color-setting)
(defun py-color-setting ()
(make-local-variable 'regexp-keyword-list)
(setq regexp-keyword-list *py-func-formats*))

こんな感じのやつを書いてみて.xyzzyに書いてみたのですが、期待通りに動いてくれませぬ。
どこの辺りがおかしいのでしょうか?
531 名無し~3.EXE [sage] 2005/04/17(日) 07:26:28 ID:9l550vdZ
>530
つ「ttp://oldriver.org/python/py-mode.html
532 名無し~3.EXE [sage] 2005/04/17(日) 13:21:10 ID:Cg9dXWNv
>>530
(defvar *py-func-formats*
(compile-regexp-keyword-list
'(("\\bdef[ \t]+\\([a-zA-Z_]+[a-zA-Z0-9_]*\\)" t (:keyword 1 :bold) nil 1 1)
("\\bclass[ \t]+\\([a-zA-Z_]+[a-zA-Z0-9_]*\\)" t (:keyword 1 :bold) nil 1 1)
)))
(add-hook 'ed::*py-mode-hook* 'py-color-setting)
(defun py-color-setting ()
(make-local-variable 'regexp-keyword-list)
(setq regexp-keyword-list *py-func-formats*))

コードとしてはこんな感じになりますが、
どうやらキーワードが regexp に入っていると色がつかないようです。
以下を見た感じ仕様のような気がしますが、一応 ML 辺りで確認してください。
ttp://hie.s64.xrea.com/xyzzy/ml/msg07959.html

全部正規表現キーワードで色付けする必要があるかもしれません。
533 530 [sage] 2005/04/19(火) 18:42:28 ID:ekgMCABU
>>531
>>532
サンクスです。
諦めてpy-modeをデフォで使うことにします。
534 名無し~3.EXE [] 2005/04/20(水) 19:05:27 ID:sgBZ0Z3E
本買いました。

c-modeなどの説明はどこかにあるでしょうか。
googleったところインデントの変え方だけ見つかりました。
やりたいことは、選択範囲のインデント一括変換です。
535 名無し~3.EXE [sage] 2005/04/20(水) 19:12:36 ID:FkPSEohN
>>534
indent-region
536 名無し~3.EXE [sage] 2005/04/20(水) 19:14:51 ID:sjyObp4w
>>534
インデントを「変える」ってのがよくわからないけどこういうこと?
(defun indent-selection ()
(indent-region (selection-mark) (selection-point)))
537 534 [sage] 2005/04/20(水) 19:54:55 ID:sgBZ0Z3E
>>535, 536
どうもです。

indent-regionで検索かけたところ、
ttp://www.marumo.ne.jp/db2004_6.htm
6月8日(火) xyzzy で auto-indentを見つけられました。
これがやりたかったです。

538 名無し~3.EXE [sage] 2005/04/20(水) 20:47:07 ID:sjyObp4w
>>537
余計なお世話かもしれないけどこんなのの方がよくない?
これだとポイント動かないしマークもセットされないし他のモードでも使える。

;; バッファ全体のインデント
(defun indent-buffer ()
(interactive)
(when mode-specific-indent-command
(save-excursion
(goto-char (point-min))
(funcall mode-specific-indent-command)
(indent-region (point-min) (point-max)))))

ちなみに
(indent-region (point-min) (point-max))
だと一行目がインデントされないみたい。
539 名無し~3.EXE [sage] 2005/04/21(木) 02:00:45 ID:vKUTyHq+
(c:*define-dll-entry c:int putenv ((char *)) "crtdll" "_putenv")や
(c:*define-dll-entry winapi:BOOL SetEnvironmentVariable ((char *) (char *)) "kernel32" "SetEnvironmentVariableA")
でセットした環境変数は
(c:*define-dll-entry winapi:DWORD GetEnvironmentVariable ((char *) (char *) c:int) "kernel32" "GetEnvironmentVariableA")

で取得できるのに、
builtin.lのsi:getenv
では取得できないのは何故なんでしょう?

(let ((buf (si:make-chunk nil 300))
(k (si:make-string-chunk "KEY"))
(v (si:make-string-chunk "value")))
(format t "si:getenv key ... ~A~%" (si:getenv "KEY"))
(GetEnvironmentVariable k buf 300)
(format t "GetEnvironmentVariable ~A~%" (si:unpack-string buf 0))
 
(SetEnvironmentVariable k v)
 
(format t "si:getenv key ... ~A~%" (si:getenv "KEY"))
(GetEnvironmentVariable k buf 300)
(format t "GetEnvironmentVariable ~A~%" (si:unpack-string buf 0)))
 
以下出力
 
si:getenv key ... nil
GetEnvironmentVariable
si:getenv key ... nil
GetEnvironmentVariable value
540 537 [sage] 2005/04/21(木) 08:52:09 ID:BryN6elK
>>538
いただきます。これは便利。
541 名無し~3.EXE [sage] 2005/04/21(木) 10:05:05 ID:zPMw55kL
>>539
起動時に環境変数をキャッシュしているんじゃないですか?
もしソースを追っかけて裏をとったら報告願います。
542 名無し~3.EXE [sage] 2005/04/21(木) 21:25:17 ID:jxBy7xpn
>>539
char *e = getenv (v);
return e ? make_string (e) : Qnil;

なんで、キャッシュとかはしていないみたい。
getenvなんでSetEnvironmentVariableした値が取れないのは分かるけど、
なんで_putenvしてもだめなんだろう。
543 539 [sage] 2005/04/21(木) 21:57:22 ID:vKUTyHq+
>>541,542
私も542さんと同じくソースをみて指摘の箇所を見つけたので、
いけるかなー?と思ったんですがダメでした・・・。

何でこんなことをしたいかというと(できるかどうかは分かりませんが)
コンパイルするときとかに、環境変数を指定して呼び出したいけど、
interactiveに呼び出すときは(ラッパーを書かない限り)環境変数を
指定出来ませんよね?

それで*scratch*とかでその都度、環境変数を定義しつつ、
C-x &(execute-subprocess)が呼べたら便利かな〜と思ったのですが・・。

ラッパー書いてもC-x & するたびに環境変数を指定するのは
面倒くさそうですし。
544 名無し~3.EXE [sage] 2005/04/21(木) 22:52:43 ID:Z1a/9PQG
>543
*scratch*で、環境変数として定義したいキーと値の組をリストにしてdefvar、
外部プロセスを実行する際にはmake-temp-file-nameで作った
.bat形式のtempファイルに環境変数をセットするシェルコマンドと
外部プロセスを実行するシェルコマンドを記述して、
.batファイルを実行する関数を書く、とか。 激しく面倒臭そうだが。
545 名無し~3.EXE [sage] 2005/04/21(木) 23:49:41 ID:HDR/wkWE
environで渡せ
546 名無し~3.EXE [sage] 2005/04/21(木) 23:56:43 ID:WmyvtMOF
>>543
> それで*scratch*とかでその都度、環境変数を定義しつつ、
> C-x &(execute-subprocess)が呼べたら便利かな〜と思ったのですが・・。
execute-subprocess の第4引数は環境変数の指定なので
こんな感じでできなくはないです。
環境変数を定義するコマンドはご自由に。

(defvar *my-environment-variables* '(("HOME" . "C:\\")))
(defun my-execute-subprocess (cmd &optional (arg nil f) bufname directory)
(interactive "e& \np" :history0 'execute)
(execute-subprocess cmd nil bufname *my-environment-variables* directory))

# 545氏に先を越されてしまった。(^^;
547 539 [sage] 2005/04/21(木) 23:59:00 ID:vKUTyHq+
>544
私が代替案として考えたのは、(擬似)環境変数を自前で管理して
execute-subprocess(というかmake-processに)渡す方法です。
↓のような

(defvar *global-environ* nil)

(defun putenv (key val &optional (environ *global-environ*))
(check-type key string)
(setq key (string-upcase key))
(let ((env (assoc key *global-environ* :test #'string=)))
(if env
(rplacd env val)
(push (cons key val) *global-environ*))))

(defun se-execute-subprocess (cmd &optional (arg nil f) bufname environ directory)
(interactive "e& \np" :history0 'execute)
(execute-subprocess cmd arg bufname *global-environ* directory))

(define-key ctl-x-map #\& 'se-execute-subprocess)


; ex) 「=>」は*Command Output*への出力内容
; C-x & echo %HOGE%
; => %HOGE%
; (putenv "HOGE" "12345678")
; C-x & echo %HOGE%
; => 12345678

548 539 [sage] 2005/04/22(金) 00:00:32 ID:47Ag4LHY
>546,547
っと、同じ事を・・・orz
549 名無し~3.EXE [sage] 2005/04/22(金) 01:26:48 ID:F0pD5Y/x
印刷プレヴューで文字化けっていう話って今まで出てきました?
IPAいれたら文字化けして困ってるんですが
550 名無し~3.EXE [sage] 2005/04/22(金) 18:05:31 ID:GK3OZ+TG
xyzzy を win xp x64 で動かした人っていますか?
551 名無し~3.EXE [sage] 2005/04/23(土) 02:05:26 ID:8+yUABfF
2ch-modeでまちBBS見れるようにならんかなあ
いろんな2chブラウザのスレ見たら、生dat置いてないみたいだから無理か…
552 名無し~3.EXE [sage] 2005/04/23(土) 02:36:11 ID:JO2Pg+tt
よく探しな。
553 名無し~3.EXE [sage] 2005/04/23(土) 04:26:03 ID:s7RiMmXo
書き込めるしなー
554 名無し~3.exe [sage] 2005/04/25(月) 17:15:24 ID:IgBGvFOY
JunkScript復活だそうです。
http://www7a.biglobe.ne.jp/~hat/
555 名無し~3.EXE [sage] 2005/04/25(月) 19:40:35 ID:d4223t1o
死ぬほど嬉しい
556 名無し~3.EXE [sage] 2005/04/25(月) 21:36:37 ID:YrIwBoPV
>>554
ほんとだ。めでたい。
557 名無し~3.EXE [sage] 2005/04/25(月) 21:47:27 ID:h0oNgoB1
おお!復活か。嬉しい嬉しい。
558 名無し~3.EXE [sage] 2005/04/26(火) 02:50:15 ID:RVNyE3cm
服部さんのperldb.lって使えている人います?

ActivePerl 5.8.6だとデバッガの出力をxyzzyで取れていなくてまったく
使えず、cygwinのperlだと以下のようなエラーになります。


Loading DB routines from perl5db.pl version 1.28
Editor support available.

Enter h or `h h' for help, or `man perldebug' for more help.

main::(D:/tmp/a.pl:1):$A=1;
Unable to get Terminal Size. The TIOCGWINSZ ioctl didn't work. The COLUMNS and LINES environment variables didn't work. The resize program didn't work. at /usr/lib/perl5/vendor_perl/5.8/cygwin/Term/ReadKey.pm line 343.
Compilation failed in require at /usr/lib/perl5/vendor_perl/5.8/Term/ReadLine/Perl.pm line 58.
at /usr/lib/perl5/vendor_perl/5.8/Term/ReadLine/Perl.pm line 58
Term::ReadLine::Perl::new('Term::ReadLine', 'perldb', 'GLOB(0x10226dc4)', 'GLOB(0x101edc38)') called at /usr/lib/perl5/5.8/perl5db.pl line 6029
DB::setterm called at /usr/lib/perl5/5.8/perl5db.pl line 2203
DB::DB called at D:/tmp/a.pl line 1
Debugged program terminated. Use [1mq[0;10m to quit or [1mR[0;10m to restart,
use [1mO[0;10m [4minhibit_exit[24m to avoid stopping after program termination,
[1mh q[0;10m, [1mh R[0;10m or [1mh O[0;10m to get additional info.
[4mDB<1>[24m [4mDB<1>[24m
559 名無し~3.EXE [sage] 2005/04/26(火) 07:04:29 ID:rmVA36dg
howm for xyzzyなんですが、howm-keysを表示しない方法ってあるんでしょうか。
保存のたびに表示されうざったいです。
560 名無し~3.EXE [] 2005/04/26(火) 19:46:45 ID:CqcZxK5/
何のエディタか知りませんが、
>(chmだとエディタの外部ヘルプ機能で逆引きしやすいので)
というのを見かけました。
xyzzyにもこの機能があるかしらんと探してみたら、
共通設定にHTMLヘルプというのがありました。
ですが、使い方が分かりません。どう使うのでしょうか。
561 shop.it-kontent.de [sage] 2005/04/26(火) 22:22:03 ID:0dgQyhji
test
562 名無し~3.EXE [sage] 2005/04/27(水) 00:08:38 ID:pD81N6eo
>>560
M-x show-html-help
563 名無し~3.EXE [sage] 2005/04/27(水) 19:41:53 ID:tndVsN8/
>>562
どうもです。
これは一つのHTMLヘルプしか指定できないようですね。
Visual Studio とか用なのかな。
564 名無し~3.EXE [sage] 2005/04/27(水) 20:48:49 ID:xFaX77Rc
>>563
何のヘルプを引きたい?
565 名無し~3.EXE [sage] 2005/04/28(木) 11:03:55 ID:1lMsKKWI
>563
たぶん
(html-help "chmのパス" "キーワード")
566 名無し~3.EXE [sage] 2005/04/29(金) 02:16:27 ID:evYAgujW
otherbbsで、1レス目が自動的にあぼーんされてしまう現象が発生中。
とりあえずjbbsに関しては
(defvar *regexp-for-jbbs-shitaraba-parse*
(defvar *regexp-for-jbbs-shitaraba-parse-for-get-num*
の二カ所の、
(compile-regexp "^<dt>
の部分を
(compile-regexp "<dt>
に書き換えて、スレを再読込させてやれば復帰できる模様。
まちBBSはどうにもうまくいかない。
567 名無し~3.EXE [sage] 2005/04/29(金) 06:07:59 ID:qBbzyb7F
>>558
"perl -d hoge.pl -emacs" で動く
568 名無し~3.EXE [sage] 2005/04/29(金) 09:33:07 ID:4nK0E+d7
2ch-mode upされてますね。
なんとなくスピードが上がったような気がします。
569 名無し~3.EXE [sage] 2005/04/29(金) 10:23:34 ID:ecPW861c
>>566
 したらばの方は最新のものではレスを rawmode.cgi(dat直読み
方式)で取得するように変更したので、もしかしたら最新に更新す
ることで回避できるかもしれません。(ちなみに、おそらく最新に
した後1回目の取得ではあぼーん誤検出しまくってスレを差分取得
ではなく再読み込みすると思います。すみません)

http://xyzzy.s53.xrea.com/wiki/?tips%2F2ch-mode%20%C2%BEBBS%B3%C8%C4%A5

 まちBBSの方は…たとえばどのスレでしょうか?

>>568
 キタ━━━━━━(゚∀゚)━━━━━━ !!!!! と Junk Scripts の所で探してしまった…
 upされてるというのは otherbbs のことでしょうか?でしたら
したらばの方をdat直読み方式にしたからでしょうね。

>>551
 もう見つけられていると思いますが…上のリンクをたどってみてください。
570 名無し~3.EXE [sage] 2005/04/29(金) 11:19:32 ID:BmHzk5Yf
2ch-mode ChangeLog

2ch-0.0.1.3
[2005/04/21]
dolib.dllのアクセス先を変更。ついでにLISP側から設定できるように。
571 名無し~3.EXE [sage] 2005/04/29(金) 11:53:18 ID:evYAgujW
>>569
うあ、wikiの方はチェックしてませんでした。04/12/29版を使ってました……。
したらばはこれで問題ない……と思いきや、私の住んでる板ではトリップ付きの人が問答無用であぼーん。
トリップの色がカスタマイズされてるから引っかからなくなってました。
*shitaraba-rawmode-line-regexp*の #FF0000 2つを #[0-9a-fA-F]+ にすることで解決できました。

まちBBSは、改めて一通りチェックしてみたところ北海道と近畿だけ1があぼーんになりますね。
なんでだろう、とHTMLを見たら、これらの板だけ1の発言のリモートホストの最後に改行が入って2行に分けられているからのようです。
ん〜、妥当な正規表現を思いつきません……。
572 名無し~3.EXE [sage] 2005/04/29(金) 14:22:26 ID:Ne7UlcHq
>>571
 調査ありがとうございます。修正しました。しかししたらばって
いろいろカスタマイズできるんですか。だとすると標準的なやつ以
外はかなりぼろぼろの状態になってそうだ…

 まちBBSの方は、2行に分かれているのが問題なのではなくて
(その対処のコードは入っています。ぐちゃぐちゃですが…)、1
の名前の色が変わっているのが原因でした。ちらっとテストした限
りでは大丈夫でしたが、1がトリップ付きのスレについて確認して
いないので、もしかしたらそのスレはあぼーんのままかもしれませ
ん。もしまだ直っていなかったりしたら御報告いただけると助かり
ます。

>>570
 SourceForge の方だったんですね。ずっと Junk Scripts の方を見てた…orz
573 名無し~3.EXE [sage] 2005/04/29(金) 14:44:37 ID:qPU1pzV0
というかNetInstaller
574 名無し~3.EXE [sage] 2005/04/29(金) 15:22:30 ID:zaODZfqY
>>572
横からですが、修正乙です。

>  SourceForge の方だったんですね。ずっと Junk Scripts の方を見てた…orz
もっと言うと
http://www7a.biglobe.ne.jp/~hat/xyzzy/download.cgi?2ch-0.0.1.3.lzh
ここですね。
Junk Scriptsの方の更新はまだみたいです。
575 558 [sage] 2005/04/29(金) 16:53:24 ID:NvFNH+DT
>>567
さんきゅ。
あと、perldb-filename-regexp を書き換えたらとりあえず動きました。
(setf *perldb-filename-regexp* "^\\(\x1a\x1a\\)\\(.+\\):\\([0-9]+\\):[0-9]+")
576 名無し~3.EXE [sage] 2005/04/29(金) 17:14:04 ID:evYAgujW
>>572
お疲れ様です。
なんか私ばっかりあれこれ言っているようで非常に申し訳ないです。

まちBBSの方は問題なくなりました。
元々あんまり行かないので持続的な検証は難しいですが。

したらばの方ですが、それなりにカスタマイズできるようで。
この機会に検証してみたところ、管理者限定の名前色が設定されている場合に、管理者発言があぼーんされました。
datの名前部分が、何故かこの場合だけ</b>と<b>が挿入されません。
改善案を書いておきますのでよろしくお願いします。
//我ながら一度に言えよと言った感じで。細切れですいません。

(defvar *shitaraba-rawmode-line-regexp*
の、名前拾う後段:
\\|\\(?:</b><font color=#[0-9a-fA-F]+>\\((.*?)\\)</font><b>\\)?\\)<>\\([^<]*

\\|\\(?:\\(?:</b>\\)?<font color=#[0-9a-fA-F]+>\\((?.*?)?\\)</font>\\(?:<b>\\)?\\)?\\)<>\\([^<]*
に。

//あー、自分で修正したのをwikiに揚げた方が良いのかな?
577 名無し~3.EXE [sage] 2005/04/29(金) 20:06:59 ID:nnoxXwEv
>>576
>なんか私ばっかりあれこれ言っているようで非常に申し訳ないです。
 いえいえ、色々調べてくださってとても助かります。

>名前拾う後段:
 \\| の前は、名前だけもしくは名前+トリップの場合、\\| の後
はトリップのみの場合の正規表現のつもりです。ですので、後段の
"(" と ")" に ? をつけるのでしたら、それは行わずに、名前を
拾う前段を直す方が自然だと思います。なので…

<>\\(?:\\([^<]+\\)\\(?: </b><font color=#[0-9a-fA-F]+>\\((.*?)\\)</font><b>\\)?\\|

<>\\(?:(?:<font color=#[0-9a-fA-F]+>\\)?\\([^<]+\\)\\(?:</font>\\)?
\\(?: </b><font color=#[0-9a-fA-F]+>\\((.*?)\\)</font><b>\\)?\\|
にした方が恐らく無難でしょう。ただ、その管理者限定のレスを見
ていないのでもしかしたら動かないかもしれませんが…。管理者限定レスの例
とかありますか?

 また、上記の修正だと、その管理者がトリップ付きの名前を使った場合、データが
<font color=#ff0000>管理者</font> </b><font color=#ff0000>(trip)</font><b>
のような文字列になっている必要があります。管理者がトリップ付きの名前を使う
ってことがあるんでしょうか…。

 …それ以前に別に名前なしのトリップもそれ以外もいっしょくた
に扱えるような気もしますが('A`)
578 名無し~3.EXE [sage] 2005/04/29(金) 20:08:18 ID:nnoxXwEv
>//あー、自分で修正したのをwikiに揚げた方が良いのかな?
 うーん、WWWCで追っている方がいらっしゃるようで、

http://home.t04.itscom.net/poi/2ch_mode_enhance/2ch_mode_otherbbs.lzh

 の方も一応最新にしているので、やっぱり自分が直した方がいい
のかなぁ…。

 ま、とは言え、別に気が向いたら直して下さって構いません。た
だし、その場合には 2ch_mode_otherbbs.l のファイル内と wiki
のページに変更の概要を追記するようにしてください。もちろん
「ここバグってるよ〜」とつっこむだけでももちろんOKです。自分
がそれを受けて実際に修正するかどうかはその時の気力次第ですが…(弱)
579 名無し~3.EXE [sage] 2005/04/29(金) 21:53:42 ID:evYAgujW
>>577
ども。

>  \\| の前は、名前だけもしくは名前+トリップの場合、\\| の後はトリップのみの場合の正規表現のつもりです。ですので、後段の
> "(" と ")" に ? をつけるのでしたら、それは行わずに、名前を拾う前段を直す方が自然だと思います。

ああっ、あっさり手抜きがばれた!(w; どうせ見た目変わらないからいいかなーとか(w;;

> 管理者限定レスの例とかありますか?

もう管理されてないだろうな、と言うところで、ここらなんかひっじょーに閑散としてますが。
("Hoge" "jbbs.livedoor.jp" "/otaku/" nil "803") ;ttp://jbbs.livedoor.jp/bbs/rawmode.cgi/otaku/803/1058258353.dat
("Foo" "jbbs.livedoor.jp" "/otaku/" nil "821");ttp://jbbs.livedoor.jp/bbs/rawmode.cgi/otaku/828/1058703872.dat
管理者が特殊カラーで1を立てただけだとファイルが見つかりませんになってしまったり。

>  また、上記の修正だと、その管理者がトリップ付きの名前を使った場合、データが
> <font color=#ff0000>管理者</font> </b><font color=#ff0000>(trip)</font><b>
> のような文字列になっている必要があります。管理者がトリップ付きの名前を使うってことがあるんでしょうか…。

これはどうなんでしょう。私も管理者がトリップつけたのは見た事ありませんね……。
自分で運営してるわけでもないですからできるのかどうかも知りませんし……。

>  …それ以前に別に名前なしのトリップもそれ以外もいっしょくたに扱えるような気もしますが('A`)

色々いじくった結果、これでいけそうです……
"^\\([0-9]+\\)<>\\(?:<font color=#[0-9a-fA-F]+>\\)?\\([^<]*\\)\\(?:</font>\\| ?</b>\\)?\\(?:
<font color=#[0-9a-fA-F]+>\\((.*?)\\)</font><b>\\)?<>\\([^<]*\\)<>\\([^<]*\\)<>\\(.*\\)<>\\(.*?\\)<>\\(.*?\\)$"
トリップが(match-string 3)だけになるため、日付以降一つずつずれますが。

できる限りこっちで動作確認したコードをこのスレとかに書き込むのがいいですかね。
580 名無し~3.EXE [sage] 2005/04/30(土) 01:29:56 ID:NyCiMwzC
>>579
情報ありがとうございます。

>色々いじくった結果、これでいけそうです……
>"^\\([0-9]+\\)<>\\(?:<font color=#[0-9a-fA-F]+>\\)?\\([^<]*\\)\\(?:</font>\\| ?</b>\\)?\\(?:
><font color=#[0-9a-fA-F]+>\\((.*?)\\)</font><b>\\)?<>\\([^<]*\\)<>\\([^<]*\\)<>\\(.*\\)<>\\(.*?\\)<>\\(.*?\\)$"
>トリップが(match-string 3)だけになるため、日付以降一つずつずれますが。

 うーん、すみません、異議をあげまくりで申し訳ないのですが…、トリップの部分は

</b><font color=#FF0000>(trip)</font><b>

 だと思うので、それを1まとまりとして捉えて、

^\\([0-9]+\\)<>\\(?:<font color=#[0-9a-fA-F]+>\\)?\\([^<]*\\)\\(?:</font>\\)?
\\(?: ?</b><font color=#[0-9a-fA-F]+>\\((.*?)\\)</font><b>\\)?
<>\\([^<]*\\)<>\\([^<]*\\)<>\\(.*\\)<>\\(.*?\\)<>\\(.*?\\)$")

 とした方がよいように思うのですが…いかがでしょうか…(トリ
ップしかない場合、トリップの先頭のスペースがなくなるのでそれ
には ? をつけてあります)?
 とりあえずこれを使って修正したものを置いておきます。

http://home.t04.itscom.net/poi/2ch_mode_enhance/2ch_mode_otherbbs.lzh
581 580続き [sage] 2005/04/30(土) 01:31:33 ID:NyCiMwzC
 >>579さん的に問題がなければおっしゃってください。wikiの方にも上げようと思います。

>できる限りこっちで動作確認したコードをこのスレとかに書き込むのがいいですかね。

 そこら辺は御自由になさってくださって構いませんです。ただ今
回のように、「こうした方がいいんじゃ?」「いやこうした方がい
い」という話になると、いきなり各自がファイルを修正してupし直
す方法は不向きなのかもしれないですね…。ううむ…。
582 名無し~3.EXE [sage] 2005/04/30(土) 01:42:41 ID:NyCiMwzC
>>573 >>574
 NetInstaller、Junk Scripts を古いアドレスのままにしてました…orz
 新しい Junk Scripts のサイトの方を NetInstaller で登録する
とインストールできました。ありがとうございました。
583 579 [sage] 2005/04/30(土) 17:03:39 ID:PlTfToFy
>>580
ちょっとお返事遅れました。

そうですね、そちらの方が自然で良いと思います。
私はどうも動けばいいやという思考が先に立ってしまってどうにも。
改めにゃとは思ってるんですが。

動作もばっちりです。
ご丁寧な対応ありがとうございました。
584 名無し~3.EXE [sage] 2005/04/30(土) 19:51:54 ID:1hTdKK4D
>>583
 確認ありがとうございました。問題ないようで一安心です。
 それでは、wikiの方にも上げようと思います。
585 名無し~3.EXE [sage] 2005/05/02(月) 17:22:44 ID:PKEKbUGV
multi-modeでコメントに入ったときに、
second-mode内の色がかわりますが、
second-mode外の色を変えるように改造したいのです。
全体を一回mmm-modeでぬってその後内側をdelete-text-attributesしようとしたのですが
範囲内だけというのがうまくいきません。標準色で塗ろうかと思ったのですがこれもわからず。
外だけ塗る方法ってありますか?
あるいは、もうすでに同じようなことをやっている方はいませんか?


586 名無し~3.EXE [sage] 2005/05/02(月) 18:57:58 ID:XJjg5Fjd
>>585
multi-mode で指定した領域に入ったときに,xxx-mode で色付けをするようにしていて,
そのときバッファ全体を xxx-mode で塗ってほしいってこと?

multi-mode はそういうものだったと思っていたが違ったのか
587 名無し~3.EXE [sage] 2005/05/03(火) 00:27:05 ID:tMpxM/PG
>>585
あ、それいいな。multi-mode は便利なんだけど、あの背景色が
ちょっと見づらいので背景色の色を薄くしてる。確かに外側の色が
変わった方が嬉しい。
588 586 [sage] 2005/05/03(火) 01:14:47 ID:0WPKT7ae
>>585,587
そういうことか.確かにそのほうがいいと思う.
- (apply 'set-text-attribute fp (1+ ep) 'mmm-mode *multi-mode-text-attribute*)
+ (apply 'set-text-attribute (point-min) fp 'mmm-mode *multi-mode-text-attribute*)
+ (apply 'set-text-attribute (1+ ep) (point-max) 'mmm-mode *multi-mode-text-attribute*)

外の背景色を変えるか,内側を変えるかは 設定可能にしてもらえるとうれしいな.
あと,自分はカーソル移動のみでmulti-mode が作動するようにしているけど,現在の
仕様とこの挙動も設定で切り替え可能にしてもらえるとうれしいな.
589 名無し~3.EXE [sage] 2005/05/03(火) 20:02:04 ID:19lBDI5P
hatena-diary-modeの調子がおかしい。
一度更新したものをブラウザで更新しようとすると、変な表示になって
改行されないせいか、編集出来ない
改行コードの問題かな
590 名無し~3.EXE [sage] 2005/05/03(火) 20:23:40 ID:0WPKT7ae
call-process で実行したウィンドウプログラムの hwnd を取得したいのだけど,
いい方法ってある?
プログラム名とプロセス名が一致していて,かつ,その名前のプロセスが複数ない
ならば希望のプロセスの hwnd を取得できる.前者は暗黙の仮定にするにしても,
後者の複数の同一名プロセスがある場合,今実行したプロセスをどう取得したら
いいのかわからない.

実際にやりたいことは,katexで dviout を実行したときに位置を指定してから
最大化したいだけ.ただ,いろいろなdviファイルを同時に開くこともあるので
上の問題で悩む.わざわざマウスで位置を設定したウィンドウまで動かされると
むかつくので.
591 名無し~3.EXE [sage] 2005/05/04(水) 12:25:28 ID:WhWKQuoh
>>589
俺は問題なかったけどちゃんと最新版使ってる?
592 名無し~3.EXE [sage] 2005/05/07(土) 17:36:19 ID:QiPsqn7s
2ch-modeのboard-modeでスレ立てのキーバインドが消滅してるな
593 名無し~3.EXE [sage] 2005/05/07(土) 22:23:08 ID:3QQKO1qj
2ch-mode の 1.2 と 1.3 で diff 取ってみたら、
board.lc http.lc menu.lc search.lc thread.lc tracking.lc
が対応する *.l の変更なしに変わっているみたい。一体何が変わっているんだろう…
594 名無し~3.EXE [sage] 2005/05/07(土) 22:54:00 ID:s26dQvBX
>>593
> が対応する *.l の変更なしに変わっているみたい。

どういう状況かわからないので、もう少しわかりやすく状況伝達をお願いします。
595 名無し~3.EXE [sage] 2005/05/07(土) 23:34:00 ID:9e2CdWV2
>>593
> が対応する *.l の変更なしに変わっているみたい。一体何が変わっているんだろう…
結論から言うと、多分何も変わってません。
バイトコンパイルしなおすだけで異なるファイルが生成されます。
(gensym) で自動生成されるシンボルがあることが原因みたいです。

コンパイルまわりは難易度が高いので自信はありませんけど。
596 名無し~3.EXE [sage] 2005/05/08(日) 00:14:11 ID:aSrosETk
>>594
 board.lc http.lc menu.lc search.lc thread.lc tracking.lc は 1.2 と 1.3 で違っていたのですが、
 board.l http.l menu.l search.l thread.l tracking.l は 1.2 と 1.3 で同じだったんです。

>>595
>バイトコンパイルしなおすだけで異なるファイルが生成されます。
 あ、そうなんですか。なるほど…。ありがとうございました。
597 名無し~3.EXE [sage] 2005/05/08(日) 10:34:48 ID:dFj/pd8e
2ch-modeのスレ立てってxyzzy内でできないんだね。
598 名無し~3.EXE [sage] 2005/05/08(日) 11:51:34 ID:HXALk+ni
>>597
5個前のレスぐらい読んでね。
599 名無し~3.EXE [sage] 2005/05/08(日) 12:03:50 ID:7dgHiKv8
久しぶりに 2ch-mode@xyzzy に戻ってみた。
スレ読んで、すぐ消したいときとかってやっぱこっちのが便利。
600 名無し~3.EXE [sage] 2005/05/09(月) 00:52:21 ID:lACp+l+i
英辞朗第2版を買ってきたので,いまさらながらpdic.l を使ってみた.
めちゃくちゃ便利だなぁこれ.
601 名無し~3.EXE [sage] 2005/05/09(月) 01:00:55 ID:Y9pVDy+m
>>598
変更前は出来ていたのかorz
>592のはキーバインドだけ削られたんだと思ってしまって、
xyzzy内で出来たとは思いもせんかった
602 名無し~3.EXE [sage] 2005/05/09(月) 03:14:42 ID:lACp+l+i
>>601
少なくとも1・2年前のバージョンでは "xyzzy内" ではできていなかった.
単純に,スレ立て用のページをブラウザで開くだけだった.
その後,機能upしたのかもしれないが,2ch-modeってそんなに更新してないよね
だから >>598 が勘違いしているだけだと思う
603 名無し~3.EXE [sage] 2005/05/09(月) 06:37:47 ID:qOXxWtaH
スレ立てるのって2ch::board-formってやつでしょ?
何年か前に何度か立てたことあるけど。


604 名無し~3.EXE [sage] 2005/05/09(月) 07:31:46 ID:lACp+l+i
>>603
調べてみた.

> [2001/04/26]
> デフォルトではスレ立てをブラウザで開くようにした

とあるので,確かにその機能はあったみたいだけど,問題もあったみたい
605 名無し~3.EXE [sage] 2005/05/09(月) 14:12:26 ID:finn7Zre
>>600
pdic.l っていま手に入る?
606 名無し~3.EXE [sage] 2005/05/09(月) 15:19:51 ID:cfQLYvo8
xyzzyの使い方じゃなくて申し訳ないんだけど
現在Lispを勉強中です。
region内にシーザー暗号があってでコードしたものを出力したいのです
fcjjm umpjb => hello world

narrowして走査していくのは他のを見て分かったのですが
pointにある文字をいじくるのがよくわかりません
どなたかお手助けを
607 名無し~3.EXE [sage] 2005/05/09(月) 15:36:49 ID:iP6Un2cA
scan-bufferとmatch-stringとreplace-matchを使うとか?
608 名無し~3.EXE [sage] 2005/05/09(月) 17:23:33 ID:zdWvOY5H
>>606
buffer-substring で文字列を読み取って、それに対して文字を操作するとか。
↓たとえばこんな感じ?ほかにもやり方はありそう。
(map 'string #'(lambda (x)
(code-char (+ 2 (char-code x))))
"fcjjm"))
609 名無し~3.EXE [sage] 2005/05/09(月) 22:28:23 ID:WW8/xB6e
>>606
暇つぶしに。循環リストを使ってみたかっただけですけど。
効率は悪そう。
(let ((c nil))
(dotimes (i 26)
(pushnew (string (code-char (+ i (char-code #\A)))) c))
(dotimes (i 26)
(pushnew (string (code-char (+ i (char-code #\a)))) c))
(setf (cdr (nthcdr 51 c)) c)

(defun decode-Caesar (from to)
(interactive "r")
(let ((ans "") (sub "")
(text (buffer-substring from to)))
(dotimes (n (length text))
(setq sub (char text n))
(if (alpha-char-p sub)
(setq ans (concat ans (nth 50 (member (string sub) c :test #'string=))))
(setq ans (concat ans (string sub))))
)
(msgbox "~A" ans)
)))
610 名無し~3.EXE [sage] 2005/05/09(月) 22:28:34 ID:EojgjCZ0
てかLispスレってム板だかマ板にないっけ?
落ちた?
611 名無し~3.EXE [sage] 2005/05/09(月) 23:06:51 ID:q9VbNo/2
2ch-modeでyy.kakiko.comが使えるようにならないかなー
とつぶやいてみるテスト
612 名無し~3.EXE [sage] 2005/05/09(月) 23:24:45 ID:WW8/xB6e
>>611
> 2ch-modeでyy.kakiko.comが使えるようにならないかなー
> とつぶやいてみるテスト
実は現バージョンでも使えます。
板をお気に入りに(手動で)追加してやると、そのままいけます。
613 名無し~3.EXE [sage] 2005/05/10(火) 03:25:45 ID:ewNbNl37
なにげにそういうところは多い
614 名無し~3.EXE [sage] 2005/05/10(火) 10:53:21 ID:4tMvVOnU
>>607
ああ、それが一番楽なのかも
でもXyzzyの勉強でなくなりそうなので

>>608
なるほど、一文字一文字読み取りながらデコードを考えていました
一気に全部読めばいいのか

>>609
先にletする方法ははじめてみました、たしかにそれがないと不便ですね
参考にさせていただいて自分でも作ってみます
615 名無し~3.EXE [sage] 2005/05/10(火) 23:57:11 ID:4NihWHgC
>>600

>>605に同じく
pdic.lってどこで手に入れました?
昔インストールしたのが残ってたとか?
616 600 [sage] 2005/05/11(水) 06:06:22 ID:M9xqbOxJ
>>605,615

ページ消えてますね.自分は昔とっておいたのが残っていました.
作者さんがここ見てて,復活するに淡い期待
617 名無し~3.EXE [] 2005/05/15(日) 15:52:10 ID:+vqMuUjB
xyzzy でファイルを複数開いていた場合、タブが横一列に配列される
のですが、数が多い場合、スクロールをずーーーっとしないといけない
ので、これを一画面に配列表示したいのですが、そういう事は出来ますでしょうか?
618 名無し~3.EXE [sage] 2005/05/15(日) 16:34:14 ID:K3Rnd5pj
タブをウィンドウ下でなく左に動かしたらどうでしょう.

こんな感じ(Googleイメージ検索で適当に見つけた画像)で.
ttp://www2.jan.ne.jp/~u-z/image/temp/xyzzy.png
619 名無し~3.EXE [] 2005/05/18(水) 01:51:49 ID:/1Vf5jVM
あげ
620 名無し~3.EXE [sage] 2005/05/20(金) 18:47:56 ID:h2Dlsqit
JBBS、最近トリップが10桁になったけど、レスがあぼ〜んになるね
621 名無し~3.EXE [sage] 2005/05/20(金) 19:46:13 ID:vJO08iJ7
>>620
最近jbbsでトリップを見かけないから気付かなかった……。
色つけ&()の代わりに、半角空白+◆を先頭にした色無しに変わってますね。2ch準拠?

(defvar *shitaraba-rawmode-line-regexp*
の文字列を
^\\([0-9]+\\)<>\\(?:<font color=#[0-9a-fA-F]+>\\)?\\([^<]*\\)
\\(?:</font>\\)?\\(?: ?</b>\\(?:<font color=#[0-9a-fA-F]+>\\((.*?)\\)</font><b>
\\|\\( ◆.\\{10\\}\\)<b>\\)\\)?<>\\([^<]*\\)<>\\([^<]*\\)<>\\(.*\\)<>\\(.*?\\)<>\\(.*?\\)$
にして、
(defun convert-shitaraba-format-to-2ch-format
の中の
(trip (match-string 3))
(mailaddress (match-string 4))
(date (match-string 5))
(body (match-string 6))
(title (match-string 7))
(id (match-string 8)))

(trip (or (match-string 3)
          (match-string 4)))
(mailaddress (match-string 5))
(date (match-string 6))
(body (match-string 7))
(title (match-string 8))
(id (match-string 9)))
に変えるというのはどうでしょ。>作者様
match-stringがずれるのはアレですが。
622 名無し~3.EXE [] 2005/05/20(金) 20:43:01 ID:MvXfrr3y
こんなモード作ってみました。よかったらどぞ。
|ω・`)っhttp://www5f.biglobe.ne.jp/~memo/dir/infoman/index.html
623 名無し~3.EXE [sage] 2005/05/20(金) 21:05:30 ID:/Pyd/4cB
>>622
(defvar *infoman-list-height* (- (floor (window-height) 2) 2)
"リストウィンドウ高さ")
(defvar *infoman-list-width* (- (floor (window-width) 2) 2)
"リストウィンドウ幅")

こんな感じで割合にしておいてくれると嬉しい。
# (window-width) が120以上って大きなモニタ使ってるんですね〜
624 名無し~3.EXE [sage] 2005/05/20(金) 22:23:48 ID:kJFdn9h4
>>620 >>621
報告&修正ありがとうございます。

http://blog.livedoor.jp/bbsnews/archives/22543111.html

ってことみたいですね。

>(defvar *shitaraba-rawmode-line-regexp*
>の文字列を
          :
>に変えるというのはどうでしょ。>作者様

 OKだと思います。ただ、しょーもないことで申し訳ないのですが、()トリップの後の<b>と
◆トリップの後の<b>はまとめちゃってよいですよね…?

 修正をとりこんだバージョンを

http://home.t04.itscom.net/poi/2ch_mode_enhance/2ch_mode_otherbbs.lzh

に置きました。よろしければおっしゃってください。wikiにも上げます。
625 名無し~3.EXE [sage] 2005/05/20(金) 22:49:57 ID:t+F/xSEF
>>623
自分の環境のことしか考えてなかた(´・ω・`)

ありがとー、修正しておきました。
626 名無し~3.EXE [sage] 2005/05/21(土) 01:16:35 ID:PMbGY9em
>>622
見られません…
627 名無し~3.EXE [sage] 2005/05/21(土) 03:16:55 ID:qt8GlCH2
>> 626
またまた自分の環境のことしか。。・゚・(ノД`)・゚・。

ありがとー、なおしたー
628 名無し~3.EXE [sage] 2005/05/21(土) 08:30:49 ID:PMbGY9em
お、いいかも。

ttp://www.woodensoldier.info/soft/idm.htm
こんなのを目指すのかな?
629 名無し~3.EXE [sage] 2005/05/21(土) 10:04:12 ID:WcFXC33O
追い、底のお前
630 名無し~3.EXE [sage] 2005/05/21(土) 10:42:15 ID:D8bqzQx3
追われ、天井の俺
631 名無し~3.EXE [sage] 2005/05/21(土) 18:35:41 ID:xp28yZI+
>>628
それつかってたー

それとソフト連図ってのを使ってて、全部一緒にキーボード操作で管理できたらなぁ(*゚ρ゚)
とおもて、作りました。
632 621 [sage] 2005/05/21(土) 22:22:07 ID:ufhqprHW
>>624
OKでしたー。
いつもお疲れ様ですー。
633 名無し~3.EXE [sage] 2005/05/21(土) 23:32:16 ID:PaaymsQI
>>632
確認ありがとうございました(・∀・)
wikiにも上げました。
634 名無し~3.EXE [sage] 2005/05/22(日) 02:20:49 ID:Gtz/L8Im
>>622
使わせてもらってますが、
フォルダAを表示した後、別のアイテムヘッダを持つフォルダBを表示させると、
アイテムはちゃんと表示できても、アイテムヘッダが切り替わりません。
View内でC-M-nやC-M-pをするとBのアイテムヘッダが表示されます。
xyzzyは0.2.2.234です。自分の環境の問題かもしれませんが、いちおう報告させて頂きます。
635 名無し~3.EXE [sage] 2005/05/22(日) 07:10:51 ID:iLgW9eIv
ソフ板の方が次スレになったんでお知らせ

xyzzyの使い方が分からぬやし 励ましあえ その7
http://pc8.2ch.net/test/read.cgi/software/1116710824/
636 名無し~3.EXE [sage] 2005/05/22(日) 14:37:04 ID:UZKco0Ul
>>634
マウスを使って操作するとおかしくなってしまうようでした(´・ω・`)マタヤッテモータ

ありがとー、修正しておきました。
637 名無し~3.EXE [sage] 2005/05/22(日) 15:35:36 ID:zBcvigwt
Excelで範囲選択すると元の色が見えるように選択範囲の色が青っぽくなりますが、xyzzyの範囲選択でもそんなことできないですか?
grepの結果に色を付けると飛んだときの青いラインは元の色が残ってるのでそんな感じの範囲選択ができるといいなと。
638 名無し~3.EXE [sage] 2005/05/22(日) 16:33:12 ID:iLgW9eIv
>>637
リージョンを反転表示させるって意味?
ならば rv-region.l でいけるかと。
ttp://hie.s64.xrea.com/xyzzy/mylib/rv-region.html
639 名無し~3.EXE [sage] 2005/05/24(火) 16:31:19 ID:ODhI4Fbu
>>638
セレクションの反転表示の時のことです。
キーワードとかpickup-patternで色を付けた部分とかが範囲選択すると分からなくなるので
それが分かるように色が透過した反転表示にできたらいいなと思ったのです。
640 名無し~3.EXE [sage] 2005/05/25(水) 20:19:45 ID:ycHQy3RG
C+++のマニュアルみたいなのある?Readme,config.lのコメントとか酷すぎ
641 名無し~3.EXE [sage] 2005/05/26(木) 00:04:19 ID:IOdUOytp
+一個多いぞ
642 名無し~3.EXE [sage] 2005/05/26(木) 00:15:42 ID:G5wqmN7b
そういう拡張があんねん。html+-modeみたいなc+++-mode。
643 名無し~3.EXE [sage] 2005/05/26(木) 01:54:44 ID:5V24gRXo
有能なプログラマの書いたソフトウェアにはコメントなど不要
644 名無し~3.EXE [sage] 2005/05/26(木) 02:30:33 ID:R40sJOmn
>>643
それはその通りなのだが、それにはかなり高いレベルの有能さが必要。
645 名無し~3.EXE [sage] 2005/05/26(木) 08:10:09 ID:HR1DlH4t
c+++-modeは使っているがそれほど難解な設定は無かった
config には説明があるし、設定例も書いてあるのだが…

>>640 はどこがわからないんだ?
646 名無し~3.EXE [sage] 2005/05/26(木) 23:39:51 ID:4h4oaJoo
なんていうかな。。。

>>説明があるし
その書き方が問題、何処からがコメントで何処からがコードかわかりにくい。
コード部に日本語使うとかありえない。
あと、VC以外のコンパイラーの設定部があったけど、これに関しての説明何処
にもないし。
647 名無し~3.EXE [sage] 2005/05/27(金) 00:08:53 ID:GlGTodDi
初歩的な質問でもうしわけないのですが、

C言語等で書き込んだバイナリーファイルの数値データを使って
計算したいと思っています。

で、いろいろ検索してみたんですが、実数データをバイナリーファイル
から読む方法が見つからない状況です。

ご存知の人がいたら教えてください。
648 名無し~3.EXE [sage] 2005/05/27(金) 00:35:33 ID:qd49HszC
>>647
っ (open "file.bin" :direction :input :encoding :binary)
649 647 [sage] 2005/05/27(金) 01:14:21 ID:GlGTodDi
さっそくありがとうございました。

さらに質問なのですが、教えていただいた方法でファイルを開いた後に、
どうやって実数データに変換すればいいかわかりません。

ここのサイトのコードをパクッて(作者様感謝)テストしてるのですが・・・・
ttp://www.netlaputa.ne.jp/~henmi/lisp/xyzzy/common/971113.html

(defun test ()
(let ((fp (open "test.bin" :direction :input :encoding :binary))
(i 0) (ch 0))
(while (setq ch (read-char fp nil)) ←ここの処理
(insert (format nil "0x~2,'0x" (char-code ch)))
)
(close fp))

1文字ずつ読み込んで自分で実数に直さないといけないんでしょうか?
650 名無し~3.EXE [sage] 2005/05/27(金) 01:45:53 ID:tL1eOSTp
>>649
winapi と chunk と構造体を使えばさくっといきそうですね。
651 名無し~3.EXE [sage] 2005/05/27(金) 03:12:15 ID:QsoWG+DJ
>>649
そうです。
652 名無し~3.EXE [sage] 2005/05/27(金) 07:33:10 ID:K2OuyPtw
>>その書き方が問題、何処からがコメントで何処からがコードかわかりにくい。
個人的には
(defvar 変数名
; ○○の場合
; ○○の場合の設定例
"変数の説明")
となっていてxyzzyで読み込むとすぐに説明が目に付き
非常にわかりやすかったんだがこの辺は人によるよな…

>>コード部に日本語使うとかありえない。
コメントや文字列に使うのはありえるだろ。

>>あと、VC以外のコンパイラーの設定部があったけど、これに関しての説明何処にもないし。
変数や関数についてはReadMeにある。


ただ、c+++-modeからメイクやインクルードファイルを開いたりggrepしないなら
特に設定しなくても使えるのでそのまま使うのもありだと思う。
c+++-modeからのメイクは C-c c メイクファイルのパスを入力 なので
複数のメイクファイルを使い分けないときはかなり面倒くさい。
ソリューションのコンパイルは.net持ってないからシラネ。
653 649 [sage] 2005/05/28(土) 01:11:45 ID:nC/PptR2
>>650,651
コメントありがとうございました。

やはり自分で変換しないといけないんですね。
覚悟が決まりました・・・。

>>650
今の私の力量では無理そうなので、最初は無難に変換関数のような
ものを作りたいと思います。

出来たらうpしてみたいと思います。
654 名無し~3.EXE [sage] 2005/05/28(土) 23:15:17 ID:u1NhLnFt
質問です。
行カーソルのアンダーラインを表示すると
'_'や'_'が見えなくなってしまいます。
これを回避するために
'_'や'_'の部分だけ文字やアンダーバーの色を変更したり
カーソルのある行の背景色を変更する
といったことは可能でしょうか?

655 名無し~3.EXE [sage] 2005/05/28(土) 23:34:54 ID:LuZ6zQ2c
>>654
(setq inverse-cursor-line t)

Version 0.2.2.230 の ChangeLog 参照
656 名無し~3.EXE [sage] 2005/05/29(日) 00:31:53 ID:2a2Y4NcV
>>655
横からdクス.まじ便利だ
657 654 [sage] 2005/05/29(日) 00:50:12 ID:ijeFO85x
>>655

ありがとうございます。
この機能、結構困っている人多いような気はしていたんですが、
ぐぐっても見つからなかったんで、不思議に思っていました。
(背景色を変える方でしか調べてませんでしたが…)
まさかChangeLogにあったとは。
長年困ってたんで、ホント助かりました。
658 名無し~3.EXE [sage] 2005/05/29(日) 02:44:06 ID:ecGombLw
行間あければ済む話
あけなきゃ日本語読みづらいし
659 名無し~3.EXE [sage] 2005/05/29(日) 02:47:22 ID:zEass1pe
そう言う問題でもない。
660 名無し~3.EXE [sage] 2005/05/29(日) 06:17:06 ID:8OQvG3cO
重ならないようなフォントを使うのも手。
661 名無し~3.EXE [sage] 2005/05/29(日) 20:30:06 ID:70A9ILqk
すみませんが質問です.「励ましあえ」スレから来たのですが,よく既存のコー
ドには lambda 関数に #' が付けてあります.その理由がわかりません.たい
ていの場合,付けなくても動くからです.

(funcall (lambda (x) (* x x)) 3) => 9
(funcall '(lambda (x) (* x x)) 3) => 9
(funcall #'(lambda (x) (* x x)) 3) => 9
この3つは,全く同じ挙動をするように見えます.何のために,#' を付けるの
でしょうか?

そもそも,#' や ' が付いても動くのはなぜでしょうか?quote や function
が付いているのですから,動かないのが本来のように感じるのです.事実,
Scheme の場合だと,

((lambda (x) (* x x)) 3) => 9
('(lambda (x) (* x x)) 3) => エラー!
という挙動になります.ちなみに,

(funcall ''(lambda (x) (* x x)) 3) => エラー!
(funcall #'#'(lambda (x) (* x x)) 3) => エラー!
のように,クウォートが二重以上になるとエラーになるようです.

どうしてこのような挙動になるのか,どうにも理解ができません.何を読んだ
ら良いのか,教えていただけないでしょうか?
662 名無し~3.EXE [sage] 2005/05/29(日) 21:05:58 ID:slnVczI4
>>661
あまり詳しいことはわからないんですが、とりあえず#'を付けとくと
コンパイル時に関数としてコンパイルされます

あと
> ((lambda (x) (* x x)) 3) => 9
> ('(lambda (x) (* x x)) 3) => エラー!
この挙動は xyzzy でも同じなので、この例を出した意図が今一つわかりません。
CLtL (7.3 Function Invocation) にはこんなこと書いてありますけど。
The difference between funcall and an ordinary function call is that
the function is obtained by ordinary Lisp evaluation rather than by
the special interpretation of the function position that normally occurs.
663 名無し~3.EXE [sage] 2005/05/29(日) 21:17:20 ID:ndPmn0QC
>>661
> この3つは,全く同じ挙動をするように見えます.何のために,#' を付けるの
> でしょうか?
オレの場合、 lambda 以外の関数と書式が揃うからつける。
664 661 [sage] 2005/05/29(日) 21:22:42 ID:70A9ILqk
> あまり詳しいことはわからないんですが、とりあえず#'を付けとくと
> コンパイル時に関数としてコンパイルされます

すみませんがよく分かりません.逆に言えば,lambda 式は関数だと決まって
いるのに,#' が付かないと関数としてコンパイルされないということでしょ
うか?その場合,どのようにコンパイルされるのでしょうか?

また,lambda 式以外で #' を「付けなくても付けなくても良いが,効率化の
ためにはつけたほうがよい」という例があったらお教えいただけませんか?私
は「必ずつけなければならない」例しか知りません.

> この挙動は xyzzy でも同じなので、この例を出した意図が今一つわかり
> ません。

xyzzy-Lisp や Emacs Lisp ではfuncall を介してしか素のlambda 関数を実行
できないと勘違いしておりました.すみません.
665 名無し~3.EXE [sage] 2005/05/29(日) 21:22:44 ID:zEass1pe
ところで私のxyzzyでは
>(funcall (lambda (x) (* x x)) 3)
は 関数が定義されていません: lambda エラーになるのだが。
666 661 [sage] 2005/05/29(日) 21:40:19 ID:70A9ILqk
すみませんが,さらに質問です.lambda 式がそのまま実行できることはわかっ
たのですが,

((lambda (x) (* x x)) 3) => 9
は動いても,

(defun make-square () (lambda (x) (* x x))) => make-square
((make-square) 3) => エラー!
は動かないのは,なぜでしょうか?

(funcall (make-square) 3) => 9
こちらは動きます.これって当たり前なのでしょうか?私は大変混乱しています.

>>665
バージョンはおいくつですか?私は 0.2.2.234 on Windows2000 です.
667 662 [sage] 2005/05/29(日) 21:50:31 ID:slnVczI4
>>664
たとえば
(funcall (lambda (x) (* x x)) 3)
をコンパイルしてみたらそれ自身になりました。

lambda 以外で#'を付けるのはシンボルぐらいしか使ったことないです。
668 名無し~3.EXE [sage665] 2005/05/29(日) 22:07:01 ID:zEass1pe
>>666
2.2.230だった。
念のため234にあげたら普通に関数を返すようになった。
とくにChangeLogにlambdaの仕様変更は書いてないんだけど……。
describe-functionでも230ではlambdaを調べられないし。
この辺の影響もあるのかな? > #'

> ((make-square) 3) => エラー!

これはリストの先頭=関数シンボルがリストになっちゃってるからじゃないかな。
リストの先頭は評価せずにそのままシンボルとして関数と判断されるから、make-squareは関数として扱われない。

> (funcall (make-square) 3) => 9

こっちはfuncallの引数としてmake-squareが与えられるから、make-squareは評価されて関数定義が得られる。
669 661 [sage] 2005/05/29(日) 22:29:47 ID:70A9ILqk
>>667
バイトコンパイルの中身は,完全なバイナリファイルになると思っていたのす
がで,ソースと同じテキストの場合もあるのですね.少々驚きました.

> lambda 以外で#'を付けるのはシンボルぐらいしか使ったことないです。
つまり,「必ずつけなければならない」場合しかほかはご存知ない,というこ
とですね.

現在の私の推測をまとめますと,

・通常の関数の戻り値は,名前空間は変数側らしい.
・lambda 式の戻り値は,名前空間は変数側も関数側も同じで,
 #<lexical-closure: (anonymous)> らしい.
・だから,(lambda ... と #'(lambda ... は同じ値が返される.

こう考えると今までの現象の大半を説明できる気がするのですが,' をつけて
も動く理由は,やはりわかりません.弱りました.
670 668 [sage] 2005/05/29(日) 22:34:26 ID:70A9ILqk
> リストの先頭は評価せずにそのままシンボルとして関数と判断されるから、

ならばなぜ,((lambda (x) (* x x)) 3) のリストの先頭の lambda 式は評価
されて,その戻り値の関数が実行されるのでしょうか?

lambda は special-form だから make-square のような関数と同じふるまいを
しないと考えるべきなのかもしれませんが,釈然としません.
671 661 [sage] 2005/05/29(日) 22:35:38 ID:70A9ILqk
失礼.>>670>>668 さんあてです.
672 661 [sage] 2005/05/29(日) 22:36:42 ID:70A9ILqk
ああ,名前も間違っていた.>>670 の名前は × 668 => ○ 661 です.
673 名無し~3.EXE [sage] 2005/05/29(日) 22:45:31 ID:0RaWZrBV
#' は環境を閉じ込める働きをする。
それに対して、quoteは字面だけのことで、それが書かれた環境について
持ち運ぶことはない。

(progn
(setf (symbol-value 'x) 'global)
(let ((x 'local))
(list (funcall '(lambda () x))
(funcall #'(lambda () x)))))
=> (global local)

(lambda ...) と #'(lambda ...) は同じと思ってていいんじゃないかな。
(lambda ...)はxyzzyの最新版からマクロとして定義されてるようですよ。
674 662 [sage] 2005/05/29(日) 23:25:45 ID:slnVczI4
>>669-670
その疑問については、どうやら私にはちゃんと答えられなさそうですが
このあたりが参考になるかもしれません。(既知かもしれませんが・・・)
http://www.supelec.fr/docs/cltl/clm/node62.html

>>673
#' → lexical-closure
quote → lambda-expression
ということですか。確かにその例を見れば違いがわかりますね。

(lambda ...) で関数を表せるようになったのは最新版からでしたか。
evalmacs.l を見ると確かに #' はあってもなくても同じみたいです。
675 661 [sage] 2005/05/29(日) 23:28:16 ID:70A9ILqk
>>673ありがとうございます.自分も試してみました.

(progn
(setf (symbol-value 'x) 'global)
(let ((x 'local))
(list (funcall '(lambda () x))
(funcall #'(lambda () x))
(funcall (lambda () x))
((lambda () x)))))
=> (global local local local)

これって,'(lambda () x) はクロージャになってないということですか.少々
驚きました.どうしてそんな仕様なのでしょうか.また,>>670 の疑問はまだ
わかりません.ああ,名前空間は難しいです.
676 661 [sage] 2005/05/30(月) 00:00:39 ID:70A9ILqk
なるほど,evalmacs.l にこんな記述がありました.
(defmacro lambda (&whole form &rest bvl-decls-and-body)
`#',form)

しかし私の疑問は解けません.

・((lambda (x) (* x x)) 3) => 9 は動くけれど,
 (#'(lambda (x) (* x x)) 3) => エラー! となるのはなぜでしょう?

あと,
・なぜ,(funcall '(lambda () x)) は,let の内側で評価されているにもか
かわらず,global の x を参照しているのでしょう?

本当に難しいです.Scheme を知っただけでは,Lisp は全然わからないです.
Scheme には funcall はありませんし.
677 661 [sage] 2005/05/30(月) 00:26:41 ID:MfnDUs6k
ちなみに,>>675 を Emacs で実行したところ,結果は
(local local local local)

でした.それはそうですよね.Emacs は動的スコープですが,どの式も let
式の内側で評価されているのですから.こちらの結果は,とても納得がいきま
す.Emacs と違う結果になる xyzzy は,どうしてもわかりません.

どうかこれだけお教えください.私はトリッキーなところで引っかかっている
のでしょうか?それとも,当たり前のことが分からないでいるのでしょうか?
当たり前すぎて教えられないくらいの.

いずれにせよ,そろそろ私の理解力の限界です.落ち着いてから考え直して,
考えが整理されるまで,失礼することにします.大変お騒がせしました.
678 名無し~3.EXE [sage] 2005/05/30(月) 00:46:12 ID:GEqYHcnv
>>676
> ・((lambda (x) (* x x)) 3) => 9 は動くけれど,
>  (#'(lambda (x) (* x x)) 3) => エラー! となるのはなぜでしょう?
これはこういう仕様だからということじゃないですかね。
これを評価するときにはlambdaというシンボルは特別扱いされていると...
#'を付けたやつは、そういう書き方が想定外ということなんじゃないかと。

> ・なぜ,(funcall '(lambda () x)) は,let の内側で評価されているにもか
> かわらず,global の x を参照しているのでしょう?
letの内側かどうかなどfuncall関数にはわからない(知らされない)からです。
funcallはシステムから渡されたリストをグローバル環境で評価しようとするだけです。
679 名無し~3.EXE [sage] 2005/05/30(月) 00:48:53 ID:8ZY2kZsC
落ち着いたのに蒸し返すようですみません.

>>677
この話はCommon Lispの話なのでxyzzyよりもそっちで聞いたほうがいいと思いつつ,
自分がわかる範囲内で考えると,最初のは funcall が起こった時点では, x というシンボル
であるのに対し,後の三つは funcall を引数を評価した時点では 各x は let で
束縛したxの値にバインドされている.
通常の変数はダイナミックなスコープではなくレキシカルなスコープだから 最初のは
globalな値を見に行っているんだろうね.完璧には動作をフォローし切れていないけど.

((lambda (x) (* x x)) 3) が実行できるのはよくわかんね.

なんにしても,ここまでの知識はそうそうは必要なくて,
ダイナミックとレキシカル知っていれば十分だと思う.
680 名無し~3.EXE [sage] 2005/05/30(月) 17:48:47 ID:hxuOLjII
>>677
だいぶトリッキーなところで引っかかってると思いますよ。
少なくとも、いくつかの問題が絡み合っているので、シンプルには答えにくいです。

確かに Common Lisp とScheme の間での違いについては
ム板の Lisp スレでネタ振った方が幸せになれるかも。
Schemer から見たら Common Lisp はいろいろごちゃごちゃしてるだろうしなあ。

xyzzy 固有の問題としては。
funcall が受け付けるのはシンボルか関数それ自体に限られる、
シンボルが渡された場合にはグローバルな関数を見に行く、ということになっているので、
(funcall '(lambda (...) ...) ...)、てのは Common Lisp 的にはエラーになるのが正しかったり。
別に無理に準拠する必要があるほどのことでもないと思うけど。

ちなみに Emacs では ' と #' は基本的に同じものだったりする。
681 661 [sage] 2005/05/30(月) 22:34:47 ID:MfnDUs6k
皆さん,ありがとうございます.実はこんなページを見つけました.読んでも
良くわからなかったのですが,いろいろ教えていただいたので,少しずつわか
り始めました.

Scheme、Common Lisp、Emacs Lispの比較
http://www.ice.nuie.nagoya-u.ac.jp/~h003149b/lang/comparison.html

Common Lisp と Scheme のセマンティクスの違いは,基本的には,名前空間が
二種類あることだけだと思っていました.それはある程度正しいのだ思います
が,それに伴って,これほど多くのシンタックスの拡張が必要だったとは.こ
れらを全ておぼえて使いこなすには,だいぶ時間がかかりそうです.

私は Schemer と言えるほどではありませんが,lambda 式や高階関数を多用す
るプログラミング・スタイルになじんでいます.xyzzy Lisp でも,やはりそ
のような書き方をしたいのですが,その障壁は思ったより高かったのですね.
Scheme から入った人間にはなかなか分かりづらい,特殊な構文ルール(シン
タックス)がたくさん存在しているようです.

いろいろお教えいただきましたが,>>666, >>676 の答えは >>678 さんの,
>>675, >>677 の答えは >>680 さんの説明が,私にはわかりやすかったです.
ただ,まだわかった自信がありません.もっとじっくり考えてみます.

ということで,本当にいろいろありがとうございました.
682 名無し~3.EXE [sage] 2005/05/31(火) 17:16:47 ID:I8socdEx
[UNIX板] 【叩かれて】Emacs Lisp道場【強くなれ】
http://pc8.2ch.net/test/read.cgi/unix/1063880951/460-

ワロスwww
683 名無し~3.EXE [sage] 2005/05/31(火) 17:47:16 ID:J/t+U6Wm
なぜにそのスレなのかと小(ry
684 名無し~3.EXE [sage] 2005/06/01(水) 08:15:47 ID:uzsmLh9k
【叩かれて】Emacs Lisp道場【強くなれ】
460 [2005/05/29(日) 18:46:12] 名無しさん@お腹いっぱい。 <sage>

すみません,きわめて初歩的な質問です.

setq で,関数側の名前空間に lambda 関数をセットするにはどうしたら良い
のでしょうか?つまり,(defun square (x) (* x x)) と同じことを setq で
やるにはどうしたら良いでしょうか?

Common Lisp (というか,xyzzy Lisp)では
(setq square #'(lambda (x) (* x x))) でできるのですが.


xyzzyの使い方が分からぬやし 励ましあえ その7
http://pc8.2ch.net/test/read.cgi/software/1116710824/
039 [2005/05/29(日) 19:25:40 ID:4evFXdBZ] 名無しさん@お腹いっぱい。 <sage>

すみませんが初歩的な質問です.xyzzy-Lisp で,ある変数の関数側の名前空
間に,lambda関数をセットするにはどうしたら良いでしょうか?つまり,
(defun square (x) (* x x)) を setq でやるにはどうしたら良いか,という
ことです.

Emacs Lisp だと fset という関数があって,
(fset 'square (lambda (x) (* x x))) と書けばうまく行くのですが.どなた
かよろしくお願いします.
685 661 [sage] 2005/06/01(水) 22:40:44 ID:0TJsJF81
ああ,私は Emacs Lisp スレから,ここにトラブルを持ち込んでしまったようです.
このスレの皆さま,大変申し訳ありません.
686 名無し~3.EXE [sage] 2005/06/02(木) 03:35:02 ID:ox8ZQiOh
べつにトラブルじゃなかろ。

多少スレ違いだろうと、そいつが自分より熱心で、
自分レベルあるいは自分より知識がありそうなら(あ、これは俺が抱いた勝手な想像ね)
このスレの連中は黙って成り行きを見る。今回みたいにね。

>>682,683が言っているのは、一通り議論が終わったようだから
「なんであんなスレで聞いているのだ(藁」「しかもAAに過剰反応してるよ(藁」
ってところを突っ込んでスレに笑いを添えているだけ。悪気はない。

とゆーわけなので、べつに>>661は申し訳なく思う必要もない
687 名無し~3.EXE [sage] 2005/06/02(木) 22:29:46 ID:zNKJnrad
なに終わった話蒸し返してるんだよww
688 名無し~3.EXE [sage] 2005/06/02(木) 22:35:14 ID:UtCXdGd/
ちなみにsi::*fsetっていうのあるから使ってもいいよ
689 661 [sage] 2005/06/03(金) 01:05:15 ID:IVSWh89g
>>686
そう言っていただけると本当に助かります.切に感謝いたします.

>>688
これはとても便利ですね.ありがとうございます.
690 名無し~3.EXE [] 2005/06/03(金) 09:55:48 ID:Hj2D+fQK
なぁ、www-modeでbasic認証使ってる香具師っている?

www-modeで自鯖に設置したp2を使いたいんだが、
UserとPassの入力をしても何故かPassが違うって言われちまう。
URLに埋め込んでもダメっぽい。

一体何が悪いんだorz
691 refwikiの人 [sage] 2005/06/03(金) 19:43:33 ID:/efg5ec2
>>690
POSTはできてませんが、
GETはできてます。
692 名無し~3.EXE [sage] 2005/06/03(金) 22:45:01 ID:cXGlaz3n
助けてクッキーモンスター
693 名無し~3.EXE [sage] 2005/06/04(土) 01:14:55 ID:LvcxuyoQ
あれ、2ch-modeで投稿できなくなったね。。。
694 名無し~3.EXE [] 2005/06/04(土) 02:56:34 ID:zZZkSzpQ
>>690
www-modeの中身も見てみたけど
おいらの力量じゃさっぱり分かりませんですた。

p2の(phpの?)basic認証はなぜか駄目みたいだけど、
apache2のbasic認証は使えるみたいなので
そっちを使用することにしました。

スレ汚しスマソ
695 名無し~3.EXE [] 2005/06/04(土) 02:58:21 ID:zZZkSzpQ
694 は 691 に対するレスですた
696 名無し~3.EXE [sage] 2005/06/04(土) 06:25:07 ID:8yv4uQx2
書けるかな? http.lのhttp-postのクッキー食ってるとこ。

(cond ((string-match *post-result-cookie* body)
(unless (> loop *http-post-loop-max*)
(incf loop)
(let ((cookies (mapcar #'(lambda (x)
(if (string-match "\\([^=]+\\)=?$" x)
(list (match-string 1) "")
(split-string x #\= nil " ")))
(split-string cookie #\; nil " ")))
(set-cookies (let (cookies)
(dolist (x header)
(when (and (equal (car x) "set-cookie") (cadr x)
(string-match " *\\([^=]+\\)=\\([^;]+\\)" (cadr x)))
(push (list (match-string 1) (match-string 2)) cookies)))
cookies)))
(when (set-difference set-cookies cookies :test #'equal :key #'car)
(http-server-cookie-set url (format nil "~:{~A=~A;~}" set-cookies))
(mapc #'(lambda (x)
(setq set-cookies (adjoin x set-cookies :test #'equal :key #'car)))
cookies)
(setq cookie (format nil "~:{~A=~A;~}" set-cookies))
(set-buffer buf)
(return-from http-post
(http-post url
:post post
:referer referer
:cookie cookie
:loop loop)))))
nil)
697 名無し~3.EXE [sage] 2005/06/04(土) 07:29:23 ID:eOZ7N0tm
>>696
対応サンクスです。
書けるようになった・・・のかな?
この規制って対象は全鯖?
698 名無し~3.EXE [sage] 2005/06/04(土) 08:15:14 ID:YxHnUIV5
>>696
書き込めるようになりました
ありがd
699 名無しさん [sage] 2005/06/04(土) 11:36:39 ID:Qgt+2ga+
書き込めますようね
700 名無し~3.EXE [sage] 2005/06/04(土) 11:37:13 ID:LvcxuyoQ
おお書きこめた!
ありがとう!
701 名無し~3.EXE [sage] 2005/06/04(土) 11:48:43 ID:mYuAixIO
>>696
thx!
702 名無し~3.EXE [sage] 2005/06/04(土) 11:54:50 ID:9jAeIbZt
>>696
               ∧_∧
オツカレチャ━━━━━━(´∀` )━━━━━━ソ!!!!!
              /     ヽ
             / 人   \\   彡
           ⊂´_/  )   ヽ__`⊃
                / 人 (
               (_ノ (_)
703 名無し~3.EXE [sage] 2005/06/04(土) 17:44:10 ID:sqNcsEIv
>>696
サンクス、いけた

けど、今回の仕様変更について書いてあるスレとかあったら教えてくださいな
運営のどっかにあるのかな
704 名無し~3.EXE [sage] 2005/06/04(土) 17:58:56 ID:LVAbbLDw
この辺ですね

[2ch運用情報板] ★山田ウィルス対策スレ3
http://qb5.2ch.net/test/read.cgi/operate/1116127723/

ただウィルスによる自動書き込みを防ぐのが目的なので
はっきりと変更が説明されているわけではないです
705 703 [sage] 2005/06/04(土) 18:16:56 ID:sqNcsEIv
>>704
おお、サンクス
読んでみます
706 名無し~3.EXE [sage そろそろLisp勉強しないとな…] 2005/06/04(土) 22:33:46 ID:AirjDHT3
>>696
書き込めました!
有難うございます!!
707 名無し~3.EXE [sage] 2005/06/04(土) 23:02:06 ID:D/tnQf/g
書き込めないのってどこの板?
特に問題なく書き込めてるけどなあ…。
708 名無し~3.EXE [sage] 2005/06/05(日) 18:50:54 ID:5ZSlYBlC
http.lの何行目から書き換えるのか教えて抱けると大変ありがたいです。
おつかれさまです。
709 名無し~3.EXE [sage] 2005/06/05(日) 18:54:54 ID:XZQ7pZy4
ワロスwwwwwwwwwwwwwwwww
710 名無し~3.EXE [sage] 2005/06/05(日) 19:30:06 ID:qmSQEFW9
>>088 [2005/06/04(土) 20:55:42 ID:zqT6LFIL] 名無しさん@お腹いっぱい。 <sage>

>> >>87
>> http.lの771行目辺りから似たようなところがあるのでそこを書き換えて
>> バイトコンパイルしてダンプ
711 名無しさん [sage] 2005/06/05(日) 20:56:43 ID:vbI2vU/v
>>696
パッチ感謝です
712 名無し~3.EXE [sage] 2005/06/05(日) 21:53:56 ID:jX0EbLUv
>>708
つーか1行目で検索かけりゃわかるだろ。
713 50 [sage] 2005/06/06(月) 21:45:15 ID:gmVtoAo1
ありがとうございました。コレで書きまくれマス。
714 名無し~3.EXE [sage] 2005/06/07(火) 19:26:31 ID:Cyc08d0x
亀本飼いました。
715 名無し~3.EXE [sage] 2005/06/08(水) 21:43:29 ID:QBksfDkt
自分なりのC++モードを構築したいです
インストールしたディレクトリ下の cc-mode.l を
適当に書き換えたつもりですが、うまくいきません
(そもそも、このファイルを書きかえるものでしょうか?
別ファイルを用意してそちらを xyzzy に読み込ませるように
設定するのでしょうか?)
cc-mode.lc があったのでよそのディレクトリに
外したりしてみましたが、かわりませんでした
(cc-mode.l はどんなタイミングで評価されているのでしょうか?)

具体的にどうしたいのか、というと、インデント幅を4にして
C-j を改行とインデント、C-m を改行するだけ、
などです。
おしえてください。よろしくおねがします。
716 名無し~3.EXE [sage] 2005/06/08(水) 22:48:55 ID:OiGpwkb/
>>715
~/lisp 以下のを書き換えるなら、再ダンプしないと反映されない。
キーバインディングやインデント幅の変更ならそこまでする必要ないから
.xyzzy に書いたほうがいいと思う。
717 名無し~3.EXE [sage] 2005/06/09(木) 02:12:07 ID:Q4ClkD+E
よくわからないまま試行錯誤したら、
なんとなくうまく行った気がします
以下の設定を .xyzzy に書きました
(setq c++-indent-level 4)
(setq c++-continued-statement-offset 4)
(setq c++-comment-indent 4)
(define-key ed:::c++-mode-map* #\RET 'newline)
(define-key ed:::c++-mode-map* #\C-j 'c-newline-and-indent)
問題ありそうなところがあればご指導おねがいします
よくわからないので、unless とか boundp とかありません
718 名無し~3.EXE [sage] 2005/06/09(木) 02:48:01 ID:6N/mpVlv
>>717
> (define-key ed:::c++-mode-map* #\RET 'newline)
> (define-key ed:::c++-mode-map* #\C-j 'c-newline-and-indent)
シンボルが間違っているんだけど、写し間違い?
(define-key ed::*c++-mode-map* #\RET 'newline)
(define-key ed::*c++-mode-map* #\C-j 'c-newline-and-indent)

それ以外は問題ないです。
719 名無し~3.EXE [sage] 2005/06/09(木) 19:02:52 ID:/l3L8nx+
> シンボルが間違っているんだけど、写し間違い?
そうです。心配かけました
720 名無し~3.EXE [sage] 2005/06/09(木) 21:38:26 ID:4n8sVe3W
>>696
 乙です〜。でも、「ブラウザを立ち上げ直しててください」エラ
ーが出る板があります。

 関係あるかどうかわからないのですが、

(if (string-match "\\([^=]+\\)=?$" x)
    (list (match-string 1) "")
  (split-string x #\= nil " ")))

は、x が "test=hoge" だと
("hoge" "") になってしまいます。

(if (string-match "^\\([^=]*?\\)=\\(.*\\)$" x)
    (list (match-string 1) (match-string 2))
  (list x ""))

 とした方がいいような気がします。これが「ブラウザを立ち上げ
直してください」の原因かどうかはいまいちわかりませんが…
721 名無し~3.EXE [sage] 2005/06/09(木) 22:05:21 ID:ps43oYJd
2ch-mode用にIDの抽出機能をここで拾ったが,最近は ID の後ろに BE と付くことがあるんだね.
その場合,うまく抽出できてなかったので正規表現を修正してなんとなく動くようにしてみた.

--(defvar *2ch-extract-regexp* (compile-regexp "ID:\\([^] ]*\\)\\( \\|]\\|$\\)"))
++(defvar *2ch-extract-regexp* (compile-regexp "ID:\\([^] ]*\\)\\( \\|]\\|$\\)"))
722 名無し~3.EXE [sage] 2005/06/09(木) 22:08:33 ID:ps43oYJd
間違えた orz
とにかく,*2ch-extract-regexp* を ++ のように修正するってことです
723 696 [sage] 2005/06/09(木) 23:11:14 ID:N4Jxp3rm
>>720
どの板で出ますか?
724 名無し~3.EXE [sage] 2005/06/10(金) 00:15:55 ID:X50fQBkN
>>696試しても書き込めない・・・orz
725 名無し~3.EXE [sage] 2005/06/10(金) 00:23:39 ID:rZmAzzwZ
該当個所を全部消して(コメントアウトして)置きなおした後、
バイトコンパイルしてダンプ再生成したら書き込めたよ。
726 724 [sage] 2005/06/10(金) 00:27:22 ID:X50fQBkN
>>725
該当箇所って771-790行めまでですよね?
バイトコンパイルは http.l だけでOK?
727 725 [sage] 2005/06/10(金) 00:37:39 ID:rZmAzzwZ
自分の場合はそれでいけたよ。
728 724 [sage] 2005/06/10(金) 00:43:52 ID:X50fQBkN
うーん、そっすか・・・何がいけないんだろう。
729 720 [sage] 2005/06/10(金) 00:59:23 ID:1bCgglxZ
>>723
 自分の場合はシューティング板で出ました…って今試してみたら
出ませんでした。(゚∀゚)アレ?

 自分の勘違いだったのだろうか…。お騒がせしてすみませんでし
た。ただ、POSTするCookieが、

1回目
Cookie: NAME=; MAIL=sage

Cookie要求された後の2回目
Cookie: sage=;NAME=;PON=XXXXXXXX.XXX.ne.jp;HAP=999999;

みたいになるので、>>720 の修正はした方がいいような気はします
が…。
730 名無し~3.EXE [] 2005/06/10(金) 18:50:19 ID:5RxgAZ5Y
関係あるかどうか知らんけど他スレで見たのでコピペ

http://qb5.2ch.net/test/read.cgi/operate/1118306674/
> 1 名前:FOX ★:2005/06/09(木) 17:44:34 ID:???0 ?###
> 2ちゃんねる用ブラウザ作者様へのお願い。
>
> 2ちゃんねるでは、現在つなぎかえ連投に対する防御機能を
> 実装しようとしています。その時にクッキーを組み合わせた
> 制御をするので、クッキーは自作することなく2ちゃんねるから
> 貰ってください。これがうまく行くとつなぎかえ連投による
> スレ潰しが出来にくくなるんでは無いかと期待しています。
>
> なお、既に以下の板では新仕様の実験中です。
> テスト用にお使い下さい。
>
> みゃんまー
> http://dso.2ch.net/myanmar/
>
> 六月吉日
731 名無し~3.EXE [sage] 2005/06/11(土) 01:43:16 ID:eBKXM0Nt
tterm.l について質問です.

とりあえず tterm で, SunOS と bash + cygterm にそれぞれログインできました.
SunOSのほうは,日本語以外とくに問題はありませんでした.
ただこれは,もともと日本語がうまく表示できていなかったので,
tterm が原因ではないです.

bash + cygterm のほうは,いろいろ設定を変えてみましたが,いまいち
安定しません. まずこちらも日本語が表示・入力ができません.
また,ラインモードはいいんですが,キャラクタモードで ヒストリを使うと,
C-p だけの場合はいいですが, C-n を使った時点でバグります.
その後はターミナルがバグって使い物になりません.他のターミナルでも
時々起こる,あのプロンプトも含めすべてが漢字になってしまうやつです.

*tterm-input-encoding*, *tterm-output-encoding* は cygwinの場合,
何に設定するのがいいでしょうか?
732 731 [sage] 2005/06/11(土) 01:44:11 ID:eBKXM0Nt
それとついでに
.tterm の読み込み時のカレントバッファは *tterm* の方がよくないでしょうか.
自分は,下のように変えて期待通りの動作をしています.
何か問題があれば突っ込みお願いします.

(defun tterm (&optional host port &key user)
(interactive)
- (trap-errors
- (load "~/.tterm" :if-does-not-exist nil :verbose nil :print nil))
(unless host
(setq host (completing-read "Host: " *tterm-favorite-hosts*)))
(multiple-value-bind (term cmd)
(tterm-init-buffer)
(trap-errors
+ (save-excursion
+ (set-buffer term-buffer)
+ (load "~/.tterm" :if-does-not-exist nil :verbose nil :print nil)))
733 名無し~3.EXE [sage] 2005/06/11(土) 20:55:36 ID:QEBIHs0R
>>731
私はckとputtyでぬくぬくと生活していてcygtermは使ったことが
ないので、tterm使いの方のフォローがあるといいですね。

> *tterm-input-encoding*, *tterm-output-encoding*
これは接続先の環境に合わせるのか基本です。

全体的にいうとLANGとかLC_CTYPEとかLC_MESSAGEとかの
関係は勿論、.inputrcにも注意したりtermcap/terminfoとの関係も
あっていろいろ面倒ですよね。

> .tterm の読み込み時のカレントバッファは *tterm* の方がよくないでしょうか.

何が問題だったのか分かりませんが、好きにいじれば
よいのではないでしょうか。
734 名無し~3.EXE [sage 軍鶏] 2005/06/11(土) 21:06:53 ID:VWpyPXbe
長い夜の中で、心を殺されぬよう・・・ひたすら爪を研ぐ!
735 名無し~3.EXE [sage] 2005/06/14(火) 00:54:54 ID:17DX1Tz6
*scratch*でメニューから「ローカル設定」「もろもろ」で
「インデントにタブを使う」をチェックしているのですが、
*.cppファイルを新規に開くと、そのチェックが
知らない間に外れています
(空白だけを使ってインデントする)

常にタブを使ってインデントするように設定するには
どうすればいいのでしょうか
736 名無し~3.EXE [sage] 2005/06/14(火) 01:07:18 ID:oLdpBdnm
>>735
> 常にタブを使ってインデントするように設定するには
> どうすればいいのでしょうか
(setq-default indent-tabs-mode t)

ローカル設定はそのバッファだけの設定。
他のバッファには影響しません。
# だって「ローカル」だもん。
737 735 [sage] 2005/06/14(火) 01:13:25 ID:17DX1Tz6
>>736
もしかして .xyzzy に
(setq *c++-indent-tabs-mode* t)
とかいておけば、C++では常に
タブにインデントを使う、になりますか?

あと、ローカル設定の意味がわかりました(^^)
738 名無し~3.EXE [sage] 2005/06/14(火) 01:24:58 ID:oLdpBdnm
>>737
> もしかして .xyzzy に
> (setq *c++-indent-tabs-mode* t)
> とかいておけば、C++では常に
> タブにインデントを使う、になりますか?
なります。
$XYZZY/lisp/cc-mode.l の91行目の
(setq indent-tabs-mode *c++-indent-tabs-mode*)
な所で値をセットしています。
739 名無し~3.EXE [sage] 2005/06/14(火) 01:38:48 ID:17DX1Tz6
見たのですが、よくわからない…
737の設定でまずいことってありますか?

737をC++で記述すると
cpp_indent_tabs_mode = true; // グローバル変数をユーザーがセットした
indent_tabs_mode = &cpp_indent_tabs_mode; // xyzzyが内部ポインタをセットした
こんなかんじかなと想像するのですが…
740 名無し~3.EXE [sage] 2005/06/14(火) 01:48:40 ID:oLdpBdnm
>>739
> 見たのですが、よくわからない…
> 737の設定でまずいことってありますか?
特に無いと思います。

> 737をC++で記述すると
> cpp_indent_tabs_mode = true; // グローバル変数をユーザーがセットした
> indent_tabs_mode = &cpp_indent_tabs_mode; // xyzzyが内部ポインタをセットした
> こんなかんじかなと想像するのですが…
個人的なイメージですが
バッファクラスのメンバ変数 indent_tabs_mode があって
コンストラクタで
indent_tabs_mode = cpp_indent_tabs_mode;
な感じで初期化される。
というのが近い感じです。
741 名無し~3.EXE [sage] 2005/06/14(火) 02:08:24 ID:17DX1Tz6
>>740
なるほど。
コンストラクタというのは、なにかしらC++ファイルを開く時に
xyzzyのフックかなにかで生成されるときですよね、たぶん。

長々とつきあっていただきまして、ありがとうございました。
742 名無し~3.EXE [] 2005/06/17(金) 15:43:39 ID:iByhi5Gh
あの、すいません
xyzzyいつも使っているんですが、なんかあるキー操作ミス(なにでミスったのか
覚えていないのですが)をしたら、一定範囲しか操作できなくなって、
おっと、とおもってundo連打したらエラーメッセージが大阪弁でした。
これは一体なんでしょうか。。。
743 名無しさん [sage] 2005/06/17(金) 15:55:00 ID:Wh7EQFXC
>>742
C-x w で直るかも
ナローイングって最初間違ってなると焦るよな・・・
744 名無し~3.EXE [sage] 2005/06/17(金) 15:55:44 ID:6UQcv/ul
>>742
narrow-to-regionだね。デフォルトでは C-x n だったっけ。
操作対象を現在のリージョンだけに限定する。置換とかで特に役に立つ。
解除するのはwiden、デフォルトでは C-x w 。
エラーメッセージは亀井氏の遊び心満載。
745 名無し~3.EXE [sage] 2005/06/17(金) 16:14:44 ID:iByhi5Gh
>>743-744
ありがとうございます。再び大阪弁を拝めました。
しかしなぜここだけ大阪弁なんでしょうか。
超謎。
746 名無し~3.EXE [sage] 2005/06/17(金) 22:40:18 ID:tngih5pu
なぜ、そこだけと決めつけるのか。
747 名無し~3.EXE [sage] 2005/06/17(金) 22:42:46 ID:GCL42qLo
>>746-747
なぜ、どうでもいいところに突っ込むのか
748 名無し~3.EXE [sage] 2005/06/18(土) 00:59:19 ID:IMJXxVE7
なぜ、自分に突っ込むのか
749 名無し~3.EXE [sage] 2005/06/19(日) 16:20:48 ID:v+BlSJLJ
2バイト文字に junk とか punctuation といった
シンタックスを与えることってできませんか?

(set-syntax-junk *xxx-table* #\.)
(syntax-junk-p #\.)

とかしても t が返ってきません
750 名無し~3.EXE [sage] 2005/06/19(日) 18:19:00 ID:Vp04YvX1
>>749
> 2バイト文字に junk とか punctuation といった
> シンタックスを与えることってできませんか?
できないっぽいです。
C++ソース内でASCIIの範囲外だったらnilを返すようになっているように見えます。
751 名無し~3.EXE [sage] 2005/06/19(日) 19:47:03 ID:v+BlSJLJ
>>750
ASCIIしかだめでしたか.
調べていただきありがとうございました.
752 名無し~3.EXE [sage] 2005/06/21(火) 20:01:37 ID:ycyUxUYS
デフォルトだとスレ一覧のsubject.txtが更新時に上書きされちゃうけど、
これを残しておく方法とかないかな。
753 名無し~3.EXE [sage] 2005/06/28(火) 15:09:36 ID:VO55JjEz
>>752
2ch-modeの話?
つうか、何で古いファイルを残しておこうとするのか?
754 名無し~3.EXE [sage] 2005/06/28(火) 17:37:07 ID:MqwFh2zu
Firefoxだと罫線モードで書いた表くずれませんか?
755 名無し~3.EXE [sage] 2005/06/28(火) 23:36:11 ID:Gm3htYja
>>754
等幅フォントでのテキスト表示以外で崩れるのは当たり前じゃないですか?
それとも Firefox 特有の何かがあるのですか?
756 名無し~3.EXE [sage] 2005/06/29(水) 12:21:15 ID:ifWI3W7E
http://mixi.jp/view_community.pl?id=30848
757 名無し~3.EXE [sage] 2005/06/30(木) 01:44:14 ID:I7yieXzG
>>753
すんません。2ch-modeでの話です。
残しとく理由ですか?
私過去を振り返って懐かしむタイプの人間なんですよ。
758 名無し~3.EXE [sage] 2005/06/30(木) 10:04:27 ID:QT8of/Lr
>>757
コード書くのが面倒だろうから,普通のバックアップソフトで定期的に
保存すれば? おれは siteinit.l とかはそうして保存してるけど.
759 名無し~3.EXE [sage] 2005/06/30(木) 19:36:37 ID:Js4uQ+HD
更新するたびにっていうんでなければ *kill-xyzzy-hook* あたりに、
~/.2ch 以下を検索してコピーする関数をいれとけばいいのでは。
面倒ってほどでもないかも。
760 名無し~3.EXE [sage] 2005/06/30(木) 20:01:55 ID:9lBQlhi4
>>758,759
そういうやりかたもありですね。
ありがとうございます。
761 名無し~3.EXE [sage] 2005/06/30(木) 22:06:46 ID:/sT/8H3O
>>754
等幅フォントで表示される部分で表が崩れるならば異常ですが、
プロポーショナルフォントで表示されていて表が崩れるならば正常です。
762 名無し~3.EXE [] 2005/07/03(日) 22:48:29 ID:brUHaOyD
xyzzy本体で追加して欲しい機能、修正してほしい不具合ってなに?
763 名無し~3.EXE [sage] 2005/07/03(日) 23:58:02 ID:XgzgqCVz
>>762
フォントサイズをlispから変えられるようにして
764 名無し~3.EXE [sage] 2005/07/04(月) 00:02:13 ID:SP+mDHK6
>>762
IMEが(ローマ字でなく)かな入力になってるとM-xで半角カタカナが入るのを直して欲しい。
765 名無し~3.EXE [sage] 2005/07/04(月) 00:05:04 ID:uqxAs0dC
アーカイバ機能を強化して欲しい。
書庫ファイルを解凍せずに編集したい。できるけど
766 名無し~3.EXE [sage] 2005/07/04(月) 00:12:09 ID:feeZllZX
全角モード時に、何故かCtrl+Spaceでリージョン開始ができないのをどうにかして欲しい。
767 名無し~3.EXE [sage] 2005/07/04(月) 00:23:34 ID:Oge97bdu
message-boxを任意にエディットボックスモードにできるようにしてほしい。
768 名無し~3.EXE [sage] 2005/07/04(月) 00:36:12 ID:Z90Wj0VX
>>767
唐突に何故。
MLがあまりに淋しすぎてネタを求めて亀井さん降臨ですか?

私は特に不満はないですが、どこかのスレでlispコードが
Emacsの4倍遅いとか酷評されてたのが気になる程度。
769 名無し~3.EXE [sage] 2005/07/04(月) 01:21:27 ID:AOpaPmU/
WindowsがXの4倍早いから心配ない
770 名無し~3.EXE [sage] 2005/07/04(月) 15:22:27 ID:+iOzmirF
>>764にもう一票。
771 名無し~3.EXE [sage] 2005/07/04(月) 18:27:17 ID:xC9yrXnp
>>764
ttp://www5e.biglobe.ne.jp/~fukafuka/xyzzy/tips/tips.html#IME-off
こういゆうこと?
772 名無し~3.EXE [sage] 2005/07/04(月) 19:10:16 ID:W+SAxmw7
>771
IMEのon/offということではなく、たぶんカナロックとかの問題。
M-xとか2ストロークの2打目とかでカナロックがかかったままになっていて
半角カタカナが入ってしまうのではないかと憶測。
773 名無し~3.EXE [sage] 2005/07/05(火) 09:45:52 ID:MyXuu1ec
>>762
行番号の幅を変えられるようにしてほしい。
den8view.l で dde-initiate の所でフリーズするのを直してほしい。
774 名無し~3.EXE [sage] 2005/07/06(水) 00:16:03 ID:r6OMb1gd
>>762
BMP内のunicode文字で表示できずにゲタになってしまうものを
表示できるようにしてほしい。
775 名無し~3.EXE [sage] 2005/07/06(水) 12:49:19 ID:kJEAFiPa
TAGS ファイルの作成で
ソースディレクトリや階層を記憶してほしい
( XTAGS にその情報があって読み込めばよい? )
776 名無し~3.EXE [sage] 2005/07/06(水) 22:27:09 ID:SoI1C+Vy
ミニバッファに入力した文字列の履歴を覚えているのをモード別にしてほしい
777 名無し~3.EXE [sage] 2005/07/06(水) 23:59:39 ID:TnGRrnAQ
ホームディレクトリを認識して、~/ で find-file 等が
できるようにして欲しい (ってできましたっけ?)。
778 名無し~3.EXE [sage] 2005/07/07(木) 02:40:58 ID:s6QkvTvw
>>775
よくわからん。

>>776
検索文字列履歴がモードごとになるってのは嫌ではない?

>>777
できるよね。
779 名無し~3.EXE [sage] 2005/07/07(木) 03:11:06 ID:4HKMFdgY
>>778
ホントですか? XYZZYHOME ではないですよ。
780 名無し~3.EXE [sage] 2005/07/07(木) 11:08:22 ID:kBKqOkKN
>>766
それ欲しいよね。
781 774 [sage] 2005/07/07(木) 13:00:00 ID:O0T5KNEo
>>775
/
/privctrl/
/src/
/src/zlib/

みたいな階層でプログラムをしているとき、

/src/zlib で XTAGS 作るときのソースディレクトリは
ダイアログでは /src/zlib になるけど、本当は
/ じゃないとダメだよね。

毎回 /src/zlib を / にするのが面倒、ということ。

/src/zlib/XTAGS には
#USE ../../
と書かれているのだから
/
で解釈してよ、ということ。
ついでに階層数も 2 とか覚えろと、ということ。
782 名無し~3.EXE [sage] 2005/07/07(木) 19:58:14 ID:vTctf00C
>>781
こんな?

E:\tmp\lisp>diff -wu maketags.l~ maketags.l
--- maketags.l~Fri Mar 26 01:07:44 2004
+++ maketags.lThu Jul 7 19:56:24 2005
@@ -106,7 +106,12 @@
(interactive)
(multiple-value-bind (result data)
(dialog-box *make-tags-file-dialog-template*
- (list (cons 'src (default-directory))
+ (list (cons 'src (if (file-exist-p (merge-pathnames *tags-file-name* (default-directory)))
+ (with-open-file (s (merge-pathnames *tags-file-name* (default-directory)))
+ (let ((line (read-line s)))
+ (when (string-matchp "^#USE \\(.*\\)$" line)
+ (append-trail-slash (merge-pathnames (match-string 1) (default-directory))))))
+ (default-directory)))
(cons 'subdir *make-tags-file-subdir*)
(cons 'depthspin
(if *make-tags-file-subdir*
783 名無し~3.EXE [sage] 2005/07/08(金) 00:24:39 ID:iS1wEiD5
calcモードで10進時、先頭に0があると計算ちょんぼするの直して欲しい。
$ 300-020
284
( ̄□ ̄;)!!
784 名無し~3.EXE [sage] 2005/07/08(金) 00:27:58 ID:51wsHZJ/
ちょんぼじゃなくて単に八進リテラル扱いされてるだけじゃないかそれ
785 名無し~3.EXE [sage] 2005/07/08(金) 00:29:28 ID:iS1wEiD5
>>784
なるほど。すまんかった。
786 名無し~3.EXE [sage] 2005/07/08(金) 00:44:14 ID:GXop1Kdz
>783
先頭に0をつけると8進数として認識されるから。
787 名無し~3.EXE [sage] 2005/07/08(金) 00:44:37 ID:GXop1Kdz
うおーリロードしてなかったスマソ。
788 名無し~3.EXE [sage] 2005/07/08(金) 09:14:44 ID:n1UdbxS1
>>782
その通りだよ。
あんたすごいよ。
ありがとうだよ。
789 名無し~3.EXE [sage] 2005/07/08(金) 17:42:42 ID:qUd7wg5T
xyzzy の拡張でさ、エクセルみたいな事ができるのって無いかな?

row, column でデータが区切られててさ、
列毎の合計とか行毎の平均とかが計算できてさ、
保存する時は、タブかカンマで区切って保存してさ、
で、タブかカンマ区切りのファイルを読み込めて。

そんな感じのあったら教えて下さい。
790 名無し~3.EXE [sage] 2005/07/08(金) 17:53:12 ID:nvnXMtM1
つExcel
791 名無し~3.EXE [sage] 2005/07/08(金) 17:54:27 ID:nvnXMtM1
ウオォ〜アンマァエアウエァ〜♪
792 名無し~3.EXE [sage] 2005/07/08(金) 18:39:56 ID:n1UdbxS1
>>782
XTAGS のある一番上の階層では
ソースディレクトリが空になります…
793 名無し~3.EXE [sage] 2005/07/08(金) 18:56:12 ID:YHDUuW+3
>>789

計算の部分以外はcsv-modeで出来るとおもう。
794 名無し~3.EXE [sage] 2005/07/08(金) 20:33:40 ID:cpTuQGlS
>>792
> XTAGS のある一番上の階層では
> ソースディレクトリが空になります…
ご指摘どーもです。
ttp://xyzzy.s53.xrea.com/wiki/?patch%2F5
795 789 [sage] 2005/07/08(金) 23:38:00 ID:lJcWRso1
>793 計算の部分以外はcsv-modeで出来るとおもう。
トンクス。デフォでは入ってないようなんで、ちと探して入れてみる。

で、計算の部分はいったい誰が書いてくれるんだい?
796 名無し~3.EXE [sage] 2005/07/09(土) 00:10:36 ID:0fgn4hrb
まいくろちっぷすxyzzy部門ッテオヒッコシシマシタ?
797 名無し~3.EXE [sage] 2005/07/09(土) 00:24:10 ID:zXUnRjjp
>>795
マジレスすると探して見つからないなら自分で書くのが吉。
こういうのは欲しいと思った人が作るのが基本なので、
欲しいと思う人がいなかったら作ってもらえる確率は低い。
lisp 知らないなら勉強汁。
798 789,795 [sage] 2005/07/09(土) 01:00:32 ID:futPIFnN
>797
ヤパーリ書かれてしまつたよ。
今日(モウキノウダヨ)、紀伊国屋に逝ってlispの本を調べたんだけど、駄本ばっか。
シンボルのスコープの話しや、パッケージの使い方・作り方・仕組みが全然書いてない。
kcl のあの名著は絶版でつか?
オンラインの良い資料キボンヌ

>793 csv-mode
入れてみたぞ。↓が作者なのかな。
ohkubo.s53.xrea.com/xyzzy/index.html#csv-mode
使ってみた感じ、キーバインドがしっくり来ないけど機能は良かつた。
計算を awk か perl か python にまかせる前提なら、このcvs-mode で間に合うかも。
799 名無し~3.EXE [sage] 2005/07/09(土) 08:35:15 ID:67W7at2A
>>798
Paul Grahamの著書「On Lisp」の日本語版が公開されてる。
ttp://user.ecc.u-tokyo.ac.jp/~t50473/#lisp

実のところ俺はこれと>>2のxyzzy Lisp Programingくらいしか読んだことがないので
その他の良著を一緒にキボンヌしてみる。
800 名無し~3.EXE [sage] 2005/07/09(土) 17:18:11 ID:Mcl0Rosw
ハチョパキッ。
801 名無し~3.EXE [sage] 2005/07/09(土) 18:28:49 ID:01DnPpo9
>>798-799
kcl っていうと湯浅先生のこれ?
http://iwanami.co.jp/.BOOKS/00/X/0076850.html

"On Lisp" と来たら、同じ Graham の "ANSI Common Lisp" が翻訳されてますな。
http://www.pearsoned.co.jp/washo/prog/wa_pro58-j.html

"On Lisp" 読んだ後で読む必要もないだろうけど。
パッケージ周りはこれも("On Lisp" も)軽く触れている程度だね。

パッケージ関係で手軽に読めそうなのっていうと↓かなあ。英語だけど。
ttp://www.flownet.com/gat/packages.pdf

後は仕様書読め。になっちゃうのが Lisp 界隈の弱いところかね。
xyzzy でも autoload と絡んでトラブルになりやすいし、
チュートリアルがあったほうがいいんだろうけど。

あと、editor パッケージに入っているような関数は emacs 由来のものが多いから、
emacs 関連の本も読むといいのかもしれない。けど、私は読んでない。
meadow から info 取ってきて適宜、って感じだなあ。

ところでシンボルのスコープって、名前空間の話だよね?
802 789,795,798 [sage] 2005/07/11(月) 00:04:18 ID:BoWzgpMK
>799 Paul Grahamの著書「On Lisp」の日本語版
dd。pdf 保存してがりがり読んでまつ。

>801 kcl っていうと湯浅先生のこれ?
それそれ。一冊欲しい。ぜひ手元に欲しい。っていうか誰かくれ。
一応見れる場所にはあるけど見に行く手間がねぇ・・・

> ところでシンボルのスコープって、名前空間の話だよね?
そうそう。レキシカルだとかダイナなんとか。他にパッケージ越しの参照とかがわからん。
ソースを見たらふいんきは掴めた。んだが、正確には不明だし。

;;以下参考。オレが(今の時点で)書ける、一番複雑なコード
; R[Ω] to G[ひ] = (R[Ω] to G[S]) コンダクタンス アドミタンス
(defun G(R)
 (/ 1.0 R))
; 抵抗の並列接続
(defun res(r1 &rest rrr)
 (if rrr
  (G(+(G r1)(G(apply 'res rrr))))
  r1))
803 名無し~3.EXE [sage] 2005/07/11(月) 01:24:06 ID:xK/fuKuU
On Lispいいな。会社に持ち込んでこそっと読もう。

なんだ、湯浅先生のやつネット書店でもまだ取り扱ってるじゃん。あげませんw
804 名無し~3.EXE [sage] 2005/07/11(月) 01:43:29 ID:K5Nqruyo
>>802
レキシカル/ダイナミックスコープに関してはここなんかどうでしょ。
Common Lisp は両方あるから、便利といえば便利だけど、慣れないと判りづらいかも。
ttp://www.ice.nuie.nagoya-u.ac.jp/~h003149b/lang/comparison.html
805 名無し~3.EXE [sage] 2005/07/11(月) 01:44:43 ID:j4+0t+Cv
・Extended xyzzy lisp library
http://xyzzy.s53.xrea.com/extlib/
・xyzzy QandA
http://xyzzy.s53.xrea.com/qanda/
806 名無し~3.EXE [sage] 2005/07/11(月) 05:26:08 ID:ryfgvU/V
On Lisp は最初のほうは目から鱗だったけど途中から難しくなって挫折した。
難しくなるというよりテクニック集みたいな感じになって
読むのがめんどくさくなったというほうが正しいかな。
まあでも最初のほうの関数的プログラミングの考え方だけでも読む価値はあると思う。
807 名無し~3.EXE [sage] 2005/07/11(月) 23:02:08 ID:TQghBX0z
(declare (special がいまいち理解できません。
どなたか教えてください。
808 名無し~3.EXE [sage] 2005/07/11(月) 23:47:00 ID:USlQ43eH
>>807
symbol を special変数 にします。
「special変数」はわかっていますか?
説明を書いてみてください。
809 名無し~3.EXE [sage] 2005/07/12(火) 01:00:13 ID:e/beU6aw
>>807
まず reference の declare の項は読んだか?
読んでないのならそれから嫁.話はそれからだ.
読んでいるなら,何が分からないのかもっと具体的に
810 名無し~3.EXE [sage] 2005/07/12(火) 01:51:29 ID:oSUyC42g
>>806
前半は関数型プログラミング入門、中盤はマクロのチュートリアル、
後半はマクロのケーススタディ、って感じだね。

中盤以降は必要を感じたら適宜、って感じでもいいと思う。
それなりの規模のアプリケーションを書くための基礎ライブラリをどう書くか?
みたいな感じのことをやってるので、ちょっとスクリプトを書きたい、
という場合には話が大きすぎて実際の応用が見えにくい感はあるし、
関数であらかた片がつくところでマクロを持ち出すのは迂遠でもある。

特に xyzzy の場合エディタ用の充分なライブラリは既にあるわけだしね。当然だけど。

まあマクロ自体が埋め込み言語を作る用途に一番力を発揮するものだし、
そうなるのも仕方がないけど。
811 名無し~3.EXE [sage] 2005/07/12(火) 23:27:19 ID:d8ESHRKQ
multiple-replace.lを使わせていただいてます。
自分で設定した置換内容のリストは、「保存」をするとどこかのファイルに
保存されるのでしょうか。そうであれば、そのファイル自体を編集して
置換リストを作りたいのですが……
812 名無し~3.EXE [sage] 2005/07/13(水) 00:01:01 ID:RMx63Uje
>>811
ども。
現状では multiple-replace.l の置換内容のリストは普通の置換
(replace-dialog) などと同じくヒストリに保存しているため、
.xyzzy.history に記録されています。
しかし、上記ファイルを直接編集するのはあまり宜しくありません。

~/.multiple-replace といったファイルに対して保存&更新する
ということも過去に考えはしたのですが、実装するには至ってい
ません。
どういう風な実装が、皆さん管理の手間なく使いやすいでしょうか?
813 名無し~3.EXE [sage] 2005/07/13(水) 00:35:08 ID:s+LthZNY
>>812
.ini でよく用いられる形式に一票
シンプルで使いやすそうな気がします.

[適当な名前1]
search1=A[BC]
replace1=D\\1
regexp=t

[適当な名前2]
search1=ABC
replace1=DEF
regexp=f

のように.
ひとつのファイルにいくつも書けるか1つだけかは
どちらでもいい気もします.
814 811 [sage] 2005/07/13(水) 09:56:45 ID:pPU2+3Bw
さっそくありがとうございます。>>812
別ファイルに保存できると、他のxyzzyユーザーとの共有という
意味でも格段に便利だと思っています。
ぜひご検討を……

ファイルの形式については、わたしも>>813に一票投じます。
815 名無し~3.EXE [sage] 2005/07/13(水) 14:23:57 ID:fRSAKkg6
Kamail の振り分け設定ファイルみたいに

(設定名1 search1 replace1 regexp1)
(設定名2 search2 replace2 regexp2)
・・・・・・・・・・・・・
とか楽では。
816 名無し~3.EXE [sage] 2005/07/13(水) 18:12:13 ID:s+LthZNY
>>815
search1 は リストの2番目とかだと,フォーマットを忘れそう.

(設定名1 :search1 "ABC" :replace1 "DEF" :regexp t)

とかなら,書くとき冗長と思うかもしれないけど,時間たってから読み直すときに楽だと思う.
どうせ2回目以降はcut&pasteでしょ.
でそうして,replace1 に与えるものは文字列だけじゃなくて関数も渡すことができるどうでしょう.
引数は match-data で得られる値,それを使って置換する文字列を組み立てる関数を指定できる.
つまり,同時置換が可能な scan-buffer として multiple-replace を使用できるってことです.

でもこうなると, multiple-replace 本体にも手を入れる必要が出てきます.
なので,何が可能なように実装するか,その辺の判断は作者さんに任せるとして,
とりあえず要望としてあげておきます.
817 名無し~3.EXE [sage] 2005/07/13(水) 19:01:07 ID:eARiIfvP
もともとの要望は
>>811
> 置換リストを作りたい
ということなので、置換リストのファイルを読み込んで、
ダイアログにセットするような関数があればいいんじゃないですか。
置換のリストはタブ区切りでもカンマ区切りでも何でも。
818 名無し~3.EXE [sage] 2005/07/13(水) 23:46:20 ID:9b2RJqzx
on wine
http://49uper.com:8080/html/img-s/66073.jpg

EPIA600MHzなので激しく重いですが、
起動時間だけはアレより早いです。

素直にXX使えよ、とかなしで^^;
819 名無し~3.EXE [sage] 2005/07/13(水) 23:50:42 ID:9b2RJqzx
すぐ上でやられてるし。。。鬱死

820 名無し~3.EXE [sage] 2005/07/14(木) 00:21:33 ID:gWjg8Fim
せっかくなので報告。

環境: fedora core4
手順:
・fc3用のrpmを本家から持ってきてインストール
・~/.wine/c_drive/windows/systemにC:\WINNT\system32
にあるファイルをすべてコピー。
# もっとハードルが高いものと思って敬遠していたのですが、
いまは楽ちんみたいです。

filerで落ちたりすることはありませんでした。
821 名無し~3.EXE [sage] 2005/07/14(木) 15:03:24 ID:rCQ66dIQ
WINNTってことは2000かな
822 名無し~3.EXE [sage] 2005/07/16(土) 20:44:19 ID:+0nCKDm8
FreeMind-mode ない?
823 名無し~3.EXE [sage] 2005/07/16(土) 21:05:55 ID:ouOBspTC
>>822
xyzzy を使ってやることではないような気が・・・と個人的には思った。
テキストベースじゃきつくない?
824 名無し~3.EXE [sage] 2005/07/16(土) 21:24:37 ID:+0nCKDm8
了解
825 名無し~3.EXE [sage] 2005/07/17(日) 13:37:20 ID:qRzsvX7g
ちょっと質問お願いします。

grep-dialog からの grep 結果をファイル名順にソートして表示したいと思っているのですが、
非同期でgrep のときは glob.l の107行と108行の間に
(setq files (sort files #'string-lessp))
を追加すればいいようなのですが、非同期でないときはうまくいきません。
glob.l の64〜72行あたりを変えればいいような気がするのですが、難しいです。
方法をお分かりの方、ご教示お願いします。
826 825 [sage] 2005/07/17(日) 14:14:36 ID:07SblOkM
自己レスですみませんが、
grepd.l の77〜92行を
(dolist (d dirlist)
(let ((files (sort (directory d
:recursive *grep-subdir*
:file-only t :wild file)
#'string-lessp)))
(dolist (f files)
(when (scan-files-1 f pattern temp scanner)
(setq found t))
(when found
(setq tick (get-internal-real-time))
(when (> (- tick last-tick) 500)
(setq last-tick tick)
(set-buffer buffer)
(goto-char (buffer-stream-point *standard-output*))
(refresh-screen)
(setq found nil)))
(do-events)))))))
に差し替えれば一応OKみたいです(他の拡張などに影響が出るかもしれませんが)。
お騒がせしました。(^^ゞ
827 名無し~3.EXE [] 2005/07/17(日) 15:24:22 ID:bwCkWVLA
http://www.geocities.co.jp/Technopolis-Mars/8229/xyzzy/xyzzy-color.html
ここの「テキストモード時の色設定」を便利に使わせてもらってますが
別板のPerlやCのスレをテキスト化したファイル50〜100個ぐらいにgrepかけると
CPU使用率が100%になって固まってしまいますが、なぜでしょうか?
これをコメントアウトすると上記の症状は出なくなります

828 名無し~3.EXE [sage] 2005/07/17(日) 20:56:28 ID:wV57B0Ok
box-drawing-modeをマウスで使うことはできないんですっけ?
829 名無し~3.EXE [sage] 2005/07/18(月) 01:07:41 ID:cWo5lDOr
>>827
;テキストモード時の色設定 以下と、
;;テキストの色を変更する 以下を別々にコメントアウトするとどうなるでしょうか。
どちらかだけをコメントアウトした場合でも同様の症状が出ます?
あと、ダイアログの「非同期でgrep」に
チェックを入れた場合と入れなかった場合で違いは出ますか?
830 名無し~3.EXE [sage] 2005/07/18(月) 04:20:29 ID:562sEFbW
複数の開いたファイルのタブをマウスではなく、キーで、
選択切り替えたしたいのですが、良い方法ありますか?
831 名無し~3.EXE [sage] 2005/07/18(月) 05:05:12 ID:qlqL+e9F
>>830
> 複数の開いたファイルのタブをマウスではなく、キーで、
> 選択切り替えたしたいのですが、良い方法ありますか?
・F2 (select-buffer)
・C-x b (switch-to-buffer)
・C-x C-b (list-buffers)
あとは
next-buffer と previous-buffer とか
832 名無し~3.EXE [sage] 2005/07/18(月) 12:36:31 ID:OpbUBZGc
ディスプレイ複数つかってて、
プライマリで無いほうにxyzzyを持っていって終了しても
ウィンドウの位置を覚えていてくれない・・・
これって設定でどうにかできますか?
833 名無し~3.EXE [sage] 2005/07/18(月) 22:39:59 ID:vhtYFgqY
>>832
コマンドラインオプションを使うとか。
(xyzzy/html/00README.html に説明がある)
834 名無し~3.EXE [sage] 2005/07/18(月) 23:02:55 ID:GotPhNhG
http://news.goo.ne.jp/news/pc/it/20050716/pw2005071601-pc.html

これを使えば、モードごとにキーバインド覚える手間が減少……?
835 827 [sage] 2005/07/18(月) 23:20:51 ID:XDGsi2Rv
なんかアクセス禁止?になってたみたいでレス遅れましたすみません。

>>829
>どちらかだけをコメントアウトした場合でも同様の症状が出ます?
同様の症状が出ます。
両方をコメントアウトすると、grep開始→ちょっと固まったっぽい挙動1〜2秒→grep完了となります。

>あと、ダイアログの「非同期でgrep」に
違いは出ないです。相変わらず固まってしまいます。
836 名無し~3.EXE [sage] 2005/07/19(火) 03:06:10 ID:ZogdcAts
OCNか?今回は災難だったな。
次規制食らったら運営カテゴリの板見に行くといいよ。
837 名無し~3.EXE [sage] 2005/07/19(火) 18:45:00 ID:AAEMAsTX
下記のページにあった、fortran.lを入手したいのですが、どなたかウプしていただけないでしょうか?
ttp://homepage2.nifty.com/seiya-suda/fortran.html
838 名無し~3.EXE [sage] 2005/07/19(火) 20:59:33 ID:aZ9tT3F6
>>837
どうぞ.
http://xyzzy.s53.xrea.com/wiki/?tips%2FFortran%A5%E2%A1%BC%A5%C9
839 837 [sage] 2005/07/19(火) 21:41:21 ID:AAEMAsTX
>>838
ウッヒョォオオオオ!有難うございます!
fortranのプログラム作成だけならLinux起動するよりxyzzyで編集してcygwinの方が
楽だと最近思って移行しようとしています。

検索がぜんぜん足りていなくて済みませんでした
840 名無し~3.EXE [sage] 2005/07/20(水) 00:08:33 ID:4fLMoPhM
>>834
普通キーボード見ないから結局関係ないんじゃない?
841 名無し~3.EXE [sage] 2005/07/20(水) 00:29:31 ID:xbfk2EcU
>>840
ソダネ
842 名無し~3.EXE [sage] 2005/07/22(金) 01:33:43 ID:8KzVNUo1
>>834
これを使えばキーボードでもぐらたたきができる!
843 名無し~3.EXE [] 2005/07/22(金) 21:41:19 ID:mUubCEAv
今更で恐縮ですが>290-291はどうやって2ch-modeに
組み込めばいいんですか?
844 名無し~3.EXE [sage] 2005/07/22(金) 21:55:55 ID:F/dS+TBS
>>843
全部まとめてconfig.lにコピーして下さいな。
845 名無し~3.EXE [sage] 2005/07/22(金) 22:12:00 ID:l9Uh581x
>844
config.lにコピペしましたが動かないです。とりあえず
ダンプもしなおしたのですが。
load-liblyでは動くのですが環境の問題なのですかね
846 名無し~3.EXE [sage] 2005/07/22(金) 22:37:43 ID:msCJoIad
config.lc があるのにコンパイルして無いとかいう越智なのでは
847 名無し~3.EXE [sage] 2005/07/22(金) 23:10:30 ID:l9Uh581x
>>846
config.lcは無いのですが・・・
他の方はconfig.lに記述で問題ないとなると・・・
config.lには2ch_mode_otherbbsや他にもいろいろ書いているので
それらの何かが問題ありなのかも知れません。
ひとつずつ外しながらやってみます。
どうもありがとうございました。
848 名無し~3.EXE [sage] 2005/07/22(金) 23:20:22 ID:/NCWKu0n
>>847
>301>721も参考に
849 名無し~3.EXE [sage] 2005/07/23(土) 00:48:58 ID:Rcs/nL9k
>>848
アドバイスありがとうございます
しかしsiteinit.lも.xyzzyも何のために書いたのか
分からない記述が結構あって泣けてくる
850 名無し~3.EXE [sage] 2005/07/23(土) 00:59:39 ID:Vs2zJwgA
お前たちのsiteinit.lは何行ぐらいあるのか教えてくらさい
851 名無し~3.EXE [sage] 2005/07/23(土) 02:06:14 ID:nur+s7d5
1669行会ったよ。
LISP書けないから全部コピペだけど。
852 名無し~3.EXE [sage] 2005/07/23(土) 03:33:30 ID:rftGY4uw
xyzzy で使ってる lisp ( *.l )って、emacs でもそのまま使えるよね?
853 名無し~3.EXE [sage] 2005/07/23(土) 04:35:43 ID:JtISncCJ
駄目だろうな。
854 名無し~3.EXE [sage] 2005/07/23(土) 10:30:40 ID:p68s+nQu
>>852
emacs は emacs lisp
xyzzy は Common lisp
仕様が違うので無理だと思った方がいい。
855 名無し~3.EXE [sage] 2005/07/23(土) 17:53:24 ID:LLkS9ehW
5800行でした
856 名無し~3.EXE [sage] 2005/07/23(土) 20:21:28 ID:5c41wU5H
すごいな
俺1000行くらい
857 名無し~3.EXE [sage] 2005/07/23(土) 22:10:17 ID:HRsqyuSe
siteinit.l は355行しかない
.xyzzy は1400行ぐらい
858 名無し~3.EXE [sage] 2005/07/23(土) 22:49:56 ID:eKVw2/K6
>>857
起動遅くない?
859 名無し~3.EXE [sage] 2005/07/24(日) 01:03:41 ID:FiP9UxDb
siteinit.l: 130行
.xyzzy: 44行

なんか悔しい。
860 名無し~3.EXE [sage] 2005/07/24(日) 01:18:11 ID:Z4daQC1y
siteinit.lがちょうど1000行ぐらい
.xyzzyはよくワカンネから使ってない
861 名無し~3.EXE [sage] 2005/07/24(日) 01:27:23 ID:1vg5TI8x
siteinit.lは1000ちょい。
.xyzzyは400行のうち半分コメントアウト。

でもsite-lispにほかの.lも書いてるのであんまりsiteinitの行数に意味はなかったり。
862 名無し~3.EXE [sage] 2005/07/24(日) 02:34:33 ID:RkGZBIeH
>>844
まじで!?
該当箇所をsearch.lに挿入後コンパイルし直して使ってるよ。
問題なく使えてるけど、もしかしてやっちゃったかな?
863 名無し~3.EXE [sage] 2005/07/24(日) 02:56:48 ID:eVSRtx2t
>>862
> 該当箇所をsearch.lに挿入後コンパイルし直して使ってるよ。
> 問題なく使えてるけど、もしかしてやっちゃったかな?
問題ない。
ただし、2ch-modeをバージョンアップする時に上書きされる危険性があるのでそ
れを忘れないようにしないといけない。
お勧めはやっぱり、 ~/.2ch/config.l だけどね。
864 855 [sage] 2005/07/24(日) 03:37:42 ID:k6j8Trok
<チラシの裏>
ダンプファイルが大きかったので,autoload に少し直してみた.
ダンプが 100kb 減ったけど,体感できる差はやっぱりなかった.
でも設定をいじってるときは楽しいな
</チラシの裏>
865 名無し~3.EXE [sage] 2005/07/24(日) 10:21:43 ID:kEkULFfc
>>858
たぶん2秒ぐらいかかってる。
あんまり気にしてなかったんだけどそう言われれば遅いかも。。
866 名無し~3.EXE [sage] 2005/07/24(日) 10:31:37 ID:BKw24mqz
昔のemacsに慣れてる人はあんま気にしないのかも。
10秒くらいかかるのは当たり前だったし。
867 名無し~3.EXE [sage] 2005/07/29(金) 23:38:42 ID:MgWknCpt
お前らそんなにsiteinit.lが長いんなら,
100行くらいの俺に
半角英数と数字に対してdarrevが随時適用されるコード教えてください.

wikiに乗ってる奴の正解版ね.
868 名無し~3.EXE [sage] 2005/07/30(土) 13:37:33 ID:6MvG+Fmz
>>867
darrev を含むページは見つかりませんでした。
869 名無し~3.EXE [sage] 2005/08/01(月) 20:44:23 ID:6/wUu8ND
c-modeにちょっとバグがあるっぽいのだが
/*
コメント
/**/
こういう風なコメントの書き方すると次の行のインデントがおかしくなる。
こんな書き方する人いないのかな?
870 名無し~3.EXE [sage] 2005/08/01(月) 21:27:26 ID:zQQNEUuV
>>869
C の /* */ がネストできない件について
871 名無し~3.EXE [sage] 2005/08/01(月) 21:46:21 ID:0tKmGtvH
/* /* */
ネストしてないぞ。
872 名無し~3.EXE [sage] 2005/08/01(月) 22:11:09 ID:z80Ef7RE
xyzzy自体のバージョンうpってないですよねぇ・・・
まぁどこも文句つけられないぐらいなじんでる自分がいるんですが・・・
873 名無し~3.EXE [sage] 2005/08/01(月) 22:32:28 ID:ssUt9Wgq
ごく最近あがったばかりだが。
874 名無し~3.EXE [sage] 2005/08/01(月) 22:41:24 ID:fOiFY4a5
何か本体に不満があるなら言えば?

ちなみにおれはファイラーを先に起動させたい時があるので、
独立に扱えたら嬉しい
875 名無し~3.EXE [sage] 2005/08/01(月) 22:47:01 ID:j/onjFEh
>>874
構造上絶対に無理だろうね。
876 名無しさん [sage] 2005/08/02(火) 10:19:31 ID:PIwkPa4P
単に xyzzy -e "(open-filer)" ってショートカット作って
ファイラー先に起動したいときはこっち使うとかじゃだめかい?
877 名無し~3.EXE [sage] 2005/08/03(水) 06:34:09 ID:Rm7mtxJd
>>874
無理やりそれっぽくさせるのが
xyzzyの使い方がわからぬやし 励ましあえ その4
の 949-950 あたりにあるけど。
ttp://makimo.to/2ch/pc5_software/1073/1073911622.html#949
878 874 [sage] 2005/08/05(金) 22:56:14 ID:MbdYZwjB
ほんとにそうしたいのであれば
ソースコードあるんだから自分で切り離して使いな
xyzzyと連携しているから使えるファイラであって単品では魅力ないけどね
879 名無し~3.EXE [sage] 2005/08/06(土) 02:02:59 ID:916amOjj
おまいが言い出したんぢゃないか???
880 名無し~3.EXE [sage] 2005/08/06(土) 16:34:28 ID:JAC29uTB
あのファイラーってLispで作られてるんじゃないの?
881 名無し~3.EXE [sage] 2005/08/07(日) 01:09:54 ID:gUuZYTPZ
そう。だからLISPインタープリンター(xyzzy本体)がないと動かない。
882 874 [sage] 2005/08/07(日) 19:00:08 ID:lkfEqPPv
偽物が、、
つーか>878ってあからさまに偽物による釣りじゃないか
>881
ってことはLISPインタープリターを独自に内蔵したファイラーでないといかんのか
もし完璧に分離しようと思ったら。
883 名無し~3.EXE [sage] 2005/08/08(月) 03:03:09 ID:e1fDRP7C
何を議論しているのかよく分からんが、
xyzzyのファイラはlispで書かれてはいないよ。
884 名無し~3.EXE [sage] 2005/08/08(月) 05:36:28 ID:Gx7NBBGW
>>883
lispで書かれた部分は存在するし、それを取り去ったら
xyzzyのファイラではなくなるだろう。また、ユーザがLispで
拡張できるという利点は重要なので実はどっちでも一緒だ。
885 名無し~3.EXE [sage] 2005/08/08(月) 07:13:24 ID:L//dVg++
おまいが言い出したんぢゃないか???
886 名無し~3.EXE [sage] 2005/08/08(月) 18:43:18 ID:NCZb0E+N
KaTexではまりました。
終了時に保存されるバッファの状態がおかしいです。

再起動したとき、.tex以外の拡張子をもつファイルのバッファは再現されるのですが、
.texのバッファは1つだけしか再現されず、これより右に来ていたバッファは全てなくなってしまっています。

終了前
[バッファ] test.c test.txt tmp.dat hoge.tex hoge1.tex hoge2.tex test2.c
再起動後
[バッファ] test.c test.txt tmp.dat hoge.tex hoge1.tex




KaTexの設定は.xyzzyに書いてあります
(pushnew (merge-pathnames "site-lisp/katex" (si:system-root)) *load-path* :test #'equal)
(require "elisp")
(pushnew '("\\.tex$" . elisp::katex-mode) *auto-mode-alist* :test #'equal)
(autoload 'elisp::katex-mode "katex" t)


wikiでも調べたのですが、該当するものはないみたいです。
助言お願いします
887 名無し~3.EXE [sage] 2005/08/08(月) 20:31:30 ID:PHwkZ3nL
>>886
それって再現率100%なの?
まったくそんなこと起こらないんだけど.
終了時のバッファ状態の保存は何でやってるの?
デフォルトセッション?
888 名無し~3.EXE [sage] 2005/08/08(月) 21:02:23 ID:NCZb0E+N
100%です。
xyzzyそのものをインストールし直しても同じです。


>>終了時のバッファ状態の保存は何でやってるの?
>>デフォルトセッション?
今試してみたんですが、
セッションを名前を付けて保存した場合は、この現象は出ないです。

889 886 [sage] 2005/08/08(月) 21:46:12 ID:NCZb0E+N
>>886訂正です
X 再起動後
X[バッファ] test.c test.txt tmp.dat hoge.tex hoge1.tex
○再起動後
○[バッファ] test.c test.txt tmp.dat hoge.tex
890 887 [sage] 2005/08/08(月) 21:46:42 ID:PHwkZ3nL
>>888
そういえば,終了時の状態を保存する って言うのがあるなぁと,
思い出しので試してみたら・・・・  なるね.

メニュー等の初期化で例外が発生して,ファイルの読み込み処理が終了してる.
*KaTeX-use-toolbar* が non-nil の場合は ツールバーの表示のときに
KaTeX-tool-bar が定義されて無いとエラーが出る.
そうじゃないときは,かてふのメニューを追加しようとして menu が nil
で例外が発生する.自分は autoload してるけど, (requrie "katex") しておいても
menuは nil でエラーが出た.

起動時処理で
4. ヒストリを初期化
(history.lのload-history-fileで、*load-history-hook*を実行)
5. メニューを初期化
(app-menu.lのinit-app-menusで、*init-app-menus-hook*を実行)
という順番で実行するので,ヒストリーでkatexを実行しようとすると,
KaTeX-add-menu の実装がまずいことなってしまう.

891 887 [sage] 2005/08/08(月) 21:54:03 ID:PHwkZ3nL
ぐぐっても見つからなかったので張っとくけど
nonentityさん作の default session.

;; 終了時のバッファの状態を勝手にセッション保存
(defvar *default-session-file* (merge-pathnames "default.ssn" *default-session-directory*))
(add-hook '*save-history-hook*
'(lambda ()
(and
(not editor::*current-session-file-name*)
(> (length (delete-if-not
'get-buffer-file-name
(buffer-list))) 0)
(save-session *default-session-file* t))
t))

こっちのほうが便利じゃないだろうか.
892 名無し~3.EXE [sage] 2005/08/08(月) 22:27:27 ID:F1axZj2x
>>890
> 起動時処理で
> 4. ヒストリを初期化
> (history.lのload-history-fileで、*load-history-hook*を実行)
> 5. メニューを初期化
> (app-menu.lのinit-app-menusで、*init-app-menus-hook*を実行)
> という順番で実行するので,ヒストリーでkatexを実行しようとすると,
> KaTeX-add-menu の実装がまずいことなってしまう.
そういう原因なら load-history-file の
(when *save-resume-info*
以下をごっそりと *post-startup-hook* あたりに引っ掛けちゃえばokじゃない?
893 名無し~3.EXE [sage] 2005/08/08(月) 22:57:29 ID:NCZb0E+N
>>891
ありがとうございます。
とりあえずそれを使わせてもらいます。
894 名無し~3.EXE [sage] 2005/08/09(火) 00:43:31 ID:uaeE/SD6
>>883
~/lisp/filer.l
895 名無し~3.EXE [] 2005/08/11(木) 10:46:14 ID:MnuNcNyo
局所にうすの中の人おつかれさまです。

# 貴重なニュースリソースだったので、できればファイルデリートせずに
# そのまま残しておいてほしかったけど、そういうのが好きじゃないんだろうな。
# del.icio.us に保存したブックマーク意味なくなっちゃった…
896 名無し~3.EXE [sage] 2005/08/11(木) 16:54:30 ID:mvvLXcLF
局所にゅうすの中の人へ
ttp://members.jcom.home.ne.jp/pctips/www/concept/close.html
897 名無し~3.EXE [sage] 2005/08/11(木) 17:06:25 ID:txAotDDt
なんで急に止めたの?
898 名無し~3.EXE [sage] 2005/08/12(金) 05:10:51 ID:b+afWT8f
最近2ch-modeのform-postファイルがよく壊れるんだけど、俺だけ?
妙なコードが紛れ込んでしまうようだ(「
P」とか)
899 名無し~3.EXE [sage] 2005/08/12(金) 05:40:10 ID:fq94cFsE
>>895-897
元に戻しておきました。
900 名無し~3.EXE [sage] 2005/08/12(金) 07:35:07 ID:XGeMcU+I
>>899
ありがとー。またいつでも復活してください。
901 名無し~3.EXE [sage] 2005/08/12(金) 10:55:32 ID:g3EjybYi
>>899
よかった〜〜(´ω`*人)
902 名無し~3.EXE [sage] 2005/08/12(金) 23:21:11 ID:mOiuD4GB
popup-string でポップアップした文字列を消すのはlispではできませんか?
903 名無し~3.EXE [sage] 2005/08/13(土) 02:32:15 ID:TvuEtEaz
>>899
構ってほしかったんだな。
904 名無し~3.EXE [sage] 2005/08/14(日) 00:49:25 ID:jaQagEG1
tterm + shell モードで、find-file 時の default directory
を cd した現在のディレクトリにしたいのですがうまい方法ないですかね。
その都度set-default-directoryできればいいんでしょうが、
tterm+shell で実行したcdの結果はxyzzyとは関係無いんでしょうから…
905 名無し~3.EXE [sage] 2005/08/14(日) 01:37:21 ID:8cJ7EkYD
ミニバッファのサイズが勝手に変化して
邪魔なんですけど固定するにはどうしたら
良いんでしょうか?
906 名無し~3.EXE [sage] 2005/08/14(日) 02:13:00 ID:Lp4baxGP
>>904
.bashrcあたりでPS1を設定してtitleにディレクトリを渡しておいて、tterm-osc-semi-belでゴニョゴニョしてバッファのカレントを変更すれば
いけるかもしれない。私はやる気なしですが。(-_-;)

<チラシの裏>
最近、久しぶりにttermを起動してFedora相手に接続したら
まるで使い物にならなかった。orz
だれか tterm.l を引き取ってくれないかなぁ。
</チラシの裏>


907 名無し~3.EXE [sage] 2005/08/16(火) 12:51:54 ID:tLcjs3Qv
何も書いていないファイルに、
aaaと書いてsave
bbbと書いてsave
した後、
undoを繰り返し行ったところ
aaaまで戻った時に
(buffer-modified-p) が nil にならないのですが
これはバグでしょうか?
上と同じようなこと(save の代わりに (set-buffer-modified-p nil) を行う)
を*scratch* バッファですると(buffer-modified-p)がnilになるので。
xyzzy のバージョンは 0.2.2.234 です。
908 名無し~3.EXE [sage] 2005/08/21(日) 21:41:16 ID:x6fk704Z
書けるかな?
909 名無し~3.EXE [sage] 2005/08/22(月) 03:45:33 ID:9sbV6ppG
xyzzyって開発終了?
ずいぶん長いこと更新されてないですよね?
910 名無し~3.EXE [sage] 2005/08/22(月) 03:50:25 ID:F1/yqoDo
うんにゃ。こないだ(ってもちょっと前だが)思い出したように更新された。
911 名無し~3.EXE [sage] 2005/08/24(水) 10:23:04 ID:EEvJbItM
ヒストリー見ても何が変わったのかが分からない・・・
1年ぶりの更新なのに
912 名無し~3.EXE [sage] 2005/08/24(水) 11:08:36 ID:u8SXuPB9
>>911
ttp://xyzzy.s53.xrea.com/wiki/?%A5%A2%A5%C3%A5%D7%A5%C7%A1%BC%A5%C8%A1%A6%C5%EA%B9%C6%2F0.2.2.234%A4%C7%A4%CE%CA%D1%B9%B9
913 名無し~3.EXE [sage] 2005/08/24(水) 18:38:34 ID:tI85XCbu
ttp://www.nongnu.org/bhl/
914 名無し~3.EXE [sage] 2005/08/24(水) 23:08:36 ID:dIv9HvA2
MLの過去ログに Date が無いので不便だなあ、と思っていたら、MLの入会メールに

│またこれから新規に発言されたものも収録されていきますが、Date Header
│だけは削除されますのでご安心下さい。

って書いてある。Date Header が無いのが何で「安心」なんだ? 誰か教えて。
915 名無し~3.EXE [sage] 2005/08/24(水) 23:09:58 ID:sypUzLnM
>>914
アリバイ工作
916 名無し~3.EXE [sage] 2005/08/25(木) 00:41:47 ID:sECxU9f7
>>914
> って書いてある。Date Header が無いのが何で「安心」なんだ? 誰か教えて。
ttp://hie.s64.xrea.com/xyzzy/ml/msg04042.html
917 名無し~3.EXE [sage] 2005/08/25(木) 18:53:00 ID:YMbkce5M
ttp://hie.s64.xrea.com/xyzzy/note/www-mode.html#www-hide-buffer
でwww-mode関連をリストから隠せたんですが
いったん他のテキスト選択した後はどうやって
www-modeに復帰すればいいんすかね?
918 名無し~3.EXE [sage] 2005/08/25(木) 19:14:53 ID:doRxs60u
>>917
ttp://www5e.biglobe.ne.jp/~fukafuka/xyzzy/tips/tips.html#hbuffer-bar
919 >>917 [sage] 2005/08/27(土) 05:12:34 ID:3TbuAmMH
>>918
> >>917
> ttp://www5e.biglobe.ne.jp/~fukafuka/xyzzy/tips/tips.html#hbuffer-bar
ありがdです
復帰できるようになりました。
920 名無し~3.EXE [sage] 2005/08/27(土) 18:47:25 ID:yUiLglRA
あれ、いくつかのlispサイトが閉鎖されてる?
921 名無し~3.EXE [sage] 2005/09/02(金) 20:57:51 ID:tamT173F
パターン: buffer, ファイル名: *.l, ディレクトリ: ~/lisp
で grep をかけると、
"buffer-substring" とか "set-buffer-modified-p" とかがヒットしますが
これを "buffer" という単語だけをヒットさせたくて、
(set-syntax-word ed::*lisp-mode-syntax-table* #\-)
とし単語単位で grep をかけてみたところ
やはり"buffer-substring" とか "set-buffer-modified-p" とかがヒットしました。
grep.l, grepd.l をみると grep 時にモードごとの syntax-table を参照していない
のでそうなるのだと思いましたが、自分でやるには大変すぎでした。
どなたかお願いたします。
922 名無し~3.EXE [sage] 2005/09/02(金) 21:12:53 ID:n5AC32lV
>>921
正規表現で
\bbuffer\b
とか
923 名無し~3.EXE [sage] 2005/09/02(金) 22:04:33 ID:cFEBMJ7D
tcl-modeってどこかに無いでしょうか?
924 名無し~3.EXE [sage] 2005/09/02(金) 22:14:59 ID:hWXRpa97
>>923
http://funapon.info/html/diary/di0310.htm#10/29
の人にメール出して頼んでみるとか.
925 名無し~3.EXE [sage] 2005/09/02(金) 22:34:47 ID:Gpo2QRcJ
>>921
アドホックだけど「大文字小文字を区別する」にして [^-]buffer[^-] でできました

>>922
やるなら \_bbuffer\_b かと思いますがなんかうまくいかないみたいですよ
926 名無し~3.EXE [sage] 2005/09/03(土) 17:28:57 ID:hjIz5NqO
>>925
> アドホックだけど「大文字小文字を区別する」にして [^-]buffer[^-] でできました
「bufferp」とかが混ざりますけど。
\bbuffer\b の結果の方がましだと思うんですが。

> やるなら \_bbuffer\_b かと思いますがなんかうまくいかないみたいですよ
これをやりたければ
(setq *default-buffer-mode* 'lisp-mode)
しておいてから、grepしてみるとうまくいくかと思います。
ただ、この結果にはコメント中の単語とかがスキップされるみたいです。

あとは用途次第でしょうね。
927 名無し~3.EXE [sage] 2005/09/03(土) 19:39:48 ID:bAdy6QOY
>>922, 925, 926
921 です。
レスどうもです。説明不足でした。
buffer をどうやって検索するかという質問ではなくて、
本当に質問したかったのは、
"単語単位で検索する"に check して grep-dialog や gresreg-dialog した時に、
モードごとの syntax-table を参照させるようにしたいということでした。
実際、(set-syntax-word ed::*lisp-mode-syntax-table* #\-)
をしておくと、検索や置換ダイアログでは
"単語単位で検索する"に check することで "buffer" だけを検索や置換できて便利なので
grep や gresreg でもおなじようなことをやりたいということです。
質問というよりコード please なだけなので出来た人がいたら wiki にでも張っていただ
けるとありがたいかなあと。
928 名無し~3.EXE [sage] 2005/09/03(土) 20:30:47 ID:JAdDnDHE
>>927
(setq *default-buffer-mode* 'lisp-mode)
とやっておけばlisp-modeのsyntax-tableを参照するようになります。
# >>926 の後半で言っているのはこういうことです。

モードが混在していなければこれで十分だったりしませんか?
929 名無し~3.EXE [sage] 2005/09/03(土) 20:38:14 ID:Nnkp3v1J
それを(拡張子に合わせて)自動的にやって欲しいって事じゃないの?
930 名無し~3.EXE [sage] 2005/09/03(土) 21:13:42 ID:JAdDnDHE
ふむ、なるほどね。じゃ、こんな感じで。
gresreg-dialog は find-file-internal でファイルを開いているみたいだから、
そのファイルのモードの syntax-table を参照するんじゃないかな。

(in-package "editor")
(defun scan-files-1 (file pattern buffer scanner)
(let ((file-buffer (get-file-buffer file)))
(if file-buffer
(set-buffer file-buffer)
(progn
(set-buffer buffer)
(erase-buffer buffer)
(ignore-errors (insert-file-contents file)
(find-file-process-params (find-file-scan-params) buffer)
)))
(save-excursion
(goto-char (point-min))
(message "scanning (~A)" file)
(cond (*grep-name-only*
(when (funcall scanner)
(princ file)
(terpri)
t))
(t
(grep-scan-file file scanner))))))
931 名無し~3.EXE [sage] 2005/09/03(土) 21:22:37 ID:JAdDnDHE
まずった、>>930じゃファイル名を見てないじゃん。こっちで。
(in-package "editor")
(defun scan-files-1 (file pattern buffer scanner)
(let ((file-buffer (get-file-buffer file)))
(if file-buffer
(set-buffer file-buffer)
(progn
(set-buffer buffer)
(erase-buffer buffer)
(ignore-errors (insert-file-contents file)
(find-file-process-params (find-file-scan-params) buffer)
(dolist (x *auto-mode-alist*)
(when (string-matchp (car x) file)
(funcall (cdr x))
(return)))
)))
(save-excursion
(goto-char (point-min))
(message "scanning (~A)" file)
(cond (*grep-name-only*
(when (funcall scanner)
(princ file)
(terpri)
t))
(t
(grep-scan-file file scanner))))))
932 名無し~3.EXE [sage] 2005/09/03(土) 21:28:10 ID:JAdDnDHE
orz
ごめん。>>931 もダメだ。
find-file-process-params をファイル名を引数を取るような関数に書き換えないと
いけなかった。落ち着いてかんがえてできたらWikiにでも置いておくよ。
933 名無し~3.EXE [sage] 2005/09/03(土) 22:16:21 ID:cA7bo5dW
>>932
ファイル先頭の -*- Mode:lisp; -*- とかの考慮ってされる?
自分もまさに同じものを昔作ろうとして,うまくできなかった経緯があるから
できるの期待してます
934 名無し~3.EXE [sage] 2005/09/03(土) 22:20:02 ID:JAdDnDHE
>>933
> ファイル先頭の -*- Mode:lisp; -*- とかの考慮ってされる?
ます。
そこの所を調べているのが find-file-scan-params
適用しているのが find-file-process-params の中ほど。

ttp://xyzzy.s53.xrea.com/wiki/?tips%2F%B8%C4%CA%CC%A4%CEsyntax-table%A4%F2%BB%B2%BE%C8%A4%B9%A4%EBgrep-dialog
935 名無し~3.EXE [sage] 2005/09/03(土) 23:18:16 ID:mX5KgIpl
tes
936 921 [sage] 2005/09/04(日) 00:48:41 ID:5P7kiyWt
>>934
出来ました。欲しかった機能だったんですごく助かります。
本当にありがとうございます。
929 さんも補足ありがとうございます。
937 933 [sage] 2005/09/04(日) 16:57:55 ID:hTBpF2ER
>>934
頂きました. thx
コードも,こんなにシンプルに書けててすごいですね.
自分好みにカスタマイズして使わせてもらいます.
938 名無し~3.EXE [sage] 2005/09/06(火) 14:38:16 ID:kl01ur8l
質問です。
www-mode でローカルのファイルを開くことはできますが、
あるプログラムが標準出力に吐いたHTMLを、ファイルに保存しないで
www-mode で開くことって可能なんでしょうか。
可能であれば、方法を教えていただけると助かります。
939 874 [sage] 2005/09/07(水) 00:33:27 ID:Xj3Vg6cc
tmpフォルダに一時ファイルがあるんじゃないの?
940 名無しさん@そうだ選挙に行こう [sage] 2005/09/10(土) 23:54:10 ID:PpAdLmUo
教えてください。
hoge
├─AAA
│  a01.pdf
│      
└─BBB
   b01.pdf

上のようなツリー構造のディレクトリに
xdoc2txt.l + grepで検索をかけると
"C:/AAA/BBB 指定されたパスはディレクトリではありません"
というエラーがでてしまいます。

xdoc2txtでフィルタするファイルを含む
ディレクトリが同じ階層にあると駄目みたいです。

ちなみにxdoc2txt + ggrepだと大丈夫です。
xdoc2txt.lのscan-files-1が関係しているのかなと
見てましたが、ぜんぜん分かりませんでした^^;

xyzzy のバージョンは 0.2.2.234 です
941 名無しさん@そうだ選挙に行こう [sage] 2005/09/11(日) 06:50:54 ID:9iU1doUn
シェルスクリプトを編集するモードってありますか?
emacsだとshell-script-modeがありますよね。
fundmentalだとインデント等がやりずらいです。
942 名無しさん@そうだ選挙に行こう [sage] 2005/09/11(日) 08:04:03 ID:yEmDSzfx
http://pc7.2ch.net/test/read.cgi/software/1116710824/

588 名前:名無しさん@お腹いっぱい。[sage] 投稿日:2005/09/10(土) 13:08:43 ID:mKwFkJin0
xyzzyにはシェルスクリプトを編集するモードはないのでしょうか?
emacsにはshell-script-modeがありますよね。


589 名前:名無しさん@お腹いっぱい。[sage] 投稿日:2005/09/10(土) 13:54:03 ID:11Sh7lbp0
>>588
ttp://www.geocities.jp/m_hiroi/xyzzy_lisp/xyzzy02.html
とか参考に、がんばれ

590 名前:名無しさん@そうだ選挙に行こう[sage] 投稿日:2005/09/10(土) 19:51:35 ID:DZ1n6AwB0
>>588
ttp://www.afis.to/~start/xyzzy/mode/bash-mode.html
943 名無し~3.EXE [sage] 2005/09/13(火) 01:13:07 ID:B3lpMa7F
>>940
すいません。直しました。
944 名無し~3.EXE [sage] 2005/09/13(火) 02:04:20 ID:I0+DE0OO
>>943
対応ありがとうございます!
これで、ばりばりgrepできまつ
945 名無し~3.EXE [sage] 2005/09/17(土) 08:20:58 ID:tTw7dz9F
(make-buffer-stream (create-new-buffer "*Help*"))
を *Help* バッファが無い状態で実行すると,カレント
バッファがlispモードに変わってしまうんですが,自分だけでしょうか.
946 名無し~3.EXE [sage] 2005/09/17(土) 09:46:57 ID:lXayQTyC
>>945
やってみたけど、なりませんでした
947 945 [sage] 2005/09/17(土) 11:29:38 ID:tTw7dz9F
>>946
どうもです
もう少し原因をさがしてみます
948 945 [sage] 2005/09/17(土) 12:10:30 ID:tTw7dz9F
すみません.自分だけの問題でした.
*create-buffer-hook* に変なものが引っかかっていました.
949 名無し~3.EXE [] 2005/09/18(日) 10:55:27 ID:Q8totMeE
これはこういうもんですか?
fugaが返ってほしい気がしないでもないない。

(defvar *x* 'hoge)
(let* ((*x* 'fuga)
(y *x*))
y)
;;-> hoge
950 名無し~3.EXE [sage] 2005/09/18(日) 13:58:57 ID:GAHk+Acy
>>949
そうですね。fuga が返って欲しい気がします。
言語の仕様として正しいのはどちらなんでしょうね。
951 名無し~3.EXE [sage] 2005/09/18(日) 14:16:17 ID:TyulorBK
>>949
CLISPで試した結果。
fugaが返った方が良さそう。

[6]>(defvar *x* 'hoge)
*X*
[7]>*x*
HOGE
[8]>(let* ((*x* 'fuga) (y *x*)) y)
FUGA
952 949 [sage] 2005/09/18(日) 14:36:50 ID:Q8totMeE
レスどうもです。 >>950 >>951
言語の仕様はちょっと私にはわからなかったですが、
やはり不自然な感じはします。
とはいえ現実はどーしようもないので、let分けて書くかぁ…
953 名無し~3.EXE [sage] 2005/09/18(日) 19:44:35 ID:d35QqUXQ
>>952
つ[メールでかめーさんにバグ報告]
954 名無し~3.EXE [sage] 2005/09/18(日) 20:35:53 ID:5xQ/PNc/
xyzzyのバグもwikiでまとめておきたいっすね。
バグトラックプラグインの使い方が分からなかったので誰か頼む・・・
955 wiki”管理”人 [sage] 2005/09/19(月) 00:05:18 ID:QhrXM7+Z
これくらいはざばっとマクロで解決できますぜ。

(shadow 'let*)

(defmacro let* (letlist progn)
`(let ,(mapcar #'(lambda (x) (if (consp x) (car x) x)) letlist)
,@(mapcar #'(lambda (x) (cons 'setf x))
(delete-if #'(lambda (x) (not (consp x))) letlist))
,progn))

BTS要りますん?というかだれか参照します?
956 wiki”管理”人 [sage] 2005/09/19(月) 00:08:12 ID:QhrXM7+Z
いろいろ間違えたごめん。

(defmacro let* (letlist &rest progn)
`(let ,(mapcar #'(lambda (x) (if (consp x) (car x) x)) letlist)
,@(mapcar #'(lambda (x) (cons 'setf x))
(delete-if #'(lambda (x) (not (consp x))) letlist))
,@progn))
957 名無し~3.EXE [sage] 2005/09/19(月) 01:49:44 ID:NzRUr2AZ
>>956
細かいところを突っ込むと、それだと(scheme でいうところの)letrec* になっちゃいます。
端的には↓が動いちゃうことになります。
(let* ((foo #'(lambda (x) (if (< x 2) 1 (* x (funcall foo (- x 1)))))))
(funcall foo 10))
958 名無し~3.EXE [sage] 2005/09/19(月) 03:15:50 ID:QhrXM7+Z
じゃぁと思って代案考えようとしたんですが
(defvar *x* 'hoge)
(funcall #'(lambda (&optional (*x* 'fuga) (y *x*)) y))

これも規格と動作が違うっぽい。
yのバインドの際にローカルの*x*よりも先に
グローバルを参照してるみたい…
等価にならないって言う意味ではletrec相当のやつは失格だし…
なんか綺麗な抜け穴無いかなぁ…。

素直にletのネスト版…
(defmacro let* (letlist &rest progn)
(labels ((rec (x progn)
(if (null x)
(cons 'progn progn)
`(let (,(car x))
,(rec (cdr x) progn)))))
(rec letlist progn)))
うーん泥臭い
959 949 [sage] 2005/09/19(月) 15:03:15 ID:HHptWZle
(゚听)
マクロにするほどのことも無いような気が…




    _, ,_  パーン
 ( ‘д‘)
   ⊂彡☆))Д´) >>949




(++)
バグと決まったわけでもないし…




    _, ,_  パーン
 ( ‘д‘)
   ⊂彡☆))Д´) >>949
960 名無し~3.EXE [sage] 2005/09/19(月) 17:57:05 ID:laI+CXo8
>>958
> (defvar *x* 'hoge)
> (funcall #'(lambda (&optional (*x* 'fuga) (y *x*)) y))
>
> これも規格と動作が違うっぽい。
> yのバインドの際にローカルの*x*よりも先に
> グローバルを参照してるみたい…
これはこっちのxyzzyの動作のほう(hogeが返る)が自然な気がします。
規格のどの辺りを読めば書いてあります?
961 名無し~3.EXE [sage] 2005/09/19(月) 19:19:49 ID:5m8Q5okY
>>960
> これはこっちのxyzzyの動作のほう(hogeが返る)が自然な気がします。
xyzzy の動作が自然な気がしますね。
962 名無し~3.EXE [sage] 2005/09/19(月) 20:31:20 ID:jBG+YFfl
>>960-961
fuga が返る方が自然だと思うな.

関数の引数の評価は左から右と決まっているし,
#'(lambda (&optional x (y x)))
がエラーになるのはおかしいと思う.

それとも,これって *x* が special 変数だからって言う議論になってる?
963 名無し~3.EXE [sage] 2005/09/19(月) 20:32:07 ID:5mR6g0s5
xyzzyでこういうことは出来ますか?
ttp://homepage.mac.com/matsuan_tamachan/emacs/NTEmacsWanderlustImage.png
964 名無し~3.EXE [sage] 2005/09/19(月) 20:59:57 ID:laI+CXo8
>>962
> 関数の引数の評価は左から右と決まっているし,
> #'(lambda (&optional x (y x)))
> がエラーになるのはおかしいと思う.
感覚的にはエラーになってもいいと感じますけど、
実際にはエラーにならないので、俺の感覚のほうが怪しそうです。
なので、規格を参照したいなと思っているんです。
965 名無し~3.EXE [sage] 2005/09/19(月) 21:02:23 ID:laI+CXo8
>>963
無理です。
966 名無し~3.EXE [sage] 2005/09/19(月) 22:00:46 ID:jBG+YFfl
>>964
一応該当するのは CLtL2 の 5.2.2 だと思うけど,
967 958 [sage] 2005/09/19(月) 22:17:51 ID:QhrXM7+Z
”ども”みたいなgrepすればすぐわかる
挨拶がほしいなぁコテハンは嫌だし…

cltl2のてけとーなURIで参照できるのはどこ?
document not foundで泣きそう。
井田さんの本だと66ページがそれっぽいかなー

hyperspecから意訳…英語自信が無いのでツッコンデください。

http://www.lispworks.com/documentation/HyperSpec/Body/01_ddl.htm
特に指定の無い場合引数は左から右に評価される。
#指定がある場合というのはmacroとかスペシャルフォームとかで
#評価順序を適当にいじった場合だと思われるので件の場合は左から右と
#決まると読んだ。

http://www.lispworks.com/documentation/HyperSpec/Body/03_ac.htm
引数は特に指定が無い場合は”順に”レキシカルにバインドされる。
#つまりは左から右に

こっからは規格外で個人的な解釈です。

以上からlambdaのパラメータはlet的ではなく
let*的にバインドされていくと理解しました。
件のやつだとyにバインドされるときに
参照されるべきはスペシャル変数の*x*ではなく
最内周(といっていいのか?)でバインドされた*x*である…と

まぁ左から順にレキシカルにバインドされていくのならば
オプショナルパラメータで既に出てきた引数を評価してエラーにならないのは
たぶん自明…
968 名無し~3.EXE [sage] 2005/09/19(月) 22:32:30 ID:laI+CXo8
>>966-967
どーも、ありがとうございます。
じっくり読んで勉強します。

> cltl2のてけとーなURIで参照できるのはどこ?
http://www.supelec.fr/docs/cltl/cltl2.html とか。
Wikiにも足しておきました。
969 名無し~3.EXE [sage] 2005/09/20(火) 06:23:43 ID:001D0PZI
>>967
> 以上からlambdaのパラメータはlet的ではなく
> let*的にバインドされていくと理解しました。

いや、let は概念上は lambda の糖衣構文なので、
(let ((x 'foo)(y 'bar)) ...) = ((lambda (x y) ...) 'foo 'bar)
とならないとちと困ります。
スコープ・環境フレームの生成と評価の順序は違うわけで、
let に関しても評価自体は左から順番にというのは保障されます。
(let ((x '(foo bar baz))) (let ((a (pop x))(b (pop x))(c (pop x))) (values a b c)))
とかやってみると判ると思います。

http://www.lispworks.com/documentation/HyperSpec/Body/03_ac.htm は、
「ラムダ式において式本体が評価されるレキシカル環境は、現在のレキシカル環境に対し、
ラムダリスト中のそれぞれのパラメータと引数中の対応した値との束縛を加える事で形成される」
といったところでしょうか。何にせよ環境フレームは一つしか掘らないです。

措いて、オプショナルパラメータに関してはとりあえず以下より適当訳。
http://www.lispworks.com/documentation/HyperSpec/Body/03_dab.htm
「(しかし)もし引数が残っていないなら、そのとき初期化フォームが評価され、
そしてパラメータ変数にはその結果の値が束縛される
(もしくは、パラメータ指定子に初期化フォームがないなら nil が束縛される)」

この初期化フォームが評価される環境とタイミングが問題になってくるのでしょうけれど。
うーん、新しい環境の内側ってことでいいのかなあ。そうする以外手はない気がする。
つまり、まず環境を作って、環境の各スロットに左から順番に値を束縛していくと。
そして、オプショナルパラメータに値が渡されていない場合には初期化フォームが評価されると。
で、初期化フォームが評価される環境は値を束縛中の新しい環境であると。
そんでもって、自分より左のパラメータに関しては既に値があるからその値を参照できると。
そんな感じなのかなあと思いました。
でもこれってキーワードパラメータだともっと妖しいことになりそうな気がします。
書く順序によって結果が変わってきそう。
970 名無し~3.EXE [sage] 2005/09/20(火) 09:52:34 ID:8/dOYt1g
>>969
キーワードパラメータだとこんなことになっちゃいますね
(flet ((f (&key a b c) (list a b c)))
(list (let ((x '(foo bar baz)))
(f :a (pop x) :b (pop x) :c (pop x)))
(let ((x '(foo bar baz)))
(f :c (pop x) :b (pop x) :a (pop x)))))
=> ((foo bar baz) (baz bar foo))

ところで言葉の問題ですが、
「値が変数に束縛される」ではなくて
「変数が値に束縛される」ですよ
971 名無し~3.EXE [sage] 2005/09/20(火) 11:08:08 ID:8EOGbIAx
grepで50MB以上は検索しないや
exe などあきらかに検索してほしくないのを設定することはできますか?
検索してほしいファイルを列挙するのは無理があるので
972 968 [sage] 2005/09/21(水) 00:04:56 ID:yQCLpsRi
>>969
解説ありがとうございます。

で、ラムダリストの中で前に出現する仮引数が現れてもいいのか
という部分が引っかかっていたのですが、それについても以下の部分で見つかりました。
http://www.lispworks.com/documentation/HyperSpec/Body/03_da.htm
の「Whenever any init-form is evaluated ...」
(超てきとー意訳)
init-formが評価される時はいつでもそのinit-formの左側にある引数を参照してもいいよ。

これで、
> うーん、新しい環境の内側ってことでいいのかなあ。そうする以外手はない気がする。
この部分にも納得です。

みなさま、おつきあいありがとうございました。
973 969 [sage] 2005/09/21(水) 02:57:48 ID:T6tRfX1U
>>970
>「値が変数に束縛される」ではなくて
>「変数が値に束縛される」ですよ
ありゃ、これはお恥ずかしい。なんか混乱してたみたいです。

>>972
まさにそれじゃないですか。
どうも私は微妙にずれたところ調べてたっぽいですね。失礼。

>>971
素のままだと無理な気がします。
いじるとしたら grepd.l の scan-files-1 の本体冒頭(32 行目)に以下を挿入して、
(when (funcall *grepd-ignore-file-p* file)
(return-from scan-files-1 nil))

こんな感じのを .xyzzy に書いとくのではどうでしょう。
(defvar ed::*grepd-ignore-file-p*
#'(lambda (file)
(and (not (string= "exe" (pathname-type file)))
(< (file-length file) 5242880))))
974 名無し~3.EXE [sage] 2005/09/24(土) 23:55:05 ID:AOtcx4Mk
ttp://xyzzy.s53.xrea.com/wiki/?%B3%C8%C4%A5lisp%2Fjavascript-mode
の導入方法をおせぇてください。
siteinit.lへの書き方が知りたいでつ。
975 名無し~3.EXE [sage] 2005/09/25(日) 13:12:15 ID:oQxuhp9t
dialog-boxのことで質問なんですが
(setq *test-dialog-templete*
`(dialog 0 0 182 67
(:control
(:edit line nil #x50810086 21 22 139 16)
(:button IDOK "おけ" #x50010001 120 45 40 16)
(:button IDCANCEL "やめとく" #x50010001 75 45 40 16))))
(defun results ()
(interactive)
(multiple-value-bind
(result data)
(dialog-box *test-dialog-templete* nil nil)
(list data)))
こんな感じにやるとマウスでOKボタンを押した時か
tab4回打ってアクティブなウィジェットを一回りさせてからRETしないと
dataに値が入らないようです(nilになる)
editで文字列打ち、RETそのままで値を得るにはどうすればよかったのでしょう。
lisp/dialog.lをうろうろ眺めてたのですがどうにも…。
976 名無し~3.EXE [sage] 2005/09/25(日) 13:50:55 ID:01oKTx2i
>>975
そういう時は,そういう挙動をするダイアログを探せばいいんジャマイカ.
grep-dialogとか
977 名無し~3.EXE [sage] 2005/09/25(日) 15:56:38 ID:7YK3Lo/Y
>>975
dialog.l を参考に IDCANCEL の後ろの #x50010001 を #x50010000 に変えてみたらうまくいったよ。
でも理由はよくわからない。
978 名無し~3.EXE [sage] 2005/09/25(日) 16:05:35 ID:oQxuhp9t
あはは、助かりました。
>>976さんの言うとおりgrepd.lを眺めてたんですが
そもそも多値とか慣れてなかったんでさっぱりorz
Emacsから移ってきていろいろ試してた状態なんですが
少し気合入れてみますわ。どうもっす。
979 名無し~3.EXE [sage] 2005/09/25(日) 16:36:31 ID:15w2+r7+
>>977
gentempl.l を見た感じだと最後が 1 のものはデフォルト値になるみたい
元のコードだと IDCANCEL がデフォルトになってたから nil になったのかなと
980 名無し~3.EXE [sage] 2005/09/25(日) 21:29:26 ID:oauueMpp
calmemo の予定表に現在日から予定日までの日数を表示させたいと考えているのですが、
日数の計算方法が分かる方おられます?
981 980 [sage] 2005/09/25(日) 21:59:18 ID:oauueMpp
自己レスですが多分こんな感じみたいです。
(encode-universal-time 0 0 0 25 9 2005)
3336562800

(encode-universal-time 0 0 0 22 9 2005)
3336303600

(- 3336562800 3336303600)
259200

(/ 259200 (* 60 60 24))
3