Editor support generalized: shared core, language server, Vim and VS Code (from dev eb5baf9cbe59)
doc/edit/ now holds a shared Python implementation of the language's structural layer (klammertext_edit.py) and a dependency-free language server (klammertext_ls.py), with integrations for Emacs, Sublime Text, Vim, and Visual Studio Code. The editor test suite in tst/ covers the core's API and CLI, the language server protocol, the VS Code extension, headless Vim, and Emacs byte-equality. Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
This commit is contained in:
@@ -121,14 +121,17 @@ Register one with `klammertext-add-literal-klammer', e.g. in your init file:
|
||||
:type '(repeat string)
|
||||
:group 'klammertext)
|
||||
|
||||
;; SYNC: the Sublime Text port in doc/sublime/ duplicates this list statically
|
||||
;; (a Sublime syntax/plugin cannot read this Emacs defcustom). When you add or
|
||||
;; remove a literal klammer, mirror it in ALL of:
|
||||
;; * LITERAL_KLAMMERS in doc/sublime/Klammertext.py
|
||||
;; * LITERAL_KLAMMERS in doc/sublime/Klammertext_indent.py
|
||||
;; SYNC: the shared Python core doc/edit/shared/klammertext_edit.py (used by
|
||||
;; the Sublime, Vim, and VS Code integrations and the language server) holds
|
||||
;; this list as LITERAL_KLAMMERS, and the static per-editor syntax files
|
||||
;; restate it (a tokenizer cannot read a defcustom or a Python module). When
|
||||
;; you add or remove a literal klammer, mirror it in ALL of:
|
||||
;; * LITERAL_KLAMMERS in doc/edit/shared/klammertext_edit.py
|
||||
;; * the @NAME literal rule + literal_NAME context in
|
||||
;; doc/sublime/Klammertext.sublime-syntax
|
||||
;; All four are currently seeded with just "code".
|
||||
;; doc/edit/sublime/Klammertext.sublime-syntax
|
||||
;; * the @NAME verbatim region in doc/edit/vim/syntax/klammertext.vim
|
||||
;; * the @NAME rule in doc/edit/vscode/syntaxes/klammertext.tmLanguage.json
|
||||
;; All are currently seeded with just "code".
|
||||
|
||||
(defun klammertext-add-literal-klammer (name)
|
||||
"Register NAME as a klammer whose literal content must not be interpreted.
|
||||
|
||||
Reference in New Issue
Block a user