如何突出显示vim中括号括起来的区域?

时间:2017-11-16 05:43:31

标签: vim clojure scheme common-lisp s-expression

当光标越过该区域时,有没有办法自动突出括号括起来的区域?

以以下文字为例:

(define (example x)
  (cond ((string? x) (display x))
             (else (error "Bad" x))))

当光标高于cond时,应立即突出显示该特定区域(即不需要按任何键来实现突出显示):

(cond ((string? x) (display x))
           (else (error "Bad" x))))

有关emacs中类似内容的有用截图:https://www.emacswiki.org/emacs/HighlightSexps

我相信这个突出显示的功能将使阅读s表达式(基本上是Racket,Scheme,Clojure,Common Lisp代码)变得更加容易。

如何在vim中实现这一突出显示?

1 个答案:

答案 0 :(得分:0)

您可以使用va((启动可视模式,从上一个开放(中选择相应的结束),包括(i(:不包括)括号本身)。要删除突出显示并返回原来的位置,请使用<Esc>``

我知道这只是一个部分解决方案,但这是你可以通过内置函数获得的。不仅如此,还需要一个插件,但我不知道是否存在插件。