Web3 Development

Tact Editing Support for Vim and Neovim on Windows

Free, MIT-licensed Vim and Neovim plugin with Tact syntax highlighting, indentation and basic linting. Deprecated, so read the setup and safety notes.

Free Open source Windows: Yes v1.6.7 Updated 8 Jul 2026
9 min read Last update 8 Jul 2026 github.com/tact-lang/tact.vim

Tact VIM is a free, open-source plugin for Vim 8 and later and for Neovim. It adds syntax highlighting, grammar-aware completion and other editing support for Tact, the language used to write smart contracts for the TON blockchain. It is aimed at developers who already write code in a terminal-based editor and want Tact files to behave properly on Windows as well as macOS.

Before you install it, know that the project is deprecated. Its maintainers point to newer tools for TON contract development, so this plugin is best viewed as a legacy option for existing workflows. The code is released under the MIT license, and the most recent code update landed in July 2026, so the setup notes below still apply to the current release.

02

What Tact Is and Why Editor Support Matters

Tact is a programming language designed for writing smart contracts on the TON blockchain. Its code looks different from the general-purpose languages many developers learn first, with its own keywords, declarations and block structure. A plain text editor treats such files as ordinary text, so mistakes can hide in plain sight until a build or deployment fails.

Editor support closes part of that gap. Syntax highlighting helps you spot a misspelled keyword or an unexpected color change that suggests a broken construct. Indentation rules make nested blocks easier to read, which matters when a contract grows over several hundred lines. Small details like these reduce the number of times you need to scroll back and recheck what you wrote.

Tact VIM focuses on that editing layer. It does not replace the compiler or a test suite, but it makes the act of writing Tact code in Vim or Neovim far less error-prone.

03

Who Tact VIM Suits Best

The plugin fits developers who already live in Vim or Neovim and prefer keyboard-driven editing. If your daily workflow involves moving between terminal sessions, a remote server and a single editor window, adding Tact support to that setup is usually less disruptive than switching to a graphical IDE.

It is also useful for maintainers of existing Tact projects. If you inherited a contract codebase and your team uses Vim, the plugin lets everyone read the same highlighting and indentation without changing editors. Students exploring TON development in a terminal can benefit from the same basics.

People who want a full environment with debugging, visual deployment tools or built-in project templates should look elsewhere. The features listed here concentrate on editing. For testing and deployment, pair your editor with separate command-line or graphical tools, and treat the plugin as one part of a larger workflow.

04

How Editor Plugins Like This One Work

Vim and Neovim load plugins from a runtime path, and a plugin typically ships small files that tell the editor how to recognize a file type, color its syntax, and set indentation rules. When you open a file with the matching extension, these files activate automatically. You rarely need to think about them once the plugin is installed.

Plugin managers handle the installation and updating part. Lazy.nvim, which the project's setup example uses, reads a list of plugins from your Lua configuration and fetches them from their repositories. It can also load plugins only when needed, which keeps startup fast when you do not edit Tact files in every session.

Understanding this model helps when something goes wrong. If highlighting disappears, the usual causes are a plugin that failed to load, a configuration entry with a typo, or an editor version older than the plugin expects. Checking the plugin manager's status view is often the quickest way to find the problem.

05

Key features

Syntax highlighting based on the language grammar

Colors in Tact files follow the grammar definition that describes the language in its specification, written as an Ohm grammar file. Keywords, types and literals stand out in a way that stays close to the official language rules, so the highlighting becomes a reliable visual guide while you edit contracts.

Indentation and comment support

The plugin adjusts indentation as you open nested blocks, and it understands both single-line and multi-line comments. You can comment out a section of a contract while keeping the surrounding structure readable, without fighting the editor over spacing or stray comment markers.

Abbreviations in INSERT mode

Short abbreviations expand into longer text while you type in INSERT mode. They save keystrokes on constructs you repeat often. Because they trigger only in INSERT mode, they stay out of the way of normal-mode navigation and commands.

Basic linting during completion

Linting runs automatically when omnicompletion is triggered, giving you a first pass at problems in your code. It is basic rather than exhaustive, so it catches simple slips. Unclosed braces, parentheses and names are the usual trouble spots, and keyword completion is a practical fallback when they cause errors.
06

How to install Tact VIM on Windows

  1. 1

    Check your editor version

    Install Vim 8 or later, or Neovim, from the official website or the project's GitHub Releases page. Download only from the official website, and if the publisher provides a SHA-256 checksum, compare it with your downloaded file before running the installer.

  2. 2

    Prepare lazy.nvim

    Tact VIM is loaded through lazy.nvim in the setup shown by the project. Open your Neovim configuration file at ~/AppData/Local/nvim/init.lua on Windows. If you do not yet use lazy.nvim, follow its own installation guide first, then return to this page.

  3. 3

    Add tact.vim to your plugin list

    Inside the table passed to require('lazy').setup({ ... }), add an entry for tact.vim alongside your other plugins. Save the file, restart Neovim, and let the plugin manager fetch the plugin. Check its status view if the plugin does not appear.

  4. Add a Tact language server (recommended)

    The project strongly recommends installing and configuring a Tact language server. The plugin works without one, but you will only get highlighting, indentation, abbreviations and basic linting. The language server adds richer editor intelligence once it is set up.

07

System requirements

  • Vim 8 or later, or Neovim
  • Windows, with a Neovim configuration file at ~/AppData/Local/nvim/init.lua
  • lazy.nvim, as used in the project's setup example
  • A Tact language server, strongly recommended rather than required
08

How to use Tact VIM

