Rust analyzer highlighting with nvim-lsp

オープン
#424 コメント 0 件 リアクション 0 件 担当者 0 名 GitHub で見る

まだ誰も着手していません。

評価

難易度
3/5
見積もり時間
1〜2日
初心者へのやさしさ
35/100
issue の種類
バグ
明瞭さ
おおむね明確
活発さ
停滞
技術スタック
neovim, rust, vim

調査の方向性

Start by reproducing the Rust Analyzer documentation highlighting in Neovim 0.5 with nvim-lsp and nvim-completion, using the reported after/ftplugin/rust.vim configuration. Compare which Rust documentation tokens receive Markdown highlights and which do not; the issue says attempts in before/ftplugin/markdown.vim and before/syntax/markdown.vim had no effect. Done means identifying and fixing the missing highlighting behavior.

索引モデルが issue の本文から書いたものです。

説明

  • rust.vim version: Downloaded October,15th 2020

Steps to reproduce:

  • Running latest neovim 0.5
  • Using nvim-lsp and nvim-completion

Rust analyzer documentation gets treat as markdown and is mostly able to highlighted as markdown

image

However as you can see somethings are not able to highlighted with markdown highlights

I am using this in my after/ftplugin/rust.vim

function s:rustdoclsphilight()
	if &background ==# 'dark'
		let l:color = '#5d4d7a'
	else
		let l:color = '#e2e0ea'
	endif
	exec 'hi markdownItalic guibg='.l:color
	exec 'hi markdownAutomaticLink guibg='.l:color
	exec 'hi markdownBlockquote guibg='.l:color
	exec 'hi markdownBold guibg='.l:color
	exec 'hi markdownBoldDelimiter guibg='.l:color
	exec 'hi markdownBoldItalic guibg='.l:color
	exec 'hi markdownBoldItalicDelimiter guibg='.l:color
	exec 'hi markdownCode guibg='.l:color
	exec 'hi markdownCodeBlock guibg='.l:color
	exec 'hi markdownCodeDelimiter guibg='.l:color
	exec 'hi markdownError guibg='.l:color
	exec 'hi markdownEscape guibg='.l:color
	exec 'hi markdownFootnote guibg='.l:color
	exec 'hi markdownFootnoteDefinition guibg='.l:color
	exec 'hi markdownH1 guibg='.l:color
	exec 'hi markdownH2 guibg='.l:color
	exec 'hi markdownH3 guibg='.l:color
	exec 'hi markdownH4 guibg='.l:color
	exec 'hi markdownH5 guibg='.l:color
	exec 'hi markdownH6 guibg='.l:color
	exec 'hi markdownHeadingDelimiter guibg='.l:color
	exec 'hi markdownHeadingRule guibg='.l:color
	exec 'hi markdownId guibg='.l:color
	exec 'hi markdownIdDeclaration guibg='.l:color
	exec 'hi markdownIdDelimiter guibg='.l:color
	exec 'hi markdownItalic guibg='.l:color
	exec 'hi markdownItalicDelimiter guibg='.l:color
	exec 'hi markdownLineBreak guibg='.l:color
	exec 'hi markdownLineStart guibg='.l:color
	exec 'hi markdownLink guibg='.l:color
	exec 'hi markdownLinkDelimiter guibg='.l:color
	exec 'hi markdownLinkText guibg='.l:color
	exec 'hi markdownLinkTextDelimiter guibg='.l:color
	exec 'hi markdownListMarker guibg='.l:color
	exec 'hi markdownOrderedListMarker guibg='.l:color
	exec 'hi markdownRule guibg='.l:color
	exec 'hi markdownUrl guibg='.l:color
	exec 'hi markdownUrlDelimiter guibg='.l:color
	exec 'hi markdownUrlTitle guibg='.l:color
	exec 'hi markdownUrlTitleDelimiter guibg='.l:color
	exec 'hi markdownUrlValid guibg='.l:color
endfunction!

call <SID>rustdoclsphilight()

I have tried adding syn keyword blocks in before/ftplugin/markdown.vim and before/syntax/markdown.vim but it doesn't seem to change anything.

主要言語
Vim Script
スター
4.2k
フォーク
323
PR マージ指標
30日以内にマージされた PR はありません

環境構築

このプロジェクトには開発コンテナ、Dockerfile、コントリビューションガイドがありません。まず README を読み、一般的な手順ははじめてのコントリビューションガイドを参照してください。

はじめの一歩

  1. issue を最後まで読み、次にプロジェクトのコントリビューションガイドを読みます。
  2. 着手することを issue にコメントします — 二人が同じ作業をするのを防げます。
  3. リポジトリをフォークし、ブランチを切って変更します。
  4. issue 番号を参照したプルリクエストを送ります。

rust-lang/rust.vim のほかの issue

rust-lang/rust.vim の issue をすべて見る

新しい issue をメールで受け取る

初心者向けの GitHub issue を短くまとめたダイジェスト。