Code reference detail
textmate-import-highlight.test.ts
packages/language/test/textmate-import-highlight.test.ts
| Idea | Status | Tags | Summary | Katz |
|---|---|---|---|---|
| open_file_algorithm | done | When the editor opens or changes a `.rq` buffer, `reqlan-lsp` runs this sequence. Do not wait for the ideas index. Do not wait for a workspace crawl. Detail: [open_file_sequence_diagram]. Related: [open_file_reference_sequencing], [language_server_rust], [ast_lifecycle], [outbound_one_hop], [open_file_hot_path], [token_colour_sequence], [missing_reference_colour_sequence], [lazy_features_after_outbound]. The hot path finishes before the first diagnostics publish. 1. Parse this buffer once ( [ast_lifecycle] ). 2. Colour tokens from that parse ( [token_colour_sequence] ). 3. Emit same-file links and same-file missing-idea errors from that parse. 4. Parse each imported file once, at depth 1, for idea names and lines ( [outbound_one_hop] ). Link an imported name that exists. Underline an imported name that does not ( [missing_reference_colour_sequence] ). 5. Return. A qualified reference may link to its file from the path token. Do not read that file on this path. After that publish, a background pass fills the rest ( [lazy_features_after_outbound] ). That pass must not delay steps 1 – 5. The server sends the hot publish before it starts that pass. It runs that pass only while no client message waits. A hover or a definition request goes first. A change reuses the import roots loaded at open. It does not read the config again. The node engine keeps [node_engine_open_path]. | 0.330 | |
| token_colour_sequence | done | Token colour has two layers. They must not wait for the ideas index. TextMate paints first from the buffer text. Semantic tokens paint from the one parse ( [ast_lifecycle] ). A second extract does not paint tokens. A missing reference keeps the same token colour. The error underline is a diagnostic ( [missing_reference_colour_sequence], [reference_rendering] ). Related: [syntax_highlighting]. | 0.117 | |
| complementary_information_rendering | The extension should render computed information inline in the editor as complementary text. Complementary rendering should include resolved references and optionally indirect references behind a toggle. Complementary rendering should not mutate source files unless the user explicitly applies a change. | 0.040 | ||
| import_statement_highlighting | done | TextMate highlighting for import lines must colour the whole statement, not only the leading `from` / `import` keyword. After `import` ( and after `from` … `import` ), the quoted path, the `import` / `as` keywords, and idea / alias names must receive scopes — they must not stay default-white while still looking interactive from a path document link alone. Root cause: a short `^\\b(from|import)\\b` match ran before the path patterns and consumed the keyword so the path never scoped. Fix: line-scoped `meta.import.reqlan` begin / end rules that paint path, keywords, and names. Semantic tokens still paint import AST nodes ( and must `return` after handling them ). | 0.064 | |
| syntax_features | The extension should provide language support for. rq files via the lsp. Syntax features should cover ideas, ideasets, imports, references, attributes, comments, and lists. Broken imports and references should be validated and reported in the editor. Go-to-definition and find-references should work for ideas, imports, and cross-file links. Find-references is served by ["../support/language-server-rust.rq".language_server_rust] ( `textDocument/references` ). Autoformatting should be supported for. rq files. | 0.046 | ||
| syntax_highlighting | done | . rq files should receive full syntax highlighting coverage for all reqlan constructs. Semantic token highlighting should distinguish ideas, attributes, references, imports, and keywords. Path + wildcard idea refs ( `["…/*.rq".idea_*]` ) must highlight as links / strings — not comment-grey — see ["./features-syntax-highlighting.rq".wildcard_reference_highlighting]. Import lines must colour path and keywords after `import` / `from` — see ["./features-syntax-highlighting.rq".import_statement_highlighting]. Same-line named braces ( `name {}`, `name {hello}` ) must close in TextMate so later one-liners stay visible — see ["./features-syntax-highlighting.rq".same_line_named_block_highlighting]. | 0.093 |
Reference labels
"../../../../packages/language/test/textmate-import-highlight.test.ts", "../../../../packages/language/test/textmate-import-highlight.test.ts:e2e: from-import line scopes path and import keyword", "../../../../packages/language/test/textmate-import-highlight.test.ts:e2e: namespace import line scopes path and as", ../../../../packages/language/test/textmate-import-highlight.test.ts, ../../../../packages/language/test/textmate-import-highlight.test.ts:e2e: from-import line scopes path and import keyword, ../../../../packages/language/test/textmate-import-highlight.test.ts:e2e: namespace import line scopes path and as