pseudocode-i18n-languageserver
| Resource | Link | Purpose |
|---|---|---|
| pseudocode-i18n-languageserver — repository | gitlab.com/rod2ik/pseudocode-i18n-languageserver | Shared Language Server Protocol implementation for Pseudocode editors and IDEs |
| pseudocode-i18n-languageserver — documentation | rod2ik.gitlab.io/pseudocode-i18n-languageserver | Installation, features and editor integration |
| pseudocode-i18n | gitlab.com/rod2ik/pseudocode-i18n | Parser, formatter, semantic analysis, i18n registry and editor-neutral semantic index |
| pygments-lexer-pseudocode-i18n | gitlab.com/rod2ik/pygments-lexer-pseudocode-i18n | Pygments highlighting generated from the same language vocabulary |
| mkdocs-pseudocode-i18n | gitlab.com/rod2ik/mkdocs-pseudocode-i18n | MkDocs rendering, MathJax and flowcharts |
| vscode-pseudocode-i18n | gitlab.com/rod2ik/vscode-pseudocode-i18n | VS Code integration, execution and live visualization |
Current version: 0.9.5.
Release history: pseudocode-i18n-languageserver changelog.
pseudocode-i18n-languageserver gives .pseudo and .algo files one reusable intelligence layer for open-source editors and educational IDEs. The server speaks the standard Language Server Protocol (LSP) over stdin/stdout and delegates the language itself to pseudocode-i18n.
Install it once:
python -m pip install 'pseudocode-i18n-languageserver>=0.9.5,<0.10'
On an externally managed Python installation, when you deliberately install into user/system packages:
python -m pip install --break-system-packages 'pseudocode-i18n-languageserver>=0.9.5,<0.10'
Check the command used by editors:
pseudo-lsp --version
You normally do not launch pseudo-lsp yourself. Kate, Neovim, Spyder or another LSP client starts it as a child process and communicates with it through stdin/stdout.
0.9.5 — complete shared editor intelligence
Version 0.9.5 exposes the coordinated editor contract through pseudo-lsp:
- multiple localized diagnostics from the recovering core linter, with exact source ranges;
- completion plus retained frontend snippets, signature help, document symbols, definitions, references, rename and formatting;
- hover documentation generated by the core for ordinary keywords and structural grammar fragments such as
Alors,fois,Jusqu'à ce queand every word of localized multi-word import aliases such asen tant que; - import operands remain symbols rather than documentation keywords, preventing false hover/help on names such as an imported
sqrt; - all 14 source languages receive the same behavior without maintaining language-specific tables in the server;
- project-aware standard/local module resolution and the strict type/operation diagnostics from the 0.9 core are preserved.
The server remains a thin LSP layer: source-language knowledge belongs to pseudocode-i18n, so VS Code, Thonny and other clients see the same diagnostics and help.
What 0.9.5 provides
The server exposes the same language intelligence for all 14 supported natural languages:
- diagnostics from the native
pseudocode-i18nparser and semantic linter, including multiple independent errors in one document, explicit type-contract mismatches and incompatible typed operations; - project-aware module diagnostics:
mathandrandomare standard, while existing local.pseudo/.algomodules are resolved from the document/project path; - i18n code completion and the existing structural snippets, using the normal language-resolution priority;
- completion for document symbols, localized built-ins, constants and types;
- pedagogical hover information for symbols, keywords, types and built-ins, with localized section labels and every accepted syntax synonym exposed;
- signature help;
- document symbols;
- go to definition;
- find references;
- prepare rename and rename;
- whole-document formatting;
.pseudoand.algoas equivalent source extensions.
The server does not maintain a second grammar. pseudocode-i18n remains the source of truth for parsing, language detection, configuration, formatting, diagnostics, snippets and semantic indexing.
Language and snippet resolution
A document uses the same precedence as the core:
- explicit
# language: xx/# lang: xxdirective; language:/lang:inpseudocode.config.yml;- automatic language detection;
fallback_language;- French as the final default.
This means typing a condition snippet in a French file proposes Si … Alors, while an English file proposes If … Then, without editor-specific copies of the snippet catalog.
Editor targets
| Editor / IDE | 0.9.5 path |
|---|---|
| Kate | Native generic LSP client; ready to configure. A generated KSyntaxHighlighting definition is included. |
Neovim (nvim) |
Native LSP client; ready to configure. A Lua configuration is included. |
| Spyder | Supports LSP servers for “Other languages”; configuration guide included. |
| Thonny 5 | thonny-pseudocode-i18n connects completion/snippets, hover, signature help, diagnostics, Ctrl+click navigation, rename and formatting to this server. |
| Mu Editor | Requires a Mu mode/editor adapter; the server side is ready. Mu remains an explicit project target. |
| Pyzo | Requires an editor adapter unless/until Pyzo exposes a generic LSP client; the server side is ready. |
| VS Code / Code - OSS | vscode-pseudocode-i18n now uses this server for completion/snippets, hover, navigation, rename, signatures, document symbols, formatting and diagnostics while keeping its richer execution/preview UX. |
See the Editors section of the documentation for exact configuration and current limitations.
Development
yarn setup
yarn bfc
yarn setup installs the current project and uses a sibling ../pseudocode-i18n checkout when present. yarn bfc is an alias for yarn build:full:check and performs version synchronization, generated integrations, linting, tests, a CLI smoke test, strict MkDocs documentation build and Python package build.
Useful commands:
yarn dev
yarn dev:lan
yarn test
yarn lint
yarn smoke
yarn zip
License
GNU General Public License version 3 or later (GPL-3.0-or-later).
Metadata
Release files for pseudocode-i18n-languageserver 0.9.5
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| pseudocode_i18n_languageserver-0.9.5.tar.gz | 46.6 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| pseudocode_i18n_languageserver-0.9.5-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 70.5 kB
Release files / pseudocode_i18n_languageserver-0.9.5.tar.gz
| Download URL | pseudocode_i18n_languageserver-0.9.5.tar.gz |
|---|---|
| Size | 46.6 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
da8a65b23f7098652c9063b24a0d6d5ad728031d215057de5cc7fdf7987814c1
|
|
BLAKE2b-256 checksum How to use checksums |
b320a8f3c0b4879aad95ce61148b4ff677716226b3b62d5541a4757e8a7fb379
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/7.0.0 CPython/3.13.15
|
Release files / pseudocode_i18n_languageserver-0.9.5-py3-none-any.whl
| Download URL | pseudocode_i18n_languageserver-0.9.5-py3-none-any.whl |
|---|---|
| Size | 23.9 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
f19b6e72d8451f195f8845d0d5cd3ed4828f9ae94f1de1ce54dbe92069ec56ac
|
|
BLAKE2b-256 checksum How to use checksums |
e13f686f482f9a1f32d3b6c07147967a3fac98bdc9e374f067ada0dbbea54fcc
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/7.0.0 CPython/3.13.15
|