mirror of
https://github.com/nvim-treesitter/nvim-treesitter.git
synced 2026-07-01 11:06:54 -04:00
feat!: drop makefile support, norg parser
Norg install_info and queries are maintained by neorg. All other parsers are compatible with C++11, so fix that as standard. (Can be bumped if all supported platforms support C++14.) Remove Makefile support, as it's no longer needed.
This commit is contained in:
parent
c5152f3e83
commit
f0a984347c
7 changed files with 3 additions and 81 deletions
|
|
@ -159,6 +159,7 @@ If Neovim does not detect your language's filetype by default, you can use [Neov
|
|||
You can also skip step 2 and use `:TSInstallFromGrammar zimbu` to install directly from a `grammar.js` in the top-level directory specified by `url`.
|
||||
Once the parser is installed, you can update it (from the latest revision of the `main` branch if `url` is a Github repository) with `:TSUpdate zimbu`.
|
||||
|
||||
**Note:** Parsers using external scanner need to be written in C. C++ scanners are no longer supported.
|
||||
|
||||
## Adding queries
|
||||
|
||||
|
|
|
|||
|
|
@ -168,7 +168,6 @@ jsx (queries only)[^jsx] | | `HFIJ ` | | | @steelsojka
|
|||
[nim_format_string](https://github.com/aMOPel/tree-sitter-nim-format-string) | community | `H J ` | | | @aMOPel
|
||||
[ninja](https://github.com/alemuller/tree-sitter-ninja) | | `HFI ` | | | @alemuller
|
||||
[nix](https://github.com/cstrahan/tree-sitter-nix) | | `HF JL` | | | @leo60228
|
||||
[norg](https://github.com/nvim-neorg/tree-sitter-norg) | unstable | ` ` | | | @JoeyGrajciar, @vhyrro
|
||||
[nqc](https://github.com/amaanq/tree-sitter-nqc) | stable | `HFIJL` | | | @amaanq
|
||||
[objc](https://github.com/amaanq/tree-sitter-objc) | | `HFIJL` | | | @amaanq
|
||||
[objdump](https://github.com/ColinKennedy/tree-sitter-objdump) | community | `H J ` | | | @ColinKennedy
|
||||
|
|
|
|||
1
TODO.md
1
TODO.md
|
|
@ -7,7 +7,6 @@ This document lists the planned and finished changes in this rewrite towards [Nv
|
|||
- [ ] **`query_predicates.lua`:** upstream/remove
|
||||
- [ ] **`parsers.lua`:** assign tiers
|
||||
- [ ] **`parsers.lua`:** modularize?
|
||||
- [ ] **`install.lua`:** drop norg (and makefile); document c++11 requirement
|
||||
- [ ] **`locals.lua`:** move to `nvim-treesitter-refactor`?
|
||||
- [ ] **update-lockfile:** allow specifying version in addition to commit hash (for Tier 1)
|
||||
- [ ] **update-lockfile:** one commit per parser/tier?
|
||||
|
|
|
|||
|
|
@ -527,9 +527,6 @@
|
|||
"nix": {
|
||||
"revision": "cfc53fd287d23ab7281440a8526c73542984669b"
|
||||
},
|
||||
"norg": {
|
||||
"revision": "d89d95af13d409f30a6c7676387bde311ec4a2c8"
|
||||
},
|
||||
"nqc": {
|
||||
"revision": "14e6da1627aaef21d2b2aa0c37d04269766dcc1d"
|
||||
},
|
||||
|
|
|
|||
|
|
@ -391,19 +391,8 @@ end
|
|||
---@param compile_location string
|
||||
---@return SystemCompleted
|
||||
local function do_compile(repo, cc, compile_location)
|
||||
local make = M.select_executable({ 'gmake', 'make' })
|
||||
|
||||
local cmd --- @type string[]
|
||||
if cc:find('cl$') or cc:find('cl.exe$') or not repo.use_makefile or iswin or not make then
|
||||
local args = vim.tbl_flatten(select_compiler_args(repo, cc))
|
||||
cmd = vim.list_extend({ cc }, args)
|
||||
else
|
||||
cmd = {
|
||||
make,
|
||||
'--makefile=' .. M.get_package_path('scripts', 'compile_parsers.makefile'),
|
||||
'CC=' .. cc,
|
||||
}
|
||||
end
|
||||
local args = vim.tbl_flatten(select_compiler_args(repo, cc))
|
||||
local cmd = vim.list_extend({ cc }, args)
|
||||
|
||||
return system(cmd, { cwd = compile_location })
|
||||
end
|
||||
|
|
|
|||
|
|
@ -6,7 +6,6 @@
|
|||
---@field generate_requires_npm boolean|nil
|
||||
---@field requires_generate_from_grammar boolean|nil
|
||||
---@field location string|nil
|
||||
---@field use_makefile boolean|nil
|
||||
|
||||
---@class ParserInfo
|
||||
---@field install_info InstallInfo
|
||||
|
|
@ -1583,16 +1582,6 @@ M.configs = {
|
|||
maintainers = { '@leo60228' },
|
||||
},
|
||||
|
||||
norg = {
|
||||
install_info = {
|
||||
url = 'https://github.com/nvim-neorg/tree-sitter-norg',
|
||||
files = { 'src/parser.c', 'src/scanner.cc' },
|
||||
use_makefile = true,
|
||||
},
|
||||
maintainers = { '@JoeyGrajciar', '@vhyrro' },
|
||||
tier = 4,
|
||||
},
|
||||
|
||||
nqc = {
|
||||
install_info = {
|
||||
url = 'https://github.com/amaanq/tree-sitter-nqc',
|
||||
|
|
|
|||
|
|
@ -1,52 +0,0 @@
|
|||
CFLAGS ?= -Os -std=c99 -fPIC
|
||||
CXX_STANDARD ?= c++14
|
||||
CXXFLAGS ?= -Os -std=$(CXX_STANDARD) -fPIC
|
||||
LDFLAGS ?=
|
||||
SRC_DIR ?= ./src
|
||||
DEST_DIR ?= ./dest
|
||||
|
||||
ifeq ($(OS),Windows_NT)
|
||||
SHELL := powershell.exe
|
||||
.SHELLFLAGS := -NoProfile -command
|
||||
CP := Copy-Item -Recurse -ErrorAction SilentlyContinue
|
||||
MKDIR := New-Item -ItemType directory -ErrorAction SilentlyContinue
|
||||
TARGET := parser.dll
|
||||
rmf = Write-Output $(1) | foreach { if (Test-Path $$_) { Remove-Item -Force } }
|
||||
else
|
||||
CP := cp
|
||||
MKDIR := mkdir -p
|
||||
TARGET := parser.so
|
||||
rmf = rm -rf $(1)
|
||||
endif
|
||||
|
||||
ifneq ($(wildcard $(SRC_DIR)/*.cc),)
|
||||
LDFLAGS += -lstdc++
|
||||
endif
|
||||
|
||||
OBJECTS := parser.o
|
||||
|
||||
ifneq ($(wildcard $(SRC_DIR)/scanner.*),)
|
||||
OBJECTS += scanner.o
|
||||
endif
|
||||
|
||||
all: $(TARGET)
|
||||
|
||||
$(TARGET): $(OBJECTS)
|
||||
$(CC) $(OBJECTS) -o $(TARGET) -shared $(LDFLAGS)
|
||||
|
||||
%.o: $(SRC_DIR)/%.c
|
||||
$(CC) -c $(CFLAGS) -I$(SRC_DIR) -o $@ $<
|
||||
|
||||
%.o: $(SRC_DIR)/%.cc
|
||||
$(CC) -c $(CXXFLAGS) -I$(SRC_DIR) -o $@ $<
|
||||
|
||||
clean:
|
||||
$(call rmf,$(TARGET) $(OBJECTS))
|
||||
|
||||
$(DEST_DIR):
|
||||
@$(MKDIR) $(DEST_DIR)
|
||||
|
||||
install: $(TARGET) $(DEST_DIR)
|
||||
$(CP) $(TARGET) $(DEST_DIR)/
|
||||
|
||||
.PHONY: clean
|
||||
Loading…
Add table
Add a link
Reference in a new issue