| Age | Commit message (Collapse) | Author |
|
|
|
|
|
- Don't load everything at startup
- Don't define an autocomand for each module and for each supported lang
(this creates nxm autocomand!)
|
|
|
|
The first function is faster and more common.
|
|
Fixes https://github.com/nvim-treesitter/nvim-treesitter/issues/396
|
|
|
|
|
|
This prevents a really weird bug were the following function call (after
loading the activated modules) could activate `highlight_current_scope`
```lua
require "nvim-treesitter.configs".setup(
{
highlight = {
enable = false, -- false will disable the whole extension
disable = {"html", "lua"} -- list of language that will be disabled
},
refactor = {
highlight_current_scope = {
enable = false,
inverse_highlighting = true,
disable = {"python", "markdown"}
},
highlight_definitions = {
enable = true,
disable = {"markdown"}
},
},
ensure_installed = "all",
disable = {"markdown"}, -- list of language that will be disabled
}
)
```
|
|
This might be safer for the case that attach/detach are not inverse to
each other. Disabled modules shouldn't ever be activated.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Abuse a bit of tbl_extend and tbl_deep_extend.
We might want to continue this effort, and simplify this part of the
plugin.
Fixes #178
|
|
|
|
|
|
|
|
|
|
|
|
- add sync method for installing using `system`
- remove `descriptions` in command configs
- use install(lang) in ensure_installed and make it compatible
|
|
|
|
|
|
|
|
|
|
Enables the use of multiple filetypes for one parser.
|
|
|
|
- move parser list in `parsers.lua`
- most `ft` variable where changed to `lang`, `ft` is only used on
autocmd binding, and lang is used for everything else. Functions have
been defined to make the switch between `ft` and `lang`
|
|
|
|
- remove buf_state and related code
- add get_node_at_cursor()
- better incremental selection (code is localized)
|
|
This might be interesting for injected highlighting
|
|
- add `exposed_state` to expose 'current_node' and 'cursor_pos'
for a current buffer to the user.
- add `get_buf_state` and `get_node_api` for users.
- add documentation about api functions.
- remove `node_movement` module which should be done in user side.
|
|
features:
- node_movement is moving between scopes.
- add selection initialization from normal mode
- add a decremental selection
improvements:
- attach to buffer to run tree parsing on change
- run state update on CursorMoved
- the buffer state is:
```
{
cursor_pos = { row=row, col=col },
current_node = node_under_cursor,
selection = {
range = nil, -- activates when starting a selection
nodes = {} -- filling up when starting an incremental selection
},
parser = parser, -- parser for current buffer
}
```
- refacto all the modules reliant on parsing the tree, update the current nodes, get the current nodes...
fixes:
- fix has_parser to look for .so libraries
- fix should select the whole file when selection root in selection
|
|
|
|
As suggested in #37, rename the textobj module to incremental_selection.
Also adds a utility function to get the config of a module.
|
|
Add some more community parsers
|
|
The haskell one really takes long to compile
|
|
|
|
|
|
|
|
|
|
- You should now get the configs through functions
- Configs for languages are now inside a local object called parsers
- You can get the parser installation configurations with `get_parser_configs`
- A new object has been initialized inside configs to specify module config (called config).
- Provide functions to enable/disable a module on one buffer
- Provide functions to enable/disable a module on all buffers, and if filetype is
specified, for specific filetype
- Provide function to determine if module is activated for a specified filetype
|
|
- configs.lua holds the `repositories` data
- install health moved to health.lua
- plugins loads _root.setup() on startup
- install and list command are available through vim
> use them with `:TSInstall lang` and `:TSInstallInfo`
|