hns - 日記自動生成システム - Version 2.19.9

先月 2005年11月 来月
1 2 3 4 5
6 7 8 9 10 11 12
13 14 15 16 17 18 19
20 21 22 23 24 25 26
27 28 29 30
Namazu for hns による簡易全文検索
詳しくは 詳細指定/ヘルプを参照して下さい
検索式:

2005年11月24日(木) 旧暦 [n年日記] [更新:"2005/11/25 12:27:04"]

#1 [Emacs] 森島さんの elscreen と elscreen-gf

いままでは (knok さんに教わった) id-utils を操作行で使っていたが Emacs から利用出来るという話なので、 から次の二つを貰って来る (それ以前に Emacs は 22.0.50, APELは 10.6)
elscreen-1.4.1.tar.gz
elscreen-gf-1.4.0.tar.gz
tar で開けてから次のようにしてそれぞれをバイトコンパイル
emacs -batch -f batch-byte-compile elscreen.el
emacs -batch -f batch-byte-compile read-directory-name.el
emacs -batch -f batch-byte-compile elscreen-gf.el
これら (*.el, *.elc ) を /usr/local/share/emacs の下の site-lisp/a-files に入れておく。 id-utils は 別途入れて おく elscreen-gf-1.4.0/QuickStart に書いてあるように試してみる。 C-z と入力した途端に、窓がアイコン化されてしまうので、 elscreen-prefix-key を C-c C-z にして試して見る。つまり ~/.emacs に
(require 'elscreen)
(require 'elscreen-gf)

(defcustom elscreen-prefix-key "\C-c\C-z"
  "*Command prefix for ElScreen commands."
  :type '(string :size 10)
  :tag "Prefix-key"
  :set (lambda (symbol value)
         (when (boundp 'elscreen-map)
           (elscreen-set-prefix-key value))
         (custom-set-default symbol value))
  :group 'elscreen)
と書いておく
  • C-c C-z C-g m で mkid を実行する (M-x elscreen-gf-execute-mkid) が、その時に、ディレクトリを聞いて来る
  • ソースの一番上ではなかったので、(そのままでもいいけれど、一応) 一番上を指定する
  • ソースの一つを開いて、探したい関数の上にカーサを持っていって
  • C-c C-z C-g g RET (M-x elscreen-gf-execute-gid)
  • 開いた検索結果の窓で o をすると、該当ファイルの該当位置を表示

C-c C-z C-g g RET したところ:


検索文字として size_seg を指定してそれに該当する行が 3 行見つかった

上の画面の三行目を o で開いたところ:


画面の上の方に TAB があって、それを選ぶと、画面が切替えられる。

うーん、これは便利。それと、実は gid を使ったことがなくて、今までは、 いつも grep `lid hogehoge` していた。 簡単に調べたことを まとめておく

もう一度:

ttyp9:makoto@st4200 7:45:05/051124(/export/local-src)> tar zxf /e/u/j/distfiles/binutils-2.16.1.tar.bz2
ttyp9:makoto@st4200 7:56:32/051124(/export/local-src)> cd binutils-2.16.1/
ttyp9:makoto@st4200 7:56:38/051124(...local-src/binutils-2.16.1)> mkid
ttyp9:makoto@st4200 7:56:43/051124(...local-src/binutils-2.16.1)>
mkid が 5 秒で終わるというのは ? 変 ? (上の画面は、実はこの後で撮った)

elscreen の操作:

elscreen の方の操作は上の ElScreen というメニューにも出ているので、 覚えるまでは、それを見ればいいが screen と同じようなもの
C-c C-zccreate新規画面
C-c C-zkkill画面を終了
C-c C-zKkill other他の画面を終了
C-c C-znnext次の画面
C-c C-zpprevious前の画面
C-c C-zatoggle切替

時々正しくないところに ?:

ElScreen-GF の画面で o をした時に、file は正しく選択するが行が正しい ところに飛ばないことがある気がする。何だろう。 次のように、行頭から文字列が書いてある時かな
dwarf2dbg.c:680:size_inc_line_addr (int line_delta, addressT addr_delta)
o は elscreen-gf-mode-jump-to-entry に割当てられている。

やはり行頭をうまく見つけていないやうだ。 elscreen-gf.el の 281 行目を次のように変更すると、問題が直る気がする。

--- elscreen-gf.el~	2005-11-24 23:12:09.000000000 +0900
+++ elscreen-gf.el	2005-11-25 12:22:54.000000000 +0900
@@ -278,7 +278,7 @@
       (elscreen-find-file filename)
       (goto-line line)
       (re-search-forward
-       (format "[^a-zA-Z0-9_]\\(%s\\)[^a-zA-Z0-9_]" pattern)
+      (format "\\b\\(%s\\)\\b" pattern)
        (line-end-position) t)
       (goto-char (match-beginning 1))
       (elscreen-gf-move-overlay-create

1.4.1 に
検索パターンが行の先頭から始まっている場合、 jump後にエラーになる不具合を修正しました。
(11/24) と書いてある

C-z が使えない件:

emacs -q -l ~/.emacs-elscreen-gf すると、C-z が説明のように使える。 何かなぁ。~/.emacs-elscreen-gf の内容:
(require 'elscreen)
(require 'elscreen-gf)



最近の日記
2019年01月06日
today's dd (きょうの dd)
2018年12月23日
segfaults at Adding disk (RAID setup at sysinst)
2018年12月16日
Lets Note SX3
2018年11月11日
old and new
2018年11月04日
自転車を買った(中古)
以上、1 日分です。
タイトル一覧
カテゴリ分類
Powered by hns-2.19.9, HyperNikkiSystem Project

Count.cgi (since 2000/02/05)