Once the plugin loads, you work with Tact files much as you would with any other buffer in Vim or Neovim. The steps below cover a typical editing session.

  1. Open a Tact source file in Neovim or Vim, for example with nvim contract.tact.
  2. Check that highlighting is active. Keywords and comments should appear in distinct colors. If nothing changes, run :Lazy in Neovim to confirm that tact.vim loaded.
  3. Type code normally. When you open a brace or start a block, indentation should adjust automatically, so review the structure as you go.
  4. Use INSERT mode abbreviations for patterns you write often. Practice a few of them early so that the expansions feel predictable.
  5. Trigger omnicompletion while typing a name, then read any lint messages it displays. Treat them as hints that point you toward a closer look at that spot.
  6. Close every brace, parenthesis and name as you write them. If completion becomes unreliable because of an unfinished construct, switch to keyword completion until the code is complete again.

After a session, run your usual build or test commands for the project. The plugin helps you write cleaner code, but it does not replace a full compiler check.

09

Pros & cons

Pros
  • Free and open source under the MIT license
  • Syntax highlighting based on the language grammar
  • Automatic indentation with support for single-line and multi-line comments
  • Insert-mode abbreviations speed up repetitive typing
  • Works in both Vim 8 and later and Neovim
  • Installs as a plain plugin entry rather than a separate application
Cons
  • The project is deprecated, so fixes and new features are unlikely
  • Linting is basic and does not replace a full compiler check
  • Unclosed braces, parentheses and names can make completion misleading
  • The full experience depends on a separately installed language server
  • Setup means editing a Lua configuration file, which may be unfamiliar on Windows
10

Is Tact VIM safe?

Tact VIM is deprecated, so treat it as a tool for existing workflows rather than a foundation for new long-term projects. Get the plugin from its official GitHub repository at github.com/tact-lang/tact.vim, and download only from the official website or repository. Before updating, check the latest version on the official website, since deprecated projects may stop receiving security fixes. Because the code is MIT-licensed, you can review it yourself if you want to see what runs in your editor. Avoid copies from unofficial mirrors or forum posts, because editor plugins run with your user permissions and could read project files. If your antivirus flags a downloaded component, investigate before ignoring the warning. Never paste a seed phrase or wallet secret into an editor or a third-party website.

  • Official source only. Download from github.com/tact-lang/tact.vim. Ignore ads and lookalike domains.
  • Check the SHA-256. Compare the installer hash with the value the developer publishes before running it.
  • Never share your seed phrase. No developer, support agent or website — including CryptApps — will ever ask for it.
11

Alternatives

Tact VIM is a plugin for a general-purpose text editor, while several other tools in this catalog are complete environments. Remix Desktop is an IDE built around Solidity, the language used for Ethereum-style contracts, so it bundles editing, compiling and deployment in one window. Visual Studio Code with Solidity extensions offers a graphical editor with a large extension ecosystem, though it targets Solidity rather than Tact. Foundry provides command-line build and test tools rather than an editor. Tact VIM does one job: making Tact source pleasant to edit in Vim or Neovim. If you want broader tooling, pair it with a language server or a separate toolchain. If you prefer keyboard-driven editing, it fits an existing Vim setup better than a full IDE.

12

Specifications

Price
Free
Type
Open source
License
MIT
Latest version
v1.6.7
Last update
8 Jul 2026
Windows support
Yes (Windows build or installer)
Source code
github.com/tact-lang/tact.vim
13

Frequently asked questions

Yes. Tact VIM is free and released under the MIT license, which allows use, modification and redistribution, including commercial use, as long as the license notice stays with the code. Because it runs inside Vim or Neovim, you do not need a separate paid editor. Your main costs are your time and any optional tools you choose to add, such as a language server.

Yes, the project lists Windows among its supported platforms, alongside macOS. On Windows you typically install it through Neovim with lazy.nvim, and the configuration file usually lives under AppData in your user profile. Follow the install steps on this page for the exact entry to add to your setup, then restart the editor so the plugin loads.

No, the project is deprecated. Its maintainers point to newer tools for TON contract development, so it should not be your first choice for new work. The most recent code update landed in July 2026. Existing setups can keep using it, but long-term projects should have a plan for moving to current tooling.

It is generally low risk when you get it from the official GitHub repository, since the code is open source and MIT-licensed. Most risk comes from copies obtained elsewhere. Install it through your plugin manager from the official source, and check the latest version before updating. Keep in mind that the project is deprecated, so security fixes may not arrive.

It includes basic linting that runs automatically when omnicompletion is triggered. It catches simple problems, but it does not replace a full compiler or a test run. Many errors come from unclosed braces, parentheses or names, so close them as you type. Treat lint messages as hints and confirm your contracts with your normal build tools before deployment.

No, the plugin loads and works without one. However, the project strongly recommends installing and configuring a Tact language server. Without it, you get syntax highlighting, indentation, abbreviations and basic linting, but not the richer editor intelligence a language server provides. The project's own example is a good starting point.

No. Tact VIM is written for Vim and Neovim, so it runs only inside those editors. If you prefer a graphical editor, Visual Studio Code with Solidity extensions is a different option in this catalog, although it targets Solidity rather than Tact. Choose the editor that matches your workflow, and keep Tact VIM for Vim-based sessions.

14

Verdict

Tact VIM for Windows is a sensible choice if you already work in Vim or Neovim and maintain Tact code that needs proper highlighting, indentation and basic linting. It is free, open source and MIT-licensed, and its setup through lazy.nvim is short. However, the project is deprecated, so it is not the right foundation for new projects. Use it for existing workflows, and check the official documentation at docs.tact-lang.org for current tooling options.

Download now