aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorStephan Seitz <stephan.seitz@fau.de>2020-07-14 16:17:00 +0200
committerThomas Vigouroux <39092278+vigoux@users.noreply.github.com>2020-07-14 18:31:34 +0200
commitc42c38a8346dd9edda96477b774d3e086cd73650 (patch)
treeecfaa7afd7ff889b9a8f77b07609873caed73501
parentFix highlight of usages after merging highlight_current_scope (diff)
downloadnvim-treesitter-c42c38a8346dd9edda96477b774d3e086cd73650.tar
nvim-treesitter-c42c38a8346dd9edda96477b774d3e086cd73650.tar.gz
nvim-treesitter-c42c38a8346dd9edda96477b774d3e086cd73650.tar.bz2
nvim-treesitter-c42c38a8346dd9edda96477b774d3e086cd73650.tar.lz
nvim-treesitter-c42c38a8346dd9edda96477b774d3e086cd73650.tar.xz
nvim-treesitter-c42c38a8346dd9edda96477b774d3e086cd73650.tar.zst
nvim-treesitter-c42c38a8346dd9edda96477b774d3e086cd73650.zip
Add workflow for checking query files
-rw-r--r--.github/workflows/check_query_files.yml30
-rwxr-xr-xscripts/check-queries.lua25
2 files changed, 55 insertions, 0 deletions
diff --git a/.github/workflows/check_query_files.yml b/.github/workflows/check_query_files.yml
new file mode 100644
index 000000000..45019dab6
--- /dev/null
+++ b/.github/workflows/check_query_files.yml
@@ -0,0 +1,30 @@
+name: Check loading of syntax files
+
+on: [push, pull_request]
+
+jobs:
+ luacheck:
+ name: Check Query Files
+ runs-on: ubuntu-latest
+ steps:
+ - uses: actions/checkout@v1
+
+ - name: Prepare
+ run: |
+ sudo apt-get update
+ sudo add-apt-repository universe
+ wget https://github.com/neovim/neovim/releases/download/nightly/nvim.appimage
+ chmod u+x nvim.appimage
+ mkdir -p ~/.local/share/nvim/site/pack/nvim-treesitter/start
+ ln -s $(pwd) ~/.local/share/nvim/site/pack/nvim-treesitter/start
+
+ - name: Compile parsers
+ run: ./nvim.appimage --headless -c "TSInstallSync all" -c "q"
+
+ - name: Check query files
+ run: ./nvim.appimage --headless -c "luafile ./scripts/check-queries.lua" -c "q"
+
+ - uses: actions/upload-artifact@v2
+ with:
+ name: parsers
+ path: parser/*
diff --git a/scripts/check-queries.lua b/scripts/check-queries.lua
new file mode 100755
index 000000000..c5baf6f24
--- /dev/null
+++ b/scripts/check-queries.lua
@@ -0,0 +1,25 @@
+-- Execute as `nvim --headless -c "luafile ./scripts/check-queries.lua"`
+local function do_check()
+ local parsers = require 'nvim-treesitter.parsers'.available_parsers()
+ local queries = require 'nvim-treesitter.query'
+ local query_types = {'highlights', 'locals'}
+
+ for _, lang in pairs(parsers) do
+ for _, query_type in pairs(query_types) do
+ print('Checking '..lang..' '..query_type)
+ queries.get_query(lang, query_type)
+ end
+ end
+end
+
+
+local ok, err = pcall(do_check)
+if ok then
+ print('Check successful!\n')
+ vim.cmd('q')
+else
+ print('Check failed:')
+ print(err)
+ print('\n')
+ vim.cmd('cq')
+end