1 :
名無し~3.EXE :
03/05/26 01:33 ID:qBCCUnXh
2 :
名無し~3.EXE :03/05/26 01:36 ID:JCVL5I/S
2
3 :
名無し~3.EXE :03/05/26 01:37 ID:JCVL5I/S
>>xyzzy Part8 975 ども。 > olt で > 1. save するたびに outline を更新 (add-hook '*after-save-buffer-hook* #'(lambda () (if (olt::treeview-open-p) (olt::olt-set-node-by-cursor-or-make)))) > 2. 複数のバッファがある時、アウトラインを取っている状態で別のバッファに > 移ってアウトラインを取ると、複数のファイルのアウトラインが開かれている状態 > になるが、 > 常にただひとつの file の アウトラインが開かれている状態にしたい。 > > といったことがしたいのですが、どうやるんでしょうか ? *post-command-hook* を使うことになりますがこんなでしょうか。 バイトコンパイルしておかないと劇的に動作が重くなると思います。 (add-hook '*post-command-hook* #'(lambda () (maphash #'(lambda (buffer hitem) (if (eq buffer (selected-buffer)) (olt::olt-expand-expand hitem) (olt::olt-expand-collapse hitem))) olt::*olt-buffer-hash*)))
>>7 有難うございます。いただきました。
2 については、自分の期待していた動作とすこしちがったので
いただいたコードを参考に
;; ファイルを開くと同時にアウトライン更新
(add-hook 'ed:*find-file-hooks*
#'(lambda () (if (treeview-open-p) (olt-make))))
;; 常にただひとつの file の アウトライン
(add-hook 'olt::*olt-make-hook*
#'(lambda ()
(maphash #'(lambda (buffer hitem)
(if (eq buffer (selected-buffer))
(olt::treeview-expand-expand hitem)
(olt::treeview-expand-collapse hitem)))
olt::*olt-buffer-hash*)))
;; key
(set-extended-key-translate-table exkey-C-return #\F20)
(global-set-key #\F20
#'(lambda ()
(interactive)
(olt::olt-set-node-by-cursor-or-make)
(maphash #'(lambda (buffer hitem)
(if (eq buffer (selected-buffer))
(olt::treeview-expand-expand hitem)
(olt::treeview-expand-collapse hitem)))
olt::*olt-buffer-hash*)
))
としたらうまくいきました。
>>7 (selected-buffer)が変わっていたらとか条件付なら遅くならないかと。
初心者スレで質問したのですが,どうも簡単には直らないようなので こちらに移ってきました.アドバイスがあればよろしくお願いします. 症状 ダンプファイルがある状態でxyzzyを起動すると ファイル(F) 編集(E) といった メニューが表示されない. 今まで試したこと 1. 正常に動いていたと思われるころのsiteinit.l, .xyzzy に差し替えて,ダンプ. 2. xyzzy.ini を消す. 3. .xyzzy.history を消す. 4. 過去のxyzzyディレクトリ全体のバックアップに差し替えてみる. ※ただし.で始まるディレクトリ,ファイルに一部バックアップ漏れがあったので ~/.netinst ~/.2ch はそのまま. ~/.xyzzyはちゃんとバックアップされている. レジストリは調べましたが,それらしいものが見つからないし,ネットで調べたら あるバージョンから使用を止めたと書いてあったのでレジストリの問題ではないと思います. レジストリの替わりに .xyzzy.history にその設定を書いているんだと推測し,消しましたが 結果うまくいってません.
;; オープニングからメニューいらんよな (まじっすか?) (add-hook '*post-startup-hook* #'(lambda () (set-menu nil))) .xyzzyもしくはsiteinit.lに、これ系が記述してあるとか。 膨大すぎてもやっぱりコメントとか残しておいて 後から調べることが出来るようにしといた方がいいかも。
>10 netinstallerでインスコしたものはnetinstaller上からアンインスコしないと トラブルのもとになる。つーか俺はそれでハマった。 あと、ni-autoloadで読み込まれているのにもかかわらず、siteinit.lや.xyzzyで require/autoloadされているマクロがあるはずなのでそれをチェックしてみろ。 netinstallerはすごく便利だけど、ni-autoloadを有効にするんなら netinstaller関連の記述だけをしたsiteinit.lから始めて、一から 環境を構築し直したほうがいいかもしれん。 面倒だけど、そのほうがよけいなトラブルを抱えずにすむと思う。
>>11 toggle-app-menuは書いてありましたが,(set-menu nil) の記述は siteinit.lと.xyzzyには
書いてありませんでした.
書き忘れましたが,ダンプファイルがない状態で起動するとメニューが表示されるのです.
> 膨大すぎてもやっぱりコメントとか残しておいて
コメントは書いてます.それにoltを組み合わせて,見やすく表示させているので
おおよそ何が書いてあるかは把握できますが,一つ一つコメントアウトして実際に変化があるか
調べるのが大変なのです.それでもある程度はやってみたのですが効果はなかったです.
siteinit.l や .xyzzy に原因があるとも限らず,どこから手をつければいいのかお手上げです.
>>12 どうもです.それでした.自分は (ni-autoload) を siteinit.l から削除しました.
自分としてはnetinstallerはファイルの更新機能だけで,設定は あくまで siteinit.l
に書くのが趣味なので.解決して思わず叫んでしまいました.
ありがとうございました.
(ni-autoload) をsiteinitに書くのは間違い。
16 :
014 :03/05/27 20:37 ID:5ieXdMBs
追加情報です.
再現条件として,add-popup-conv-menu を siteinit.l でロードしなければ
いいような気がするんですけど,他にも同じようになった人いますか?
(ni-autoload) を siteinit.l に記述しても同様に読み込まれてしまうので
だめみたいです.
>>15 そうなんですか? よく分かってないので,できれば理由をお願いします.
確かに,(ni-autoload)を.xyzzyの方に移した場合は問題なかったです.
17 :
15 :03/05/27 20:52 ID:ra1P2P7H
siteinit.lの読み込みは標準だとダンプを作り直す時にしか起こらない。 ので、内容が動的に変化する(ファイルリストによって動作が変わる) (ni-autoload)をsiteinitにかいちゃうとダンプを消すまで初期設定が変わらないから結構痛い。 追記 add-popup-conv-menu割かしまともに動いてるsiteinitにかいてもまとも。 requireで読み込むのに .lファイル中にprovideが無いのは痛いな。
18 :
014 :03/05/27 21:40 ID:5ieXdMBs
>>17 よくわかりました.ありがとうございます.
>> Hanさん
早速,更新してみたいでありがとうございます.
でも,やっぱりメニュー消えてしまいます.どんな使いかたしてんだろ俺.
それと,最新版は確認してないですけど,メニューに挿入する位置が,
outline-treeの設定メニューの位置を微妙に狂わしていました.
どっちを直すべきか分からないですが.
ども。
>>8 好みの動作感は人によってそれぞれなので、そのような感じで
自分に合うように設定していただければ幸いです。
>>9 その通りなんですが変数名決めるのがメンドかったので (^^;;
>>18 > それと,最新版は確認してないですけど,メニューに挿入する位置が,
> outline-treeの設定メニューの位置を微妙に狂わしていました.
> どっちを直すべきか分からないですが.
どっちを直すべきというものでもないですが、
設定で変更できるようにしときますね。
20 :
9 :03/05/28 03:04 ID:2OwoL0rr
>>19 OLT動かしてないので謎なのですが、外部と独立した変数空間を作っちまえばいい話では?
とか。
(let ((a (selected-buffer)))
(add-hook '*post-command-hook*
#'(lambda ()
(unless (eq (selected-buffer) a)
(setq a (selected-buffer))
(message-box (format nil "~S" (selected-buffer)))))))
そういう話ではなく?
(ni-autoload) は、.xyzzy に書かなければならないという制限はな いと思います。 それは、パッケージの作成者が、どちらに書いても動作するようにし ているのかどうかではないでしょうか。
ども。
>>20 記述はその通りなんですが、上記「a」の名前どうしようかって点です。
ようは、たいして考えていなかっただけだという (^^;;
それとは別に、hook に引っ掛けるコマンドがそれぞれ独自に
同様なことをするのはどうかと思うところもあり少々躊躇しました。
>>21 もちろん制限は無いよ。
ダンプを取り直せばよいだけ。(ctrl+再起動?)
でもそれって…
24 :
014 :03/05/28 14:02 ID:cduN785N
>>23 よーく考えてみたんですけど,
>>17 の理由だと問題ない気がします.
ni-autoload は *autoload-directory* にある *.lファイルを全て実行する関数で,
何かをnetinstaller経由でインストールするたびにこの関数の定義が変わるわけで
はないので.どうでしょう? そういう問題じゃない?
25 :
山崎渉 :03/05/28 16:46 ID:hiv5bR9G
∧_∧ ピュ.ー ( ^^ ) <これからも僕を応援して下さいね(^^)。 =〔~∪ ̄ ̄〕 = ◎――◎ 山崎渉
>>24 ダンプファイルを作ったあとはsiteinit.lは読み込まれないから、
ni-autoloadは実行されないよ。
だから、新たになにかをインストールした場合はダンプファイルを作り直す必要あり。
さらに、ni-autoload用ファイルでautoloadせずにrequireなんかしていた場合、
アップデートしたときにもダンプファイルを再作成する必要あり。
>>26 追記
結局はni-autoload用ファイルではautoloadの設定ぐらいしか書けず、
実際に各スクリプトがロードされるのは何かを実行したときになる。
ってことはsiteinit.lに書いても.xyzzyに書いてもたいした違いは
ないんじゃないかな。
>>26 > ダンプファイルを作ったあとはsiteinit.lは読み込まれないから、
> ni-autoloadは実行されないよ。
*{post, pre]-startup-hook*に引っ掛ければ実行されるね。
30 :
014 :03/05/28 22:22 ID:cduN785N
>>29 とりあえずコンパイルしてモード起動するとこまで確認しました.
使いかたは howmを参考にすればいいの?
>>30 すみません。一応説明をつけただけの新しいものをアップしましたので
ご確認いただけましたら幸いです。
お手間を取らせてしまい、すみません。
>>31 作成した当時に、ちょっと適当なものを思い浮かばなかったものですから
適当に決定してしまいました。すみません。
御手間で無かったら変更していただけましたら幸いです。
>>32 さっきからいろいろ遊んでいるんですけどもう少し解説を付けてほしいです。
で、気づいた点を
; * [...]で囲みますとWikiNameとなります。その上のカーソルを置いてリターンすると
; リンク先へ飛びます。エントリが無い場合には作成します。
リターンじゃなくてF8ですね。
TODO機能がhowmと微妙に非互換なのははまりました。
howmのREADME.rdでは@[2002/10/20]と/区切り
wikilogは@[200x-xx-xx]と-区切り
>>32 コードをちょっとみたのですが、
*wikilog-name-attr* とかが いきなり setq でていぎされていますた。
そいつはいくないですね。
36 :
29 :03/05/29 18:07 ID:Sw5n2s4A
まあそんなにかしこまらなくても
そうそう,みんな感謝してるんだよ 願わくば,これをもとにWiki-modeができないかなぁ
礼儀正しい人だ
41 :
名無し~3.EXE :03/05/29 23:30 ID:ADfL9yIy
>>41 Toyさんとこにあったんだけど見れなくなったから
書いてみたんですが、
欲しい人が自分以外にもいてよかったッス。
>>36 UNIX板の情報整理スタイルスレで拝見しました。感謝カキコ。
でも、2ch-mode使用中でも呼び出せるようだととてもうれしいです。
よろしくお願いします。
ちなみに、changelogmemo.lだとできるんですよね。
キーバインディングはまあ、各自で変えればいいですよね。
44 :
14 :03/05/30 12:30 ID:laAUevxb
>>19 >>17 で指摘されているように, *.l に (provide "add-popup-conv-menu") を追加してやったら
ちゃんとメニュー出ました.ソースに追加してください.
背景色を取得したいんですけどどうやるんですか。 #自前でxyzzy.iniを解析はちょっとやりたくないです。
>>45 buf2htmlで既に実現済みだから取ってくればいいのでは?
47 :
名無し~3.EXE :03/05/30 20:22 ID:3UAxczGs
>>45 こっちじゃなくて本スレで聞いたほうがいいんでない?
50 :
名無しさん :03/05/31 04:52 ID:j9Qs4n2m
51 :
50 :03/05/31 05:00 ID:j9Qs4n2m
52 :
名無し~3.EXE :03/06/01 03:15 ID:PvVn6wnG
JavaTinyConsole を使うと java-mode じゃないバッファでも メニューの「JavaTinyConsole」が表示されてしまうのですが、 適当に表示 / 非表示するようにはなりませんでしょうか?
53 :
直リン :03/06/01 03:16 ID:2Km3LsG+
>>52 --- jtc-menu.l Sun Jun 01 08:56:43 2003
+++ jtc-menu.l.1~ Tue Apr 29 15:03:44 2003
@@ -60,9 +60,8 @@
:sep
(:item nil "プロパティ(&P)" 'jtc-show-property))
"JavaTinyConsole(&J)")
- (use-local-menu menu)
- menu)))
- ;(setq *app-menu* *jtc-menu*))
+ menu))
+ (setq *app-menu* *jtc-menu*))
(unless *jtc-menu*
(cond (*app-menu*
とりあえずこれでいけたけど、あってるかどうかは知らん。
ちゃんとしたのは作者たんにお願いしてね。
>>54 ( ゚д゚)/ 先生!diffの引数の順番間違いました。
-の行が追加で+が削除ね。
しかも-の最後の行いらないし。
56 :
:03/06/01 10:49 ID:HCFl1Mu3
カスタマイズを勉強するために「やさしいEmacs-Lisp講座」をみながら勉強してるんですがxyzzyのLispと違ってる所がまあまああり躓いてます。 Emacs-Lispのstirng-to-numberやstring-to-charにあたる関数を教えてください。
>>56 parse-integerとscharです。
ちなみに、対応する機能で関数リファレンスを探す方が早いと思います。
>>56 emacs-lisp良くわかんないのですが…
parse-integer
char
とか?
他にもこんなふうに
(with-input-from-string (i "#x32")
(print (read i)))
60 :
56 :03/06/01 13:28 ID:HemUYqOr
>>57 >>58 >>59 ありかとう!助かりました。
>>57 大いに参考にさせてもらいます。
>>58 関数リファレンスの調べ方が悪いのか数値や文字列のとこ見たけど見つけられなかったのです。
>>59 with-input-from-string、自分の持ってる関数リファレンスに載ってなかったけどgoogleした結果
C++のistringstreamみたいなやつなんですね。勉強になりました。
layered-windowワラタ(褒め言葉)
*filer-directories*の中には現在 (("msdev/include" . "c:/msdev/include") ("MFC/src" . "c:/msdev/mfc/src") ("MFC/include" . "c:/msdev/mfc/include") ("NT" . "c:/winnt40") ("tmp" . "d:/tmp")) が含まれていますが、ファイラで"J:DIR移動"をすると、*filer-directories*の中に含まれない絶対パスで指定されたディレクトリが、ディレクトリ移動ダイアログのスクロールリストには含まれています。 なぜ、*filer-directories*に存在しないディレクトリが、スクロールリストに表示されるのでしょうか? また、それの削除の仕方を教えてください。
>>63 履歴を ed::*filer-directory-history* に取っていて、それも表示されるから。
65 :
63 :03/06/02 02:54 ID:cW20ialk
>>64 ありがとうございます。
これでスクロールリストの中がすっきりします。
rss-mode を使っているんですが、 1. www-w3m で、rss を終了するとき、 www-w3m のテンポラリバッファが残ってしまうのですが、 残らないようにする方法はありますか? 2. o で外部ブラウザで開くとき、IE でなくて、 任意のブラウザに渡すことはできますか? 具体的には、Sleipnir に渡したいです。
>>66 とりあえず2の方はデフォルトブラウザに渡してくれるはずなんだけど。
関連付けやり直してみたら?
>>67 あ、いや、Sleipnir をデフォルトブラウザに設定するというのは
ちょっと勘弁ということでひとつ・・・
69 :
63 :03/06/02 05:54 ID:cW20ialk
(setq ed::*filer-directory-history* ())を*scratch*でするとうまくいくけども、siteinit.lを書き換えてコンパイルしてから再起動したがうまくいかなかった(ケアレスミスではないと思う)。 結局.xyzzy.historyを削除して解決した。 弊害もありそうな気もするけど・・・・・・まぁーいいや。
>>66 1. config.l: (add-hook '*rss-finish-hook* 'www::www-exit)
2. rss-jump-in-other-browser を上書き、もしくは別関数を作っ
て割り当てる。
大変便利なXyzzyWikiがやたら重いんですが、これは私のPCがヘタレだからですか。 特にTipsDirectoryが。
あ、あと今気付いたんですが。 2画面ファイラからファイルを開いてもファイラが終了しないんですが、これって初期 ・・・っとここまで書いた時点でわかりました。 「2画面ファイラをモードレスに」をチェックしていると終了しないみたいですね。 自分はESCでファイラを終了しない設定にしているので「2画面〜」を チェックしているのですが、これを有効にした上で、ファイルを開いたら 自動的にファイラを終了するようにはできないものでしょうか?
73 :
29 :03/06/02 19:47 ID:lTXXoqmQ
しばらく拝見しないうちに沢山の情報を頂いたみたいで、本当にありがとう
ございます。
>>37 38 40
いえいえ、こちらは見ていただく身ですから。
それから、Wiki-modeですが、確か過去にhogewikiだったかと思いますが
軽量なWiki-modeが公開されていたような気がします。
手元にはあるのですが、作者とサイト名を失念しました。短期間の公開だったのか、
Googleで検索しましても出て来ません。いい加減な情報ですみません。
>>39 情報いただきありがとうございます。そちらの方がよさそうですね。
後で確認してみます。
>>43 ご指摘いただきありがとうございます。私は2ch-modeは使用したことがありませんが、
恐らくClipboradやRegionの情報をChangeLogに加える機能があれば目的は達成できる
かと思います。少し時間を見ていただけましたら幸いです。
>>61 ご意見いただきありがとうございます。NetInstallerに関しては、全くの不勉強で
よくわかりません。すみません、これから勉強してみます。
少しお時間をいただけませんか。
長々と失礼しました。
74 :
43 :03/06/03 01:22 ID:fmMVQX6z
あっちはパート2になってから、すっかり糞スレになってしまった
>>75 本当にそうだね。
そろそろ僕もこっちのレベルになったから、こっち使おうかな・・・。
77 :
名無し~3.EXE :03/06/03 09:21 ID:hZGTmNF9
xyzzyで既に開いているファイルをVSSでチェックアウトした時など、 書き込み不可のファイルが外部プログラムによって書き込み可になった 場合、どうやってファイルを読み直すのでしょうか? 現在はkillして読み直すような関数自分で書いてますが、 デフォルトでありませんでしたっけ?
78 :
_ :03/06/03 09:24 ID:M2E+Gzyv
79 :
77 :03/06/03 09:41 ID:hZGTmNF9
あげちまった… すまぬ。
80 :
_ :03/06/03 10:52 ID:M2E+Gzyv
81 :
_ :03/06/03 12:19 ID:M2E+Gzyv
82 :
_ :03/06/03 13:10 ID:M2E+Gzyv
>>77 toggle-read-onlyでいいんじゃない?
84 :
_ :03/06/03 14:39 ID:M2E+Gzyv
85 :
_ :03/06/03 16:09 ID:M2E+Gzyv
>>77 revert-bufferな気がします。
87 :
77 :03/06/04 07:23 ID:OEoJqv3X
>> 86 あ、それだ。サンクス。確かにtoggle-read-onlyでも十分だったけど。
88 :
77 :03/06/04 15:45 ID:OEoJqv3X
と思ったけど、revert-bufferだと書き込み不可のままでした。 toggle-read-only使わせてもらいます。
89 :
名無し~3.EXE :03/06/04 16:14 ID:fvMWAZWv
「表示-ウィンドウ幅で折り返す」 にチェックが入った状態で起動できるlispの書き方が分かる方、 助けてください!
>>89 (add-hook '*create-buffer-hook* set-buffer-fold-type-window)
試してないのでこれでいいかどうかは分からない.
ファイラで圧縮・解凍をバックグラウンドでやらせる方法ってないですか?
isearch-forwardってもともと正規表現に対応してるんだっけ? =?= でけんさくすると = や == が見つかるし [ を入れると ] がないと怒られてしまう. 同様の症状の人はいますか?
>>89 (set-buffer-fold-width t)
とか。
お疲れ様でした。
便利なサイトなんで良く見に行ってました。 今までありがとう。
お疲れ様でした。
99 :
名無し~3.EXE :03/06/05 22:33 ID:ZHKSXaQB
○(add-hook '*text-mode-hook* #'(lambda () (set-buffer-fold-width t))) △(add-hook '*php-mode-hook* #'(lambda () (set-buffer-fold-width t))) ×(add-hook '*html-mode-hook* #'(lambda () (set-buffer-fold-width t))) 一番下のhtml-modeは名前が衝突したうんぬんでうまくいかないんです。 誰かいいアドバイスをください! 二番目のphp-modeは、折り返したときに、折り返した行には行番号が 振られないようにしたいのですが、うまくいきません。 誰かいいアドバイスをください!
add-hook 'ed::*html+-mode-hook*
>>101 書き出しのサイト紹介の一言が好きだったな。
104 :
名無し~3.EXE :03/06/06 22:22 ID:Y+/iA6cE
1|11111111111111111111111111 |111111 2|22222222222 3|33333333333333333333333333 |333 4|44444 みたいに行番号を振るようにするにはどうすればいいのでしょう
105 :
名無し~3.EXE :03/06/06 22:22 ID:ZmUkh/+k
dげr
>104 共通設定の「表示」タブの「行番号は表示行」をチェックすればいいのでは・・・
>107 チェックしないのが正解か・・・.スマソ
みなさん忙しそうだね。それも必然か。。
110 :
名無し~3.EXE :03/06/07 00:18 ID:Uepexjdz
111 :
名無し~3.EXE :03/06/07 03:05 ID:MC87Un6e
>>108 できたんですけど!
嬉しいんで泣いてイイですか?
112 :
_ :03/06/07 03:09 ID:XQjnUvev
>>110 流れが上手く読めるようになるといいねっ
114 :
名無し~3.EXE :03/06/08 00:19 ID:YuBQDS2x
荒らしだな
特定のフォルダ内のファイルや、特定のファイルだけ通常より多くの バックアップをしたいのですがどうやるんでしょうか?
JavaTinyConsoleでコンパイルができません。 「コマンドまたはファイル名が違います」と出てしまいます。 xyzzyは最新版、jdkは1.1.8、jdkデレクトリはjdk1.1.8に指定してあるのですが・・・
118 :
名無し~3.EXE :03/06/09 16:18 ID:wn+rto8k
html+-modeにjspのタグライブラリも利用できるように拡張されたようなjsp-modeのようなのはないでしょうか? 作るしかないのでしょうか?
119 :
117 :03/06/09 16:36 ID:TIYc6G+T
jdk1.1.8\binにあるファイルはコンバイルできたのですが 他の所にあるファイルができません・・・ つぅか 励ますスレ向きっぽ
PATHが通ってないっぽいな
そうでもないだろ
123 :
117 :03/06/10 01:44 ID:XLaiD30t
120さんのおっしゃる通りpathでした 板汚しすいませんですた 全然xyzzyの問題じゃなかったという(汗
xyzzyで別PCの共有フォルダのファイルを読み書きできないでしょうか? \\192.168.0.31\share\xxx.txt とか
125 :
124 :03/06/10 04:02 ID:afVYdvUA
書き忘れましたファイラからです
info-modoki-mode の imm-grep,imm-grep-title が 「関数が定義されていません: editor::scan-files」 とエラーが出てしまって使えないのですが、私だけでしょうか。 (なぜか一度 grep を使った後だと普通に使えてエラーも出ません)
>>124 それも xyzzy 関係ないぞ。メモ帳でできないなら、できない。
samba なら設定見直してみ。
128 :
uud :03/06/10 14:45 ID:jOHzWUOs
僕もいろいろ試してみたけど、無理だったなぁ。 \\192.168.0.31\share\のフォルダに対して、ネットワークドライブを割り当てるか、もしくはショートカット作ることぐらいしか思い浮かばない。
>>126 作者様が(require "grepd")を書き忘れたんでしょう。
.xyzzy にでもかいておけば、もんだいないでしょう。
>>124 ファイラーでJでパスのところに//192.168.0.31/share/って
やってカレント移すのは駄目?
>>118 俺も欲しい。
俺はhtml+-modeに、タグ状のものではさまれた部分(タグ内部)をindent-relativeで
インデントするようにはしてみた。
これだけでもJSPやASPでそれなりに使えるようになる。
<%%>でベタ処理を主にする場合だけど。
html+-mode作者氏へ。
もちっとソースにコメントが欲しいです。
リファレンスはそれなりにそろってはいるけれど、実際に調べたい動作そのものに
コメントで解説がされていれば何より勉強になりますので。
>>132 > html+-mode作者氏へ。
> もちっとソースにコメントが欲しいです。
> リファレンスはそれなりにそろってはいるけれど、実際に調べたい動作そのものに
> コメントで解説がされていれば何より勉強になりますので。
作者です。
html+-modeの各関数にコメントが欲しい、ということでしょうか。
134 :
132 :03/06/10 23:31 ID:c22Y2D1h
>>133 そういうことです。
一つひとつの処理にしては野暮になってしまいますが、ここぞというテクニックに
解説がつけば実用的で有益な模範になるかと思います。
と言っても、各々レベルが違うわけですから、なんともやりにくいだろうとも思います。
気が向いたら(そのときバージョンアップする機会があったら)ご一考してもらえれば幸いです。
135 :
132 :03/06/10 23:33 ID:c22Y2D1h
おっと、各関数というのは言いようがいろいろありそうですが、 大きな流れでよいということです。
html+-mode はコメント多いほうですよね(-:
>>132 作者に頼むのは甘えすぎじゃないか?
どこがわからないのか説明すれば他の誰かでも解説できるところなのに…。
ただでさえ少ない作者さんの開発時間を削ぐのはいかん。
禿胴。無茶いうなよ。
ところでLisp界では戻り値の型とかは気にしないもんなんですか。 referenceにのってないし。
型というか、むしろ戻り値のみ気にする世界です。本来は。
cygwinのrxvtみたいなターミナルエミュレーションする方法ってないですか? (setq *eshell* "bash -i") で M-x shell 使ってますが、イマイチ・・・。 tterm.lはローカルにサーバーがいるし・・・
とりあえずシンプルなjsp-modeがあって multi-mode.lでhtml+-modeを使うようにするとか。
質問さしてください。 (defun push-RBtnUp () (interactive) (funcall (lookup-key-command #\RBtnUp))) を、.xyzzy にかいてみて 再起動した後 M-x push-RBtnUp と打つとエラーが出ます。 ところが、*scratch* で (push-RBtnUp) を評価すると、ちゃんと動きます。 その後、M-x push-RBtnUp とするとちゃんと動きます。 なにが原因でこうなるんでしょうか?
作者さん達ほんとうにいそがしそうだもんね。
(ni-autoload)って有効にしている? 有効にしている場合どこに書いてる?.xyzzy, siteinit.l?
148 :
133 :03/06/12 00:15 ID:5o1vn8Na
>>132 ほとんどテクニックという程のものはないですが、何となくまとまってそうな
処理にはコメントをつけるようにしてみます。まぁ、これから作る分に限られますが…
>>149 siteinit.lに書くのが間違いって言うのは更新するたびに再ダンプ
する必要があるからってこと?
漏れは.xyzzyに書いて機動に時間がかかるよりは毎回再ダンプしたほうが
いいのでsiteinit.lに書いています。
今のところはまったことはなし。
.xyzzy派が多いのかな。
>>150 そういうこと.ちなみに俺はni-autoloadは使わない.
netinstallerは単なるdownloaderとして使ってる.
1回設定したら終わりだし.
>>116 特定のフォルダなんかは分からないけど,特定のモードごとにバックアップ
ファイルの数を変えるなら一応できたみたい.javaモードの場合の設定は以下のとおり.
(add-hook '*java-mode-hook*
#'(lambda ()
(ed::set-buffer-local 'kept-old-versions 5)
(ed::set-buffer-local 'kept-new-versions 5)))
どうしても特定のフォルダ以下で設定したいなら,openかsave系のhookに引っ掛けて,
ファイルのパスが指定したフォルダなら値を設定するようにすればよいかと.
詳しいことはもっと詳しい人に聞いて.
netinstaller インストール済みファイルのところから そのファイルをペロッと開けるようにしてほすいです
154 :
116 :03/06/13 20:28 ID:iH3wu4Px
>>152 ありがとうございます。
こんなかんじでいけました。
(defvar *special-backup-directory-list*
'("C:/usr/" "C:/xyzzy/"))
(add-hook
'*find-file-hooks*
#'(lambda ()
(let ((filename (get-buffer-file-name (selected-buffer))))
(when (dolist (dir *special-backup-directory-list*)
(if (pathname-match-p
filename
(concat
(directory-namestring (append-trail-slash dir)) "*"))
(return t)))
(ed::set-buffer-local 'kept-old-versions 5)
(ed::set-buffer-local 'kept-new-versions 5))))
)
>>154 こんなに自分で書けるなら目的の関数自分で調べた方がいいよ.
メニューや共通設定で設定できるものは,近くの文字列で~/lisp/
をgrepすれば希望のものが見つかるよ.今回は"常に作る"でgrep
しただけだし.
>>150 私も siteinit.l に書いてます。
同じくはまったことはありません。
>>156 確かにsiteinit.l に書いてもはまらない.
はまるのはni-autoloadを使ってるのに,siteinit.lや.xyzzy に
require〜 や autoload〜を書いてしまっている人.
>>158 言葉足らずだった. (ni-autoload)でロードしているパッケージを,
require や autoload すると経験上うまくいかないことがあった.
確かに何回requireしても provide 宣言あれば1回しか読み込まれないはずだけど,
それでもはまった.
これで答えになってるかな...
>>160 今試したところでは大きな問題はなかった. なぜかtemplate-insertがうまく動かなかったので
~/site-lisp/ni-autoload/kiawebsite/template-insert.lの2行目をコメントアウトしたら
とりあえず起動した.メニューも消えないしメニューが複数出ることもないな.
まえは,recompile-if-updated とかを ni-autoloadのディレクトリとかにもかけると大変なめに
あったり,お気に入りが2個でたり,メニューが消えたりした.単純にパッケージ作成者が
いろんな場合を考慮してはまる危険性が減ったが,あまり一般的でない使い方をすると人柱に
なりやすくなるってことか.結論は今のパッケージならあまり問題はない.今後は知らん
162 :
160 :03/06/14 02:10 ID:/I1Ewsa/
>>161 そこらへんの話はネットワークインストーラを使う使わないは関係なく
パッケージ製作の肝なんだよな。
なんとなく勘所というのはあるにしてもなんともいえないところだな。
はっきり分かってればガイドラインも作れるんだけどな。
>>161 しまった.recompile-if-updated は無実だ.re-compile-all-file-necessary で
はまったことがあった.もう修正されたけど.
164 :
名無し~3.EXE :03/06/14 13:19 ID:xcKP7Dn4
初心者です。はじめてxyzzyとKaTeXを使ってみました。 ASCIIのplatexを使うので, .xyzzyの中で (setq tex-command "platex") のように設定しましたが,C-c tj しても katexenv:: jlatex sample.tex 指定のファイルが見つかりません のように表示されてコンパイルできませんでした。 ソースファイルの中に %#!platex と指示するとコンパイルできるので,パスなどは通っていると 思います。なおXYZZYHOMEの環境設定はしてあります。 他の部分は変更されているので,.xyzzyファイルをちゃんと 見ているとは思います。 katex.l をのぞいてみたら,75行目に (defvar tex-command (if KaTeX-japan "jlatex" "latex") と書いてあったので,そこをplatexに書き直してから, 再度読み込ませてみました。すると,今度はちゃんと C-c tj でコンパイルできました。 どうして .xyzzyでの変更がきいてないのでしょうか。 一応過去ログをざっと見ましたが,こんな情けない質問は ないようでした・・・すみません。
>>164 KaTeXを使ってないのではずしてたらごめん
パッケージを指定してみたらどうでしょう。
(setq elisp::tex-command "platex")
166 :
名無し~3.EXE :03/06/14 15:00 ID:xcKP7Dn4
>>165 さっそく試してみたら,うまく作動しました。
164に書いた設定は,どこかのページにあったのを丸写し
したのですが・・・(^^;
ありがとうございました。
n(型は数) と string (型は文字か文字列)が与えられた時 string を n 個つなげた文字列をえるには、 どうするのでしょうか? Reference で調べたら (format nil "6~A" "a") で "aaaaaa" が得られるのはわかったんですが、 n の型が数なので。
文字列型に変換すればいいだろ。
>>167 > Reference で調べたら (format nil "6~A" "a") で
> "aaaaaa" が得られるのはわかったんですが、
ならないと思う。
文字の場合
(make-sequence 'string 10 :initial-element (character "A"))
文字・文字列の場合
(format nil "~{~A~}" (make-sequence 'list 4 :initial-element "abc"))
もっと簡単は方法知っている人ぷりーず
>>167 (format nil "~V@{~A~:*~}" 4 "abc")
171 :
167 :03/06/15 07:42 ID:OvDLAwyK
>>169 170
どうもありがとうございました。
(変なことをかいてすみませんでした。)
>>170 うーん。まだ全部理解できてないけど・・・Vって便利だね。
いままでこういうときはformat二段重ねでやってたたよ。
勉強になりまちた。
www-modeでpukiwikiの編集をしようとすると,プレビューやページの更新をしようとするときに バッファ名が長すきます とメッセージが出て更新できないのですが,この長さをもう少し長くできないでしょうか?
174 :
173 :03/06/15 22:28 ID:/emutZCw
プレビューはできませんでしたが更新はできていたので,不便ですがとりあえず現状のまま 使っていくことにしました. かわりにもう一つ質問をさせてください. あるメジャーモード中で,元の色設定を可能な限り有効にしつつ, 別のメジャーモードの色設定ファイルも利用したいのですがうまくいきません. (defun overwride-keyword (file) (interactive "sKeyword File: ") (when (null ed::keyword-hash-table) (make-local-variable 'ed::keyword-hash-table)) (setq ed::keyword-hash-table (ed::load-keyword-file file nil)) (ed::refresh-screen t)) 1. LispやJavaモードなど元々キーワードファイルがあるメジャーモードでは指定した 色設定が有効になるが,元々色設定がないモードは変化がない.(例 WWW-TEXTAREA) 2. 色が更新されるときは,元のキーワード設定がクリアされてしまっている. 3. 正規表現キーワードが考慮されていない. どなたか御教授お願いします.
>>174 2は↓とかじゃないかな。全然自信無し。
〜
(setq ed::keyword-hash-table (ed::load-keyword-file file nil
(if (hash-table-p ed::keyword-hash-table)
ed::keyword-hash-table)))
〜
>>174 1については、
(kill-all-local-variables)をしたら上手くいった。
2は174で出来るっぽいですね。
3は、regexp-keyword-listを使えばOKです。
reference.xmlを参照してください。
>>176 間違えた。
> 2は175で出来るっぽいですね。
です。
178 :
174 :03/06/16 18:43 ID:6+6eW6/A
>>175-177 レスサンクス
1は
>>175 でうまくいきました.
>>176 確かにうまくいくんですけど,まだもとのメジャーモードが有効なのに
ローカル変数全部消していいものなのか非常に疑問なのです.
regexpはこれから調べてみます.
ビルゲイツワラタ
180 :
92 :03/06/18 01:50 ID:0PTvcLJ2
原因はmigemoでした.migemoをon してから off した状態で C-s とすると 正規表現検索が有効なままのようです.
先生!質問です。 VBで書いた↓をxyzzyで実行したいのですが、For Each 〜 In の部分を どう書いたらいいでしょうか・・・ strComputer = "." Set objSWbemLocator = CreateObject("WbemScripting.SWbemLocator") Set objSWbemServices = objSWbemLocator.ConnectServer(strComputer, "root\cimv2") Set colSWbemObjectSet = objSWbemServices.InstancesOf("Win32_Service") For Each objSWbemObject In colSWbemObjectSet Wscript.Echo "Name: " & objSWbemObject.Name Next ここまでできた↓ (setf computer ".") (setf class "Win32_Service") (setf wbem (ole-create-object "WbemScripting.SWbemLocator")) (setf service #{wbem.ConnectServer[computer]}) (setf objSet #{service.InstancesOf[class]}) ;objSetへのアクセスの仕方がわからない。
>>183 お!サンクス
一応↓でアクセスできました。
(setf objpath "Win32_Service.Name=\"winmgmt\"")
(setf wmi #{objSet.Item[objpath]})
#{wmi.Description}
でもItemはコレクションの中から必要なものを取得するものみたいなので、
目的がはっきりしていないと使えないっすね。
たとえばサービスの一覧を取得したい場合は、事前に全サービスの名前が
わかっていなければいけず本末転倒でつ。
なのでコレクションに順にアクセスする必要があるんですけど、
WMI のスクリプトインターフェイスじゃ無理っぽいですね。
COMインターフェイスにはIWbemServices::CreateInstanceEnumとかあるんですけど。
これは亀井さんにお願いするしかないのかな。
>>181 VBのFor Each文はIObjectColの_NewEnumをエラーになるまで呼びつづけるだけだったかなと。
Itemは指定のアイテムが欲しいとき。
VCでVBからコレクションとして扱えるCOMを作るあたりを見るとそういう感じ。
xml-mode何ですけどzml-mode実行時に 「・・・site-lisp/XMLはディレクトリです」って出るのは俺だけですか。 kyeword-fileをロードするときに etc/XML じゃなくて site-lisp/xml が 先に見つかってロードに失敗って感じです。
>>186 できました!みなさん、腸ありがとう。
;; WMI からサービスのコレクションを取得
(setf wbem (ole-create-object "WbemScripting.SWbemLocator"))
(setf service #{wbem.ConnectServer["."]})
(setf objSet #{service.InstancesOf["Win32_Service"]})
;; enumeration 用に jscript control を作成
(setf jscript (ole-create-object "ScriptControl"))
(setf #{jscript.Language} "JScript")
(setf code "
function createEnumerator(set) {
return new Enumerator(set);
}
function next(e) {
var result = e.item();
e.moveNext();
return result;
}
function hasNext(e) {
return !e.atEnd();
}")
>>188 つづき
;; コードを評価器に渡す。
#{jscript.AddCode[code]}
;; Enumerator を作る。
(setf e #{jscript.Run["createEnumerator" objSet]})
;; その Enumerator を使ってオブジェクトにアクセス。
(while #{jscript.Run["hasNext" e]}
(setf o #{jscript.Run["next" e]})
;; Win32_Service クラスの Description プロパティを表示する。
(message "~A" #{o.Description}))
でもちょっと括弧悪いのでマクロ(docollectionとか)にしたほうがいいですね。
というかxyzzy側でオブジェクトを作って、それを JScriptに渡してコールバックしてもらうってできないですかね。 こんな感じで↓ (setf handler (create-object-on-xyzzy)) #{jscript.AddCode["function each_object(set, handler) { for (var e = new Enumerator(set); !e.atEnd(); e.moveNext()) { handler.visit(e); } }"]} (#{jscript.Run["each_object" handler}) あと、ScriptControlを使わない方法ってなんかないですかね。
>>190 むしろobjectsetの中身をリストにしておいてmapじゃないかな。
>>191 >
>>190 > むしろobjectsetの中身をリストにしておいてmapじゃないかな。
それは最初に考えて試したんですけどうまくいかなくて。。。
VBで配列をつくって返すとxyzzyからは配列(make-arrayで作ったやつ)
として見えてナイスなんですけど、VBScriptでは配列にObjectを入れられなくて失敗。
JScriptのArrayだとObjectも入れられるけどxyzzyからはoledataとして見えてしまいます。
それでもArrayとしてアクセスできるのでArrayからObjectをpopしてOKと思いきや、
popしたObjectのDescriptionプロパティにアクセスすると「名前が不明です。」で失敗。
ででた結論が
>>188 なんです。
>>192 > として見えてナイスなんですけど、VBScriptでは配列にObjectを入れられなくて失敗。
問題なく入るんだが。
Dim a, i
strComputer = "."
Set objSWbemLocator = CreateObject("WbemScripting.SWbemLocator")
Set objSWbemServices = objSWbemLocator.ConnectServer(strComputer, "root\cimv2")
Set colSWbemObjectSet = objSWbemServices.InstancesOf("Win32_Service")
i = 0
ReDim a(colSWbemObjectSet.Count - 1)
For Each objSWbemObject In colSWbemObjectSet
Set a(i) = objSWbemObject
i = i + 1
Next
MsgBox a(0).Name
MsgBox a(1).Name
MsgBox a(2).Name
>>193 /
_ / わかってねえっ・・・・!
、N´ `ヽ、/
ゝ l 7二ニ7==‐-_、 オブジェクト参照の代入には
イ l / // ̄\ /、`'‐、 Setがいることを・・・・・・
"W._ヽ=-‐|/-──'-~、.._/ `'‐、 \
 ̄, ̄7 ⌒ヽ / \.ヽ 間違いなく・・・・・・・・・・
/ ./ }. k \!
/ / |____| /‐┬f=i VBはまともな言語とは
. / 7'''─r/ \. , ' .|_| ‖ 別物・・・・
. / / // //ヽ. // ‐''´ ,E! リ
/ f_/ .// / ヽ/.∠. -‐┬f=i ・・・・・・・・
/ _,:=/ /'´ ,' / |_| ‖ なんでそれが
` / {三 ' _,ノ l _, -‐''´ ,E! リ 理解できない・・・
./  ̄ ̄ `ー-‐ ''"´ ゝー' 俺・・・・・・?
>>194 Letは省略可能。
Setも省略可能にすると既定のプロパティを省略できるというのがまともに動作しなくなると思われ。
というか、既定のプロパティを省略可能にしてるのが問題なのだと思う。
そのへんVB.NETは直ったが。
>>192 JScriptのArrayを持ってきたらpop使うんじゃなく
"length"、"0"、"1"、…を使ったほうが良いみたい。
197 :
迷える子羊 :03/06/21 19:27 ID:KssT4uQN
xyzzy+KaTeXを使ってレポート書きたいんだが、インストールできん インストールの方法を最初から最後まで懇切丁寧に漏れに教えれ
198 :
迷える子羊 :03/06/21 19:29 ID:KssT4uQN
環境書き忘れました Win98のxyzzyは最新バージョンです
日本語LaTeXをインスコできたらここに来い 話はそれからだ。
>>199 なるほど、それが必要なんですね
じゃあ、早速インストロールしてきます
質問させてください。 (in-package "editor") ・・・・・・・・・ ・・・・・・・・・ (in-package "user") とか、書くときに ・・・のところで、 どの package にも入っていない関数(.xyzzy に自分で書いた関数とか) を使いたいのですができるのでしょうか ?
普通に関数をかけばuserパッケージに入ると思えば良い。 user::hogehogeとかやると参照できるよ。
emacs-w3mのshimbunみたいなのを移植した人いますか?
205 :
202 :03/06/22 19:27 ID:stTaUa6g
>>203 ありがとうございます。
勉強になりました。
あと Wanderlust も移植希望。
IMAP4 ではまともに使えない気がする
>>206 移植してやるから、APEL,FLIM,SEMIを移植してくれ。
ソースコードを印刷するときにキーワードを太字で 印刷したいんですけどどうすれば委員会
UNIX 上で NEmacs, Mule, XEmacs と使ってきた。 Windows を使うことになり xyzzy と出会って目から鱗。 フォントとか設定とか超簡単。GUI のセンスもいい。しかも軽い。 作者のバランス感覚に感服。なので xyzzy で SKK, Wanderlust が動くと最高。 つーか、UNIX に xyzzy を移植してくれ。
213 :
名無し~3.EXE :03/06/23 23:26 ID:K/TXDRup
xyzzyを複数起動しようとした時に元々起動していたxyzzy内に 新しいバッファが追加される形でxyzzyの多重起動を防止する にはどうすればよいでしょう?
xyzzycli.exeを使う
>>213 とりあえず 00README.html 1万回朗読並びに
xyzzycli.exe を1千回クリックの刑に処す。
216 :
名無し~3.EXE :03/06/24 00:42 ID:4mG06Q/p
>217 語り部なら1000回じゃなくて1024回と言うだろう。 よって>215はゲーム帝国の語り部じゃないに2048ガバス
.\" で1行丸ごとこめんとにするのはどーすればええんだろお。 syntax-symbolの設定でなんとかなるんだろおか?
219です^^;流石にあれだけではレスする人困りますね。すみません。 > .\" 何ですかこれは? roff系のテキストフォーマッタの制御コマンドなんですが、そのテキストフォーマッタ用 モードをでっち上げてる最中に、コメントの扱いで困ってるとこです。 コメントを書く際には.\"を記述することで行末まで無視されるという仕様にはなってるん ですが、string-tableへの登録方法がどうもいまいちわからんのです。しょうがないので、 今はこんなことでコメント風味にごまかしてます。 ;; シンタックステーブル (defvar *ntf-mode-syntax-table* nil) (unless *ntf-mode-syntax-table* (setq *ntf-mode-syntax-table* (make-syntax-table)) ;; .と念のため_も@もキーワード構成文字として設定 (set-syntax-symbol *ntf-mode-syntax-table* #\.) (set-syntax-symbol *ntf-mode-syntax-table* #\@) (set-syntax-symbol *ntf-mode-syntax-table* #\_) ;; マクロ作成する人やブロックを多用する人向けに追加 (set-syntax-match *ntf-mode-syntax-table* #\( #\)) (set-syntax-match *ntf-mode-syntax-table* #\{ #\}) ;; \ の後をすべてコメントと見なす(おおざっぱ^^;) ;; cwの指定時に引数が丸ごとコメント色になってしまうが気にしない。 (set-syntax-start-comment *ntf-mode-syntax-table* #\\) (set-syntax-end-comment *ntf-mode-syntax-table* #\LFD nil t)) なんかいまいち美しくないので、なんかいい方法ないもんかなーと。
>>221 勝手な推測も含んでるんで,間違ってたら誰か指摘を・・・
.\" のあとをコメントにするのは,シンタックステーブルでは不可能だと思います.
ある一文字以降か,// や -- のような同じ文字を重ねたもの以降という指定しか,
(少なくとも簡単には)ラインコメントはできません.
コメント文の色を変えたいわけだから,とりあえず正規表現キーワードで逃げるのが
いいんじゃないですか.255文字の制限がありますが,ちょっとした本当のコメントは
これで十分なはずなので.
正規表現キーワード自体はこんなんでしょうか? 色の指定とかは自分の好きなもので.
("\\.\\\\\".*$" t (:color 5 0))
正規表現キーワードを含んだモードの自作はここを参考に
http://kadd.hp.infoseek.co.jp/foomode.html
>>222 LISPはよーわからんので、ちょっと難儀しましたが取りあえずそれなりな感じ
に何とか出来ました。
シンボルテーブルの設定で何とかなるんだろうと考えていたので、正規表現
キーワードまで思いつきませんでした。(というかあったことすら忘れてた^^;)
ありがとうございました。
特定のフォルダ内のファイルや、特定のファイルだけ通常より多くの バックアップをしたいのですがどうやるんでしょうか? という質問をして、 152 さんに教えてもらい 154 で解決したつもりだったのですが、 session から開いた時はこれではうまくいかないことに気づきました。 なにかうまい手を知っている方がおられたら、please です。
>>227 に便乗で質問です.
*find-file-hooks* はセッションをロードするときは呼び出されないんですね.
セッションをロードした後に,呼び出されるhookをちょうど探していたんですが,
見つけられていません.何か適切なhookはありますか?セッションをロードした後,
各バッファに対してある関数を実行するためには,何か適当なhookをでっち上げな
きゃいけないのでしょうか.それとも,sessionというのはもともとそういう機能を
含んでいるんでしょうか.
内部的にfind-fileな感じなのに…フック呼び出されてるはずだと思うんですが。 (add-hook '*find-file-hooks* #'(lambda nil (message-box (buffer-name (selected-buffer))))) これとか読み込ましてから.ssn開くとどうなるよ?
230 :
227 :03/06/25 14:37 ID:d35BfD7R
>>229 > (add-hook '*find-file-hooks*
> #'(lambda nil
> (message-box (buffer-name (selected-buffer)))))
>
> これとか読み込ましてから.ssn開くとどうなるよ?
ちゃんと期待されるように動きます。
しかし、
(add-hook '*find-file-hooks*
#'(lambda () (ed::set-buffer-local 'kept-old-versions 4)))
とかして .ssn を開いても
kept-old-versions の値は元のままのようです。
231 :
229 :03/06/25 19:23 ID:402yWlne
>>230 こうじゃね?
(defvar-local kept-old-versions kept-old-versions)
(add-hook '*find-file-hooks*
#'(lambda () (setq 'kept-old-versions 4)))
とりあえず、'*before-save-buffer-hook* を使うことで 特定のフォルダ内のファイルや、特定のファイルだけ通常より多くの バックアップをすることにしました。 (add-hook '*before-save-buffer-hook* #'(lambda () (let ((filename (get-buffer-file-name (selected-buffer)))) (when (pathname-match-p filename "C:/xyzzy/*") (ed::set-buffer-local 'kept-old-versions 5) (ed::set-buffer-local 'kept-new-versions 5))) nil)) 230 の質問はわかんないままですが。
diff-mode で n で移動していると急に「書込み禁止バッファです」と言われて n も p もできなくなります。解決方法はありますか。
恐らくなんか変な設定してます。
やっぱり。一つずつ外して試してみるしかないか…。 ほかに困っている人がいて、こうしたら解決した、なんてレスがあればと思ったのですよ。ありがと。
236 :
名無し~3.EXE :03/06/28 14:25 ID:ZtnDO+wQ
エディタで入力中に、現在時間を挿入する方法ってありますか?
M-x insert-date-string
238 :
名無し~3.EXE :03/06/28 18:15 ID:JSfyJvgh
239 :
名無し~3.EXE :03/06/30 14:31 ID:Rl9jSVn1
ほげ
真理だね。
Kamailについて2点、教えてください。 1.kamail-grep-local-allするときに*kamail-local-directory*を参照していると 思いますが、*kamail-local-directory*の値が~/mailなどと指定したとき 正しくディレクトリを参照してくれません。 (「ディレクトリが見つかりません」となる) 何が原因なんでしょう? # M-x load-fileなどで~を入力するとxyzzyhomeの値をちゃんと返してくれてます 2.kamail-grep-local-allでexpire済みのarchiveディレクトリもgrepしたいのですが 可能でしょうか? 要は過去のメール全てに対して検索をしたいのですが、何か解決策はありますか?
そうきたか
1週間くらい前から使いはじめたんですけど、 ついさっき、アイコンの亀の甲羅が XYZZY なことに 気づきました。 それだけです。ごめんなさい。
そりゃもぐりだ。
2ch-modeを使ってて差分取得をするときにgame4.2ch.netなどでうまくいきません。 差分がある状況で416が返ってきてて、datの再取得を行っても直りません。 正常に差分取得できるサーバーではApache/1.3.26でgame4.2ch.netとかはApache/2.0.46でした。 ふと、そういえば、gzip転送を使用する設定にしてみてたのを思い出しました。 確かにApache/2.0.46ではgzipで転送されてきてました。 この設定をはずしたらApache/2.0.46のサーバーに対しても差分取得がうまくいくようになりましたが、 gzip転送はちゃんと使えないのでしょうか? 一見、ちゃんと取得しているようには見えるのに。
248 :
247 :03/07/03 11:55 ID:oRfsbcks
gzipで取得するとdatの改行コードがCrLfで保存されてました。 それが原因でサイズが増えたため416になってました。 どこをいじると改行コードを変更して保存できるんだろう?
>248 thread-get のおしりの方で、今取得したファイルを改行コードが lf のバッファに書き出して、それを書き戻せばいいんではないでっ しゃろか。
新規作成やファイルオープン時にEUCに文字コード決め打ちする方法って ありますか?
>>250 完全決めうちならば、
*expected-fileio-encoding* (*expected-eol-code*)
を設定する。
柔軟に設定するなら OHKUBO さんの set-encoding-eol-code.l
(Netinstaller) を使う。
というところでは。
>>248 多分こう
--- http.l.oldWed Apr 23 17:24:20 2003
+++ http.lFri Jul 04 02:25:54 2003
@@ -595,6 +595,7 @@
:if-exists (if append
:append
:supersede)
+ :encoding :binary
:if-does-not-exist :create)
(si:inflate-stream is os))
(close is)))
256 :
247 :03/07/04 13:21 ID:76g2B2D3
>>255 gzip取得からそのままLfで保存されてたのでどうやらうまくいっているようです。
ありがとうございました。
ステータスバーに cuptT以外のものを出すためには xyzzy本体をいじらないといけないのでしょうか...
>>258 ガーソ やっぱり.
((関数名1 . サイズ1) (関数名2 . サイズ2) ... ) で実現できるなら,
いつかカスタマイズ可能なように実装されないかと,言ってみるテスト
頼むなら、ちゃんと亀井さん直接か、MLで頼みましょう。
261 :
153 :03/07/06 14:14 ID:uRvVEJG8
>>153 です。
ありがとうございなす。readmeとか見やすくなりました。
ついでに、こんな感じでデータファイルが出力されないですか?
…されないですか。そうですか。
(defun stretch-ni-data-file ()
(interactive)
(save-excursion
(goto-char (point-min))
(while (scan-buffer ")+" :regexp t :tail t)
(unless (or (eq (parse-point-syntax (1- (point))) :string)
(looking-for "\n"))
(insert "\n")))
(indent-region (point-min) (point-max))))
とまれ、ありがとう。
右寄せする関数ありますか。
>>262 自分で作りな。
作れなければ、自分なりにどこまでやったか示した上でポイントを絞って質問し直すべし。
pc3が見れません。game3と関係してるようだけど
265 :
264 :03/07/07 03:31 ID:g/NorBqZ
pc4に移行して、iijの一覧と一致しなかったんですね。 失礼しました。
>>262 センタリングとかの右寄せのことですよね?
もっと凝縮できると思うけど、適当に。以下。
(defun foo ()
(interactive)
(if (buffer-fold-column)
(let ((x (- (buffer-fold-column)
(- (save-excursion (goto-eol) (point))
(save-excursion (goto-bol) (point))))))
(when (plusp x)
(save-excursion
(goto-bol)
(insert #\SPC x))))))
smart-indentationを使ったり、
始めに行頭のスペース(とタブ)を消させたりすると、もっと良いかも。
>>263 ,266
回答ありがとうございます。
center-regionとcenter-lineを元に、ほんの少し手を加えて
上手くいきました。
>>266 例まで見せて下さって、どうもです。
>>267 XyzzyWikiにはっといてくれるとうれしい人がここにいる。
Common Lispのソース*.lisp に対して XTAGSを作成するにはどうしたらいいんでしょうか?
>>270 > view.lの267行目 ^
ttp:// → ^ttps*://
> thread.lの865行目 h?ttp → h?ttps*
> 同1380行目、1434行目 ^
ttp:// → ^ttps*://
これだと
httpssss://...
とかにもマッチするんでは…
まあ、そんなケースはまず無いだろうけど。
こっちの方がいいんじゃない
https?//
272 :
270 :03/07/08 20:41 ID:SfBuS5iM
>271 まったくもってそのとおりです……_| ̄|○
いまさらだけど ni の楽さ加減に感動。hattori さんに、そして ni に対応し てくれた拡張パッケージ作者の方々に感謝。 これで依存関係があったら自動に一緒に入れるとかできれば素晴らしいですね。 あ、でも依存って衝突のこととかも考えないといけないか?
>>268 そういうことは自分でやってくれると人がここにいる。
>>269 多分こうじゃないかな
(pushnew '(lisp-maketags "*.lisp") *maketags-list* :key #'car)
275 :
269 :03/07/08 22:21 ID:+RHGabDO
>>274 レス ありがd. だいたいうまくいってますが,処理できないファイルがあるみたいです.
ソースコード全体に適用すると,
"変数が定義されていません: :kb"
というエラーメッセージが出ます.grepかけると
(defconstant kb 34) という定数があり,この変数を使っているソースコードのTAGS処理で
やはりエラーメッセージが出るようです. どうやら
#.kb
というコードがあると駄目な様です.
276 :
274 :03/07/09 02:36 ID:52ArPnUJ
>>275 #+:とか#-:とかで場合わけをしていないだろうか?
マクロはよくわかっていないのでなんともいえんが。
なんならスクラッチから定義してそれから動かすとか。
>>274 ミスったけどコンテキストからてきとーによろしく。
277 :
:03/07/09 20:12 ID:btRo8ivM
lispのデバッグに便利な機能とか関数あるの? スタックトレースとかブレークポイントとかステップ実行とかどんなのがありますか。
与えられた文字(character)が、全角か半角かを判定するにはどうしたらよいのでしょうか?
>>278 char-code で 255 より大きければ全角とか
>>277 IDEでGUIなものを求めているならば、あんたの選択は間違ってるよ。
まさかlispで大規模プロジェクト立ち上げるわけじゃないよな?
281 :
274 :03/07/10 00:17 ID:rXdFCXv+
>>280 別に大規模なものじゃなくてもデバッグ関連は欲しいっしょ。
というかxyzzyでGUIは間違ってるかもしれないけど(道具がそろっていないから)
別段他の言語と取り立てて違うってほど規模で不利になることは無いと思うけどなぁ…。
#差が出るとすればライブラリが無い。
#機械制御みたいなタイミング命な世界には向いていないと思う。けどインタプリタは全部向いていない気が。
lisp言語が他の”インタープリタ言語”に負ける部分てありますか?
言い尽くされている”括弧がいやだ”っていうのは置いといて。
>>274 > そういうことは自分でやってくれると人がここにいる。
>>281 (
>>274 )
> #機械制御みたいなタイミング命な世界には向いていないと思う。けどインタプリタは全部向いていない気が。
日本語を万人がわかるような範囲で書いてください。
意思の疎通ができない人だと周りからいわれませんか?
揚げ足オンリーカキコ(゚听)ウザ
284 :
274 :03/07/10 01:43 ID:rXdFCXv+
286 :
277 :03/07/10 05:17 ID:5fnlJ0dm
>>280 Emacsには結構強力なデバッグ機構があるって読んだからxyzzyはどうなのかなと思ったんです。
まあ確かに大規模プロジェクト作るわけないけどあったら知りたいなと。
287 :
269 :03/07/10 05:29 ID:LiX9Rie9
288 :
229 :03/07/10 06:04 ID:rXdFCXv+
よく使われるのはtoggle-trace-on-errorとかだね。 ステップ実行が欲しい。
290 :
277 :03/07/10 09:39 ID:n7ObA09x
>>287 >>288 どうもありがとうございます。
いつも世話になってるhtml+モードの作者がこんなの作ってたのね。偉いなー。
スタックトレースはもとからついてたのね。便利だね。
質問 お願いします。 xyzzy で空でないディレクトリを(も)削除する関数や、 ディレクトリをコピーする関数はどうやって作るのでしょうか?
>>291 lisp/filer.l にそういう関数があるので見れ。
>>288 前 xyzzy の中探索してたら step なる関数見つけた。
けど使い方がよく分からん。
>>293 step は漏れも使い方分かんないけど step-apply-hook てのもある。
(defun foo (x)
(let ((y (1+ x)))
(if (<= 10 y)
y
(foo y))))
(lisp::step-apply-hook 'foo '(1))
知ってたらスマン
295 :
294 :03/07/10 19:09 ID:wh7qn7uf
あ… こうやって使うみたいだ。 (lisp::step (foo 1))
xyzzyの保存時・新規ファイルのデフォルトの文字コードをsjis:crlfから euc-jp:lfに変更したいのですが、どうすればいいのでしょうか。
297 :
:03/07/10 21:31 ID:3DVTAJv1
結構デバッグ関係もあるんだね。うれしい。
298 :
名無し~3.EXE :03/07/10 22:30 ID:iMuwtH1n
ファイラーとかのフォントを変えたいんですけど、 どのファイルをいじればいいんでしょう?
299 :
_ :03/07/10 22:32 ID:XOsjzKZ/
デバッグしたけりゃmessageとformatで茨の道を進め。 血と汗を流せ。
set-encoding-eol-code.l についてなのですが、 インストールしたところアウトラインツリー設定と文字エンコーディング設定 のメニューの位置が重なって仕切り線が 2 重になってしまいました。 メニューの位置を変えようと (ed::set-encoding-eol-code-insert-menu-items :position 14 :tail-sep t) と、.xyzzy にかいてみたのですが 再起動してもメニューの位置が変わんないので困ってます。 .xyzzy を load-file するとメニューの位置は変わります。 set-encoding-eol-code.l の該当箇所を上のように変えて、 バイトコンパイルして使うとちゃんとメニューの位置は変わるので、 一応そうやってつかっています。 .xyzzy に書きたいのですがどうするのでしょうか?
>>301 siteinit.lに書いて compile & dump でもだめ?
304 :
301 :03/07/11 19:18 ID:E8fJg/Vh
305 :
302 :03/07/11 20:28 ID:81yDscTd
>>304 hookを駆使してがんばったけどうまくいかなかった.
というわけで,逃げの一手.
次の順序でロードさせてください.
(require "set-encoding-eol-code/set-encoding-eol-code")
(require "olt/olt")
#netinstallerでロードさせてたら知らん
306 :
301 :03/07/11 20:54 ID:+/zkmdhc
>>305 残念ながら、#netinstallerでロードさせています。
メニューの表示が変になるのはロードさせる順番によるということですか。
レス感謝します。
307 :
302 :03/07/11 21:15 ID:81yDscTd
>>306 (ni-autoload)の後に これいれる
(when (not *app-menu*)
(delete-hook '*init-app-menus-hook* 'olt::olt-update-menu)
(add-hook '*init-app-menus-hook* #'olt::olt-update-menu)
(add-hook '*post-startup-hook*
#'(lambda ()
(ed::set-encoding-eol-code-insert-menu-items
:position 13
:head-sep t
))))
区切り線いらなければ,これだけでも可
(when (not *app-menu*)
(delete-hook '*init-app-menus-hook* 'olt::olt-update-menu)
(add-hook '*init-app-menus-hook* #'olt::olt-update-menu))
ただし,おかしなところもあるのでそのうち再発するかも.
とりあえず今は動いているみたい.
> デバッグ watch.l 使っとけ
309 :
301 :03/07/11 23:11 ID:Y/HYy6xd
310 :
296 :03/07/13 03:20 ID:HZM9s5bx
あのー、どなたかわかる方いませんか? 共通設定にも文字コード云々は無いし、Googleで調べたりもしたんですが…。
>>310 (setq *default-fileio-encoding* *encoding-euc-jp*
*default-eol-code* *eol-lf*)
これかな?
2ch-modeでtypoっぽいとこを見つけたので貼っときます。 --- main.l~2003-07-06 05:23:40.000000000 +0900 +++ main.l2003-07-13 21:06:54.000000000 +0900 @@ -299,7 +299,7 @@ (2ch-grep . grep-jump) (2ch-bookmark . bookmark-select) (2ch-history . history-select) - (2ch-http . httpq-uit))) + (2ch-http . http-quit))) (defun 2ch-mouse-left-press () (interactive)
>>311 できました。ついでにこいつを書いとくと、scratchもeuc-jp:lfになるようですね。
ありがとうございました。
(save-excursion
(set-buffer "*scratch*")
(change-fileio-encoding *encoding-euc-jp*)
(change-eol-code *eol-lf*))
314 :
名無し~3.EXE :03/07/14 21:01 ID:5v7r0AIi
なるほろ
315 :
名無し~3.EXE :03/07/15 07:52 ID:1B5evI+J
xml-mode で outline-tree が上手く効かないです。 .olt の xml-mode の設定をコメントアウトしているのですが、olt-setting-tag-mode になってない? よく分からないのですが、タグで適当にやってほしいのです。 設定ダイアログのアウトラインタイプで設定しても、これは一時的なものでしかないのですよね?
316 :
山崎 渉 :03/07/15 11:17 ID:PgFZzGxa
__∧_∧_ |( ^^ )| <寝るぽ(^^) |\⌒⌒⌒\ \ |⌒⌒⌒~| 山崎渉 ~ ̄ ̄ ̄ ̄
ども。
ごぶさたしてしまってます。
>>301-307 ,
>>309 [set-encoding-eol-code, outline-tree]
そういえば、手元の outline-tree は set-encoding-eol-code 作成時に
修正した覚えがあります。
いつものことながら outline-tree は中途半端拡張状態なのでまたそのうちに。
>>315 [outline-tree]
> xml-mode で outline-tree が上手く効かないです。
迷走している .olt 読み込みタイミングによる問題です。
別件の理由もあって xyzzy 起動後に読みこむように再度変更します。
しばらくの間は .olt の該当部分のコメントをはずした上で、
.xyzzy のどこかに
(require "olt/olt")
(olt::olt-config-load)
と書いて対処願います。
> 設定ダイアログのアウトラインタイプで設定しても、これは一時的な
> ものでしかないのですよね?
少なくとも今のところは設定ダイアログからの設定は一時的です。
>>318 作者さん.メニューに関してはとりあえずこれでうまくいきます.
厳密にやると大変そうなのでこれでもいいかと思いますよ.
メニューはsiteinit.lが実行し終わってからできるみたいですし.
(add-hook '*init-app-menus-hook* 'olt::olt-update-menu t)
>>319 ども。
メニューは人それぞれ勝手に変更するところなので、厳密に
設定することは考えていません。
ただ、各個人がそれなりに簡単に設定できるようにと思っています。
というところで、今見たところ融通の利かない olt-update-menu は
set-encoding-eol-code のメニュー周りのコードと同程度のものに
修正されていました。
自分で書いたコードなのに忘却の彼方です。 (^^;;
shell3.lとshell-ext.lを使ってshell-modeを利用しているのですが, 標準入出力に対して読み書きするプログラムを実行しても,出力が 表示されないことが(全くではないですが,一部)あります. コンソール上ではプログラムは正しく動いています. とりあえず,報告まで.
Kamailの設定を簡単に出来るようになりませんか? 作者の人に要望ださないと駄目ですかな?
十分簡単だ。。。などと言ってみる
>>322 今は、大抵のひと (私も含めて) が
>>323 のように思っていると思うので、
どう難しいのか、どういう風になってれば簡単なのか、
を具体的に提案した方が良いのでは?
SMTPサーバ POP3サーバ UserID Pawword メールボックス名 ↑等をmakeしてKamailを立ち上げたときに 順番にミニバッファに入力すると設定できるようにならないかと思いました。 言われてみれば今のままでも簡単かもしれませんね
改悪。。。などと言ってみる
327 :
名無し~3.EXE :03/07/18 22:07 ID:jzZW+RCf
初心者としてはそういうのも欲しいけど、 これ系のソフトはそれやったら終わりとまでは言わないけど、終わりだと思う。
328 :
315 :03/07/18 23:14 ID:o6RIzFOL
>>318 ありがとうございます。
1. .olt の xml-mode 関連の記述を有効にする
2. .xyzzy に
> (require "olt/olt")
> (olt::olt-config-load)
を記述。
としたのですが、ダメっぽいです。
.olt の xml-mode の記述はデフォルトのままなのですが(コメントアウトはしてます)、
それがまずい?
> > 設定ダイアログのアウトラインタイプで設定しても、これは一時的な
> > ものでしかないのですよね?
> 少なくとも今のところは設定ダイアログからの設定は一時的です。
了解しました。
>>327 いや、むしろ終わりと言うより終わりだろう。
330 :
317 :03/07/19 00:51 ID:p6QOA6fv
>>328 おれにはレスなしか.まぁいいや,今やっと質問の意味理解できたとこだし.
xml-modeのパスはどうなってる? 俺のとこは
~/site-lisp/xml/xml-mode.l となっている.なので,
.olt には デフォルトのxmlはコメントアウトしたままで下のを追加する.
(when (find-load-path "xml/xml-mode")
(require "xml/xml-mode")
(use-package 'xml)
(add-hook 'xml::*xml-mode-hook* 'olt-setting-tag-mode)
(pushnew '(xml::xml-mode . olt-setting-tag-mode)
*olt-setting-alist* :test 'equal))
ちなみに
(olt::olt-config-load) は使ってない. なんかこれ入れたら自作モードに対して
exportできませんが出てしまって,起動できなくなったので.なしでもちゃんと動いてる.
331 :
315 :03/07/19 01:02 ID:IuPvaxYZ
>>330 すみません。
見事に見落としです(´д` ;)
これから
>>317 とともにやってみます。
332 :
315 :03/07/19 14:18 ID:IuPvaxYZ
>>330 > .olt には デフォルトのxmlはコメントアウトしたままで下のを追加する.
それで OK でした。
どうもありがとうございました。
>333 オイラもKamailでNo Matchって出た。 Load-library make 出来たのに。。。
xyzzy.wxp を消してxyzzy を再起動してみては?
>335 wxpだったけど・・・何故知ってるの? Kamailでメール送信出来ました。 THX
>>337 そんなにこのスレは偉いのか?このスレのどこかに初心者お断りとでも書いてあるのか?
まぁどっちにしろあっちで聞いたほうが親切に教えてもらえるとは思うけど
こっちは取っつきにくいと向こうの住人は思っている。
341 :
337 :03/07/20 18:01 ID:61yEcueO
基本的なことで見落としありそうだから,向こうのスレで分かる範囲内で 答えようと思っただけ.こっちでそんなことでスレ消費したら嫌がる 人がいると思ったからね.えらそうなとこはあやまるよ. ただみんなできてるのに自分だけできていないようなことは,やっぱり 励ましあう方で聞いて欲しい
342 :
名無し~3.EXE :03/07/20 21:15 ID:2Hb2Gjl0
低レベルFAQサイト作ろうぜ。
344 :
名無し~3.EXE :03/07/21 16:14 ID:tDuiwvKg
おめえさんたち、いよいよ夏休みですね。 宿題を出します。自分のためだと思って頑張ってください。 宿題:kakeibo.lを作れ。 よーい、ドラえもん。
>>344 社会人相手に何を言ってるんだね、きみは。
学生さんは気楽でいいな。
暇ついでに
>>5 のリンクをいい加減更新してくれ。
Kakeibo.lよりExcel.lの方が欲しいなと言って見るテスト
モード別のキーバインドを設定するにはどう書けばいいんでしょうか。 具体的には、www-modeでC-uをwww-view-previous-linkに割り当てたいのですが。
(define-key *hoge-map* 以下略 あとはwww.lでも見てみろ。
できました。 (define-key *www-view-mode-map* #\C-u 'www-view-previous-link) ですね。ありがとございました。
flex-fillがうまく動いてくれないので,今コード読んで勉強中なのですが, flex-fill.lの set-flexible-fill-prefix 関数について教えてください. *flexible-fill-prefix-regexp* にマッチしたとき, マッチした場所を fill-prefix に設定していますが,これはどこでバッファに挿入されるのですか? 自分のとこではうまく挿入されなくて… モードの設定と, auto-fill-modeにしているんですけど. あと goal-column とは何なんでしょうか?
352 :
350 :03/07/23 15:23 ID:pIFW12Wd
fill-prefix について,fill.lのdo-auto-fillで挿入されることは分かりました. fill.l の以下の3行を修正したら動いたのですが,こんなことをしなくても動いている 人たちはなぜ動くのか不思議です. 本来のコード : 修正方法 45 : (>= (current-column) fill-column)) ; <= に修正 48 : (when (eolp) ; コメントアウト 49 : (return-from do-auto-fill nil)) ; コメントアウト
353 :
350 :03/07/23 15:41 ID:pIFW12Wd
すみません. 45行目の修正はまちがいで元のままが正しかったです. けど, flex-fill なら(>= (current-column) fill-column)) を満たしていない時でも 改行を入れたら '# ' とか挿入してほしいと思うのはわたしだけ?
今までの MailingList の過去ログを全部ダウンロードして、 ローカルで利用したいのですがどうやって取るのがよいでしょうか? メールでとるとすごく時間がかかりそうなのでちょっとやる気がしないのですが。 アーカイブを置いてある url ってあるのでしょうか?
メールで ML からアーカイブを取得して、使ってるメーラにインポートするなりしてください。
(insert " " 10) のように長さn (この場合10) の空白をつくり,それを変数にセットしたい のですがぴったりの関数ってありませんか?
いま2ch-modeでrawmodeが使える鯖ってないの?どれを有効にしても302がでるんですけど。
xyzzy には make-string が用意されていないみたいなので,より一般的な (make-sequence 'string 10 :initial-element #\SPC) をつかえば好きなようにできるだろう.
362 :
名無し~3.EXE :03/07/25 15:07 ID:5aajYfow
>>361 こういうものもあるんですね.勉強になります.ありがとうございました.
>>362 俺宛かな? がんばって作ってみました.そういってもらえるとちょっとうれしかったり.
365 :
362 :03/07/26 18:31 ID:AivjUUed
>>363 >>353 との間違い。スマソ。でも、ありがたく使わせてもらってます。
ほんとうにいい仕事してます。
正規表現で [ と ] の間に ] をいれるのは "[abc[\\]]" とかではうまくいかず困っているのですが,なにか使い方間違ってますか? [abc[]\\|[ とやればいいことはいいんだけど
>>366 []abc]
"[" も含めたければ、
[][abc]
過去ログとか見たんですが,出ていなかったようなので
質問させてください.
Kamailで,ユーザ名に @ が含まれている場合は
どうやってFoldersに追加すればいいんでしょうか
例えば,ユーザ名が
[email protected] で,
POP3サーバ名が mail.hoge.foo だったとき,
Foldersに
[email protected] @mail.hoge.foo
みたいには追加できないですよね.こういう場合は
どうしたらいいのでしょうか?
一応,
(setq *kamail-pop3-get-list*
'(("mail.hoge.foo" "
[email protected] " nil nil)))
とすれば, g でメールを受信することはできたので,
何か方法があるんじゃないかと思うのですが…
それとも,こうゆうことはできないものですか?
雑記帖の lisp を netinstaller で更新しようとしたのですが、 md5sum が一致しませんとなって更新できません。 こういうときはどうするんでしょうか?
ども。
>>370 すみません。管理の都合上 ggrep 以外の既存パッケージの md5 が
変わっていました。現在は md5 は一致します。
ちなみに、Category 表記を加えたのみでアーカイブ内容は
一切変更していないため、更新する必要はありません。
373 :
370 :03/07/28 22:08 ID:vtXWWNPL
>>372 対応ありがとうございました。
無事 更新しました。
375 :
369 :03/07/29 12:35 ID:M4VsH2Oj
>>374 レスありがとうございます.
[xyzzy:08352] の方はチェックしていたんですが,
こちらは単にサーバ名の typo だったみたいで,
私の場合とは違うようです.
もちろん,私も初めに
[email protected] で試してみたんですが,-ERR Login failed. してしまって,
ログインできませんでした.
(+OK Password Required. まではいけるんですが…)
私が利用しているメールアカウントでは,メーラーの設定方法に
「ユーザ名は @ 以降も必要です」
と明記されているので,ユーザ名に @ 以降を省略した上の書き
方ではダメなようです.
*kamail-folder-regexp* をいじったらなんとかならないかなぁ
とか思っているのですが,力不足で全然うまくいかないです.
filer で recenter はできないでしょうか.
ggrep イイ!! ありがとうございます。
∧_∧ ∧_∧ ピュ.ー ( ・3・) ( ^^ ) <これからも僕たちを応援して下さいね(^^)。 =〔~∪ ̄ ̄ ̄∪ ̄ ̄〕 = ◎――――――◎ 山崎渉&ぼるじょあ
自動あぼーんが過去ログにあるんだけど いまいち動きが・・・なのでうーん・・・
>>380 config.l が認識されていないとか?
>>380 かつて config.l をバイトコンパイルして、config.lc があるのでは?
384 :
380 :03/08/03 00:53 ID:BIlSOn8h
>>382 ,383
config.lはちゃんと認識されているみたいです。config.lcもありませんでした。
>>381 過去ログで自動あぼーんを見つけたので試してみます
今日のハロモニ見たけど、どれが矢口だか判らなかった
俺も。
センターじゃないのな
>>381 380じゃないがありがとう。なかなかうまく動いてる。
>>385 誤爆かと思ったらZYXとxyzzyをかけているのか。
板の移転が更新されなくなったけど、アドレスはどこにしたら良いですか
wiki に貼ろうかと思ったけど、使い方わかんねーYO!ヽ(`Д´)ノ ウワァァァン
>>376 (require "wip/winapi")
(in-package "winapi")
(unless (fboundp 'GetForegroundWindow)
(c:*define-dll-entry HWND GetForegroundWindow () "user32"))
(unless (fboundp 'FindWindowEx)
(c:*define-dll-entry winapi::HWND FindWindowEx
(winapi::DWORD winapi::DWORD winapi::LPCSTR winapi::LPCSTR)
"user32" "FindWindowExA"))
(unless (fboundp 'GetActiveWindow)
(c:*define-dll-entry winapi::HWND GetActiveWindow () "user32"))
(in-package "user")
つづく
392 :
391 :03/08/05 21:48 ID:8Q/RHqeg
つづき (defun filer-recenter () (let* ((position (winapi::make-POINT)) (rect (winapi::make-RECT)) (listview (let* ((ln (si:make-string-chunk "SysListViewEx32")) (l (winapi::FindWindowEx (winapi::GetForegroundWindow) 0 ln 0))) (if (filer-left-window-p) l (winapi::FindWindowEx (winapi::GetForegroundWindow) l ln 0)))) ret) (setq ret (winapi::SendMessage listview #x100c #|LVM_GETNEXTITEM|# -1 1 #|LVNI_FOCUSED|#)) (when (/= -1 ret) (when (eq (winapi::SendMessage listview #x1010 #|LVM_GETITEMPOSITION|# ret position) 1 #|TRUE|#) (winapi::GetClientRect listview rect) (winapi::SendMessage listview #x1014 #|LVM_SCROLL|# 0 (- (winapi::POINT-y position) (truncate (/ (winapi::RECT-bottom rect) 2)))))))) (define-key filer-keymap #\C-l 'filer-recenter) 誰か代わりに貼ってきてくれぃ
貼り方、please
396 :
391 :03/08/05 22:53 ID:8Q/RHqeg
>>393 =376
ども。
見返したら
>>391 の↓不要だったわ。
(unless (fboundp 'GetActiveWindow)
(c:*define-dll-entry winapi::HWND GetActiveWindow () "user32"))
>>391 直してきました.それと,便利に動いてます.どうも.
あと,
ページを削除するには編集を押し,内容を空にして
更新すると削除されます
>>391 ども,今別のマシンにfiler-recenterを入れたのですがどうしても
うまく動作してくれません.5行分くらい上にスクロールするか,
下にスクロールするかしかしません.上に行くか下に行くかは xyzzy を
起動してから終了するまで変わらないようです.
siteinit.l にコピーしてコンパイル&ダンプし,立ち上げなおしたのですが
この状況です.2つのマシンのxyzzyの設定は微妙に違う程度でほとんど同じ
ですが,両方ともwin2kで,成功している方は sp3.失敗した環境は sp4.
他の人はみんな問題なく動いているのでしょうか.
400 :
391 :03/08/06 18:42 ID:Ub5lxTi5
>>399 wiki の解説ありがと。
うちは w2k,sp3 なんでサービスパックが影響してるのかなぁ?
全然見当付かないんですが
>>391 の
(winapi::GetClientRect listview rect)
の下に以下を追加して、どういう数値が出るか見てもらえませんか。
(let ((r (winapi::make-RECT)))
(winapi::GetWindowRect listview r)
(msgbox "y: ~A~%bottom: ~A~%top: ~A~%left: ~A~%bottom: ~A~%right: ~A"
(winapi::POINT-y position)(winapi::RECT-bottom rect)
(winapi::RECT-top r)(winapi::RECT-left r)
(winapi::RECT-bottom r)(winapi::RECT-right r)))
ども.spはやっぱり関係なかったようです.原因はファイラーがモードレスかそうでないか ということみたいです. メニュー>共通設定>ファイラ>2画面ファイラをモードレスに にチェックが入ってないとうまく動作 しません.チェック入れたら動きました.そちらでも再現しますか?
402 :
391 :03/08/06 20:05 ID:Ub5lxTi5
ん〜。うちではチェックのあるなしは関係なく動作しますね。 まぁちゃんと動くんならいいか(ぉぃ wiki の方、若干修正してきました。 (挙動の変更はないので、無視して構いません)
う〜,再現しないのかぁ.自分はモードレスよりモーダルの方が好きなので ちょっと困ったという感じです. それで,モードレス・モーダルに関係ありそうな設定を見直していたら ;;.. ファイラで ESC を押しても終わらない (setq *filer-eat-esc* nil) というのがあったので,コメントアウトしてみたところ無事動きました. この値がどこで,どう影響するかはよくわかりませんが,とりあえず報告まで.
私は「階層付きテキスト」でデータを管理して "outline-tree"をよく利用しているのですが、 先日 アウトラインエディタ「eMomoPad」を使ってみて "file:hogehoge"とか"node:hogehoge"と書くことで 違うファイルを開いたり 違うノードに移動したりできる事を知り、この機能が"xyzzy"でも利用できないかと考えました。 つまり、上記のように 「"file:hogehoge"とか"node:hogehoge"とかをテキストに書いておけば その文字列を違う色で表示できて その文字列の上にカーソルを移動し例えば "C-c x"を押すことで そのファイルを開いたり そのノードを表示できたりできる」 そんなプログラムを書いた方はいらっしゃらないでしょうか。その機能が欲しいんです。
>>404 clickable-urlを改造しればできそうだな。
>>405 > clickable-urlを改造しればできそうだな。
はい、そう思いまして ダウンロードしてソースも見てみましたが 断念してしまいました。恥ずかしながら・・。
>>406 > はい、そう思いまして ダウンロードしてソースも見てみましたが 断念してしまいました。恥ずかしながら・・。
追加です。
ノードジャンプの部分がどうしていいやら わかりませんでした。
>>407 ノードジャンプって同じファイル中のどこかに飛ぶってこと?
>>408 > ノードジャンプって同じファイル中のどこかに飛ぶってこと?
すみません、そういう意味で使いました。
別の方向からのアプローチの仕方として "info.l"も考えてみましたが、こちらも現在の私の力では改造できそうにありませんでした。
den8-modeでhtmlメール受信したときにwww-modeで内容を見ることはできないでしょうか?
411 :
名無し~3.EXE :03/08/09 17:47 ID:K0YDIoWC
xyzzy で Wiki の編集とかできますか?
(゚Д゚)ハァ?
ネトラン読んで来ました
ネトラン房はこのスレのサポート対象外です
現在表示しているバッファ以外の全バッファを閉じるには どのようにすればよろしいのでしょうか?
417 :
415 :03/08/10 07:18 ID:h96e3cPB
>>416 ,417
貴重な情報、たいへんありがとうございました
2ch-modeでスレッド読み込んだ時、ステータスバーに「304」と出てるのは何ですか?
>>420 早速ありがとうございます!何かのエラーなのかと思ってました。
422 :
:03/08/10 16:15 ID:J+cZQssA
すみません。 教えてください。 xyzzyって秀丸のフリーカーソルモードみたいなのはないのでしょうか?
前から思ってたんだけどフリーカーソルってなんの役に立つの? 改行コードの向こうにカーソルが動かせても意味無くない?
矩形選択には便利なときもあるかもしれない、ってイメージだな。
425 :
k2 :03/08/10 16:51 ID:J+cZQssA
>>423 スクロールが必要な長い列と短い列が混じっているソースで、
長い列の最後のほうで縦にスクロールしたい時に便利なんですよ。
フリーカーソルモードじゃないと、短い列で横スクロールが移動するからうざいです
>>425 表示>ウィンドウ幅で折り返す にチェック入れてるから気にならんな
どういう状況だったか忘れてしまったけど、 俺もフリーカーソルが必要と思ったことがある。 クリックアンドタイプのLispをいただいて対処したけど。
> クリックアンドタイプのLisp 詳細きぼんぬ
>>429 どうも
コード見てて思ったけど,擬似フリーカーソルならやれそうだね.
C-f, C-n, C-p, C-v, M-v
を書き換えて必要に応じてSPCを挿入するようにし, 429 も導入する.
あと,フリーカーソルと通常の移動をトグルできるようにもする.
これで,それらしく動くでしょ.というわけで,できる人誰かよろしく.
2ch-modeの追っかけスレのグループ名をリネームしたいんですが、 どうやればいいんでしょう? 2ch-mode中にリネームってできませんよね? どっかのファイルに登録されてるんだろうと思って探したけど、 それらしいものが見つかりませんでした。 グループ名ってどこに登録されてるんですか?
>>431 ~/.2ch/traching/ 以下にあるグループ名と同じ名前のファイルをリネーム。
xyzzy を再起動。
433 :
432 :03/08/10 23:19 ID:F0uJQyDA
激しくtypo… ~/.2ch/tracking/ の間違い 連投制限厳しいのか?エラーになるぞ。
>>432 ・・・サーバ名のフォルダにまぎれてて、
そのフォルダの存在に気づきませんでした。
ご親切にありがとうございました!
>>404-409 [outline-tree, clickable-url (node jump)]
ども。
>>405 clickable-url は一見カスタマイズできそうに見えて、とりあえず動くことしか
考えていない適当スクリプトです。
確か書き始めから公開まで 2,30 分という適当っぷりだった気が。
混乱させてしまってましたら、申し訳ありません。
いい加減 clickable-url もなんとかせなならんので、node:, file: あたりも
ちょいと考えて見ます。
皆さんの記憶からなくなったころにひっそりと公開されるんじゃないかと
思います (^^;;
>>435 Oさん、いつもありがとうございます。
> 確か書き始めから公開まで 2,30 分という適当っぷりだった気が。
なんと言う早さ。私も精進いたします。(^^)
> いい加減 clickable-url もなんとかせなならんので、node:, file: あたりもちょいと考えて見ます。
> 皆さんの記憶からなくなったころにひっそりと公開されるんじゃないかと思います (^^;;
ありがとうございます。気長にお待ちしております。
できるかどうかわかりませんが、自分でもがんばって この機能を実現する lisp を書くことに挑戦してみます。
parse-point-syntax で :string を返された場合、 それが " で開始した文字列なのか ' で開始した文字列 なのかを判断する方法ってありますか?
>>437 一発では判定できないと思うんで、こんな感じでやるしかないかと。
(when (skip-syntax-spec-backward "^\"")
(case (preceding-char)
(#\" ...)
(#\' ...)))
popup-mode-memo にset-function-bar-label で指定したコメントも表示させたい のですが, function-bar-label を取り出す関数が見当たりません.ないのでしょうか?
すいません、multiple-replaceで、マクロに検索語と置換後の語をどうか毛羽良いのかが分かりません。 replace-regexpなら (replace-regexp "検索語" "置換後の語") なわけですが、multiple-replace-regexpではどう書けばよいのでしょうか?
>>441 ダイアログからではだめということなのでしょうか。
一応、
(setq *pattern-list* '(("検索1" . "置換1") ("検索2" . "置換2")))
(multiple-replace-regexp *pattern-list*)
こんな感じっぽいです。
>>442 ダイアログの出し方は知っているのですよ。
>>443 ありがとうございます。
それをちょっと改造してひとつにして使いました。
下のコードを実行した場合 window-width が split 前の幅を 返すのですが、これを split 後の幅を取得するには どうすればよいでしょうか。 (split-window-vertically) (window-width)
>>445 window-width を使う代わりに window-coodinate を使うことで
自己解決しました。
すいません、設定を.xyzzyからsiteinit.lに写したんですが、「アクセスできないシンボルです html+-mode」と言われ、xyzzyを起動できません。 html+-modeに関する部分は下記の部分しかありません。 .xyzzyに書いていた時は大丈夫だったのですが、どこが問題なのか分かりますか? (export 'ed::html+-mode "ed") (autoload 'html+-mode "html+-mode" t) (pushnew '("\\.s?html?$" . html+-mode) *auto-mode-alist* :test 'equal) (setq *keyword-load-path* '("~/keyword/")) (pushnew '("/Temporary Internet Files/" . html+-mode) *auto-mode-alist* :test 'equal)
>>447 漏れもそうなって途方にくれてたんだけど、
なんかのlispのreadmeに.xyzzy用とsiteinit.l用が分けて書いてあったんで、
それにならって書いてみたら(コピペだけど)直ったよ。
使い出して間もないんで変なことかいてたらスマソ
(in-package "editor")
(export 'ed::html+-mode "ed")
(autoload 'html+-mode "html+-mode" t)
(pushnew '("\\.s?html?$" . html+-mode) *auto-mode-alist* :test 'equal)
(in-package "user")
>>448 解決しました! ありがとうございます。
450 :
山崎 渉 :03/08/15 23:35 ID:JIXwXjqR
(⌒V⌒) │ ^ ^ │<これからも僕を応援して下さいね(^^)。 ⊂| |つ (_)(_) 山崎パン
ついに100個かぁ。
>>451 便利な世の中になったな。
漏れがxyzzyを使い始めたときはひたすら
siteinit.lにコピペしてたな。
それでLisp覚えたかといわれるとNOだけど。
netinstallerでインストールできる拡張lispの数 いや本当に楽になりましたね
88しかないよ!抜けてるとこ教えて 雑記帖 (6) Junk Scripts (17) 66MHz.com (13) kia's website (13) HIE no xyzzy (12) Han's Room (8) ふかふか (6) xyzzy のじかん (10) 行ってみたいな斜め上 (3)
ESC ESC を押して,miniバッファで eval 時に, この miniバッファを lisp-mode にすることってできないですかね. 補完が効いたりするとうれしいなと思うのですが.
>>457 [ESC TAB] で補完されると思うが
xyzzyでRuby書いている人に聞きたいんだけど、リファレンス引くときどうしてる? 今はCHM形式の使ってるけど、これはちょっと古いし・・。ruby-modeからinfo.lが使えるかなと 思ったけど公開されているinfoもさらに古いんだよね。RDToolつかってRDから infoに変換するにしても、rd2texi-lib.rbはもうないみたいだし三重苦背負ってます TT # 微妙にスレ違い、かも。
>>459 Cygwin入れてるなら、
shell-modeでbashを立ち上げるようにして、refe
refeについては[ruby-list:38026]あたりを参照
# 微妙にスレ違いかもしれないけど。
>>460 ありがと。refeなんてものがあるなんて知らなかった。
が、いろいろいじってみたけどうちのcygwinはEUCファイルの表示がどうしても文字化けしちゃうんで参る。
かなり便利そうなんでなんとかやってみよ。
# しっかりスレ違い確定
hoge-mode の C-c C-c に割り当てられた関数の実態を *hoge-mode-map* から取り出すにはどうしたらいいんでしょうか.
>>461 俺はwindows版ruby使っているけどこんな風にして
ruby %~d0%~p0refe %* | ruby -rnkf -ne "puts NKF.nkf('-sm', $_)"
refe.bat を作ってSJISに変換してる。
#ずーっとrefe.l作ろうと思ってるけどやる気が出ない。。。
>>462 (lookup-keymap *hoge-mode-map* '(#\C-c #\c))
466 :
:03/08/24 22:16 ID:hqDFdeXb
あるポイント位置の文字が日本語(漢字や全角ひらがな、カタカナ)であるか知りたいんですが lispでかくとどうなりますか?そうならtを返す関数とかないですか。
>>466 (kanji-char-p (following-char))
たぶんね。
468 :
:03/08/24 23:39 ID:QP1NZGXi
>>467 判別できました。
どうもありがとう。素早い回答、感謝します。
469 :
461 :03/08/25 02:25 ID:PVmQHU83
>>463 参考にしてちょっと書いてみた。とりあえず動いていてなかなかいい感じ。
; HIEさん作info-modoki-modeのime-keyword
(defun get-keyword ()
(let ((str nil)
beg end)
(if (pre-selection-p)
(selection-start-end (b e)
(setq beg b
end e))
(save-excursion
(setq end (progn
(or (skip-syntax-spec-forward "w_")
(skip-syntax-spec-backward "^w_"))
(point)))
(setq beg (progn
(skip-syntax-spec-backward "w_")
(point)))))
(setq str (if (= beg end) "" (buffer-substring beg end)))
str))
(defun ruby-refe()
(interactive)
(execute-shell-command (concat "ruby c:\\cygwin\\usr\\local\\bin\\refe " (read-string "Keyword : " :default (get-keyword)) "| ruby -rnkf -ne \"puts NKF.nkf('-sm', $_)\"" ) :OUTPUT "*ReFe*"))
;ruby-mode用のキー定義
(defun ruby-set-keybind()
(define-key *ruby-mode-map* #\F1 'ruby-refe))
(add-hook 'editor::*ruby-mode-hook* 'ruby-set-keybind)
470 :
名無し~3.EXE :03/08/25 02:29 ID:PVmQHU83
あぁ、ミス ime-keyword -> imm-keyword # しかし、このスクリプトを「書いた」なんていうのもおこがましいわな
>>459 ちょっといまさらだけど。
ruby-modeに ri でリファレンスをひく機能がすでにあるので
それを使ってます。
refeは使ったことないなぁ。便利そうなんだけど。
こんな難しい話じゃなくて、エディタの話しよ〜よ〜
xyzzyのスレはどうしても初心者には敷居の高い、難しい話に流れやすい。 これは何が悪いかって言うと、xyzzy(でいろいろ出来てしまうの)が悪い!
>>474 キャレットのある位置に対応する最内の括弧を常に太字で表示したいです。
VisualAssist入りのVC++みたいに。
>>476 paren.l見たが,設定わからんよ.どうやるの?
ネタ欲しいみたいなので,ここぞとばかりに振ってみるか.
1 goal-column が分かりません. 何これ?
2 multi-mode.l
http://www.afis.to/~start/xyzzy/modeIndex.html で,モード毎にいちいち設定しなくても
line-comment[ \t]*begin{モード名} で モード名で指定したモードになり,
line-comment[ \t]*end{モード名} で そのモードを終了するということを
してくれるコード欲しい.
ついでに
begin-region-comment[ \t]*begin{モード名}[ \t]*end-region-comment
begin-region-comment[ \t]*end{モード名}[ \t]*end-region-comment
もあるといいかも.
-*- Mode: モード名 -*- では登録しなくてもできてるからこっちでもできないかな.
3 行頭からの文字列がflex-fill3.l で設定した正規表現にマッチするところで M-^ やっ
たら,マッチ部分を削除したあとでdelete-indentationを実行するようにして欲しい.
どうかよろしくお願いします.
>>477 Load library: parenして、
M-x: turn-on-parenすれば、paren出来ると思うけど。
.xyzzy、siteinit.lに書くなら、
(require "paren")
(turn-on-global-paren)
とすれば自動でなる。
>>478 あぁごめんかん違いしてた.
下の例では p の位置にキャレットがある時にも,両脇の括弧を常に
強調表示してくれるという意味かと思った.
> (require "paren")
paren.l を参考にしたらできそうだけど,使いそうに無いから(ry
あるファイルの内容を文字列として読み込みたいのですが、 lisp ではどうかくのでしょうか?
482 :
480 :03/08/28 04:42 ID:0BFCZiCf
>>481 すみませんが、この説明ではよくわかりませんでした。
(insert-file-content "file") では、バッファに出力されますが
これを文字列として出力して欲しいという意味です。
(read file)としても、最初の行しか読み込まないみたいで悩んでいました。
>>482 >>481 を10回読み直した後,以下をスクラッチで実行してみる.
(with-open-file (in "~/.xyzzy" :direction :input)
(let (num)
(while (setq num (read-line in nil)) (print num))))
つーか、ファイルの全文字列がほしいんならreadとかするよりも、 buffer-substringの方が手っ取り早いんじゃない。
485 :
480 :03/08/28 08:53 ID:HMHAFeCD
>>483 (with-open-file (in "~/.xyzzy" :direction :input)
(let (s (str ""))
(while (setq s (read-line in nil))
(setq str (concat str "\n" s)))
str))
こんなぐるぐるループをまわさず一気にとる方法はないでしょうか?
>>484 buffer を作らずにとるスマートな方法があるかと思って質問しました。
>>485 (defun read-to-end (filename)
(interactive "f開くファイル: ")
(with-open-file (in "~/.xyzzy" :direction :input)
(let (s (str ""))
(while (setq s (read-line in nil))
(setq str (concat str "\n" s)))
str)))
ってかいとけば?
487 :
480 :03/08/28 11:07 ID:jWXpRObJ
>>486 いやあ、別にそういうコマンドが欲しいわけではないんですが。
>>485 何をイメージしてるのかしらんけど、他の処理系でループを回さずに、
バッファにとらずに一気にとる方法があるのか?
489 :
485 :03/08/28 12:23 ID:jWXpRObJ
>>488 他の処理系などさわったこともない初心者です。
>489 ループをまわすのが嫌な理由は?何度も同じことを書くのが嫌と いうだけなら別に関数化するだけでまったく問題ないと思うのだけ れど…。 デフォルトでそういう関数が提供されていないと嫌なの?
491 :
485 :03/08/28 20:23 ID:55J0rlXD
>>490 いや 別に嫌とか言うんではなくて、こういった処理をするのに
簡単な書き方があるのに、面倒な書き方を力技でやっているん
じゃないかと自分で思ったもので。
入出力関係はあまり知らないので質問してみただけです。
深い意味はありません。
ループを回さずに バッファにとらずに一気にとる簡単な書き方が
無いのなら"ない"という答えが欲しかっただけです。
どうもお騒がせしました。
2ch-mode で、あるパターンの記事をどの板でも「あぼーん」する機能はないですか。 例えば山崎渉さん投稿を一回あぼーんしたらその後見なくてすむ機能です。 d のあぼーんはその記事だけしか消えないですよね。
確かにdのあぼーんってあんまり意味ないような。
>>492 過去ログにauto-abornが載ってる。
複数のスレにまたがりlispが錯綜してるのでコピペはしないけど。
---
>>496 早速ありがとうございます。
ただ「関数が定義されていません: aborn-rules-init」と言われ
2ch-mode が起動しません。
2ch-mode は 0.0.1.2 を使っています。原因、分かりますでしょうか。
>>497 >>497 readme.txt に 2ch/config.l に追加と書いてましたが、~/2ch/config.l でした。(一応差し替えておきました)
>ただ「関数が定義されていません: aborn-rules-init」と言われ
~/2ch/config.l の
(in-package "2ch")
より上にインストール 3,4 を書いてませんか?
より下に書いてください。
499 :
497 :03/08/28 23:58 ID:voOO6kbP
>>498 上手くいきました。
なぜか私の config.l に (in-package "2ch") がなかったのが原因でした。
すごく便利ですね。ありがとうございました。
>496 えー、コードを錯綜させた張本人の一人です(w 自分でやろうと思ってたことや、できたらいいなと思ってたことが ほとんど実現されていてイイ感じです。
ちょっとkamailについて質問です。 今は送信のfromに複数の宛先をしてしているのですが、この場合どういう訳か .kamailで設定できるBCCまたはCCにも同じものを送信する、が成功しません。 また添付ファイルをつけたとき「時々」本文中にひどい文字化けの形で表示されてしまいます。 何か心当りはあるでしょうか?仕様?
>>496 ほんとこれ最高.ありがたく使わせてもらいます.
>496 スレを新規に読み込むと 不正なデータ型です:nil:(or integer marker) というダイアログが出て、あぼーんが実行されません。 あぼーんには透明あぼーんを指定。 たぶん、*.tbk生成のタイミング絡みだと思います。
>>499 >>500 >>502 気に入ってもらえたようで安心しますた。
>>503 ご指摘の通りフックが呼ばれる段階では tbk は空の状態でした。
他に使っていたフックが先に呼ばれて、
そこで tbk に書き込んでいたので気付きませんでした。
aborn.l 535 行目
× (let ((point (tbk-point thread-tbk)
○ (let ((point (or (tbk-point thread-tbk) 0))
修正版をアップしておきました。
コメントもあちこち追加してますんでどうぞ。
aborn.lの作者様!動作確認しました! これで2ch-modeも他の2chブラウザに比べて"全く遜色の無いもの"以上のものになったと思います。 大感謝です。
ダブルクリックで単語を選択という機能を無効にしたいのですが、 可能でしょうか?
aborn.l 頂きました。さて、板に移動する度に age だけの記事を消すか聞かれます。 ダイアログが出ずに自動で消すようにできますか。
>>509 readme だったか aborn.l に書いてあるので読むべし.
(filer "path 名" t nil t) としても "path 名"がファイラーが最初に表示するディレクトリにならないのは 仕様でしょうか? (filer "path 名" t nil nil) ならなるみたいなのですが。
2ch-modeの時だけプロポーショナルフォントで表示するなんてできないだろうか?
aborn.lを利用していて 2ch_mode_otherbbs.lをconfig.lを追加してしたらばを読もうとすると 不正なデータ型です number nilと怒られてスレのマーク位置がずれます。 これはどこをどういじればいいでしょうか?
516 :
515 :03/08/30 03:26 ID:dDmVW2w0
すみませんnumber nilじゃなくnil numberでした
517 :
名無し~3.EXE :03/08/30 04:29 ID:YtWBsA/A
初心者スレで質問させていただいたのですが 解決できなかったのでこちらで質問させていただきます。すいません。 マークダイアログ(mark-dialog-box)に追加されたマーク全部の行で、 マーク行の行番号反転とかできますか? またそれを順に飛んでいくこととかも可能でしょうか? (VC++エディターのような動きで)
>>517 mark-dialog-box は使ってないし、VC++エディターも知らないのですが
gmark.l を眺めてみての回答です。
> マークダイアログ(mark-dialog-box)に追加されたマーク全部の行で、
> マーク行の行番号反転とかできますか?
set-text-attributeを使ってマーク行自体の反転なんかはできますから、
そういう関数を作ることはできると思います。
> またそれを順に飛んでいくこととかも可能でしょうか?
移動ができるのですから、そういう関数を作れば可能です。
マークした位置の情報は ed::*global-mark-list* の中でマーカー型のリストになってます。
マーカー型のデータからはmarker-bufferでバッファ名が
marker-pointでpointの位置が分かります。
後はこの情報をごちゃごちゃやれば何とかなると思います。
それでは後はがんばって関数書いてください。
>>517
aborn.rule の ID の例に間違いがありました。
×(date "ID:XXXXXXXX$")
○(date "ID:XXXXXXXX")
`$' を入れると絶対にマッチしません。
他ドキュメントの不備等幾つか修正しました。
修正点はトップページ(
>>506 )を見てください。
>>506 > それと、ダイアログに何を消すか出ると嬉しいかも。
先のダイアログと、
>>508 のタイプと選べるようにしました。
>>515 したらばのスレを幾つか開いてみましたが、エラーは出ませんでした。
エラーになるスレの URL を貼ってもらえませんか?
>>507 できてるかどうか自信なし
(global-set-key #\LBtnDown 'my-mouse-left-press)
(defun my-mouse-left-press ()
(interactive)
(setq *mouse-selection-begin* nil)
(unless (drag-selection)
(stop-selection)
(if (eq (selected-window) *last-mouse-window*)
(progn
(goto-last-mouse-point)
(setq *mouse-selection-begin* (point)
*mouse-selection-end* (point)))
(progn
(set-window *last-mouse-window*)
(cancel-mouse-event)))))
521 :
507 :03/08/30 18:50 ID:RPMfToHQ
>>520 レスありがとうございます。
ed::drag-selection として動きました。
けど、まとも選択できなくなりました。
難しいでしょうか ?
522 :
520 :03/08/30 19:41 ID:j18HT1EX
>>521 >>520 は削除
(defun ed::mouse-selection-start-end (point click)
(save-excursion
(case click
(1 (values point point)))))
# 忙しいのに,なにやってるんだろお
523 :
507 :03/08/30 19:52 ID:RPMfToHQ
524 :
515 :03/08/31 00:59 ID:0phxVmDb
>524 (゚Д゚) ……。 。・゚・(ノД`)・゚・。 2ch_mode_otherbbs.l ガ ワルイッポイ デス... ナオセルヨウニ ドリョク シマス...
526 :
525 :03/08/31 03:10 ID:i75KyAjn
>>526 K:\xyzzy\site-lisp\2ch>diff 2ch_mode_otherbbs.l.org 2ch_mode_otherbbs.l
68c68
<
---
> (in-package "2ch")
1205c1205
< (return-from add-start-and-end-num-to-url))
---
> (return-from add-start-and-end-num-to-url-for-other-bbs))
こんな感じの変更で(2ch-mode起動後)バイトコンパイルできるようになるっぽいです。
528 :
525 :03/08/31 08:34 ID:i75KyAjn
>527 Σ(゚д゚lll) 直しました。ありがとうございまつ。
529 :
496 :03/08/31 18:33 ID:qo1ppmn0
>>525 確認しました。
(in-package "2ch") の前後を↓の様にすると、
2ch-mode 起動前でもコンパイル出来て安心かも。
(eval-when (:compile-toplevel :load-toplevel :execute) (require "2ch/main"))
(in-package "2ch")
(eval-when (:compile-toplevel :load-toplevel :execute)
;マクロ tracking-list-bbs, menu-list-bbs をここに移す。
)
530 :
525 :03/08/31 20:44 ID:vhWBLnfR
>529 Σ(゚д゚lll) すいません、(in-package "2ch") を忘れていました。これで config.l から別ファイルとして読み込めるようになったはず…。 >(eval-when (:compile-toplevel :load-toplevel :execute) > ;マクロ tracking-list-bbs, menu-list-bbs をここに移す。 > ) tracking-list-bbs, menu-list-bbs は 2ch_mode_otherbbs.l で しか使われていないのでもしかしてこれはいらないのかも…。一応 入れておきましたが。マクロは自分にはちんぷんかんぷんでつ…(´Д`)
質問お願いします。 (in-package "editor") (defvar *text-keyword-hash-table* nil) (defun use-text-keyword () (if (null *text-keyword-hash-table*) (setq *text-keyword-hash-table* (load-keyword-file "TEXT"))) (when *text-keyword-hash-table* (setq highlight-keyword t) (make-local-variable 'keyword-hash-table) (setq keyword-hash-table *text-keyword-hash-table*))) (add-hook '*text-mode-hook* 'use-text-keyword) (in-package "user") こうやって text-mode で色をつけると、 KaTeX での色が消えてしまいます。 両立させるにはどうするのでしょうか?
532 :
496 :03/08/31 23:31 ID:qo1ppmn0
>>530 や、自分もマクロの理解はかなりぁゃιぃんですが(汗
最初の状態でコンパイルすると、スレを開いたときに
「不正な関数です: tracking-list-bbs」
とか言われて、
>>529 の様にしてみたらエラーが出なくなったわけでつ。
>>531 katex-mode で text-mode のフックが走ってるので以下のようにしたらいいかと。
(defun use-text-keyword ()
(unless (eq 'ed::text-mode buffer-mode)
(return-from use-text-keyword))
...
533 :
531 :03/09/01 00:11 ID:9ukCoTZX
>>532 >katex-mode で text-mode のフックが走ってるので
なるほど そういうことだったのですか。
解決していただいて助かりました。
有難うございます。
534 :
515 :03/09/01 00:41 ID:MjChgr39
直ってるうえにより便利になってる! ありがとうございます
aborn.l、name指定がうまく動いてない。 指定したキーワードが本文中にあるレスが削除される……
>>535 >指定したキーワードが本文中にあるレスが削除される……
再現しませんでした _| ̄|○
他のルールの body にマッチしてるのでは?
試しに、他のルールをコメントアウトしてみたらどうでしょう。
それでもだめなら……
件のルールのリストを貼ってもらえませんか。
537 :
535 :03/09/01 19:44 ID:xrO2XXNU
再現条件らしきものが判明しました。 ルールを (name "hoge" or "huga") と言うようにするとどうもうまくいかないようです。 (name "hoge") (name "huga") だと期待通りの動作をします。 一応、以下のルールを使ってこのスレでテストしてみました。 ------うまくいかないほう------ (name "山崎 *渉" or "515") ------うまくいくほう------ (name "山崎 *渉") (name "515") ※515さん、勝手にテストに使ってすいません。
>>537 > (name "hoge" or "huga")
> と言うようにするとどうもうまくいかないようです。
すみません。それは仕様です(;´Д`)
name や mail 等は、右側一つの要素にくっつくので、↑の場合
((name "hoge") or ("huga")) と等価になります。
"huga" に対象(左辺)がねぇぞヽ(`Д´)ノゴラァ
、、、と思うかも知れませんが、対象(左辺)を持たない場合
body があると解釈してマッチテストを行います。
というわけで、名前に "hoge" か "huga" がある場合に
マッチさせるには、以下のようにしてください。
(name ("hoge" or "huga"))
紛らわしくてすみませんでした。
539 :
535 :03/09/01 20:30 ID:xrO2XXNU
了解しました。
2ch_mode_otherbbs 2003/08/31 以降全く動作しなくなりました。 新規スレを読もうとすると次のようなエラーがでます。 c:/xyzzy/.2ch/jbbs.shitaraba.com/hoge/0123/dat/0123456789.dat 指定されたファイルが見つかりません。 既読スレは見ることが出来ますが更新しても続きを取得しません。
part8でも同じ症状の人がいたけど、 自分もnetinstallerでインストールしたファイルがすべてルートに展開されるぅ… なおし方教えて〜 T-T
xyzzy を常駐させて使おうと思って ttray.l をいれてみました。 xyzzycli.exe のショートカット(実行時の大きさ = 最小化)を作って 実行したのですが、通常の大きさで実行されました。 xyzzy.exe のショートカット(実行時の大きさ = 最小化)では 実行時の大きさは最小化なのですが、 今度はツールバーの表示が乱れてしまいました。 また、このとき ttray.l をいれているのにタスクバーが残ってしまう のも気になりました。 コマンドラインオプションを使って通常の大きさで実行してから 最小化するということも考えましたが、 できたら最初から最小化で起動したいです。 どうすればできるんでしょうか?
こんなかんじでショートカットを作ってみてください。 手元の環境ではうまくいってます。 xyzzycli -f ttray-hide-xyzzy
あー、ごめんなさい。 コマンドラインオプションを使わずに最小化で起動するのは現状では無理です。 上のショートカットみたいにウィンドウを一旦表示しきらないとうまく動きません。
ツールバーの表示が乱れてしまうのはwindowsのバグだよね。 他のアプリでも起こるみたいだし。直す気ないのかな。
>>463 自分用に作ったものの、結局中途半端なままで投げ出したものでよければ。
一応動くけど、ウィンドウ処理が不十分というレベル。
オリジナルにライセンスが明記されていないので、このような形で公開してしまっていいのか
わかりませんが。
;; refe.l
;; あらいさんのrefe.el(
http://ns103.net/~arai/ruby/ )改悪版
(provide "refe")
(defvar refe-buffer-name "*ReFe*")
(defvar refe-temporary-buffer-name "*ReFe-Temporary*")
(defvar refe-completion-table nil)
(defvar refe-path "c:\\cygwin\\usr\\local\\bin\\refe")
(defun list-to-string (str-list)
(let ((result ""))
(dolist (element str-list result)
(setq result (concat result " " element)))))
(defun refe-call-process (buf &rest args)
(execute-shell-command (concat "ruby " refe-path (list-to-string args) "| ruby -rnkf -ne \"puts NKF.nkf('-sm', $_)\"") :output buf))
(defun refe-make-completion-table () (let ((temp-buf (get-buffer-create refe-temporary-buffer-name))) (setq refe-completion-table (make-hash-table :test #'equal :size 5000)) (refe-call-process temp-buf "\"*\"") (goto-char (point-min)) (while (looking-at "\\([A-Z][A-Za-z_0-9:]*\\|man\\)[#.]\\([^ \n]*\\)") (setf (gethash (match-string 0) refe-completion-table) t) (setf (gethash (match-string 1) refe-completion-table) t) (setf (gethash (match-string 2) refe-completion-table) t) (skip-chars-forward "^ \n") (skip-chars-forward " \n")) (delete-window) (delete-buffer temp-buf) (setq refe-completion-table (let (result) (maphash #'(lambda (key val) (push key result)) refe-completion-table) result))))
(defun refe () (interactive) (if (null refe-completion-table) (refe-make-completion-table)) (let* ((default (get-keyword)) (word (completing-read "Class or Method: " refe-completion-table :case-fold t :default default)) (buf (get-buffer-create refe-buffer-name))) (set-buffer buf) (setq buffer-read-only nil) (erase-buffer buf) (refe-call-process buf word) (goto-char (point-min)) (if (re-search-forward "^\\(---\\|:\\|man\\.\\)" t) nil (let ((klass-hash-table (make-hash-table :test #'equal :size 30)) klass-table klass) (goto-char (point-min)) (while (looking-at "[A-Z][A-Za-z_0-9:]*[#.][^ \n]*") (setf (gethash (match-string 0) klass-hash-table) t) (skip-chars-forward "^ \n") (skip-chars-forward " \n")) (if (= (point) (point-min)) nil ; (message "no such class or method: %s" word) (progn (setq klass-table (let (result) (maphash #'(lambda (key val) (push key result)) klass-hash-table) result)) (setq klass (completing-read "Class: " klass-table :case-fold t)) (erase-buffer buf) (refe-call-process buf klass word))))) (set-buffer-modified-p nil) (setq buffer-read-only t) (goto-char (point-min))))
549 :
546 :03/09/02 10:31 ID:nlIZUnUD
遅ればせながら追記。469さんのget-keyword関数を利用していますので、それも必要です。
すみません、質問です。 タグジャンプ先が別ウィンドウに表示されるようにするのは可能ですか? 2分割で使用中にタグジャンプをした時に、現在使用しているのとは 違うもう一方のウィンドウに飛び先が表示されて欲しいのです。
>>550 > タグジャンプ先が別ウィンドウに表示されるようにするのは可能ですか?
M-x jump-tag-other-window
ところで「可能ですか」ってどういう意図?
デフォルトでってこと?
lispでってこと?
回答者(誰)の能力でってこと?
名の通った人なんかだと、ほぼ可能だろうしね。 既にやったか、これからやるかの違いだけって感じ。
553 :
550 :03/09/02 17:49 ID:r3lzIexY
>>551 レス、ありがとうございます。
望みどおりの動作でした。感謝。
>ところで「可能ですか」ってどういう意図?
そういう機能が元々用意されているかどうか知りませんでしたし、
それがlispで実現できることなのかどうかも判断できませんでした。
で、予想していた回答パターンは、以下の3つ。
・こんなのが用意されてる(今回の場合)
・lispでこういう風に書けば実現可能
・実現不可能です
> そういう機能が元々用意されているかどうか知りませんでしたし、 1) タグジャンプ関数の確認 C-u C-x ? Describe key briefly: F4 => F4 (jump-tag) ※ F4 キーの関数名が jump-tag と判明 2) 類似名のシンボルの確認&キーバインド確認 M-x apropos Apropos(Regexp): jump-tag => *jump-tag-limit* jump-tag F4 jump-tag-other-window ※ jump-tag-other-window というそれっぽいシンボルが定義されており、 キーにはバインドされていないことが判明 3) jump-tag-other-window に対して jump-tag を行い定義確認。 以上。
>>554 間違いました。
> 2) 類似名のシンボルの確認&キーバインド確認
>
> M-x apropos
C-u M-x apropos
556 :
525 :03/09/02 19:10 ID:ZTYLwL4+
557 :
551 :03/09/02 23:49 ID:3vgCG0Kd
>>553 回答、ありがと。
「可能ですか」という言葉をそのまま受けとると
lispでほとんどのことは可能なので
「可能です」という回答が明らかと思ってしまいます。
でも、これは多少なりともlispを知っているからなのでしょうね。
ただ、本当に知りたいことは実現方法なのだろうなと推測して
関数を探したり、コードを書いてみたりするのですが。
最初から実現方法を尋ねるとか要望という形の方が
回答しやすいような気がします。
質問の仕方・テクニックのという問題です。
# オレが気にしすぎという説が有力(w
>>556 _______
〈 コチラコソ スミマセン アリガトウゴザイマス
∨ ̄ ̄ ̄ ̄ ̄ ̄
(´Д`;)ヾ
∨)
((
IDなしの板でも>524でもばっちりです。
ところで、ずっと以前からsite-lispに置いてconfig.lに
(require "2ch_mode_otherbbs")で動いてるんですがなにか問題あります?
559 :
525 :03/09/03 06:48 ID:BtRI8rN7
>558 >IDなしの板でも>524でもばっちりです。 (⊃д`) ヨカッタ... >ところで、ずっと以前からsite-lispに置いてconfig.lに >(require "2ch_mode_otherbbs")で動いてるんですがなにか問題あります? (゚Д゚) ? いや、動くなら問題ないと思います。てっきり (in-package "2ch") がないとだめだと思っていたもので… in-package ってロードされるものにも影響を与えるんですかね? 影響範囲がよくわからない…
>>559 > in-package ってロードされるものにも影響を与えるんですかね?
> 影響範囲がよくわからない…
ロードされるものに user::関数名 という名前がつくか2ch::関数名 という名前が
つくかの違いだけで,どちらでも関数自体は定義されている.呼び出すほうが パッケージ外から
アクセスしない限り,2ch:: や user:: は必要ないので,何もしなくてもそのまま
動くことは十分ありうる.
>>559 ロードされる側は usr に初期化された古い記憶があったけど
2ch_mode_otherbbs の先頭に
(msgbox "~S" *package*)
これを入れると
#<package: 2ch>
こうなった。呼び出し側のパッケージが影響する模様。
激しく勘違いしてた様だ。
562 :
550 :03/09/03 09:09 ID:6cFUEqJO
>>557 確かにそうですね。私の質問では後に続くべき
「可能でしたらその方法を教えてください」
ってのを省略しちゃってますね。
今後、気にするようにしてみます。
563 :
525 :03/09/03 19:30 ID:BtRI8rN7
>560 いや、2ch_mode_otherbbs に限って言うと、2ch パッケージの一 部の関数を再定義して修正しないといけないので、user パッケー ジに新しい同名関数を定義しても意味がないのでつ… >561 調べてくださってありがとうございまつ。 自分もちょっと調べてみましたが、ロードされたファイルはパッ ケージの宣言をするまでは呼び出した側のパッケージにはいるみた いですね。で、ロードしたファイルの中で宣言されたパッケージは 呼び出し側に影響しないようです。
rss-mode で www-mode (w3m) でいろんなサイトを閲覧した後に rss-mode を終了すると、 www-mode の (テンポラリな?) バッファが残ってしまいますよね。 できればこれが、rss-mode 終了時には、 rss-mode から起動した (rss-mode に紐付く) www-mode のバッファのみを全て削除、 というような動作になっていると嬉しいのですが、 何か方策はありますでしょうか?
いま、2ch-modeでニュー速+をみようと思ったら、302とか言われた。 でも、板一覧からoで開くとちゃんとみれるんだよな……
566 :
565 :03/09/06 08:12 ID:Vynb+Gz2
スマソ、板が移転してただけだった。 マァヴさん謹製の板一覧を使ったら問題なくいけた……_| ̄|○
string-replace-matchの挙動が理解できないので教えてください。 (setq str "0a1b2c") (when (string-match "\\([0-9]+\\)" str) (setq str (string-replace-match str "数字"))) ;=>"数字" "数字a数字b数字c"になるのを期待したのですがなにが間違ってる のでしょうか。さっぱりです。
>>567 スマソ。whenじゃなくてwhileでつ。
>>567 それだと\\([0-9]+\\)がstrにあったらstrを"数字"に置き換えろってことになる。
(setq str "0a1b2c")
(while (string-match "\\([.*]\\)\\([0-9]\\)\\([.*]\\) str")
(setq str (string-replace-match str "\1数字\3")))
かな。
×(setq str (string-replace-match str "\1数字\3"))) ○(setq str (string-replace-match str "\\1数字\\3"))) だね。
>>569 慌ててたのかな。ケアレスミスが。
(progn
(setq str "0a1b2c")
(while (string-match "\\([^0-9]*\\)[0-9]+\\(.*\\)" str)
(setq str (string-replace-match str "\\1数字\\2")))
str)
572 :
567 :03/09/07 17:19 ID:UQ5ZkpA/
>>569 > それだと\\([0-9]+\\)がstrにあったらstrを"数字"に置き換えろってことになる。
ああ。なるほど。
(when (string-match "[0-9]+" str)
(setf str "hoge"))
と一緒ってことか。
違うのは (match-string 1) とかの代わりに \1 が使えると。
。。。使えねなぁ>string-replace-match
??? 571でいいやん。
>>567 こっちの方がシンプルです
(setq str "0a1b2c")
(substitute-string str "[0-9]+" "数字")
substitute-string で正規表現使えたのか・・・(つ-`)シラナカタヨ
>>566 > マァヴさん謹製の板一覧を使ったら問題なくいけた……_| ̄|○
どこにあるか教えろ。
教えて下さい。
>>577 2ch-modeデフォルトのがマァヴさん謹製だと思うけど、違うのかな?
実際、それで問題なく行けたけど。
漏れもついこの間まで勘違いしてたので人のこと 言えないが、 「 謹 製 」 は 謙 譲 語 で す よ
popup-string って表示がプロポーショナルフォントなんですけど 等幅にはできないんでしょうか.
>>582 xyzzy でなくてディスプレイのプロパティの方で
ツールチップのフォントを等幅にしたらできるかもしれません.
ohkubo さんの *scratch*
ttp://members.at.infoseek.co.jp/ohkubo/xyzzy/scratch.html で紹介されている「2ch-mode 時は別の xyzzy を立ち上げる」をまねて
kamail-mode のときにも同じようにできるように,
(add-hook 'km::*kamail-mode-hook* 'stop-xyzzy-server)
(add-hook 'km::*kamail-exit-hook* 'start-xyzzy-server)
と .xyzzy や siteinit.l に書き加えて試してみたのですが,
うまく動作させることができません.ご助言お願いいたします.
584 :
582 :03/09/09 16:18 ID:vO0n4EbG
>>583 どうも. 画面のプロパティ>デザインでツールチップのフォントの設定が見当たらなかったので,
変えられるもの全て試しましたが駄目でした...
stop-xyzzy-server, start-xyzzy-server は 新たに xyzzycli.exe を実行した時に,このxyzzyで
開く・開かない ということを設定するものだと思うのですが.そういう意図で使っていますか?
585 :
583 :03/09/09 16:34 ID:+ibdNSiJ
>>584 そうなんですか.
私の XP Pro では Display Propeties -> Appearance -> Advanced -> ToolTip
でフォントを等幅のものにすれば popup-string のフォントも変わっていますよ.
意図は誤っていないはずです.
.xyzzy や siteinit.l へ前述のように記述し,
*scratch* で (run-hook 'km::*kamail-mode-hook*) を実行した場合は
意図したとおりの動作になりますので.
586 :
582 :03/09/09 17:03 ID:vO0n4EbG
>>585 ごめんなさい.MS ゴシック 等幅じゃなかった・・・ w2kですが,ヒントというのを等幅フォントにしたら
そうなりました.
> *scratch* で (run-hook 'km::*kamail-mode-hook*) を実行した場合は
> 意図したとおりの動作になりますので.
意図どおりというのは,新しいxyzzyが立ち上がってそこでkamailが起動するということですか?
この設定でそういう風に動くようになるのなら,理解の範疇を超えてしまいます.ごめんなさい
元の2chモードに対する設定をしてから M-x 2ch としても,新しいxyzzyは起動しなかったので
根本的なところで理解できていないのかなぁ・・・
意図というのはたぶん、
kamail の起動中に xyzzy を立ち上げたとき、
新しい xyzzy が起動する(xyzzycli.exe でも)だと思う。
うちでは 583 でそうなるんだけど。
>>583 ↓を .xyzzy に入れて kamail を起動したときにメッセージが出ます?
(require "kamail/kamail")
(add-hook 'km::*kamail-mode-hook* #'(lambda ()
(msgbox "run hook.")
(stop-xyzzy-server)))
(add-hook 'km::*kamail-exit-hook* #'(lambda ()
(msgbox "quit.")
(start-xyzzy-server)))
588 :
583 :03/09/09 18:05 ID:+ibdNSiJ
>>586 2ch-mode で動作している状態ならば xyzzycli.exe を実行しても,
新しく xyzzyy が起動してくれるってことです.
いまさらですが 585 の (run-hook 'km::*kamail-mode-hook*) は
(run-hooks 'km::*kamail-mode-hook*) の間違いです.
km::*kamail-mode-hook* に引っ掛けるのが間違ってるのかな?
589 :
582 :03/09/09 18:16 ID:vO0n4EbG
>>587 > 意図というのはたぶん、
> kamail の起動中に xyzzy を立ち上げたとき、
> 新しい xyzzy が起動する(xyzzycli.exe でも)だと思う。
kamailを使っていないので,せっかくのコードが試せなくてごめんなさい.
このコードは,kamailを起動したxyzzyには xyzzycli.exeで新たなファイルを開く
場合であっても,別のxyzzyを立ち上げる.そういう意味ですよね.
ためしに scratchで (stop-xyzzy-server)を実行してから xyzzycli.exe を実行したら新しいxyzzyが
起動したので特に問題ないような気がします.
590 :
583 :03/09/09 18:23 ID:+ibdNSiJ
>>587 なるほど,そうやって確認すればいいんですね.
思いつきませんでした.
ありがとうございます.
結果,quit. は表示されましたが,run hook. は表示されませんでした.
(run-hooks '*kamail-mode-hook*) が実行されていないみたいですね.
.kamail に (setq *kamail-pop3-get-startup* t) を書いていることが原因だったようです.
これをコメントアウトすると kamail 実行時に run hook. が表示されました.
ご助言ありがとうございました.
591 :
583 :03/09/09 18:35 ID:+ibdNSiJ
正確には kamail-pop3-get を実行している状態で C-g を押していたのが原因です. 単純な操作ミスでした申し訳ありません. ですが,上記の場合でも動いてほしいので,kamail.l の (run-hooks '*kamail-mode-hook*) を (when *kamail-pop3-get-startup* (kamail-pop3-get)) の上に持っていってしまいました.
>>583 まあ、きちんと動いてるんならいいですが、
オリジナルを書き換えるのは個人的にあれなんで、
こういうのもありってことで一応。
(require "kamail/kamail")
(setf (symbol-function 'kamail2) #'kamail)
(defun kamail ()
(interactive)
(stop-xyzzy-server)
(kamail2))
(add-hook 'km::*kamail-exit-hook* 'start-xyzzy-server)
explorer.exe /e,/select,D:\ でエクスプローラの左側をツリー表示できます。
594 :
583 :03/09/10 13:50 ID:s6pTBiQc
>>592 他の方法でできるのなら,それに越したことはありません.
ありがたく使わせていただきます.
symbol-function の使い方がさっぱりわからないので,この機会に調べつつ.
migemo で半角カナも検索したいのですが できるでしょうか? 2ch でのスレ探しが楽になるので欲しい。
>>595 辞書を追加するのが楽かな。
オマエオマエ
>>596 > オマエオマエ
tabって消えるんだ。。。
オマエ[tab]オマエ
オマエモナー[tab]オマエモナー
って具合に追加するってこと。
migemo で便乗。 html+-mode という文字なら - の部分、 array[] なら [ の部分でマッチしなくなります。 入力した文字そのまま検索できるようにできませんか?
600 :
598 :03/09/12 09:31 ID:0ZhIxfy7
>>599 ありがとうございます。
migemo を終わらせずにできる方法はないでしょうか。
ファイル(F)メニューの "セッションの自動保存"とはどういう機能なんでしょうか?
603 :
598 :03/09/12 15:03 ID:0ZhIxfy7
>>601 migemo on の状態で見つからなければ、
自動的に migemo off になる、とかできないでしょうか。
そして検索が終わったら migemo on になる、みたいな。
>>603 なるほど. それで,それを実現するためにあなたは何を調べたのですか?
605 :
名無し~3.EXE :03/09/12 18:10 ID:TDmg9bbb
set-buffer-colors を global に適用するには,どうしたらいいのでしょうか? Linux マシンから /usr/lib/X11/rgb.txt を持ってきて,加工し, (setf rgb-alist (list (quate (white #xffffff) ... ))) というファイルを作りました. lisp から,色の名前で「共通設定」を設定したいのです. GUI で共通設定から色を変えても,その設定は別のマシンには簡単に運べないですよね? とりあえず set-buffer-colors の 2 番目に t を渡してもダメでしたw
>>605 > set-buffer-colors を global に適用するには,どうしたらいいのでしょうか?
global に適用するって開いているすべてのバッファに対して適用するってこと?
それなら、buffer-list と dolist でループをまわせばいいんじゃないかな。
> GUI で共通設定から色を変えても,その設定は別のマシンには簡単に運べないですよね?
xyzzy.ini を運ぶのが簡単のような。
>>598 英数文字列を検索するのに migemo を使うのが間違っている。
migemo は「ローマ字のまま *日本語を* インクリメンタルサーチ」するものだし。
migemo でサーチするのと 素の isearch するのを別々のキーバインドにすることを
考えるほうが簡単のような気がする。
608 :
605 :03/09/12 21:30 ID:TDmg9bbb
>>606 ムホッ!いままで設定ファイルは XYZZY.w98 かと思ってたよ.イタタ...
でもやっぱり,lisp から操作できる方がいいです.
.ini の一部だけを扱うのもマンドクサです.
dolist ではファイラの色までは変えられませんし,
mode に関わる色には,変わってくれないものもあるようです.
とりあえず lisp-mode のコメントが変わってくれません...
>>608 共通設定で設定できるものには、lisp でも設定できるものと
出来ないものがある。
色やフォントはできないと思う。
詳しくはoptprop.l を参照のこと。
これは作者のバランス感覚の問題でむしろこの方が自然な気がする。
>607 現在の migemo.l は (setq *isearch-scanner-hook* #'migemo-query) として isearch の動作の途中に処理をかませている感じなので、 それぞれ別々に動作するようにするにはそこら辺も修正しなくて はならなくてちょっと面倒かも。
>>610 あれ!? こんな感じでできると思ってたんですが、なにか問題があるのでしょうか?
(in-package "editor")
(defun migemo-forward-search (&optional reverse)
(interactive)
(let ((*migemo-on* t)
(*migemo-saved-hook* *isearch-scanner-hook*)
(*migemo-saved-regexp* *isearch-regexp*)
(*isearch-scanner-hook* #'migemo-query))
(isearch-forward reverse)))
612 :
610 :03/09/13 01:31 ID:1iPz+iSI
>611 (´・ω・`) ゼンゼン カンタン デツタネ...
インクリメンタルサーチで Up,Down キーで履歴を呼び出し RET としても検索しないようなのですが どうしたら検索できるようにできるのでしょうか?
>>613 > インクリメンタルサーチで Up,Down キーで履歴を呼び出し
C-s C-r を押すと検索できる
>>611 でも元質問者の言う html+-mode とか検索できないよね?
616 :
605 :03/09/13 11:54 ID:Rz81XYTK
>>609 サンクスコです.
optprop.l 見ました.全部じゃないですね...
windows を使わなくてはならないときの友として xyzzy を使っているので,
やっぱり全部 lisp な方が嬉しいんです.
ディスプレイの都合もあって,ササッと基調の色を背景黒,
背景白で切り換えられるとどんなによいか...
Gates.l みたいに, Emacs.l の同梱を禿しくキボンヌです.
せめて xyzzy.ini の [Colors] を操作する lisp,
C-h で describe-* にする lisp (C-F2? にするやつは勘弁),,,ホスィ.
617 :
名無し~3.EXE :03/09/13 12:25 ID:Rz81XYTK
色をカスタマイズしていて思ったのですが, fg1, bg1 (文字1, 背景1) とかを利用している mode の場合, 適当に変えちゃうと,背景に埋もれちゃったりしませんか? lisp-mode のコメントは,コメント色ではないですよね?
618 :
609 :03/09/13 12:40 ID:zplcx3js
619 :
605 :03/09/13 14:06 ID:Rz81XYTK
>>618 lisp ではバッファごとにしか適用できないためか,
mini-buffer や,ファイラの色が変わりません.
(concatenate 'string (user-config-path) "xyzzy.ini")
をいじくる lisp でも書くことにしましたw
xyzzy を使うか, common lisp 関数のみでやるか迷うところですね.
>>615 いみふめ。
オレの主張は人間が migemo と 素の isearch を切り替えようってこと。
素の isearch は普通に html+-mode とか検索できる。
そりゃあ、migemoとisearchの切り替えを自動的にやってくれたらすげえ便利だけど、
それにはisearch.lやmigemo.lをまるごと書き直さないといけないっぽい。
で、へたれなオレにはそんなことは無理だから、
代わりになりそうな案を出してみたというわけ。
>>619 何パターンかのxyzzy.iniを用意しておいて,ショートカットごとにどの
設定ファイルで起動するかを設定しておくのが一番楽でしょ
622 :
605 :03/09/13 20:03 ID:Rz81XYTK
>>621 それはちょっと...
別のマシンを使うときや,共通設定を変えたとき (めったに無いけどw) に困ります.
やっぱ lisp ですよ.
そこまで基本設計にこだわる部分にこだわるなら xyzzyにこだわらなくていいような気がするんだが・・・
>>622 この方法で5台のマシンで使い分けていますが何か?
(concatenate 'string (user-config-path) "xyzzy.ini")
を弄くるというのが,俺と同じ考えかどうかは分からないけど
(cond
(eql (machine-name) "machine1")
(concatenate 'string (user-config-path) "xyzzy.machine1.ini"))
(eql (machine-name) "machine2")
(concatenate 'string (user-config-path) "xyzzy.machine2.ini"))
(t
(concatenate 'string (user-config-path) "xyzzy.ini")))
これで十分な気がするのだが,
でも,chcolor のようなコードを書いてくれるというなら,実にありがたいので
よろしくお願いします.
>>620 migemo の検索に失敗した、って取得できないかな。
そうすりゃ、その時に isearch に渡せばできると思うのだが。
siteinit.lで (require "jtc/jtc") とするとメニューが出なくなる気がする・・・
すみません、質問お願いします。 あるアプリケーション(例.メモ帳)が現在起動しているかどうか lisp で調べるにはどうすればよいのでしょうか?
>>626 すいません、メニューまわりはあんまり考慮されてません。
.xyzzy に書くか、netinstallerで自動設定にして下さい。
>>627 xyzzylispとしてはそのような機能はありませんが、まずwin32apiで
該当する機能が無いかどうかを確認しましょう。FindWindow()とか
機能的に近そうですが。
>>625 > migemo の検索に失敗した、って取得できないかな。
その辺がオレには難しそうだった。できなくはないと思うけど。
hookも足りないからisearch.lを変更することになるのは間違いないと思う。
+とか*が絡むと失敗するから正規表現のメタ文字のエスケープが
どこかでうまくいってないんだと思うんだけど、どこかはよく分からないッス(T^T)
これが解決すれば姑息な手段をとる必要もなくなるでしょう。
それまで我慢するってことで。
とりあえず、
>>607 の発言は撤回しときます。
631 :
627 :03/09/14 01:35 ID:i8tLGEWN
>>628 > .xyzzy に書くか、netinstallerで自動設定にして下さい。
お返事ありがとうございます.そうします.今いろいろいじってみましたがうまくいきませんでした.
word-tools と全く同じ方法で設定しているのに,何で jtc だと駄目なのか,それが不思議です.
>>627 (require "foreign")
(c:define-dll-entry :int32 EnumProcesses (:int32 :int32 :int32) "psapi.dll")
(c:define-dll-entry :int32 OpenProcess (:int32 :int32 :int32) "kernel32.dll")
(c:define-dll-entry :int32 CloseHandle (:int32) "kernel32.dll")
(c:define-dll-entry :int32 EnumProcessModules (:int32 :int32 :int32 :int32) "psapi.dll")
(c:define-dll-entry :int32 GetModuleBaseName (:int32 :int32 :int32 :int32)
"psapi.dll" "GetModuleBaseNameA")
(defun list-process-base-name ()
(let ((procid (si:make-chunk nil 4096))
(hmod (si:make-chunk nil 4))
(needed (si:make-chunk nil 4))
(name (si:make-chunk nil 256))
(result nil))
(EnumProcesses procid 4096 needed)
(dotimes (i (/ (si:unpack-int32 needed 0) 4) result)
(let ((hproc (OpenProcess #x0410 0 (si:unpack-int32 procid (* i 4)))))
(unless (zerop hproc)
(EnumProcessModules hproc hmod 4 needed)
(unless (zerop (GetModuleBaseName hproc (si:unpack-int32 hmod 0) name 256))
(push (si:unpack-string name 0 256 t) result))
(CloseHandle hproc))))))
634 :
627 :03/09/14 07:47 ID:3zC46JZz
>>633 素晴らしいです。便利に使わせていただきます。
どうも有難うございました。
>>627 (setf wbem (ole-create-object "WbemScripting.SWbemLocator"))
(setf service #{wbem.ConnectServer["."]})
(setf objSet #{service.ExecQuery["select * from Win32_Process where Name=\"notepad.exe\""]})
(if (= #{objSet.Count} 0)
...)
636 :
627 :03/09/14 08:54 ID:fSf0GBt3
>>635 より直接的に調べるにはこうするのですか。
勉強になります。ありがとうございました。
関係ないけどxyzzyって数学用語?
そう。
>639 あ、ここはしたらばでもまちBBSでもないので(ホストのアドレ スの文字列が jbbs.shitaraba.com も machibbs.com も含んでいな い)、この動作は 2ch-mode のデフォルトの動作になっていると思 います。現状では otherbbs は対応していません…(´Д`)ゴメンナサイ
641 :
名無し~3.EXE :03/09/15 13:00 ID:uPMmROyL
ネットインストーラを使用して2chモードをインストール後、 M-x 2ch と起動すると、 「ファイルが見つかりません:"www/www"」 と表示され、2chモードが起動できません。 readmeを確認して、 以下の一連の処理を行ってみたところ、 1. M-x load-library[Enter] 2. Load library: 2ch/makefile[Enter] 3. M-x 2ch-make-clean[Enter] 4. M-x 2ch-make[Enter] 4番を実行すると、起動時と同様に 「ファイルが見つかりません:"www/www"」 が表示されてしまいます。 単純な間違いだと思うのですが、原因がわかりません。 どなたかご教授お願いいたします。
>>641 www-modeはインストールしているの?
>>641 >>642 の通り、2ch-modeはwww-modeを必要とするのではじめにwww-mode
(同じ作者の所にある)をインストールして下さい。
645 :
641 :03/09/15 20:51 ID:OTPYTLvA
おそくなってすみません、 642,643さん ありがとうございました! 試してみます!
xyzzy を起動した直後に C-x C-f でファイルを開く時のデフォルトのパスは 設定でいますか? 私のところでは,なぜか Craft Launch というアプリケー ションのパスがデフォルトになっているのですが,これを変更して si:system-root にしたいのですけ.
>646 特にカスタマイズしていなければ,find-file で最初に表示されるディレクトリは カレントバッファに読み込まれているファイルのディレクトリになるはずだけど… (状況が掴めないから的外れな指摘かもしれないけれど) Craft Launch(以下CL)からxyzzyを起動しているとそうなるなら CLの&setcommandでxyzzyを起動するコマンドのFolderに デフォルトにしたい場所を指定すれば良いかもしれない
>>647 ありがとうございます.craft側で設定してうまくいきました.
>>647 このスレでは, ``CL" は Common Lisp を意味するので注意w
>>647 646じゃないけど、そういうことか!疑問が解けた。ありがとう。
(set-default-directory "C:/")
って書いておいても全然固定されなかったんだよね。感謝。
>>649 ちゃんと最初に
Craft Launch(以下CL)
って書いてあるんだからわかるべよ。
>648 上手くいって良かった 今回に限らず,Folderは上手く使うと便利だと思う(そろそろスレ違いかな) >649 言われてみれば… 一回しか使わなかったし,敢えて省略する必要も無かったかも >651 フォローthx >650 set-default-directoryをちょっと試してみたけど こちらではCraft Launchの設定に関係なく上手く反映されてる もしやsiteinit.lに書いてるとか?
>>652 >もしやsiteinit.lに書いてるとか?
そうっす。.xyzzyじゃなきゃいけないのかな?
まあどっちにしろうまくいったので、よかった。
なるほどねえ。
ということは set-default-directory で設定しているものは純粋なlispオブジェクトではないのかなぁ
バッファをしてーしておくとか (set-default-directory "C:/" (find-buffer "*scratch*"))
>654 ダンプするときしか反映しない理由が知りたいです。 他にも同じようなものもあるし・・・ そういうものは.xyzzyに書いていますが、せめて理由がわかれば・・・
659 :
657 :03/09/18 10:05 ID:HoJhNV94
同じだたみたいね。ゴミでスマン。
仕様です
661 :
:03/09/18 15:39 ID:BlNyPwiq
文字列中の正規表現検索string-matchをつかってマッチした文字列を取り出すにはどうしたらいいの? マッチした文字列の開始位置しか返してくれないので終了位置がわかりません。
662 :
名無し~3.EXE :03/09/18 19:12 ID:IaGScAzd
(match-string 0) とかするのでは?
>>662 普通にできたんだね。ありがとう。
scratchバッファのトップレベルで分けて実験してたからできなかったみたい。
(string-match "[0-9][0-9]" "asdf25dfsfda") ;;CTRL-J
4
(match-string 0) ;;CTRL-J
"("
あれ、へんだな?
てなってたけど
(progn
(string-match "[0-9][0-9]" "asdf25dfsfda")
(match-string 0)) ;;CTRL-J
"25"
普通にできました。
>>663 > 普通にできたんだね。ありがとう。
> scratchバッファのトップレベルで分けて実験してたからできなかったみたい。
> (string-match "[0-9][0-9]" "asdf25dfsfda") ;;CTRL-J
> 4
> (match-string 0) ;;CTRL-J
> "("
> あれ、へんだな?
> てなってたけど
今やったらできたよ。
>>664 663ではないが,おれはできなかったけどなぁ
*scratch* バッファで、まず手で (string-match "abc" "abc") を書いて Ctrl-J で実行し、次に手で (match-string 0) を書いて Ctrl-J で実行すると "(" になるね。 コピーアンドペーストだと nil になる。最初から両方書いてお くと "abc" 。う〜ん…?
>>666 match-stringは前回のマッチ結果を取得するものだから、
string-matchしてからmatch-stringの間にどこかでマッチが行われれば
書き換わる。( になるのはどこかでマッチしてからだろうね。
ついで、文字を入力したらマッチ結果が破棄されるみたいだね。
だからコピペしたら結果が破棄されnilになると。
むふわかった。(lisp-indent-line)が中で正規表現使ってるね。 Enterとか')'を一度でも入力した時点で結果が崩れるわけだ。
670 :
663 :03/09/20 08:02 ID:qBGysKL7
>>668 >>669 なるほど。
なんでscratchバッファのトップレベルで分けて実験してたからできなかったのか疑問だったがそうだったのか。
ありがとさん。
誰かhowmをxyzzyに移植してくれないかなぁ。
>>671 おお、まじで?ありがとう。楽しみに待ってるよ。
(言い出しっぺの法則が適用されました)
>>672 げ。今からLispの勉強をはじめると、3年後くらいになりそうだが待てる?
>>673 もし Lisp を分かりやすいと思える脳なら,すぐ身に付くよ (はぁと
このスレはSexyzzyが乗っ取らせてもらうぞ! と言ってみるテスト
xyzzy上でLINUXを動かすぞ!
分からないから,やらないんじゃない.やらないから分からないんだ
>>671 ありがとう!楽しみに待ってる人一人追加で。
680 :
671 :03/09/22 00:27 ID:pzMdQvYx
あのぉ、俺プログラムって書いたことなくて、 どっちかというと「励ましあえ」スレの方が 向いているような香具師ですが、それでも期待しますか? とりあえずEmacs lisp 移植キットをダウンロードしてみたが、 このあと何すりゃいいのかさっぱりわからねぇ。
>>680 簡単簡単。
1)移植キットを普通にロードさせとく
2)howmのソースを拾ってくる
3)eval-bufferとかでxyzzyに読ませる
4)エラーがでたら直す
5)ちゃんと動いたら完成!
今 lisper の魂が
>>671 の体に舞い降りた.
>>671 lisp のうち,エディタ向けな関数については
emacs lisp intro で練習するといいかも.日本語訳もあるよ.
一般的なことは
>>5 の Hiroi さんのサイトで.
683 :
682 :03/09/22 01:09 ID:hTDGLMda
>>681 え゛,今そんなに簡単にできるの?
今度 emacs-wiki でやってみるか...
howm の移植はケテーイと ...メモメモ。
685 :
672 :03/09/22 03:59 ID:ONfiVeZp
>>671 がんばれ。マジで応援してるぞ。
まずは日頃自分が感じてる小さな不便を
解消するLISPを書いてみそ。
自分は選択範囲に括弧を付けるとかそういうことから
始めたぞ。
>>671 がんがれ。
わからないことはここで聞けばいいさ。
lookupref.l をつかって CLtL2 を引こうとして気づいたのですが, (defvar *other-reference-path* (merge-pathnames "reference/" (si:system-root))) (defvar *other-ref-index-path* (merge-pathnames "allindex.html" *reference-path*)) .... (defun lookup-CLtL2-reference () (interactive) (let ((*other-reference-path* (concat (si:system-root) "reference/cltl/clm/")) (*other-ref-index-path* (concat (si:system-root) "reference/cltl/clm/index.html")) (*other-ref-pattern-1* "<a href=\"\\([^\"]+\\)\"><code>") (*other-ref-pattern-2* "</code></a>") (*other-ref-browser* 'www-open-url)) (lookup-other-reference (ed::get-winhelp-topic)))) この定義で,lookup-CLtL2-reference の最後の呼び出し lookup-other-reference内での *other-reference-path* などの値は, defvar で宣言されたデフォルトの値が使用されて let で指定された値が使われない気がします. たしかこれは Emacs Lisp と Common Lisp の 違いだと思います.
688 :
687 :03/09/22 10:25 ID:jHC50OO6
肝心なこと書き忘れました. lookup-other-reference 内でどうしたら スタックに積んである方の情報にアクセスできるのでしょうか?
こっちのスレの方が励ましあってるな。
>>688 (declare (special 変数名)) とか。
(・A・)? defvar で定義された変数はスペシャル変数になるはずだけど… defvar で宣言する前に setq で宣言してしまっているとかいうことはないでつか?
692 :
687 :03/09/22 22:15 ID:jHC50OO6
>>690 ,691
レスありがとうございます.勉強になります.
> defvar で宣言する前に setq で宣言してしまっているとかいうことはないでつか?
う〜ん,やってしまったかもしれません. ということは すでにバインドされている変数
に対しては,defvar は何もしないということですね?
>692 すでに値がバインドされているときは、その値を変更することはしません。 …とここまで書いてから、値の変更はしないけれどスペシャル変 数には変更するのかもしれないと思い、実験することにしました。 (setq x 1) 1 (defvar x 55) x x 1 (defun g () x) g (defun f () (let ((x 99)) (g))) f (f) 99 Σ(゚д゚lll) ということで、変数の値は変更しないけれど、スペシャル変数に 変更はするということでした…
スペシャル変数にゃなっているけどさらに内側に同名の変数宣言があるから…。 その関数内では局所変数をいじれることになる ということではない? ややこしい
ddwin で辞書を検索して,結果をポップアップ表示させようとしています. DDwinのウィンドウを一瞬だけ表示させて,すぐに最小化状態にするようにしたいのですが, 他のアプリの最小化・最大化を行うlisp は既にどこかにありますか? もしあれば 教えてください.
wiki の tips の "htmlヘルプを操作" とかは? コマンドラインを使って ddwin に検索させるリスプは TKI さん(しょぼしょぼすくりぷと) のところにある。 ddwin と通信してその検索結果を取得するのにどうするのかは逆に聞きたい。
>>696 れすthxです.
まだ試してませんができそうな感じですね.ありがとうございます.
> コマンドラインを使って ddwin に検索させるリスプは TKI さん(しょぼしょぼすくりぷと)
> のところにある。
それを元にして使っています.
> ddwin と通信してその検索結果を取得するのにどうするのかは逆に聞きたい。
ActiveXが分かれば,直接通信するlispがかけると思います. DDwinのヘルプにいくつかマクロが載っているので
もし分かる人がいれば,こちらも教えていただきたいです.
とりあえず今は,クリップボード経由でデータを送受信する方法を取っています.ddwinのオプションを
よくみるとその設定があります.クリップボード経由で自動で検索・クリップボードに結果を書き込む設定した
設定ファイルを作っておいて,xyzzyから起動する時はその設定ファイルを使ってやっています.
babylon で出来たら神なんだが。
つかぬ事をお聞きしますが、xyzzyに家計簿の機能ってないですよね。 あったら便利だなーっておもうんですが、ユーザー層が一致しなさそうだからないかな。
ユーザー層じゃなく開発者層がだよな。 情報系の学校出ではなくしかも 情報系(もしくは計算がらみ)の仕事をしていない人で xyzzy lisp書いている人っている?
簡単なのなら書く。
>>698 popup-stringで十分でしょ?
>>702 babylonの検索結果を popup-string で表示させるということなんだが。
>>703 英辞郎のほうが語彙数が多いから便利だと思う。
>700 (・∀・)ノ
>>700 lisp の敷居ってそんなにたかいものでもなさそうな
>>703 使ってないけど,ddwinで英独仏日くらい ひけるしbabylonで引くこと
自体も不可能ではないと思う.まぁ俺にはそれをやる知識が足りてないけど
709 :
700 :03/09/25 18:04 ID:I66IA5rz
>>707 高いとも低いとも思わないですがきっかけがすくないような気がしてる…。
逆にemacsを使いこなしている人はきっとemacsを辞められないだろうし…。
>>700 ラムラウトとかをpopup-stringさせると割と寂しい結果になるのでやっぱり
日英位しか…。
ラムラウトってなんですか
Win板やソ板のsubject.txt更新がうまくいかない。 subject.txtを削除してからの新規取得や他ブラウザでの更新はちゃんとできるのに。
>>711 あ、うちでもうまくいかないなあと思っていたところです。
(削除しなくても R で取得できますよね)
713 :
711 :03/09/26 08:07 ID:1kl+1hxa
現在はうまくいくようになっている。
データーベースつくるlispが欲しいよ。 kamail風というか、まあ2ペインの画面構成でいいんだが、左はtree構造。 そんな大したものじゃなくても良いけどメモの整理とかいろいろを放り込めるようなものがあると便利なんだがなー。 皆さんどうですか?
>>714 使ってみないとよく分からない.
というわけで言い出しっぺさんおながいします.
ごめんlispをはじめプログラミングって全然できないの。 rub-memo.lだかそんなのをちらっと見たんだけどそれを試してみようかな。 でもrubyとか意味分らんしねー。ちょっとは勉強しないとね。
ウィルスメールというのを初めて経験したのですが、 KaMail で受信時に添付ファイルをウィルス検索させる方法ってありますか? ウィルスバスターを使っております。 ウィルスメールって添付ファイルを実行しなければ大丈夫ですよね。 ワーム型で駆除できずに隔離中です。
>>718 /.cfg/c-mode.l のようなlisp を書けばc-mode に限らず、
設定できる模様。自分でやるにはかなりきつそうだ。
SPC による detail が表示されないのはオレだけ? それとも detailの情報がsampleに入ってないだけ? あと型情報は symbol はいらないのかなぁ. detail情報は画面を2分割して表示するといいかも. message で表示できる情報量は非常に少ないので.
721 :
700 :03/09/27 11:43 ID:XbOnRsXr
>>718 えと 作者です。
マージできるようには作っていないので、当分別のスクリプトということになりますかね。
ただ最初からnetinstallerとの協調動作を考えながら作っています。
netinstallerで.cfg以下に配置するファイルを配れば自動的にconfigureの設定も
増えることになるので…。
>>719 add-app-nameで項目を登録して、幾つかのハンドルを登録する。
具体的には最低限name,type,value,get,setをセットしてget,setに
書いた名前の関数を定義するだけです。
という説明をしておくとも少し見やすくなるでしょうか。
722 :
700 :03/09/27 11:49 ID:XbOnRsXr
>>720 必要だと思います。
全てS式でやるとすると文字列のところに'\"'を忘れる人がいますし、
t,nil,数字が受け取れる変数と数字だけの変数との区別もしたいので。
今のプリセットで対応できないこともあるかと思うので、
ユーザー定義の関数も使えるようにしようかと思っています。
画面2分割はサボっているだけです。そのうちやります。
detailには"説明"しか入っていません。
>>700 情報とは全然縁の無い友人に xyzzy を紹介したけど,ちゃんと Lisp も書いて使ってるよ.
C とかも触ったことないから lisp も全然抵抗ないみたい.有理数サポートがあるから計算にも
使いやすいしね.
>>721 .xyzzy(site-init.l) で設定値を変更すると configure の設定値も変わるよう
にするというのはだめでしょうか?
どちらからでも設定できたほうが便利かなと思ったもので。
あと補完も設定出来るといいかも。
725 :
720 :03/09/27 17:55 ID:zBEsdtqh
>>700 あー,でしゃばった真似してしまったみたいですね.すみません.
と言いつつ興味があるのでもう少し質問させてください.
これ,lambda式とかで複雑な関数を変数にセットしたいなと言う時はどうします?
全て defun して関数名を表すシンボルを設定するでもできるけど,使いもしない
関数をメモリ上に置くのはもったいない気がしてしまうので.
それと,configファイル自体の配布はどうするつもりですか.
ネットから自分で落とす? それとも netinstaller のようにしますか?
開発者よりも,ちょこっと自分用にカスタマイズした設定が作れる人ってたくさん
いるし,そういう設定を誰でも簡単・気軽に配布できるといいなと思うんです.
>>723 その友達という奴はえらいなぁ.
俺も何も分からないところから少しずつ使い始めて,ようやくlispの
すばらしさに気づきはじめた.SMLも好きだしね.そうこうするうちに
今度は理論にも興味が出てきたし,xyzzyに出合えて本当に良かったと思う.
>>724 自分で確かめてみた? オレが確かめた範囲内では環境の値をデフォルト値として
表示するようになっていると見えたのだけど.
長文・駄文 失礼しました.
このスレ句読点に,.を使う奴って多いな。
729 :
700 :03/09/27 18:56 ID:XbOnRsXr
>>725 質問等々あったほうが考えるのが楽なので助かります。
lambdaにしても結局メモリには置かれるのでそこは変わらないとして、
関数空間を荒らすことがいやだというのは気持ちとして良くわかります。
ただconfigureパッケージからエクスポートしない限りは(そしてまずエクスポートする人もいないでしょう)
user空間に影響が少ないのでこれでいいかなぁと。
まぁ妥協ですね。
とりあえずconfigファイルを置くときは
(in-package "configure")を忘れるなということで…。
配布については私の方でマージする方向とネットインストーラの力を借りるのと
両方でやれると思います。あんまり普通にダウンロードさせることは考えていませんでした。
今考えているのは配布の方法よりもキーバインドのコンフリクトの解消です。
今でもreference.chmやinfo-modoki-modeでキーコンフリクトがおきているし、
どうにか解決できないかなぁとか。
今はまだ何が出来て何が出来ないのかよく解っていません。
こういうパターンはまずいとかそういうのが思いついたら教えてください。
>>724 だいたい725の書いているとおりですけど
確かにxyzzy終了時に値を保存する機能をつけといたほうがよさそうですね。
次の版では適当にフックに引っ掛けるようにしようと思います。
>>723 布教活動お疲れです。
有理数って辺りにやっぱり家計簿の雰囲気を感じない。
理系ですか?
>>699 xyzzy で家計簿ってのは、画面や操作イメージがつかないんですが、
どういったものを想像されているのでしょう?
731 :
720 :03/09/27 20:05 ID:zBEsdtqh
734 :
sage :03/09/28 18:14 ID:pVk6giee
いまいたけをさんの拡張版browser.dllはいずこへ? なんか違うページになっているような……
735 :
711 :03/09/28 18:16 ID:G41N3EJ6
あー、subject.txt更新できたりできなかったりだ…… どういう条件で更新できないのかもさっぱり解らんし。 スレ一覧画面でRを押せばとりあえずしのげるからいいけど どうにも気持ち悪いな。
>>729 > だいたい725の書いているとおりですけど
> 確かにxyzzy終了時に値を保存する機能をつけといたほうがよさそうですね。
> 次の版では適当にフックに引っ掛けるようにしようと思います。
それだと、.xyzzy に書いた値と Configure で表示される値が異なることに
なりませんか?
Configure で設定したものは.xyzzy にかかなければ問題ないと思いますが、
そうした使い方なのでしょうか?
737 :
700 :03/09/28 19:15 ID:D4K1vY1W
>>736 そういう使い方だと思います。
結局同じ変数をいじることには変わらないので、
必ずfixしたい場合に.xyzzyを使うっていう方針かな。
.configureで書ける項目が増える前は.xyzzyと仲良くやっていかないといけないわけで…。
732とかの画面を見ても設定項目の多さにびっくりしてます。1500行くらいある?
せいぜい初期ファイル二つをあわせても300行いかない人としては移行が手間だろうなぁと
思ってしまうわけですよ…。
印刷するときに付けるページ数に,オフセットを加えるには どうしたらいいのでしょうか.
739 :
720 :03/09/29 04:30 ID:l+Yo/Ic1
>>737 3500行overです. かわりに .xyzzy は30行くらいですが.
ni-autoload 使ってないので.移行が大変だけどそろそろ
やらざるを得ないかなと思ってます...
>>738 print-dialog はビルトイン関数なのでカスタマイズは無理だと思います.
所詮テキストファイルの印刷なのでここから,探す方がいいんじゃないですか.
ttp://www.vector.co.jp/ 関数ドキュメントを ldoc で表示するようにしたら,意外と便利なので公開します.
ldocはここから
ttp://plaza28.mbn.or.jp/~kitaj/xyzzy/#ldoc (require 'ldoc)
(in-package "editor")
(defun ldoc-func-message (symbol)
"Print name and arguments of function bound to SYMBOL."
(let ((doc (documentation symbol 'function)))
(message "~S ~:@(~A~) : ~A"
symbol
(ldoc-func-get-args symbol)
(if doc (car (split-string doc "\n")) "not documented"))))
(in-package "user")
(turn-on-ldoc)
>>740 (msgbox "
∧_∧ /
(*゚ー゚)っ <
>>739 ~A~A~A
| ̄ ̄| .| \
|__|/ "
(unicode-char 12372)
(unicode-char 12417)
(unicode-char 12435))
レス番号間違えてるし _| ̄|○
>>737 html+-mode のような autoload で読ませるようなものの変数に
ついては、configure では設定できるんでしょうか?
744 :
743 :03/09/29 20:51 ID:i7vg/W+O
.xyzzy で require すればできますね。愚問でした。スマソ
745 :
738 :03/09/29 22:48 ID:rsXQgUue
xyzzy の印刷機能が好きなんです. www-mode で web ページを思い通りに印刷すると,気分が良くなります. ところで,www-mode にて,fill しないようにするにはどうしたらいいのでしょうか? 段組を使うと,www-mode も段組も改行を行なうせいで, 見栄えの悪い文書が印刷されてしまいます. fill しないと center 要素を処理できないのかも知れませんが, ならば center を無視して欲しいのです.
Wiki の Frongpage 書き換えたの誰だよw
>>731 ちょうど整理の仕方で悩んでいたので助かりました。さんくす。
でもoltに「階層付きlispコメント」を作ったのはいいのですけど、
.xyzzyとsiteinit.lにだけ自動的に適用する方法で少し困っています。
Local variables:や-*- -*-は使えないようですし、find-file-hookに
引っかけるのはいまいち気が進みません。
auto-modeに引っかけるのがよさそうだったのですが、minor-modeの
作り方がいまいちよくわかりませんでした。
setqだけする単純なminor-modeってどんな感じにすればよいのでしょうか?
749 :
731 :03/09/30 18:36 ID:zAxppuVr
favorites.l の作者様、mergeしていただけないでしょうか? 改悪っぽいんですが。 ;バッファバーメニューから追加するときはこれを利用 (defun add-to-favorites-dialog (&optional (buf (selected-buffer))) "お気に入りにダイアログから追加" (interactive) (let ((f (get-buffer-file-name buf))) (if (and f (file-exist-p f)) (progn (create-shortcut f (directory-name-dialog :default *favorites-path* :title "お気に入りに追加")) (update-favorites-menu) (message "~A をお気に入りに追加しました。" (buffer-name buf))) (message "~A はファイルではありません" (buffer-name buf))))) ;最近使ったファイルに追加 (defun open-favorites-func (f) "お気に入りを開く" (if (string= (pathname-type f) "lnk") (setq f (resolve-shortcut f))) (cond ((not (file-exist-p f)) (message "~A はリンク切れです" (file-namestring f))) (*favorites-open-with-shell* (shell-execute (map-slash-to-backslash f))) (t (find-file f) (add-history f '*minibuffer-file-name-history*) )))
751 :
723 :03/09/30 21:28 ID:UwUKdM9j
>>729 理系ですが,でも,やってる事は家計簿みたいなことですよ….ただ,計算を Lisp
ライクに書かなきゃいけない部分が不満らしいです.(* (+ x y) z) を x+y*z と書
きたいらしい.
ちと古いけど同じ悩みの人がいたので
>>66 2.のお願いにレスしてみる
2ch/main.lにおいて
(defun open-browser (url)
;(shell-execute url t))
(call-process (concat "C:/Program Files/sleipnir142/Sleipnir.exe" " " url)))
で解決したよん。
754 :
748 :03/10/01 00:36 ID:o4SXeW4X
>>749 *auto-mode-parameter*、そういえばありましたね。スルーしてました。
でもenparamはちょっと利用できなかったです。
とりあえずenparam.lは、in-packageとexportの順番が逆のようです。
そしてなんだかうまくいかないのでwatchしてみたら、
*olt-make-function*にsymbolをいれないといけないのに、
simple-stringになってしまっていました。
またファイル先頭では
-*- mode: Lisp; olt-mode: olt::olt-make-regexp-lisp-dots; -*-
なんてだらだらとではなく、
-*- mode: Lisp; olt-mode: lisp-dots; -*-
とすっきり書きたいので、対応表を用意したいところです。
なのでenparamではなく、ちゃんと*auto-mode-parameter*にolt-modeを
定義する必要がありそうです。
そしてその対応表も、*olt-make-function-alist*に追加するように
設定できるとよさげです。
‥でも自分のLispのスキルじゃそんなの書けません。歯がゆい。(´Д`;)
Wikiっておもしろいな、トップページまで勝手に書き換えられるんだな。
>>731 ,
>>748-749 ,
>>754 ども。
適当になにか試してみようとは思ってましたが、とりあえず
だらだら書く気でいました。
どこかから素敵な提案がでてくる気配を感じるので、
もうちょっとほっといてみよう、かと。:-)
もうしばらく時間はとれなそうです。
次公開(< いつやねん)では、
- olt-set-*-node -> olt-select-*-node
な function 名変更をしてしまっています。
適当に拡張されている方は、適当に対応お願いします。
2ch-modeの板一覧の読み込み先が消えたみたいだから変更した。
こういう仕組みになってることを知らなかったから少し手間取ったよん。
2ch/main.l
;(defvar *2ch-base-url* "
http://www6.ocn.ne.jp/~mirv/ ")
(defvar *2ch-base-url* "
http://zonutan.hacca.jp/ ")
;(defvar *menu-file-name* "2chmenu.html")
(defvar *menu-file-name* "bbsmenu.html")
>>754 これでどう?
(progn
(setq x 100)
(eval (intern "x")))
=> 100
759 :
748 :03/10/01 10:20 ID:o4SXeW4X
>>756 キャ━━━━(゚∀゚)━━━━!!
oltのためにxyzzyを使い始めたぐらいで、現状でもかなり満足しています。感謝。
マターリいきましょう。
>>758 なるほど参考になります。
当座の間に合わせとして、enparamを改造してみます。
760 :
748 :03/10/01 10:38 ID:o4SXeW4X
SmartDoc が好き
>>760 ありがとう。
ちょっと調べてみたけどちゃんと使えばかなり便利そうですね。
踏ん切りついたのでやってみるべ。
netinstallerで雑記帖へのアクセスに失敗してしまうの俺だけ? もうずっと前からアクセスできてないのだけど・・・
764 :
名無し :03/10/02 13:51 ID:7toEUCFJ
>>763 登録しなおしてみてはいかがでしょうか?
766 :
765 :03/10/02 17:31 ID:sx6Y4zFL
>>764-765 れすthx
今登録しなおしたところちゃんとつながりました.
ありがとう
767 :
748 :03/10/02 20:01 ID:HwHhQJ0F
(defvar *olt-parameter-alist* '((lisp-dots . olt::olt-make-regexp-lisp-dots) (lisp . olt::olt-make-lisp-mode))) (push (cons "olt-mode" #'(lambda (string) (setq olt::*olt-make-function* (cdr (assoc (intern string) *olt-parameter-alist*))))) *auto-mode-parameter-alist*) できちゃった鴨。
>>750 取り込んでみました。最初は「何故ダイアログ?」と思ってましたが、バッファバーから
複数のファイルをお気に入りに入れつつ振り分けるのかと想像してますが、あってます?
769 :
750 :03/10/02 21:04 ID:lK1jEBFC
>>768 すみません。
ダイアログからキャンセルしても、メッセージが"追加しました"と
出てしまうのに書き込んでから気づきました。
(defun add-to-favorites-dialog (&optional (buf (selected-buffer)))
"お気に入りにダイアログから追加"
(interactive)
(let ((f (get-buffer-file-name buf))
(d (directory-name-dialog :default *favorites-path*
:title "お気に入りに追加")))
(if (and f (file-exist-p f)
d (file-directory-p d))
(progn
(create-shortcut f d)
(update-favorites-menu)
(message "~A をお気に入りに追加しました。" (buffer-name buf)))
(message "追加はキャンセルされました。" (buffer-name buf)))
))
とか適当に修正していただけないでしょうか?
> 取り込んでみました。最初は「何故ダイアログ?」と思ってましたが、バッファバーから
> 複数のファイルをお気に入りに入れつつ振り分けるのかと想像してますが、あってます?
今までfavorites.lを使う時は、
お気に入りに追加で ~/favorites/ に入れた後に、
~/favorites/ の下のディレクトリに入れるためにお気に入りに整理から
ファイラーを立ち上げで入れなおしていたので
ダイアログから入れたらその手間が省けて便利かなと思いました。
/favorites/ の下にディレクトリをあんまり作ってない人や
ファイラーを使い慣れている人にはかえって面倒になるかも。
取り込んでいただいて恐縮です。気にしませんので変だったら変えて
ください。
770 :
768 :03/10/02 21:34 ID:5bVQENhs
>>769 >ダイアログからキャンセルしても、メッセージが"追加しました"と
>出てしまうのに書き込んでから気づきました。
そのように修正しました。
771 :
750 :03/10/02 23:21 ID:NhuiSeFL
藤木奏恵ってだれだよ! じゃなくて、拡張版dllクレクレ
>>767 同梱の .olt は使ってますか? 俺はどうしても oltのルールをenparamから設定することができません.
hookの前に enparam は動作してしまうので,とりあえず
(delete-hook 'ed:*lisp-mode-hook* 'olt::olt-setting-lisp-mode)
を追加して, hookから消しました.
それでも,oltのコンフィグのアウトラインタイプの共通設定で指定している正規表現が使われてしまいます.
ESC ESC (setq olt::*olt-make-function* 'olt-make-regexp-lisp-dots)
をすると,期待通りのアウトラインを作成します.
俺の設定のどこがダメなんだろう・・・・
一番良いのは xxx-mode-hook より後に enparam の設定を反映させることだと思うけど,
olt-open-hook に引っ掛けようとして挫折中・・・
774 :
773 :03/10/03 13:28 ID:8uEuCYeF
できました. #| 設定例 (require "olt-enparam") (setq *olt-parameter-alist* '((lisp-dots . olt::olt-make-regexp-lisp-dots) (lisp . olt::olt-make-lisp-mode))) |# (provide "olt-enparam") (in-package "editor") (export '*olt-parameter-alist*) (defvar *olt-parameter-alist* nil) (defvar *olt-parameter* nil) (defun set-make-function () (let ((func (cdr (assoc ed::*olt-parameter* ed::*olt-parameter-alist*)))) (when func (setq olt::*olt-make-function* func)))) (push (cons "olt-mode" #'(lambda (string) (make-local-variable 'ed::*olt-parameter*) (setq ed::*olt-parameter* (intern string)) (add-hook 'olt::*olt-open-hook* 'ed::set-make-function))) *auto-mode-parameter-alist*)
775 :
700 :03/10/04 16:51 ID:iAc+1jMF
configure に書いて欲しい項目って有る? プログラムの方を適当に書き終えたらモチベーションがた落ち。
777 :
700 :03/10/04 20:21 ID:iAc+1jMF
>>776 ビルトインから攻めたいので他を。
というか手で設定するのもめんどい所は後回しにしたいです。
>>777 モード行・ステータスバー・タイトルバーの表示内容はどうでしょ?
howm を動かそうと思って、xyzzy に無い関数などを Meadow の方からコピペしたりしてるんですが、 ライセンス的にこれってまずいですか?
>>780 howm のライセンス条項が見つけられないね.作者日本人だし
メール出すことをお勧めする. xyzzy に移植してますが,公開しても
いいですかと聞けばOKじゃないの?
# howmの移植に大きく期待♪
>>781 え〜と、移植じゃないです。
howm そのものに手を入れずに動かそうと思ってますので。
xyzzy と、elisp ? で互換性のない物を用意して動かそうとしてるんですが、
/Meadow/ver/lisp/ 以下から必要な関数を(可能なら)コピペしてきたいと思ったんです。
>>782 Meadow という環境を移植するということ?
Meadowのライセンスを読むか,Meadowのスレで質問するか,
MLなり作者なりに質問するか.
何にしろ,ここで聞くよりはいい回答が得られると思う.
今 netinstaller で listview.dll インストールできるように なってるけど、インストールされる場所ちょとおかしくない?
>>785 もしも、
文字の表現のちがいとか、if 文とか、スコープのちがいとか
を克服して elisp をそのままの形で動かす方法を完成させているのなら
公開して欲しい。
>>784 今試したところ xyzzy.exeと同じディレクトリに置かれてますけど
これおかしいの? (ただし XYZZYHOME = (si:system-root) )
>>785 どこまでできてるかわからないけれど,移植する上で同じようなことを
今後もする人が出てくると思うので,公開しては?
それとリンク先はGPLの和訳だよね? ちゃんとしてた定義は原文を読ん
でもらうことにして,肝は最初の4つの箇条書きにあるとおり.
説明を加えるならば,複製物もソースコードをDL可能にしておくこと.
# 間違ってたら修正おねがい.
reference.chm は si: から始まる各関数を引くと, ページを表示できません になるね.
MLにhtml形式で投稿したのはだれでっしゃろ?
しかも三回も。誰か教えてやれよ
xyzzyの時だけCtrlとCAPSを入れ替えたいのですがどんな設定をすればいいですか?
>>791 すこしだけがんばってみたけど、CtrlのKEYUP, KEYDOWNは拾えるものの
Caps LockのKEYUPイベントがどうしても拾えず
Caps Lockを押すとCtrlが押しっぱなしになってしまうという
悲しい状態になってしまいました…T-T
憂鬱はどうやってるんだろ。
794 :
700 :03/10/07 02:49 ID:jkmDlFJq
795 :
791 :03/10/07 16:51 ID:SLuMkyW7
ありがとうございました。やはり xyzzy 単体では難しいのですね。 憂鬱は試しに使ってみたらキーが利かなくなったりしました。 w32-set-modifier-key みたいなのはないのですね。
コラ!! だいすけ! しつこいぞ〜〜〜w
>>794 試してみたのはxyzzyのSET_FOCUS/KILL_FOCUSで
SetWindowsHookEx()する方法。
ドライバだと常駐することになっちゃうね。さっくりあきらめますT-T
それともタイマでCapsを見張ろうか…。
>>797 あきらめた方がいいと思います.xkeymacsでも同じ事しようとして
挫折してましたし.そんなに簡単なことではないかと.
# 右CtrlとCapsを常に入れ替えるとかもだめ?
>796 誰か教えてやれよ・・・(w
xyzzy で jsp とか編集してる人居ます? ちょっと調べた感じではそういうモード無さそうなんですが、どっかにあったりしますか?
>>800 jtc と html+-mode を multi-mode で組み合わせれば?
wikilogのスケジュールを起動時に表示できるようにしました. っていっても設定ファイルに以下の二つを書いただけですけど. (define-key ed::*wikilog-schedule-mode-map* '#\ESC 'ed::wikilog-add-end) (ed::wikilog-schedule) ESCキーへのバインドはese-fortuneから移ってきたのでその名残です. 我ながらいいアイデアだと思うんですが,こうやって使ってる人っていますか? それとhowmみたいに曜日いれたいんですけど,正規表現でつまづいてて うまいことできません. 誰か改造して使ってる人いませんか?
www-modeが導入できないんですが 解説ページとかないですか?
たいしたことじゃないんだけど site-lispに入れるファイルはlispファイル? etcに入れる予約語とか書いとくファイルは何ファイル?
806 :
780 :03/10/09 05:48 ID:vF2vsyhj
借りてきたコードを自前で用意したので、
今のところ問題はなくなったと思います。
もう少しテストしたいので、今週末くらいにアップします。
キー表現の
(define-key hoge-map [(meta redo)] 'function)
^^^^^^^^^^^^^
こういうの(イベント?)には対応できませんが、
それ以外は何とかなってる気がします。
>>802 こんな感じでしょうか?
(let ((str "[2003/10/05]")
(regexp "\\[\\([0-9]\\{4\\}\\)[-/]\\([0-9][0-9]\\)[-/]\\([0-9][0-9]\\)\\]"))
(when (string-match regexp str)
(let* ((lst '("月" "火" "水" "木" "金" "土" "日"))
(y (parse-integer (match-string 1)))
(m (parse-integer (match-string 2)))
(d (parse-integer (match-string 3)))
(time (encode-universal-time 0 0 0 d m y)))
(nth (nth 6 (multiple-value-list (decode-universal-time time))) lst))))
>>803 netinstallerで、なにも考えずに入りましたよ。
808 :
803 :03/10/09 20:41 ID:8QSoXtGv
>>807 netinstallerでは、
C:\Document...はアーカイブファイルではありません と言われ中止になってしまいます
アーカイブの展開に必要な dll が多分入ってないです。
810 :
803 :03/10/09 20:49 ID:8QSoXtGv
なんとそうでありましたか lzhなんですが圧縮・解凍はソフトでやってるんでdllは はいってないかもです
811 :
803 :03/10/09 20:51 ID:8QSoXtGv
あ、dll入れたらできました ありがとうございました
812 :
803 :03/10/09 20:56 ID:8QSoXtGv
ですが一回xyzzyを終了させもう一度起動するとwww-modeが使えません
814 :
803 :03/10/09 21:04 ID:8QSoXtGv
2ch-modeも入れてみたんですが、M-x 2chとやってもNo matchと返ってきます
氏ね
816 :
802 :03/10/10 21:38 ID:91dqonlC
>>806 レスポンス遅くなりました.
この週末にそれを組み込んでみます.
ありがとうございます.
"C-c" から #\C-c を返す関数はどう書きますか?
818 :
780 :03/10/11 08:08 ID:fnaVYKsA
819 :
802 :03/10/11 16:18 ID:GHIloDi7
とうとうきましたね. howm for xyzzy. 無事インストールに成功しました. こっちに乗り換えられるかも知れないので, これ試してからwikilog曜日拡張するかを検討します.
820 :
817 :03/10/11 16:35 ID:puEnoNV4
>>818 おつ
howmの使い方分からないのでべんきょうしてきます.
read-from-string でできました.ありがとうございました.
コマンドで"最近使ったファイル"を開くにはどうするかおしえてください Alt F F 以外の方法で…
>>821 grepで "最近使ったファイル" を ~/lisp/ 以下検索
*recent-file-popup-menu* に入っていることが分かるので
さらにそれを検索.
add-file-history-to-menu でメニューを生成していることがわかるので,
この関数を参考に自由にキーバインドしてください
>>818 オツ。
初めてだけど、 hown 使ってみよう。
howmS モードで j キー(howm-view-scroll-other-window)すると 「引数が少なすぎます」エラーになりますた。
カーソルがeol、もしくはbolの時には次・前のバッファに移動して、 そうじゃないときはeol、bolに移動する、という感じのコマンドを割り当てたいのですが。 (global-set-key #\C-Right 'move-eol-or-next-buffer) (global-set-key #\C-Left 'move-bol-or-previous-buffer) (setq *next-buffer-in-tab-order* t) (defun move-bol-or-previous-buffer () (interactive) (if (bolp) (previous-buffer) (goto-bol))) (defun move-eol-or-next-buffer () (interactive) (if (eolp) (next-buffer) (goto-eol))) 今はこういう感じで関数を二つ定義して別々に割り当てているけど、 一つの関数で済ませる方法を教えて下さい。 xyzzy Part3の70にあった >(require "wip/winapi") >(c:define-dll-entry c:short GetKeyState (c:int) "user32") を使えば何とかなるっぽいけど、どうもうまくいかない・・・
828 :
827 :03/10/12 20:50 ID:WXQyX24L
避難所、あんまりスレッドないのね…イミ ナカッタ…_| ̄|○
>>826 howm-install.l を読み込んだときに
migemo を使わないよう質問に答えると途中でとまります.
>>829 判らないなりにいろいろ試してみましたが、howm-wrap.lの244,247行目の
howm-migemo部分を削除したところ、migemoを使わない場合のインストールに
成功しました。
早速、いろいろ試してみようと思います。
832 :
827 :03/10/13 12:27 ID:aTPC7Srl
>>831 メニューに対してRETで動作しないのですが,まだ
対応してないということでいいですか?
>>833 ん?
例えば、メニューの[新規]の上にカーソル置いてRET押すと動作するけど?
>>834 そうですか.. 自分は動作しません.
TODOの下だけ下線がひかれて,これのみ動作しているようです.
installスクリプト使わずに導入したから,どこかで間違えたかなぁ...
>>832 動作確認しました。嬉しさのあまり泣きそうです。ありがとうございます。
>>835 再現できました。条件としては次の二つくらいと思います。
・日本語メニューを使っているが、`*.el' ファイルのエンコーディングを SJIS にしていない。
・変数 howm-menu-lang の値が適切でない。
日本語メニューを使ってて、初期化ファイルをコピーしてない場合後者かも知れません。
.xyzzy の (require "howm-wrap") の次行に以下を追加してみてください。
(setq elisp-lib::howm-menu-lang 'elisp-lib::ja)
838 :
827 :03/10/13 18:58 ID:aTPC7Srl
>836 そういっていただけるととても嬉しいでつ…(⊃д`) ところでまちBBSって machibbs.com から machi.to へ変わったんですね。 それに対応するように修正したのでもし必要なら落とし直してください。
839 :
827 :03/10/13 19:06 ID:aTPC7Srl
あ、言い忘れましたが、2ch_mode_otherbbs を入れた場合は 827 の extra_board は不要です。
>>837 追加することで
elisp-lib::howm-menu-lang が en から ja に変わることを確認しました.
しかし,未だ動作せず.jaを指定することで,migemoが動作するようになりました.
SJSに変換する時,xyzzyでひらいて C-x C-k f でやったんですがこれが
まずかったのかなぁ.
>>831 howm感動しながら使ってます。
ところでmenuの%scheduleにスケジュールが入ってくれないんですが
未対応なのか、僕の設定が悪いのかどっちでしょうか(泣
>>840 `*.el' ファイルは普通に xyzzy で開くと SJIS と誤判定されます。
開く際には、C-u C-x C-f で euc-jp を指定して開く必要があると思います。
>>841 メモ中に @[2003/10/15]! @[2003/10/15]@ とか記述して保存。
[menu 更新] にカーソルを当てて、リターン。
これでスケジュールが入るはず……ってか入ってくれてます。
あと補足ですが、 %eval%(howm-menu-open "menu_edit.howm") ここでリターンキーを押すとエラーになります。 %eval% や %call% で howm の関数を呼ぶ場合、 %eval%(elisp-lib::howm-menu-open "menu_edit.howm") の様に、elisp-lib:: が必要になります。
>>843 あ、できました。
どうやらスケジュールの日付が遠い未来だったので表示されてなかったようです。
悪いのは僕の頭でした、すいません…
>>845 デフォルトでは七日先のスケジュールまでしか表示されません。
こんなん書いておけばいいと思います。
;; 一年先のスケジュールまで表示。
(setq elisp-lib::howm-menu-schedule-days 365)
847 :
345 :03/10/13 21:36 ID:jbA/yLCg
>>846 こんな馬鹿なことにも丁寧にありがとうございます。
早速追加させていただきます。
howm(・∀・)イイ! でもCPUパワーめちゃ食うね! オレのだと超つらいや
ところでhownってなに?
850 :
835 :03/10/13 22:52 ID:qCzvnS7J
C-u C-x C-f で euc-jp を指定して開き, sjisで保存し .lc を消して 個々をコンパイルさせたところ,howm-mode.lで 引数が少なすぎます: nil とエラーが出てコンパイルがとおらず、xyzzyをダンプ&再起動するも バイトファイルが壊れています とメッセージが出て起動しなくなりました. site-lisp/howm-*.l を削除することで直りました. nkfを導入して nkf -s で変換しましたが結果は同じです. どうやら howm-wrap.l を読み込むとこのようなエラーが出るようです. howm 1.0.4.1 howm-wrap 13日版 です. いま,howm関連の設定ファイルを全て消してやり直してみました.
851 :
835 :03/10/13 23:01 ID:qCzvnS7J
結局, readme.txt のとおりやったつもりでしたが どうにも動かないので,インストーラで入れなおして動きました. インストーラ使わずに入れられた人はだれかいますか?
インストーラなしで成功しました。
バイトファイルのエラーを出しまくりましたけど、
その都度、自動生成の.lcを消したら通りました。
ところでファイル末尾(EOFの直前ではなく。文字がないだけで改行はある)で
日付挿入をしようとすると、END of Bufferと言われ、
(ミニバッファの)日付挿入メニューも出ないで[2003/10/13]がそのまま
挿入されてしまいました。
>>848 たしかに重い。menu.howmのmenu部をカーソルがなでるときとか。
バッテリ駆動の時はちょっと困るかも。
>>850 compile.lcをオートロードするときに、readtableがelispになっていて
バイトコードが正しく読めてないようでつね。
(defun elisp-compile (&optional file)
(interactive "fEmacs Lisp Compile: ")
(lisp::let ((*readtable* *original-readtable*)) ; 念のため
(lisp::require "compile"))
(lisp::let ((*readtable* *elisp-readtable*))
(byte-compile-file file)))
覚書,todo,〆切り こいつらの書式が分からないんだけど・・・・ どう書くんですか? @[日付]@ : schedule? @[日付] : todo?
>>857 あー,途中までしか読んでなかったようです.すみません.
ところで,readmeにのっている
[日付]@ や [日付]! では色が変わらないんですが,
@[日付]@ @[日付]+ とすることで,マッチングして色が変わり,
メニューからも表示されるようになりました.設定はデフォルト
のままいじっていませんが,howm のreadmeの更新が遅れている
だけということでいいでしょうか?
859 :
857 :03/10/14 01:20 ID:in6ES4B7
860 :
857 :03/10/14 01:29 ID:in6ES4B7
>>858 あ、それはreadmeが新しすぎるからで、
[]の前に@をつけるのが1.0.4.1では正解です。
「v1.0.x からの移行例」あたりを参考にしてください。
861 :
856 :03/10/14 04:08 ID:nvYV3ZI1
>>860 thxです
howmを使っていて
「削除されたウィンドウです」
というエラーメッセージがでて, C-x o/p や C-x 1
などのウィンドウ系の操作が一切できなくなることがあります.
どうしたら100%再現するかまでは分からないのですが.
C-x k でビシバシウィンドウ消していったらいつのまにかそう
なりました. howmのエラーなのかxyzzyなのか,うちの設定が
悪いせいなのか分かりませんが.とりあえず報告まで
スペルチェックではispellってのがあるけど、 どっかでMSワードのスペルチェックや日本語表記の揺れチェックを利用する lispをみたような気がするんだ。 ご存じないですか?使っている人いたらどんな感じ?> こんどこそ、役に立てたらと思っております。明日は > 晴れるといいね。
あちゃー。なんか変なのをペーストしてしまったよ。すまんすまん。
>>862 word-tool netinstallerで追加できるよ.
howmのメニューにいわゆる「ボタン」を追加したいんですが, 表示は出来るのですが,リンクが張れない(下線がでない)です. menu.howmをeuc->sjisにしたりしたのですが,特に変化なく. デフォルトで上下についてるボタンにはちゃんと下線が付いていて, ジャンプできます. 自分で作ったのだけ出来ません. なお,menu.htmlの中身は, -----8<-----8<-----8<-----8<-----8<----- [新規] 検索([固定] [正規] [roma]) [複製] [題↑] [名↑] [日↓] [鍵↓] [更新][今日][昨日][一覧][最近] [前後] [予定] [Todo] [全消] [abc] [項目] %schedule ------------------------------------- %todo メニューの編集について → %eval%(howm-menu-open "menu_edit.howm") -----8<-----8<-----8<-----8<-----8<----- 見たいな感じで,この場合[abc],[項目]に下線が付かず, ジャンプができません. おんなじ症状の人はいますか?
>>866 howm-menu-command-assoc-ja
という変数にそれらしい記述があったので調べてみるのがよろしいかと.
[と]で囲めば何でもボタンになるという仕様ではないと思う
868 :
名無し~3.EXE :03/10/15 02:25 ID:Kq0LTzft
会社の2000ではうまく使えたgnugo 0.0.0.1が、 家のXPではうまく動きません。 具体的には*GNUGo Ban*バッファは作られるのですが、 このバッファに何も表示されないのです。となりの *GNUGo Game*バッファも同様です。 何がいけないのでしょうか?? わかる方いらっしゃいませんか??
正規表現のキーワードを使うことで CPU 負荷を軽減できた……かも(・ω・)
手動インストールの仕方を書き直してみました。
howm-wrap_031015.zip
>>853 > 日付挿入
直しました。
>>854 有り難うございます。取り込ませていただきました。
>>861 原因はつかめましたが、Lisp での対処法が分からない(;´Д`)
set-window-configuration で状態を復元したときに、
ウィンドウのチェインが破棄されてる(next-window に失敗する)
のがどうにか出来ればいいんですけど……
現状では使う人に気を付けてもらうしかないかもです。
>>866 こんなんを ~/howm-init.l に書いておけばいいかと。
(setq howm-menu-command-assoc-ja
(append howm-menu-command-assoc-ja
'(("[項目]" . (lambda () (msgbox "項目")))
("[abc]" . (lambda () (msgbox "abc"))))))
>>868 勘なのですがgnugo.lのなかの
user::gnugo という関数のなかの
(set-process-filter *gnugo-process* 'gnugo-filter)
という行のまえに
(sit-for 1)
とか入れたものを .xyzzy にかいても動きませんか?
(1 と言う値は適当に調整)
871 :
866 :03/10/15 06:57 ID:e5PVz+13
>>867 >>870 ありがとうございました.
希望通りの動作が実現しました.
menu_edit.howmに書いてあった「ボタン」って言うのは上に並んでる
ボタンのことだったんですね.
てっきり自分で自由に追加できると思ってました.
勘違いでしたが,結果的にボタンの追加方法がわかって
よかったよかった.
872 :
671 :03/10/15 15:39 ID:bndj64R9
>>818 神よ!ありがとう!
俺…、結局何もできなかった…。
^Mって何ですか? これ全部消したいときうまくやる方法ある?
howm最高です。ありがとうございます。 howm-list-grepは、大文字と小文字を区別して検索してしまうようですがこれらを 同一視して検索できるようには出来ます?
875 :
853 :03/10/15 22:22 ID:Am6QrhJ4
>>869 日付挿入も問題なくなったし、そして軽くなって(・∀・)イイネ!!
すばやい対応に感謝っ。
こんなことになってたとは… 光栄です. GPL ってことで好きに直してくださっても結構なんですが, wrapper だと fork しなくてすむ分お互いにメリットがありそうですね. xyzzy に優しい elisp の書き方とかあるんでしょうか? # ふだんここは見ないので, howm 本体に何かあれば # unix 板の方にお知らせいただけると嬉しいです.
作者キタ━━(゚ ∀ ゚)━━( ゚ ∀)━━( ゚)━━( )━━(゚ )━━(∀ ゚ )━━━(゚ ∀ ゚)━━ !!!!!
878 :
某279 :03/10/16 04:20 ID:H5V8CKwe
>>868 コレでいけると思われ
gnugo.l
--339 (format s " --outfile ~A" (map-slash-to-backslash savefile)))
++339 (format s " --outfile \"~A\"" (map-slash-to-backslash savefile)))
バッファの2ポイント間の見かけ上の行数ってどうやって調べることができますか?
指定位置,ウィンドウ幅などで折り返す設定をしている場合に,その時の表示行数を
しりたいのです.
>>878 current-virtual-line-number とか。
howm-wrap_031016.zip
>>874 うっかり大小文字ってのを忘れてましたw
howm-init.l を見てください。
>>876 作者様に来ていただけるとは恐縮です。
> xyzzy に優しい elisp の書き方とかあるんでしょうか?
大体のことはマクロを使って何とか出来ますが、
Emacs で言うイベントなる物が xyzzy にはありませんので、
[menu-bar goto] こういうのには対応できないです。
キー定義を無視させるしかないと言うくらいでしょうか。
([(meta tab)] 位なら M-TAB に置き換えられますけど)
>>873 改行コードがバラバラなのでは。
C-q RET で ^M が出るので、replace-string で置き換えるとか。
882 :
874 :03/10/17 01:16 ID:ONJOiV9C
>>880 うまくいきました。本当に助かります。
>>876 今後長い間お世話になります。
rd-memo作られていたこともあるせいか、howmでとったメモを簡単にrd2に
かけられることが出来るのが感涙ものでつ
まだよく分かってないんですが、howm-mode で作ったファイルは html にも ちゃんと変換できるということでファイナルアンサー?
884 :
名無し~3.EXE :03/10/17 17:30 ID:sSszQ63b
php-modeのswitchがインデントしないんですけど、直せます?
>>884 インデントしませんか? 私はできてるような気がするけど.
howmありがたく使わせてもらってます. いままで使ってたchangelogmemoからうまく乗り換えられればいいんですけど. ところで編集するとき,モードを表す部分に Lisp: AL howm: FL って表示されます. そんでlisp-modeじゃなくてtext-modeで編集できるようにしようと思って, 以下のような設定を.xyzzyに書きました. (add-hook 'elisp-lib::howm-menu-hook 'text-mode) が,設定が反映されませんでした. ちなみに手動で,編集する画面でtext-modeにして,再度howm-modeを起動すると, Text: AL howm: FL となって,私が望んでる設定になります. ソースファイルを見てあらゆるhookを試してみましたがうまくいきません, なにがまずいんでしょうか? #でもなんでlisp-modeがマイナーモードなの?
887 :
886 :03/10/18 01:34 ID:XOfWUIdi
自己レスです. UNIX板のhowmスレに解決策が出てました. xyzzy流に書けば (add-to-list 'auto-mode-alist '("\\.howm$" . text-mode)) でした. なるほど,拡張子で分けるんですね. 時期のhowmからはこの辺のことが,設定できるようになるみたいです.
>>883 本体同梱のhowm2でいけるっぽ。要ruby。
>>886 自分のところだと、メジャーモードはlispじゃなくて
Fundamentalになってます。
>>887 それではうまく動作しなかったので、自分のところではこんなのを
(push '("\\.howm$" . text-mode) *auto-mode-alist*)
ところで。
・連結表示したときにTABで次のメモにいけるようなことが書いてあるけど、実際に
やってみると「不正なデータ型です: nil: number」とかいわれて動かない。
・使っているといつの間にかrv-region.lが効かなくなっている。
同じような症状が出る方、なにか解決法ありますか?
890 :
886 :03/10/18 02:10 ID:XOfWUIdi
あ,すみません. 997のはelispでした. ぜんぜんxyzzy流じゃないじ. ごめんなさい.
891 :
886 :03/10/18 02:36 ID:XOfWUIdi
997->887 誤爆多すぎ.
howm-wrap_031018.zip
>>889 > ・連結表示したときにTABで次のメモにいけるようなことが書いてあるけど
直しました。
> ・使っているといつの間にかrv-region.lが効かなくなっている。
ざっと rv-region.l を見てみましたが、howm-mode で *post-command-hook* を
ローカル変数にしてるせいかな?
これでどうでしょ?
(add-hook 'elisp-lib::howm-mode-on-hook 'rv-region-start)
howm-wrap_031018.zipの中身が 1016.zipの中身とタイムスタンプ同じなのですが…
すいません。あげ直しました(;´Д`)
895 :
868 :03/10/18 04:58 ID:f0ZpN8Jc
>878 ありがとうございました。 結局いろいろとgnugo.lファイルをいじって解決してましたが、 貴方の指摘がすべてです。 もしかして作者ですか?
896 :
878 :03/10/18 11:44 ID:7ATFyNYC
>>895 作者なんてとんでもない.f(^^;
たまたま同じ問題が発生してたんで気づきやすかっただけです.
作者さんのエラー表示のさせ方が勉強になります.
今までずっとmessage,msgboxだけだったのでデバッグつらかった.
897 :
889 :03/10/18 15:16 ID:5yc2H/Hx
>>892 環境固有の不具合だと思っていました・・・。
遠回りに要望出してしまったようですみません。
rv-regionですが、ちょっと調べてみました。手元ではrv-region関係の設定として
(setq *rv-region-stay-on* t)を加えています。
howm-mode, howm-view-summary-mode, howm-view-contents-modeにおいて、
どれか一つのモード上でリージョン選択後、残りの二つのモードのいずれかに
移ってリージョン選択をすると、howm関係のモードを含むすべてのモードでリージョンの
反転が無効となるようです。
尚、教えていただいたhookを加えるとhowm-modeについてはうまく動作するようになりました。
ということで、howmのオリジナル側にhowm-view-summary-mode-on-hookなどが
用意されればうまくいくようですね。
* 未確認ですが、16日版のelisp-lib.lおよびlcを残しておかないとインストールに失敗して
しまうような・・・。
現在、読み込まれているライブラリを知る方法ってあるでしょうか?
*modules* を見たらいいんじゃない?
900 :
898 :03/10/18 21:28 ID:NSdiYF/k
>>899 ありがとうございます。即レス、thxです。
今したらばのスレ一覧が取得できない ?
>901 したらば最近不安定ですね。今は大丈夫みたいですけど…
903 :
名無し~3.EXE :03/10/21 10:23 ID:jB1Yz0hN
誰か refe.l 作ってください、age。
ちょっとしたことなのですが、2ch-modeとかの右クリックメニューが変わるモードのときに アプリケーションキーで出てくるメニューも同じメニューにしたいのですができないでしょうか?
>>905 #\Appsにdefine-keyさせる。
コマンドは2ch-mouse-right-pressかな?
907 :
名無し~3.EXE :03/10/21 15:32 ID:PMi0feVg
loveyubo7777ってIDの奴がヤフーチャットで荒らししてるよ!! 女の子をPMで脅して楽しむ最低な奴だ。ヽ(´ー`)ノ 女の子は特に要注意だよ!!ネットストーカーだから ちなみにpaw_211jpこれもそうだから、みんな気をつけてね!!!
こんなところで言われても・・・
>>904 (defun 2ch-apps-popup ()
(interactive)
(let ((*last-mouse-window* (selected-window))
(*last-mouse-line* (current-virtual-line-number))
(*last-mouse-column* (current-virtual-column)))
(popup-menu-popup)))
(defun thread-apps-popup ()
(interactive)
(let ((*last-mouse-window* (selected-window))
(*last-mouse-line* (current-virtual-line-number))
(*last-mouse-column* (current-virtual-column))))
(let ((menu (thread-popup-menu)))
(when menu
(track-popup-menu menu))))
(define-key *thread-map* #\Apps 'thread-apps-popup)
(define-key *menu-map* #\Apps '2ch-apps-popup)
(define-key *board-map* #\Apps '2ch-apps-popup)
(define-key *http-map* #\Apps '2ch-apps-popup)
(define-key *form-map* #\Apps '2ch-apps-popup)
(define-key *tracking-map* #\Apps '2ch-apps-popup)
(define-key *search-map* #\Apps '2ch-apps-popup)
(define-key *view-map* #\Apps '2ch-apps-popup)
(define-key *grep-map* #\Apps '2ch-apps-popup)
(define-key *bookmark-map* #\Apps '2ch-apps-popup)
(define-key *history-map* #\Apps '2ch-apps-popup)
910 :
904 :03/10/21 23:52 ID:4HA1/HPI
やはり素直にやるとこんなに長くなるのか。 他のモードでは適用されないのもちょっと… #\Appsのglobal-set-keyでsendMessageでWM_RBUTTONDOWNを投げつけるのは駄目でしょうか?
911 :
910 :03/10/21 23:54 ID:4HA1/HPI
904じゃなくて905でした。
>>910 それやると、マウスカーソルの位置に依存します。
howm 13日版から 16 or 18日版にあげた時に elisp-lib::define-key が定義されていないと怒られて起動できなくなりました. siteinit.lに (require "howm-wrap") と記述しています.how-wrap内でちゃんと elisp-lib がロードされているのに こんなふうに怒られる理由が全然見当つきません.どなたかわかるひとお願いします
914 :
913 :03/10/22 01:57 ID:+gbDwugm
siteinit.l から .xyzzy に(require "howm-wrap")をうつしてエラー時のトレースを出しました. >CALL STACK 23: (system:*byte-code ...) >CALL STACK 22: (system:*load-library "howm-view") >CALL STACK 21: (system:*byte-code ...) >CALL STACK 20: (lisp:require "howm-view") >CALL STACK 19: (system:*byte-code ...) >CALL STACK 18: (elisp-require "howm-view") >CALL STACK 17: (system:*byte-code ...) >CALL STACK 16: (require howm-view) >CALL STACK 15: (system:*load-library "howm-mode") >CALL STACK 14: (system:*byte-code ...) >CALL STACK 13: (lisp:require "howm-mode") >CALL STACK 12: (system:*byte-code ...) >CALL STACK 11: (system:*load-library "howm-wrap") >CALL STACK 10: (system:*byte-code ...) >CALL STACK 9: (lisp:require "howm-wrap") >CALL STACK 8: (eval (lisp:require "howm-wrap")) >CALL STACK 7: (system:*byte-code ...) >CALL STACK 6: (eval-region 1170 1191 #<buffer stream 54466052>) >CALL STACK 5: (system:*byte-code ...) >CALL STACK 4: (eval-last-sexp #<buffer stream 54466052>) >CALL STACK 3: (system:*byte-code ...) >CALL STACK 2: (#<lexical-closure: eval-print-last-sexp>) >CALL STACK 1: (command-execute eval-print-last-sexp) 不正な関数です: define-key
915 :
913 :03/10/22 02:31 ID:+gbDwugm
なんかごちゃごちゃやっているうちに直りました. お騒がせしました
popup-stringで表示されるウィンドウのハンドルを取得する方法ってあります?
917 :
名無し~3.EXE :03/10/22 21:21 ID:4gwLiUJP
>>916 EnumWindow()で親がxyzzyなwindowを探せば見つかるんじゃないかなぁ。
ところで何するの?
モロトミ ヤスミツ (ヨコチン大使) 体育館で自らヨコチンを曝け出し、「汚い」「触るな」と虐められ泣かされていた。 「先生。○○君がヨコチン大使って言うねん」と朝の会で皆の前で泣きじゃくっていた。 彼はまるで銀幕スターだった。銀シャリが食べたい。
>>917 wikiに書いとけば? howmのようなことが起きるかもしれないし
921 :
917 :03/10/23 03:48 ID:x9YfVOWC
>>920 アドバイスありがとうございます。早速書いてきました。
>>918 なるほど、EnumWindows()かー・・・・。
EnumChildWindows()でもいいのかな。
でもコールバック関数がとうたらこうたらでxyzzyの方でどう定義したらい
いのか勉強不足でよく分からない・・・。
えっと、やりたいことはpopup-stringで表示させたポップアップウィンドウを
キーボードの入力があってもすぐには消えないようにして、一定の秒数が
立ったら消えるようにしたかった・・・んだけど、何か無理っぽいな・・・。
(popup-string "hoge" (point) 30)
で30秒表示したら消えるようにはできるんだけど、キーボードからの入力があるとすぐに
消えちゃうから、考えたんだけど・・・。
http://www.namikilab.tuat.ac.jp/~sasada/diary/200308.html#d10 にあったrefe.lのミニバッファからの検索の結果をポップアップ表示して、
それを参照しながらコードを書く、なんてことを考えてたんだけど、それだったら
ウィンドウを分割してそっちに表示させるだけで足りるような・・・。
とりあえず、ありがとうございます
>>922 lisp/wip/hellowin.lを改造する方がはやそうだけどどうでしょう。
(with-input-from-selected-buffer (while (read-line))) これ実行するとxyzzyが落ちるんだけど、うちだけ?
>>924 ぐわ。落ちた!
たぶん *scratch* で eval-print-last-sexp すると落ちるんじゃないかな。
他は大丈夫ぽい。
926 :
:03/10/24 00:40 ID:lYVq6tqh
nxml-mode もhowmみたいなやりかたで動かせないかなぁ・・・
>>923 同じ事考えてたw
lisp/wip/hellowin.lとか、lisp/wip/fractal.lを見ながら、ウィンドウを表示させるところまで
なんとか進みました。
もうちょっと頑張ってみます
KaMailで、差出人の名前に半角と全角のカッコが非対称に入っているとエラーがでてそれ以降のメールが読めなくなってしまうのですが、どうにかならないですか?
929 :
928 :03/10/25 00:06 ID:lL3vD1Gs
半角カッコは "\(ほげ)" という感じでエスケープされてました。 kamail-summary.l のkamail-header-from-me-p内にある (string-match from *kamail-from*)) を (string-match *kamail-from* from)) のように入れ替えたらなんとなくしのげた気がします。
930 :
927 :03/10/25 03:12 ID:gyMXIl3W
>>930 rubyユーザではないので直接の恩恵は無いけど,popup, buffer, dialogに続く
表示インタフェースとしては魅力的と思いました.これ名付けるとしたら何でしょう?
質問です. 関数がどんなキーで呼び出されたのか知るには,どんな変数を見れば
良かったですか? これについてどこかで読んだ気がするのですが,見つけられません.
>>931 やっぱりwindowかな。ms-windowとかにして切り離すのがいいかねぇ。
*last-command-char*
TreeView.lって、右クリックメニューとか、アイテムの ドラッグアンドドロップとか出来ないんでしょうか?
>>933 しごく簡単なメニューでよければ以下の関数がつかえます。
(setf idx (listview-simple-track-popup-menu
"&hoge\n0\n&monyo\n0\n"))
(cond ((equal idx 1) (message "hoge"))
((equal idx 2) (message "monyo")))
複雑なメニューが必要なら以下のコードが使えます。
(defun hoge () (message "hoge"))
(defun monyo () (message "mnyo"))
(defun create-my-menu ()
(define-popup-menu
(:item nil "&hoge"
'hoge 100)
:sep
(:item nil "&monyo"
'monyo)))
(setq *my-menu* (create-my-menu))
(track-popup-menu *my-menu* :button2)
ドラッグアンドドロップはxyzzyがメッセージを
にぎってしまっているようなので、単純な方法ではむりっぽいです。
935 :
名無し~3.EXE :03/10/25 16:17 ID:XORYb8Y8
Basic-modeでインデント幅を半角スペース*2ではなくタブにしたいのですが basic-mode.lのどこをいじったらいいのかわかりません。 わかる方いたら教えてください。
cのそれと同じだぜってことでhieさんのqaみれ
937 :
名無し~3.EXE :03/10/25 18:25 ID:3gWb0Ua4
>928-929 おれも困ったことある。 よくわからんけど今度試してみます。 thx
>>930 かっけー。
ms-window 分離きぼん
939 :
佐野 :03/10/25 19:45 ID:16+KDFzl
940 :
名無し~3.EXE :03/10/25 21:04 ID:m0KklnWn
>>936 c-modeには
c-indent-tabs-modeというのがあるけど
basic-modeにはなく、どこを直したらいいのかサッパリ…
もう少し分かりやすい説明がしてあるところってありませんか?
>>940 多分こんな感じ。
(add-hook 'ed::*basic-mode-hook*
#'(lambda ()
(make-local-variable 'indent-tabs-mode)
(setq indent-tabs-mode t)))
942 :
931 :03/10/26 00:17 ID:Px1Ictch
943 :
930 :03/10/26 00:23 ID:98UkJlzq
944 :
名無し~3.EXE :03/10/26 00:27 ID:gTb22Vfi
>>941 どうもありがとうございます。
ただ、siteinit.l に記述してバイトコンパイルしたのですが
インデントは半角スペースのままでした。
siteinit.lではなくて、basic-mode.lに記述するのでしょうか?
もしそうならばbasic-mode.lのどこに記述したらよいのでしょうか?
>>944 ctrl+shiftを押しながらxyzzyを起動。
946 :
佐野 :03/10/26 02:20 ID:qJB/DztG
>>943 ありがとうございます。
頂いた助言を元に文字列に続いてキャラセット番号を入れられるようにしました。
混在できない部分がどこかにどうしてもあるんでしょうかねぇ…。
一応こちらでもハングルの表示は確認しました。
#後は辞書なりなんなりのデータでいろいろ出来そうです。
947 :
名無し~3.EXE :03/10/26 08:59 ID:JiG3S31z
>>945 ダメでした。
xyzzy.wxp を削除してから実行してもみたのですが
インデントはタブにならず。。
945さんの環境ではタブになってますか?
>>947 タブ幅とインデント幅が合ってないんじゃない?
これならどう?
(add-hook 'ed::*basic-mode-hook*
#'(lambda ()
(set-tab-columns 4 (selected-buffer)) ; タブ幅の設定
(setq ed::*basic-indent-level* (tab-columns))
(make-local-variable 'indent-tabs-mode)
(setq indent-tabs-mode t)))
949 :
名無し~3.EXE :03/10/26 11:20 ID:JiG3S31z
>>948 タブになりました!
私のような素人に親切に答えていただきありがとうございます。
950 :
931 :03/10/27 09:46 ID:9sZ98E0z
C-x r a など複数キーストロークの場合,*last-command-char* で得られる情報は最後の #\a だけなんですけど, C-x r の部分を得る方法ってありませんか? 関数から関数の割り当てられていたキーマップを知る方法でもいいのですが. (この場合 C-x rのキーマップ)
951 :
931 :03/10/27 12:01 ID:9sZ98E0z
質問ばかりですが,howmについて少し. howm-menu-mode-map howm-view-contents-mode-map のキーマップに対して,"\TAB" に別のコマンドを割り当てようとしているのですが, siteinit, howm-init, howm-pre-init 内でセットしようとするとまだキーマップがnilで割り当てられません. キーバインドを変更したい場合は,どこで書くのがいいのでしょうか? それともフックに引っ掛けるしかないのでしょうか. それとちょっと疑問に思ったことについて, howmで#\TAB に割り当てようとするとエラーが出て "\TAB" だとよかったり,ソース内で [tab] や [(meta tab)] で割り当てたりしていますが, [tab]とかって,シーケンスなどといわれるもの?
>>950 get-recent-keysって関数、あるけど。
953 :
931 :03/10/27 16:31 ID:9sZ98E0z
>>952 レスthx. これからもとのキーバインドを探すのはちょっときついです.
また,同じ関数が a b c と b c に割り当てられていたとすると,
どっちで呼び出されたか分からない場合があるので..多くの場合十分だとは思いますが.
keymap + h or keymap + H でそのキーマップのヘルプを表示させること
がしたいのですけど,global-keymapだけでなくローカルの方も
表示させたいので,関数が実行された時点でヘルプメッセージを作成しなければなりません.
このとき,どのキーマップに対する処理かわかればいいのですが.
とりあえず,今別の方法を思いついたのでそれでやってみます.
>>897 遅レスでスンマセン。
*post-command-hook* をローカルにしてるのは howm-mode じゃなく font-lock-mode でした。
ので、font-lock-mode のフックに……と思ったら用意してないや(;´Д`)
とりあえずはこんな感じでどうでしょ?
(add-hook 'elisp-lib::howm-view-summary-hook 'rv-region-start)
(add-hook 'elisp-lib::howm-view-contents-hook 'rv-region-start)
>>951 キーバインドの設定は howm-init.l が適当かと思います。
howm-menu-mode-map は howm-menu-mode が呼ばれるまで初期化されないようです。
howm-menu-mode にもフックはないようなので、ちょっと姑息ですが。
(defun howm-menu-init ()
(when (eq elisp-lib::major-mode 'elisp-lib::howm-menu-mode)
(ed::define-key elisp-lib::howm-menu-mode-map #\TAB
#'(lambda ()
(interactive)
(msgbox "hoge")))))
(add-hook 'elisp-lib::action-lock-mode-on-hook 'howm-menu-init)
初期化ファイルで define-key するときは ed::define-key としておいてください。
howm-view-contents-mode-map は普通にキー定義できると思います。
[...] ←はベクタ表現です。
xyzzy では #(...) の様に書けます。
>>953 もうできてんならいんだが
*global-keymap*て変数と
loacal-keymapて関数でいけそう。
956 :
671 :03/10/28 00:34 ID:zA8UZJG5
howm-1.0.4.2 xyzzy で問題なく動いてまつ。
958 :
931 :03/10/28 08:54 ID:tJ62D6/o
れすthxです.
>>954 howm-menu-mode-map については,希望どおり設定することができました.
ありがとうございます.whenの中で howm-view-contents-mode-map
を同じようにキーバインドを変更しようとしてもできませんでした.
ベクタですか.#周りの言語はよく分からってないので,これを機に
まとめて勉強してみようと思います.
>>955 多分つかうことになると思います.ありがとうございます.
>>957 はい,describe-key と同じインタフェースに変更しようかと思います.
なので,describe-key の定義は参考になります.
やりたいことは describe-key が1つしか表示しないのに対し,
こっちはキーマップに登録されている全関数名を表示させることと,
バッファ表示以外のインタフェースを使用する点ですかね.
959 :
931 :03/10/28 08:56 ID:tJ62D6/o
> howm-view-contents-mode-map は普通にキー定義できると思います。 見逃していました.できました.
> howm-1.0.4.2 xyzzy で問題なく動いてまつ。 xyzzyで使っている限り、バージョンアップする必要なしなきがする
howm って、 <<< ほげほげ なんて書くと、 .howm-keys に ほげほげ と追加されると思うんですけど、 僕のは何故か追加されないんです。皆さんはどうですか?
962 :
671 :03/10/28 13:11 ID:/IoPFOKC
>>960 > xyzzyで使っている限り、バージョンアップする必要なしなきがする
そうかも知れないけど、気分の問題で。
あと、wrapperの動作確認って意味でも。
「1.0.4以降じゃ動かないかも」とあったから。
>>961 howmのバージョンは?
*アーカイブに添付の*ドキュメントはよくみた??
最新の配布サイトリストをインストールするインストーラが欲しい。
>>965 お疲れ様でした。使わせていただきます。
968 :
671 :03/10/28 23:59 ID:zA8UZJG5
>>965 バージョンアップお疲れ様です。でもなんだか重くなりましたね。
> フック変数の名前を間違えてて、保存の際のキーワード追加がされてませんでした。
この部分をfixしたせいでしょうか。
969 :
671 :03/10/29 00:06 ID:/NOP8te/
>>968 と思ったんですが、何度か立ち上げているうちに、
さほど気にならなくなりました。お騒がせしました。
howmの話題ばっかでつまらんな
hownおもしろそうなんだけど、まだ色々変更がありそうだから様子見。 VerUPとかめんどうくさそうで。 hown重くない? なんだかemacs版をそのままほりこんでそれを解釈して作動してるみたいだけど。
前は重かったけど、
>>869 以降は全然重くないです。
いい加減ページ作ってくれないだろうか。
新スレ立てます。
リンクは更新しましたので、
>>5 は貼らなくて結構です。
このみかん
980 :
名無し~3.EXE :03/10/31 02:06 ID:lN+28iP6
ぬがめそーっ!
981 :
名無し~3.EXE :03/10/31 15:43 ID:S9f81sqy
gomoku マジで勝てません
>>981 相手は3を作って,かつ こっちの3をつぶしに来るのだから
どうやって打ってくるか予想つくでしょ
>>981 おれは後手の場合,相手の初手に対して1マス開けて置く.
こうせずに勝てたことはほとんどない
過去スレで必勝法があるという情報があったけどこれは本当なの? 公開して欲しいような欲しくないような。
誰か将棋作って。
>>984 あるんじゃない.こっちが同じ打ち方をすると,大抵CPUは
数パターンの打ち方しかしてこない.全てのパターンで勝て
ればいいだけのこと.
最初は「完全に防戦」して、 そのうち CPU 側が置くとこなくなって 適当な所に置き始めたら 防戦しつつ、隙を見てこっちも攻撃を仕掛ければ 自然と勝てるよ。
今やってみましたが、24手で必ず勝てる打ち方があるみたいで、 しかもこれだと相手の打ち方には2つのパターンしかないようです。
だれか gnugo 5×5 黒で勝つ方法教えて. いつもぼろまけ
キーワード引数がセットされてるかどうかのフラグ?に 以下のようによくsvが使われてますが (defun reduce (function sequence &key from-end (start 0) end (initial-value nil sv)) svって何の略ですか? あげるほどでもないので、sage
>>990 supplied-p variable
992 :
991 :03/11/01 23:57 ID:3qLlrrUM
993 :
990 :03/11/01 23:58 ID:3qLlrrUM
katexの最新版をいれるとTeXのコメントに色がつかなくなるのは 私だけでしょうか?
997 :
名無し~3.EXE :03/11/03 11:54 ID:RextEtTK
_,,..、-―-- ., ,..-''" `ヽ ┌─|─┐ ,. '" _,,... - __ ヽ、 └─|─┘ / ,..=-‐''~ ̄_ ~'''- 、 ヽ | , ′ /,,..-'''"~ ̄::: ̄~'''-ヽ, ヽ. _|_ |  ̄’ / ,、'7:::,:'//:::,:´/∧::、:::゛,:::::ヽ、 ゙', |_ ヽ レ ,_ / .......//,:///!',:://// ',:::!!:::!i::::ヽ:, ...゙, (j ) l ........./n,V:;l;j]トi、」ト:{:{ }!}」j:,l!:}:::!l:゙, ...〉 └┼┘ ゛, .......,';「rll:´kr_テ'::「` | ヽノ_」Lメl::;;ll!l:l./ _ヽ_∠ .|_|_| ゛、../ ハ l!::l| 「!-'lj r'::/`/イ,:ノノ |!' lニl l | ,ソ//:::|!:::l!  ̄ '-" ,'::イ!../ ' l─| l 亅 ┼ー┼ /://::;;ハ::::ll\ _ ' ,,::':::,!l:| |__ ノ:イ/:/;/;;`ヾ、_ ` 、 _ .イ::く;;ノメ!、 /┬ /┬ ,. '"',イ;'::/;/;;;-'"(⌒ヽ ,,_!ヽ、;;;:!:::!::| ヘヽ 二土二 _,,-"/..'/:::/;;;-'" !_ヽ/´,,‐''_`、`''-.,,:! ゙';ヽ、 ──┼ .,-'":;; ',/,,',.-< ゙'〈 '",-'┐ ,,'"ス、 ゙;:、、、 ヽ 」 ,.-'"::;;/.'/',/^ヽ``、、 ゙, <ノ ノ' / ,ハ, ゙;:'; ヾ、 ../"/:;;/ '‐'/,「`ヽ、 ` 、 = __ ゙、 'v'"/`、' 'l ',::', ヾ、 l' /::;'" ,.:';:"/;;! `.ー、~''ーニ.,ハ, ハ'" ヽ, ゙, !::;! ヾ! !:/ /:/ /:/;ト、 ...゙, | _| \_,ノ::.\= 、._ l ,!、 l::;! ll !:! ,//' /::/::ハ ',.. ゙',l ,-',-ト、 `'ー-、ヽ, 7./l ト`、, !ノ 丿 '、 // /:/:,/_,,l ゛、.. ゙',. ヽ:Vヾ、、、_ ~///,ノ l;;:',ヾ' /,' ,!::/!ll`i;;;| ヽ.. ヽ `/: ヽ ニニ‐=/ノr' ,' l;!l,:l 'ヾ;、 ,!:! !::l'l:!l::!;;:::ハ ヽ、. ソ' : ........,~7, ,l / !;;!ll!! ヾ;、
無駄無駄やめちまえ ■■■■■■■■■■ 終了 ■■■■■■■■■■
無駄無駄やめちまえ ■■■■■■■■■■ 終了 ■■■■■■■■■■
1000
1001 :
1001 :
Over 1000 Thread このスレッドは1000を超えました。 もう書けないので、新しいスレッドを立ててくださいです。。。