在网上找了很多文章和配置,都不能顺利实现html中的代码隐藏.
有用过folding.el,hs-troggle-hiding.但都激活这些功能,却没有一点效果
请懂的给点提示,谢谢了~~~~
还有,我就想用emacs,把它用好,用精.如果不用的就不要再叫我换工具了 :)
[问题已解决]emacs中html代码的隐藏和折叠
-
- 帖子: 32
- 注册时间: 2005-10-23 23:31
[问题已解决]emacs中html代码的隐藏和折叠
上次由 Neate 在 2006-08-24 8:49,总共编辑 2 次。
-
- 帖子: 750
- 注册时间: 2006-03-19 11:39
M-x outline-minor-mode
开启 outline 辅模式 ( M-x outline-mode 是主模式,不要用它)
M-x hide-body
全部折叠
M-x show-all
全部展开
M-x hide-subtree
M-x show-subtree
对当前子节点进行折叠隐藏操作
其它的命令也多是以 hide 或者 show 起始的, 用TAB 补全,看看有哪些命令,自己试一下就知道了,常用的绑定一下就是
C-h r
Commands for Human Languages
* Outline Mode::
这里面的自己看看吧。。。
开启 outline 辅模式 ( M-x outline-mode 是主模式,不要用它)
M-x hide-body
全部折叠
M-x show-all
全部展开
M-x hide-subtree
M-x show-subtree
对当前子节点进行折叠隐藏操作
其它的命令也多是以 hide 或者 show 起始的, 用TAB 补全,看看有哪些命令,自己试一下就知道了,常用的绑定一下就是
C-h r
Commands for Human Languages
* Outline Mode::
这里面的自己看看吧。。。
上次由 kardinal 在 2006-07-31 14:12,总共编辑 1 次。
-
- 帖子: 750
- 注册时间: 2006-03-19 11:39
-
- 帖子: 750
- 注册时间: 2006-03-19 11:39
王垠的主页上有说明啊。
下载一个 fold.el 文件,放到 load-path 路径里
可以在配置文件中自己定义
(add-to-list 'load-path "路径")
把下面代码加到 .emacs 文件中
注释我加的。。。基本瞎猜,如有雷同,纯属巧合。。。
不好意思,就扫过一眼Elisp的教程,不懂的说。。。说不定哪天我学会了的话,就能搞清楚了。。。不过恐怕楼主等不到那阵了
下载一个 fold.el 文件,放到 load-path 路径里
可以在配置文件中自己定义
(add-to-list 'load-path "路径")
把下面代码加到 .emacs 文件中
注释我加的。。。基本瞎猜,如有雷同,纯属巧合。。。
代码: 全选
;;加载 fold.el 扩展;;好像需要手动加载 ;;通过 M-x load-library 命令
(load-library "folding")
;; 变量赋值 应该下面条件控制的触发,所以多半要通过手动加载的。。。不太清楚,楼主试试。。。
(declare (special fold-fold-on-startup
fold-keys-already-setup
))
;; 启动时开启 fold 模式
(setq fold-fold-on-startup t)
;; 向 fold 模式中添加 find-file 接口?
(folding-mode-add-find-file-hook)
;; 定义一个函数,如果开启了 fold 模式,设定下面的键绑定;;条件控制
(setq fold-keys-already-setup nil)
(add-hook 'folding-mode-hook
(function (lambda()
(unless fold-keys-already-setup
(setq fold-keys-already-setup t)
;;定义按键序列前缀变量 ;见下面
(define-prefix-command 'ctl-f-folding-mode-prefix)
;; 命令的键绑定;;上面定义的按键序列前缀,加双引号括起来的绑 ;一个单引号,引用的是命令
(define-key 'ctl-f-folding-mode-prefix "f" 'fold-fold-region)
(define-key 'ctl-f-folding-mode-prefix "e" 'fold-enter)
(define-key 'ctl-f-folding-mode-prefix "x" 'fold-exit)
(define-key 'ctl-f-folding-mode-prefix "b" 'fold-whole-buffer)
(define-key 'ctl-f-folding-mode-prefix "o" 'fold-open-buffer)
(define-key 'ctl-f-folding-mode-prefix "h" 'fold-hide)
(define-key 'ctl-f-folding-mode-prefix "s" 'fold-show)
(define-key 'ctl-f-folding-mode-prefix "t" 'fold-top-level)
(define-key 'ctl-f-folding-mode-prefix "f" 'fold-fold-region)
)
;;定义序列前缀使用的组合键 ;;给刚才定义的前缀变量赋值
(local-set-key "\C-f" 'ctl-f-folding-mode-prefix))))
;;不同主模式下,折叠时使用的关键词。使用 “元组”定义,第一个值是起始判断,第二个是结束判断,第三个是折叠起始点。
;;好像Html要用这种注释 <!-- {注释} --> 才能够折叠,并与普通注释相区别……没用过,楼主自己试试吧
(fold-add-to-marks-list 'sgml-mode
"<!-- {"
"<!-- } -->" " --> ")
(fold-add-to-marks-list 'c-mode "/* <" "/* > */" "*/")
(fold-add-to-marks-list 'c++-mode
"//<" "//>" "")
(fold-add-to-marks-list 'LaTeX-mode "%%% {{{" "%%% }}}" " ")
(fold-add-to-marks-list 'latex2e-mode "%%% {{{" "%%% }}}" " ")
(fold-add-to-marks-list 'latex-mode "%%%% {{{" "%%%% }}}" " ")
(fold-add-to-marks-list 'BibTeX-mode "%%% {{{" "%%% }}}" " ")
(fold-add-to-marks-list 'lisp-mode ";;; {" ";;; }" "")
(fold-add-to-marks-list 'lex-mode" /* {{{ " " /* }}} */ " "*/")
(fold-add-to-marks-list 'html-mode "<!-- { " "<!-- } -->" "-->")
(fold-add-to-marks-list 'shell-script-mode "# {{{" "# }}}" nil)
(fold-add-to-marks-list 'sh-mode "# {{{ " "# }}}" nil)
上次由 kardinal 在 2006-07-31 18:45,总共编辑 1 次。
-
- 帖子: 750
- 注册时间: 2006-03-19 11:39
-
- 帖子: 750
- 注册时间: 2006-03-19 11:39