From 399f8a41f7848ed3d259eaf440386aeff29ee1f8 Mon Sep 17 00:00:00 2001 From: avner Date: Sun, 17 Oct 2021 09:37:14 +0300 Subject: [PATCH] added a readme for project configuration .tabnine file --- TabNineProjectConfigurations.md | 60 +++++++++++++++++++++++++++++++++ 1 file changed, 60 insertions(+) create mode 100644 TabNineProjectConfigurations.md diff --git a/TabNineProjectConfigurations.md b/TabNineProjectConfigurations.md new file mode 100644 index 0000000..c710b5d --- /dev/null +++ b/TabNineProjectConfigurations.md @@ -0,0 +1,60 @@ +# Project Configuration + +# `.tabnine` file + +Projects are folders containing a VCS root (such as a `.git` directory or directories containing `.tabnine_root`). + +Projects containing a file called `.tabnine` in their root can have special configurations applied to them. + +## Structure + +``` +project-root/ +├── .git +└── .tabnine <<<<< this configuration file +└── ... +``` + + +## .tabnine format +The `.tabnine` file is formatted using `JSON` containing the following fields: + +### Fields + +| field | type | default value (if not set) | description | Notes | +|-----------------------|------------|--------------------------------|--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|------------------------------------------------------------------------------------------------------| +| `teamLearningEnabled` | `boolean` | `true` | relevant for users which are part of a team and want to disable team training on this project. `true` - team learning is enabled for this project `false` team learning is disabled for this project | | +| `teamLearningIgnore` | `[string]` | `[]` | an `Array` of `String` file path masks to ignore for team learning | **Note** : Entries are identical in format to those you would have as part of a `.gitignore` file. | +| | | | | | + +### Examples +*ignore everything in my secrets and passwords files* +``` +{ + "teamLearningEnabled": true, + "teamLearningIgnore" : ["secrets.txt", "passwords.txt"] +} +``` +*ignore everything under tests folder* +(notice that `teamLearningEnabled` is implicitly `true` since field is omitted) + +``` +{ + "teamLearningIgnore" : ["src/tests", "build/tests"] +} +``` + +*don't collect data for this project* +``` +{ + "teamLearningEnabled" : false +} +``` +**equivalent to a catch all mask** +``` +{ + "teamLearningEnabled" : true, + "teamLearningIgnore" : ["*"] + +} +``` \ No newline at end of file