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

dabbrev-popupの中身

前に調べたときのメモ ■dabbrev-popupのメモ end :(point) ;カーソル位置 start :(save-excursion (dabbrev-start)) 前の単語の開始位置かな。 dabbrev-start: ;単語のスタート位置らしき所の移動 abbrev :(buffer-substring start end) ;補完したい文字列の…

色々補完とかを見てみた。

このページに何が書いてあったのか。 xyzzyでプログラミング/文字列補完 - XyzzyWiki 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%CA%B8%BB%FA%CE%F3%CA%E4%B4%B0 を読んでいて、http://www-komo.i…

今日考えたこと

色々補完をしていたら、段々カーソル移動が面倒に。というか、入力するのよりそっちの方が面倒な気もする。補完しているときに次の候補らしき所をグローバル変数にセットして、何かのキーを押すと其の場所に飛ぶようにすれば、移動も楽になるんじゃないかと…

エディタの学習曲線?らしきもの

curves.jpg (JPEG 画像, 600x400 px) http://unix.rulez.org/~calver/pictures/curves.jpg ちょっと面白かった。

kakko-exと昨日辺りにやっていたこと

kakko-exと言うのを教えてもらって少し見て色々思った。見た感じだと段落単位で括弧の数を合わせていくという幹事みたい。簡潔にまとまっているので使い易そう。白紙の状態にlispを書いていくときには非常に有効に機能しそう。基本的には(を打ったら)を打つ…

letの変数を書き換えとか(その3くらい(適当に合体))

前と言うか、昨日かいてた奴を適当に合体。便利なときもありそうだけど。上手くキーと組み合わせないとキー割り当て的にもチョット微妙。 (defun replace-letvar(replacement) (interactive "*sChange:") (popup-list (get-letvar) #'(lambda (x) (replace-l…

変数とか関数の名前で気づいたこと

昨日気づいたことに、変数とか関数の名前は、後ろのspace一文字含めて考えると完全に別物と判別できると言うこと。 例えば、pointを補完するときに、point-maxとどういう風に区別するか考えたら、"point"+"space一つ"まで名前と考えると完全に被らない文字列…

適当な上にある括弧に移動する

letに限らずにこういう感じに一般化したほうが何かと便利そう。こんなん誰かが既にもっと上手いこと作っていそうな気もしてきたけど。 ■具体的に何をするか。 nameの括弧内側にあるときに使うとname括弧の所に移動する。ex: name=letなら。(letの所に移動す…

昨日というか

今日?書いたものを見て気づいたこと。これは仮に完全に上手くいったとしてlet内の変数を書き換えるとかってどれ位することなのかすら不明だなぁとか。ひょっとして要らないんj(ry

その他の小物

後から使うつもり。 (defun next-paren() "並列的に括弧を移動(移動は下向き)" (interactive) (while (looking-at "[^(]") (backward-char)) (goto-matched-parenthesis) (while (looking-at "[^(]") (forward-char)))これも色々問題があったので修正。って…

修正したつもり

先に書いたhoge-wordは試したら色々エラーが出たので修正。したつもり。というか単語区切りがどこにするか結構意味不明だったので相当適当。 ;v0.02 (defun hoge-word() "キャレットの付近の単語を返す" (interactive) (let ((start nil) (end nil)) (if (lo…

letの変数を書き換えとか(その2)

試してみたlet内置換。 (defun replace-let-string(pattern replacement) "letの中で置換" (interactive "*sReplace:\nsWiht:") (let ((cp (point)) startlet endlet) (save-excursion (save-restriction (when (goto-let) (setq startlet (point)) (backwar…

letの変数を書き換えとか

昨日の続き(良く見たら今日書いてたらしい)で、少し思ったのはletの中の変数の書き換えはそんなに難しくないなぁと。つまり、letの中の変数を変えたら、其の括弧以内の範囲で変数名と同じ奴を変換すればいいわけだから。 ;lispの文法を読むのに使いそうな…

ダラダラと長いメモ

何を考えて、居たかとかのメモ。 最近見た他のエディタの機能に、使う言語に合わせて補完するというのがあった。オブジェクト指向な奴だと必然的に補完される部分がある程度決まったりしていて、そこを補完している感じなんだということが何となく分かったの…