LSP hover emits literal \n in Markdown code fences
Mantenedores costumam responder em até 1 dia
Ninguém assumiu esta issue ainda.
Avaliação
- Dificuldade
- 2/5
- Tempo estimado
- 1-3 horas
- Facilidade para iniciantes
- 72/100
- Tipo de issue
- Bug
- Clareza
- Claramente especificada
- Status de atividade
- Ativa
- Stack de tecnologia
- c
- Domínio
- developer-experience, tooling
Direção de pesquisa
Comece em src/eigenlsp.c em handle_hover, onde as strings de fence " eigenscript\\n" e "\\n " são anexadas antes de serem escapadas em JSON uma segunda vez; siga o caminho de escape para ver onde o backslash+n literal é produzido. Reproduza com make lsp e o driver briefs/out/r1-8/drivers/hover_format_gap.py, comparando com hover-format-gap.json. Concluído quando o contents.value decodificado contiver novas linhas reais ao redor do fence e os testes JSON-RPC cobrirem um hover de builtin/símbolo além dos literais numéricos int e float sem alterar as classificações existentes.
Escrita pelo modelo de indexação a partir do texto da issue.
Descrição
The LSP hover formatter emits the two characters backslash + n inside its Markdown code fences instead of newline characters. This is inherited by the numeric literal hover added during #1758 R1.8; the formatter already affected builtin/symbol hover on the base.
src/eigenlsp.c:handle_hover appends C strings "```eigenscript\\n" and "\\n```", then JSON-escapes them again. A real JSON-RPC hover over 3.0 returns a contents.value whose Python representation is '```eigenscript\\nfloat\\n```', with zero actual newline characters. Markdown consumers therefore do not receive a fenced code block.
Reproducer: build make lsp, initialize a JSON-RPC session, didOpen print of 3.0\n, request textDocument/hover at line 0, character 9, and inspect the decoded contents.value. The read-only reproduction driver and result are in the R1.8 handoff: briefs/out/r1-8/drivers/hover_format_gap.py and hover-format-gap.json.
Done when:
- Hover content contains actual newlines around the code block, without literal backslash+n in their place.
- Real JSON-RPC tests cover a builtin/symbol hover and both numeric literal kinds.
- Existing hover text and numeric
int/floatclassifications remain correct.
Principle: No silent wrong answers. This is a formatting gap outside R1.8's numeric semantics and is surfaced separately rather than silently broadening that round.
- Linguagem predominante
- C
- Estrelas
- 3
- Forks
- 7
- Merge médio
- 8h 36min
- PRs com merge (30d)
- 406
Preparar o ambiente
Inicia o contêiner de desenvolvimento do projeto no navegador, com a sua própria conta do GitHub.
- Inclui um Dockerfile ou arquivo Docker Compose
- Tem um modelo de pull request
- Ler o guia de contribuição
Primeiros passos
- Leia a issue inteira e depois o guia de contribuição do projeto.
- Comente na issue dizendo que vai assumir — evita que duas pessoas façam o mesmo trabalho.
- Faça um fork do repositório e trabalhe em uma branch.
- Abra um pull request que referencie o número da issue.
Mais de InauguralSystems/EigenScript
-
area:docs area:stdlib found-by:duet-audit kind:docs-drift
Dificuldade 2/5 1-3 horas Facilidade para iniciantes 86/100
InauguralSystems/EigenScript#2251 · 1 comentário ·
Mantenedores costumam responder em até 1 dia
-
X11 title and ctype tests pick their display from $$ and can silently attach to a foreign X serverAbertaarea:gfx kind:bug
Dificuldade 2/5 1-3 horas Facilidade para iniciantes 85/100
InauguralSystems/EigenScript#2216 ·
Mantenedores costumam responder em até 1 dia
-
area:gfx kind:bug
Dificuldade 1/5 1-3 horas Facilidade para iniciantes 90/100
InauguralSystems/EigenScript#2215 ·
Mantenedores costumam responder em até 1 dia
-
Source comments still name the removed set_observer_thresholds and set_observer_scale builtinsAbertaarea:observer area:trace-tape found-by:code-review kind:docs-drift
Dificuldade 2/5 1-3 horas Facilidade para iniciantes 85/100
InauguralSystems/EigenScript#2212 ·
Mantenedores costumam responder em até 1 dia
-
area:stdlib bug found-by:cold-read kind:bug
Dificuldade 2/5 1-3 horas Facilidade para iniciantes 83/100
InauguralSystems/EigenScript#2197 ·
Mantenedores costumam responder em até 1 dia
Todas as issues de InauguralSystems/EigenScript
Issues semelhantes
-
Dificuldade 2/5 1-3 horas Facilidade para iniciantes 82/100
Mantenedores costumam responder em até 1 dia
-
elf_loader: Xtensa ignores the addend of R_XTENSA_GLOB_DAT / R_XTENSA_JMP_SLOT (C++ vtables)Talvez já em andamento @diplfranzhoepfinger assumiu hoje. Abertaelf_loader
Dificuldade 2/5 1-3 horas Facilidade para iniciantes 72/100
espressif/esp-iot-solution#813 ·
Mantenedores costumam responder em até 1 dia
-
Status: Opened Type: Bug
Dificuldade 1/5 Menos de uma hora Facilidade para iniciantes 85/100
Mantenedores costumam responder em até 1 dia
-
Dificuldade 1/5 Menos de uma hora Facilidade para iniciantes 85/100
msys2/MSYS2-packages#6919 ·
Mantenedores costumam responder em até 1 dia
-
severity: low
Dificuldade 2/5 1-3 horas Facilidade para iniciantes 76/100
luainkernel/lunatik#2221 ·
Mantenedores costumam responder em até 1 dia