- xyzzyってさ、一見さんお断りの京都料亭みたいでさ、何から手をつけていいのかわからないでしょ?
とりあえず,初心者同士で解決できる問題はまず過去ログ・グーグルで検索した後ここで相談しましょう
たとえば
・ここのHPに書いてある通りにやりましたができません.
・xyzzyが起動しなくなりました.
・キーバインドってどうやって変更するの?
初心者の私が答えられるのはこの程度です.
自分でlispが書けるような方,こんな機能が欲しいのですが
だれか作ってくださいという方は Win板本スレへ。
xyzzy Part13 @Win板(通称:本家)
http://pc8.2ch.net/test/read.cgi/win/1127783135/
過去ログ & 関連リンクは>>2-5あたりに。
- ■ 過去ログ
8: http://pc7.2ch.net/test/read.cgi/software/1130806828/
7: http://pc7.2ch.net/test/read.cgi/software/1116710824/
6: http://pc8.2ch.net/test/read.cgi/software/1103791938/
5: http://pc5.2ch.net/test/read.cgi/software/1088948470/
4: http://pc5.2ch.net/test/read.cgi/software/1073911622/
3: http://pc2.2ch.net/test/read.cgi/software/1063367821/(DAT落ち?)
2: http://pc2.2ch.net/software/kako/1054/10541/1054141308.html
1: http://pc2.2ch.net/software/kako/1041/10413/1041326960.html
- ■ 関連リンク
・xyzzy 公式サイト
http://www.jsdlab.co.jp/~kamei/
・XyzzyWiki
http://xyzzy.s53.xrea.com/wiki/
・XyzzyWiki QuickTour
http://xyzzy.s53.xrea.com/wiki/?QuickTour
・HIE no xyzzy (QandA, 拡張ライブラリ集, Note, Tipsなど)
情報てんこもり,大抵の拡張リスプはここに集められている
http://hie.s64.xrea.com/xyzzy/
・2ch-mode、www-mode、Kamail
http://www7a.biglobe.ne.jp/~hat/
・outline-tree2、browserex、ggrep
http://ohkubo.s53.xrea.com/xyzzy/
・黒い羽根 (デフォルトキーバインドの解説など)
http://www.uranus.dti.ne.jp/~shiro-/
・xyzzy lispを勉強出来るページ
http://www.geocities.jp/m_hiroi/xyzzy_lisp.html
- ↑乙
- >>1乙です
早速質問です
アパッチのログを眺めてニヤニヤしたいんですが、
wikiのログなのでURLエンコーディングされて一般人には読めません。
で
;;; *scratch*の内容を*Output*に吐き出す。
(with-output-to-buffer ((switch-to-buffer "*Output*"))
(with-input-from-buffer ((switch-to-buffer "*tail-f*"))
(setq line (si:www-url-decode *standard-input* nil))
(princ line)
(princ "\n")))
こんなの書いたんですけど出力が
/index.php?ホスャヘム・レ。シ・ク HTTP/1.1" 200 25699
こんなかんじで文字化けてるわけです。
全部クリップボードにいれてクリップボードエンコーディングすれば読めるようにはなるんですが、
コードのなかで実現できないものでしょうか?
- どこのwikiなのか知らんのでwikipediaでの例
(map-utf-8-to-internal (si:www-url-decode "http://ja.wikipedia.org/wiki/%E4%B8%89%E4%BA%BA%E5%A8%98"))
map-nantoka-to-internal は lisp フォルダの encoding.l の中参照
- >>6
おおお出来ました!
ありがとうございます。
map-xx-to-yyの形式の関数のドキュメントがうまく探せなくて使い方わからなかったんです。
助かりました。
もう少し勉強してみます。
- 水平方向のスクロールって、カレントの行の幅までしか動かないですよね。
開いた時点で、テキスト内で最大幅をもつ行の幅まで拡張させることはできないんでしょうか。
(ノートパッドみたいに)
折り返すとインデントが乱れて、見にくくなるので何とかしたいです。
- >>1
おつかれどえす
extern-C-tab みたいに拡張キーとかいいはるもんは
どないしたら使えますんやろか?
よろしかったら教えておくれましやろか?
自分も調べさせてもろたんやけども、
xyzzyやあらへんソフトのサイトか
その拡張キー使うてはるlispのSampleのサイトしか
見つけられやしまへんかったんや。
どうかよろしゅう頼んますさかいに
- exkey-C-tab とかのことかな
- >>8
メニューから 表示 - 折り返さない を選択
すればいいんじゃないのかな
(または 共通設定- 表示 の同じ項目)
- >>8
xyzzyは必ず画面内にカーソルがなければならず、かつ
http://xyzzy.s53.xrea.com/wiki/index.php?WishList%2F3
のようにフリーカーソルを使えない現状では無理。
俺も最近使い始めて色々できることに感嘆したけど、ある程度使い込んでくると
不満な部分もやっぱでてくるよね。
- >>11
すみません。
説明するの難しいなコレ。
41|abababababababababababababa
42|cdcdcdcdcdcdcdcdc|(←カーソル)
43|efefefefefefeefefefefefefefefef
44|........
. . . .←――――――――→
. . . .(この範囲しか動かない)
こんな感じです。
>>12
有難うございます、仕様ということですね。
スッキリしました。
秀丸の作者さんも折り返しの仕様は匙投げてたし。
作る側にとって折り返し関係は大変なんですよね、多分。
- >>10
おかげでここをみて解決できましたどえ
http://pc5.2ch.net/test/read.cgi/win/1067394259/490
- >>13
ちょっと違いますが
http://hie.s64.xrea.com/xyzzy/note2/wiki.cgi?page=Edit#p3
- >>15
力技ですね。
良くこんなの思いつくなー。
…(;^ω^)あっ、発想は参考になります。
行揃えとかも面白いです。
- ドイツ語のウムラウト(Üなど)をコピペする時
IE→xyzzy Uになる
IE→秀丸 Üのまま
秀丸→xyzzy Üのまま
xyzzy→秀丸 Uになる
と俺にはよく分からない変換規則があるんですが
xyzzyでも可能な限りウムラウトを保持する設定は何かありませんか?
あと、ドイツ語、ロシア語入力の時にアルファベット配列が異なるので
Ctr+何かキー 関係がめちゃくちゃになってしまうんですが
日本語入力に切り替える以外で対策は何かないでしょうか…。
- html+-modeモードで
”編集中のページを指定したブラウザで開く”
探しているんですが中々見つからなくて
ご存じないですか?
- >>17
ウムラウトに関しては右クリック->クリップボードエンコーディング->urf-8nでどうでしょう。
- >>18
標準のブラウザでなら↓みたいなので。
(define-key *html+-mode-map* #\C-o (lambda ()
(interactive)
(let ((f (get-buffer-file-name (selected-buffer))))
(if f
(shell-execute f)))))
- 日付が
- >>20
これで充分です。助かりました!
- *****リア厨バンド「ラズベリー」祭りに新展開!!*****
喫煙&HPにブラクラなどやりたい放題の彼らだが
同級生(神)光臨でいよいよ祭り本格化
そして今日3月32日10時、ついに彼らの高校に電話一斉突撃が!!
作戦名「3・32第一次ヤシマ・電凸作戦」
今 こ そ 奴 等 に 鉄 槌 を 下 せ
(電話が出来ない人は抗議文の投書作戦も随時行っております)
【現行スレ】
http://ex14.2ch.net/test/read.cgi/news4vip/1143834261/
【奴らのサイト】
http://03.xmbs.jp/nirvanawakamisama/ ← 注意!!ブラクラ貼られまくりんぐ
【そして未成年で喫煙!!↓↓喫煙証拠写真】
ttp://blog51.fc2.com/n/nukoperson/file/29020b[1].jpg
【ラズベリー掲示板】
http://03.xmbs.jp/b.php?ID=nirvanawakamisama&c_num=22210
【前スレ】
http://ex14.2ch.net/test/read.cgi/news4vip/1143822299/
【まとめサイト的なもの】
http://nukoperson.blog51.fc2.com/blog-entry-65.html
【おまけ画像】
ttp://milky.geocities.jp/neko_zone/vip223817.jpg
ttp://milky.geocities.jp/neko_zone/vip223905.jpg
ttp://milky.geocities.jp/neko_zone/vip223920.jpg おすすめ!
ttp://milky.geocities.jp/neko_zone/vip24937.jpg
ttp://milky.geocities.jp/neko_zone/vip223848.jpg
ttp://milky.geocities.jp/neko_zone/vip224173.jpg
ttp://milky.geocities.jp/neko_zone/578438.jpg
- >>19
そんなところに設定が…。
共通設定をずっと見てました
これで、標準でクリップボードのエンコードが
utf8nになってくれたんですがあってます?
(change-clipboard-encoding *encoding-utf8n*)
ただ、IEからのコピーの場合はこれでも上手く行かないです
どのソフトの問題かわからないので
クリップボードの仕組みから勉強しなおしてきます(`・ω・´)
- *encoding-utf16* のほうが良いような気がする
- >>25
UTF8と16の違いを知らなかったので調べてみた
http://www.atmarkit.co.jp/fxml/askxmlexpert/024utf/24utf.html
UCS-4に対応してるから? それとも他の理由?
- >>25
今、わかりました。
utf16に設定するとIEからのコピーでも上手く行きました
んで、クリップブックでクリップボードの中身を見てみたけども
秀丸とIEの渡されるデータ形式の違いが全然分からない
何でutf16だと上手くいくんでしょう?
- バックアップファイルが貯まってきて重くなってきたので、
一応圧縮して保存し、バックアップファイルのフォルダを
空にしようと思ったのですが
(create-archive "backupfiles.lzh"
(directory "~/backupfiles" :absolute t :recursive t)
(user-homedir-pathname))
としら、nilになります。
パスを指定してやらなければいけないのですか?
- nil が返るのは既定の動作だけど。
実際に作られてないの?
- はい、作られていません
リファレンスをみるとFILESの所に ' がありますが
なにか関係あるのですか
- >>30
> リファレンスをみるとFILESの所に ' がありますが
> なにか関係あるのですか
これはその直後の括弧内をリストとして扱うって意味だから、directory 関数使ってる分には関係ないよ。
(directory "~/backupfiles") が nil 返してない?
あと Unlha32.dll は入ってる?
- UNLZH32.dll 2.2.5.23 が入ってます
(directory もリストを返します
- UNLZH32.dll ってまだあったっけ。
とりあえず xyzzy は defs.l 見る限り unlha32.dll しか対応してないようだよ。
- UNLZA32.dll 2.2.5.23 でした すみません
- 別にLispでやらんでも、ファイラから作るなり別のアーカイバから作るなり
すればいいじゃん。
>>28 について気になるのはスペースが変ってことかな。
何でU+00A0なのかな〜とか思う。
- ん、どうなのぉ?いいのぉ?
>>34さんいいのぉ?UNLZA32でいいのぉ?
どこにあるのぉ?ん、ねぇ、なんてDLLなのぉ?
言わないのぉ?言わないと立てないよぉ?立てないでいいのぉ?
ん、どこなのぉ?ん、なんてDLLなのぉ?ねぇ?
ん、そこに立ててほしいのぉ?ここぉ?ここぉ?
ここでいいのぉ?ねぇ?内容書かないでいいのぉ?ねぇ?
それじゃ立てれないよぉ?ん、エラー出ちゃうよぉ?ねぇ?
立てていい?スレッドたてちゃっていいのぉ?ねぇ?
あー、すごい。ねぇ?すごいよ?ねぇ?
ダメだよぉ?ちゃんと自演しなきゃ?
自演しなきゃ埋まっちゃうよぉ?ねぇ?いいのぉ?
ねぇ?埋まっちゃっていいのぉ?
あー凄い、こんなに煽られちゃって、煽りがすごいよぉ?
いいのぉ?いいのぉ展開しちゃっていいのぉ?
ここで展開しちゃってもいいのぉ?まだDLLも行ってないよぉ?
いいのぉ?解凍していいのぉ?それじゃ解凍するよぉ、解凍するよぉ、
あっ・・・
- C:\Documents and Settings\ユーザー名に作られていました
- >>37
(user-homedir-pathname) はどこなの?
環境変数 XYZZYHOME は?
- (defun xyzzy-backup-files-delate()
(setf dir "~/backupfiles")
(create-archive (merge-pathnames "backupfiles.lzh"(user-homedir-pathname))
(directory dir :absolute t :recursive t)
(user-homedir-pathname))
(unwind-protect
(when dir
(directory dir
:absolute t :recursive t
:callback #'(lambda (f)
(if (file-directory-p f)
(delete-directory f :if-access-denied :force)
(delete-file f :if-access-denied :force))))
(delete-directory dir :if-does-not-exist :skip :if-access-denied :force)))
(create-directory dir))
すみませんでした、もっと勉強します。
user-homedir-pathnameは si:system-rootでも
- ruby-mode使ってるのですが、
C-C Wや、C-C Xやで、スクリプトの実行を行ったときに、
・画面下部に、Checkという確認を出さずいきなり実行する方法
・出力バッファにフォーカスを持っていかず、
元のバッファにフォーカスを戻す方法
ってないでしょうか。
- http://homepage3.nifty.com/Yukimi_Sake/ruby/xyzzy/readme.txt
こちらの改良版を使ったら出来ました!
ありがとうございました。
- ruby-mode使ってて、キーマップを変更したいのですが、
ruby-mode.lを変えずに変更できますでしょうか?
具体的には、shift+Spaceを割り当てを解除したいのですが・・・
- exkey-S-space あったのか……。
(undefine-key *ruby-mode-map* #\F20)
.xyzzy に、load-library (とかrequire とか)のあと書けばいいはず。
// sitelisp.l でロードしてるなら .xyzzy のどこででも。
- うーん。
駄目でした。
ruby-mode.lの
(set-extended-key-translate-table exkey-S-space #\F20)
コメントアウトしてしまいました。
- >>44
> ruby-mode.lの
> (set-extended-key-translate-table exkey-S-space #\F20)
> コメントアウトしてしまいました。
S-Space のキーテーブルを戻したなら,keyboard.l によると
(set-extended-key-translate-table exkey-S-space #\SPC)
すれば,元に戻る.
これでコメントアウトしなくてもすむけど,まぁどっちでもいいかも
- 戻したいなら,
- 最近色々検索してて
ctagsやらgtagsやらでてきたけど、xyzzyはXTAGSを作るうえで何を使って生成してるんですか?
etagsってやつですか?それとも自前?
- maketags.l とか lispfns.l を見た感じだと自前っぽい。
- 階層付テキストの拡張子を.ktxtとして
Outline Treeで自動的に認識(アウトラインタイプを階層付テキストに)させたくて
get-outline-function.lを弄くれば出来ることがわかりました
でもこれじゃ問題ありなんで.xyzzyやsiteinit.lを弄くって設定したいんですが
皆目見当もつきません。どうすればできるんでしょうか?
- exel-demoに感動した
- >>50
なにそれ
- excel-demoだったスマソ
- ファイルの先頭に -*- ・・・・・・・・・・ -*- の記述で
modeやencoding、foldなどの設定ができますが
タブ幅の設定は、どう書けばできるんでしょうか?
- >>53
これでできてるっぽいのだが、他のバッファの表示も変わってしまう。
バッファごとには設定できないかも。
(defun find-file-set-tab-columns (col)
(ignore-errors (set-tab-columns (parse-integer col))))
(pushnew '("Tab" . find-file-set-tab-columns)
*auto-mode-parameter-alist*
:key 'car :test 'string=)
- >>49
.outline-tree/config.lの書き方と同じだけど
何かしらのメジャーモード使ってるのなら
(add-hook 'hoge-mode-hook*
#'(lambda ()
(setq outline-tree-create-outline-function
'outline-tree-create-outline-hoge)))
拡張子に対応させるなら*auto-mode-alist*にpushして追加すればいいんじゃないかな。
- あ、ファイル先頭には Tab: 4; とか書く。
- >>54
ありがとうございます。
set-tab-columns の引数に selected-buffer を指定したら
うまくいきました。
- >>55
レス、ありがとうございます。
>outline-tree/config.l
それデフォルトでは入ってないようです…。
拡張子に対応させるのはこれで出来ました
(push '("\\.ktxt$" . text-mode) *auto-mode-alist*)
アウトライン生成の設定をしてみましたが、全く動作してないようです
(add-hook 'text-mode-hook*
#'(lambda ()
(setq outline-tree-create-outline-function
'outline-tree-create-outline-hierarchy-dot)))
それと恐ろしく基本的な事だと思うんですが
"#"が何を意味するのかわからないんです
検索しようにもキーワードをどうすればいいのか…。
なんなんでしょうか、これ?
- >>58
> "#"が何を意味するのかわからないんです
#'car = (function car)
#はデフォルトのマクロ文字
- text-mode-hook* -> *text-mode-hook* で如何?
#' は続く式や変数が関数であることを示すおまじないだと、
とりあえずは思っとけばいいんじゃないでしょうか。
- xyzzyでバイナリエディタモードがあったらな・・・
どうもhexl-modeだとほかのバイナリエディタと比べると見劣りするし。
何かよい方法ってあります?
- >>58
それを調べるキーワードはクロージャ
- >>49 >>55 >>58-60
ども。
>>49
> 階層付テキストの拡張子を.ktxtとして
> Outline Treeで自動的に認識(アウトラインタイプを階層付テキストに)させたくて
> get-outline-function.lを弄くれば出来ることがわかりました
>
> でもこれじゃ問題ありなんで.xyzzyやsiteinit.lを弄くって設定したいんですが
> 皆目見当もつきません。どうすればできるんでしょうか?
get-outline-function.l を変更するのと同程度のことをする最良の方法は
*outline-tree-get-default-create-outline-function-advice-func* に、
「buffer を与えると『アウトライン作成関数』の関数名(シンボル)返す関数」を
設定することです。
その設定は、~/.xyzzy または $XYZZY/site-lisp/siteinit.l または >>55 に書か
れているとおり、~/.outline-tree/config.l に設定するのが適当です。
$XYZZY/site-lisp/outline-tree/config.l ではありません。
- 今後の追加を考慮しつつ、拡張子「ktxt」に「階層付テキスト」を設定するには
以下のような定義がよいかもしれません。
(in-package "outline-tree2")
(defun my-outline-tree-get-create-outline-function (buffer)
(let ((buffer-name (buffer-name buffer))
(buffer-mode (save-excursion (set-buffer buffer) buffer-mode))
(mode-name (save-excursion (set-buffer buffer) mode-name)))
(cond
((and (symbolp 'outline-tree2::outline-tree-create-outline-hierarchy-dot)
(fboundp 'outline-tree2::outline-tree-create-outline-hierarchy-dot)
(string-matchp "\\.ktxt$" buffer-name))
'outline-tree2::outline-tree-create-outline-hierarchy-dot)
(t nil))))
(setq *outline-tree-get-default-create-outline-function-advice-func*
'my-outline-tree-get-create-outline-function)
- cygwinのホームディレクトリとXYZZYHOMEを一緒にしたいんだけど
C:/cygwin/home/hogeでは階層が深すぎる気がしたんで
C:直下にホームディレクトリのシンボリックリンク(ショートカット)を置いたんです。
その上でXYZZYHOMEをC:\hogeにすりゃいいかなと思ったらやっぱダメなのね…。
ファイラでC:を見てみたらC:/hogeは見えないし。
xyzzyでディレクトリのショートカットを普通のディレクトリとして扱う方法とか
ないものでしょうか?
- 質問です。
*buffer-bar-selected-buffer-to-first* を non-nilにして
(set-buffer hoge-buffer)とかするとhoge-bufferがタブの先頭に来ます。
これを利用して連続で任意のバッファを順に先頭に置いていけないかと
思ったんですが、例えば
(progn
(set-buffer hoge1-buffer)
(set-buffer hoge2-buffer))
とかすると、最後にset-bufferされたhoge2だけ先頭に来ます。
これを順に先頭にこさせるにはどうすればよいでしょうか?
もしくは仕様上できないのでしょうか。よろしくお願いします。
- >>66
おもしろそうなので調べてみた.
いろいろやってもだめだったので,ソースコードを見ると
buffer-bar.cc の buffer-bar::update_ui() でその変数が使われていて,
以下の条件を満たすときに,タブの順序が変わるらしい.
フォーカスがバッファ以外に無いとだめなのかな.
if (cur >= 1 && xsymbol_value (Vbuffer_bar_selected_buffer_to_first) != Qnil
&& GetFocus () != b_hwnd)
{
Buffer *bp = selected_buffer ();
if (!bp->internal_buffer_p ())
どうやってフォーカス移せばいいのか・・・
- >>67
ありがとうございます。自分でも調べてみました。
自分はソースを見てもあまりよくわからないんですが、
恐らく "GetFocus () != b_hwnd" の部分は OChangeLog.html にある
>*buffer-bar-selected-buffer-to-first*がnon-nilでも、キーでタブを移動した場合はタブを移動しないようにした。
に対応した部分だと思います。なのでフォーカスではなくて、
そもそもbuffer-bar::update_ui()の関数が呼ばれていないのではと考えます。
これには理由があり、以前start-timerを使ってバッファ移動を試みたときバッファタブ
が切り替わりませんでした。どこのタイミングで呼ばれているのか詳しくわかりませんが、
恐らく処理が終わった前後だろうと思います。
なのでbuffer-bar::update_ui()をlispで呼ぶ方法があれば解決できるかと思うのですが
実際のところそのような関数はというと・・・。
作者に refresh-buffer-bar みたいな関数を作ってもらうしかないですかね。
- 文字列に"(ダブルクォート)を使いたいときはどうすればいいですか?
- >>69
こんなふうにエスケープする
"これは\"を含む文字列です"
- >>70
ありがとうございます。
"C:/home/xyzzy.exe "C:/hoge.txt""
っていう結果を得たいんですが
(concat (namestring "xyzzy.exe") " \"" "C:/hoge.txt" "\"")
ってやると
"C:/home/xyzzy.exe \"C:/hoge.txt\""
ってなってしまいます。
\の記号をとりたいんですがどういう書き方をすればこの場合うまく
いくんでしょうか?
- >>71
insert とかに渡してみればわかると思うけど、
その \ は表示するときにつけられてるだけだよ。
- >>72
実際に利用したらうまく動いてました。
表示するときだけ\がそのままついてくるんですね。ありがとうございました。
- >>68
む,できたかも.
- >>59>>62
レスサンクスです
クロージャで調べてみたけど、よくわかんない
Rubyのブロックつきメソッド呼び出しみたいなものと理解したんだけどあってます?
>>60 ダメでした
>>63-64
ありがとうございます!
したかった通りの動作になりました
わからない関数を全部調べてみたけども、わかったようなわからないような…
多分、全くわかってません。
色々書き換えて試してみます。 がんばろう。
- >>74
おお、独自ビルドですかね?それとも、LISPの関数が見つかったとか。
とりあえず、タブの並び替えなど意図するような動作になりそうですか?
- refresh-screen の &optional f って何の意味があるの。
- outline-tree2便利に使わせてもらってます。作者さんありがとう。
作者さんここ見てるみたいなんで要望なんですが、defpackage するとき
(:nicknames "olt2")
みたいにニックネームをつけてくれないでしょうか?
outline-tree2::hogeを短くできればいいなーと思ったのでよろしくお願いします。
- 縦にスクロールする場合、段差があるとガクガクして見づらいんですが、
これを回避する方法はないでしょうか。
- >>79
> 縦にスクロールする場合、段差があるとガクガクして見づらいんですが、
> これを回避する方法はないでしょうか。
まっとうな方法は無い。
まっとうじゃない方法ならこれとか。
ttp://hie.s64.xrea.com/xyzzy/note2/wiki.cgi?page=Edit#p3
- >>80
その方法を使ってもマウスを使ったスクロールの場合等だめっぽいですね。
仕方ないので、バッファ内の最長桁に合わせてそれぞれの行末にスペース
を挿入してガクガクならないようにしました。
- >>81
goal-column? を保存しなければ,ガクガクはしなくなると思います.
でも何列目にいるかを保存しなくなるけど.
>>77
nil と t と それ以外で挙動が違うけども,どう違うのかは
よく分からないです.ソースコード読んでとしか・・・
- リンク張り忘れたので
http://xyzzy.s53.xrea.com/wiki/index.php?tips%2F%A5%D0%A5%C3%A5%D5%A5%A1%A5%D0%A1%BC%A4%CE%CA%C2%A4%D3%BD%E7%A4%F2%CA%D1%A4%A8%A4%EB
- >>82
goal-columnを保存しないっていうのはどうすればいいんでしょうか?
- >>84
ごめん適当言ってた。
下のがホイールを使ったスクロールの定義。
(defun mouse-wheel-scroll (window n lines)
(or lines
(setq lines (window-lines window)))
(with-selected-window
(set-window window)
(scroll-window (* n lines))))
詳しくはソースコード見ないと何ともいえないけど、
scroll-window の定義を変えると、マウスホイールと
スクロールバーによる移動のどちらも変わるんじゃないかと予想する。
でも変えたところで、カーソル位置はだんだんと左によって行っちゃう
ものになるから使いやすいかは知らない。
抜本的な対策は、xyzzy を修正&コンパイルのみだと思う。
# 元の定義を利用して、関数定義をしなおすライブラリって何だっけ?
- 誰かが作ってるfoldingらしきものは、使えるの?
- >>83見てまとめると
>>66
のは
・interactiveでset-bufferしないと駄目。
・(refresh-screen 1)がないと駄目。引数はt以外のnon-nilにしないと駄目。
ってことね。
下手にccのソースの話出されても混乱するだろ。
ccは俺にはさっぱりわからんが
refresh-screenはnilとtとそれ以外で処理が分かれてるのだけわかった。
- ちがうnilとt以外のnon-nilとそれ以外か。ってまあいいやw
- M-x life ってどう楽しむもの?ハノイみたいに見て楽しむの?
一応キーマップがあるんで何かできるのかな
- > # 元の定義を利用して、関数定義をしなおすライブラリって何だっけ?
encap
- ファイルを開いた時点で >>83 のバッファバーの並び替えを実行する
方法ってないものでしょうか?
- >>91
(add-hook '*find-file-hooks* 'hoge) とか。
違和感あるなー。
- ども。
>>78
> 作者さんここ見てるみたいなんで要望なんですが、defpackage するとき
> (:nicknames "olt2")
> みたいにニックネームをつけてくれないでしょうか?
> outline-tree2::hogeを短くできればいいなーと思ったのでよろしくお願いします。
ニックネームを付けた場合、ヒストリーファイルとの絡みで問題がありそうだ、
と過去に思ったことがあるような記憶があるので、ニックネームはつけません。
ニックネームをつけても問題はないかもしれません。
outline-tree2 のコードでニックネームをつける予定はありませんが、
outline-tree/defs.l の内容が評価される前に、ご自身で、ニックネームを
付けた outline-tree2 パッケージを定義すれば希望の設定が可能です。
- すみませんが、どなたかdoxygenモードなるものを移植してもらえないでしょうか?
ttp://www.doxygen.org/
ttp://www.fides.dti.ne.jp/~oka-t/doxygen.html
ttp://sourceforge.net/projects/doxymacs/
よろしくお願いします。
本スレの人たちでは無理そうでしたので・・・
- というか興味がないだけだろう。
- しかも本スレとこことほとんど住人同じなんじゃないの?
- >>94
自分で作ってみればいいんじゃない?
移植ツールもあるよ。
- >>96
そのせいでこっちでも LISP 書け、みたいな話でしょんぼり。
LISP 書けない奴がここで、
LISP 書ける奴が本スレ、という住み分けがいいなぁ。
- >>98
そんな住み分けなんてできてないし、
lisp書けないやつが答えるスレがこっち
じゃないのか
- C-s ^ すると
>CALL STACK 5: (system:*byte-code ...)
>CALL STACK 4: (editor::pickup-pattern-set #S(editor::pickup-pattern-item pattern "^" name nil foreground :default background :default bold :default underline :default strike-out :default regexp t) t t)
>CALL STACK 3: (system:*byte-code ...)
>CALL STACK 2: (#<lexical-closure: isearch-forward>)
>CALL STACK 1: (command-execute isearch-forward)
Quit
でした
- >>98
今までも「住み分けしよーぜ」と言う話はあったけど、結局ぐだぐだになってるんだよね。
質問する側は、その問題の解決に lisp が必要かどうかもわからないことが多いのに対し、
答える側はこっちのスレでも気にせず lisp コードを貼り付けるわけで。
で、それにつられて lisp に関する質問がこっちのスレでも増える、と。
- んじゃ、テンプレにlispコードのレス禁止とか。
流量が多いわけでも無し、そもそも住み分けの必要性を感じないけど。
- 数行の Lisp で解決できることをわざわざ本スレに誘導するのは馬鹿っぽいと思うのだが。
もちろんコードだけ書くとかはどうかと思うけど。
使い分けはどっちかって言うと質問する側の Lisp に対する態度に依るんじゃね?
- つられてlispに関する質問をするな、ということ。
- オレのかわりにlisp書いて、という書き込みがスレ違いだということ。
- lisp の質問をするのはいいと思うけど、
何かの質問に対して「lisp 書けば」という回答は
ここでは相応しくないと思うのです(分からぬやしのスレなので)。
親切な人はそこで lisp を書くなり、別の方法を提示するなり、
スルーすればいいと思いました。
- 「Lisp 書けば」って、要は回答する側が乗り気じゃないってことでしょ?
Lisp 書かなきゃダメそうだけど、めんどくさいとか時間がないとか。
それでも一応 Lisp を書けば解決できそうだという情報は提示してる。
それとも、分からぬやしに対して突き放しすぎなのが問題?
- なにいったところで、基本は、なくて欲しいものは、自分でつくれ。だよ。
残りは、善意に甘えさせてもらうか、だね。
- 統合しちゃえば?
- それがいいよね。
- www-searchのツールバーのボタンを押すと
「初期化されていないメニューです」とエラーが出るんですが
何が悪いんでしょうか。
- 2, 3 スレ前は親切な lisp 書きが多かったけど、
最近はイヤ〜な奴が増えたなぁ。
- そうか? ざっとこのスレ見たけど大体の質問には答えてるようだけど。
誰か移植してください、はともかくとして。
- shell3 で、"bash -i"と設定し、
bashを使おうとしているのですが、
なぜかヒストリーと補完が使用できません。
一応、shell modeのプロンプトはbash-3.00$と表記されます。
cygwinでは使えるのに、
対策をご存知の方、
いらっしゃいましたら教えて頂けないでしょうか?
- これまで通りなぁなぁで良いじゃないか。
>>111
www-search使ってないから勘だけど、
siteinit.lにメニューがらみの設定してない?
もしそうなら.xyzzyに移せば直るかも。
>>114
lispを書けば(ry
冗談はおいといて、shell3てのがある。
http://xyzzy.s53.xrea.com/wiki/index.php?QuickTour%2Fext%2Fshell3
- xyzzyをソースレベルで改造して使ってる人っているの?
- >>116
過去にそんな書き込みあったね。
多色印刷をできるようにしました、っていうのがあったけど
そのときは再配布はまずいだろうということで公開しなかったと思う。
そろそろ、そういうのも公開してもらえないかなぁ・・・
ところで今、亀井さんに機能追加お願いメールを出しているんだけど、
忙しいのか、読んでないのか、実装中なのか。とにかく返事が返って
こないのでしょんぼり中。
Windowsプログラミング知らないんだけど、自分で xyzzy をコンパイル
してみる所から始めようかとも思う。
どこかにコンパイルする手順って載っているところあったっけ?
- >>114
ttp://hie.s64.xrea.com/xyzzy/ml/msg08605.html
- ttrem.l+cygtermで1年ぐらい使ってるけど快適だよ
navi2chとscreenも入れればxyyzy内で暮らしていける
- >>116
かな入力状態でも Alt + ... を効くようにしてる(というか Alt + タ
が来たらAlt + q に変換させるようにしている)。
>>117
自分は上のパッチを送ったが、なんの音沙汰もなし。おそらく自
分のコードがへちょかったのだろう…('A`)
- >>115
>>118
>>119
レスありがとっす。
現在、cygtermをmakeできる環境を構築中
まだ終りません。
- >>121
つttp://cygwin-je.sourceforge.jp/cygwin_je/release/cygterm/
- よく使う特定のディレクトリを別名で指定することってできますか?
例えばデスクトップにファイルを保存したい時
$desktop = c:/Documen~/username/デスクトップ
として、ファイルを開く時に $desktop/foobar.txt で開けるようしたいです。
- >>123
>>123
自分は、よく使うディレクトリをキーに割り当ててる。
x-key-macro も使っているので、 wikiから持ってきておいて、下のコードを追加。
;;-----------------------------------------------------------
;;.. minibuffer で補完時に固定文字列挿入
;; C-x C-f (ファイルを開く)時などにショートカットで固定文字列を挿入
;例では C-x C-f のときさらに C-s で ~xyzzy/site-lisp/ を挿入
;;... その他のディレクトリを設定
(defmacro set-dir-shortcut (key dir funname &optional (msg "") dir2 shift-key-funname (msg2 ""))
"ミニバッファでキーにディレクトリを割り当て."
`(when ,dir
(defun ,(intern funname) () (interactive "*") ,msg
(replace-directory-path-only ,dir))
,(if (and dir2 shift-key-funname)
`(progn
(defun ,(intern shift-key-funname) () (interactive "*") ,msg2
(replace-directory-path-only ,dir2))
(define-key minibuffer-local-completion-map ,key
(x-key-macro 16 (intern ,funname) (intern ,shift-key-funname)))
;(define-key minibuffer-local-map ,key (x-key-macro 16 ',(intern funname) ',(intern shift-key-funname))
;(define-key minibuffer-local-must-match-map ,key (x-key-macro 16 ',(intern funname) ',(intern shift-key-funname))))
)
- C直下にデスクトップへのショートカットを置くのじゃダメか?
- `(progn
(define-key minibuffer-local-completion-map ,key ',(intern funname))
;(define-key minibuffer-local-map ,key ',(intern funname))
;(define-key minibuffer-local-must-match-map ,key ',(intern funname))
))))
;;... directory settings
(set-dir-shortcut #\C-\; (si:system-root) "@ home directory ")
(set-dir-shortcut #\C-\l "c:/Documen~/username/デスクトップ" "@ desktop ")
でどのキーに割り当てたか忘れるので、popup-mode-memo を導入して、次のようにも設定している。
(define-key minibuffer-local-map #\C-\F12 'popup-mode-memo)
(define-key minibuffer-local-completion-map #\C-\F12 'popup-mode-memo)
(define-key minibuffer-local-command-line-map #\C-\F12 'popup-mode-memo)
(define-key minibuffer-local-must-match-map #\C-\F12 'popup-mode-memo)
- ミニバッファのabbrev設定すればいいだけじゃん、
とか思ってやってみたがまったくだめだったorz
- こんな感じかな
(defvar *my-directory-list*
`(
("site-lisp(&S)" . ,(append-trail-slash (merge-pathnames "site-lisp" (si:system-root))))
("lisp(&L)" . ,(append-trail-slash (merge-pathnames "lisp" (si:system-root))))
("desktop(&D)" . ,(append-trail-slash (map-backslash-to-slash (get-special-folder-location :desktop))))
))
(defun my-insert-directory-menu ()
(interactive)
(if *my-directory-list*
(let ((menu (create-popup-menu)))
(dolist (l *my-directory-list*)
(let ((menu-item (car l))
(dir (cdr l)))
(add-menu-item menu nil menu-item
#'(lambda ()
(interactive)
(my-insert-directory dir)))))
(track-popup-menu menu))
(plain-error "ディレクトリが設定されていません")))
(defun my-insert-directory (dir)
(interactive)
(delete-region (point-min) (point-max))
(insert dir))
(define-key minibuffer-local-map #\M-d 'my-insert-directory-menu)
(define-key minibuffer-local-command-line-map #\M-d 'my-insert-directory-menu)
(define-key minibuffer-local-completion-map #\M-d 'my-insert-directory-menu)
(define-key minibuffer-local-must-match-map #\M-d 'my-insert-directory-menu)
lisp 書くと怒られるのかな
- >>125
ショートカットだとなぜかファイラが認識しない…と思ったら
ファイルタイプが*.lnkになってアイコンがフォルダじゃないだけなのね。
ただしミニバッファからfind-fileする場合
C:/hoge.lnk
な状態で
C:/hoge.link/fuga.txt
みたくしても読んでくれないな。(ファイラならOK)
Windowsの仕様か…
- あなた達はなぜ普通に Emacs を使わないのでしょうか?
- 私たちには Emacs よりも xyzzy が使いやすいからです。
- >>122
cygtermのmakeが出来なくて、
諦めそうにになったときに、
バイナリーを差しだしてくれるなんて、
ありがたいっす。
現在、設定が終り、
Bash上で補完と履歴を味わっています。
うーん、便利。
- あなたはなぜ普通ではない Emacs を使うのでしょうか。
- みんなへ
この程度のことも分からない頭の人が
説明を受けても理解できるはずがないので説明不要です。
- 失礼な質問合戦が失礼なよびかけで終結しましたね。
めでたしめでたし。
- diff-buffer.lを使いたいんだが見つからない。
どうしたらいい?
- my-buffer-bar-context-menu.l
で代用するか自分で作るしかないかな
- >>124>>126
せっかく書いてもらったのに
wikiが落ちててx-key-macroが使えないので試せません…。
申し訳ないです
>>128
おおうっ、こんな事もできるんですね!
早速使わせてもらってます。
ありがとうございます!
- >>137
わかった、自作に挑戦してみるさ。
- 正規表現について質問なんですが、
秀丸の\fみたいな後方参照を区切る書式ってない?
- >>140
もちっと詳しく。
秀丸の〜とか言われても使ったことないからわからん。
具体例plz
- >>140
カッコでやるしかないんじゃないかな。
- >>141
すまそ
afd[HOGE]dsfe
みたいに、[HOGE]を挟んで先頭、末尾それぞれが1文字以上含んでいるときに
.+\f\[\fHOGE\f\].+ <-検索文字列
Start\0\2 <-置換後
てやって
StartafdHOGE
のように一部文字の削除、挿入をやりたいんだが、\fにあたる部分が分からなかった。
仕方ないので正規表現の時は他のエディタ使ってるんですが、xyzzy一本でできないかと疑問に思ったので。
- >>143
>>142
- >>142,144
なんとか出来ました、これでxyzzy一本でいけそうです。
有難うございました。
- howm-wrapのaction-lockを便利に使わせてもらっています
質問ですがhowm-init.lに
(setq action-lock-default-rules
(cons (action-lock-switch
(adjoin "abs/"
(directory
(default-directory)
:absolute t :file-only t :recursive nil
)))
action-lock-default-rules))
としてもカレントバッファのパスじゃなくて、~/のパスしか返ってきません。
同じバッファでdefault-directoryをevalするとカレントバッファのパス
が返ってきます。なぜ?
- >>146
それを実行しているバッファと、カレントバッファが違うとか?
- (setq action-lock-default-rules
(cons '("abs/" (lambda (&optional dummy)
(delete-region (match-beginning 0)
(match-end 0))
(insert default-directory)))
action-lock-default-rules))
- いつの間にかC-x C-fをしたらファイラが起動するようになってしまった。
.xyzzy にも siteinit.l にも open-filerに関する記述を書いてないのに。
おまけに直ったと思ったら今度はhtmlがC-x C-fで開けなくなった。
もはや意味不明。
- kamail v3で返信がうまくいかない。
bad addrと出て送信が失敗する。どうしたものか
- >>150
"hoge.huga"@hoge.com
なんて風にくくってもダメ?というかどういうメアドで失敗するのか
例を出すと答えが分かる人が出てくるかも
- バイトコンパイルってxyzzyの状態によって動作が変わるもんなんですか?
例えばtest.lに以下を書いて
(add-hook 'ed::*view-mode-hook*
'(lambda () (define-key ed::*view-mode-map* #\q 'hoge)))
バイトコンパイルしtest.lcの中身を見ると
(add-hook 'editor::*view-mode-hook*
'(lambda nil (define-key editor::*view-mode-map* #\q 'hoge)))
ってなりますが、バイトコンパイル前に M-x view-mode としてからバイトコンパイルすると
(add-hook '*view-mode-hook*
'(lambda nil (define-key *view-mode-map* #\q 'kill-buffer)))
というふうに、ed::の部分が消えてしまいます。
他にもxyzzyの状態によって書きかわってしまうことってありますか?
また、今は新規にxyzzyを起動してからバイトコンパイルして回避していますが、
それ以外に回避する方法ってありますか?
- すいません
最後のkill-bufferのところは他と同様hogeとして読んでください
- >>152
バイトコンパイル時に read してるみたいだから(compile.l の l.225)
影響が出るのは仕方ないような。
他で影響するのはマクロ呼び出しかな。
コンパイル時に定義されていれば展開される。
- >>152
パッケージ修飾子をつけるんじゃなくて
(in-package "editor")の後に続くように書くというのが
一般的な回避法。
(eval-when (:compile-toplevel :load-toplevel :execute)
(require "viewmode"))
な感じでバイトコンパイル時にロードさせるという方法でも
大丈夫のはず。やったことないけど。
- >>154
なるほど仕方ないっぽいですね。
>>155
他のパッケージを使用中のためed::と修飾子つけるので
in-pacakgeは使えなさそうです。
requireだとauto-loadしてる場合意味がなくなっちゃいますよね。
とりあえず、新規xyzzyを立ち上げてコンパイルして回避していこうと思います。
マクロのことも覚えておきたいと思います。ありがとうございました。
- ed:: つけるんじゃなくて (intern "*view-mode-hook*" "ed") みたいにすると
add-hook の場合は回避できそう。
ただし特殊形式に渡したい場合は使えないからいまいちかも。
- ほんとだ。siteinit.l に書いた
(add-hook 'ed::*lisp-mode-hook* ...
は siteinit.lc では
(add-hook '*lisp-mode-hook* ...
となってた。
compile.l をみると add-hook の時に
*package*(実行中のパッケージの値)がうまく取得できていないから
起こるバグのような気がするんだけどどうなんだろう。
- >>156
> requireだとauto-loadしてる場合意味がなくなっちゃいますよね。
そうかな?
test.lをいつロードするかに依存するだけで、
必要なときにロードされるという意味ではautoloadと似たようなもんという感覚なんだけど。
ロードするのは大げさということなら同意。
他のパッケージを使用中ということなら、
そのパッケージがeditorパッケージをuseしている場合は
exportを先に済ませればよさそうな気がする。
useしていない場合はimportを使うのかな。
- >>152 からの話題は本スレ向けな気がするが、それはさておき。
結局 export されたシンボルをパッケージ名なしで使える
というのが裏目に出ちゃうって事だろうから、
パッケージを強制するという意味なら >>157 のやり方が一番確実な気はするけど、
> ただし特殊形式に渡したい場合は使えないからいまいちかも。
この辺よくわからないので教えて欲しい。
- >>160
> > ただし特殊形式に渡したい場合は使えないからいまいちかも。
> この辺よくわからないので教えて欲しい。
(setq (intern ...) t) みたいなのは書けないってこと。
setq-default とかもだけど、それは set, set-default を使えばいいから
考えてみたらたいした問題ではないかもしれない。
pushnew あたりが使いたいこともたまにあるかもしれないけど、
defsetf を使えば何とかなるのかな?
- 2ch-modeをメニューから立ち上げる方法はないでしょうか?
ttp://hie.s64.xrea.com/xyzzy/note/menu.html
ttp://homepage2.nifty.com/crayon/xyzzy-index.htm
などを見て試してみたのですが、うまく行きませんでした。
どなたかご教授いただければ幸いです。
宜しくお願いします。
- >>162
こんなかんじかなぁ。
(add-hook '*init-app-menus-hook*
#'(lambda ()
(add-popup-menu *app-menu*
(define-popup-menu
(:item nil "2ch-mode (&2)..." '2ch)
(:item nil "www-mode (&w)..." 'www)
)
"MyMenu (&M)")))
- >>163
できました。
本当にありがとうございました!
感謝感謝です。
- いつの間にかxyzzyでタグ打ってる人の数→スレがなくなってる。。
どなかたdatください
うっかりweb制作フォルダ捨てちった。。
- つ にくちゃんねる
- それがにくちゃんねるにないんですよ
みみずんでも途中までのログしかないし。。。
- >>165
自分が持ってるやつをWikiにあげときました。
- xyzzyの解説本が出てるらしいんですけど評判はどうでしょうか
- 素晴らしいの一言だと思いますが
- 英語版のバイナリ配布っていつから始まったの?
- >>168
サンクス!
- >>171
どこにある?
- migemoの辞書が、上のやり方だと読み込めなくて下だと大丈夫です。
~と表記するのはあきらめるしかないですかね。
(setq *migemo-dict-file* "~/migemo/dict_sjis/migemo-dict")
(setq *migemo-dict-file* "f:/home/migemo/dict_sjis/migemo-dict")
- 追記。
環境変数は設定済み。
- >>174
試してないけど。
(setq *migemo-dict-file* (merge-pathnames "migemo-dict" "~/migemo/dict_sjis"))
- >175
出来ました。どうもありがとうございます。
- 一度xyzzyを使っていて、OS(XP)を再インストールしたので環境変数の設定をしたところ、
「バイトコードが壊れています」というエラーがでてxyzzyが起動することができませんでした。
再インストール前と同じ場所を指定しており、.xyzzyも変更していないのですが、
どの辺りに原因があるのでしょうか?
環境変数を設定せずに起動した場合は問題なく起動できました。
iniファイルでの[init]homeDirによる設定でも同じ
エラーで落ちてしまいます。
- xyzzy.wxp を削除してから起動したらどうなる?
- grepみたいな感じでファイル検索って出来ますか?
ファイラー使えば出来るっぽいですけど・・・
- M-x から、grep-dialog
デフォルトではキーバインドは無しらしい
- >>179
削除してみたら
「/xyzzy/site-lisp/php-mode.lc: 19: 不正な文字です」
というエラーが出てしまったので、php-modeをロードしている箇所をコメントアウトして
同じように起動してみましたが、今度は先述の「バイトエラー〜」がでてしまうようになりました。
もうちょっと色々試してみます。
- >>181
書き方が悪かったですね・・・
GREPみたいな表示のさせ方で、*.xlsとか、ファイルを探す方法です。
- >>183
外部プログラムと連携させれば可能。
- >>183
拡張子が xls のファイルをざっと出すって言うだけなら、
directory 使うか、 ファイラーのコマンドを ファイラーを介さずに
呼び出せばいいだけじゃないの。
まぁ自分で作る気はなさそうなので、これ以上は言わないけど。
- outline-tree2でoutline-treeの終了にキーバインドを割り当てたいんですけど
どんな関数よんだらいいんでしょうか?
ちょくちょくC-RETを押してしまってoutline-treeがうざったいんですよね
- >186
outline-tree2::outline-tree-delete
かな。
- すいません、あらかじめ設定した色設定を切り替えることってできますか?
chiniっていうlispでできるかなと思ったんですが、再起動が必要みたいでした。
再起動なしで色設定の読み込みは出来ないのでしょうか?
- chcolor.lかな
- >>189
ありがとうございます。
これでうまく切り替えができそうです。
- >>186
(defun toggle-outline-tree ()
"outline-tree: アウトラインツリーのトグル"
(interactive)
(if (outline-tree-exist-p)
(outline-tree-delete)
(progn
(outline-tree-create)
)))
(global-set-key '(#\C-c #\C-o) 'toggle-outline-tree)
こんなのを .outline-tree/config.l に書いておくとか。
- >>185
目的はそんな感じです。
ファイラーコマンドは、ファイラを起動させてないとエラーが出たので・・・
directoryは良く分からないので、今から調べてみます。
- >191
outline-tree.lにoutline-tree-toggle()ていうそのものずばりのがあった。
- chcolor.lなんですが再起動すると元の設定に戻ってしまいます。
これを再起動しても設定を維持させるにはどうすればいいでしょうか?
- (defun test ()
(interactive)
(save-excursion
(set-mark)))
これ、マークが動いちゃうんですけど、どっか間違ってますか?
- 2ch の過去ログを 2ch-mode で読もうとするときにエラーが出てしまいます
もう2chには残ってなく, 過去ログ倉庫にはまだないログを
いろんな過去ログ保管庫から落としてきて, HTML形式からDATに変換
(htmltodat ( http://mukiyu.hp.infoseek.co.jp/ ) を使用)
M-x 2ch::thread-open-local-dat で読めるまではわかったのですが,
毎回指定するのはめんどうなので, 追っかけスレに追加しました.
でも, 追っかけスレ一覧から開こうとすると,
"Socket error .... Host not found" とエラーになって開けません.
「スレを過去ログにする」にしても同じでした.
どうすれば追っかけスレ一覧から読めるのでしょうか.
- >>195
動くのが普通の動作だよ
- >>196
自分がやった方法です。
たとえば、xyzzy part10が欲しいなら
ttp://makimo.to/cgi-bin/html2dat/html2dat.cgi?pc5_win/1067/1067394259.html
からコピーしてきて、~/.2ch/pc5.2ch.net/win/kako/1067/10673/1067394259.datに保存。
~/.2ch/tracking/追加したいグループ名.txtを開いて
("" "pc5.2ch.net" "/win/" "1067394259.html" "xyzzy Part10" "1001")
を追加。…もっと簡単な方法がないものか。
- php-modeでswitch文書くと
オートインデントがおかしくなるのはなぜ?仕様?
たとえばこんな感じ
switch($a) {
case 1:
$result = "1です";
case 2:
$result = "2です";
default:
$result = "でふぉると";
}
caseの部分がかっこからはみ出してしまう。
- >>199
switchなんか使うなという神からのお達し。
もしくは単なるバグ。
もしくは、お前が直せという暗黒神さまの御命令。
- >>200
3番目ととらえてがんがってみる。
- >>201
連投スマソ。自己解決。
ttp://www.jsdlab.co.jp/~kei/xyzzy/xyzzy2.html#c_indent
- >>198 ありがとうございます
ローカルdat を追っかけスレに追加すると, ドメインのデータが入らないのが
いけないんですね
> を追加。…もっと簡単な方法がないものか。
たしかにめんどうですね. 自動処理できないかと思ったんですが, DATファイルって
ドメインやスレタイトルのデータはついてないので, 少なくともそのへんは
手作業で追加してやらなればいけなそうですね
- perlでヒアドキュメントを使った場合のインデントってperl-modeじゃやってくれないんですがどうにかならないでしょうか
- >>204
ヒアドキュメントを使わない。
xyzzyを使わない。
perl-modeを自分で何とかする。
さあ、好きな方法を選べ。
- どなたかpov-rayモードお持ちじゃないですか?
- なんか本スレ並みに殺伐とした意見がw
kamail v3 Toを編集出来ないのがつらい。追加ばかりじゃなくて、
間違えたら変更出来るようにならないかな
- >>206
ぐぐれカス!
ttp://chez-sugi.net/xyzzy/000953.html
- >>206
悪かったorz
無いんだな。
- outline treeを使わせてもらっているんですが
Tree表示部をUTF8に変更することはできますか?
ハングルや中国語を表示させたいのです…。
- >209 御親切にありがとうございます。
実はchez sugiさんのところで
pov-mode.lzhをダウンロードしたのですが
書庫ではなく中味は空っぽでした
それでお尋ねしたのですが。
- たびたびスイマセン
pov-mode.el使います。
お騒がせしました。
- >>207
dで消してもっかい入力じゃだめ?
- >213
送り先が一つなら問題ないけど、山ほどあるときはちょっと不便です
- ttp://cl-www.msi.co.jp/solutions/knowledge/lisp-world/phtml/#parse_from_url
これおもし(ry
- コメントとキーワードの背景色を設定したいのですが無理ですか?
- Tab幅を32以上に設定することはできませんか?
何でそんな意味わからない設定にしたいかというと
単語 word
みたいな感じで単語帳を作ろうとしていて
この単語とwordの間のスペースをTab一発で入れたいんです
希望のTab幅は80程度です
何かいい解決策はないでしょうか?
- csv-modeのダイアログで単語を入力しておいて、HTML変換、好みのスタイルをあてる
じゃ駄目なの?
-
(defun tangocho-mode ()
(interactive)
(text-mode)
(local-set-key #\TAB 〜〜〜))
- >>217
> 何かいい解決策はないでしょうか?
ようはwordが80桁で揃えばいいんでしょ。
こんな。
(setq *tab-stop-list* '(80))
(define-key *text-mode-map* #\TAB 'tab-to-tab-stop)
- >>218
できれば編集中も距離をおいておきたいのです
>>219
〜〜〜の部分はどう入力すればいいんでしょうか…?
\t '(#\TAB #\TAB) "\t\t"等を試してみたのですが動きません
- >>220
書き込み前に更新してませんでした…。
希望どおりの動作です
ありがとうございます!
text-mode全体に影響があるので
tangocho-modeの時だけ変えるように調べてみます
- できましたー!
レスくれた>>218-220さんありがとうございました!
;単語帳mode
(defun tangocho-mode ()
(interactive)
(setq *tab-stop-list* '(64))
(local-set-key #\TAB 'tab-to-tab-stop))
- ここにあるpopwindow.lの使い方がよく分からないんですが、、
どなたか英和を表示させるサンプルを書いてくれませんか?
http://xyzzy.s53.xrea.com/wiki/index.php?Memo%2Fdictionary
- >>224
(pop-window-pop "英和")
- *scratch*を、終了時に保存、起動時に復元してよろこんでいました。
ある日、*scratch*をtext-modeにしたく思いました。
そこで、(setq *initial-buffer-mode* 'text-mode) という方法を学んだのですが、
これだと、終了時に「一個のバッファが変更されています・・・」
と出てしまいます。
このダイアログを出さないようにして、
起動時に*scratch*をtext-modeにしておく方法はないでしょうか。
- (setq *initial-buffer-mode* '(lambda ()
(text-mode)
(setq need-not-save t)))
とかかな
- skkで複数の辞書を使うにはどうしたらいいでしょうか
.skkはこのようになっています。
(setq *skk-large-jisyo* "C:/Program Files/xyzzy/skk/SKK-JISYO.L")
;(setq *skk-large-jisyo* "C:/Program Files/xyzzy/skk/SKK-JISYO.assoc")
;(setq *skk-large-jisyo* "C:/Program Files/xyzzy/skk/SKK-JISYO.edict")
;(setq *skk-large-jisyo* "C:/Program Files/xyzzy/skk/SKK-JISYO.itaiji")
skk.lの追加の記述がわかりません。
よろしくお願いします。
- >>227
できましたー(゚∀゚)
lambdaとneed-not-save使うのかー勉強になりました
- >>228
*skk-search-prog-list*を書き換えるんじゃないですか?
- ながれぶった切って恐縮ですが教えてください。
WikiにUSBメモリで使う方法が載っていますが、
XYZZYHOMEを環境変数に書き込まない方法(iniの編集)で使う
envlnc.exeってどこにありますか?
コメント欄で跡で削除、みたいな書き方がされていますが、
現状、環境変数に書き込まないで使うのは不可能なのでしょうか?
- 一応↓がWikiの該当ページです。よろしくお願いします。
ttp://xyzzy.s53.xrea.com/qanda/wiki.cgi?p=78dbc46f4a9c775126b61823e56d7998
- >>231
おれは、xyzzy.bat作ってやってる
@echo off
set XYZZYHOME=なんとか
start xyzzy.exe
- http://xyzzy.s53.xrea.com/wiki/index.php?plugin=attach&pcmd=info&file=envlnc.lzh&refer=QandA%20%A4%CB%A5%C4%A5%C3%A5%B3%A5%DF%A4%F2%C6%FE%A4%EC%A4%EB%2F3
- >>233-234
ありがとうございます!
おかげさまで設定・起動できました。
そこまで神経質になることでもないけど
他のエディタ同様、シングルユーザで使う限りは
環境変数を設定せずとも使えるバージョンも需要高いように思います。
- 環境変数でなくiniファイルに設定する方法はありますが。
ttp://xyzzy.s53.xrea.com/qanda/wiki.cgi?p=09283155e06c95cba0b8fc8d89c455db
それとこれも。
ttp://blog.2310.net/contents/individual/000047.php
- >.236
なんと!
不勉強ですいません。
下のリンクの方、まさしく求めていた仕様です。
これでネカフェでも気にせず利用できます。
どうもありがとうございました。
- >>236
下のリンク取り込んでほしいなー
- >>230
この部分ですよね?
いろいろ試してみたんですけどダメでした。
251行目
(defvar *skk-search-prog-list*
'(
(j-search-kakutei-jisyo-file *skk-kakutei-jisyo* 10000 t)
(j-search-jisyo-file *skk-initial-search-jisyo* 10000 t)
(j-search-jisyo-file *skk-jisyo* 0 t)
(j-okuri-search)
(j-search-jisyo-file *skk-large-jisyo* 10000)
*(j-search-jisyo-file *skk-large-jisyo* "~/skk/SKK-JISYO.L")
*(j-search-jisyo-file *skk-large-jisyo* "~/skk/SKK-JISYO.assoc")
(j-search-server *skk-aux-large-jisyo* 10000)
)
*書き足した部分です。
単独だと切りかえても読み込みますが。
不正なデータ型です。"/skk/SKK-JISYO.assoc":real
のエラーがでます。
Meadowの解説ページでは
(setq skk-search-prog-list
'((skk-search-kakutei-jisyo-file skk-kakutei-jisyo 10000 t)
(skk-search-jisyo-file skk-initial-search-jisyo 10000 t)
(skk-search-jisyo-file skk-jisyo 0 t)
(skk-search-jisyo-file skk-large-jisyo 10000)
*(skk-search-jisyo-file "~/dic/SKK-JISYO.2ch" 10000)
))
*足す部分
どこが間違っているのでしょうか?
- >>239
*skk-large-jisyo*にSKK-JISYO.Lが設定してあるとして、
たとえばこんな感じでどうでしょう。
(setq *skk-search-prog-list*
'((j-search-kakutei-jisyo-file *skk-kakutei-jisyo* 10000 t)
(j-search-jisyo-file *skk-initial-search-jisyo* 10000 t)
(j-search-jisyo-file *skk-jisyo* 0 t)
(j-okuri-search)
(j-search-jisyo-file *skk-large-jisyo* 10000)
(j-search-jisyo-file "~/skk/SKK-JISYO.assoc" 10000) ;; <-
(j-search-server *skk-aux-large-jisyo* 10000)))
- >>240
うまくいきました。
5時間程試行錯誤で
諦めて合体を試みるところでした。
ありがとうございました。
- xml-mode で guess-tag を設定したい壇けどどうやればいいの?
- >242
xhtml-guess-list ならサンプルを提示できるけど
- >>243
どうも。 xhtml の場合だと、そういう変数が用意されているし、 html+-mode
にもあったけど、 素の xml-mode だと見つからなかったんで質問したんですよね。
でも *xml-doctypes* のとこに書いてありました。
ありがとうございました。
- 新規作成をCtrl+Nに割り当てたいんだけど、どうかけばいいんでしょ。
- (global-set-key #\C-n 'new-file)
これか。
.xyzzyに書いてあったのに、なぜかコメントアウトされてたw
- すみませんが、ちょっと教えてください。
しばらくxyzzyを使っているのですが、今一戸惑っている点が一つ。
最近使ったファイル、検索や置換などの「履歴」を「保存しない」、
もしくは「終了時に履歴を自動消去」する事はできないでしょうか?
esc,esc…云々以外に何か良い方法があればご教示願いたく。
- >>247
> 最近使ったファイル、検索や置換などの「履歴」を「保存しない」、
> もしくは「終了時に履歴を自動消去」する事はできないでしょうか?
[共通設定]→[いろいろ]の「保存するヒストリの個数」を0にするでいけるのでは。
試してないけど。
- >>248
どうもありがとうございます。
- >>247
結果的には同じなのかもしれないだけど、一応そういうための変数として
*minibuffer-enable-add-to-menu* があって、
(setq *minibuffer-enable-add-to-menu* nil)
とすれば保存しなくなる。
- c++(cpp)のインデントがうまくいかなくて困ってる。.xyzzyには以下のように記述してあるんだけど、
タブ幅が2文字分にしかならない・・・orz(ちなみに、cだとちゃんと4文字幅のタブになってる)
(define-key ed::*c-mode-map* #\tab 'self-insert-command)
(define-key ed::*c++-mode-map* #\tab 'self-insert-command)
(setq *c-tab-always-indent* nil)
(setq *c-indent-tabs-mode* t)
(setq *c-comment-c++-style* t)
(setq *c++-tab-always-indent* nil)
(setq *c++-indent-tabs-mode* t)
(setq c-indent-level 4)
(setq c-continued-statement-offset 4)
(setq c-argdecl-indent 4)
(setq c-brace-offset -4)
(setq c-brace-imaginary-offset 0)
(setq c-label-offset -4)
(setq c++-indent-level 4)
(setq c++-continued-statement-offset 4)
(setq c++-argdecl-indent 4)
(setq c++-brace-offset -4)
(setq c++-brace-imaginary-offset 0)
(setq c++-label-offset -4)
\→半角バックスラッシュ(半角¥)
ちゃんとxyzzy.wxpを削除して再起動しなおしてるんだけど・・・
何か足りないor間違ってるところあるのかな? それとも仕様?
(検索するにも.xyzzyだとxyzzyでしかヒットしなくて途方に・・・)
- >>251
俺はこれを.xyzzyに書いて4文字幅のタブにしてる。どこから拾ったかは忘れた。
;; TAB だぁー! TAB 持ってこいー!
(setq *c-indent-tabs-mode* t)
(setq c-indent-level 4)
(add-hook '*c-mode-hook #'(lambda () (set-tab-columns 4 (selected-buffer))))
(setq *c++-indent-tabs-mode* t)
(setq c++-indent-level 4)
(add-hook '*c++-mode-hook* #'(lambda () (set-tab-columns 4 (selected-buffer))))
(setq c++-continued-statement-offset 0)
(setq c++-label-offset -4)
- みんな ed:: が必要なんでないの?
- exportされているから良いんでない。
ちなみに*c-mode-hook*ね。
- 結局、siteinit.lに各インデント記述して、
バイトコンパイルしなおしたらできました。
.xyzzyだけじゃだめなのか・・・
- どういうことなのか、よくわからんな
もしかして .xyzzy.lc が存在してたとか?
- >>255
.xyzzyをHOMEディレクトリにおいてないんじゃないか。
- 異なるモードで共通のインデント幅を使用している場合に
各々のモードでのインデント幅を変更するには
どうしたらいいんでしょうか?
たとえばc-modeとphp-modeではともに
c-indent-levelを使用してますが、
これをc-modeでは4に、php-modeでは2に
という具合です。
- (add-hook 'hoge-mode '(lambda ()
(make-local-variable 'c-indent-level)
(setq c-indent-level 4))
- >>259
なるほど、勉強になります。
- 上下のカーソル移動を
表示行単位にするのって
ある?
- >>261
(global-set-key #\hogehoge 'previous-virtual-line)
(global-set-key #\hogehoge 'next-virtual-line)
ってこと?
- バッファ一覧をメニューバーに追加するスクリプト、どなたかご存知ないですか。
- コンテキストメニューでよければ bufmenu.l 。
これを適当に改造したらメニューバーに出せるのではないでしょうか。
- ども。
>>210
> outline treeを使わせてもらっているんですが
> Tree表示部をUTF8に変更することはできますか?
> ハングルや中国語を表示させたいのです…。
(require "treeview/setup")
(require "treeview/unicode")
を試してみてください。
うまくいった/いかないなども教えていただければ。
- >>265
レスありがとうございます。
早速、試してみました。
はじめ豆腐が出てきてしまったので
"Microsoft Sans Serif"にフォント変更したら上手く行きました。
中国簡体、ハングル、キリル、ウムラウトの4つで確認しました。
シェシェ!カムサハムニダ!スパシーバ!ダンケシェーン!
- 特に何もしてないんですが
ファイルが見つかりません: "junk/http"
というエラーがでて起動できなくなってしまいました。
誰か理由の分かる人いますか?
- junk/httpを求められてるのになにもしてないわけがない。
Netinstallerで今まで入れたものの設定見直してみれ。
特にJunk Scriptsからいただいてきたものあたり。
- >>268
どうやらrss-modeがおかしくなっていたようです。
どうもありがとうございました。
- win版のスレが880でdat落ちしちゃった
pc8全体がなんかおかしいらしい
とりあえず保守
- ん? 普通に881が書き込まれてるようだが
- ありゃ、復帰してるね
さっきはひどかったんだ、のきなみdat落ち(に見えた)
- タブをBackspaceで消そうとすると半角スペースになって
空白分Backspace押す羽目になるんですが
一発でタブを消せるようにする方法って内でしょうか?
- >>273
lisp-modeとかc-modeとかでのキーマップでのC-hのキーバインドを解除すればよい。
lispなら
(undefine-key *lisp-mode-map* #\C-h)
(undefine-key *lisp-interaction-mode-map* #\C-h)
c-modeなら
(undefine-key *c-mode-map* #\C-h)
*nantoka-mode-map*の名前はモードが書かれている.lファイルを覗いて探す。
あるいは↓みたいにすればたいていのモードでタブを丸ごと消せるようになる。
ただしこれは標準機能を書き換えてるので、ひょっとすると何かの副作用があるかも。
(defun ed::backward-delete-char-untabify-or-selection (&optional (n 1))
(interactive "*p")
(delete-backward-char-or-selection n))
- >>274
> (defun ed::backward-delete-char-untabify-or-selection (&optional (n 1))
> (interactive "*p")
> (delete-backward-char-or-selection n))
これはよくないでしょ。
(define-key hoge-map #\C-h 'delete-backward-char-or-selection) とか、
あと M-^ や C-a C-k とか場合に応じて使い分ける事でタイプ数は減らせると思う。
- ん?
- >>274
ありがとうございます
出来ました
- ちょっとわがままな希望なんですが、聞くだけ聞いてください。
現在、scratchを終了時に保存し、起動時に復元しています。
しかし、xyzzyか、OSが不正終了しないか、不安です。
そこで、保存操作(今は、#\C-Sでやってます)で、
scratchを終了時の保存のように上書き保存したいのですが、
どのようにしたらよいでしょうか。
- >>278
> そこで、保存操作(今は、#\C-Sでやってます)で、
> scratchを終了時の保存のように上書き保存したいのですが、
> どのようにしたらよいでしょうか。
ファイル名とかいろいろ不明でよく分かりませんが、
勘でこういうこと?
(add-hook '*after-save-buffer-hook*
#'(lambda ()
(save-excursion
(set-buffer (find-buffer "*scratch*"))
(write-file "~/scratch"))))
- なんか適当にやったらできちゃった
; C-Sでscratch保存
(define-key ed::*text-mode-map* '(#\C-s)
#'(lambda ()
(interactive)
(if (equal "*scratch*" (buffer-name (selected-buffer)))
(write-file "~/scratch")
(save-buffer-dialog))))
- >>279
手間かけました orz
- 2ch-mode で他BBS対応されているもののおかげで、まちBBSとかは見れるのですが
こちらのBBSが見れるようにはならないでしょうか?
http://jbbs.livedoor.jp/sports/20390/
非常に個人的な趣味のBBSで申し訳ないのですが、お詳しい方、よろしくお願いします…
- jbbs なら otherbbs でみれるでしょ?
- >>282
extra_board.txt に記述すれば見られるようになります。
extra_board.txt にコメントアウトされているものしか記述されていない場合、
("追加板群" (("ラーメン二郎" "jbbs.livedoor.jp" "/sports/" nil "20390")) nil)
と追記すれば追加板群カテゴリが現れてそこから見られるようになると思います。
- 右"Shift"を";"に割り当てるsticky-keyは慣れると非常に便利です。
(一回押しで"Shift"に,二回押しで";"になります。)
http://xyzzy.s53.xrea.com/wiki/index.php?cmd=read&page=tips%2Fsticky-shift
注 数字Key
*猫まねきのSandSも試してみましたが(SpaceにShiftを兼用させます)
同時押しがかなりつらいです。また
my-coloring.lが使えなくなります。
*猫まねき http://www.remus.dti.ne.jp/~kurotora/
そこでまたお願いがあります。
このsticky-Shiftをskk-modeでも使える様に
下記のコードを書き換えて貰いたいんですが。
お助け下さい。
(付け足す例)emacs
(eval-after-load "skk"
'(progn
(define-key skk-j-mode-map sticky-key sticky-map)
;(define-key skk-jisx0208-latin-mode-map sticky-key sticky-map)
;(define-key skk-abbrev-mode-map sticky-key sticky-map)))
;(eval-after-load "skk-isearch"
;'(define-key skk-isearch-mode-map sticky-key sticky-map))
21.2.6 Shift キーを使わずに大文字を入力したい
(参考) http://www.bookshelf.jp/soft/meadow_21.html#SEC200
- >>284
ありがとうございます。
extra_board.txt に、その一行を追加したところ、右側に『追加板群』という
表示はされたのですが、読もう(展開しようと)とすると
Status 404 のダイアログが表示されてしまいます…
何が悪いんでしょうか?
- >>285
eval-after-load は前にちょっとだけ考えたんだけど
あまりきれいな書き換えは思いつかなかったなあ
;; ここから
(load "skk")
(define-key skk-j-mode-map sticky-key sticky-map)
;(define-key skk-jisx0208-latin-mode-map sticky-key sticky-map)
;(define-key skk-abbrev-mode-map sticky-key sticky-map)))
;; ここまでを ~/site-lisp/sticky-skk.l あたりに保存
で、設定の "skk" を "sticky-skk" に書き換えるとか?
- >>285
確か、これ(http://xyzzy.s53.xrea.com/wiki/index.php?tips%2Fsticky-shift)と
励まし合え6の726とで出来たはず。
- >>288
出来ました。
これでMSIMEと訣別出来ます。
どなた様もありがとうございました。
- >>286
>右側に『追加板群』という表示はされたのですが
これは板一覧に [追加板群] という行が追加されたということですよね?
右側というのがわからないのですが…左側の間違いですか?
>読もう(展開しようと)とすると
というのは、
[追加板群]
と書かれた所で Enter を押したということですか?普通そこで
404 のダイヤログが出ることはないと思うのですが…
それとも、[追加板群] を押して、その下に現れた
ラーメン二郎
のところで Enter を押したら 404 のダイヤログが出たということ
ですか?その場合、>>282 に書かれている URL は Web ブラウザで
見られますか?自分の環境では問題なくスレ一覧が見られるので、
Web ブラウザでその URL が見られるにもかかわらず 2ch-mode で
見られないということはちょっと考え辛いのですが…。
それとも、手動で追っかけスレにスレを追加して、それを見ようと
していますか?その場合、extra_board.txt は存在してもしなくて
も関係ありません。追加した部分に誤りがないか確認してみてくだ
さい。
- (global-set-key #\F9 'describe-bindings)とかやっておいて、
M-xしてからF9を押すとミニバッファのバインドが出てくるわけですが、
ミニバッファを抜けてもM-x:てのが消えずに残ってしまいます。
xyzzyを再起動する以外に消す方法はないでしょうか。
(clear-minibuffer-message)ではだめでした。
- >>291
C-x o C-g とか?
- >292
消えた! どうもありがとうございます。
- outline-tree2でバッファを選択したときタイトルバーとバッファタブを
更新させたいのですが、そういう設定ってありますか?
なければどこかしらに(refresh-screen 1)を入れれば可能だと思うんですが、
どこに入れればいいのか見当もつきません。
もし、わかる方がいれば教えて下さい。
- >>290
丁寧なレス、感謝します。
> 右側というのがわからないのですが…左側の間違いですか?
ゴメンナサイ、左の間違いです…orz
> それとも、[追加板群] を押して、その下に現れた
> ラーメン二郎
> のところで Enter を押したら 404 のダイヤログが出たということ
そうです。紛らわしい書き方で申し訳ありません。
しかし、ブラウザでは普通に見れます。
proxy経由なのですが、これが何か関係しますでしょうか?
- >>295
すいません、ぼけてました。
例えば、
http://jbbs.livedoor.jp/bbs/read.cgi/sports/20390/1107847034/
に相当する dat ファイルは、
http://jbbs.livedoor.jp/bbs/rawmode.cgi/sports/20390/1107847034/
で見られます。下の URL はブラウザで見られますか?
proxy 経由と言われていますが、それはブラウザも 2ch-mode も両方
プロキシ経由でアクセスしているということでしょうか?
もしブラウザを使ってプロキシ経由で下の URL が見られる場合は、
2ch-mode もプロキシ経由で動作するように設定すれば見られるはずです。
逆に下の URL がプロキシ経由では見られないということなのであれば、
2ch-mode もそのプロキシ経由では見られないということになると思います。
ブラウザを使ってプロキシ経由で見られるが、2ch-mode で同じプロキシを
使うと見られない…ということになると、自分にはお手上げです…('A`)
- ご存知かもしれませんが、2ch-mode をプロキシを使用するようにするには、
; PROXY のホスト
(setq www::*www-proxy-host* "your.proxy.server")
; PROXY のポート
(setq www::*www-proxy-port* 8080)
みたいに config.l に追記すればOKなはずです。ただし、この場合、2ch-mode を
使用した後は www-mode もプロキシを使用する設定になり続けるので、
www-mode も単体で使っている場合は一応気をつけてください。
- >>296
ありがとうございます。
datファイルのURL、ブラウザで見れます。
2ch-modeで普通に2chやまちBBSは見れてるので、プロキシ設定は問題ないと思います。
以前教えていただいたextra_board.txtを書き換えるのでしょうか?
- >>298
ブラウザ+プロキシ接続でdatファイルのデータは読める
2ch-mode+プロキシ接続では見られない
ということですか?
ブラウザでアクセスできる同じ URL、同じプロキシサーバで
2ch-mode では接続できない…となると、ちょっと自分ではわからないです…すみません。
>以前教えていただいたextra_board.txtを書き換えるのでしょうか?
?
これは何についての話ですか?プロキシ設定についての話ではないですよね?
- リストの削除について質問です。
(setq hoge '((1 2 3) (3 2 1)))
(delete (car hoge) hoge)
=>((3 2 1))
(delete (car hoge) hoge)
=>nil
となり、hoge は nil になると思ったんですが、hogeを評価すると
hoge
=>((3 2 1))
という結果になりました。delete単体では最後の値は消せないんでしょうか?
今はsetqを使って回避しています。
- >>300
多分消せない。setqを使うのが正解。
- >>301
即答ありがとうございます。
setq を使ってこうと思います。
となると、removeとdeleteのどちらを使ってもかわりませんよね?
setqを使う場合はremoveを使ったほうがいいとかあるのかな?
- >>300
リファレンスで「破壊的」とか「副作用がある」とか書かれている関数は
リストをうまい具合に変更することはない。
本当に破壊しちゃったり副作用があるだけ。
setqしないといけない。
なんでdeleteなんてものが存在しているのかというと
リストを保つ必要がなけりゃremoveより処理が速いから。
- うえーーーーん。
outlinexをバージョンアップしたら、
; ウィンドウ位置を左に (1: 左側, -1: 右側, 0: 上側)
(setq *outlinex-default-position* 1)
で、アウトラインが左側に表示できなくなってしまいました・・・。
ソースを見たら、*outlinex-default-position*という設定はなくなっちゃてるようです。
誰か昔のソース持ってませんか?
- >>304
作者に聞いてみるのがいいんじゃないの?
ひょっとしたら、 別の名前になってるだけかもしれないし。
- モードラインやステータスバーに表示させるカーソル位置の桁数を
表示桁ではなく、論理桁?で表示させる方法ってありますか?
「行番号は表示行」の設定をオフにしているのですが、
桁の表示だけ表示上のままなのが気になったので。
- >>306
モードラインなら↓でできた気がする。
format文やらなんやらの使い方よくわかんね。
プロポーショナルフォントだから半角スペース埋めただけじゃ綺麗に整わないみたいだし全然ダメ。
(defun my-mode-line-positon ()
(let ((string (format nil "~9,' D:~A"
(current-line-number)
(1+ (current-column)))))
(concat string (make-sequence 'string (- 19 (length string)) :initial-element #\SPC))))
(defun set-my-mode-line ()
(setq mode-line-format (format nil "--%*- %b (%M) [%k:%l] ~A %f" (my-mode-line-positon))))
(add-hook '*post-command-hook* 'set-my-mode-line)
- >>307
おおっ、できました。
ありがたく使わせていただきます。
- 2ch-mode で書き込めなくなったら
.2ch/config.l に
(defun form-format-post-vars (name email body bbs &key key subject)
(let ((post
- ども。
>>294
> outline-tree2でバッファを選択したときタイトルバーとバッファタブを
> 更新させたいのですが、そういう設定ってありますか?
> なければどこかしらに(refresh-screen 1)を入れれば可能だと思うんですが、
> どこに入れればいいのか見当もつきません。
> もし、わかる方がいれば教えて下さい。
そうしようと、そこそこ試した記憶がありますが、できていません。
できたらおしえてください。
- >>310
タイトルバーについては多分こんなじゃないでしょうか?
(defun outline-tree-set-buffer-by-node (&optional node)
(treeview::with-app (*outline-tree-app-id*)
(unless node
(setq node (outline-tree-get-selected-node)))
(setq node (outline-tree-get-buffer-node-by-node node))
(let ((window-list (mapcar 'car (caddr (current-window-configuration))))
(buffer (outline-tree-get-buffer-by-node node))
(current-window (selected-window)))
(when (and (windowp *outline-tree-target-window*)
(not (eq *outline-tree-target-window* (selected-window)))
(not (minibuffer-window-p *outline-tree-target-window*))
(member *outline-tree-target-window* window-list))
(set-window *outline-tree-target-window*))
(set-buffer buffer)
(set-window current-window))
(winapi:InvalidateRect (get-window-handle) 0 1)
(winapi:UpdateWindow (get-window-handle))
(refresh-screen)
(refresh-title-bar))) ;+
こちら(http://white.s151.xrea.com/wiki/index.php?memo%2Fxyzzy%2FOutline-tree2)
も面白いと思いました。
- バッファタブについても
上の (refresh-screen) を (refresh-screen 1)
に変更すればいけるようです。
- >>309
なんで途中で切れてるのん?w
- ども。
>>311-312
ありがとございます。
> こちら(http://white.s151.xrea.com/wiki/index.php?memo%2Fxyzzy%2FOutline-tree2)
> も面白いと思いました。
バッファノードの " *" については、フォルダ名ソートと同時にローカルでは、
実装してあります。
バッファ数に比例した速度低下が発生するので私の環境での試用に留めていましたが、
ストレスを感じるほどの速度低下ではありませんでしたので、次の公開時には追加して
おきます。
- kamail3をインストールしたのですが、
な設定で
- kamail3をインストールしたのですが、
"g"キーでfetchすると、「login nil error」ダイアログが出て、
メールをpop3で取ってくることができません。
.kamail3/config.lのpop3の設定は、
(setq *fetch-config-list*
(list (cons *fetch-pop3-type*
(make-fetchpop3 :host "127.0.0.1"
:port 110
:user "test_user"
:pass "test_password"
:keep t))
))
で、pop3のテスト用に、netcatで127.0.0.1のポート110をリスンして見張っているのですが、
"g"を押しても、接続しに来る気配すらありません。
system-root/site-lisp/kamail3/fetch-pop3.lを見て、「login 〜 error」の部分を見つけたのですが、
ここで、原因追求が行きづまってしまいました。
いまのところ、kamail/importでインポートしたメールを、Queryして読むことはできています。
- >>313
http://pc8.2ch.net/test/read.cgi/win/1127783135/922
- >>203
遅レスですが、
・追加したいdatファイルを、その板のdatフォルダに移動する。
(例)ソフトウェア板のdatファイルなら、
(C:/xyzzy/).2ch/pc7.2ch.net/software/dat/ に移動。
・2ch-modeでその板のスレタイ一覧を開きlを押して、先ほど移動したdatを一度開く。
・追っかけに追加して、過去ログにする。
とすれば直接ファイルを編集する必要はないです、が、手間は大して変わらないかも。
- >>299
亀レスすいません。
> ブラウザ+プロキシ接続でdatファイルのデータは読める
> 2ch-mode+プロキシ接続では見られない
> ということですか?
そうです。
> >以前教えていただいたextra_board.txtを書き換えるのでしょうか?
> ?
> これは何についての話ですか?プロキシ設定についての話ではないですよね?
>>284 と同じ方ではないのですね、失礼しました。
>>284 で最初に教えていただいた内容です。
>>296 で何か勘違いをされていたように感じたので、もしかして >>284 での
内容も何か変わってくるのかな、と思いましたので…
そうですか、お手上げですか…何とかならないですかねぇ…?
- >>319
>>>284 と同じ方ではないのですね、失礼しました。
>>>284 で最初に教えていただいた内容です。
いえ、同じ人です。
>>>296 で何か勘違いをされていたように感じたので、もしかして >>284 での
>内容も何か変わってくるのかな、と思いましたので…
なるほど、プロキシを使うようにしたら extra_borad.txt も変えないと
いけないかもしれないと思ったわけですね。
その必要はないです。特に変更しなくても動く…はずなんだけどなぁ…
>そうですか、お手上げですか…何とかならないですかねぇ…?
だれかへるぷみ〜('A`)
後は…そういえばスレ一覧取得をやってなかったですね。
板一覧で Enter を押して 404 だったらこちらを試さなきゃいけなかった。
http://jbbs.livedoor.jp/sports/20390/subject.txt
これはスレ一覧の URL なんですが、これはブラウザでプロキシ越しに…とれますよね、やっぱり…。
他は othrebbs 以外の 2ch-mode に関する修正や拡張は全て外して試してみるとか
(otherbbs で修正している関数を元々の関数定義で再定義してしまっている可能性)、
横取り丸や ethereal でパケットキャプチャしてどういうリクエストが実際に発生しているのか
調べるとか…くらいでしょうか…
- otherbbs.l の 2068 行目辺りに、
(if read-cgi-p
(progn
(setq url (board-url-cgi-data host path))
(http-get-thread url
file
force))
(progn
(setq url (board-url-data host path bbs))
(msgbox "~A" url) ;←この行を追記
#|
(http-get url
file
force
のように1行追記して、板一覧のラーメン二郎の板の所で
Enter を押すと、スレ一覧の URL が出ると思うのですが、
これは >>320 に書かれた URL と一致しますか?
- >>320
> http://jbbs.livedoor.jp/sports/20390/subject.txt
> これはスレ一覧の URL なんですが、これはブラウザでプロキシ越しに…とれますよね、やっぱり…。
とれますね…
基本的に2ch-modeはデフォでotherbbsを入れてるくらいなのですが…
>>321
> (msgbox "~A" url) ;←この行を追記
> Enter を押すと、スレ一覧の URL が出ると思うのですが、
> これは >>320 に書かれた URL と一致しますか?
一致しないですね。20390が抜けて
http://jbbs.livedoor.jp/sports/subject.txt
となります。
extra_board.txtの書き方は>>284そのままです。
> otherbbs.l の 2068 行目辺りに、
少し気になるのが、上記部分、1733行目からになってて
行番号が全然違うのですが古いバージョンかな?
ファイル先頭の履歴の最新コメントは
;(2004/02/12 *thread-fgcolor-anchor* を設定することで、>>1 のような数字アンカーに色をつけられるようにした。
; Part5 の 389 さんありがとうございます…m(__)m)
となってますけど、これは古い??
- >>322
>少し気になるのが、上記部分、1733行目からになってて
>行番号が全然違うのですが古いバージョンかな?
それだぁ〜!!
それはしたらばのドメイン名が jbbs.shitaraba.com → jbbs.livedoor.jp
に変わる前のバージョンです。恐らく jbbs.livedoor.jp を 2ch のドメイン名だと誤認しています。
http://xyzzy.s53.xrea.com/wiki/?cmd=read&page=tips%2F2ch-mode%20%C2%BEBBS%B3%C8%C4%A5
ここから最新版を取ってきて試してみてください。
履歴を見るとわかると思うのですが、最新版を使えるようにするには
データを少し手で修正しなければならないです。お手数をおかけしますが、
どうぞよろしくお願いします。
- データ修正をするスクリプトがあったので、もしよろしければ使ってみてください。
ただし、動くかどうかわかりません(´・ω・`)
データが壊れたりする危険性もあると思うので、バックアップは忘れないようにしてください。
http://home.t04.itscom.net/poi/2ch_mode_enhance/file_convert_scripts.lzh
解凍してできたファイルのうち、replace_shitaraba_url.l がしたらばのドメイン名変更
に関する修正をデータに行うもので、convert_otherbbs_dat.l がIDフォーマットに関する
仕様変更に伴う修正をデータに対して行うものです。使用する場合はしたらばのドメイン変更の修正
の方を先に実行してください。その場合、すでに jbbs.livedoor.jp ディレクトリ
が ~/.2ch にあるとエラーになるので注意してください(今まで jbbs.livedoor.jp にある
スレは見られなかったわけなので、恐らく意味のあるデータはそのディレクトリには
存在していないと思います。一応それを確認した後に削除するということでいいので
はないでしょうか)
- なんかキタ━━━━━━m9( ゚∀゚)━━━━━━!!
- >>323
> それだぁ〜!!
見れたぁ〜!!
ありがとうございます!!
まさかバージョンがあがってるなんてorz
もうしわけございませんでした。
2ch-mode本体は、作者様のページの
2ch-0.0.1.2 (2003/07/06 05:24:37)
から変更ないのですよね? たぶん…
> 履歴を見るとわかると思うのですが、最新版を使えるようにするには
> データを少し手で修正しなければならないです。お手数をおかけしますが、
データは要らなければ全部消しちゃっても構わないのですよね?
そのほうが安全かな、と。
これで快適な2chライフ?になりそうです。
涙でそうにうれしいです…
本当にありがとうございました!!!
- >>326
> 2ch-mode本体は、作者様のページの
> 2ch-0.0.1.2 (2003/07/06 05:24:37)
> から変更ないのですよね? たぶん…
最新は 2ch-mode-0.0.1.4-3 (2005-11-29 01:40:52) です。
ttp://www7a.biglobe.ne.jp/~hat/xyzzy/dl.html#2ch-mode
- >>326
>見れたぁ〜!!
よかった〜(´∀`)
>データは要らなければ全部消しちゃっても構わないのですよね?
>そのほうが安全かな、と。
はい、それで構わないならそれが一番安全です。
2ch-mode も >>327 が示していらっしゃる最新にした方がいいと思います。
netinstaller を導入するのもいいかも…。
ttp://www7a.biglobe.ne.jp/~hat/xyzzy/dl.html#NetInstaller
また、2ch-mode を最新にしても現在 2ch には書き込めないようになっています。
http://pc8.2ch.net/test/read.cgi/win/1148990686/4
を参考にしてください。
- マウスの 第4・第5ボタンに関数を設定するのって、どうやるんだった?
- >>329
> マウスの 第4・第5ボタンに関数を設定するのって、どうやるんだった?
XBtn1Down, XBtn1Up, XBtn1Move, XBtn2Down, XBtn2Up, XBtn2Move
多分この辺り。
ttp://xyzzy.s53.xrea.com/reference/wiki.cgi?p=%A5%AD%A1%BC%C9%BD%B8%BD%BB%C8%CD%D1%B2%C4%C7%BD%CA%B8%BB%FA
[ヘルプ]-[最近入力したキー]で確認できると思う。
- テキストファイルでカンマが二個以上続いたらその行の、そこから後を削除するにはどうしたらいいでしょう?
たとえば
3.2.1 ○○ .....................5
3.2.2 □□ .....................6
↓
3.2.1 ○○
3.2.2 □□
こんな感じです
- >>331
何処にカンマがあるのかと小(ry
例のデータは間違っていないとして、
M-x query-replace-regexp
query replace from: \.\..*
with: なし
メニューの 検索 > 文字列の置換 で、正規表現にチェックして同じように
入力してもいい気がする。
- >>330
サンクス。 ここにあったのかぁ。
> [ヘルプ]-[最近入力したキー]で確認できると思う。
こっちもどうも。長い事使ってるけど知らなかった。
- >>332
> 例のデータは間違っていないとして、
> M-x query-replace-regexp
> query replace from: \.\..*
> with: なし
> メニューの 検索 > 文字列の置換 で、正規表現にチェックして同じように
> 入力してもいい気がする。
おぉ素晴らしいです!ありがとうございます。
正規表現とは便利なものですね
- >>304
http://hie.s64.xrea.com/xyzzy/pub/outlinex-2.02.lzh
- xyzzy Part14
http://pc8.2ch.net/test/read.cgi/win/1148990686/
- ウィンドウズ開発統括部
http://www.exconn.net/Blogs/windows/
http://www.exconn.net/blogs/images/www_exconn_net/windows/67/o_umpc.PNG
- 開いているバッファをすべてインデントするlispがほしくて、
コピペで
(defun indent-all-buffer ()
(interactive)
(dolist (buf (buffer-list))
(switch-to-buffer buf)
(indent-region (point-min) (point-max))
))
とかやってみたんですが駄目でした。分かる方がいらしたらお願いします。
- >> 338
エラーが出て駄目ってことならきっとこんな感じ。
(defun indent-all-buffer ()
(interactive)
(dolist (buf (buffer-list))
(set-buffer buf)
(when mode-specific-indent-command
(indent-region (point-min) (point-max)))))
- できました!ありがとうございます。
- Wiki-tips-バッファタブを拡張
http://xyzzy.s53.xrea.com/wiki/index.php?cmd=read&page=tips%2F%A5%D0%A5%C3%A5%D5%A5%A1%A5%BF%A5%D6%A4%F2%B3%C8%C4%A5
これを使わせてもらっているのですが
ホイールクリックで閉じた後にフォーカスを
タブからテキストを書く所に戻すにはどうすればいいか
誰か教えて頂けませんか?
- >>341
PDSだったので改造したものをそこにおいてきた。
- (format-drive #\c t)してもいい?
- >>342
ありがとうございます
ただ、タブを消した時に再描画が呼ばれてないようでした。
自分で修正できるかと思って渡来してみましたが
コンパイルさえできませんでした…。orz
エラーメッセージ:
Error E2453 buffer-bar-mc-hook.c 98:
Size of the type 'void' is unknown or zero in function EnumChildProc
環境:
Windows2000 SP4
Borland C++ 5.5.1 for Win32 Copyright (c) 1993, 2000 Borland
MAKE Version 5.2 Copyright (c) 1987, 2000 Borland
スレ違いかと思いましたが、何か解決のヒントを教えて頂けませんか
なぜ int i をHANDLE型にして使えるのかを調べてるところで挫折しました…。
- >>344
ごめんなさい。lispの側でrefresh-screenしてるから要らないと思って
再描画の所を削ってた。自分の環境だと再描画されてたので
見逃してたみたい。また置いてきたので試してみてください。
;; Wikiの古いファイルは消せないのね…
そのコンパイルエラーの個所は酷いな。
3つめの引数全体をキャストするといいのかな。
そのコンパイラは持ってないので直ったかどうかはわからないけど。
-
ttp://www.geocities.jp/m_hiroi/xyzzy_lisp/xyzzy02.html#chap10
↑ここのList 2、List 3をコピペ→xyzzy→Ctrl+J→Alt+X→test-mode→Enter→変数が定義されていません: *test-mode-map*
って、エラーなる・・・、どうすればいい?(>_<)
- >>346
>
> ttp://www.geocities.jp/m_hiroi/xyzzy_lisp/xyzzy02.html#chap10
> ↑ここのList 2、List 3をコピペ→xyzzy→Ctrl+J→Alt+X→test-mode→Enter→変数が定義されていません: *test-mode-map*
> って、エラーなる・・・、どうすればいい?(>_<)
「Ctrl+J」の部分を「M-x eval-buffer」に変更では?
- >>347
キーワードをカラー表示させたいんだが
どうすればできる?
ググってもよくわからない(>_<)
- なんかすごい多機能&使いやすそうにみえるのに(ファイラーとかも)
難しくて解らないよーーーー
わーーー
- >>349
慣れればキーボードだけで済むのがすごく便利だと思うよ
がんばれー
- 未だに手が勝手に矢印キーの方へ行ってしまう俺は負け組。
- >>351
無理にあわせる必要はない
自分の好きなように使うんだ
カーソルキーマンドクセって思うようになった時にでも
切り替えるなり、カスタマイズなりすればいい
- >>349
入門xyzzy
ttp://www.amazon.co.jp/exec/obidos/ASIN/4274066002/
最近このスレに嫌な奴もいるが、基本はいい人が多いのでお勧めだよ。
- html+mode の時、 Ctrl+x で切り取りにする方法を教えて下さい。
他の形式を開くときは gates が機能しています。
- >>354
たぶんこんなの
(add-hook 'ed:*html+-mode-hook*
(lambda ()
(undefine-key *html+-mode-map* #\C-x)))
- >>345
再描画できました、コンパイルもOKです!
- MS UI Gothicがフォントの設定のところに表示されないのですが、選べないのでしょうか?
ver0.2.2.235をWindowsXPで使っています
2ch-modeの時にAAが綺麗に表示されるので出来れば使いたいです
- >>357
等幅でないフォントは選べません。
2ch-modeでAAを綺麗に表示したいなら、こちらを。
ttp://ohkubo.s53.xrea.com/xyzzy/index.html#2ch-dialog
- >>358
レスありがとうございます、環境のせいじゃなくてよかったです
さっそく導入してみたのですが、 パッケージが存在しません:"2ch"と出て先に進めません
2ch-mode入れなおしたり.xyzzy.history削除してみたりしたのですが、何かほかに必要なんでしょうか?
- >>359
設定は ~/.2ch/config.l に書いた?
- おしえてください。
ファイラでファイル削除するときにカーソルの位置を
キープしたいんですが、どうすれば良いのでしょうか。
- >>360
すいません言葉足らずでした
config.lに設定を書き足してバイトコンパイルし直すと上のエラーが出ます
- >>361
書いたけど長くなったからwikiに載せてきたよー。
バグがあったらごめんね。
http://xyzzy.s53.xrea.com/wiki/index.php?tips%2F%A5%D5%A5%A1%A5%A4%A5%E9%A4%C7%A5%D5%A5%A1%A5%A4%A5%EB%A4%F2%BA%EF%BD%FC%A4%B7%A4%BF%B8%E5%A4%CE%A5%AB%A1%BC%A5%BD%A5%EB%B0%CC%C3%D6%A4%F2%CA%DD%BB%FD
- >>363
おおぉーすばらしいっす。
ありがとうございます。
- >>362
エラーが出るタイミングは?
M-x 2ch としたとき、みたいな感じで具体的に頼みます
- >>365
2ch-dialog.lと2ch-dialog.lcをsite-lispフォルダにコピーした後
~/.2ch/config.l の一番下の行に (require "2ch-dialog") を書き加えて上書きして
xyzzyを起動して M-x byte-compile-file :config.l とすると
小窓で 「パッケージが存在しません: "2ch"」 とエラーメッセージが表示されます
と言った状況です、この状態でM-x 2ch としてスレバッファ上で z と入力しても書込み禁止と言われます
- >>366
ああ、コンパイルするときにエラーが出るのか。納得。
それならバイトコンパイルする前に 2ch-mode を起動しておくといいのでは?
- >>367
今度は確かにコンパイルできました、どうもありがとうございました
ああ、AAが綺麗だ…
- 置き換えを実行したあと、置き換えた文字列を強調表示させることってできませんか?
- いつ、その強調表示を解除しますか?
- >>370
もう一度置き換えするまででいいと思います。後はinteractiveに解除させる
コマンドがあれば自由に設定できると思います。
(pickup-pattern使用時は*show-match-hook*にadd-hookする等)
- 2ch-modeで過去ログ(例えばこのスレのpart1)を読み込むと激しく文字化けします
どうすれば見られるようになるでしょうか
- 自己解決しますた
スレ汚しごめんなさい
- 何が原因だったのか書いといてくれよー
- 文字化けではなく、gzipを入れてなかっただけでした
- g:\bin\xyzzy\xyzzy.exeがあるとすると、(si:system-root)だと"g:\bin\xyzzy\"を得ることが
出来ますが、そこからもうひとつ下の"g:\bin\"を得たいんですがどうすればいいんでしょうか?
- こうかな?
(directory-namestring (remove-trail-slash (si:system-root)))
- >>377
ホントに助かりました。ありがとうございます。
- すみません教えて下さい
.xyzzy で実行パスを追加するのは
どのように記述したらよいのでしょうか?
ロードパスの追加ならわかったのですが
実行パスの追加方法は調べても見つかりませんでした
- 実行パス ってなに?
- >>379
xyzzy では実行パスは Windows の環境変数 PATH を使うんじゃない?
環境変数を取り出すことなら si:getenv でできるけど、
lisp で追加や変更できるかどうかは知らない。
- perl-modeで予約語を色づけだけでなく、太字にする方法はあるでしょうか。
またスカラー変数、配列、ハッシュの色づけはできますか?
- > perl-modeで予約語を色づけだけでなく、太字にする方法はあるでしょうか。
http://www.uranus.dti.ne.jp/~shiro-/soft/xyzzy/keyword.html
> またスカラー変数、配列、ハッシュの色づけはできますか?
perlなんて全く分からないから、これで事足りるかどうかは保証できないけど、
正規表現キーワード xyzzy でぐぐれ。
- 圧縮ファイルについて教えてください。
『について』をみると UNLHA32.DLL UNZIP32.DLL と表示されます。
しかしファイラーでは .zip のファイルしか表示されません。
.lzh のファイルを表示するにはどうしたらよいのでしょうか。
- アyタyだsfyだsふいおやすいったtttttttったやたt−−−−−−−−−−−−−−
- kamailで添付ファイルを保存するパスってどこかで設定できましたっけ?
なんか、マシンによって違うんですが、自分で設定した記憶がなく…
- >>383
できました
本当にありがとうございました
- >>386
Kamail なら~/KaMail/.kamailに
(setq *kamail-attach-save-directory* "なんとか")
KamailV3 なら~/.kamail3/config.lに
(setq *message-attachment-directory* "かんとか")
なんとか かんとか の部分にディレクトリのパスをどぞ。
- 自己解決いたしました。
何も知らないで申し訳ありませんでした。
- 何が原因だったのか書いといてくれよー
- KamailV3で送信メールを見るにはどうすればいいですか?
検索でfrom:自分のアドレス とすれば見られるんですが、
e押してsentを選んでも見られません。
config.lで何か設定したりする必要があるのでしょうか?
- >>391
送信済メールを保存する設定になってないとか?
- >>392
ありがとうございます。
そんな設定どこもに書いて…と思ったら、
config.l.sampleに設定項目が増えてたのね…。
初期にconfig.l.sampleをコピペして、
それをずっと使ってたから気づかなかった orz
- 入門xyzzy購入記念保守
- browserexでcgiを実行するにはどうすればいいでしょうか?
例えばcgiファイルを開いている時に、C-c xでbrowserexを立ち上げcgiを実行するという感じです。
- Webブラウザ(IE等)のアドレスバーに入力すると正常に動作する
URI を "hoge" とすると、(bx::navigate "hoge") を評価すれば
同様に動作します。
どのようにして文字列 "hoge" を作るかということであれば、
環境に合わせて適当に文字列処理する必要があります。
- CalMemoの検索が重たくなって参りました。
何かよい方法はございませんか?
- >>396
(defvar *local-host-name* "http://127.0.0.1/cgi-bin/")
(defun show-cgi ()
(interactive)
(let ((filename (get-buffer-file-name (selected-buffer))))
(if (string-equal (pathname-type filename) "cgi")
(bx::navigate
(concat (append-trail-slash *local-host-name*)
(file-namestring filename)))
(message "cgi ではありません"))))
お答えありがとうございます。
しかし自力では良くわからなかったので、色々検索したらこんなの見つけました。
これだとlocal-host-nameが固定されてしまって、そのフォルダにあるcgiファイルしか実行できません
これをcgiファイルがあるディレクトリを取得する設定にするにはどうすればいいでしょうか?
- C:/www/cgi-binみたいなローカルpathを
http://localhost/cgi-binみたいなURLに置換して渡すだけ
- http://xyzzy.s53.xrea.com/wiki/index.php?xyzzy%A4%C7%A5%D7%A5%ED%A5%B0%A5%E9%A5%DF%A5%F3%A5%B0%2F%C0%B5%B5%AC%C9%BD%B8%BD
>xyzzyでは文字列の置換などに正規表現を使用することができますが、
>Perlなどが採用 している拡張正規表現ではなく、
>基本正規表現を採用しているので注意が必要です。
とありますが、DLL入れ替えなどで簡単に拡張正規表現には変更できないのでしょうか?
素人考えでどこかから既存の物をパクってきたらできそうな気がするんですが
ないって事はやっぱり難しい物なんでしょうか?
- calmemoでc-c . .でメモ取る時にたまにxyzzyが固まってて、
なんでだろうと思ってたけど、やっと再現方法が分かった。
* memo:
hoge
[EOF]
だと大丈夫で、
* memo:
hoge[EOF]
だと固まってしまう。
何か対策してる人いない??
- >>400
そんなことしたら既存の xyzzy のライブラリが全滅じゃないか
- >>400
> >xyzzyでは文字列の置換などに正規表現を使用することができますが、
> >Perlなどが採用 している拡張正規表現ではなく、
> >基本正規表現を採用しているので注意が必要です。
> とありますが、DLL入れ替えなどで簡単に拡張正規表現には変更できないのでしょうか?
バッファを対象とする scan-buffer は(性能的にも)難しいと思いますが、
ある文字列に対して拡張正規表現でなにかする関数を書くのは簡単だと思いますよ。
単に、書くことに対する十分なメリットを見出せないのでやらないだけでしょう。
> 素人考えでどこかから既存の物をパクってきたらできそうな気がするんですが
> ないって事はやっぱり難しい物なんでしょうか?
やってみたらよいのではないでしょうか。
- 気軽に言うとソースいじってビルトイン関数作っちゃえばいいんでは。
- PCRE を持ってきて、別の名前で使えるようにすればいいんじゃないの。
今なら鬼車とかいいかも。
- 確かに鬼車はよさそう。
xyzzyの正規表現は前方、後方参照及び否定ができるようになれば満足。
- >>402
完全に頭から抜け落ちてました
>>403
どう手をつけたらいいかすら見当もつきません
ワールドカップで「そこはシュートだろ!」と叫んでる人と同程度に素人です
すいません。
- 欲しいならば調べるのがいいのではないでしょうか。
現時点でない理由はまさに、調べたり作ったりするぐらいならいらない、という理由だと思いますよ。
- いやみしか言えないのは見苦しいですよ
教えられないのなら、スルーしましょうね
- >>407
search関係のlispを参考に
外部dllに渡す処理をかけばいい
>ワールドカップで「そこはシュートだろ!」と叫んでる人と同程度に素人です
このたとえがよく分からんが
lispが読めないなら
lispの勉強が先
>>409
嫌みではないとおもうぞ
少しは素直にアドバイス聞いて
自分で調べる癖をつけたほうが
自分のため
- >>407
謝る必要は全くありません。
>>407 >>409
欲しくもなく、作ってみたくもないならば作る必要はないですよね。
欲しいか、作りたいなら、調べるなりなんなりして作ればいい、
ただそれだけのことでしょう。
欲しいけど、調べたくもなく作りたくもない、という場合は、
どうにかして他人を動かさなければなりませんね。
- >>408
はい。まさに2行目の情報が欲しかったのです
>>410
ヒントありがとうございます。
>>411
はい。その通りだと思います
自分でしたいことが自分でできるように精進します
- c-modeでの、C-c q でコメントアウトについてです。
例えば
if (xxx)
{
yyy = 0; /* clear */
}
というif文全体をコメントアウトしたくて
このif文全体をリージョン指定してC-c qすると、
3行目の『/* clear */』でコメント範囲が終わってしまうのは
何とかなりませんか?
- >>413
C-c q でのコメントアウトってのは標準じゃないと思うのですが、
どういう関数ですか?
- ファイルを開くときの文字コード判定に失敗した場合、みなさんどのようにして
文字コード指定されてますか?
wikiにも載っていないようですし、いくつか試してみたのですが
これというものがありません。
(1)ローカル設定で文字コード指定
化けた文字はそのまま
(2)change-fileio-encodingから指定
(1)と同じ( (1)の内部処理がこれ?)
(3)ファイル-開く
目的のファイル(バッファ)を閉じておかないと変わらない
(4)閉じてから(3)
フォルダがxyzzyや他のバッファのものになるので、フォルダを追うのが大変
とりあえずは(4)に、「あらかじめ同じフォルダのファイルを開いておく」を
追加してごまかしていますが、IEのソース表示で判定失敗したときは
げんなりしてしまいます。
- >>415
C-u C-x C-v
- すいません、軽いテキストブラウザ(タブが使える)が欲しくて
xyzzy + www-mode + 2ch-mode を使おうと色々試してみたのですが
まず、makefile.lをwww-makeするところで詰まってます。
ホント初歩的なところだと思うのですが、このmakeをするためには
他の拡張機能を先に入れないといけないのでしょうか?
また、netinstallerに対応していれば、あわせて教えていただければ助かります。
- >>416
ありがとうございます。
なるほど、C-x C-vなら同一ファイルだろうと開き直せて、さらにC-uで
修飾するとオプション指定できるようになるんですね。
ただIE連携のケースですと、ファイル名の"l50[1]"などが正規表現を含むと
見なされてしまうためか、ファイラが(しかも目的のファイルが表示
されない状態で)開かれてしまいました。
これは"l50*"と書き換えてからファイラで選択する、という形で
回避しようと思います。
- l50\\[1\\]か"l50\[1\]
正規表現に使われてる記号は\マークをつけて
- すいません、さっきの今ですが、質問はスルーしてください。
どうやら、make出来ていたようです、本当に失礼しました。
- >>413
comment.l を入れてるのかな。
c++-mode なら // でコメントアウトしてくれると思うけど、それじゃダメ?
- >>419
試してみたのですが、
c:\]
というファイルを開く動作になってしまいました。
こちらのミスかもしれないので、確認してみていただけますか?
- >>414, 421
大変失礼しました。comment.l を入れてます。
// でのコメントアウトではコンパイラに怒られるのでダメなんです。。。
- /* */ のネストができないのは仕様だからなー。
comment.l で対応できるかどうか知らないけど、#if 0 ... #endif ならネストもできる。
- >>418
[ツール]-[共通設定]-[さまざま] の
「[...] はワイルドカード」のチェックをはずす。
- >>413
何とかって、どうしたいの?
- >>423
>>424 の言うとおり >>413 の現象は xyzzy じゃなくて c 言語の仕様(だよね?)。
comment.l で >>424 の案を使うなら、こんなのを .xyzzy に書けばOKだと思う。
ちなみに色付けはされないのであしからず。
(push '(ed::c-mode " * " "#if 0\n" "\n#endif")
comment-mode-alist)
- >>425
このような設定があったのですね。
l50[1]のようなファイルもそのまま指定できるようになりました。
ありがとうございます。
- >>424, 426, 427
ちょっと説明が足りないようでした。
希望は
/*
* /* comment */
*
*/
のようにコメントアウトしてしまうのを
/*
/* /* comment */
/*
/*
*/
のようにできればいいと思うのですが・・・
- >>429
> ちょっと説明が足りないようでした。
説明が足りないというより、ありませんでした。
それならば comment.l の標準カスタマイズの範囲です。
変数 comment-mode-alist の DOCSTRING を確認してください。
(push '(ed::c-mode "/* " "/* " "\n */")
comment-mode-alist)
- ファイラで種類順に表示する方法はありますか?
- >>431
なさそうだけど、 そういうときは ピリオド(.) を入力して、
Maskを指定したらなんとかならない?
- ステータスバーの文字列をLispで読み取る方法ってあるんでしょうか
- >>433
ありません。
- >>433
messageで出力されるものを横取りしたいのなら、
前もって*status-stream*を乗っ取っておくとか。
(setq *status-window*
(make-broadcast-stream
*status-window*
(make-buffer-stream (find-buffer "*scratch*"))))
他にはEnumChildWindowsしてハンドルつかんで(ry
- >>434
そうなんですか(・ω・`)
>>435
それの上のとか、message関数をのっとったりしてみたんですが
マイルドにされたエラーの分が読み取れないみたいなんです。
- >>436
> >>435
> それの上のとか、message関数をのっとったりしてみたんですが
> マイルドにされたエラーの分が読み取れないみたいなんです。
意図が分からないけど、toggle-trace-on-error しても
マイルドにされたエラーの分のスタックトレースが表示されないって事?
エラーなら、handler-case でキャッチして si:*condition-string で
エラーの文字列取得して、改めてエラーを投げても OK
- >>436
ざっとしか見てないので間違えてるかもしれないけど、
lprint.cc の print_condition 〜 putmsg の辺りによると、
マイルドのメッセージは app.status_window.puts で
直接書いてるみたいなので、434さんの言う通りおそらくむり。
- >>432
種類順というか、拡張子順で理想の並び順になりました
リサーチ不足でした
- >>430
ありがとうございました。
教えていただいたのを.xyzzyに書いてもダメだったので、comment.lの
冒頭でc-modeでのcomment-mode-alistを定義している部分を
直接書き換えてうまくいきました。
これはどこに記述すればよかったんですかね?
- >>440
.xyzzy に書いてOK。ていうか普通は元ファイルは書き換えない。
autoload 設定にしてるなら *comment-after-load-hook* にでも引っ掛けるべし。
- 正規表現で
「http://」で始まらず、「.html」で終わる文字列
にマッチさせるにはどうすればいいでしょうか。
- 何で正規表現スレで聞かないの?
- xyzzyの正規表現でできるのかと思ったからです。
でも、よく考えたらxyzzyである必要はないので、
正規表現のスレで聞いてみます。
- >>442
全く確認せずに書くけど、GGrepでできない?
- >>445
できると思いますが、マッチした文字列を置換したいのでggrepは
使えないです。
- 解決しました。Perlで書くことができました。
- lisp-modeでの(hoge "hoge|#")やc-modeでの{hoge "hoge*/"}等
set-syntax-end-multi-commentで定義されてる文字列だけ(#|や/*がない)
が括弧内にあるとparenやgoto-matched-parenthesisができなくなるんですが、
回避方法ってありますか?
- すいません、例が間違ってました。""で囲ってない場合でした。
実際はjavascript-modeで問題が発生しました。
string.replace(/width=[0-9%]*/g,"");
上記の用に/*が入ってしまいそこを含む箇所のparen等ができなくなってしまい
ました。
- 度々すいません、"/*"の部分は"*/"の間違いです。
- syntax の multi-comment を使わない、しかないんじゃないかなあと思います。
その上で複数行コメントをハイライトしたいなら text-attribute を使って頑張るとか。
ruby-mode がそれに近いことをやっていた気がします。
あとは (set-syntax-math *hoge-mode-syntax-table* #\/) ……は駄目そうだな。
そもそも javascript で / を構文要素にしちゃうのはまずいか。
- >>441
教えて君ですいません。
.xyzzyに書くとcomment-mode-alist変数が定義されていない旨のエラーが出てしまいます。
> autoload 設定にしてるなら *comment-after-load-hook* にでも引っ掛けるべし。
これがよくわからないのですが…どうすればよいのでしょうか?
autoloadはしてます。
- set-syntax-string も試してみましたが multi-comment に含まれるcharは
設定できないようでした。
やはり multi-comment を使わずに text-attribute でハイライトさせるしか
ないですかね。
- 正規表現キワードリストでなんとか回避できそうです。
失礼しました。
- skkにまだ慣れてないせいか誤字脱字が orz
- >>454
正規表現キーワードは、マッチできる最大長が256文字?
なので、 paren を直したほうがいいよ。
- >>456
そんな制限があるとは知りませんでした。。。
paren を直すといっても、goto-matched-parenthesis が上手く作動しない
以上難しそうです。
- paren を直すという意味がわかりました。
なんとかなりそうです。
- >>452
フック変数について勉強してみてください。
メジャーモードを起動したときなどに実行される関数を格納する変数です。
(add-hook '*comment-after-load-hook*
#'(lambda ()
(push '(ed::c-mode "/* " "/* " "\n */")
comment-mode-alist)))
- kamailV3でテキストの添付ファイルを送信すると
改行コードがCRLFからLFのみに変わっちゃうんですけど、皆さんそんなことはないですか?
PNGファイルを添付して送信した場合は、受信側では「ファイルが壊れています」言われて表示できませんでした。
- 彼女が次から次にできる拡張Lispを作ることは可能ですか?
- >>461
可能ですが、使いこなすのは難しいでしょう。
- >>461
「オープンソースの関係者が女の子に不自由しなくなる日も近い(爆笑)」
http://journal.mycom.co.jp/articles/2004/04/20/mozilla/001.html
我々の春はこれからです! がんばりましょう!
- readme よんで howm インストールしてもできやしねえ。
- 編集後の行番号の色を変えられるような設定はないでしょうか?
- どこかでやってたような気はするけど……どこだったかな
- >>465
http://xyzzy.s53.xrea.com/wiki/index.php?tips%2F%CA%D1%B9%B9%B9%D4%A4%CB%BF%A7%A4%F2%C9%D5%A4%B1%A4%EB
- >>466-467
ありがとう。やってみます。
- www-modeで開いていたページも、xyzzy終了後に復元できないでしょうか?
- >>469
なにか、そういう設定を考えて書かなければ、できません。
- >>470
そうでしたか…
レスありがとうございます
- 全モードでオートインデントを無効にしたいです
- >>472
どうぞ、ご自由に。
- xyzzyでバッファツールバーをクリックしても、バッファが変更されなくなってしまいました。
どうすればよいでしょうか・・・
あと
http://xyzzy.s53.xrea.com/wiki/index.php?plugin=attach&refer=tips%2F%A5%D0%A5%C3%A5%D5%A5%A1%A5%BF%A5%D6%A4%F2%B3%C8%C4%A5&openfile=buffer-bar-click-to-delete.zip
にあるbuffer-bar-click-to-delete.zipを使用したいのですが、
siteinit.lに
(load-library "buffer-bar-click-to-delete")
この様に追記したのですが、動作ません、書く内容間違っていますか?アドバイスお願いします。
- >>474
それだけじゃ情報が少なすぎるよ〜
いつ(何をしたら)バッファが変更できなくなったか、何かエラーが出ているのかなど詳しく書いて
buffer-bar-click-to-deleteだけど、ダンプファイル(XYZZY.wxpみたいな奴)の削除をして再起動した?
siteinit.lcってファイルがあるならバイトコンパイルも必要(siteinit.lcを削除しても可)
- >>475
情報少なくてすみませんm(_ _)m
今週に入ってから、バッファがマウスで変更出来ないことに気付きました。
このところ弄っていないので、何が原因がわからないです。
あとxyzzyをダウンロードし直して、上書きしてもだめでした。
エラーはどこにでるんですか?
バイトコンパイルはShit+Ctrlを押しながら起動したので、しました。
上の問題で出来ないのかな?
- >>476
buffer-bar-click-to-deleteが悪さしてんじゃね?
消して再ダンプしてみたらどうだろう。
- lispフォルダの内容を全部ダウンロードして、上書きしたら直りました。
原因は不明ですwwwwww
- >>478
もう来るな。氏ねwwwwwwwww
- あるメジャーモードでスクリプトを実行するときに、選択したリージョンやカーソルのある現在の行のスクリプトだけを実行したい場合、lispでどう書けば良いのでしょう?
- >>480
>リージョン
eval-region
>カーソルのある現在の行のスクリプト
行頭と行末のポイントで eval-region とか?
- >>481 と同じ解釈をしたけど、念のため、もうちょい深読みしておく
http://hie.s64.xrea.com/xyzzy/note/misc.html#e
- >>481
>>482
ありがd
早速いじってみる
- >>481-483
スクリプトって lisp?
それなら C-x C-e (eval-last-sexp) もいいけど、
javascript とか ruby なのかと思った。
javascriptなら jscript-mode が使えるのかも。
- calcで三角関数を使用した場合に演算結果をdegree(°)で
出力したいんですけど、何か設定がありますか?
いまは、こんなの作って変換しているんですけど面倒くさいんす。
(defun calc-rad2deg (n)
(check-type n float)
(/ (* n 180) calc::pi))
(setf (symbol-function 'calc::rad2deg) #'calc-rad2deg)
- >>484
lispではない。
RというS言語クローンのスクリプトなんだが、今あるのでは、バッファ全体で実行しかできないので、部分的に実行がしたいんだ。
- 部分を一時バッファにコピー→一時バッファを実行→一時バッファ削除
- >>487
それをナローイングせずに一発で出来ると最高なんだけど・・・
現在,カーソルがあるとこだけ実行とか。
Cとかrubyとかのモードでそんなのあります?
perlしか使ったことないので,いまいち よーわからん
perlには そんな機能ないんだが。
- あつは夏い
- >>488
487 の意味を理解していないと思われ。
具体的な状況を詳しく書いて、自分で考えたコードをさらさないと、
487 のようなレスしかつけようがないよ。
- >>488
> それをナローイングせずに一発で出来ると最高なんだけど・・・
> 現在,カーソルがあるとこだけ実行とか。
人がナローイングするのと同じ範囲を決定する関数or具体的な方針を
書いてくれれば、他は誰でも書ける部分。
あなたが考える「カーソルがあるとこ」の範囲の決定方法は?
- つか、自分で書けよ。
と言いたい。
- 怠慢な質問でスマソ
「カーソルがあるとこ」というのは、カーソルがある場所の行で
その行のスクリプトだけを実行したいということ。関連するスクリプトは以下。
勝手な想像でselected-buffer辺りを変えてやればできないのかと、甘い考えを持っていたわけで
(defun runR ()
"実行"
(interactive)
(let (command comstr
(bufname "*Run R*")
(buffer (selected-buffer))
(file (get-buffer-file-name)))
(setq command (concat "Rterm --no-save -q < \"" file "\""))
(when (and command
(setq comstr (read-string "% " :default command)))
(pop-to-buffer (get-buffer-create bufname) -15)
(setq need-not-save t)
(execute-shell-command comstr nil bufname)
(end-of-buffer)
(pop-to-buffer buffer))))
完全なトウシロリスパー故、見当違いかもしれんが、何か方法あれば・・・
- gtags.lはいまは手に入らないのでしょうか。
gtagを使うために仕方無くmeadowを使っているのですが、重くて。。。
- >>493
一時ファイルを作って実行させればよいのでは。
(defun foo ()
(let (b e str f)
(save-excursion
(goto-bol)
(setq b (point))
(goto-eol)
(setq e (point))
(setq str (buffer-substring b e)))
(setq f (make-temp-file-name))
(with-open-file (s f :direction :output)
(format s "~A" str))
(execute-shell-command (concat "Rterm --no-save -q < \"" f "\"")
nil "*Run R*")
・・・・・・・・
(delete-file f)
))
みたいにして。
- >>493
「カーソルがある場所の行」が行頭から行末までなら
1 goto-bolしてpointの値をどっかにおいておく
2 goto-eolしてpointの値をどっかにおいておく
3 buffer-substringに2つの値を渡す
で487の言う「部分」を取得できるけど、
あなたがやりたい動作が「行頭からカーソル位置まで」や、
「カーソル位置から行末まで」ならまた違ったコードを書かないといけないだろう?
さらに、行頭や行末に複数行にまたがったコメントやらがあって、
それも考慮するならもうちょっと複雑になるだろう?
他にもその言語ならではの仕様があったりするかもしれないだろう?
だから490が
>具体的な状況を詳しく
と、491が
>範囲を決定する関数or具体的な方針を書いてくれれば
>あなたが考える「カーソルがあるとこ」の範囲の決定方法は?
といっている。
あと、execute-shell-commandでファイルの名前を渡すようにするなら、
一時バッファだけじゃなく、一時ファイルも必要になるんじゃないか?
- >>494
ttp://xyzzy.g-artistic.net/2005/08/04/xyzzy-gnu-global-gtags/
- >>497
見逃していました。
ありがとうございます。
- >>399
ちょっと自力では無理でした。
php用のものを見つけたので、perl用に直したらできるようになりました
(in-package "editor")
(defun perl-cgi-view ()
(define-key *perl-mode-map* '(#\C-c #\p #\p)
#'(lambda ()
(interactive)
(let ((url (get-buffer-file-name)))
(setf url (substitute-string url "c:/cgi/" "http://localhost/" :case-fold t))
(bx:navigate url)
(bx:browserex-set-focus-editor)
))))
(add-hook '*perl-mode-hook* 'perl-cgi-view)
(in-package "user")
二度のお答えありがとうございました
- >>495
表現が乏しかった。スマソ
んで、495氏のを参考に突っ込んでみた。
(defun adeam ()
(interactive)
(let (b e str f)
(save-excursion
(goto-bol)
(setq b (point))
(goto-eol)
(setq e (point))
(setq str (buffer-substring b e)))
(setq f (make-temp-file-name))
(with-open-file (s f :direction :output)
(format s "~A" str))
(execute-shell-command (concat "Rterm --no-save -q < \"" f "\"")
nil "adeam")
)
(delete-file f))
んが 変数fが定義されていませんとエラーがでて setfとかも試してみたがうまくいかない。
make-temp-file-nameの使い方がまずいんだろうか?
- >>500
カッコの位置が変。
(defun adeam ()
(interactive)
(let (b e str f)
(save-excursion
(goto-bol)
(setq b (point))
(goto-eol)
(setq e (point))
(setq str (buffer-substring b e)))
(setq f (make-temp-file-name))
(with-open-file (s f :direction :output)
(format s "~A" str))
(execute-shell-command (concat "Rterm --no-save -q < \"" f "\"")
nil "adeam")
(delete-file f)))
- 二つ目のscratchバッファを開く方法はありませんか?
- (defun make-scratch ()
(interactive)
(set-buffer (create-new-buffer "*scratch*"))
(lisp-interaction-mode))
M-x lisp-interaction-mode するだけでもいいかも
- >>503
ありがとうございます
- browser.dll使ってhtml+-mode以外のときにプレビューすることは可能ですか?
RSSモードなんかでwwwモードでプレビューしてから画像表示もさせたいんですが
- 横方向はオプションで設定できるけど、
クロスラインカーソルって実現できるのかな?
- defvar-local された他バッファの変数に
set-buffer せずにアクセスする方法ってないんですか?
- >>507
buffer-local-value
- >>226をやって、*scratch*を保存するようにしていたんですが・・・・
ある日、*scratch*の内容がバッサリ消えていました orz
バックアップをとっていたからよかったものの、冷や汗かきました。
どうやら、*scratch*バッファを閉じた状態でxyzzyを終了すると、
前回にアクティブになっていたバッファを保存するようです。
*scratch*バッファを閉じられないようにできないでしょうか。
もしくは、終了時に閉じていても大丈夫なようにできないでしょうか。
たぶん、これが悪さをしていそうなのですが
(add-hook '*kill-xyzzy-hook*
#'(lambda ()
(set-buffer (find-buffer "*scratch*"))
(write-file "~/scratch")))
- (add-hook '*kill-xyzzy-hook*
#'(lambda ()
(let ((buffer (find-buffer "*scratch*")))
(if buffer
(set-buffer buffer)
(write-file "~/scratch")))))
// set-buffer はなぜ常に t を返すんだろうか
- 私はワンキーで保存してhowmのメモに放り込んで、scratchで検索とか
している
- あ、510 は *scracth* が無かったら保存しないように改造したやつ。
- >>510
(add-hook '*kill-xyzzy-hook*
#'(lambda ()
(let ((buffer (find-buffer "*scratch*")))
(when buffer
(set-buffer buffer)
(write-file "~/scratch")))))
これで、うまくいきました
if だと buffer = nilのときに、保存しちゃうので・・・
あとは、*scratch*が閉じられないようにしないと・・・
- *scratch*を閉じないようにするのは、
これでいけました。
これで安心できます。
ありがとうございました。
http://xyzzy.s53.xrea.com/wiki/index.php?tips%2Fscratch%20%A4%F2kill-buffer%A4%AB%A4%E9%CA%DD%B8%EE
- おおうしまった >if だと buffer = nilのときに、保存しちゃうので・・・
- >>506
> 横方向はオプションで設定できるけど、
> クロスラインカーソルって実現できるのかな?
できません。
- >>505
> browser.dll使ってhtml+-mode以外のときにプレビューすることは可能ですか?
可能です。
browser.dll は特定のモードに依存していません。
> RSSモードなんかでwwwモードでプレビューしてから画像表示もさせたいんですが
wwwモードでプレビューしてから、という部分がよくわかりませんが、
最近の RSS モードは browser.dll で表示できますね。
- lispの勉強にJavaのコンパイル、実行をする物を作ろうとしたんですが
出だしから躓いてしまっています。
下のスクリプトを動かすと*java-arg*が未定義だと怒られてしまいます。
" -encoding utf-8 "を concatの引数部分に直接書けばコンパイルは行えました。
何がいけないんでしょうか?
それと実行したときに *cmd* バッファを分割されてできた新しいウィンドウに表示したいのですが
どの関数を使えば良いんでしょうか…。
(defvar *java-prog* "javac")
(defvar *java-arg* " -encoding utf-8 ")
(defvar *script-directory* "c:\\java\\Hoge.java")
(with-output-to-temp-buffer ("*cmd*" 5)
(make-process (concat *java-prog* *java-arg* *script-directory*)))
- スレ違い。
lisp書く場合は本スレへ。
- そもそも JavaTinyConsole でできる気がする・・・
- >>519
すいません移動します
>>520
JavaTinyConsoleだとコンパイル時に固まる事が多発したので
簡易的なものを自分で書いてみようと思いました。
- >>521
JavaTinyConsoleの該当部分を見ればなんとなく分からないかなぁ
まぁ移動したみたいだからいいか
- 以前正規表現の話しがでてたみたいですが、
ttp://homepage2.nifty.com/Km/onig.htm
ここの onig.dll をxyzzyから使うことってできるんでしょうか?
- >>523
できるよ。
- >>524
ありがとうございます。
とりあえず、コピーライトを取得してみようとして
(eval-when (:compile-toplevel :load-toplevel :execute)
(require "foreign"))
(c:define-dll-entry
c:string copyright () "onig.dll" "onig_copyright")
として(copyright)を実行してみたんですが、数桁の数字しか取得できませんでした。
xyzzyでのdllの扱い方を間違ってるのかもしれませんが、wiki等にも情報が
少なくよくわかりませんでした。
これを文字列としてコピーライトを取得するにはどうすればいいのでしょうか?
- >>525
こうかな?
コピーライトの文字列長が取得できるなら、1024の所を入れ替えればおk
(si:unpack-string (si:make-chunk 'character 1024 (copyright)))
- あれ、文字列のメモリは呼び出し側で解放するのか?
Cで確保したメモリをLispで解放できるんだっけ?
- >>527
確保したのと対応するAPIを使えばほとんどの場合OK
でもスタティックなポインタを返してるだけな気がする
あとLISPの話はできれば本スレで
- >>526
ありがとうございます。
そのままだと"不正なデータ型です"と怒られましたが
(si:unpack-string (si:make-chunk 'character 1024 nil (copyright)) 0)
とすることで上手く動作しました。
'character のところなんですが、ここのTypeはいくつかあるんでしょうか?
ちなみにここを nil にしても動作したんですが、あまり意識しなくてもいいんですかね?
また、メモリの解放というのはsi:clear-chunkを使うっていうことでしょうか。
- >>529
スレ違い。
lisp書く場合は本スレへ。
- 最近はどっちも書き込みが少なかったわけだし、結局ほとんどの人が
両方のスレを見てるわけなので、どっちでもいいじゃないと思うのだけどね。
そういう自分は、>>1 の文章を書いた事に表されるように、
すみわけ希望者だったわけですが。
- 俺自身は住み分け不要と思っているけど、少なくとも今でも >>98 の
ような住み分け希望者がいるから推奨している。
これが住み分け希望者の望む姿なのだろう。
- 2ch-mode で2chのアダルト板が見れなくなってしまったんですが。
なにやったか、つーと、Rで全サイト更新?したら、アダルトが全て消えた。
で、2chのBBSデータとか全部消してやりなおしても、雑談から下が表示されない。
おれだけですか???
- >>533
bbsメニューが変わっただけ
アダルトとか見たいならそれに対応したbbsメニューを使えばいい
- >>533
otherbbs では対応したので(有効にするには該当部分のコメン
トアウトを外す必要があるけど)、otherbbs を使うのも1つの手。
直接直す場合は… menu.l の menu-parse-bbsmenu を、
(setq current (buffer-substring (match-beginning 1) (match-end 1)))
(when (equal current "まちBBS")
(return))
(loop
(cond ((looking-at "[ \n]*<A HREF=http://\\([^/]+\\)\\([^> ]+/\\)[^>]*>\\([^<]+\\)</A>[ \n]*\\(<BR>\\)+" t)
(push (list (buffer-substring (match-beginning 3) (match-end 3))
(buffer-substring (match-beginning 1) (match-end 1))
(buffer-substring (match-beginning 2) (match-end 2)))
board))
((looking-at "[ \n]*<A HREF=http://[^>]+>[^<]+</A>[ \n]*\\(?:<br>\\)*" t)
(goto-char (match-end 0))
t)
((looking-at "<FONT COLOR=#aaaaaa>[^<]+</FONT><BR>")
とすればいいんじゃまいか。ただ一応 bbsmenu.txt のバックアップは取っといた方がいい。
ないとは思うけど板移転を誤認識してログが変に移動してしまったりしたらゴメン。
- http://xyzzy.s53.xrea.com/wiki/index.php?QuickTour%2Fext%2FNetInstaller
ここをみてNetInstallerをインストールしようとして
おもむろにM-x netinstallerと入力しても何もでてきません
ただ「M-x netinstaller」とだけ書かれたテキストファイルができるだけです
環境変数はセットしました
- M- ってのは Alt を押しながら、って意味だよ?
- 夏だなぁ
- >>536
面倒臭がらずにQuickTourの頭から順に読んでいった方がいいよ。
http://xyzzy.s53.xrea.com/wiki/index.php?QuickTour
- >>537
ありがとうございました
- >>535
(buffer-substring (match-beginning 1) (match-end 1))
は
(match-string 1)
と書くとすっきりするよ。
- >>541
指摘感謝。指摘部分はもともとのコードがそうなっていたのでそのままにしてあります。
otherbbs では両方その時の気分で書いちゃってたりするんだよなぁ…('A`)
- こんにちは。質問させてください。
ツールバーを標準の位置ではなく、ウインドウの横や下部に表示させているスクリーンショットを散見します。
自分もこのようにしたいのですが、これはLispをガリガリ書かないとできないものなのでしょうか?
- >>543
ドラッグ&ドロップ
- >>544
できた!!
ありがとございます。
- 教えてください。
新しいChangelogmemo(20060308版)で、自分(*cl-user*)以外名前の
エントリを検索したいときはどうすればよいのでしょうか?
あと、タブ付きのエントリをcl-convertを使わないで、そのまま使うのは
無理なのでしょうか?
共用のchangelogの編集に使いたいんですが、上記の2つがネックで・・・
だけど、あの便利な検索機能は捨てがたい〜
- 指定した行番号のテキストを削除するようなコマンドはありますか?
3〜9行目を指定したら、その行が削除されるという感じです。
- ありませんが、簡単に書けます。
これ以上はスレ違いになりますので、
本スレに移行してください。
- >518-529みたいな話は本スレいってくれと思うが、
>547はlispを書くことが前提じゃないしいいんじゃねとオモタ
>>547
ESC g 始めの行を入力 C-u 削除する行数を入力 C-k
lispで書くなら
(defun kill-lines (s e)
(interactive "nstart line: \nnend line: ")
(multiple-value-setq (s e) (values (min s e) (max s e)))
(save-excursion
(and (goto-line s)
(let ((sp (point)))
(and (goto-line e)
(or (next-line) (goto-eol))
(delete-region sp (point)))))))
- >>549
ウホッ、素晴らしいです
ありがとうございました
- emacs で使う windows.el のような、画面分割情報保存できるものは、
xyzzy にありますか?
- save-window-configuration-to-register がやや近いかな?
- それだったら emacs にもあるんだった。
というか、ここはむしろ session を薦めるべきかも。
- shell-executeしたとき異様に時間がかかることがあるんだけど
こういう人ほかにもいる?
やっぱwindowsMeが悪いのかな。orz
- KaMailV3使っていますが、hyperestraierを1.2.8から1.3.7に入れ替えて、
import-mh-folderでインポートし直したんですが、
検索してもメールがまったく表示されません。
hyperestraier-1.3.7は今のKaMailV3では、サポートされていないんですかね。
- >>555
KaMailV3 0.0.1.3beta2 + Hyper Estraier 1.3.7 on Windows (MinGW)
でうちでは検索できるようです.
- >>556
hyperestraierのバイナリ入れ替えだけで、うまくいったんですか?
なにかやり方間違えているのかな。
MIME関係のバグが直っているというから、1.3.7に上げたいんだけど。
- >>557
えっとすみません,>>555で
>hyperestraier-1.3.7は今のKaMailV3では、サポートされていないんですかね。
と書かれていたので,KaMailV3 + HyperEstraier 1.3.7 の組み合わせは
使えるみたいですよという意味での>>556です.
で,私は HyperEstraier 1.3.1->1.3.7 のバイナリ入れ替えのみです.
- すいません。ちょっと2点ほど教えていただきたいことがあります。
・1点目
c-mode or c++-modeで"インデントにタブを使う"が起動させるたびに
チェックが外れるんですが、常にチェックがついたままになりませんか?
・2点目
shellモードでexitコマンドを打ったときにshellバッファが自動的に
閉じるような設定にできませんか。できるようであれば教えていただきたい。
以上2点、教えて君で申し訳ないですが教えてください。
- >>559
> ・2点目
関数上書きしてるけどこれでできてそう
(in-package "ed")
(defun shell ()
(interactive)
(set-buffer (get-buffer-create "*Shell*"))
(let ((proc (buffer-process (selected-buffer))))
(and proc (eq (process-status proc) ':run)
(return-from shell t)))
(goto-char (point-max))
(shell-mode)
(make-process *eshell* :output (selected-buffer))
(set-process-sentinel (buffer-process (selected-buffer))
(lambda (proc)
(interactive)
(delete-buffer (process-buffer proc))
(refresh-screen))))
(in-package "user")
- >>560 の下から四行目 interactive は要らなかった
>>559
> ・1点目
これで。
(setq *c-indent-tabs-mode* t)
(setq *c++-indent-tabs-mode* t)
- >>560
確かに、shell は process 生成した後に呼び出すフックがないので
書換えが必要になっちゃうよね。だから自分は、
(defvar *shell-mode-post-hook* nil "Processを起動後に呼び出されるフック")
を追加した上で、
(run-hooks '*shell-mode-post-hook*)
を make-process の後に追加している。
こうすれば、本体の書換え一回だけですむしね。
- ついでに、 make-process も
(defun shell ()
(interactive)
(let ((default (default-directory)))
(set-buffer (get-buffer-create "*Shell*"))
(let ((proc (buffer-process (selected-buffer))))
(and proc (eq (process-status proc) ':run)
(return-from shell t)))
(goto-char (point-max))
(shell-mode)
(make-process *eshell* :output (selected-buffer)
:environ '(("XYZZY_SHELL" . "1") ("CHERE_INVOKING" . "1"))
:exec-directory default)
(run-hooks '*shell-mode-post-hook*)))
としておくと bash のときに、元のバッファのディレクトリををカレントディレクトリにして
起動してくれるから便利だよ
- どうもありがとうございます。
一点目は>>561で、2点目は>>560で無事、希望の動作をしてくれました。
>>562-563も試してみたのですが、うまく動作してくれませんでした。
>(defvar *shell-mode-post-hook* nil "Processを起動後に呼び出されるフック")
たぶん、上の設定がうまく出来てないからのような気がするのですが、
今の私では解決できそうにありませんので>>562の方法はまた自分でlipsを勉強してやってみます。
562さん、すいません。
ありがとうございました。
- >>311を含むolt2の更新はまだかな。。。
- C-x、@でmakeとかのコマンドを実行した後、フォーカスが新しく開いたウインドウ(フレーム?)
に移ってしまうのですが、これを拒否する方法はないですか?
つまり、コマンドを実行した後も、もとのバッファにフォーカスがありたいです。
- 関数上書きして
(defun pipe-command (cmd)
(interactive "e@ " :history0 'execute)
(execute-shell-command cmd t "*Shell output*")
(other-window))
こんなのですか
- >>567
上書きせずに別名の関数にするほうが良くない?
- じゃあこっちで
(defun my-pipe-command ()
(call-interactively 'pipe-command)
(other-window))
- C-c C-r で単語登録を呼び出したときに
クリップボードの中身を「語句」の部分に貼り付けることってできる?
- >>570
(defun my-ime-register-word-dialog ()
(interactive)
(*ime-register-word-dialog (get-clipboard-data)
(map-to-full-width-string (cdr (get-ime-composition-string))
:ascii t :hiragana t)))
(global-set-key '(#\C-c #\C-r) #'my-ime-register-word-dialog)
- F8キーのcopy-selectionでコピーした選択部分が
C-yのyankでも、マウス操作のクリップボードから貼り付けでも
出力できないのですが、どうやれば貼り付けられますか?
- すいません…F9のyank-selectionで貼り付けるんですねorz
- >>572
F9のyank-selection
- >>574
しょうもないことで手間かけさせてすみみません
ちゃんと確認してから書き込むようにします…
- >>571
ありがとー
- xyzzyの機能一覧に
「確定してしまった漢字を変換前の状態に戻せるなど、IMEを操作できる」
とあるんですが、どうやるんでしょうか?
- >>577
C-c C-c でおk?
Ctrl + Backspace でも出来たような(これはMS-IMEのショートカットキーだったかな)
- xyzzyを使い始めてみたんですがこの変態キーバインドを習得するのは苦労しそうです。。。挫折しそう
しかし、変態キーバインドを習得してUNIXでもEmacsをそのまま使いたいのでがんばってみます。
それとも、gatesモードをベースに自分でカスタマイズしていく物なんですかね?
- もう一つ質問、このスレ的に「入門xyzzy」っつー本はお薦め/地雷
のどっちですかね?
- >>578
レスどうもです。
C-c C-c は既に別の関数を上書きしてしまってたので
文字を選択した状態でedit-abbrevs-redefineを直接叩いてみましたが
再変換されませんでした。 Ctrl + Backspaceもダメでした
IMEの方のせいでしょうか?
環境はWin2000のIME2000です。
- >>579
キーボードはゲイツを使わずに頑張れ。すぐ慣れるよ
入門xyzzyはあなたみたいな使い始めの人にはとてもオススメ
ある程度使いこなしてる人にはいらないかもしれないけどね
- >>581
> 文字を選択した状態でedit-abbrevs-redefineを直接叩いてみましたが
rewind-ime-composition じゃないの?
- C-c C-fでファイラ開いたときにいつも直前の
バッファと同じディレクトリにいることはできますか?
(C-x C-f RETは1画面ですね)
- できます。
多少のlispを書く必要があるので、
本スレで再質問をどうぞ。
- >>585
簡単にとはいかないんですね。よく調べてからまた来ます。
- >>584
ttp://xyzzy.s53.xrea.com/reference/wiki.cgi?p=%2Afiler%2Dprimary%2Ddirectory%2A
ここの使用例でできる
これに(global-set-key '(#\C-c #\C-f) 'foo)とでもしておく
関数名は適当なのに変えたほうがいい気する
- >>583
うえあ、C-c C-cのコマンドをgrepしたら出てきたのが
edit-abbrevs-redefineだったので 間違えてました…。
rewind-ime-compositionで できました。
ありがとうございます。
でもこれ漢字の再変換はできないんですね。
てっきりそれができるもんだと思ってました、残念。
- >>587
(*^ー゚)b グッジョブ!!
;; 常にカレントディレクトリからファイラを起動する。
(defun open-filer-current ()
(interactive)
(let ((*filer-primary-directory* nil))
(open-filer)))
(global-set-key '(#\C-c #\C-f) 'open-filer-current)
- skk-mode で「かなモード」でも、カンマ (",")、ピリオド (".") を
句読点 (「、」「。」) ではなく、そのまま入力するにはどうすれば
良いでしょうか?
本家 skk では .skk に下記のように書けば可能です。
(setq skk-rom-kana-rule-list
'(("." nil ".")
("," nil ",")))
しかし skk-mode on xyzzy で同じことをやって思うように動きません。
skk.l も見てみましたがよくわかりませんでした。
ちょっとスレ違いかもしれませんが、聞くところがないので
よろしくお願いします。
- >>590
skk.lのページのコードでダメですか?
- firefoxから2ch-modeにurlを渡したいのだけど、どうしたらよいでしょうか
- uキーじゃダメなのか
- 2ch-mode開いていたらそれでもよいんだけど、2chのリンクをクリックしたら
2ch-modeで開くようにしたい。そのためのコマンドラインオプションとか教えて
欲しい。
- www-mode上で使えるw3mのバイナリ、どこかに落ちていませんか?
- >>595
うちではここの「必要なもの」のとこから持ってきたら動いたよ
ttp://int.parfait.ne.jp/ols/w3monwin.html
- >>594
見た感じで -e (2ch::thread-open-2ch-url "URL")
かと思ったけど色々変数が定義されて無いって怒られる。
しかもこの変数、q押してBoardの画面に戻る時にどこに戻るか、とか
2ch-modeを開いてないと設定されないような変数だからちょっと厳しいかも。
- >>597
(require "2ch/main")
(defun foo (url)
(2ch)
(2ch::history-current-show)
(2ch::thread-open-2ch-url url))
を .xyzzy に書けばおけ。
- >>596
ありがとうございます
他のバイナリなども試した結果、私のオンボロパソコンではw3mは起動しないことがわかりました
- >>599
おんぼろスペック環境kwsk
- >>599
起動しないんじゃなく起動してすぐに終了してるだけじゃね?
- w3m が起動しないおんぼろってどんなのだよw
- 環境はwin98SEでAMDK6の500MHz、メモリ315Mです
M-x:www と打ち込むとw3m excuting...とステータスバーに表示されたまま操作不能になります。
- おいおい、俺はついこの間までPen166, Mem90で動かしてたんだぞこのやろー
- >>603
十分動くスペック
- 2ch-modeの「追っかけスレ」モードでキーバインドを変更する
にはどうしたらいいでしょうか?
(add-hook '*2ch-mode-hook*
#'(lambda ()
(undefine-key *tracking-map* #\C-k)
))
これではダメみたいで…
- >>606
config.lにコレだけ書けばいいんじゃないの?
(undefine-key *tracking-map* #\C-k)
- >>606
*2ch-mode-hook* という変数はない。
使うなら *2ch-start-hook* だけど、>>607 のやり方で十分だと思う。
- >>608 >>607
config.l のこと忘れてて、.xyzzy に書いていました。OTL
多謝です。
- www-modeってw3mのconfing記載(オプションパネルで書いても同じ)相当
Domains to be accessed directly (no proxy) [http://127,0,0,1 ]
~/w3m/confingの
noproxy_netaddr 1
no_proxy http://127,0,0,1
あたり効かないのでしょうかorz
; PROXY を経由しないホストのリスト
(setq *www-direct-connect-list* '("direct1.http://127,0,0,1"
"direct2.http://localhost"))
色々書き換えてもことごとくproxy繋ごうとします('A` 無理やり書
き換えればw3m -no-proxyがありますが...指定しちゃうと普段
proxy無視するから 簡単にlocalhostに繋ぎたいんですが無理かな?
- > no_proxy http://127,0,0,1
なんでカンマなの?IPアドレスの区切りは普通ドットだと思うんだが?
- >>610
direct1.は要らない予感
- ほーんとだ('A`
とおもいきや
,でも.でもデリミタにしてしまう。。。
なんて適当な、いや懐深いw3m。うっかりさんでもへっちゃらsa
そしてなぜに動かないんだろう....orz
とりあえず直してみても変わらず
(setq *www-direct-connect-list* '("http://127.0.0.1"
"http://localhost"))
とか
(setq *www-direct-connect-list* '("http://127,0,0,1"))
;; "direct2.http://localhost"))
とか書換てみたり
謎。動きそうに見えるんだけど
w3mでは繋げるけどwww-modeでは出来ないなんて事無いよね
気のせいじゃない。できるよね。できそうには見える...orz
からなんか悲しい。
- ↑間違い訂正
(setq *www-direct-connect-list* '("http://127.0.0.1"))
;; "direct2.http://localhost"))
M-x www-open-urlでhttp://127.0.0.1:port番号って
www-modeでは出来ないのかな...
port指定が出来ないならlocalhostの方で指定すれば
いいんだろうか...
- これをどなたか xyzzy に移植してくださらんかのぅ…
他力本願で申し訳ないが、超便利なんです。
カーソル移動を加速する
ttp://www.bookshelf.jp/cgi-bin/goto.cgi?file=meadow&node=highspeed%20scroll
- >>615
テンプレ読んだ?
>自分でlispが書けるような方,こんな機能が欲しいのですが
>だれか作ってくださいという方は Win板本スレへ。
- >>615
移植して思った。 C-v、 M-v 使え。
- >>615
同じかめーさん作の kbdacc を使ったらどうかと。
- >>616
テンプレ読み忘れていました。すみません。
>>615
へ〜こんなのあるんですねぇ。どうもです。
- >>610
(setq *www-direct-connect-list* '("127.0.0.1"
"localhost))
とすればできそう。
http://localhost:port番号 もできるみたい。
- http://xyzzy.s53.xrea.com/wiki/index.php?QuickTour%2Fext%2FKaTeX
ここを参考にKatexをインストールしようとしたのですが
途中でこけてしまいます
NetInstallerまではうまく行きましたが
>;;; elispパッケージを有効にする
>(require "elisp")
上記2行を.xyzzyに入力したにも関わらず
M-x: elisp::katex-byte-compile を呼び出せません。(elispの途中で補完されなくなる)
環境変数にXYZZYHOMEは設定しています
site-lisp/elisp.l ファイルはあります
他に設定を見直すとこはないでしょうか?
- >>620
レスありがとう。
今だlocalhostに繋げない.....諦めるぽ('A`
www-modeでlocalhost繋いでる方いたら
書いてくれると嬉しいです。
- >>621
> http://xyzzy.s53.xrea.com/wiki/index.php?QuickTour%2Fext%2FKaTeX
(snip)
> 上記2行を.xyzzyに入力したにも関わらず
> M-x: elisp::katex-byte-compile を呼び出せません。(elispの途中で補完されなくなる)
「KaTeX のバイトコンパイル」のところをもう一回読み直しな。
katexins.l をロードしろって書いてあるから。
- >>623
ありがとうございます。うまくいきました。
katexins.lは一回ロードしてたんですが
"elisp::〜"がタブで補完されない事を知らずにハマってました。
- あの、助けてください!!xyzzyで、HPを作る課題があるのですが、超初心者なので困っています。
ページ作りまでのやり方を教えてもらえませんか!?
- HPは大きなところですから、つくるとなるとかなり資金がいると思います。
- ヒューレットパッカード?
- HPといったら通常そうですね。
- おまえらHPといったら心臓周期heart periodに決まっているでしょうが
- xyzzy で、って時点でかなりマニアックな課題だな。
- ゲーマーな俺としてはヒットポイントを推したい。
- >>630
> xyzzy で、って時点でかなりマニアックな課題だな。
マイナーで使いにくいソフトウェアを十分使えるようになるには、検索技術や
メディアリテラシーが必要で、なおかつ掲示板やwikiでのコミュニケーション
能力も試されるという一石五鳥くらいを狙った課題何じゃないの。
- >>625
xyzzy 特有の問題としては何がありますか?
また、その問題についてあなたはどのように調べましたか?
- xyzzyはtex使うときしか使わないな。
他はemeditorかterapadを使っている。
- >>579
おれはgatesモード無視してWindows準拠にカスタマイズしまくってるよ
- >>625
まずはスタンフォードに。
- gatesよりプレフィクスが残っているwinkey2の方が勝手がいい。
ttp://www.uranus.dti.ne.jp/~shiro-/soft/xyzzy/keybind.html#windows
その簡易版
ttp://diary.noasobi.net/2003/06/diary_030610a.html
以前はtoggle-gatesでwinkey2を呼び出して、使っていたこともある
- >>637
Shift+Deleteとかが抜けてんのよねそれ。
誰か完璧バージョン作っちゃればいいのに。
- >>638
いいだしっぺが是非
- >>639
うっさいわボケ氏ね。
(require "gates")
(defvar *default-selection-keymap*
(let ((keymap (make-sparse-keymap)))
(define-key keymap #\C-c 'copy-selection-to-clipboard)
(define-key keymap #\C-x 'kill-selection-to-clipboard) keymap))
(setq-default selection-keymap *default-selection-keymap*)
(global-set-key #\C-x 'ctl-x-prefix)
(global-set-key #\C-c 'specific-command-prefix)
(global-set-key #\S-Delete #'kill-selection-to-clipboard)
自分は #\C-n とか #\C-p とかは xyzzy のが便利だから gates は使ってない。
足りないとこあるかも。
- すみません。xyzzyで任意の文字コードを取得する方法はありますか?
.xyzzyに(setq *status-bar-format* "cpT")
をすることで、シフトJISの文字コードはわかりますがJISコードなど他のコードを知る方法はありますか?
秀丸ですと、
その他→コマンド一覧→その他→文字コード一覧
見たいな感じで取得できるのですが。
基本的に職場でもxyzzyを使用しているのでxyzzyで上記のような文字コードを
取得したいと思い、質問しました。
よろしければお答えください。
- xyzzy の公式サイトの title わらた
- >>641
質問がよく分からないんだけど、
xyzzyで使える文字コードが知りたいという事?
だったら ツール 共通設定 の エンコーディング? のところにあるからそれで。
- >xyzzyで使える文字コードが知りたいという事
いえ、文字コードそのものが知りたいのです。
例えば、「春」ですと、.xyzzyに(setq *status-bar-format* "cpT")を追加すると
ステータスバーに8F74と表示されますが、これはシフトJISです。
それに加えて、「春」のほかの文字コード(JISコードなど)を知る方法です。
- >>644
C-x = でキャラクタコード、位置情報がステータスバーに表示されるようです。
Char: 春 (0x8f74 / U+6625 / 0x3d55[jisx0208]) point=0 of 1(0%) column 0
- >>644
map-internal-to-euc とか map-internal-to-utf-8
とかが使える気がするんだが、よく分からん。
- xyzzyでpy-modeというのを入れたんだけど
ループとか関数定義の終わりにインデントを戻そうとバックスペースを入力すると
警告ウインドウが出てうざい
正しいインデントの抜けかたがあるのでしょうか?
- >>647
自分はpy-mode.lの中のpy-electric-backspace関数の最後を
(error "Closes block: ~a" base-text)
から
(message "Closes block: ~a" base-text)
に書き換えた。
- emacsでいうところのhexl-modeはどうやったら使えますか?
- calc-modeで cos(90) = 0 と角度からcosの値を出せますが
逆に cos(x) の値から角度を出す時はどの関数を使えばいいんでしょうか?
- >>647
エラーの表示にマイルドさが足りないんじゃなかったっけ。たしか。
ツール > 共通設定 > さまざま
- >>651
ありがとう
解決しました
- >645
>646
ありがとうございました。C-x =で確かに表示されました。
ただ、常時ステータスバーに表示できないものでしょうか?
やはりxyzzyは難しいですね。でも他のエディタと違い色々できる点が魅力ですね。
- >>653
(setq *status-bar-format* "cupT")
でユニコードも表示できる
- >>654
>(setq *status-bar-format* "cupT")
>でユニコードも表示できる
でもさー653が
>.xyzzyに(setq *status-bar-format* "cpT")
>をすることで、シフトJISの文字コードはわかりますがJISコードなど他のコードを知る方法はありますか?
っていってるから、JISコードをステータスバー表示させたいんじゃないの?
俺はその方法を知らんが。馬鹿だから
- xml-mode で = を入力すると、
=""
となりますが、
="
とするにはどうしたらいいでしょう?
マニュアルには、
>タグの中では=""または=''を自動で挿入する。*xml-attrbute-quote-char*の値によりどちらか選択可能
とあるのですが、どう書いたらいいのかわかりません。
- tidyでHTMLの文法チェックをhtml+-modeで使えないかと思い
HTML入力サポート
http://chez-sugi.net/xyzzy/000952.html
を入れたのですが、
C-c t しても「削除されたウインドウです」としか表示されません。
*shell output*にも何も表示されません。
どういったことが問題と考えられますでしょうか。
- うーん、これを実行した後、ホイールを回すと「削除されたウインドウです」が表示されます
なんなんだろう・・・
- あ、なぜかTidyうまく表示されました
再起動したせいだろうか?
- >>656
もしシングルクオート2個じゃなくてダブルクオート1個を挿入したいなら
関数を再定義する必要がある。
シングルクオート2個でいいなら
(setq *xml-attribute-quote-char* #\')
- chcolor ver 1.02をつかって表示色を変えようとしているんですが、
自分で書いた設定ファイルを使うと、
文字の色が思っていた色と違う色(たぶん反転した色)
の表示になってしまうのですが、
そういうものなのでしょうか?
- >>567-569
できましたー。
非同期実行の方が便利そうなので、execute-subprocessを呼びました。
F9で、実行する感じで。
; コマンド実行
(defun do-command ()
(interactive)
(call-interactively 'execute-subprocess)
(other-window))
(global-set-key #\F9 'do-command)
(set-function-bar-label #\F9 "コマンド")
で、これをさらに使いやすくしたいと思います。
execute-subprocessを呼んだ時に、上を押すとコマンド履歴が見られますよね?
これをあらかじめ、指定するというか、
ひとつ前に入力したコマンドが最初に選択されているようにすることって、
できないでしょうか?
- >>653
適当だけどこんなのとか
(add-hook '*post-command-hook* 'what-cursor-position)
もうちょっとちゃんと書けば使い物になるかも。
ステータスバーじゃないとダメ?
- >>662
これでいいのかわからんけど
(defun do-command (cmd &optional (arg nil f) bufname environ directory)
(interactive "e& \np" :history0 'execute
:default0 (car *minibuffer-execute-history*))
(push cmd *minibuffer-execute-history*)
(if f
(execute-subprocess cmd arg bufname environ directory)
(execute-subprocess cmd))
(other-window))
- >>660
ああ、マニュアルに書いてあるのはシングルクォート2個だったのか。
ダブルクォート1個だと勘違いしていました。orz
関数とか自分でかけないのであきらめます。
どうもありがとうございました。
- >>664
できましたー。
:default0 指定すると、デフォルト値を設定できるのかな?
この辺ってどこら辺に書いてありますのン?
- >>666
リファレンスに。
ttp://xyzzy.s53.xrea.com/reference/wiki.cgi?p=interactive
- >>667
全然情報がないんだけどw
:title0 は表示する文字
:default0 はデフォルトの文字列
:default1, :default2は、なんだろ?
:history0 は・・・なんだ?
- >>668
類推しましょう。
0 が最初なら、1 はその次の、2 はその次の次のと思いませんか?
ドキュメントが不足していると思ったら、wiki に追加しておくと、
同じ思いを他の方がしないですみますね。
- 「2個目のデフォルト」の意味がよくわからない
- 2 番目の引数に対するデフォルト値
- :title0 って、つけた場合とつけない場合とどう違うんだろうか?
たいてい、
(defun emacs-write-file (filename)
(interactive "FWrite file: " :title0 "Write File")
(and (rename filename)
(save-buffer)))
こんな風に使われてるみたいだけど。
- :default1, :default2の挙動がわかんない
>>664に試しに :default1 "hoge"
と追加してみたけど、違いがわかんないや・・・
- title0: "titledesu"もつけてみたけど、全然かわらんw
うーん
- >>672
引数入力時にダイアログ表示したとき、タイトルバーに表示されるみたい
- >>668
:history0 はヒストリ種類のシンボルを指定する。
(defun fugaa (str)
(interactive "sString: " :history0 'search)
(msgbox str))
町名を入力することが多くってそれを独自のヒストリにしたいわ
と思ったらこう。
(define-history-variable *city-history* nil)
(setf (get :city 'minibuffer-history-variable) '*city-history*)
(defun city (str)
(interactive "sCity: " :history0 :city)
(msgbox str))
これは read-string とか completing-read とかの :history も同じ。
リファレンスだと「ヒストリに使用するリストを指定」となってるけど
実際はリストではなくシンボルを指定する。
誰かリファレンスに突っ込みいれときなさい。
- ちなみにヒストリってのはあれだ。ミニバッファで上下押したときに出てくるやつ。
- >>673
こんな感じ
(defun foo (a b)
(interactive "sFirst argument: \nsSecond argument: "
:default0 "first"
:default1 "second")
(message "~S, ~S" a b))
- >>675
Thx.
ファイル名入力の時にしか使われていない理由はそれだったのかと納得した。
- >>675
ダイアログ表示時しか関係ないのか。
>>678
なるほど、なるほど。
2回以上パラメータを入力するときに使うのか。
- xyzzy でウェブブラウズをまともに出来る方法ありますか?
emacs の w3m みたいな。
ちょっと検索したら、w3mを無理矢理動かしてるケースがいくつか見受けられましたが
あまりうまくいってなさ気。
- browserx じゃダメ?
IEコンポーネントを xyzzy 内で使うものだけど
- www-modeいいブラウザなのに。
- インクリメンタルサーチで大文字小文字を区別しない設定ってありますか?
- >>684
デフォルトで区別しないはずだが?
# ウチの環境がおかしいのかな?
- >>685
もうちょっと調べてみたところ
search-dialogの設定で「区別する」のチェックをはずすと
インクリメンタルサーチでも設定が反映されました。
ありがとうございます
- >>686
解決したみたいですが一応。
(setq *case-fold-search* t)
tを:smartにすると小文字なら区別せず、
大文字を入力した時だけ区別します。
- >>687
おおっ、すごい!こりゃ便利だ。
使わせてもらいます。
- 本スレでは相手にされませんでした。
列カーソルの表示は可能なのでしょうか?
- >>689
相手にされていると思うけど?
標準ではついていない
Lispでやろうとしてもかなり難しいだろうね
- >>689
列カーソルって何だよw
そういうのはお前の脳内だけで勘弁
- >691
行カーソルって言葉があるんだから列カーソルといえばわかるだろ?
煽るならもうちょっとマシな煽りを頼む。
- undoで
「これ以上アンドゥできません」
を出さなくする方法ってありますか?
- 共通設定のさまざまでエラーの表示をマイルドにするか、
(defun my-undo ()
(interactive)
(ignore-errors (undo)))
(global-set-key #\C-z my-undo)
- まちがえた。こうだ。
(defun my-undo ()
(interactive)
(ignore-errors (undo)))
(global-set-key #\C-z 'my-undo)
- ソースをいじくるしか道はないのか・・・>列カーソル
- >>696
ないと思うよ。
列カーソルを表示する Windows API なんてないしね。
ソース見ればどうやって行カーソルが実現されてるか分かるでしょ。
- >>692
「列カーソル」できるエディタって本当にあるの?
"列カーソル" 秀丸 で検索
http://www.google.co.jp/search?hl=ja&c2coff=1&client=firefox&rls=org.mozilla%3Aja%3Aofficial&q=%22%E5%88%97%E3%82%AB%E3%83%BC%E3%82%BD%E3%83%AB%22+%E7%A7%80%E4%B8%B8&btnG=Google+%E6%A4%9C%E7%B4%A2&lr=lang_ja
- >>695
.xyzzyに書き込んで試したらうまくいきました。ありがとう。
beep音は残したいと思っていたけど、これはこれで静かでいい感じっす。
- ようは、xyzzyでカーソルの縦線を延ばして行カーソルと十字になるように
できないかな・・・と秀丸を見て思っただけです。
この空気では無理そうですね。
- 空気じゃなくて書かれてる事で判断しようよ
- 超絶列カーソル。2バイト文字を使う奴はすべからく死ぬべきだ。
↓の数字を変えると色が変わる。
(setq fsadf-highlight-args '(:background 1 :foreground 0))
(defun fsadf-highlight ()
(interactive)
(fsadf-delete-hightlight)
(save-excursion
(let ((column (current-virtual-column)))
(goto-virtual-line (get-window-start-line))
(dotimes (i (1+ (window-lines)))
(when (or (= column (goto-virtual-column column))
(= (1+ column) (goto-virtual-column (1+ column))))
(unless (eq (following-char) #\TAB)
(apply #'set-text-attribute
(point)
(1+ (point))
:fsadf
fsadf-highlight-args)))
(unless (next-virtual-line)
(return)))
)))
(defun fsadf-delete-hightlight ()
(delete-text-attributes :fsadf))
(add-hook '*post-command-hook* 'fsadf-highlight)
- >>702
うはははははwwwwこいつはすげえやwwww気に入ったwwww
hownインストールに成功した方いらっしゃるでしょうか。
できればどのような手順でインストールしたか教えて頂きたいのですが。
- hownは無理
- ttp://homepage3.nifty.com/~ko-ji/
- >>705
だからhownは無理だって。
- typoくらい許してやろうぜ…
- そういえば無いね、列カーソル
セレクションみたいに色を変えるだけとかなら割と。
と思ったら>>702が当にそれっぽいね。
- どうでもいいけど、何でこんな刺々しい雰囲気なんだ
xyzzyの使い方が分からぬやしが罵り合うスレとかにでも移住してくれ
- >>702
GJww
- >>709
みんな>>689の態度が気に入らなかったんだろう
- >>711
そうだよ
- 本スレが気に入らないから来てやった。
お前らなんとかしろ!っていっているように聞こえた品
- >>703
ttp://d.hatena.ne.jp/kou21058/searchdiary?word=*%5Bhowm-wrap%5D
こんなのあった。というかそのままのような気が..
ディレクトリ名はhownじゃなくてhowmにしないと動かない。
- まあ、実際思うような機能の追加はできないんだけどね。
- tw-mode
http://ajdam.web.fc2.com/tw-mode.html
- >>715
howmのこと?思うような機能の追加とは?
大抵の動作は再現できると思うけど、問題は誰がやるかじゃないかと。
- >>716
ちょっと興味あるんだけど、howmに比べてどんなメリットがあるの?
- loginメッセージ?みたいな事...
メニュー>ツールから
fortuneをコマンドラインを非同期で実行(A)
...すると出ます
これを起動時に出すには如何すれば...いいんでしょうか...
.logonじゃないけどxyzzyが立ち上がるとき出して...
Ben (Obi-Wan) Kenobi:
You must learn the ways of the Force
if you are to come with me to Alderaan.
こんなの出してふいんき出したいです><
一発ネタでごめんなさい。ふいんき出したいな...
- >>715
よくわからんけど、configファイルを使わないと機能追加できないってことかな?
「5. 必要なら howm-wrap/config/ 以下の初期化ファイルをホームディレクトリにコピーする。」
というのは、howm-pre-init.l、howm-init.lをxyzzy.exeのあるディレクトリにコピーするという意味
(言うまでもないかもしれんが)。
ここや本スレの過去ログやweb上にもいくつかの機能追加・修正のコードがあるから
探してみてくださいな。
- php-mode を導入しようとして、readme の文面を.xyzzy に書くと、
「名前が衝突するためexportできません: editor::php-mode」とエラーが
でてしまいます。
(in-package "editor")
(load-library "php-mode")
(pushnew '("\\.php$" . php-mode) *auto-mode-alist*)
;; php-miscを使う場合
(load-library "php-misc")
(in-package "user")
などと in-package で囲んだり、siteinit.l に移したりしても駄目。
(push '("\\.php$" . editor::php-mode) *auto-mode-alist*)
(autoload 'editor::php-mode "php-mode" t)
とやっても上手く行きませんでした。
ご教示お願いします。m(_ _)m
- >>721
これ以外に、どこか php-mode という文字が siteinit.l とか
.xyzzy にあったりしない?
あと siteinit.lc があるなら、ちゃんと更新されているかの確認とか。
- >>722
これですかね?
$XYZZY/site-lisp/siteinit.l
;; comment.l
(require "elisp")
(load "~/site-lisp/katex/comment.lc") ; 未コンパイルならcomment.l
(load "~/site-lisp/comment.lc")
[省略]
;; 1 行コメントをトグル
(defvar *one-line-comment-alist*
'(
[省略]
(php-mode . ("//")) ; <--!
))
siteinit.lc は再バイトコンパイル&ダンプ済みです。
- >>723
> ;; 1 行コメントをトグル
> (defvar *one-line-comment-alist*
> '(
> [省略]
> (php-mode . ("//")) ; <--!
> ))
これだと思います。 この時点で user::php-mode というシンボルができてしまいます。
この後で php-mode を読み込んで (export 'php-mode) しようとしても、既に
user パッケージに php-mode というシンボルがあるのでエラーが出るんだと思います。
(ed::php-mode . ("//")) ; <--!
にするか、php-mode のロード後に comment.l の設定をするようにしたら直りませんか?
- >>724
php-mode を comment.l の前に設定し、siteinit のバイトコンパイル&ダンプ
でいけました。感謝です。m(_ _)m
- ttp://homepage2.nifty.com/kimagurenixyzzy/
ここのdsearch.lを使用していますが、M-x: dsearch-inputで
文字入力をすると勝手にmigemoがonになってしまいます。
どうすればmigemoを使わないようにできますか?
- 解決しました。
complete+.lの設定の問題でした。
- ファイラーでファイルを削除するときゴミ箱にいれるのと、直接削ってしまうのと
ゴミ箱を空にするのを選べるというか、それぞれ別のキーに設定したいんだけど
どうしたらいいでしょうか
- >>728
適当にやるならこんな感じかな。
まじめにやるなら filer-query-delete あたりを書き換えて
ダイアログから選択できるようにしてもいいかもしれないけど。
(defun filer-delete-recycle ()
(let ((*filer-use-recycle-bin* t))
(filer-delete)))
(defun filer-delete-no-recycle ()
(let ((*filer-use-recycle-bin* nil))
(filer-delete)))
(define-key filer-keymap #\D 'filer-delete-recycle)
(define-key filer-keymap #\C-d 'filer-delete-no-recycle)
- >729
ありがとうございます。ごみ箱をからにするのは別のソフトにまかせることにします
- 入門Common Lisp本
http://www.cbook24.com/bm_detail.asp?sku=4839920818&so=m20060912
少し前に話題になっていた
列カーソル Color-line.l
http://web.archive.org/web/20040408232830/http://www.haide.net/%7Etsukushi/xyzzy/#color-line
- >>731
> 列カーソル Color-line.l
行カーソルに見えるのは気のせい?
- >>732
ゴメンナサイ。
カーソル行でした。
- >>732
そうだよね。なんで、列表示できるのか必死に分解して動作を見てたりしてしまった。
- CalMemoはNetInstallerからじゃないとインストールできないのでしょうか?
Hie氏のページを見ても配布されていないようです。
- netinstallerで置いてある場所を調べて落として手動インストールもできる。
- >>736
「netinstaller配布用パッケージ」と書いてあるリンクを調べたらありました。
ありがとうございました。
- >>460ですがKaMailV3 0.0.1.4beta3にしても未だに解決できないです。助けて
- M-x align
ttp://d.hatena.ne.jp/higepon/20060913/1158141500#c
の xyzzy 版ありませんか?あと、
$abc = 'foo';
$defghi = 'bar';
とかあったら、= を揃える方法はありませんか?
- >>739
無意味なのでヤメレ
- 無駄に否定的なw
別にやめることはないだろ。
>>739
xyzzyにはないかもね
ここ↓にあるみたいだから移植したらいいんじゃない。
http://www.emacswiki.org/cgi-bin/wiki/align.el
- よく考えたらコーディング規約で「○○の位置は揃えること」ってのがあったorz
>740を書いた俺がバカだったorz
- 739 みたいなのはそれなりに需要があるんだね。
- Wikiは凍結されていたので、ここで。
http://www.jaist.ac.jp/~m-nakano/ni/package.l
- >>744
こんなのあったんですね
739じゃないけど、ありがとう
- しばらく使ってるとM-F1とかのファンクションバーラベルが表示されなくなるのは回避不可ですか?
- >>>744そんなのあったんだね。嘘を書いてしまった。
xyzzyのlispは公開されてないけど、ってのが実は結構あるのかな。
- (setq *foo* "D:/foo/")
(setq *bar* (merge-pathnames "/" (pathname-device *foo*)))
これやると*bar*がD:じゃなくてC:を返しちゃうんですけどどうしたらいいですか
- >>748
(merge-pathnames "/" "D:/foo/")
とか
(merge-pathnames "/" (concat (pathname-device "D:/foo/") ":"))
とか。
xyzzy Part14の98〜105あたりを見て。
- (concat (pathname-device *foo*) ":/")
で十分な希ガス。
- >>749-750
ありがとうございます。
>>750の方法で上手くいきました。
やりたい事は本スレ95とほぼ同じです。
- 今度こそ書き込み
- C言語などで
#if 0
#endif
というのがありますが、このとき
#if 1だと通常のc-modeでの表示をし
#if 0だと、その部分の色を変えることをしたいのですが、
何か良い知恵はありますでしょうか?
- すみません、もしかしたらそのようなlispあったかも・・・
もう少し探します。
- >754
見つかったら教えてくれ ○| ̄|_
- >>753
M-x hide-ifdef
- バックアップを残さない設定で同じ ID のファイルに書き戻すようにできますか?
- なにいってるのかわからん。
同じIDってなんのこといってんの?
- >>756
横レスだがthx.
…と言いたいところですが…
int main(int argc, char** argv)
{
#ifdef 0
return 0;
#else
return 1;
#endif
}
こんなCファイルを作ってM-x hide-ifdefを実行すると
「何か知らんけどcppがエラー」と言われてしまいます。
このコマンドはどう使えばいいんでしょうか?
- >>759
> #ifdef 0
ここの0が識別子じゃないとダメっぽい。
けど、期待する動作じゃないと思う。
- >>759
> こんなCファイルを作ってM-x hide-ifdefを実行すると
> 「何か知らんけどcppがエラー」と言われてしまいます。
> このコマンドはどう使えばいいんでしょうか?
*hide-ifdef-cpp*を使っているコンパイラにあわせて設定します。
- >>760-761
ありがとうございます。
あとでhide-ifdefの定義を見ながら色々試してみます。
- #if 0の部分を色を変えるだけなのに、色々制約があるなんてなあ・・・
ちんこ!!
- 制約じゃなくて、設定の間違いじゃないかと
久方ぶりに小一時間といつめいた気分。
- ファイル→新規作成と、M-x 何とかモード
ってのを一気にやる方法ってないですか?
xyzzyのruby-modeのruby-run-script-immediateが、irbより便利なので、
お手軽にできないかと。
- でもこれ便利そうだ。
長い if 0 とかわけわかんなくなるしw
- ruby-modeの=begin =endとかみたいに、色分けできたらいいのにね。
- >>765
C-x C-f は?
- >>765
(setq *default-buffer-mode* 'ed::ruby-mode)
とかどう?
- >>768
?
>>769
デフォが、ruby-modeになっちゃうのはちょっと・・・
- ファイル名が必要ないなら、こんなので、
(defun new-tmp-file ()
"temporaryバッファの作成"
(interactive)
(switch-to-buffer (create-new-buffer "*temp*"))
(ruby-mode)
(make-local-variable 'need-not-save)
(setq need-not-save t))
必要なら
create-new-buffer じゃなくて make-temp-file-name 使うようにすればいいかな。
- (pushnew '("\\.rb$" . ed::ruby-mode) *auto-mode-alist* :test 'equal)
しといて、
C-x C-f hoge.rb
とするのが定石じゃない?
- #includeがあると上手く行かんなぁ・・・ >hideif
- >>773
*hide-ifdef-cpp-flags* や 「.hide-if」ってファイルで
インクルードパスを設定するとうまくいく。
変数に設定するときには、\ とか " とかエスケープするのを忘れずに
にしても、コンパイラから解析結果を調達してるとは思わなかった。
- >>774
あっ、ありがとう。
明日、試してみます。
- ifdef-modeキボンヌ
- >>772
そ、そういうことか・・・
どうせ保存しないなら、ファイル名適当でいいすね・・・
それいただきます
- C-x b のあと C-i で補間させると候補が一つしかなくても拡張子が補間されなくなってしまった
心当たりがありすぎて途方にくれてるんですがこの中にエスパーはいませんか。
- C-x bの後のC-iに何の機能が割り当てられているかキー割り当てを見たら?
- 複数のファイルを一つにまとめたいんですが
その際に内容の前にファイル名も入れたいです。
*****ファイルA*****
ファイルAの内容
を繰り返して一つのファイルにしたい
- >>780
便利な使い方が思いつかないのでこれを元に使いたいように改造してくれ
(defun insert-all-file (folder)
(interactive "DFolder: ")
(dolist (filename (directory folder :wild "*.txt" :absolute t :recursive t) )
(and (insert "*****" (file-namestring filename) "*****" #\C-j)
(insert-file filename))
)
)
- >>781
レスありがとうございます。
1時間くらい改造してみようとしました
さっぱりわかりません
下記のようにやりたいので
どこを返ればいいかよければお教えください。
*****ファイルA*****
ファイルAの内容
*****ファイルB*****
ファイルBの内容
- >(dolist (filename (directory folder :wild "*.txt" :absolute t :recursive t) )
(dolist (filename '(ファイルA ファイルB))
- auto-save-buffers.lを使わせてもらっているのですが、保存するときに、
共通設定で「マウスカーソルを消す」にしていても、一瞬カーソルがちらっと見えてしまうのが気になります。
何とかならないでしょうか。
- マウスカーソルをどこか適当な座標に飛ばしてしまえばいいかなと思ったのですが、
require-mouse-moveという謎な関数が見つかったもののどうしたものやら……
- win板に移動します。
- >>782
goto-char してなかったのでちょっと修正
ファイル名が分かっているなら>>783のようにファイル名取得箇所を固定ファイル名にすればいいです。
(defun insert-all-file (folder wild)
(interactive "DFolder: \n1sWild: " :default1 "*.txt")
(dolist (filename (directory folder :wild wild :absolute t :recursive t) )
(insert "*****" (file-namestring filename) "*****" #\C-j)
(insert-file filename)
(goto-char (point-max))
(insert #\C-j)
)
)
後は適当に新規バッファ作ってそこに書くとか追加すれば使い物になるかも
- こんな感じでいいみたい
(defun listup-files()
(switch-to-buffer "*all-file*")
(insert-all-file "C:/Home/" "*.txt")
)
- アーカイバDLLの場所を指定するにはどうしたらいいですか?
探してもそれっぽいパッケージが見当たらないんですが
- >>789
PATHの通ったディレクトリにおいとけ
- リファレンス関連の更新お疲れ様です。
- >>789
環境変数PATHで指定するということ
- etcあたりで完結できたら便利だと思ったんですが、諦めます。
ありがとうございました。
- browserex のブラウザフレームのサイズ指定
(setq bx:*browser-width* [ピクセル数])
(setq bx:*browser-height* [ピクセル数])
を .xyzzy 又は、siteinit.l に指定しても反映されません orz
どなたかお教え願います。
xyzzyy v.0.2.2.235
browseex v.20051008
browser.dll いまいたけをさん の拡張版 browser.dll
- > xyzzyy v.0.2.2.235
> browseex v.20051008
xyzzy v.0.2.2.235
browserex v.20051008
の誤りです・・・ orz
- 自己解決しますた。
スレ汚し、スマソです 。・゚・(ノД`)・゚・。
メニューバーに“BX”なるものがあり、その中の「設定」で出来ました。。。
- >>793
おい
- >>793
>>792
- >>793 は、USBメモリとかに使うような場合でも、なるべく環境に依存しない
ようにしたいんじゃないか?
>>793
xyzzy.exe があるディレクトリにおいてもダメ?
- だったらbatファイルからxyzycli.exeを起動するようにしておいて
batファイルの中で環境変数設定汁
- html+-modeで編集中のページを標準のブラウザで開くのは、
>>20さんのソースで出来たのですが、標準以外のブラウザでも
開けるようになると、もっと便利になるのですが…
- >>801
http://hie.s64.xrea.com/xyzzy/note/dialog-box.html#buffer-sendto-dialog
とかどう?
- >>801
(shell-execute "browser.exe" nil "http://...")
- >>802さん
良いものを紹介くださいまして、どうも有り難うございます。
>>803さん
お教え願いましたリストで動きました。どうも有難うございます。
ただ、どちらの場合も、Firefox・Operaでスペースを含むパスのファイル
例)C:/Documents and Settings/hoge/My Documents/hoge.html
を開くと、パスがスペースの部分で分割され、上記例だと4分割となり、
各部がタブで4枚分開きエラーとなります。 (Donutは問題なし)
通常URLはスペースを含まないので問題なしと言われればそれまでかも・・・
エンコードとかの問題ですかね?
- >>804
パスをダブルクォートで囲めばおk
- >>805さん
レス度々すいません。
>>805(803)さんのリストを>>20さんのに加えて、
(define-key *html+-mode-map* #\C-o (lambda ()
(interactive)
(let ((f (get-buffer-file-name (selected-buffer))))
(if f
(shell-execute "browser.exe" nil f)))))
と、f がパスだと思い込み(lisp不慣れなもので)このようなリストを書きまして、
「動作しました」と書き込んだのですが、見当違いだったかも・・・
(shell-execute ・・・ nil f) の f をダブルクォートで囲んでも意味ないようですし・・・
やっぱ、lisp勉強しないとダメっぽいですね。
- >>806
(concat "\"" f "\"")
でいいんじゃないの?
- >>807さん
どうも有難うございます。
その通りでいけました!
レス下さった皆様に感謝しています m(_~_)m
- xyzzyで新規作成したファイルが、UTF-8N,LFにするためには
どうしたらいいのでしょうか。
- >>809
本スレの最近のレス読め
- perlでのインデントをタブにしたくて
XyzzyWikiのxyzzyでプログラミング/インストールと環境設定というページにあった設定を参考に
(require "perl")
(setq perl-mode-indent-level 4)
(setq ed::*perl-mode-indent-tabs-mode* t)
とsiteinit.lに記述したのですがインデントがスペースのままでタブに変更することができません
どのように記述すればタブでインデントできるようになるのでしょうか
- ダンプし直してないとか?
- xyzzy.wなんたらってファイルも消してからやってます
(require "perl")のperlを適当な文字に変えると読み込めませんと出て起動できないのでちゃんと適用されてるみたいです
- タブ幅が8とかに設定されてるってことはないよね?
- >>811
perlのインデントはc-modeの設定をつかってる
(setq c-indent-level 4)
(setq *c-indent-tabs-mode* t)
こう書けばできる
- >>814-815
おかげさまでタブでインデントできるようになりました
ありがとうございます
なんとか設定できたのはいいのですが
タブの後にカーソルをセットして、BackSpaceを押すと半角スペースに分解された後に1個半角スペースが消えているようで
タブ幅を4にしてBackSpaceを押すと半角スペース3個になってしまいます
タブを一気に消すっていうのは何か別の設定がいるのでしょうか?
- こんなのを >>811 の直後にでも書けばOK
(define-key *perl-mode-map* #\C-h 'delete-backward-char-or-selection)
- >>817
ありがとうございます
よく見たら>>273にあったんですね
スレ内検索すらせず質問してしまったorz
- バッファ内のすべてのマルチバイト文字を
Unicodeエスケープに変換するlispって
どこかにないですか?
あればどこにあるか教えてもらいたいのですが…
- (si::www-url-encode "http://www.2ちゃんねる.net/")
=>"http%3A%2F%2Fwww.%82Q%82%BF%82%E1%82%F1%82%CB%82%E9.net%2F"
…マルチバイト文字以外も変換するからこれじゃダメか。
- Unicodeエスケープってこーゆーのじゃないの?
(apply 'concat (map 'list #'(lambda (x)
(if (= (char-columns x) 1)
(string x)
(format nil "\\u~X" (char-unicode x))))
"http://www.2ちゃんねる.net/"))
=> "http://www.\\uff12\\u3061\\u3083\\u3093\\u306d\\u308b.net/"
- >>820-821さん
お二方ともありがとうございます
>>821さんのコードとhtml-support.lのht:character-to-entityを参考にして
見よう見まねでそれっぽいものが出来ました
#最近lispの勉強を始めたんですが、難しいです…
(defun character-to-unicode-escapes ()
(interactive)
(goto-char (point-min))
(while (< (point) (point-max))
(if (> (char-unicode (following-char)) 127)
(progn
(let ((code (format nil "\\u~X" (char-unicode (following-char)))))
(delete-char 1)
(insert code)))
(goto-char (1+ (point))))))
- >>822
あー、見逃してました。
http://ukgk.g.hatena.ne.jp/faerie/20061005/1160035556
このへんを使ったほうが良さげな気がします。
unicode-escapeのwhileの直前に(let (c)って
入れたほうが良いと思いますが・・・。
- >>823さん
情報ありがとうございます
教えていただいた関数unicode-escapeは非破壊的のようなので
それを使って破壊的にUnicodeエスケープの変換をしたかったのですが、
大分知識が足りず希望通りの動作にできませんでした
しばらくは>>822を使い、勉強しながらいろいろ考えてみます
- >>824
ごめん。励ましあえのスレだったのを忘れてた。
1. >>823で紹介したところのunicode-escapeはそのままだとマズいから↓に変える。
(defun unicode-escape (input &optional output)
"ストリームを Unicode エスケープする。"
(let (c)
(while (setq c (read-char input nil))
(if (> (char-unicode c) 255)
(format output "\\u~4,'0X" (char-unicode c))
(write-char c output)))))
2. 3つの関数を*scratch*などで評価して、毎回使うなら.xyzzyなどにコピペ
3. 変換したい範囲をリージョンで指定
4. M-x unicode-escape-region
するとリージョンにした部分がUnicodeエスケープに変換されてる。
常にバッファ全体を変換したいなら以下でも。(ナローイングしてたらバッファ全体じゃないけど)
(defun unicode-escape-buffer ()
"バッファ全体を Unicode エスケープする。"
(interactive "*")
(ed::text-decode-region #'unicode-escape (point-min) (point-max)))
- 引用符( > )付き貼り付け って出来ます?
- 補足:クリップボードからです・・・
- >>827
こんな?
(defun paste-from-clipboard-quote ()
(interactive)
(let ((string (get-clipboard-data)))
(if (and string (stringp string))
(with-input-from-string (stream string)
(let (line)
(while (setq line (read-line stream nil nil nil))
(insert (format nil "> ~A~%" line)))))
(message "クリップボードが空か、文字列じゃない。"))))
- >>825さん
おお、まさしく希望通りの動作です
いろいろと教えていただいて本当にありがとうございました
- >>826
ttp://www5d.biglobe.ne.jp/~lostland/xyzzy/quote-menu.lzh
- >828さん
丁寧にリストを書いて頂いたのですが、こちらの技量不足で
使い方が解りませんでした・・・ orz
>830さん
メニューに追加されるのが良いですね。
レス下さった方々、どうも有難う御座いました。
- browserexでフォルダを表示させると、大きいアイコンで表示されます。
これを、一覧等の小さいアイコンで表示されるようにしたいのですが・・・
尚、browserex.l を眺めてみた所、
> bx:*browser-syslistview-style* に bx:LVS_SMALLICON, bx:LVS_LIST,
> bx:LVS_REPORT, bx:LVS_ICONのどれかを代入しておいてください。
> 「大きいアイコン」が標準のようなので bx:LVS_ICON は意味がありません。
とあったのですが、私にはlispの知識が無いので何をどうしたら良いか解らず、
取り敢えず色々調べた末に、初期化ファイル(.xyzzy)に
(setq bx:*browser-syslistview-style* bx:LVS_LIST)
と入れてみたものの、動作は変わりませんでした・・・
こんな私でも解るように、どのファイルに何を追加或いは変更すれば良いか
具体的にお教え願えるとありがたいのですが・・・
- >>832
(setq bx:*browser-syslistview-style-wait* 0.00) 付加えてもだめ?
- ファンクションバー ってなんですか?
リファレンスを見ていて出てきたんですが、それが何であるのかの説明が見つかりませんでした。
- >>833さん
初期化ファイル(.xyzzy)に付加えでいいんですよね?
(setq bx:*browser-syslistview-style* bx:LVS_LIST)
(setq bx:*browser-syslistview-style-wait* 0.00)
としましたが、駄目でした・・・
- >>834
F1〜F12キーに割り当てられた機能を表示するもの。
toggle-function-barで出てくる。
文字列はset-function-bar-labelで自分で設定しなければならない。(たぶん)
やり方によっては自分用のステータスバー代わりになるかもね。
- outline-treeのアウトラインタイプでC言語ってないんですか?
- >>835
俺はそれでできてるんだけどな…。それじゃわからないや、ごめん。
>>836
ありがとうございます。
こういう風に出すんですね。
- >>838さん
こちらでの結果は駄目でしたが、教えて頂き感謝してます。
こちらの方に何らかの不具合があるのでしょう。
どうも有難うございました。
- >>838-839
おれのとこでもやっぱり駄目だった。
使っている browser.dll が違うのかもね。
- >>840さん
なるほど、 もしかするとそうかも知れませんね。。。
参考までに、私が使っている browser.dll は、いまいたけをさんの「ななしの人の部屋」の
static link版 (http://www.osk.3web.ne.jp/~usitukai/warez/browser_.lzh) で、
ハッシュ値(MD5)は 0DFE2E9246A2C69B27387D4AFCDC043A でした。
- >>841
上の人とは別人だけど、ハッシュ値同じで >>832 の設定書いたら小さいアイコンになりました
- >>842さん
貴重な情報、有難うございます。
という事は dll が原因になっている訳ではない ってことですね・・・
- 0.00じゃなくて例えば0.50にしたらどうなん?
- >>837
ないね。
とりあえずは、適当に正規表現で設定するのがいんじゃない?
あとはXTAGか、list-fuctionのやつか。
- >>844さん
それもやってはみたんですが、変わらなかったです。
- >>845
了解です、ありがとうございます。
- 編集中バッファのテキストサイズ(バイト数)を知る方法ってナイです?
- >>848
過去にも同じ質問あった気がする。
結局次に落ち着いたと思う。
A. 保存してファイルサイズを確かめる。
B. バイト数はあきらめて、文字数にする。
- >>848
多分こうじゃないかな。
(defun file-length-current-buffer ()
(interactive)
(message (format nil "~A バイト" (file-length (get-buffer-file-name (selected-buffer))))))
- 編集中ということならこうか。(多分)
(defun file-size-current-buffer ()
(interactive)
(message "~A バイト"
(+ (length (convert-encoding-to-internal *encoding-binary*
(buffer-substring (point-min) (point-max))))
(save-excursion (goto-char (point-min)) (count-matches "\n")))))
- >>850
それだと、最後に保存した際のファイルサイズになります。
それを考慮すると、>>849 の回答となります。
>>850 の回答は、言わば >>849 の A. と同一です。
- >>851
内部コードの文字列長と、改行文字の文字数を加算していますが、
出力時の文字コードで計算しておらず、また、改行コードの種類を考慮に
いれていないため求めたい値になりません。
- >>853
じゃあ、一度仮のファイルに保存してファイルサイズを
調べればいいんじゃないかな。
さほど難しいコードではないので、自分で作ってみて下さい。
- 結局 849 A. 案だよな
- 仕方ないのでこれでどうでしょう?
これでダメならやっぱり849 A. 案かな。
(defun file-size-current-buffer ()
(interactive)
(message "~A バイト"
(+ (1- (si:chunk-size (si:make-string-chunk
(buffer-substring (point-min) (point-max)))))
(save-excursion (goto-char (point-min)) (count-matches "[\r\n\x0D]")))))
- >編集中バッファのテキストサイズ(バイト数)を知る方法ってナイです?
どの方法がいいかは知りたい理由によるかな
俺は400文字以内とかで書くことがおおいから
常に表示されてないとダメだしさ
- >>857
その場合は文字数だからまだ簡単だけどね。
>どの方法がいいかは知りたい理由による
というのは同意。
>>848も情報を小出しにするからややこしくなる。
- ついでに、モードラインに表示するならこんな感じかな。(856のコードでいいならば)
(defun buffer-size-current-buffer ()
(+ (1- (si:chunk-size (si:make-string-chunk
(buffer-substring (point-min) (point-max)))))
(save-excursion (goto-char (point-min)) (count-matches "[\r\n\x0D]" nil t))))
(defun mode-line-formatting ()
(setq mode-line-format
(format nil "[%i] %#* %#F %P (%M) [%k:%l] ~A : ~A"
(buffer-size-current-buffer)
(format-date-string "%Y/%m/%d %H:%M:%S")))
(refresh-screen))
(add-hook '*pre-startup-hook*
#'(lambda () (start-timer 1 'mode-line-formatting)))
バッファ毎に表示を変えるのは誰かやって下さい。(できるかどうか知らんけど)
- > バッファ毎に表示を変える
(make-variable-buffer-local 'mode-line-format)
でいいんじゃない
- >>860
ああ、ほんとだ。このほうがいいね。
質問者じゃないけれど、サンクス。
- >>856 も、内部コードでのサイズで計算しているので異なりますよね。
保存しない場合は
buffer-eol-code
buffer-fileio-encoding
map-internal-to-hogehoge
あたりの関数を使って頑張るんだと思いますが、そんなことするぐらいなら
保存をする >>849 A. 案が確実で、楽ですね。
- じゃあ、xyzzy:MLの 08218 のコードあたりでOKですかね。
timer とか *post-command-hook* とかで使うには重くなりそうですが。
xyzzy:08223 にできそうなことが書いてありますが、
気の向いた方にお任せします。
- xyzzy:08218 http://hie.s64.xrea.com/xyzzy/ml/msg08217.html
xyzzy:08223 http://hie.s64.xrea.com/xyzzy/ml/msg08222.html
こんなとこにあったのね。
保存時にファイルサイズを表示するというのも、手軽でよさそうかなと思ったけど。
- そういえば、MLのウェブアーカイブは検索できなくなってます。
- できそうなことがかいてあるのは xyzzy:08225
(http://hie.s64.xrea.com/xyzzy/ml/msg08224.html)か
(真偽のほどはわかりませんが)。
>>865
ほんとですね。うちはローカルで検索してますが。
- >>864
> 保存時にファイルサイズを表示するというのも、手軽でよさそうかなと思ったけど。
これが一番問題がなく、動作スピードに影響もださず、実用的だと思います。
簡単で、はまることもないですしね。
- 今更ながらの、質問者(848)です。
抽象的な内容だったようでスミマセン。
バイト数と書きましたが、文字数でも良かったです。
一時的にコピペしたテキストサイズを知りたいことがあるので
このような質問をしました。
色々と参考になるご意見、ありがとうございました。
- 08221に08225を足してみた。
(defun get-buffer-byte (buffer)
(set-buffer buffer)
(let ((byte (- (si:chunk-size
(si:make-string-chunk
(convert-encoding-from-internal
(buffer-fileio-encoding) (buffer-substring 0 (point-max)))))
1)))
(if (= 1 (buffer-eol-code buffer))
(- (+ byte (buffer-lines buffer)) 1) ;crlf
byte)))
- >>868
なんだそれならHIEさんとこの、これ
(ttp://hie.s64.xrea.com/xyzzy/note/misc.html#count-buffer-char2)
でいいんじゃない。
>>869
うちはほとんどsjisのテキストしかないので確認できないんですが、
何となく良さげですね。
- >>869
この方が良いかも。
(defun get-buffer-byte (buffer)
(set-buffer buffer)
(save-restriction
(widen)
(let ((byte (- (si:chunk-size
(si:make-string-chunk
(convert-encoding-from-internal
(buffer-fileio-encoding) (buffer-substring 0 (point-max)))))
1)))
(if (= 1 (buffer-eol-code buffer))
(- (+ byte (buffer-lines buffer)) 1) ;crlf
byte))))
- >>871
>この方が良いかも。
理由を一言書いてくれると初心者のためかも
- >>872
ナロウイング(narrow-to-region)された状態で、
869を実行すると範囲外のテキストがカウントされない。
871ではナロウイングを一時的に解除している(save-restriction)。
- >>859>>870を見てモードラインに総文字数を表示ってやってみたけど、重過ぎて無理だな
タイマーでcount-machesが無謀すぎるのか
- (interactive "*") のコマンドが
インタラクティブに呼び出されたときだけ
呼び出されるフックがあるといいんだけどね。
- >>873
あ、一応補足しておくけど、
ナロウイングを解除してるのが
widen
で、元の状態に戻してるのが
save-restriction
な。
- >>874
総文字数は (- (point-max) (point-min)) で取れる
- >>874
ナロウイングも考慮するとこうかな。
(- (buffer-size) (- (buffer-lines) 1))
- >>876
あまり考えてないけど、save-excursion はいらないのかな?
- >>879
ぱっと見、カーソルを動かすコマンドはなさそうだから必要ないと思う。
- >>879
set-bufferしてるからsave-excursionも入れといた方がいいかもね。
- >>877
スペースはともかく、改行文字って数えるか?
まあEOFみてbuffer-lines引けばばなんとかなりそうだが
- >>882
だから、878でいいんじゃないの?
- >>882
>スペースはともかく、改行文字って数えるか?
目的によるでしょ
なんでまたかみついてるの???
882じゃダメなのかい?
- どうでもいいけど、オマライ自意識過剰すぎじゃね。
苦労しそうだね。
- 質問があいまいだったり、レスを読まなかったりするから
ややこしくなってるだけじゃないの?
まあ、おかげでバイト数をとれるようになったぽいのは
良かったのかもしれないけど、答える方はしんどいね。
- >>885
それを言うなら神経質では?
- >>887
神経質ではないと思うよ。
これぐらいの緻密さは普通に必要。
というか、いろいろはっきりさせていなくて、緻密でもない。
- >>888
自意識過剰でもなく神経質でもなく綿密でもないなら
なんだというのですか?
- 焼肉定食
- >>889
普通じゃないの。
わからないのは、せっかくレスをもらってるのに
882のような言い方になることかな。
まあ、最近このスレも逆ギレ君が多いし別に驚かないけどね。
- >>889
「自意識過剰」はあなたしか否定していませんよ?
そして「綿密」でなく「緻密」。
- よく判らないからそこら辺を CommonLisp で表現してください
- (eq 綿密 緻密) => nil
- >>892
待ってくれ。自意識過剰を否定したのは俺だ。>>889とは別人
そして神経質とは言ったが、悪い意味じゃなく
xyzzyを使う人は普通の人より多少神経質な方がいいと思ってる。
神経質って言葉が気に入らないなら「緻密さを好む」に変えといてくれ
- 俺の緻密↓
;; よくわからないけど動いてるから弄るな
- 本来は質問者がバイトなのか文字数なのか改行とかも考えて質問すべき
ただそうじゃない質問には回答者が脳内補完で答えず
条件を聞いてから答えればこんなにはもめなかったとおもう。
- もう、いいじゃないか。
久しぶりにぐだぐだ言い合って楽しめたし。
これが続くとたまらんが。
- このスレはいつも地道にいいペースでのびていますね
- 結論:好きなの選べ
>>849-851
>>856
>>859-860
>>864
>>866
>>869-871
>>877-878
- すみません、教えてください。
リファレンス用として refer-for を導入したのですが
reference.xml
refer-for.xsl
refer-for-search.xsl
がないと怒られてしまいます。/etc/にはいれてあるのですが・・・
あと、2ch-modeのbookmark.htmlも同じように怒られます。
両方ともxyzzyにファイルを置くと動くのですが。
特別etc-pathをいじった記憶ないのですが何故なんでしょう
- >>565
ども。
ようやくですが、更新しときました。
- オートインデントとして、
(global-set-key #\RET 'newline-and-indent)
で使用していますが、他エディターと挙動が違うので使い勝手が今ひとつです。
前行の行頭に半・全角スペース、タブがある場合、次行も同様の半・全角スペース、タブを
自動入力(他エディターでのオートインデントの挙動と同様)することは出来ますか?
- >>903
(defun newline-and-imitate-indent (&optional (arg 1))
(interactive "*p")
(let (indent)
(save-excursion
(goto-bol)
(when (looking-at "^[ \t]+")
(setq indent (match-string 0))))
(dotimes (i arg)
(insert "\n" (or indent "")))))
- >>904
どうも有難う御座います。
希望通りの動作で感激です。
- kamail3でBCCに大量のアドレスを設定すると、メールが送れない、本文が書けない
ということになるのだけど、うちだけかな
- うん
- kamailのアドレス帳って、同じメアドを違うGROUPに登録できないですよね?
<>でくくれば登録できたけど、何かいい方法ないですかね?
- 間違った文字コードで読み込まれるたびに"C-u M-x : revert-buffer"からutf8nを選んでいるのですが、
これを好きなキーバインド1つでutf8nに出来ますでしょうか。
さらに欲を言えば文字コード判定の精度がもっとよくなればいいのですが…。
- >>909
(global-set-key {好きなキーをここに}
#'(lambda ()
(interactive)
(revert-buffer *encoding-utf8n*)))
> さらに欲を言えば文字コード判定の精度がもっとよくなればいいのですが…。
ファイル先頭から何バイトか読んでエンコード判定して
るんだけど、この(何バイトか)が本体側で決め打ちさ
れてて、Lispでは制御できなかった覚えがある。
- emacs同様にコメントとして
-*- coding: utf-8 -*-
記述しておけばよかったような気がする
- ファイルをいじっても構わないなら
-*- encoding: utf-8 -*-
とファイルの始めのほうに書いておけばOK。
あるいは、ファイル名に何らかの特徴があるのであれば
*auto-encoding-alist* も使えるかも。
- >>910,911,912
すごく楽になりました。本当にありがとうございます。
- >>904氏のオートインデントで、
入力行が 半・全角スペース、タブ のみの入力で改行された場合、
改行のみに置き換え、次行はインデントさせない様にするには
どうすれば良いでしょうか?
- >>914
こんなんか?
(defun newline-and-imitate-indent (&optional (arg 1))
(interactive "*p")
(let (indent eol)
(save-excursion
(setq eol (progn (goto-eol) (point)))
(goto-bol)
(when (looking-at "^[ \t]+")
(if (= eol (match-end 0))
(delete-region (match-beginning 0) (match-end 0))
(setq indent (match-string 0)))))
(dotimes (i arg)
(insert "\n" (or indent "")))))
- >>915
おお、ナイスです!
どうも、有難うございました!!
- 質問というより疑問を
いくつか lisp 見たけど setf じゃなくて setq を使っているのがほとんど
これってどうしてかな
速度?
マクロ展開されるからあんまり関係ない気がしないような気もするけど
- >>917
1. 昔から setq を使っていて、特に setf に変える理由が無いから。
2. コンパイルしなければ setq のほうが早いから。
3. 単純な変数に代入しているだけなことを明確にするため。
こんな感じ?想像だけど。
- とくに意味はないが普通の変数にsetfを使うのは何かしっくりこない。
バイトコンパイルすりゃあ同じなんだろうけど。
- 俺の場合だいたい 918 で挙げられたとおりかな。
ただ、速度面はあまり意識したことがなかったんで、
比較してみたんだが、思ったよりコンパイル前後の速度差があるなぁ。
(defun foo (count)
(let (qtime ftime i)
(dotimes (j 2)
(setq qtime (si:performance-counter))
(dotimes (k count) (setq i k))
(setq qtime (- (si:performance-counter) qtime)))
(dotimes (j 2)
(setq ftime (si:performance-counter))
(dotimes (k count) (setf i k))
(setq ftime (- (si:performance-counter) ftime)))
(format t "setq(count ~A): ~@10A (AVG: ~@5A)~%setf(count ~A): ~@10A (AVG: ~@5A)~%"
count qtime (truncate (/ qtime count))
count ftime (truncate (/ ftime count)))))
(foo 10000)
setq(count 10000): 270629 (AVG: 27)
setf(count 10000): 8047492 (AVG: 804)
(compile 'foo)
(foo 10000)
setq(count 10000): 5574 (AVG: 0)
setf(count 10000): 5501 (AVG: 0)
- >>917
emacs lisp intro だと setq しか使ってないから。
- そりゃemacs lispには元々setfは無いし。
- >>922
emacs lisp に元々 setf があろうがなかろうが、
xyzzy で setf でなく setq を使っている理由は >>921 なんでしょ。
- 基本的に文化的なものと考えていいのかな?
Emacs 文化から流れてくるいろいろなリソース、または考えが根底にある分そうなるって感じで
自分は統一的にバインドが使える方が脳に優しいと思うので setf 派なんだけどね
>>920 を見ても機能的には問題無さそうなのでこのまま行こうかな
- そこの、si:performance-counterって何をするもの?
- 見ていたら何となく分かったのでいいや。
- >>923
elispにsetfが無いから、emacs lisp introではsetqしか使ってないのはあたりまえ
と言いたかった。
- 少なくとも命令が何かを意識しないと
2chインプリタとは意思疎通ができ(ry
- >>927
setq だけじゃなくて set がある。
- >>927
その意味でとらえた上での、>>923 だと思いますよ。
- >>930
うん、わかってるよ。つまりは伝統とか習慣ってことだね。
- 多分>>922の考えを言うならば
>>917
そりゃemacs lispには元々setfは無いし。
つまりは伝統とか習慣ってことだね。
と書けば良かったと思われ。
何か人間業の真髄を見たような気がする。
- もしsetfなかったら鬱で死にたくなる性分だが
emacsにはないのか……
- >>933
Common Lisp 使えるようにするライブラリがたしかあったよ。
- 質問です。
会社でxyzzyを使っています。先日ネットインストーラを使おうとしたところ
タイムアウトで失敗しました。
理由は会社から外部へ接続する際に自動構成スクリプトなるものを利用している
ためだと思われます。
xyzzyでプロキシの設定はできるみたいなのですが自動構成スクリプトに対応させることは
できるのでしょうか?教えてください。
- >>935
出来なくはないけど、自動構成スクリプトの中身を見て自分で設定した方が楽。
- だれかmew移植してー
- >>937
emacs使え
- >>935
www-mode使えるようにすれば自動的に使えるんじゃないの?
- ID がなんとなくxyzzyだったので記念ぱぴこ
- すごいんだけど、良く見たらちょっと違う件について。
- なんとなく杉
- >>940
そんなIDじゃシティーハンターも助けてくれないよ
- JavaScript等で正規表現中に奇数個の"が出てくると
シンタックスが妙なことになるんですが、
何か対策方法はありませんか?
例えば "hoge\"".match(/hoge"/);
と書くと最後の"/);以降が(次の行以降も)文字列として色付けされてしまいます。
- >>944
"hoge\"".match(/hoge"/); //"
みたいにコメントに"を書くとか
- JavaScript知らんけど、正規表現中でエスケープ出来ないの?
- 試してみたら出来ました orz
でもこれだと人の書いたエスケープしていない正規表現はどうしようもないので、
できればxyzzy側でどうにかしたいです。
あと、
"hoge/".match(/hoge\//);
"hoge".match(/hog*/);
の最後の//が一行コメントの開始、*/が複数行コメントの終了とみなされて、
これ以降の行でインデントやらparenの対応が崩れてしまいます。
どなたか知恵をお貸しください。
- 無理だわな。自分でxyzzy のコンパイルからやればいい。
- parenを改造すりゃいいんでない?
- 正規表現のところだけ違う色とかに塗ってみるとか。
除外するとかしたい感じだね。
- (set-syntax-start-multi-comment ed::*jscript-mode-syntax-table* "(/")
(set-syntax-end-multi-comment ed::*jscript-mode-syntax-table* "/)")
……ダメかな
- /* */ がコメントじゃなくなるな……
- /* */はlispで塗ったらいいんじゃないかな。
そんなに沢山出てくるとも思えないし。
多少重いかも知れないが。
- これはインデントとparenの関数を書き換えればいいんじゃないのか?
- それだけでは色の範囲がおかしいままでは?
- hatena-dairy-modeで更新が出来ないのだけど、同じ症状の人いますか?
- 文字列の検索で、ヒットした文字列(反転表示)を
何れかのキー入力で、一発消去→入力文字を挿入
(セレクションでの動作と同等)することって出来ます?
- >ヒットした文字列(反転表示)
を選択に変更すればいいんじゃない?
ツール → 共通設定 → さまざま → 検索での表示 → 選択する
- (ノ∀`) アチャー
こんな設定があったんですね・・・
ありがとうございました。
- katexについての質問はここでいいんでしょうか?
他に適当なところが見つからなかったのでここに書かせてもらいます。
C-c t J でコンパイルしたとき、ソースにエラーがあると
typesetting画面に警告が出るとともに、
コマンドプロンプト画面も出たままになりますが、
typesettingをqで抜けてもコマンドプロンプトは出たままです。
これを自動的に消すようにはできますか?
- >>960
qで消しても、platex がファイルをロックしていてうぜぇってこと?
とりあえず q じゃなくて、 x リターン q と3回押せば ok
- >>961
まさに、毎回コマンドプロンプトを消すのがうぜぇと思ってました。
ありがとうございました。
- >>962
おれも今さら知ったw
- >>956
Q&Aの「はてなにログインし直してしまって、はてなダイアリーモードで編集できなくなった」をしてもダメ?
ttp://www20.big.or.jp/~rin_ne/soft/xyzzy/hatena-diary-mode.htm#qanda
~/crylib/db を手動で削除してたりしてたけどw
- 次スレは?
- テンプレに変更なければ俺やるよ。
- >>964
最初C-c h sでクッキーの見直しを散々やったのですが、どういうわけかcrylib/db
ファイルの書き換えがされなくなっていて、駄目だったです。
結局マルウェア監視ソフトの設定を見直している内に、ちゃんとIEのcookieが読み
込まれたり、firefox側のcookie設定が反映されるようになり変更だけは出来る
ようになりました。
でも新規作成だけは今でも失敗するのですよ。不思議だ
- csharp-modeのキーマップを変更したいのですが
『変数が定義されていません: editor::*csharp-mode-map*』とのエラーがでてしまします。
.xyzzyに追加したコードは以下のものです。
;c-jをオートインデント改行に
(define-key ed::*csharp-mode-map* #\c-j 'c-newline-and-indent)
c-modeやc++-modeでは同じような感じで問題無いのですが・・・。
- >>968
autoload で csharp-mode をロードしているだろうから、
(require "csharp-mode") ?
としてから設定を書くのが一番簡単な修正法。
*csharp-mode-hook* にその設定をする関数をフックしてもいいけど。
- >>966
よろしくおながいいたしまつ
- >>962-963
こういうものもある。単にqでぬけても、保存時にプロセスを殺す。
ttp://www.jaist.ac.jp/~m-nakano/lisp/katex-kill-proc.l
katexをロードした後で、こいつもロードする。
- >>967
いつも画像をうpする関係で、新規作成はブラウザからしかした事がないので役立てずorz
はてなの仕様変更についていけてないのかもね。
- デフォルトのモードを (setq *default-buffer-mode* 'text-mode)
と設定した状態でバッファを新規作成すると、そのバッファで
clickable-uri のURI 強調表示が無効になってしまうのですが、
何か良い解決策はナイですか?
- >>973
自己レスです。
(add-hook 'ed::*text-mode-hook* #'clickable-uri-recenter)
とした所、強調表示するようになりました。
お騒がせしました。
- 2画面ファイラーでドライブ直下にいる場合だけBackSpaceで
ドライブ一覧を表示することはできますか?
ダイアログではなくファイラの中身部分にでるとより便利で嬉しいです
- >>975
ttp://xyzzy.s53.xrea.com/wiki/index.php?cmd=read&page=tips%2F%A5%D5%A5%A1%A5%A4%A5%E9%A4%C7%B6%A6%CD%AD%A5%D5%A5%A9%A5%EB%A5%C0%A4%F2%C1%AA%C2%F2
ここのfiler-up-directoryが大体そんな感じ。
- >>976
ありがとうございます。うまく動きました。
- html+-mode の設定で、*html+-show-split-window-lines*
→ 「対応するタグの表示時にウィンドウを分割する行数」
というのがあるのですが、設定してみても変化がみられません。
一体これは、何の設定ですか?
- 終了タグを打った時、開始タグとカーソルが行き来するけれど、
開始タグが画面の外にある場合は一時的にウィンドウが分割されて開始タグが表示される。
- そろそろ次スレかな?
- >>979
なるほど、そうでしたか。
有難うございます。
- x
- 新スレです
xyzzyの使い方が分からぬやし 励ましあえ その10
http://pc7.2ch.net/test/read.cgi/software/1163847543/
- Emacs もそうだけど if のインデントがムカツク
偽の条件のインデント揃えろって
progn 内包しているからって余計なことしないで良い
処理系いぞんな記述を強いるな
- >>984
これじゃダメなの?
(setf (get 'if 'lisp-indent-hook) nil)
- インデントと lispの処理系は別だからなぁ。 python は違うけど。
- デフォルトが亀井さん好みになってるってだけでしょ。
オレはifのインデントはthen節とelse節が区別しやすくていいと思ってるんだけど。
- >>984
おまえの脳内のことなんて聞いてないよ?
- 埋めネタに丁度いいな
- 言語仕様とか良く分からんから聞きたいんだが、
なんであの if のインデント形式だと処理系依存な記述になるの?
- >>990
処理系によって else 節以下が progn と同じように手続き的に書ける物がある
それに合わせてインデントレベルを変えるわけだ
逆に判りづらい
- >>991
Emacs と Common Lisp の if が違うのは理解してる?
Common Lisp の if文は else節に1つのS式しかこないんだけど。
- >>992
だからそれを言っている
Emacs の場合はインデントがああなるのは意味がわかるが
xyzzy がああなるのは理解出来ない
- 何が気に食わないのかよく分からないけど
indentをlispで書き直せばいいだけじゃないの?
デフォの設定が気に食わないって問題でしょ?
- >>993
あ
っ
そ
- if(xy==9)
- if (2ch (ume))
- if (2ch (get (998)))
- if (2ch (get (999)))
- if (2ch (goto (next-thread)))
- このスレッドは1000を超えました。
もう書けないので、新しいスレッドを立ててくださいです。。。