2006-10-01から1ヶ月間の記事一覧

色々移動を試してみた。

色々試してみた。 (defun skip-space() (interactive) (let ((eol (save-excursion (goto-eol) (point)))) (looking-at "[ \t ]*" :regexp t :tail t :limit eol))) (defun skip-word() (interactive) (let ((eol (save-excursion (goto-eol) (point)))) (sc…

マイナーモードの作り方

silog - memo/xyzzy/minor-mode http://white.s151.xrea.com/wiki/index.php?memo%2Fxyzzy%2Fminor-mode 非常に参考になりそう。どういう事をしたらモードと言うのかよく分かっていなかったので、ために成った。*minor-mode-alist*を調べてみないと駄目かも…

はてなにテキストファイルを別にアップロードとか

出来ないのかなぁ 最近lispの書いたのコードは別ファイルとかでアップロードしておきたいけど、場所がないので、違う所に置いてあるが、管理が面倒。別にmp3をアップロードさせろとかって分けじゃないけど、テキストファイルくらいなら置けたらいいのに。と…

変数の話

かなりの確率で間違っている変数のメモ■defvarで変数を作るときに**で挟む理由 の勝手な理解、defvarはスペシャル変数で、どこからでも参照できる変数のようなので*で挟むことで他の変数と名前の重複を避ける。もし他でdefvarと同じ変数名を使ってしまうと、…

lispを普通のスクリプトみたいに使ってみたい。

取り合えず (defun fill-clipboard (&optional (arg 76)) (interactive) (let ((from (point))) (set-fill-column arg) (save-excursion (paste-from-clipboard) (fill-region from (point)) (kill-region-to-clipboard from (point)) ))) (require "wip/win…

letの変数をletの外から使う。(その2)

昨日書いたフラグの奴を(これ→himadatenodeの日記 - letの変数をletの外から使う。)、眺めてもう少し簡単な感じに変えてみた。 (defun hoge() (let ((x nil)) #'(lambda() (if (eq x nil) (setf x t) (setf x nil))) ))こういう感じで関数にしておいて。 (s…

拾ったJavaScript。

javascript javascript:R=0; x1=.1; y1=.05; x2=.25; y2=.24;x3=1.6; y3=.24; x4=300; y4=200; x5=300; y5=200;DI=document.getElementsByTagName("img");DIL=DI.length;function A(){ for(i=0; i-DIL; i++){ DIS=DI[ i ].style; DIS.position='absolute'; D…

M-]の動きを多少変えた

便利にしたかどうかは疑わしい感じ。まあ、押しても何も反応がないよりはマシかなぁとか。■具体的に何をするか M-]を押すと対応する括弧に移動する。現在の位置が括弧でない場合は、次の括弧の所にまで飛ぶ。ただし、括弧の一個後ろに飛ぶので、括弧が連続で…

Google Code Search

Google Code Search http://www.google.com/codesearch いつの間に出来たのか知らないけど之は凄い.

同じ行にcommentがある場合commentの位置に移動したい

とういう感じのを試してみた。 defvar-localとかindent-for-commentとかを見ていて、インデントはして欲しくはないけどコメントの所に移動して欲しいときはあるので、indent-for-commentからパクって適当に付け加えてcommentの開始位置に移動するのを試して…

window-toggle-division

■具体的に何をするか 2分割したWindowの縦横を切り替える。 (defun window-toggle-division () "ウィンドウ 2 分割時に、縦分割<->横分割" (interactive) (unless (= (count-windows 1) 2) (error "ウィンドウが 2 分割されていません。")) (let ((before-he…

follow-modoki-mode

前に書いたのを多少エラーとかとってマシな感じにした。follow-modeらしきもの。また前に書いたのと大差ないようなのがダラダラしそうなので、一応こっちに置いておいた。 こっち→follow-modoki.l■具体的に何をするか Emacsとかにあるfollow-modeらしきもの…

On Lispとかいうの

前にもOn Lispの話は少し書いたけど、それのPDFのを見つけたので、最近読んでみたりしている。翻訳してくれた人に感謝したい。しかし、難しい。之はlispを覚えるために読むというよりlispでプログラムできる人が、更にLispの知識を深めるために読むもののよ…

scheme-modeというのがあるらしい。

guttyonのメモ帳・日記 scheme-mode - Extlib Wiki最近気づいたんだけど関数型プログラミングって最近の流行なのね。xyzzyを触っておいて、そんな事にすら気づいてないのはアレな感じ。まあ、いつもの事だけど。xyzzyに飽きたら少し調べてみようかと思う。■…

defvar-localとdefvarの違い

どう違うのかよく分かっていなかったけど、雑記帖のにっき(09-10長年日記) ここを見たら、非常にために成った。■defvar-localの場合 defvar-localの中身 (macroexpand '(defvar-local *c* "xyzzy")) => (progn nil (or (boundp '*c*) (set-default '*c* "xyz…

lispの勉強用

Common Lisp http://www.h7.dion.ne.jp/~matsu/feature/common-lisp/index.html#feature.common-lisp.details 今日チョット読んだ限りでも結構、色々分かった。というか、今まで知らずに居た方が無謀なのかもしれないけど。今見た限りでもオススメ。sourceが…

変数fooに関数hogeの実体を格納し呼び出し

以下は変数fooに関数hogeの実体を格納し呼び出している. > (setf foo (symbol-function 'hoge)) #lgt;CLOSURE HOGE (X) (DECLARE (SYSTEM::IN-DEFUN HOGE)) (BLOCK HOGE (+ X 1))> > (funcall foo 1) 2 > (foo 1) *** - EVAL: the function FOO is undefined…

xyzzyの関数の戻り値

何気なく読んで、今頃気づいたり。数字も返せるんだ。*1何となく気分的に、tかnilだけかと思っていた。あ、そういえばpointとかは数字が帰ってきていたけど、気にしていなかった。一番最後の奴が戻るというのもあまり理解していなかったかも。retrun-from ho…

対応する括弧に飛ぶ

括弧にカーソルがある場合はC-eとかM-fとかで対応する括弧に飛ぶ戻るのはC-aとかM-bを想定。見つけたそれらしいものをメモ silog - memo/xyzzy/paren http://white.s151.xrea.com/wiki/index.php?memo%2Fxyzzy%2Fparen (defun match-paren (&optional arg) (…

letの変数をletの外から使う。

色々読んだ限りの所で面白そうなのを試してみた。 レキシカル変数(ローカル変数みたいなものの様子)をletの外から使う。 (multiple-value-bind (flag-x) (let ((x nil)) (values #'(lambda () (if (eq x nil) (setf x t) (setf x nil))))) (setf (symbol-f…

packageとか

についてチョット見てみたら、何か酷い勘違いをしていたかもしれないなぁとか思った。packageはそんなに勝手に作るものじゃなくて、どうやら、ある程度使用するパッケージは決まっているのが一般的みたい。特に規模が小さい場合は気にしなくても良い様子。と…

follow-modeらしきもの

elispとかから移植とか高度なことはできないというか、上手くいかなくても一度作ろうとしてみないとfm.el自体が何をしているのか理解できそうにないので、取り合えず、基本的なのを作ることした。*1■具体的に何をするか Windowを分割しているとき、どちらか…

好きなものをまねろ

satolog: 好きなものをまねろ http://po3a.blogspot.com/2006/07/blog-post_115250538140725051.html なるほど。packageを使ってみようかしら。とか思ってみたり。Emacsのを何でもいいからパクるのは辞めようとか思ったり。してみた。

前書いたC-eの中身を多少スッキリさせた。

■具体的に何をするか C-eを論理行末、表示行末、行末commentを意識して移動する感じ。 ;;C-eを便利に (version 0.01) (defun virtual-eol-or-eol () (interactive "p") (let ((p1 (point)) (p2));p1に現在の位置を記憶 (goto-virtual-eol);表示行末に移動 (s…

C-aも多少スッキリさせた。

前に使っていたのを二つ合体。■具体的に何をするか C-aで表示行頭、インデント行頭、論理行頭を意識して移動する。 細かい感じは使ってみてもらった方が理解が早そう。 ;v0.01 ;;C-aを便利に(lispで使いやすく) (defun lisp-C-a () (interactive "p") (when …

defvar-local

indent-for-commentの定義を見てcommentの開始位置に移動と言うのを考えてみたけど、どういう風に動いているのかよく分からなかった。特にdefvar-localで宣言されている所とかが。 その、ついでに見つけた。defvar-localなる宣言。いつもdefvarでトグルする…

svchost

「svchost.exe」の正体を探る - GIGAZINE http://gigazine.net/index.php?/news/comments/20061009_svchost/ svhostって前から気になってた。

PowerShellをダウンロードしておいた。

Vistaはしばらく買わないんじゃないかと思ったので、ひょっとして公開されなくなると嫌だったから、今のうちにダウンロードしておいた。ダウンロードの詳細 : Windows XP 用 Windows PowerShell 1.0 RC2 更新プログラム パッケージ (ローカライズ版) (KB9235…

sense-rectangle-modoki

さっき書いた所だけ直したようなのを、とりあえず、ここに置いておいた。→ここ ■具体的に何をするか 1. 矩形リージョンの範囲をハイライト。 2. 矩形がハイライトされている時はハイライトしている部分を対象に C-wとかM-wが動作するかもしれない。 C-yが矩…

矩形リージョンの範囲で置換

と言うのを試しに作ってみたら動いた。けど、また長いので書くのがアレな感じ。あんまり動作確認もしていないけど。一応動く感じ。矩形の範囲を特定する動作が色々な機能で重複するので、関数にした方が賢いかなぁとか思ったけど、どうせコピペなんで良いか…