zoukankan      html  css  js  c++  java
  • emacs之配置etags

    emacsConfig/etags-setting.el

     1 (require 'auto-complete-etags)
     2 
     3 (setq ac-sources (append '(ac-source-etags) ac-sources))
     4 
     5 ;定义全局变量
     6 (defvar etags-src-dir nil)
     7 (defvar etags-saved-tagfile-name nil)
     8 (defvar etags-language-type nil)
     9 
    10 
    11 (defun etags-update ()
    12   "Make ETAGS incremental update"
    13 
    14   (if 
    15       (
    16        and(null etags-src-dir)
    17           (null etags-saved-tagfile-name)
    18           (null etags-language-type)
    19       )
    20      (message "no tags updated for etags")
    21      (with-temp-buffer
    22       (shell-command
    23        (concat "ctags" " " "--languages=" etags-language-type " " "-e -R -f" " " etags-saved-tagfile-name " " etags-src-dir)
    24        (buffer-name))
    25      )
    26   )
    27 )
    28 
    29 (add-hook 'after-save-hook 'etags-update)
    30 
    31 ;etags生成函数
    32 (defun generate-etags ()
    33   "Generate tag tables."
    34   (interactive)
    35   (let
    36       (
    37        (language-type "")
    38        (src-dir "")
    39        (saved-tagfile-name "")
    40       )
    41 
    42     (setq 
    43           src-dir
    44           (read-from-minibuffer "source directory:" )
    45     
    46           language-type
    47           (read-from-minibuffer "language type:")
    48 
    49           saved-tagfile-name
    50           (read-from-minibuffer "tags save path:")
    51     )
    52  
    53     ;设置全局变量保存起来
    54     (setf etags-src-dir src-dir)
    55     (setf etags-language-type language-type)
    56     (setf etags-saved-tagfile-name saved-tagfile-name)
    57     
    58     (with-temp-buffer
    59       (shell-command
    60        (concat "ctags" " " "--languages=" etags-language-type " " "-e -R -f" " " etags-saved-tagfile-name " " etags-src-dir)
    61        (buffer-name)))))
    62 
    63 ;加载etags
    64 (defalias 'load-etags 'visit-tags-table)

    ctags支持etags的模式

  • 相关阅读:
    Head First设计模式读书笔记
    通过FileReference打开本地图片崩溃的解决方法
    Asea——轻量级的AS3模块配置与加载管理库
    AGAL反编译器
    [Stage3D]硬件加速的径向模糊
    C#的timer类问题~!
    c语言中的大数运算模块
    TRACERT命令及用法
    Linux用户和用户组的管理概述
    linux下挂载windows的共享文件目录ftp文件夹到/root/wind目录
  • 原文地址:https://www.cnblogs.com/ziyouchutuwenwu/p/3509574.html
Copyright © 2011-2022 走看看