name: CI on: push: branches: [main] pull_request: branches: [main] jobs: editor-tests: name: editor tests runs-on: ubuntu-latest timeout-minutes: 15 steps: - uses: actions/checkout@v4 - name: install Neovim + Vim run: | set -euo pipefail # Test the minimum supported Neovim version (0.11.0) so we # catch API regressions at the bottom of the supported range. NVIM_VER=v0.11.0 curl -fsSL -o /tmp/nvim.tar.gz \ "https://github.com/neovim/neovim/releases/download/${NVIM_VER}/nvim-linux-x86_64.tar.gz" sudo tar -xzf /tmp/nvim.tar.gz -C /opt sudo ln -sf /opt/nvim-linux-x86_64/bin/nvim /usr/local/bin/nvim nvim --version | head -1 sudo apt-get update -qq sudo apt-get install -y --no-install-recommends vim vim --version | head -1 - name: install Neovim (latest) run: | set -euo pipefail curl -fsSL -o /tmp/nvim.tar.gz \ "https://github.com/neovim/neovim/releases/latest/download/nvim-linux-x86_64.tar.gz" sudo tar -xzf /tmp/nvim.tar.gz -C /opt sudo ln -sf /opt/nvim-linux-x86_64/bin/nvim /usr/local/bin/nvim - name: run Neovim keymap harness run: ./development/tests/test-keymaps.sh - name: run Vim keymap harness run: ./development/tests/test-keymaps-vim.sh - name: run Neovim config parity harness run: ./development/tests/test-config.sh - name: run Vim config parity harness run: ./development/tests/test-config-vim.sh - name: run Neovim calendar integration harness run: ./development/tests/test-calendar.sh - name: run Vim calendar integration harness run: ./development/tests/test-calendar-vim.sh - name: run Vim vars-shim harness run: ./development/tests/test-vars-vim.sh - name: run Vim vimwiki-config compat harness run: ./development/tests/test-vimwiki-compat-vim.sh - name: run Neovim global-shorthand harness run: ./development/tests/test-global-shorthand.sh - name: run Vim coc-registration harness run: ./development/tests/test-coc-register-vim.sh