我正在用 Vim 编写教程/书籍,我想关闭一段文本(本书的普通文本)的语法突出显示,并为代码示例重新激活它。
我已经用谷歌搜索了无止境,但我找不到一个简单的解决方案。我错过了什么吗?或者这在 Vim 中无法实现?
我正在用 Vim 编写教程/书籍,我想关闭一段文本(本书的普通文本)的语法突出显示,并为代码示例重新激活它。
我已经用谷歌搜索了无止境,但我找不到一个简单的解决方案。我错过了什么吗?或者这在 Vim 中无法实现?
你可以为你的书创建一个语法文件。
例如,您可以创建一个脚本:~/.vim/syntax/tutor.vim
"
" tutor.vim -- syntax file for my book/tutor
"
syn include @PY $VIMRUNTIME/syntax/python.vim
syn region pyBlock start="{{{" end="}}}" contains=@PY
这是一个示例文件:
# File: intro.txt
# Date: 2012-08-19
blah, blah ...
So, I will show you some code:
{{{
def hello():
print "world"
}}}
# vim: set syn=tutor :
我为此编写了SyntaxRange 插件(我的主要用例是使用“diff”语法突出显示电子邮件中的补丁)。使用它,您可以:[range]SyntaxIgnore
或:[range]SyntaxInclude {filetype}
缓冲区的某些部分,或者,当部分以某些标记开始和结束时,定义动态部分以适应行数的变化。
一边倒地思考……
在 Vim 中使用重组文本或 markdown 之类的东西并在 github 上渲染怎么样?这为您提供免费的版本管理。你可以有代码块。