您如何反映光标的当前语法范围?

时间:2010-12-12 03:22:30

标签: vim

我正在尝试创建一些功能,只有当光标位于ruby文件中的双引号字符串中时才会发生。

如何检查光标是否在给定的语法中?

2 个答案:

答案 0 :(得分:3)

这将返回当前语法组。

function! SyntaxItem()
  return synIDattr(synID(line("."),col("."),1),"name")
endfunction

来自:http://vim.wikia.com/wiki/Showing_syntax_highlight_group_in_statusline
另见:http://vim.wikia.com/wiki/Identify_the_syntax_highlighting_group_used_at_the_cursor

答案 1 :(得分:0)

一切都建立在Andy给你的功能片段之上。之后,我们可以构建更高级的函数和命令。

这就是我对map-tools plugin的所作所为。以下是各种使用示例:

HTH。