930 :
BlackLightOfStar ◆ifsBJ/KedU :04/12/04 22:02:07 ID:fA0r7lpk
Re:>927 そこはGoogleだろうが。
Re:>928 亀井さんはCommon Lisp Interpreterの開発を目指しているもよう。まあ、時間が解決するかもしれない。気を長くして待て。
そういや、CommonLispの実装ってあんま無いよね。
SchemeとかElispとかが目立って、影が薄くなってるだけかもしれないけど。
閉じるボタンの動作を最近のEmEditorみたいにしたくて,
つまりボタンを押したときに,編集中のバッファを閉じるだけにしたくて
(defun cancel-killapp-and-killbuffer ()
(if (string= (buffer-name (selected-buffer)) "*scratch*")
t
(progn
(kill-buffer (selected-buffer))
;(refresh-screen)
nil)))
と書いてquery-kill-xyzzy-hookにadd-hookしたんですが,
kill-bufferした後にタブに残骸が残ってしまいます。refresh-screenしても
消えてくれませんでした。なんかいい方法ありませんか?
ごめんなさい,こっちでお願いします。
(defun cancel-kill-and-delete-buffer ()
(if (string= (buffer-name (selected-buffer)) "*scratch*")
t
(progn
(kill-buffer (selected-buffer))
(next-buffer)
(refresh-screen)
nil)))
>>934 よくわからないけど、こんな感じ?
(add-hook '*init-app-menus-hook*
#'(lambda ()
(add-menu-item *app-menu* 'close-box :close-box
#'kill-selected-buffer)))
937 :
935:04/12/06 12:18:25 ID:HKi5Yhan
×こんな感じ?→○これじゃ駄目なの?
>>935 なるほど,こっちのほうが自然ですね。いただきます
>>936 突然やってきて質問のみ
過去ログどころか現行スレすら読まない
diffしたときに両方のバッファを同時にマウス・キーでスクロール
させることってできます?
>>941 > diffしたときに両方のバッファを同時にマウス・キーでスクロール
> させることってできます?
diff したときに限らず、両方のバッファを同時にスクロールするには、
S-C-Up
S-C-Down
でできますよ。
migemo探してるんですが、まだどこかで配布してるところ、
知ってるひといますか?
944 :
名無し~3.EXE:04/12/10 23:11:30 ID:Gm4goJnw
過去のレスを調べよう
945 :
941:04/12/11 00:38:27 ID:K4eQkT3S
2ch-modeで裏社会→薬・違法を見ようとするとスケ形式が分からんよって
出るんですが、対処法はあるんでしょうか?
>>946 「スレ形式がわからんよ」ですよね?
自分の所では普通にみられますが…。一応 Menu バッファで R
を押して板一覧を再取得してみては?後 *read-cgi-hosts* を設
定しないようにしてみるとか…。
xyzzyって整数の 0 padding が下のようにしても
エラー出てしまってできないけど,仕様?
(format nil "~2,0D" 3)
>>948 (format nil "~2,'0D" 3)
でいけます。
クォートが必要なのが xyzzy の 仕様だったか
Common Lisp の仕様だったかは未確認。
950 :
948:04/12/12 16:28:31 ID:DI6PtofD
>>949 thx
bit別冊のCLtL2見ながらやってたんですけど,
よ〜く見たら, 'が必要でした.
お手数かけました.ありがとうございました.
quote-menu.l 中の
(defun add-quote-string-to-clipboard-data (&optional (arg 1) (type 1))
の type にキーバインドから数値を入れるにはどうすればいいのでしょうか?
例えば、
(add-quote-string-to-clipboard-data 1 2)
と同じことをキーバインドからやりたいのです。
フォルダ内の全ファイルのファイル名、サイズ、タイムスタンプ、などなどを書き出してくれるlispどっかに落ちてないですかね?
954 :
953:04/12/15 14:42:16 ID:L6Jb9uqG
あータブ文字は書き込めないんだった申し訳ない。
コード4行目: (format t "LastModified size name~%")
コード6行目: (format t "~A ~D ~A~%"
に修正してください。
formatでタブ文字を書くならもっといい方法がありそうなんだが分からん。
scheme-modeの使い方が良くわからないんですが、どこかにドキュメントとかありませんか?
>>953を参考にしつつ書いてみた
(defvar file-info-name-format-function nil)
(defvar file-info-attribute-format-function nil)
(defvar file-info-size-format-function nil)
(defvar file-info-time-format-function nil)
(defvar file-info-format-function nil)
(defvar file-info-format-string nil)
(setq file-info-name-format-function
#'(lambda (name)
name))
(setq file-info-attribute-format-function
#'(lambda (attr)
(concat
(if (zerop (logand attr ed::*file-attribute-readonly*)) "-" "R")
(if (zerop (logand attr ed::*file-attribute-hidden*)) "-" "R")
(if (zerop (logand attr ed::*file-attribute-system*)) "-" "S")
(if (zerop (logand attr ed::*file-attribute-directory*)) "-" "D")
(if (zerop (logand attr ed::*file-attribute-archive*)) "-" "A")
(if (zerop (logand attr ed::*file-attribute-compressed*)) "-" "C"))))
(setq file-info-size-format-function
#'(lambda (size)
(format nil "~D" size)))
(setq file-info-time-format-function
#'(lambda (time)
(format-date-string "%y/%m/%d(%a) %H:%M:%S" time)))
957 :
続き:04/12/15 17:36:16 ID:93coNXBO
(setq file-info-format-function
#'(lambda (info)
(list
(funcall file-info-attribute-format-function (second info))
(funcall file-info-size-format-function (fourth info))
(funcall file-info-time-format-function (third info))
(funcall file-info-name-format-function (first info)))))
(setq file-info-line-format-string
(concat " Attrib\tsize\tLast Modified\t\tName~%"
"~:{ ~A\t~A\t~A\t~A\t~%~}"))
(defun file-info (targetdir)
(interactive "DTarget directory: ")
(with-output-to-temp-buffer ("*file list*")
(let ((files-info (directory targetdir :file-only t :file-info t)))
(format t file-info-line-format-string
(mapcar file-info-format-function files-info)))))
958 :
956:04/12/15 17:57:01 ID:93coNXBO
~Tの使い方が今頃分かったのでフォーマットを変えてみた
(setq file-info-line-format-string
(concat "~2TAttrib" "~10TSize" "~22TLast Modified" "~47TName~%"
"~:{" "~2T~A" "~10T~A" "~22T~A" "~47T~A~%" "~}"))
>>951 (global-set-key '(#\C-c #\x) 'add-quote-string-to-clipboard-data)
とか適当にキーバインドしているものと仮定する。
で、仮定した上で、上記のキーバインドだと、
C-u 2 C-c x
でどうでしょ
961 :
953:04/12/16 01:07:08 ID:rZdJaWwS
>>956-958 ('A`) そこまで書けるならハナっから俺の出る幕無いですよ。
ちゃんとタブ制御までしてるし。
962 :
951:04/12/16 07:30:49 ID:TOv8SFjt
>>960 レスありがとうございます。
C-u 2 C-c x などだと arg に数値が入るのですが、type には
入らないようです。
キーバインドから引用符を選択できないかなと思ったのですが、
2番目以降の引数にキーバインドから数値を入れるのは難しいような
気がするので、*quote-string-list* をポップアップ表示→その中から選択
→add-quote-string-to-clipboard-data で選択した引用符を挿入して貼り付け
みたいに quote-menu.l を書き換えて妥協中です。
>>962 これをキーにバインドするんじゃ駄目?
(defun my-add-quote-string-to-clipboard-data (&optional (type 1) (arg 1))
(interactive "p")
(add-quote-string-to-clipboard-data arg type)
964 :
953:04/12/16 11:28:54 ID:CPOwVmBw
悔しくてたまらないので
>>956-958をもっと短く書こうとしてみたが、
ちっとも短くならない上にコードがぐっちゃぐちゃになってしまい、
そのせいで些細なエラーを見つけられずに泣きたくなった。
あと、属性値にDとか出力できるんだから、
directory関数の「:file-only t」は削除していいと思った。
もう少し弄れば各種ソートも思いのままなんだろうが、
モニタが霞んでそれどこじゃないので不貞寝する。
965 :
951:04/12/16 12:36:13 ID:yw6qRUNH
>>963 レスどもです。
963 のやり方だと引用符は選択できるようになりますが、
C-u 2 M-x my-add-quote-string-to-clipboard-data などとすると
引用符が2つ挿入されてしまいます。
quote-menu.l では *prefix-value* を使用して挿入する引用符の数を
決めているようなので、引用符を選択するには universal-argument
以外の方法でする必要があるのかもしれません。
962 のやり方でも一応引用符を選択できるので、当面はそれで行こうと
思います。
966 :
955:04/12/16 12:50:31 ID:tT6POP9N
>>959 まさしくそこのです。
>あと、お使いの Scheme 処理系は?
わ、ごめんなさい。これ自身でschemeのevalができるんだと思ってました。
てっきりxyzzyのLispに皮をかぶせたものかと・・・何かの処理系のフロントエンドとして使うんですね?
処理系探してきて再トライしてみます。ありがとうございました。
967 :
956:04/12/16 16:46:21 ID:GM8k7q1e
>>964 なんかスマソ
上のほうで書いたのに細かいミスがいくつかあったし、
今日ずっといじってたらなんかいい感じになりそうなのでWikiに書いてみました。
何かあったらコメントください。
bat-mode でスクロールがすごい遅いんですが、なんとかならんもんですか?
>>968 まず,そのモードいぞんな理由を説明しる.
*post-command-hook* か *pre-command-hook* になにか
重いものが入っていると思うけど
970 :
953:04/12/17 11:45:56 ID:pR+r8wTZ
>>967 なんで俺は謝られてますか?
コメントったって「ファイルサイズは右揃えがいいな」くらいしか思いつかないので、
もっと有意義なコメントは他の人に任せます。
971 :
956:04/12/17 19:56:14 ID:estXikFm
>>970 そういえば、ファイルサイズ右揃えのほうがいいと思ったんだった。
file-info-line-format-stringの "~10T~A" を "~10T~10D"にしたらできました。
972 :
968:04/12/18 09:25:55 ID:RLS4A2RH
>>969 .xyzzy と site-lisp の中を grep してみたけど、
html+-mode, flex-fill, ldoc, paren, rv-region
にしかなかったです。
もうだめぽ
>>972 bat-modeのバッファで
ESC ESC *pre-command-hook*
ESC ESC *post-command-hook*
974 :
968:04/12/18 16:40:45 ID:RLS4A2RH
>>973 *pre-command-hook* は html+-delete-highlight-tag で、
*post-command-hook* は set-flexible-fill-prefix paren-highlight ldoc でした。
もうだめぽ
失礼します。
Eclipse 3.0 以降のように、C-a で行の最初の文字まで戻って、
もう一度C-a で行頭まで、、、ということを実現したいのですが、
方法がありましたらお教え願えませんでしょうか。
976 :
968:04/12/18 17:30:22 ID:RLS4A2RH
>>975 ; テストしてないので動かんかったらスマソ
(defun my-bol ()
(interactive)
(if (eq *last-command* 'my-bol)
(beginning-of-line)
(back-to-indentation)))
(global-set-key #\C-a 'my-bol)
>>975 >>976が動くかどうか分からんけど,自分の定義はこれ
;;.. 仮想行頭とその最初の単語位置を交互に移動
(defun beginning-of-virtual-line-or-first-word ()
(interactive)
(if (virtual-bolp) (skip-chars-forward " \t")
(beginning-of-virtual-line)))
>>974 bat-modeで,
ESC ESC *flexible-fill-mode-list*
の値に,bat-modeが含まれていたら含まれないようにする.
そうじゃなければ分からないし,こっちが苦労するのが
馬鹿らしくなってくるレスなのでもう氏らね
#そろそろ次スレの時期ですか?
979 :
975:
>>976 早速のお返事、どうもありがとうございました。
お陰さまで期待通りの動作を実現でき、大変満足しております。
>>977 どうもありがとうございます。
交互に移動というのが大変便利そうなのですが、
残念ながら当方の環境では動作できませんでした…。