Select assembly dialect and ISA without conflating syntax coloring with assembler support

Aperta
#64 0 commenti 0 reazioni 0 assegnatari Vedi su GitHub

Nessuno ha ancora preso questa issue.

Valutazione

Difficoltà
4/5
Tempo stimato
3-5 giorni
Idoneità per principianti
52/100
Tipo di issue
Funzionalità
Chiarezza
Specificata chiaramente
Stato di attività
Attiva
Stack tecnologico
kotlin, rust

Direzione di ricerca

Start at plugins/wave/src/main/kotlin/dev/wavelang/intellij/wave/asm/AssemblyLexer.kt and the completion/highlighting code that feeds it, plus Whale's src/commands/asm.rs (line ~72) for the accepted-forms contract. Read the referenced prior issues #3, #7, #49 and #8 before designing the settings layer, since dialect/ISA selection must persist and reuse their foundations. Done means a persisted, localized dialect+ISA setting that drives coloring/completion, with fixture-based tests for Whale AMD64 and foreign dialects that never invoke an assembler.

Scritto dal modello di indicizzazione a partire dal testo della issue.

Descrizione

assembler editor enhancement help wanted priority medium

Problem / current evidence

The current AssemblyLexer mixes x86, ARM and RISC-V keywords under one file type. Whale currently assembles AMD64 only; .s/.asm naming alone does not distinguish Whale syntax from GNU/LLVM or NASM dialects.

Code and contract references

Scope / proposed contract

Add explicit project/file-level dialect and ISA selection with conservative defaults. Drive completion/highlighting by the selected dialect while treating the assembler's accepted forms as a separate capability.

Completion criteria

  • Preserve existing file associations and allow an override when extensions are ambiguous.
  • Do not show AArch64 or RISC-V as Whale-assemblable merely because their registers are colored.
  • Do not assume Whale accepts every NASM instruction/directive.
  • Persist settings and use localized accessible labels.
  • Cover representative Whale AMD64 and foreign-dialect fixtures without invoking assemblers.

Dependencies and boundaries

  • Reuse/coordinate with existing WfP work: #3, #7.
  • Ecosystem index: #49; existing foundations: #8.

Difficulty

Medium — requires understanding the affected tool or platform integration.

Audit baseline: Wave 509a1e46; Whale e3a12d08; Vex 71f29daa; WfP 2804fc02. This issue records source-audit findings and proposed work; no implementation or new execution is claimed. The checks above are future acceptance criteria. Prefer small fixtures and targeted validation; full builds or real debugger/IDE sessions should be explicit and necessary.

Lingua principale
Java
Stelle
0
Fork
3
Merge medio
8h 8m
PR unite (30g)
1

Preparare l'ambiente

Come iniziare

  1. Leggi tutta la issue e poi la guida ai contributi del progetto.
  2. Commenta sulla issue per dire che te ne occupi tu — evita che due persone facciano lo stesso lavoro.
  3. Fai un fork del repository e lavora su un branch.
  4. Apri una pull request che faccia riferimento al numero della issue.

Altre issue di wavefnd/wave-for-platform

Tutte le issue di wavefnd/wave-for-platform

Issue simili

Altre issue su Java

Ricevi le nuove issue nella tua casella

Un breve riepilogo di issue GitHub adatte ai principianti.