Frequently Asked Questions
- How do I set up semantic completion?
- Why do you say TabNine is "simple"?
- My project isn't a Git or Mercurial repository. How can I make TabNine index it?
- How do I disable automatic updates?
- I don't like the message in the autocomplete popup telling me that I can upgrade to index more files.
- Is there a risk that TabNine will leak my source code?
- Can I use TabNine on multiple machines?
- How does TabNine detect file encodings?
- How do I view copyright notices?
- When I try to open the config panel, it says it couldn't start a web browser.
- I purchased a one-time license in the past, but I see this is not offered anymore. What will happen to my license?
- What language is TabNine written in?
- Why is it called TabNine?
- What are the special commands that can be given to TabNine?
- What are the code editors officially supported by TabNine?
Why do you say TabNine is "simple"?
- TabNine works for all programming languages.
- TabNine does not require any configuration in order to work.
- TabNine does not require any external software (though it can integrate with it).
- Since TabNine does not parse your code, it will never stop working because of a mismatched bracket.
My project isn't a Git or Mercurial repository. How can I make TabNine index it?
Add a file named
.tabnine_root to the root of your project directory. TabNine respects
How do I disable automatic updates?
TabNine::disable_auto_update into your text editor. You should see an autocompletion suggestion confirming that automatic updates are disabled.
I don't like the message in the autocomplete popup telling me that I can upgrade to index more files.
You can disable it by typing
TabNine::hide_promotional_message. The popup only exists to ensure users are aware the paid version exists.
Is there a risk that TabNine will leak my source code?
By default, TabNine makes web requests only for the purposes of downloading updates and validating registration keys. In this case your code is not sent anywhere, even to TabNine servers.
You may opt in to TabNine Cloud, which allows you to use TabNine's servers for GPU-accelerated completions powered by a deep learning model. If sending code to a cloud service is not possible, we also offer a self-hosted option. Contact us at firstname.lastname@example.org.
Can I use TabNine on multiple machines?
Licenses are per-user, rather than per-machine, so you can use TabNine on as many computers and operating systems as you wish with your license.
How does TabNine detect file encodings?
All files are decoded as UTF-8. If a file is not valid UTF-8, it will not be indexed.
How do I view copyright notices?
You can view copyright notices by running the TabNine binary with the argument
When I try to open the config panel, it says it couldn't start a web browser.
This issue usually occurs when you are running TabNine on a machine without a GUI. The following options may help:
- Use port forwarding to view the config panel from your local machine. If your remote machine's address is email@example.com, and TabNine is listening on port 5555, the following command will do this:
ssh -L 5555:127.0.0.1:5555 firstname.lastname@example.org
You can then access the config panel by copying the URL printed by TabNine into your local web browser. Note that the string of random characters must be included, or else the config panel will hang with a "Loading..." message.
- Use a web browser that does not require a window manager to access the config panel from the remote machine.
- Copy a working config file from another machine. You can find the file location by typing TabNine::config_dir and adding
tabnine_config.jsonto the end of the path.
I purchased a one-time license in the past, but I see this is not offered anymore. What will happen to my license?
Your activated copy of TabNine will continue to work without any action required from you.
If you choose to upgrade to TabNine Professional in order to access the new deep learning features, you can apply the full price of your license as a discount to your subscription.
What language is TabNine written in?
TabNine is 14,000 lines of Rust.
In recognition of the fact that TabNine could not exist without the Rust ecosystem, TabNine's paid features are always enabled when completing Rust code.
Why is it called TabNine?
When using the Sublime Text client for TabNine, the keyboard shortcut to select the ninth suggestion is Tab+9.
Here are some other names which were duly considered:
- Say Yes to the Keypress (SYT²KP)
- Dieter the Autocompleter
What are the special commands that can be given to TabNine?
To enter any of these commands, simply type them into your text editor while TabNine is running.
TabNine::configopens the configuration panel.
TabNine::versiongives the current TabNine version.
TabNine::config_dirgives the directory where TabNine stores its configuration.
TabNine::activechecks whether TabNine has been activated.
TabNine::become_beta_testercauses you to receive beta releases of TabNine.
TabNine::disable_auto_updatedisables automatic updates, which are enabled by default.
TabNine::enable_auto_updateenables automatic updates.
TabNine::ignore_semanticcauses all semantic completion error messages to be ignored.
TabNine::unignore_semanticstops all semantic completion error messages from being ignored.
TabNine::semenables semantic completion for the current language.
TabNine::no_semdisables semantic completion for the current language.
What are the code editors officially supported by TabNine?
All editor support is implemented in open source plugins. The ones which are officially supported are:
There are also community developed plugins for the following platforms:
If you have or know of an open source plugin working with TabNine, let us know so we will add them to this list.