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的模式

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Etags,英文全称为entity tags即实体标记。在我们用雅虎浏览器工具Yslow时,就有这么一个优化选项,全称为:Configure entity tags (ETags),即配置实体标记,什么是Etags?ETags(Entity tags)是服务器和浏览器的一个功能,它用来判断浏览器缓存里的元素是否和原来服务器上的一致。ETags 比 last-modified date 更具有弹性,它用一个独一无二的字符串来标识一个元素的版本。很多网站丢分都在这里,比如可好网,经过一系列的优化后,首页也只达到B级83分,这其中Etags得分为F(最低级别), Etags原理:Add an Expires header已经对浏览器缓存机制中的Cache-Control和Expires进行了配置,这一条评测的是另外两个:Last-Modified和ETag。简单的说,即使设置了文件的期限,浏览器在访问资源时也会因为Last-Modified和ETag而重新下载整个资源。 那么如何提升级别呢?网上搜索了一些方法,其最好的方法就是将其关闭,关闭方法很简单,即在在Apache中做如下配置: 以下是引用片段: FileETag none 对于使用windows IIS的服务器,则需要使用第三方的DLL文件更有效些,具体使用方法:下载REMEtags,RemEtag.zip,解压到服务器下的文件夹下,再启用ISAPI,即把RemEtag.dll添加到ISAPI应用下运行,再重启IIS即可生效。 步骤如下: 1、进入到IIS服务器(windows 2003)中,可以是独立服务器或者vps主机,解压remEtags.zip到任意文件夹。 2、打开IIS管理器,右键选择网站--->属性--->弹出网站属性对话框,如图: 3、点击添加按钮,弹出添加对话框: 4、单击确定,重启IIS即可 5、打开网站,看看最终结果:配置成功!!这一选项从之前的F,变为A! 网站的yslow v2 的分数也从之前的83分提高到85分
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值