TuffPython for Visual Studio Code
TuffPython adds editor support for .tpy source files written with French
(fr), Spanish (es), Romanized Hindi (hi), Romanized Marathi (mr), or
Romanized Mandarin Chinese / Pinyin (zh) syntax.
Install
After publication, search for TuffPython in the VS Code Extensions view,
or install the Marketplace listing identified by its publisher and extension
name. For a local .vsix, run Extensions: Install from VSIX... from the
Command Palette or use code --install-extension <path-to-vsix>.
The extension only provides editor features. Install the TuffPython compiler
separately if you want to transpile .tpy files.
Features
- Syntax highlighting for translated Python keywords, literals, built-ins,
declarations, strings, comments, operators, numbers, and
{actual_name}
aliases.
- IntelliSense completions for each language's keywords and built-ins, plus
optional English Python spellings, snippets, and local functions/classes.
- Hover translations and Python built-in signature help for common callables.
- Go to Definition, Find All References, and Outline for local functions and
classes.
- Diagnostics and quick fixes for missing/unsupported
#! directives and
filename/directive mismatches.
- Language status indicator and a picker for generic
.tpy files without a
recognized suffix or directive.
Select a language
The extension selects IntelliSense from the language code immediately before
.tpy in the filename:
| Filename |
Editor language |
<filename>.fr.tpy |
French |
<filename>.hi.tpy |
Romanized Hindi |
<filename>.es.tpy |
Spanish |
<filename>.mr.tpy |
Romanized Marathi |
<filename>.zh.tpy |
Romanized Mandarin Chinese |
For generic names such as <filename>.tpy, a leading directive selects the
editor language. Blank lines and ordinary comments may come before the directive.
The TuffPython: Select Source Language command can set editor assistance
for an untagged file.
Filename suffixes affect the editor only. Compilation still uses the
source directive, so compiled files need a valid directive such as #!fr,
#!es, #!hi, #!mr, or #!zh. If the filename and directive disagree,
the editor follows the filename, reports the mismatch, and offers a quick
fix; the compiler follows #!.
Documentation
Settings
tuffpython.showEnglishCompletions (default true): include Python
spellings alongside localized completions.
tuffpython.warnOnFilenameDirectiveMismatch (default true): report when
the filename's editor language differs from the compiler directive.
Scope and limitations
This extension provides editor assistance; it is not a language server and
does not transpile or execute code. Syntax highlighting covers all supported
vocabularies in one grammar; completion, hover, and snippets use the language
detected for the current document. The TuffPython compiler and then Python
remain responsible for generated-code syntax and runtime diagnostics.
The VS Code extension is licensed under GNU GPL-3.0-only. That license applies
to the extension, not to the separate compiler.