all repos

clerk @ 7b8e468

missing tooling for ledger/hledger
1 files changed, 2 insertions(+), 1 deletions(-)
lsp: parse semantic tokens from loader to cache results
Author: Oleksandr Smirnov olexsmir@gmail.com
Committed at: 2026-09-03 16:19:46 +0300
Authored at: 2026-09-03 14:00:04 +0300
Change ID: qlrsrmnzqnvxktptlmvrvvsvvvlpmxru
Parent: 5e60b81
M internal/lsp/textdocument_semantic_tokens.go
ยทยทยท
        115
        115
         	}

      
        116
        116
         	// Tokenize outside the lock: a full tokenization of a large journal is

      
        117
        117
         	// milliseconds, during which didChange/didOpen would otherwise stall.

      
        118
        
        -	tokens := tokenizeForSemantics(st.text, parseJournalStr(st.text))

      
        
        118
        +	rj := s.loader.ResolveBytes(doc.Path(), []byte(st.text))

      
        
        119
        +	tokens := tokenizeForSemantics(st.text, rj.Occurrences[0].Ast)

      
        119
        120
         	s.mu.Lock()

      
        120
        121
         	defer s.mu.Unlock()

      
        121
        122
         	cur, ok := s.openDocs[doc]