xyzzyの使い方が分か ..
[2ch|▼Menu]
296:続き
08/02/07 13:25:29 wXHmQfE90
((eq def 'quit-and-back)
(goto-char opoint)
(setq def 'quit)
(return))
((eq def 'quit)
(return))
((eq def 'recenter)
(recenter)
(setq nodup nil)
nil)
((and (consp def)
(eq (car def) 'throw))
(throw (cdr def) count))
(t (setq def 'help)
(setq nodup nil)
nil))
(setq last-match-char (unless (= (match-end 0) (point-min))
(char-before (match-end 0))))
(unless (replace-match replacement :literal literal)
(return))
(setq last-match (point))
(setq nodup (= (match-beginning 0) (match-end 0)))
(when (and undo-bound query)
(undo-boundary))
(setq count (1+ count)))))
(when (eobp)
(return)))

297:続き
08/02/07 13:26:19 wXHmQfE90
(unless query
(end-wait-cursor))
(hide-match)
(unless noerror
(and (eq def 'quit)
(quit))
(and not-found
(error "文字列が見つかりません")))
(when (and interactive-p
(null *executing-macro*))
(message "~d個置換しました" count))
count))

diff にすればよかったな...

298:名無しさん@お腹いっぱい。
08/02/07 13:36:31 wXHmQfE90
>>294
(refresh-screen 1)
の後ろに
(when *multiple-replace-replace-whole-buffer*
(goto-char (point-min)))
を追加した方がいいかも。

299:名無しさん@お腹いっぱい。
08/02/07 14:20:16 FAsMFBYF0
>>292
どうもありがとうございます。>>292-298 を multiple-replace.l (20050413)
の該当箇所と置き換えてみましたが、M-x multiple-replace-string だと
現在のバッファのみしか置換されませんねぇ。

multiple-replace.lc は一端削除してあります。




300:名無しさん@お腹いっぱい。
08/02/07 14:35:25 wXHmQfE90
>>299
再ダンプしてないんじゃないの?

301:名無しさん@お腹いっぱい。
08/02/07 15:21:39 FAsMFBYF0
>>300
あちゃ〜、仰る通りです。すみませんでした。m(_ _)m

302:名無しさん@お腹いっぱい。
08/02/07 15:52:29 fKcAIYUe0
即興でそんな風に組み上げられるようになりたひ…

303:292
08/02/07 16:07:22 wXHmQfE90
バグがあった。
>>294
(progn
(setq *multiple-replace-selected-buffer* nil)
(return))))

(progn
(when *multiple-replace-selected-buffer*
(setq *multiple-replace-selected-buffer* nil)
(quit))
(return))))
に修正して下さい(文字数のカウントは面倒なのでパス)。

>>302
ほとんどソースのままなんだけどね。
Netinstallerからリファレンスとinfo-modoki-modeなどを入れて後はgrepとかタグジャンプを
使えばある程度は書けるようになると思う。

304:名無しさん@お腹いっぱい。
08/02/10 15:01:07 Geg9SBWH0
ナイスな補完がしたくて、netinstaller で ac-mode を入れたのですが、
C-nやC-pではなく、カーソルキーで補完項目の選択がしたいと思っています。

そこで、.xyzzyに以下などを書きました

