onivim/oni

Syntax Highlighting: Use with `<c-/>` command

Open

#2,058 创建于 2018年4月6日

在 GitHub 查看
 (2 评论) (0 反应) (0 负责人)TypeScript (11,389 star) (336 fork)batch import
enhancementhelp wantedinsider

描述

There is a somewhat undocumented command which is like an enhanced find-in-buffer experience, accessible via <c-/>:

super-search

It's a really cool feature! The only downside with it is that it doesn't respect syntax highlighting. I believe that with the work we have in the textmate highlighting feature, it should be possible to get syntax highlighting here.

We expose an API for querying the tokens / highlights as a syntaxHighlighter object off of he editors: https://github.com/onivim/oni/blob/a99544bdffbceb07c86a1f8c0da614ef7c2e4f52/browser/src/Editor/NeovimEditor/NeovimEditor.tsx#L175

And that has a method for getHighlightTokenAt: https://github.com/onivim/oni/blob/a99544bdffbceb07c86a1f8c0da614ef7c2e4f52/browser/src/Services/SyntaxHighlighting/SyntaxHighlighting.ts#L116

But, we also have the full set of tokens on the line - so it might be worth creating an API like getTokensForLine(bufferId, lineNumber) - if we had that, it should be pretty straightforward to get the token colors and show some nice syntax highlighting here 👍

贡献者指南