アットウィキロゴ
segmentation fault
掲示板 掲示板 ページ検索 ページ検索 メニュー メニュー

segmentation fault

emacsとglobal

最終更新:

匿名ユーザー

- view
管理者のみ編集可
ソースコードを理解していくうえで、emacsとglobalの設定をしてみた。

  • emacs
emacsは言わずとしれた、editorです;;

  • global
タグジャンプするツールです。
GUN GLOBAL
多摩通信社

インストール

emacsはインストールされていたので、globalをインストール


#apt
  • get update
#apt
  • get install global


で、gtags.elのバイトコンパイルでエラーがでたみたいなので、
/usr/share/emacs/site-lisp/global/gtagsをちょこちょこ修正
とりあえず、オリジナルとのdiff


      • gtags.el.org 2002-07-04 22:39:21.000000000 +0900
      1. gtags.el 2006-12-13 20:11:08.789594232 +0900
@@ -330,7 +330,7 @@
  (let (tagname flag)
    (if (= 0 (count-lines (point-min) (point-max)))
        (progn (setq tagname "main") (setq flag ""))
  • (if gtags-running-xemacs (goto-char (event-point event))
  1. (if gtags-running-xemacs (goto-char (event-start event))
       (select-window (posn-window (event-end event)))
        (set-buffer (window-buffer (posn-window (event-end event))))
        (goto-char (posn-point (event-end event))))
@@ -352,7 +352,7 @@
(defun gtags-select-tag-by-event (event)
  "Select a tag in [GTAGS SELECT MODE] and move there."
  (interactive "e")
  • (if gtags-running-xemacs (goto-char (event-point event))
  1. (if gtags-running-xemacs (goto-char (event-start event))
    (select-window (posn-window (event-end event)))
    (set-buffer (window-buffer (posn-window (event-end event))))
    (goto-char (posn-point (event-end event))))
@@ -414,7 +414,7 @@
    (setq buffer (generate-new-buffer (generate-new-buffer-name (concat "*GTAGS SELECT* " prefix tagname))))
    (set-buffer buffer)
    (message "Searching %s ..." tagname)
  • (if (not (= 0 (call-process "global" nil t nil (concat "-ax" flag) tagname)))
  1. (if (not (= 0 (call-process "global" nil t nil (concat "-x" flag) tagname)))
       (progn (message (buffer-substring (point-min)(1- (point-max))))
               (gtags-pop-context))
      (goto-char (point-min))


event-pointが定義されていなかったみたいなので、適当event-startに変えただけ・・・


後は、
  • emacs -batch -f batch-byte-compile gtags.el
でコンパイルして、
  • mv gtags.elc /usr/share/emacs21/site-lisp/global/
で完了

個人の設定

ホームディレクトに
  • .emacsを作成

;; tab width
(setq-default tab-width 4)

;; for emacs color
(require 'font-lock)
(global-font-lock-mode t)

;; check {}()
(show-paren-mode t)

;; for global
(autoload 'gtags-mode "gtags" "" t)
(setq gtags-mode-hook
       '(lambda ()
               (define-key gtags-mode-map "\et" 'gtags-find-tag)
               (define-key gtags-mode-map "\er" 'gtags-find-rtag)
               (define-key gtags-mode-map "\es" 'gtags-find-symbol)
               (define-key gtags-mode-map "\e*" 'gtags-pop-stack)
       )
)


(add-hook 'c-mode-common-hook
       '(lambda ()
               (gtags-mode 1)
               (gtags-make-complete-list)
       )
)


  • う、表示がおかしい。。。 -- seg_fault (2006-12-14 00:24:15)
名前:
コメント:
記事メニュー
最近更新されたスレッド
ウィキ募集バナー