; 選択キー割り当て
(define-key *ac-mode-internal-map* #\Down 'ac-mode-select-next)
(define-key *ac-mode-internal-map* #\Up 'ac-mode-select-prev)

*ac-mode-internal-map* や、ac-mode-select-prev などが、export されておらず、
未定義などと言われたのですが、こういうときは、export するしか方法はないのでしょうか?
(exportして byte-compile し、動作自体は上手くいくのは確認しました)
アップデートとかを考えると、できるだけ元ソースを直接いじりたくないのですが・・・

305:名無しさん@お腹いっぱい。
08/02/10 15:19:30 0ycF+83t0
>>304
(define-key *ac-mode-internal-map* #\Down 'ed::ac-mode-select-next)
(define-key *ac-mode-internal-map* #\Up 'ed::ac-mode-select-prev)

もしくは、
siteinit.l 内でそれらのシンボルをexportするとか。

306:305
08/02/10 15:21:40 0ycF+83t0
まちがえた。
(define-key ed::*ac-mode-internal-map* #\Down 'ed::ac-mode-select-next)
(define-key ed::*ac-mode-internal-map* #\Up 'ed::ac-mode-select-prev)


307:名無しさん@お腹いっぱい。
08/02/10 19:35:33 Geg9SBWH0
>>305-306
さんクす

exportしなくても、>>306で動きました。
ed::ってパッケージ名?でしょうか。指定すればいいんですね。

308:174
08/02/10 20:19:04 0J69YBkb0
>>307
editor::の略。

309:名無しさん@お腹いっぱい。
08/02/10 23:49:13 Geg9SBWH0
以前に、現在のバッファの文字コードを変えられないかと質問した者です。

前に教えていただいた方法では、バッファを再読み込みしてエンコードを変えられました。

ファイルだとうまくいっていたのですが、
ファイルではなく名前付きのバッファだとうまくいきません orz
「ファイル名がありません」と言われてしまいます。

例えば、C-@ や ruby-mode の C-c C-x などの
標準出力や実行したコマンドなどで出力したバッファです。

バッファの内容はそのままにエンコードを切り替える方法ないでしょうか?
前の方法は再読み込み、というところにヒントがあると思うのですが・・・

310:名無しさん@お腹いっぱい。
08/02/11 00:14:30 8x6C6XBu0
>>309
リファレンスやlispディレクトリ以下のソースコードを参考に自分で書いてみたら?

311:名無しさん@お腹いっぱい。
08/02/11 00:15:58 7Ad5u+xK0
>>309
選択して
編集→変換→漢字コード→自動判定
とか

312:309
08/02/11 00:23:34 4QznQESt0
(set-buffer-fileio-encoding *encoding-utf8*)
などとやってみたのですが、バッファのステータスバー?の表示はurf-8に変わるのですが、
実際の表示は変わりませんでした。

>>310
みてみてます。

>>311
この操作でとりあえずバッファの内容は、読めるようになるのですが、
次にコマンドを実行したときに、引き継いでくれません orz

出力するときに、sjisにエンコードしないといけないんですかね・・・
逆に言うとsjisしか出力できない?

313:名無しさん@お腹いっぱい。
08/02/11 00:24:35 8x6C6XBu0
set-buffer-fileio-encodingあたりが参考になるかな。

自分で書いてみるのがlisp覚えるには一番だと思うけどね。

314:名無しさん@お腹いっぱい。
08/02/11 00:30:12 8x6C6XBu0
おっとかぶった。

じゃあconvert-encoding-to-internal、convert-encoding-from-internalあたりかな。

これもリファレンスにあるけどね。

315:名無しさん@お腹いっぱい。
08/02/11 00:40:18 4QznQESt0
あああ、なんかわかってきた。
共通設定の文字エンコーディングの判定で「自動判定」から「UTF-8」にしても、
C-&とか、ruby-modeのC-c C-x とかの一時的なバッファは、全部sjisのままでした。

バッファに出力前に、 >>314とか、>>312のようなエンコードの設定を個別にしてやらないといけない?のですかね。
lispごとに個別対応せなあかんのか・・・('A`)

316:名無しさん@お腹いっぱい。
08/02/11 00:50:18 8x6C6XBu0
よくわからんが
*default-fileio-encoding*とかじゃなくて?

317:名無しさん@お腹いっぱい。
08/02/11 08:21:18 4QznQESt0
エンコーディングの設定を弄りながら、試しているのですが、
アラビア語ってもしかして xyzzy は対応してないんでしょうか?
IEで表示したアラビア語を UTF-16やUTF-8のバッファに張り付けても、
豆腐になってしまいます
リァル・ウル・ァル・リケル・館・

?????? ?????

318:名無しさん@お腹いっぱい。
08/02/11 08:57:40 4QznQESt0
調べましたら、xyzzyはアラビア語は非対応なんすね。
言われてみると確かに右から左だし特殊だもんな・・・。

下のサイト見てたら、UIのコントロール類はUNICODE非対応なんですね。
文字のデータはUNICODE対応なのに、ちょっとびっくり。

「xyzzy」の検索結果 - tsuge development page
URLリンク(d.hatena.ne.jp)

319:名無しさん@お腹いっぱい。
08/02/11 11:14:00 WV462O5U0
UIのコントロールまでウニコードにしたらwin98やMeで動かなくないか?

320:名無しさん@お腹いっぱい。
08/02/11 14:15:42 gHRWQnnJ0
98?Me?そんなものは切り捨ててしまえっ

321:名無しさん@お腹いっぱい。
08/02/11 14:18:24 zm6bzkex0
Cでいう__LINE__みたいなマクロって、xyzzyにある?

322:名無しさん@お腹いっぱい。
08/02/11 14:44:09 VqxxbeLC0
>>321
なさげ。
toggle-trace-on-error と、バイトコンパイルしないで実行させることで
たいていの場合は十分わかる。

>>318 のリンク先を見てて思いだしたが、xyzzy はシステムフォントで
メニューを表示しているんだよね。それなら、MS ゴシック等で決めうち
されていたほうが、日本語Windows以外で使用する場合も、フォント追加だけ
で済むから、まだましなんだよな。


323:321
08/02/11 15:13:04 zm6bzkex0
>>322
無いのか・・・
じゃ、教えてくれたの使うわ。ども。


324:名無しさん@お腹いっぱい。
08/02/11 19:51:15 4QznQESt0
まだ、エンコーディング弄ってますw

(setq *expected-fileio-encoding* *encoding-utf8n*)
(setq *default-fileio-encoding* *encoding-utf8n*)
(change-fileio-encoding *encoding-utf8n*)
(set-buffer-fileio-encoding *encoding-utf8n*)

これらの違いがいまいちわからないです('A`)
過去ログ検索で同じ用途で使われていたりして、どれを使うべきなのか……
こんな感じであってますか?

*expected-fileio-encoding*
なんぞこれ?
リファレンス未記載

*default-fileio-encoding*
バッファの新規作成時のエンコーディング設定。

change-fileio-encoding
現在のバッファのエンコーディングを変更 。(interactive) で、M-x でも実行可能
リファレンスに載ってなかた。

set-buffer-fileio-encoding
現在 or 指定したバッファのエンコーディング設定を変更。M-xで実行できない


.chm の リファレンス、任意文字列で検索できたらなあ……
encodingとかで検索してどれが何か一通り把握したい。

325:名無しさん@お腹いっぱい。
08/02/11 20:04:31 8x6C6XBu0
>>324
info-modoki-modeなら全文検索できるよ。
aproposでもできたと思う。

326:名無しさん@お腹いっぱい。
08/02/11 20:19:44 4QznQESt0
できた!!!11
C-& や、 ruby-mode のC-c C-xなどで、出力される文字コードを指定する方法

(setq *default-process-encoding* *encoding-euc-jp*)

encoding.lに定義されてた・・・
デフォルトは、*encoding-sjis*になってます
個別の対応コードいらない!!ヨカタ

みなさん、つきあってくれてありがとうございました。

327:名無しさん@お腹いっぱい。
08/02/11 21:07:27 4QznQESt0
>>325
ありがとう。

とりあえず、リファレンスの chm を全文検索したかったので、
xy-reference.l の
1132行目を
 Full-text search=Yes
に書き換えて、chmをコンパイルしてみました。
上手くいきました。

しかし、なんで、デフォルトは、Full-text search=Noになっているんだろ???

328:名無しさん@お腹いっぱい。
08/02/11 23:12:02 ncxJHqiF0
emacs で (query-replace-highlight t) した時のような効果を
xyzzy で行うことはできますか?

329:名無しさん@お腹いっぱい。
08/02/11 23:20:03 qAaYVA730
> emacs で (query-replace-highlight t) した時のような効果を
kwsk

330:名無しさん@お腹いっぱい。
08/02/12 00:41:06 PWVPl84S0
>>329
query-replace-stringすると
ヒットした文字列が順番に選択(?)されて変換するか聞いてきますよね
このときに選択されていない変換候補の文字列もハイライト処理されます

例をあげると下の文字を abc -> aaa でquery-replace-stirng
一つ目のabcの置換を聞かれてる時点で 2個目の abc がハイライトされています

abc def abc

331:名無しさん@お腹いっぱい。
08/02/12 01:02:51 Izq8RB5W0
multiple-replace.lが更新されてます

332:名無しさん@お腹いっぱい。
08/02/12 06:01:37 SUwXSJwZ0
>>326を簡単にできるように、>>234のwikiの記事を参考にして
ポップアップメニューで表示できるようにしています。

.xyzzy に以下のコードを書いたのですが、C-c C-e を押しても、C-c eの方が実行されてしまいます。
何が悪いのでしょうか・・・?


; エンコーディング変更ポップアップ と メニューに追加
(defvar *encoding-menu* nil)
(defun encoding-menu (encode-func)
  (or *encoding-menu*
      (let ((menu (create-popup-menu)))
        (mapc #'(lambda (x)
                  (add-menu-item menu nil (car x)
                                 #'(lambda ()
                                     (interactive)
                                     (funcall encode-func (cdr x)))))
              `(("utf-8n \t(&8)" . ,*encoding-utf8n*)
                ("utf-16 \t(&6)" . ,*encoding-utf16*)
                ("sjis   \t(&S)" . ,*encoding-sjis*)
                ("auto   \t(&A)" . ,*encoding-auto*)
                ("euc-jp \t(&E)" . ,*encoding-euc-jp*)
                ;("jis    \t(&J)" . ,*encoding-jis*)
                ))
        (add-menu-item menu :select "詳細指定\t(&_)"
                       #'(lambda (encoding)
                           (interactive "zEncoding: ")
                           (funcall encode-func encoding)))
        (setq *encoding-menu* menu))))

333:332 つづき
08/02/12 06:02:04 SUwXSJwZ0
; ポップアップ
(defun revert-buffer-encoding-popup2 ()
  (interactive)
  (track-popup-menu (encoding-menu #'revert-buffer)))

(defun encoding-menu-in-file-autoload ()
  (let ((filemenu (get-menu *app-menu* 'ed::file)))
    (insert-popup-menu filemenu
                       (1- (get-menu-position (get-menu *app-menu* 'ed::file) :above-session))
                       (encoding-menu #'revert-buffer) "Reopen with Encoding (&G)\tC-c e")))
(defun set-default-process-encoding (encoding)
  (setq *default-process-encoding* encoding))

(defun process-encoding-popup ()
  (interactive)
  (track-popup-menu (encoding-menu #'set-default-process-encoding)))

(add-hook '*init-app-menus-hook* 'encoding-menu-in-file-autoload)
; ポップアップのキー設定
(global-set-key '(#\C-c #\e) 'revert-buffer-encoding-popup2)
(global-set-key '(#\C-c #\C-e) 'process-encoding-popup)
----------------------
終わり

334:332 つづき
08/02/12 06:38:55 SUwXSJwZ0
メニュー二ついるのに、 *encoding-menu* しかないから片方できなくて当たり前だ・・・orz

; エンコーディング変更ポップアップ と メニューに追加
(defvar *encoding-menu* nil)
(defvar *process-encoding-menu* nil)
(defun encoding-menu (encoding-menu encode-func)
(or encoding-menu
(let ((menu (create-popup-menu)))
(mapc #'(lambda (x)
(add-menu-item menu nil (car x)
#'(lambda ()
(interactive)
(funcall encode-func (cdr x)))))
`(("utf-8n \t(&8)" . ,*encoding-utf8n*)
("utf-16 \t(&6)" . ,*encoding-utf16*)
("sjis \t(&S)" . ,*encoding-sjis*)
("auto \t(&A)" . ,*encoding-auto*)
("euc-jp \t(&E)" . ,*encoding-euc-jp*)
;("jis \t(&J)" . ,*encoding-jis*)
))
(add-menu-item menu :select "詳細指定\t(&_)"
#'(lambda (encoding)
(interactive "zEncoding: ")
(funcall encode-func encoding)))
(setq encoding-menu menu))))

335:332
08/02/12 06:39:47 SUwXSJwZ0
ミスッタ orz

; エンコーディング変更ポップアップ と メニューに追加
(defvar *encoding-menu* nil)
(defvar *process-encoding-menu* nil)
(defun encoding-menu (encoding-menu encode-func)
 (or encoding-menu
   (let ((menu (create-popup-menu)))
    (mapc #'(lambda (x)
         (add-menu-item menu nil (car x)
                 #'(lambda ()
                   (interactive)
                   (funcall encode-func (cdr x)))))
       `(("utf-8n \t(&8)" . ,*encoding-utf8n*)
        ("utf-16 \t(&6)" . ,*encoding-utf16*)
        ("sjis  \t(&S)" . ,*encoding-sjis*)
        ("auto  \t(&A)" . ,*encoding-auto*)
        ("euc-jp \t(&E)" . ,*encoding-euc-jp*)
        ;("jis  \t(&J)" . ,*encoding-jis*)
        ))
    (add-menu-item menu :select "詳細指定\t(&_)"
            #'(lambda (encoding)
              (interactive "zEncoding: ")
              (funcall encode-func encoding)))
    (setq encoding-menu menu))))

336:332
08/02/12 06:40:14 SUwXSJwZ0
; ポップアップ
(defun revert-buffer-encoding-popup2 ()
 (interactive)
 (track-popup-menu (encoding-menu *encoding-menu* 'revert-buffer)))

(defun encoding-menu-in-file-autoload ()
 (let ((filemenu (get-menu *app-menu* 'ed::file)))
  (insert-popup-menu filemenu
            (1- (get-menu-position (get-menu *app-menu* 'ed::file) :above-session))
            (encoding-menu '*encoding-menu* 'revert-buffer)
            "Reopen with Encoding (&G)\tC-c e")))
(defun set-default-process-encoding (encoding)
 (setq *default-process-encoding* encoding))

(defun process-encoding-popup ()
 (interactive)
 (track-popup-menu (encoding-menu *process-encoding-menu* 'set-default-process-encoding)))

(add-hook '*init-app-menus-hook* 'encoding-menu-in-file-autoload)
; ポップアップのキー設定
(global-set-key '(#\C-c #\e) 'revert-buffer-encoding-popup2)
(global-set-key '(#\C-c #\C-e) 'process-encoding-popup)
----------------------------
終わり

337:332
08/02/12 06:59:15 SUwXSJwZ0
途中ミスってました。気づいたら、xyzzyのメニューがなくなっててびっくりした
何度も吸いません

> (defun encoding-menu-in-file-autoload ()
>  (let ((filemenu (get-menu *app-menu* 'ed::file)))
>   (insert-popup-menu filemenu
>             (1- (get-menu-position (get-menu *app-menu* 'ed::file) :above-session))
>             (encoding-menu '*encoding-menu* 'revert-buffer)
>             "Reopen with Encoding (&G)\tC-c e")))

(defun encoding-menu-in-file-autoload ()
 (let ((filemenu (get-menu *app-menu* 'ed::file)))
  (insert-popup-menu filemenu
            (1- (get-menu-position (get-menu *app-menu* 'ed::file) :above-session))
            (encoding-menu *encoding-menu* 'revert-buffer)
            "Reopen with Encoding (&G)\tC-c e")))

338:名無しさん@お腹いっぱい。
08/02/12 08:42:10 v6FfctgN0
>>337
*encoding-menu*がnilのままなんじゃない?

toggle-trace-on-errorや途中に(msgbox "~A" 変数名)みたいなのを入れて、どこがバグってる
のか調べてみるといいよ。

339:名無しさん@お腹いっぱい。
08/02/12 08:45:23 v6FfctgN0
>>330
関数perform-replaceの途中にでも変数patternをハイライトするような処理を書けばいいと思う。

scan-bufferで検索してset-text-attributeで色を付けたり、regexp-keyword-listを使ったりすれば
いいんじゃないかな。

340:332
08/02/12 10:47:21 SUwXSJwZ0
>>338
>>335-226 + >>337の修正で一応期待の動作をしているようでした。
すいません。誤解を与えてしまいました。

341:名無しさん@お腹いっぱい。
08/02/12 11:18:47 v6FfctgN0
>>340
あれ、>>335-336 + >>337の修正でもメニューが消えるような気がするけど。
まあ、そちらで動くならいいんじゃないですか。

342:名無しさん@お腹いっぱい。
08/02/12 11:45:57 v6FfctgN0
ああ、全角スペースがあるせいか...失礼。

字下げは半角空白を に(一つおきに)変換するといいらしいですね。

343:名無しさん@お腹いっぱい。
08/02/12 21:12:50 8gfYZCME0
>>324
>*expected-fileio-encoding*
>なんぞこれ?

insert-file-contentsでファイルを挿入する時の文字コードを指定できるっぽいので使ってマス
(find-file-internal()→find-file-readin()の流れより推測)

344:332
08/02/13 02:29:19 +OZov14y0
>>342
nbsp;すかー。今度使ってみる

>>343
確認しました。確かに、inser-fileなどのエンコーディングに使われてますね

345:名無しさん@お腹いっぱい。
08/02/14 19:13:20 jXWgpAyH0
ぐはっ、pwの復号鍵また忘れたのかよ、俺OTL
ってか、おかしいな、なんで開けんのかなあ

346:345
08/02/14 19:19:46 jXWgpAyH0
いや、開けた
この間大掛かりな入れ替えやったんで
ccrypt.exeにパスが通ってなかっただけだった
スレ汚しスマソ

347:名無しさん@お腹いっぱい。
08/02/16 01:22:02 9pj0nuev0
久しぶりに gnugo をやろうかと思ったんだけど、動かん。
だれかhelp

348:名無しさん@お腹いっぱい。
08/02/16 01:44:25 9pj0nuev0
--mode=emacs が無くなっていた。orz

349:名無しさん@お腹いっぱい。
08/02/16 10:28:08 Yih2MVn00
そんなのあったんだ

350:名無しさん@お腹いっぱい。
08/02/16 10:42:07 Yih2MVn00
2ch-modeの追っかけスレ一覧で
「このスレからこのスレまで全部マークする」
あるいは
「この板のスレをマークする」
ってする方法ありませんか。

サーバがてんぽったスレが混じってると更新チェック時
止まったり聞いてきたり煩わしいので
それ以外のスレだけマークしてチェックしたいなーと。
今は m m ↓ の連打のあと m r したりしてやってます。

351:名無しさん@お腹いっぱい。
08/02/16 18:41:37 pGz4J8zJ0
>>350
ナローイングとキーボードマクロで足りそうな気がするけど

(defun tracking-mark-region (beg end)
(interactive "r")
(save-excursion
(when (< end beg)
(let ((tmp beg))
(setq beg end end tmp)))
(goto-char beg)
(while (< (point) end)
(2ch::tracking-mark-set)
(unless (next-line 1)
(return)))))

352:名無しさん@お腹いっぱい。
08/02/17 00:36:24 zmOC4M1v0
そうかキーボードマクロという手もあったか…
ありがとうございます。これでどこが落ちても安心です。

できたのを見ると難しくなさそうんだけどなー

353:名無しさん@お腹いっぱい。
08/02/17 11:48:05 H+EE5hn/0
自分は

(setq *ignore-host-regexp-list-on-track-updating* '("pc11\\.2ch\\.net" "game14\\.2ch\\.net"))

(defun tracking-update-list (&optional ignore-error marked-only)
  (interactive)
             :
      (when (and (not (thread-dat-kako-p (tracking-list-dat track)))
                 (or (not marked-only)
                     (board-mark-p i)))

        (let (ignore-line-flag
              (hostname (tracking-list-host track)))
          (dolist (ignore-host-regexp *ignore-host-regexp-list-on-track-updating*)
            (when (string-match ignore-host-regexp hostname)
              (setq ignore-line-flag t)))

          (unless ignore-line-flag

            (reverse-line)
            (refresh-screen)
             :

てな感じで特定のホストを除外してる。

354:名無しさん@お腹いっぱい。
08/02/19 10:59:52 UJLKPsZQ0
outline-tree2でツリー表示名を判定部の次の行を表示したいんだけど、やり方がわからない…

[ほげ]
ぴよ

とあったら
ツリーで表示したいのは
[ほげ]
でなく、
ぴよ
にしたいんだけど…


355:名無しさん@お腹いっぱい。
08/02/19 11:52:22 zzbmqgXT0
tips/カレンダーの祝日を最新に
URLリンク(xyzzy.s53.xrea.com)

バイトコンパイルしようとすると、
文字列が終了していません
と言って怒られるのですが、どうしたらいいでしょう?


356:名無しさん@お腹いっぱい。
08/02/19 12:45:59 MFRQReTw0
文字列を終了させてください

357:名無しさん@お腹いっぱい。
08/02/19 19:38:42 BsBqGiZQ0
>>355
おそらくコピペした際にゴミでも入ったんだろう。

・新規ファイルを作ってもう一回コピペする。
・それで駄目ならダブルクォートの対応を確認する。

358:名無しさん@お腹いっぱい。
08/02/19 19:42:41 BsBqGiZQ0
あとファイルのエンコーディングも確認した方がいいかもね。
SJIS以外で保存してると、一見問題なさそうなコードでも
エラーが出る事もあるから。

359:名無しさん@お腹いっぱい。
08/02/19 20:26:30 FhKRO0sW0
保存せずに×を押して「やっちまーたー」って事が多いのですが、
保存していない場合は閉じようとしても確認するようにできますか?
何か設定を触ってしまったのかな・・・。デフォでこれでしたっけ?

360:名無しさん@お腹いっぱい。
08/02/19 20:44:32 BsBqGiZQ0
確かデフォでは確認ありの筈。
モードに関係なく確認なしで終了するのけ?

361:名無しさん@お腹いっぱい。
08/02/19 21:09:31 ranz9ZQX0
>>359
この辺を参考にすれば?
URLリンク(hie.s64.xrea.com)

362:名無しさん@お腹いっぱい。
08/02/19 22:10:47 5Zru6txd0
>359
もしかして、*scratch* に書いてたりしないよね?

363:359
08/02/19 23:25:22 qo6PTLRt0
>>360-362
皆さんありがとう

アフォでした、scratchに書いていたんですね。
scratchに重要なメモをする癖があったようで・・・。orz
お騒がせしました。
361さんの先を参考にしてscratchの保存確認も常に行うようにしてみますです

364:名無しさん@お腹いっぱい。
08/02/19 23:37:46 idCZyvKk0
>>363
この3っつ入れとけばかなり幸せになるよ。

URLリンク(hie.s64.xrea.com)
URLリンク(xyzzy.s53.xrea.com)
URLリンク(xyzzy.s53.xrea.com)


#昔 scratch-plus ってのがnetinstallerにあったんだけど消えてんのか。

365:名無しさん@お腹いっぱい。
08/02/19 23:58:51 cd+0cuU30
scratch をメモ代わりに使う on xyzzy
URLリンク(womo.nconc.net)

memorandomを使って履歴を取ってる。

366:名無しさん@お腹いっぱい。
08/02/20 00:13:45 tGVwZhK/0
ども。

>>354
「アウトラインツリー設定」の「正規表現」タブで以下のように指定を。
^\[.*\] *\n\(.*\)

問題なければ適当に正規表現を微調整した後に、
「アウトライン作成関数の生成」でもどうぞ。


367:名無しさん@お腹いっぱい。
08/02/20 09:42:46 q9R+TuS50
XP から Vista に変更しました。
IE の HTML ソースを開くエディタに xyzzycli.exe を設定しました。

それなのに、すでに開いている xyzzycli で開かず、
もう一つ xyzzy が起動します。

2 つ xyzzycli が開いた状態で、
エクスプローラから何かファイルを開こうとすると
「xyzzyとの通信でエラーが発生しました」というダイアログが出ます。

XP の時は大丈夫だったのですが、
Vista でもうまく使う方法はありませんか。

368:名無しさん@お腹いっぱい。
08/02/20 09:48:26 k5pitGmK0
VistaだとIEは別ユーザで動作しているような状態になってるんじゃないかね。

369:名無しさん@お腹いっぱい。
08/02/20 11:18:55 /9zWxSYz0
>366
似たようなことをやっていたんですが、どうやらoutline-treeの使い方が間違っていた模様o....rz
(見出し解析の正規表現のほうでやろうとしていた)
指定された方法で行い、必要なものを追加すると想定したものが作成されました。
ありがとうございました。

370:名無しさん@お腹いっぱい。
08/02/20 11:37:48 EI87wZg50
>>357
>>358
ありがとうございます。utf-8nで保存していたのが原因でした。
SJISに治したところ無事バイトコンパイルできました。


371:名無しさん@お腹いっぱい。
08/02/20 11:59:40 q9R+TuS50
>>368
なるほど。
xyzzy の質問ではなく Vista の質問になってしまい恐縮なのですが、
どこで設定できるものなのでしょうか…。
( プロパティなども探したのですがわからなくて )

372:名無しさん@お腹いっぱい。
08/02/20 18:56:32 4z6nW4tM0
>371
かなり手抜きだがSleipnir使っとけ。
低い権限で動くのはIEだけ。

373:名無しさん@お腹いっぱい。
08/02/20 22:05:26 q9R+TuS50
>>372
ありがとうございます。
Sleipnir を入れてみました。
軽くていいですねー。
でも同じです…。

IE のソースを開くのに、どのかのサイトで見た
レジストリを変更して xyzzycli にしたのですが、
ほかの Vista ユーザは大丈夫なんでしょうか?

374:名無しさん@お腹いっぱい。
08/02/21 01:37:35 OvBqmuxY0
ども。
>>369
> (見出し解析の正規表現のほうでやろうとしていた)
これが正しいなんていう使い方はないですが、私はまさにその方法の通り、
その場その場で正規表現を書いて見出し解析の正規表現でアウトラインを
作ってファイルを確認しています。
一定の正規表現を使い続ける場合には、アウトライン作成関数を生成
するのもよいですね。


375:名無しさん@お腹いっぱい。
08/02/21 12:42:43 Lljx7OvK0
Windows を再起動する度に各 mode の色分けがおかしくなる現象が出ています。

1. html+-mode を使って HTML 編集。
2. Windows 再起動。
3. html+-mode の色が xml-mode の色に。(しかし機能的には html+-mode)
4. Windows 再起動。
5. 今度は css-mode の色が何か他の mode の色に。(しかし機能的には css-mode)

こんなん経験したひといますか。

376:375
08/02/21 17:39:21 Lljx7OvK0
html+-mode.l と siteinit.l バイトコンパイルしなおしたら html+-mode も css-mode も直った。
おさーがせしました。

377:名無しさん@お腹いっぱい。
08/02/21 23:38:13 l18cwfyj0
>>373
XPにアップグレード。

378:名無しさん@お腹いっぱい。
08/02/21 23:55:03 W2UeIQDJ0
>373
Vista使ってないからよくわからん。
会社でテスト機に入れたVistaをちょっと触っただけなのでIEのソースを開くのとか試さなかったよ。
UACとか影響してるのかなぁ?

379:名無しさん@お腹いっぱい。
08/02/21 23:56:06 5OgdfT3L0
2000もあるでよ

380:名無しさん@お腹いっぱい。
08/02/22 00:19:12 x6dXvwtL0
(dolist (c '(#\C-0 #\C-1 #\C-2 #\C-3 #\C-4 #\C-5 #\C-6 #\C-7 #\C-8 #\C-9))
  (global-set-key c 'digit-argument))

これってどういう風に動くんでしょう?
Emacs風キーバインドに近づける、の他のコマンドについてはだいたいわかったのですが。

あとファイル―新規作成に当たるコマンドの名前がわかりません。
調べ方も……。どこを見ればいいのかな……。

381:名無しさん@お腹いっぱい。
08/02/22 02:29:33 /bbFQVmb0
>>380
(global-set-key #\C-0 'digit-argument)
(global-set-key #\C-1 'digit-argument)
...
(global-set-key #\C-9 'digit-argument)
のように展開されて,
M-2 aの代わりにC-2 aと打てるようになります.
(aを2回入力する)

新規作成は
1. C-x C-fして存在しないファイル名を入力
2. 適当に何か書いて保存
とやるのが普通.

382:名無しさん@お腹いっぱい。
08/02/22 02:37:21 PACRPcr+0
>>380
ファイル−新規作成のコマンドは new-file。lisp/app-menu.l を見ればわかる。
まあ確かに >>381 のやり方のほうが普通だとは思うけど。
とりあえず何か調べたかったら lisp ディレクトリを grep してみるといいかも。

383:名無しさん@お腹いっぱい。
08/02/22 09:53:27 h87OB2zF0
>>378
UAC 外したら OK でした!
でも、会社のため UAC 外すと怒られるんです。

UAC となると方法はないものなのでしょうか。

>>377
あー。XP に戻したい…。2000 は勘弁。

384:383
08/02/22 10:07:26 h87OB2zF0
会社でも騒いでいたら原因が分かりました。

「だいな」というファイラを使っているのですが、
「だいな」から xyzzycli を起動するとダメでした。

エクスプローラからなら大丈夫。

だいなも UAC も Vista も捨てられないのが残念。
( 今となっては Sleipnir も )

385:名無しさん@お腹いっぱい。
08/02/24 20:46:12 npd+fK9m0
>>381-382
ありがとうございます。

あと昇順ソートはEmacs風キーバインドに近づける、の
sort-lines使えば良いんですが、
降順ソートをC-u M-x sort-linesで行うことは可能ですか?
やってみたら普通に昇順にされたんですが、
そもそもC-u M-x って普通のM-x と違うんでしょうか。

386:名無しさん@お腹いっぱい。
08/02/24 20:49:56 npd+fK9m0
あとできればreverse-regionも欲しいところです……。

387:名無しさん@お腹いっぱい。
08/02/24 21:55:22 VtaVyXU50
> 降順ソートをC-u M-x sort-linesで行うことは可能ですか?
こんなとか。
(defun sort-lines (start end &optional rev)
(interactive "*r\np")
(filter-region (format nil "sort~@[ /r~]" rev) start end))

> そもそもC-u M-x って普通のM-x と違うんでしょうか。
違います。C-u M-x の方はコマンドに対して引数を渡しています。
詳細は「前置引数」「universal-argument」を調べてください。

388:名無しさん@お腹いっぱい。
08/02/24 22:20:06 npd+fK9m0
>>387
できました。
ありがとうございます。

あと前置引数調べてみました。
interactive で引数を受け取るようにしてそのままそれを
sortに渡しているようですね。

まだまだ勉強が足りないので詳細はわかりませんが
ありがとうございます。

389:名無しさん@お腹いっぱい。
08/02/24 22:21:05 psOzRihu0
>>386
(defun emacs-reverse-region (start end)
  (interactive "*r")
  (let* ((s (save-excursion (goto-char (min start end))
              (unless (bolp) (goto-eol) (forward-char 1))
              (point)))
         (e (save-excursion (goto-char (max start end))
              (unless (and (eolp) (not (bolp))) (goto-bol) (backward-char 1))
              (point)))
         (l (split-string (buffer-substring s e) "\n" t)))
    (when (< s e)
      (delete-region s e)
      (goto-char s)
      (insert (format nil "~{~A~^~%~}" (reverse l))))))

390:名無しさん@お腹いっぱい。
08/02/24 22:42:38 npd+fK9m0
>>389
こちらもできました。
本当にありがとうございます。

ただ、名前をreverse-regionにしようとしたら
そっちは先取りされてるんですね。
M-x ではNo matchなんですが、
これって関数内とかでしか使えないってことでしょうか。

391:名無しさん@お腹いっぱい。
08/02/24 23:11:24 psOzRihu0
xyzzy の reverse-region は emacs のとは機能が違います。
M-x で呼びたいならこんな感じ。
(defun xyzzy-reverse-region (start end &optional temporary)
  (interactive "r\np")
  (reverse-region start end temporary))

392:名無しさん@お腹いっぱい。
08/02/26 16:25:57 eepP80J70
netinstallで入れたmigemo.lとcmigemo1.2の辞書を
そのまま使っているのですが、$*./^を検索すると
\にもマッチするのは仕様ですか。
ttPage-Rというテキストビュア上でmigemo検索した
場合はマッチしないので、もし回避策があれば
教えてください。


393:名無しさん@お腹いっぱい。
08/02/27 09:20:06 hKxwodO0O
仕様か否かを知りたいのであれば、作者の方に確認してください。

394:名無しさん@お腹いっぱい。
08/02/28 22:14:44 gFh4mflN0
すいません。
超絶基本的なことを質問させてください。
xyzzyってそもそもどのように使うのですか(汗)

入門Common Lispという本を買ってLispの勉強をしてまして
scratchでlispプログラムを書いて実行できるということは
わかるのですが、それがどのように生産性の高さに結びつくのかが
わかりません。

そもそもサクラからしてまともに使えていないので、それを使いこなせる
レベルになってから手を出すべきだったのかもしれませんが・・・。

395:名無しさん@お腹いっぱい。
08/02/28 22:28:10 BHbe348X0
や、エディタをどう使うかって言われてもなぁ。
私はコーディング、メモ、あと2ch-mode、calc、くらいしか使ってないな。
あ、あとgrep/gresreg。
あれなんか用途の半分以上エディタの範疇じゃないよ?
lispは一応なんとかなるがちょっと操作を便利にするためぐらいしか触らないし。

396:名無しさん@お腹いっぱい。
08/02/28 22:52:54 Ns1ZQC5Q0
>>394
lispでまともなプログラム書けるまでROMれ

397:名無しさん@お腹いっぱい。
08/02/28 23:00:03 llK31uE50
いきなり進路を相談されても困る
そもそもどうしてLispの勉強をしているのか

398:名無しさん@お腹いっぱい。
08/02/28 23:22:42 gFh4mflN0
すいません。
自己解決しました。

疑問だったのは
癖あるし、普通に他のテキストエディタを使うよりもいい点はどこにあるか?
自分で機能拡張できると言われてるけどどうやってするのだ?
ということでした。

そしてそれは、もう一度、一番最初のスレを読み返して
試しに、以下のサイトから、

URLリンク(www1.odn.ne.jp)

html+-mode.lをダウンロードしてきて説明読んだら疑問が氷解しました。
xyzzy/* フォルダの下に作成した .l ファイルを置いたらいいのですね。

>>396
そうします。
いや本当にお騒がせしました。

>>397
lispは凄い。emacs,xyzzyが最強という話を聞いて興味を持って
勉強を始めました。
必要に迫られてと言う訳ではありません。

399:名無しさん@お腹いっぱい。
08/02/28 23:44:36 dHFjm/an0
Lispスレでも覗いてみたら?
スレリンク(tech板)
スレリンク(tech板)

400:名無しさん@お腹いっぱい。
08/02/28 23:59:05 AQ3PrYSi0
俺はほぼ単にテキストエディタとして使ってるなあ。
ウェブサイト巡回も2ch閲覧もコマンドラインも電卓も他のソフトを使ってる。

それらが全部xyzzyの操作方法と機能でできると人によっては便利なんだよね。たぶん。
統合環境というのか。(全部と言わずとも、いくつかの機能が一緒になってるだけでも)

自分の場合は、テキストエディタとしてはxyzzyが(あんまり機能は使ってないけど)とっても
好きなんだが、他の機能は他のソフトでやった方がよい感じ。まあそういう人もいるさ。

401:名無しさん@お腹いっぱい。
08/02/29 00:11:56 aARFZ9g00
C-x # が好き。これ覚えてからフィルタたくさん書くようになったよ
まだ Lisp じゃさっと書けないから Ruby か Python なんだけど・・・

402:名無しさん@お腹いっぱい。
08/02/29 02:20:40 78mgGwNg0
>>398
見た感じlispがとか言うのは、まだ早すぎる感じなので
まずWikiを読んだらいいよ。

403:名無しさん@お腹いっぱい。
08/02/29 05:05:34 juO4T5j80
>>401
>filter-buffer
こんなものがあったとは・・・

404:名無しさん@お腹いっぱい。
08/02/29 23:15:09 5q7ii9K50
ここみたいに .xyzzy を公開しているサイトを教えてください><
URLリンク(www.m.cs.osakafu-u.ac.jp)

405:名無しさん@お腹いっぱい。
08/03/01 17:41:23 zjXYwR3U0
xyzzyでgtagsを使ってますが、フォルダにスペースがあったり、フォルダ名が○○ソースだと
うまくダグファイルが生成されません。これは仕様と思って諦めなのでしょうか?

あと、xyzzyでソースを作成して開発している人に聞きたいのですが、
ソースコードチェッカって使ってますか?
今、フリーのチェッカがないか探しているけど、なかなか見つかりません。
(splintとか言うのがあるらしいですが・・・)
なにか、よいフリーのチェッカを知っていたら教えてください。

406:名無しさん@お腹いっぱい。
08/03/01 19:48:50 lmktrNRf0
xyzzy にgiveって書いてその上でC-c i で311行目

407:名無しさん@お腹いっぱい。
08/03/01 23:21:07 cx2S2Zqb0
>>406
勉強になりました。

408:名無しさん@お腹いっぱい。
08/03/02 00:10:44 cswo/H/N0
>>405
> xyzzyでgtagsを使ってますが、フォルダにスペースがあったり、フォルダ名が○○ソースだと
> うまくダグファイルが生成されません。これは仕様と思って諦めなのでしょうか?
globalのマニュアルに今の仕様じゃスペースを含むファイルは解析されないって書いてあるだろ。
マニュアルくらい読んでから質問しろ。

409:名無しさん@お腹いっぱい。
08/03/02 00:59:15 VcRj5E1h0
xyzzyに折りたたみ機能と列カーソルをつけるとしたら、
ソースを改造してコンパイルしないと実現できないのでしょうか?

410:名無しさん@お腹いっぱい。
08/03/02 01:17:23 X9P/WsGw0
outline-tree2 でアウトラインツリーのウインドウに
キーボードでカーソルを移動する方法ってあります?
いつもマウスであのウインドウを選択してるんですが……。

411:名無しさん@お腹いっぱい。
08/03/02 01:39:13 UNjpDW7p0
つ treeview::treeview-focus-treeview


412:名無しさん@お腹いっぱい。
08/03/02 06:26:39 OwxrHjMC0
>>409
絶対に無理かというとlispでも出来るかもしれないけど、
例えば、折り畳みはundoが問題なので、lispで書いたら
undo までlispで書かないと駄目になってしまいそうで、かなり大変だと思う。

413:名無しさん@お腹いっぱい。
08/03/02 07:22:18 YCGjt/zL0
>>412
xyzzyPart13 >>766,768,772みたいな感じにすればundoもできると思う。

>>409
励まし合え9 >>702で一応できているね。バイト数を計算すれば2バイト文字を含んでもいけるんじゃないかな。

414:名無しさん@お腹いっぱい。
08/03/02 07:39:40 YCGjt/zL0
今のバッファはそのままにして、もう一つバッファを作ってそこにアウトラインを展開みたいに
すれば折りたたみもできると思うね。

列カーソルはsilogのparen.lみたいにすれば色情報の保持もできると思う。

415:名無しさん@お腹いっぱい。
08/03/02 07:50:30 OwxrHjMC0
>>413
part13,766は誰か実装したりしてるのかな?

416:名無しさん@お腹いっぱい。
08/03/02 09:31:27 mpGRCNc90
使い勝手は秀丸エディタとどっちが上?あっちは折りたたみ機能が魅力だが

417:名無しさん@お腹いっぱい。
08/03/02 10:04:37 OwxrHjMC0
>>416
エディタとしてはxyzzyは最高の部類だけど
使い勝手に関してはxyzzyは最低の部類だよ。

導入は簡単だけど使いこなすには
慣れやカスタマイズの敷居が高い。
lisp書ける人には使い勝手は良いと思うけど。

418:名無しさん@お腹いっぱい。
08/03/02 11:16:56 SvdH6x7e0
折りたたみ機能に魅力を感じるなら秀丸使うといいんでない
この変態キーバインドが染みついてる人にはxyzzyもアリだが

419:名無しさん@お腹いっぱい。
08/03/02 11:59:50 YCGjt/zL0
欲しい機能は自分で作ればいいんじゃない?
折り畳みもやれば実装できると思うよ。
winapiも使えるんだからlispだけでも大抵のことはできると思うけどね。

キーバインドは自由に変えられるだろ?

420:名無しさん@お腹いっぱい。
08/03/02 18:59:52 JAckk9tN0
秀丸でJavaScriptのアウトライン解析する定義ファイル - てっく煮ブログ
URLリンク(d.hatena.ne.jp)

xyzzyでこのようなことをやりたいのですが、どうすればできるでしょうか?

421:名無しさん@お腹いっぱい。
08/03/02 19:21:47 Bfg6doDe0
>>420
質問文からは、知ってる情報を小出しにしているか、
まったく自分で調べようとしてないな。あんたには無理だから、
秀丸使ったほうがいいんじゃないの。

とりあえず outline-tree2 をネットインストーラから入れて、
URLリンク(ohkubo.s53.xrea.com)
のフラッシュデモで勉強しとけ。

422:名無しさん@お腹いっぱい。
08/03/02 20:30:45 mpGRCNc90
折りたたみで見たいときは秀丸。それ以外はxyzzyって使い分けてもいい?

423:名無しさん@お腹いっぱい。
08/03/02 20:46:37 Gx3FWlmr0
急にレベルの低い話で申し訳ないのですけれど
メモ帳なんかのC-aでの全選択はxyzzyではどのようにやるのでしょうか?

424:名無しさん@お腹いっぱい。
08/03/02 20:51:34 Y9IeB3we0
M-x mark-whole-buffer

425:名無しさん@お腹いっぱい。
08/03/02 21:11:24 eyc75HfI0
セレクションにするなら
右クリック→全てを選択 または Apps a

426:名無しさん@お腹いっぱい。
08/03/02 21:24:07 rHGZazex0
もしくはマウスで左クィンティプルクリック

427:名無しさん@お腹いっぱい。
08/03/02 21:50:47 VOU6abEj0
>423
(global-set-key #\C-a 'selection-whole-buffer)

428:名無しさん@お腹いっぱい。
08/03/03 05:52:10 aVHCDWr/0
Emacs風ならC-x h とかに割り当てればいい

429:名無しさん@お腹いっぱい。
08/03/03 08:53:14 O07C7m1o0
>>410
> outline-tree2 でアウトラインツリーのウインドウに
> キーボードでカーソルを移動する方法ってあります?
> いつもマウスであのウインドウを選択してるんですが……。

つ treeview-focus-treeview

430:名無しさん@お腹いっぱい。
08/03/03 22:07:35 q0tBREeA0
>>411
>>429
ありがとうございます。00reademe読んでませんでした。

ちなみにoutline-tree2の背景色とかって変えられますか?
URLリンク(hie.s64.xrea.com)
上記のxyzzy Part7 361さんのような色にしたいんですが……。

431:名無しさん@お腹いっぱい。
08/03/03 22:08:11 q0tBREeA0
あとwww-modeの.wwwの中身ってsiteinit.lに書いたらダメなんでしょうか?
.www限定ですか?

432:名無しさん@お腹いっぱい。
08/03/03 23:12:48 L+yKvV020
>>431
たぶん問題ないと思う
in-package を忘れないように。

433:名無しさん@お腹いっぱい。
08/03/03 23:26:59 AQfLhulX0
これから少し時間ができそうなのです。
xyzzyが面白そうなので先ほどxyzzyをDLしてインストールしました。
これからxyzzyのLISPを勉強しようかなと思っていますが
初心者用の参考書を少し紹介してください。
プログラムはBasicとPascalしかやったことがありません。

434:名無しさん@お腹いっぱい。
08/03/04 00:07:10 AQfLhulX0
N88Basic と TurboPascal

435:名無しさん@お腹いっぱい。
08/03/04 00:25:00 WUEFIqrY0
>>433
xyzzy の LISP ということであれば書籍はありません。
現状では Hiroi さんのところを読むのが一番です。
URLリンク(www.geocities.jp)

これを読み終えて足りなかったら、emacs lisp の書籍を xyzzy lisp との違い
を意識しながら読むとか、Xyzzy Wiki からたどれるところを読むとか、lisp デ
ィレクトリのソースを読むとか、xyzzy ML の過去ログを読むとかするとよいと
思います。


次ページ
最新レス表示
スレッドの検索
類似スレ一覧
話題のニュース
おまかせリスト
▼オプションを表示
暇つぶし2ch

5384日前に更新/293 KB
担当:undef