From e9eab57948cec7a840879120c1a294046c2045f4 Mon Sep 17 00:00:00 2001 From: Alisue Date: Fri, 8 Nov 2024 20:30:29 +0900 Subject: [PATCH 1/3] Fix CI and upgrade supported Vim version --- .github/workflows/neovim.yml | 43 ++++++++++++++++++++++++++++++++++ .github/workflows/test.yml | 45 ------------------------------------ .github/workflows/vim.yml | 42 +++++++++++++++++++++++++++++++++ README.md | 4 ++-- 4 files changed, 87 insertions(+), 47 deletions(-) create mode 100644 .github/workflows/neovim.yml delete mode 100644 .github/workflows/test.yml create mode 100644 .github/workflows/vim.yml diff --git a/.github/workflows/neovim.yml b/.github/workflows/neovim.yml new file mode 100644 index 0000000..889e5c3 --- /dev/null +++ b/.github/workflows/neovim.yml @@ -0,0 +1,43 @@ +name: Neovim + +on: + push: + branches: + - main + pull_request: + workflow_dispatch: + +jobs: + build: + strategy: + fail-fast: false + matrix: + os: + - macos-latest + - windows-latest + - ubuntu-latest + version: + - stable + - v0.4.4 + runs-on: ${{ matrix.os }} + steps: + - uses: actions/checkout@v4 + - uses: actions/checkout@v4 + with: + repository: thinca/vim-themis + path: vim-themis + - uses: rhysd/action-setup-vim@v1 + id: nvim + with: + neovim: true + version: "${{ matrix.version }}" + - name: Run tests + env: + THEMIS_VIM: ${{ steps.nvim.outputs.executable }} + # XXX: + # Overwrite %TMP% to point a correct temp directory. + # Note that %TMP% only affects value of 'tempname()' in Windows. + # https://github.community/t5/GitHub-Actions/TEMP-is-broken-on-Windows/m-p/30432#M427 + TMP: 'C:\Users\runneradmin\AppData\Local\Temp' + run: | + ./vim-themis/bin/themis diff --git a/.github/workflows/test.yml b/.github/workflows/test.yml deleted file mode 100644 index e639655..0000000 --- a/.github/workflows/test.yml +++ /dev/null @@ -1,45 +0,0 @@ -name: test - -on: - push: - branches: - - master - pull_request: - branches: - - master - -jobs: - build: - strategy: - fail-fast: false - matrix: - os: - - macos-latest - - windows-latest - - ubuntu-latest - host: - - vim_type: Vim - version: head - - vim_type: Vim - version: v8.1.2424 - - vim_type: Neovim - version: head - - vim_type: Neovim - version: v0.4.3 - runs-on: ${{ matrix.os }} - steps: - - uses: actions/checkout@v3 - - uses: actions/checkout@v3 - with: - repository: thinca/vim-themis - path: vim-themis - - uses: thinca/action-setup-vim@v1 - id: vim - with: - vim_type: ${{ matrix.host.vim_type }} - vim_version: ${{ matrix.host.version }} - - name: Run tests - env: - THEMIS_VIM: ${{ steps.vim.outputs.executable }} - run: | - ./vim-themis/bin/themis diff --git a/.github/workflows/vim.yml b/.github/workflows/vim.yml new file mode 100644 index 0000000..9c4e934 --- /dev/null +++ b/.github/workflows/vim.yml @@ -0,0 +1,42 @@ +name: Vim + +on: + push: + branches: + - main + pull_request: + workflow_dispatch: + +jobs: + test: + strategy: + fail-fast: false + matrix: + os: + - macos-latest + - windows-latest + - ubuntu-latest + version: + - nightly + - v8.2.5136 # https://github.com/lambdalisue/vim-fern/issues/506 + runs-on: ${{ matrix.os }} + steps: + - uses: actions/checkout@v4 + - uses: actions/checkout@v4 + with: + repository: thinca/vim-themis + path: vim-themis + - uses: rhysd/action-setup-vim@v1 + id: vim + with: + version: "${{ matrix.version }}" + - name: Run tests + env: + THEMIS_VIM: ${{ steps.vim.outputs.executable }} + # XXX: + # Overwrite %TMP% to point a correct temp directory. + # Note that %TMP% only affects value of 'tempname()' in Windows. + # https://github.community/t5/GitHub-Actions/TEMP-is-broken-on-Windows/m-p/30432#M427 + TMP: 'C:\Users\runneradmin\AppData\Local\Temp' + run: | + ./vim-themis/bin/themis diff --git a/README.md b/README.md index 6d1bbac..0181fda 100644 --- a/README.md +++ b/README.md @@ -1,7 +1,7 @@ # 👓 nerdfont.vim -![Support Vim 8.1 or above](https://img.shields.io/badge/support-Vim%208.1%20or%20above-yellowgreen.svg) -![Support Neovim 0.4 or above](https://img.shields.io/badge/support-Neovim%200.4%20or%20above-yellowgreen.svg) +![Support Vim 8.2.5136 or above](https://img.shields.io/badge/support-Vim%208.2.5136%20or%20above-yellowgreen.svg) +![Support Neovim 0.4.4 or above](https://img.shields.io/badge/support-Neovim%200.4.4%20or%20above-yellowgreen.svg) [![MIT License](https://img.shields.io/badge/license-MIT-blue.svg)](LICENSE) [![Doc](https://img.shields.io/badge/doc-%3Ah%20nerdfont-orange.svg)](doc/nerdfont.txt) From fb88e1422b4e228e561a925879122ca726706c6a Mon Sep 17 00:00:00 2001 From: Alisue Date: Sat, 9 Nov 2024 06:03:29 +0900 Subject: [PATCH 2/3] Fix behavior on Windows --- autoload/nerdfont.vim | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/autoload/nerdfont.vim b/autoload/nerdfont.vim index ddb10b6..fb0ad5a 100644 --- a/autoload/nerdfont.vim +++ b/autoload/nerdfont.vim @@ -1,8 +1,9 @@ let s:path = fnamemodify(resolve(expand(':p')), ':h:h') -let s:json_dir = s:path . '/assets/json' +let s:sep = has('win32') ? '\' : '/' +let s:json_dir = join([s:path, 'assets', 'json'], s:sep) function! nerdfont#get_json(json_name) abort - let l:json = s:json_dir . '/' . a:json_name . '.json' + let l:json = join([s:json_dir, a:json_name . '.json'], s:sep) let l:result = json_decode(join(readfile(l:json), '')) call s:autofix(l:result) return l:result From 0b21e3f9b0926281a49a7ed8de12599dada90510 Mon Sep 17 00:00:00 2001 From: Alisue Date: Sat, 9 Nov 2024 06:55:47 +0900 Subject: [PATCH 3/3] Avoid circular dependency in nerdfont#find --- autoload/nerdfont.vim | 8 +++----- 1 file changed, 3 insertions(+), 5 deletions(-) diff --git a/autoload/nerdfont.vim b/autoload/nerdfont.vim index fb0ad5a..81d3000 100644 --- a/autoload/nerdfont.vim +++ b/autoload/nerdfont.vim @@ -33,7 +33,9 @@ function! nerdfont#find(...) abort return glyph endif - return g:nerdfont#default + return exists('g:nerdfont#default') + \ ? g:nerdfont#default + \ : nerdfont#path#extension#defaults['.'] endfunction function! s:autofix(result) abort @@ -51,7 +53,3 @@ function! s:autofix(result) abort endtry endif endfunction - -let g:nerdfont#default = get(g:, 'nerdfont#default', - \ g:nerdfont#path#extension#defaults['.']) -