-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathLSP-pyvoice.sublime-settings
156 lines (156 loc) · 8.09 KB
/
LSP-pyvoice.sublime-settings
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
{
// the command that actually launches the server process
// leave this as is to use the automatically installed
// pyvoice language server
"command": [
"$server_path"
],
// the python interpreter to use for installing and running
// the pyvoice language server. it should be 3.8 and above
// pypy may also work. If null, the plug-in will try to
// automatically pick a suitable interpreter
"python_binary": null,
// environment variables to set when running the language server
"env": {},
// set the log level for the CLIENT SIDE code of the plugin
// for example these will produce logs concerning
// - the interprocess communication with the programming
// by voice framework
// - when the plug-in chooses to synchronize spoken hints
// by sending a request to the language server and
// forrewarding them to the programming by voice system
// etc..
// it does not affect the level of the logs
// that the language server produces itself like
// - any errors detected during semantic analysis
// - metadata about the hints that it generates
// etc..
"log_level": "warning",
// selectors to match the files that the language server
// is responsible for
"selector": "source.python",
// a set of settings/config that will be sent to the language server
// via workspace/didChangeConfiguration notification
// or retrieved by the workspace/configuration server side request.
// these allow you to customize how pyvoice processes each of your projects
"settings": {
// Project settings used for configuring jedi Project
// The base path where your python project is located.
// Like all paths in this settings file it can be either
// absolute or relative to the path of the sublime project.
// By default, it resumed to be the same folder that you have open
// in the sublime window, but if your pipe and project is part
// of a larger repository ,you should set this to the subdirectory
// containing your python code.for example:
// "project.path": "backend"
"project.path": ".",
// The path to the virtual environment for this project
// again either absolute or relative to the sublime folder.
// (NOT the project.path setting above)
//
// Furthermore, it could point either to the root of that environment,
// or the python binary inside that environment
// - "project.environmentPath": ".venv"
// - "project.environmentPath": ".venv/bin/python"
// - "project.environmentPath": ".venv\\Scripts\\python.exe"
//
//
// WARNING
//
// while jedi will not execute python code from your code base
// it WILL execute the python binary of the associated environment!
// There are automated checks in place to guard against binaries
// that could for example have been injected by an attacker inside
// vcs controlled files. You can find more about this mechanism in
// https://jedi.readthedocs.io/en/latest/_modules/jedi/api/environment.html
// under the _is_safe function.
//
// However, it is still a good idea to only point this setting
// to environments that you trust.
"project.environmentPath": null,
// A list of paths to override the sys path if needed.
// Leave this null to generate sys.path from the environment.
// WARNING: This will COMPLETELY override the sys.path
// generated from the environment.
"project.sysPath": null,
// Adds these paths at the end of the sys path.
"project.addedSysPath": [],
// If enabled (default), adds paths from local directories.
// Otherwise, you will have to rely on your packages being properly configured on the sys.path.
"project.smartSysPath": true,
// Hints.Imports settings
// Enable or disable the generation of stdlib imports.
"hints.imports.stdlib.enabled": true,
// Enable or disable the generation of third-party imports.
// Pyvoice will try to automatically discover the dependencies
// of your project and is going
// to generate hints for their modules. In order to do so,pyvoice
// will try:
//
// - pep621 dependencies in pyproject.toml
// - poetry dependencies in pyproject.toml
// - options.install_requires in setup.cfg
// - traditional requirements.txt
//
// NOTE: By default hints would be generated ONLY for your top level dependencies
// aka distributions that you directly depend on, not transiet dependencies.
"hints.imports.thirdParty.enabled": true,
// A list of third-party distributions to include modules from.
"hints.imports.thirdParty.includeDists": [],
// A list of third-party distributions to exclude.
"hints.imports.thirdParty.excludeDists": [],
// Enable or disable the generation of project imports.
// This generator is going to scan your project folders
// recursively for pure python modules and generate hints for them.
// This is performed in a manner somewhat similar to setuptools
// - if the project follows a source layout, the src/ folder would be scanned
// - if the projects follow flat layout, hints would be generated
// for top level modules and recursively for top level packages
// that match the filters used by setuptools.discover
// - the explicit layout, where user maps in their pyproject.toml
// a set of packages/module names to folders containg their respective
// respective code is not supported to yet
"hints.imports.project.enabled": true,
// Enable or disable the generation of import hints for symbols
// So far, all of the imports hints generators are targeting modules
// However, there are cases where symbols like functions or classes
// that are used so frequently in your project
// that you want to be able to import them in a single step
// and without having to speak the name of the containing module
//
// For example you might want to be able to speak
// `import optional`
// in order to insert
// `from typing import Optional`
//
// The explicit symbols generator allows you to define a
// list of modules that you want to generate hints for their symbols
"hints.imports.explicitSymbols.enabled": true,
// A list of modules to generate hints hints for their defined symbols.
"hints.imports.explicitSymbols.modules": [
"typing"
],
// Hints.Expressions settings
// Enable or disable the generation of hints hints for local scope.
"hints.expressions.locals.enabled": true,
// Hints from param names of the signatures of local scope variables.
"hints.expressions.locals.signature": true,
// Enable or disable the generation of hints hints for non-local scope.
"hints.expressions.nonlocals.enabled": true,
// Hints from param names of the signatures of non-local scope variables.
"hints.expressions.nonlocals.signature": true,
// Enable or disable the generation of hints hints for global scope.
"hints.expressions.globals.enabled": true,
// Hints from param names of the signatures of global scope variables.
"hints.expressions.globals.signature": true,
// Enable or disable the generation of hints hints for built-in scope.
"hints.expressions.builtins.enabled": true,
// Hints from param names of the signatures of built-in scope variables.
"hints.expressions.builtins.signature": true,
// An upper bound on the number of expressions to generate.
"hints.expressions.limit": 2000,
// Logging settings
// Set the logging level for the pyvoice executable.
"logging.level": "INFO"
}
}