首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >emacs:向hide-show alist添加模式

emacs:向hide-show alist添加模式
EN

Stack Overflow用户
提问于 2009-09-06 05:40:06
回答 1查看 1.5K关注 0票数 2

我想知道你是否知道如何让hideshow在新的模式下工作。例如,我有一些无关的代码想要隐藏在R中。使用折叠模式,它可以简单地

代码语言:javascript
复制
(load "folding" 'nomessage 'noerror)
(folding-add-to-marks-list 'ess-mode "# {{{"  "# }}}" nil t)
(add-hook 'ess-mode-hook 'turn-on-folding-mode)

我以为隐藏秀就相当于

代码语言:javascript
复制
(add-to-list 'hs-special-modes-alist
         '(ess-mode "# {{{" "# }}}" "#[ #]?"
            hs-forward-sexp 
            hs-c-like-adjust-block-beginning
            ))
(add-hook 'ess-mode-hook '(lambda()
                (hs-minor-mode 1)
                (hs-hide-all)
                (custom-set-variables
                 (hs-hide-comments-when-hiding-all 0)
                 )
))

但是我想在hs-forward-sexp中有一些我不确定该怎么弄明白的魔法?

我尝试修改一个为c-sharp编写的函数(用{ and }替换区域/endregion上的正则表达式搜索),但没有成功!我想知道对于一个老手来说解决方案是不是显而易见...

非常感谢!

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2009-12-23 07:15:10

您并没有具体说明到底出了什么问题。当我尝试使用您的配置时,我发现(hs-hide-all)调用因参数数量错误而失败,因为hs-forward-sexp有两个参数,但调用时使用了一个参数。

长话短说,我可以让隐藏在文本模式下正常工作(通过上面的更改),将您的初始化修复为:

代码语言:javascript
复制
(add-to-list 'hs-special-modes-alist
             '(ess-mode "# {{{" "# }}}" "#[ #]?"
                         forward-sexp 
                         hs-c-like-adjust-block-beginning))

你在第三行有hs-forward-sexp,但你真正想要的只是普通的forward-sexp

注意:我的测试实际上是在text-mode中进行的,但这不应该影响结果。

票数 4
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/1384953

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档