retrovim 0.0.3 → 0.0.4
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.conda/kmp-lsp.yaml +82 -0
- package/.conda/phpantom_lsp.yaml +78 -0
- package/.conda/retrovim.yaml +42 -20
- package/.github/workflows/release.yml +21 -14
- package/.npm/kanata_touchcursor.js +29 -14
- package/.npm/nvim.js +3 -2
- package/.npm/yazi.js +3 -2
- package/.npm/zsh.js +3 -2
- package/.pip/kanata_touchcursor/__init__.py +34 -18
- package/.pip/nvim/__init__.py +8 -8
- package/.pip/yazi/__init__.py +8 -8
- package/.pip/zsh/__init__.py +8 -9
- package/CHANGELOG.md +9 -0
- package/README.md +8 -8
- package/nvim/init.lua +54 -49
- package/package.json +1 -1
- package/pyproject.toml +20 -20
- package/yazi/keymap.toml +1 -1
- package/zsh/.zshrc +11 -5
|
@@ -0,0 +1,82 @@
|
|
|
1
|
+
# https://rattler-build.prefix.dev/latest/tutorials/repackaging
|
|
2
|
+
# rattler-build build --recipe kmp-lsp.yaml --target-platform linux-64 --output-dir kmp-lsp-channel
|
|
3
|
+
# rattler-build build --recipe kmp-lsp.yaml --target-platform linux-aarch64 --output-dir kmp-lsp-channel
|
|
4
|
+
# rattler-build build --recipe kmp-lsp.yaml --target-platform osx-64 --output-dir kmp-lsp-channel
|
|
5
|
+
# rattler-build build --recipe kmp-lsp.yaml --target-platform osx-arm64 --output-dir kmp-lsp-channel
|
|
6
|
+
# rattler-build build --recipe kmp-lsp.yaml --target-platform win-64 --output-dir kmp-lsp-channel
|
|
7
|
+
|
|
8
|
+
# https://pixi.prefix.dev/dev/reference/cli/pixi/clean/cache
|
|
9
|
+
# pixi clean cache --build --yes
|
|
10
|
+
|
|
11
|
+
# https://pixi.prefix.dev/dev/reference/cli/pixi/global/install
|
|
12
|
+
# pixi g install --path ./kmp-lsp-channel/linux-64/kmp-lsp*
|
|
13
|
+
# pixi g install --path ./kmp-lsp-channel/linux-aarch64/kmp-lsp*
|
|
14
|
+
# pixi g install --path ./kmp-lsp-channel/osx-64/kmp-lsp*
|
|
15
|
+
# pixi g install --path ./kmp-lsp-channel/osx-aarch64/kmp-lsp*
|
|
16
|
+
# pixi g install --path ./kmp-lsp-channel/win-64/kmp-lsp-0.25.0-h9490d1a_0.conda
|
|
17
|
+
|
|
18
|
+
# https://rattler-build.prefix.dev/latest/getting_started/#authentication
|
|
19
|
+
# rattler-build auth login anaconda.org --conda-token $ANACONDA_API_KEY
|
|
20
|
+
|
|
21
|
+
# https://rattler-build.prefix.dev/latest/getting_started/#publishing-the-package
|
|
22
|
+
# rattler-build publish --recipe kmp-lsp.yaml --target-platform linux-64 --to https://anaconda.org/retronvim
|
|
23
|
+
# rattler-build publish --recipe kmp-lsp.yaml --target-platform linux-aarch64 --to https://anaconda.org/retronvim
|
|
24
|
+
# rattler-build publish --recipe kmp-lsp.yaml --target-platform osx-64 --to https://anaconda.org/retronvim
|
|
25
|
+
# rattler-build publish --recipe kmp-lsp.yaml --target-platform osx-arm64 --to https://anaconda.org/retronvim
|
|
26
|
+
# rattler-build publish --recipe kmp-lsp.yaml --target-platform win-64 --to https://anaconda.org/retronvim
|
|
27
|
+
|
|
28
|
+
context:
|
|
29
|
+
version: 0.25.0
|
|
30
|
+
|
|
31
|
+
package:
|
|
32
|
+
name: kmp-lsp
|
|
33
|
+
version: ${{ version }}
|
|
34
|
+
|
|
35
|
+
source:
|
|
36
|
+
- if: target_platform == "linux-64"
|
|
37
|
+
then:
|
|
38
|
+
- url: https://github.com/Hessesian/kmp-lsp/releases/download/v${{ version }}/kmp-lsp-linux-x86_64.tar.gz
|
|
39
|
+
|
|
40
|
+
- if: target_platform == "linux-aarch64"
|
|
41
|
+
then:
|
|
42
|
+
- url: https://github.com/Hessesian/kmp-lsp/releases/download/v${{ version }}/kmp-lsp-linux-aarch64.tar.gz
|
|
43
|
+
|
|
44
|
+
- if: target_platform == "osx-64"
|
|
45
|
+
then:
|
|
46
|
+
- url: https://github.com/Hessesian/kmp-lsp/releases/download/v${{ version }}/kmp-lsp-darwin-x86_64.tar.gz
|
|
47
|
+
|
|
48
|
+
- if: target_platform == "osx-arm64"
|
|
49
|
+
then:
|
|
50
|
+
- url: https://github.com/Hessesian/kmp-lsp/releases/download/v${{ version }}/kmp-lsp-darwin-aarch64.tar.gz
|
|
51
|
+
|
|
52
|
+
- if: target_platform == "win-64"
|
|
53
|
+
then:
|
|
54
|
+
- url: https://github.com/Hessesian/kmp-lsp/releases/download/v${{ version }}/kmp-lsp-windows-x86_64.zip
|
|
55
|
+
|
|
56
|
+
build:
|
|
57
|
+
# number: 0 # build version
|
|
58
|
+
|
|
59
|
+
dynamic_linking:
|
|
60
|
+
# fixes macos builds from linux: failed to find `install_name_tool`
|
|
61
|
+
# https://rattler-build.prefix.dev/latest/build_options/#dynamic-linking-configuration
|
|
62
|
+
binary_relocation: false
|
|
63
|
+
|
|
64
|
+
script:
|
|
65
|
+
interpreter: bash
|
|
66
|
+
content:
|
|
67
|
+
- mkdir -p $PREFIX/bin
|
|
68
|
+
- cp -r kmp-lsp* $PREFIX/bin
|
|
69
|
+
|
|
70
|
+
- if: win
|
|
71
|
+
then:
|
|
72
|
+
- mv $PREFIX/bin/kmp-lsp* $PREFIX/bin/kmp-lsp.exe
|
|
73
|
+
|
|
74
|
+
tests:
|
|
75
|
+
- package_contents:
|
|
76
|
+
bin:
|
|
77
|
+
- kmp-lsp*
|
|
78
|
+
|
|
79
|
+
about:
|
|
80
|
+
summary: Fast, low-memory LSP server for Kotlin and Java, written in Rust
|
|
81
|
+
homepage: https://github.com/Hessesian/kmp-lsp
|
|
82
|
+
repository: https://github.com/Hessesian/kmp-lsp
|
|
@@ -0,0 +1,78 @@
|
|
|
1
|
+
# https://rattler-build.prefix.dev/latest/tutorials/repackaging
|
|
2
|
+
# rattler-build build --recipe phpantom_lsp.yaml --target-platform linux-64 --output-dir phpantom-channel
|
|
3
|
+
# rattler-build build --recipe phpantom_lsp.yaml --target-platform linux-aarch64 --output-dir phpantom-channel
|
|
4
|
+
# rattler-build build --recipe phpantom_lsp.yaml --target-platform osx-64 --output-dir phpantom-channel
|
|
5
|
+
# rattler-build build --recipe phpantom_lsp.yaml --target-platform osx-arm64 --output-dir phpantom-channel
|
|
6
|
+
# rattler-build build --recipe phpantom_lsp.yaml --target-platform win-64 --output-dir phpantom-channel
|
|
7
|
+
|
|
8
|
+
# https://pixi.prefix.dev/dev/reference/cli/pixi/clean/cache
|
|
9
|
+
# pixi clean cache --build --yes
|
|
10
|
+
|
|
11
|
+
# https://pixi.prefix.dev/dev/reference/cli/pixi/global/install
|
|
12
|
+
# pixi g install --path ./phpantom-channel/linux-64/phpantom*
|
|
13
|
+
# pixi g install --path ./phpantom-channel/linux-aarch64/phpantom*
|
|
14
|
+
# pixi g install --path ./phpantom-channel/osx-64/phpantom*
|
|
15
|
+
# pixi g install --path ./phpantom-channel/osx-aarch64/phpantom*
|
|
16
|
+
# pixi g install --path ./phpantom-channel/win-64/phpantom-0.9.0-h9490d1a_0.conda
|
|
17
|
+
|
|
18
|
+
# https://rattler-build.prefix.dev/latest/getting_started/#authentication
|
|
19
|
+
# rattler-build auth login anaconda.org --conda-token $ANACONDA_API_KEY
|
|
20
|
+
|
|
21
|
+
# https://rattler-build.prefix.dev/latest/getting_started/#publishing-the-package
|
|
22
|
+
# rattler-build publish --recipe phpantom_lsp.yaml --target-platform linux-64 --to https://anaconda.org/retronvim
|
|
23
|
+
# rattler-build publish --recipe phpantom_lsp.yaml --target-platform linux-aarch64 --to https://anaconda.org/retronvim
|
|
24
|
+
# rattler-build publish --recipe phpantom_lsp.yaml --target-platform osx-64 --to https://anaconda.org/retronvim
|
|
25
|
+
# rattler-build publish --recipe phpantom_lsp.yaml --target-platform osx-arm64 --to https://anaconda.org/retronvim
|
|
26
|
+
# rattler-build publish --recipe phpantom_lsp.yaml --target-platform win-64 --to https://anaconda.org/retronvim
|
|
27
|
+
|
|
28
|
+
context:
|
|
29
|
+
version: 0.9.0
|
|
30
|
+
|
|
31
|
+
package:
|
|
32
|
+
name: phpantom_lsp
|
|
33
|
+
version: ${{ version }}
|
|
34
|
+
|
|
35
|
+
source:
|
|
36
|
+
- if: target_platform == "linux-64"
|
|
37
|
+
then:
|
|
38
|
+
- url: https://github.com/PHPantom-dev/phpantom_lsp/releases/download/${{ version }}/phpantom_lsp-x86_64-unknown-linux-gnu.tar.gz
|
|
39
|
+
|
|
40
|
+
- if: target_platform == "linux-aarch64"
|
|
41
|
+
then:
|
|
42
|
+
- url: https://github.com/PHPantom-dev/phpantom_lsp/releases/download/${{ version }}/phpantom_lsp-aarch64-unknown-linux-gnu.tar.gz
|
|
43
|
+
|
|
44
|
+
- if: target_platform == "osx-64"
|
|
45
|
+
then:
|
|
46
|
+
- url: https://github.com/PHPantom-dev/phpantom_lsp/releases/download/${{ version }}/phpantom_lsp-x86_64-apple-darwin.tar.gz
|
|
47
|
+
|
|
48
|
+
- if: target_platform == "osx-arm64"
|
|
49
|
+
then:
|
|
50
|
+
- url: https://github.com/PHPantom-dev/phpantom_lsp/releases/download/${{ version }}/phpantom_lsp-aarch64-apple-darwin.tar.gz
|
|
51
|
+
|
|
52
|
+
- if: target_platform == "win-64"
|
|
53
|
+
then:
|
|
54
|
+
- url: https://github.com/PHPantom-dev/phpantom_lsp/releases/download/${{ version }}/phpantom_lsp-x86_64-pc-windows-msvc.zip
|
|
55
|
+
|
|
56
|
+
build:
|
|
57
|
+
# number: 0 # build version
|
|
58
|
+
|
|
59
|
+
dynamic_linking:
|
|
60
|
+
# fixes macos builds from linux: failed to find `install_name_tool`
|
|
61
|
+
# https://rattler-build.prefix.dev/latest/build_options/#dynamic-linking-configuration
|
|
62
|
+
binary_relocation: false
|
|
63
|
+
|
|
64
|
+
script:
|
|
65
|
+
interpreter: bash
|
|
66
|
+
content:
|
|
67
|
+
- mkdir -p $PREFIX/bin
|
|
68
|
+
- cp -r phpantom* $PREFIX/bin
|
|
69
|
+
|
|
70
|
+
tests:
|
|
71
|
+
- package_contents:
|
|
72
|
+
bin:
|
|
73
|
+
- phpantom*
|
|
74
|
+
|
|
75
|
+
about:
|
|
76
|
+
summary: Fast PHP language server with deep type intelligence. Generics, Laravel, PHPStan annotations.
|
|
77
|
+
homepage: https://phpantom-dev.github.io/phpantom_lsp/
|
|
78
|
+
repository: https://github.com/PHPantom-dev/phpantom_lsp
|
package/.conda/retrovim.yaml
CHANGED
|
@@ -1,23 +1,29 @@
|
|
|
1
1
|
# https://rattler-build.prefix.dev/latest/tutorials/repackaging
|
|
2
|
-
# rattler-build build --recipe retrovim.yaml --target-platform linux-64
|
|
3
|
-
# rattler-build build --recipe retrovim.yaml --target-platform
|
|
4
|
-
# rattler-build build --recipe retrovim.yaml --target-platform osx-
|
|
5
|
-
# rattler-build build --recipe retrovim.yaml --target-platform
|
|
2
|
+
# rattler-build build --recipe retrovim.yaml --target-platform linux-64 --output-dir retronvim-channel
|
|
3
|
+
# rattler-build build --recipe retrovim.yaml --target-platform linux-aarch64 --output-dir retronvim-channel
|
|
4
|
+
# rattler-build build --recipe retrovim.yaml --target-platform osx-64 --output-dir retronvim-channel
|
|
5
|
+
# rattler-build build --recipe retrovim.yaml --target-platform osx-arm64 --output-dir retronvim-channel
|
|
6
|
+
# rattler-build build --recipe retrovim.yaml --target-platform win-64 --output-dir retronvim-channel
|
|
6
7
|
|
|
7
8
|
# https://pixi.prefix.dev/dev/reference/cli/pixi/clean/cache
|
|
8
9
|
# pixi clean cache --build --yes
|
|
9
10
|
|
|
10
11
|
# https://pixi.prefix.dev/dev/reference/cli/pixi/global/install
|
|
11
|
-
# pixi g install
|
|
12
|
+
# pixi g install --path ./retronvim-channel/linux-64/*conda -c retronvim -c conda-forge
|
|
13
|
+
# pixi g install --path ./retronvim-channel/linux-aarch64/*conda -c retronvim -c conda-forge
|
|
14
|
+
# pixi g install --path ./retronvim-channel/osx-64/*conda -c retronvim -c conda-forge
|
|
15
|
+
# pixi g install --path ./retronvim-channel/osx-aarch64/*conda -c retronvim -c conda-forge
|
|
16
|
+
# pixi g install --path ./retronvim-channel/win-64/*conda -c retronvim -c conda-forge
|
|
12
17
|
|
|
13
18
|
# https://rattler-build.prefix.dev/latest/getting_started/#authentication
|
|
14
19
|
# rattler-build auth login anaconda.org --conda-token $ANACONDA_API_KEY
|
|
15
20
|
|
|
16
21
|
# https://rattler-build.prefix.dev/latest/getting_started/#publishing-the-package
|
|
17
|
-
# rattler-build publish --recipe retrovim.yaml --target-platform linux-64
|
|
18
|
-
# rattler-build publish --recipe retrovim.yaml --target-platform
|
|
19
|
-
# rattler-build publish --recipe retrovim.yaml --target-platform osx-
|
|
20
|
-
# rattler-build publish --recipe retrovim.yaml --target-platform
|
|
22
|
+
# rattler-build publish --recipe retrovim.yaml --target-platform linux-64 --to https://anaconda.org/retronvim
|
|
23
|
+
# rattler-build publish --recipe retrovim.yaml --target-platform linux-aarch64 --to https://anaconda.org/retronvim
|
|
24
|
+
# rattler-build publish --recipe retrovim.yaml --target-platform osx-64 --to https://anaconda.org/retronvim
|
|
25
|
+
# rattler-build publish --recipe retrovim.yaml --target-platform osx-arm64 --to https://anaconda.org/retronvim
|
|
26
|
+
# rattler-build publish --recipe retrovim.yaml --target-platform win-64 --to https://anaconda.org/retronvim
|
|
21
27
|
|
|
22
28
|
context:
|
|
23
29
|
version: 0.0.4
|
|
@@ -37,9 +43,6 @@ source:
|
|
|
37
43
|
build:
|
|
38
44
|
# number: 0 # build version
|
|
39
45
|
|
|
40
|
-
# This makes the package architecture-independent (noarch)
|
|
41
|
-
noarch: generic
|
|
42
|
-
|
|
43
46
|
dynamic_linking:
|
|
44
47
|
# fixes macos builds from linux: failed to find `install_name_tool`
|
|
45
48
|
# https://rattler-build.prefix.dev/latest/build_options/#dynamic-linking-configuration
|
|
@@ -59,7 +62,7 @@ build:
|
|
|
59
62
|
cat >> $PREFIX/bin/git <<< '#!/bin/bash'
|
|
60
63
|
cat >> $PREFIX/bin/git <<< 'export CONDA_PREFIX=${CONDA_PREFIX:-$(dirname $(dirname $(realpath $0)))}'
|
|
61
64
|
cat >> $PREFIX/bin/git <<< 'cp --update $CONDA_PREFIX/__clobbers__/git/bin/git $CONDA_PREFIX/bin/git.2.53.0'
|
|
62
|
-
cat >> $PREFIX/bin/git <<< 'exec git.2.53.0 "$@"'
|
|
65
|
+
cat >> $PREFIX/bin/git <<< 'exec $CONDA_PREFIX/bin/git.2.53.0 "$@"'
|
|
63
66
|
chmod +x $PREFIX/bin/git
|
|
64
67
|
|
|
65
68
|
############################################################################################################################
|
|
@@ -79,7 +82,7 @@ build:
|
|
|
79
82
|
cat >> $PREFIX/bin/nvim <<< 'export VIMINIT="luafile $CONDA_PREFIX/opt/retrovim/nvim/init.lua"'
|
|
80
83
|
cat >> $PREFIX/bin/nvim <<< 'export ZDOTDIR="$CONDA_PREFIX/opt/retrovim/zsh"'
|
|
81
84
|
cat >> $PREFIX/bin/nvim <<< 'cp --update $CONDA_PREFIX/__clobbers__/nvim/bin/nvim $CONDA_PREFIX/bin/nvim.0.12'
|
|
82
|
-
cat >> $PREFIX/bin/nvim <<< 'exec nvim.0.12 "$@"'
|
|
85
|
+
cat >> $PREFIX/bin/nvim <<< 'exec $CONDA_PREFIX/bin/nvim.0.12 "$@"'
|
|
83
86
|
chmod +x $PREFIX/bin/nvim
|
|
84
87
|
|
|
85
88
|
############################################################################################################################
|
|
@@ -108,7 +111,7 @@ build:
|
|
|
108
111
|
cat >> $PREFIX/bin/zsh <<< '#!/bin/bash'
|
|
109
112
|
cat >> $PREFIX/bin/zsh <<< 'export CONDA_PREFIX=${CONDA_PREFIX:-$(dirname $(dirname $(realpath $0)))}'
|
|
110
113
|
cat >> $PREFIX/bin/zsh <<< 'export ZDOTDIR="$CONDA_PREFIX/opt/retrovim/zsh"'
|
|
111
|
-
cat >> $PREFIX/bin/zsh <<< 'exec zsh-5.9 "$@"'
|
|
114
|
+
cat >> $PREFIX/bin/zsh <<< 'exec $CONDA_PREFIX/bin/zsh-5.9 "$@"'
|
|
112
115
|
chmod +x $PREFIX/bin/zsh
|
|
113
116
|
|
|
114
117
|
############################################################################################################################
|
|
@@ -136,6 +139,12 @@ build:
|
|
|
136
139
|
cat >> $PREFIX/Library/bin/nvim.cmd <<< 'set RETRONVIM_PREFIX=%CONDA_PREFIX%/opt/retrovim'
|
|
137
140
|
cat >> $PREFIX/Library/bin/nvim.cmd <<< 'set "VIMINIT=luafile %CONDA_PREFIX%/opt/retrovim/nvim/init.lua"'
|
|
138
141
|
cat >> $PREFIX/Library/bin/nvim.cmd <<< 'set ZDOTDIR=%CONDA_PREFIX%/opt/retrovim/zsh'
|
|
142
|
+
cat >> $PREFIX/Library/bin/nvim.cmd <<< 'set BAT_THEME=base16'
|
|
143
|
+
cat >> $PREFIX/Library/bin/nvim.cmd <<< 'set FZF_DEFAULT_OPTS=--color "hl:-1:reverse,hl+:-1:reverse" --preview "bat --color=always {}" --preview-window=hidden --bind "?:toggle-preview" --multi'
|
|
144
|
+
cat >> $PREFIX/Library/bin/nvim.cmd <<< 'set LESS=--ignore-case'
|
|
145
|
+
cat >> $PREFIX/Library/bin/nvim.cmd <<< 'set LESSKEYIN=%CONDA_PREFIX%/opt/retrovim/yazi/lesskey'
|
|
146
|
+
cat >> $PREFIX/Library/bin/nvim.cmd <<< 'set LESSHISTFILE=-'
|
|
147
|
+
cat >> $PREFIX/Library/bin/nvim.cmd <<< 'set YAZI_CONFIG_HOME=%CONDA_PREFIX%/opt/retrovim/yazi'
|
|
139
148
|
cat >> $PREFIX/Library/bin/nvim.cmd <<< 'nvim %*'
|
|
140
149
|
|
|
141
150
|
############################################################################################################################
|
|
@@ -149,6 +158,10 @@ build:
|
|
|
149
158
|
|
|
150
159
|
cat >> $PREFIX/bin/yazi.cmd <<< '@echo off'
|
|
151
160
|
cat >> $PREFIX/bin/yazi.cmd <<< 'set CONDA_PREFIX=%~f0\..\..'
|
|
161
|
+
cat >> $PREFIX/bin/yazi.cmd <<< 'set SHELL=zsh.exe'
|
|
162
|
+
cat >> $PREFIX/bin/yazi.cmd <<< 'set RETRONVIM_PREFIX=%CONDA_PREFIX%/opt/retrovim'
|
|
163
|
+
cat >> $PREFIX/bin/yazi.cmd <<< 'set "VIMINIT=luafile %CONDA_PREFIX%/opt/retrovim/nvim/init.lua"'
|
|
164
|
+
cat >> $PREFIX/bin/yazi.cmd <<< 'set ZDOTDIR=%CONDA_PREFIX%/opt/retrovim/zsh'
|
|
152
165
|
cat >> $PREFIX/bin/yazi.cmd <<< 'set BAT_THEME=base16'
|
|
153
166
|
cat >> $PREFIX/bin/yazi.cmd <<< 'set FZF_DEFAULT_OPTS=--color "hl:-1:reverse,hl+:-1:reverse" --preview "bat --color=always {}" --preview-window=hidden --bind "?:toggle-preview" --multi'
|
|
154
167
|
cat >> $PREFIX/bin/yazi.cmd <<< 'set LESS=--ignore-case'
|
|
@@ -176,7 +189,7 @@ build:
|
|
|
176
189
|
# https://github.com/conda-forge/alacritty-feedstock/blob/main/recipe/menu.json
|
|
177
190
|
|
|
178
191
|
- |
|
|
179
|
-
mkdir
|
|
192
|
+
mkdir -p $PREFIX/Menu
|
|
180
193
|
cp $RECIPE_DIR/terax.{png,ico,icns} $PREFIX/Menu
|
|
181
194
|
cat >> $PREFIX/Menu/menu.json <<'EOF'
|
|
182
195
|
{
|
|
@@ -216,31 +229,40 @@ requirements:
|
|
|
216
229
|
- bat=0.26.1
|
|
217
230
|
- eza=0.23.4
|
|
218
231
|
- fd-find=10.4.2
|
|
219
|
-
-
|
|
232
|
+
- font-fira-code-nerd-font=3.4.0
|
|
220
233
|
- fzf=0.70.0
|
|
221
234
|
- git
|
|
222
235
|
- kanata=1.11.0
|
|
223
236
|
- lazygit=0.61.0
|
|
224
|
-
- mise
|
|
225
237
|
- nvim=0.12.4
|
|
226
238
|
- ripgrep=15.1.0
|
|
227
239
|
- starship=1.24.2
|
|
228
|
-
- terax
|
|
229
240
|
- yazi=26.5.6
|
|
230
241
|
- zsh-patina=1.8.0
|
|
231
242
|
- zsh=5.9
|
|
232
243
|
|
|
233
244
|
- if: osx
|
|
234
245
|
then:
|
|
246
|
+
- terax
|
|
235
247
|
- zerobrew
|
|
236
248
|
|
|
237
|
-
- if: linux
|
|
249
|
+
- if: target_platform == "linux-64"
|
|
238
250
|
then:
|
|
239
251
|
- file=5.47 # not installed inside docker
|
|
240
252
|
- less=692 # not installed inside docker
|
|
253
|
+
- terax
|
|
241
254
|
- win32yank # WSL clipboaard
|
|
242
255
|
- zerobrew
|
|
243
256
|
|
|
257
|
+
- if: target_platform == "linux-aarch64"
|
|
258
|
+
then:
|
|
259
|
+
- file=5.47 # not installed inside docker
|
|
260
|
+
- less=692 # not installed inside docker
|
|
261
|
+
|
|
262
|
+
- if: win
|
|
263
|
+
then:
|
|
264
|
+
- terax
|
|
265
|
+
|
|
244
266
|
tests:
|
|
245
267
|
- package_contents:
|
|
246
268
|
bin:
|
|
@@ -20,8 +20,8 @@ on:
|
|
|
20
20
|
env:
|
|
21
21
|
GH_TOKEN: ${{ secrets.GITHUB_TOKEN }} # setting GH_TOKEN for the entire workflow
|
|
22
22
|
ANACONDA_API_KEY: ${{ secrets.ANACONDA_TOKEN }}
|
|
23
|
-
NODE_AUTH_TOKEN: ${{ secrets.NPM_TOKEN }}
|
|
24
|
-
UV_PUBLISH_TOKEN: ${{ secrets.PYPI_TOKEN }}
|
|
23
|
+
NODE_AUTH_TOKEN: ${{ secrets.NPM_TOKEN }} # write access last 90 days, trusted-publishing should last forever https://www.npmjs.com/package/retrovim/access
|
|
24
|
+
UV_PUBLISH_TOKEN: ${{ secrets.PYPI_TOKEN }} # trusted-publishing should last forever https://pypi.org/manage/account/publishing
|
|
25
25
|
|
|
26
26
|
# https://github.com/googleapis/release-please-action?tab=readme-ov-file#workflow-permissions
|
|
27
27
|
# GitHub requires `issues: write` permission for label management since labels are shared between issues and pull requests
|
|
@@ -39,9 +39,9 @@ jobs:
|
|
|
39
39
|
# 1. create release bot
|
|
40
40
|
# ==========================================================
|
|
41
41
|
# https://www.youtube.com/watch?v=P0wAXh5UOnM
|
|
42
|
-
#
|
|
43
|
-
# to retrigger remove the github release
|
|
44
|
-
#
|
|
42
|
+
# ╭────────────────────────────────────────────────────────────────────────────────────────────────────────╮
|
|
43
|
+
# to retrigger remove the github release, tag then --> │ git pull --rebase --> lazygit remove github-action commit and ammend your changes --> git push --force │
|
|
44
|
+
# ╰────────────────────────────────────────────────────────────────────────────────────────────────────────╯
|
|
45
45
|
- uses: googleapis/release-please-action@v4
|
|
46
46
|
id: release
|
|
47
47
|
with:
|
|
@@ -57,34 +57,41 @@ jobs:
|
|
|
57
57
|
# ==========================================================
|
|
58
58
|
# 3. Install dependencies
|
|
59
59
|
# ==========================================================
|
|
60
|
-
- name: Install rattler-build and
|
|
60
|
+
- name: Install rattler-build, uv and npm 🧰
|
|
61
61
|
if: ${{ steps.release.outputs.release_created }}
|
|
62
62
|
run: |
|
|
63
63
|
git submodule update --init --depth 1
|
|
64
|
-
rm -rf ./nvim/plugins/*/tests
|
|
65
64
|
|
|
66
|
-
curl -L pixi.sh/install.sh |
|
|
65
|
+
curl -L pixi.sh/install.sh | sh
|
|
67
66
|
export PATH="$HOME/.pixi/bin:$PATH"
|
|
68
67
|
pixi global install rattler-build uv
|
|
69
68
|
|
|
69
|
+
- name: Setup Node auth 🔑
|
|
70
|
+
if: ${{ steps.release.outputs.release_created }}
|
|
71
|
+
uses: actions/setup-node@v4
|
|
72
|
+
with:
|
|
73
|
+
registry-url: 'https://registry.npmjs.org'
|
|
74
|
+
|
|
75
|
+
|
|
70
76
|
# ==========================================================
|
|
71
77
|
# 4. Publish packages
|
|
72
78
|
# ==========================================================
|
|
73
|
-
- name: Publish to npm, pypi
|
|
79
|
+
- name: Publish to npm, pypi and anaconda.org 🚀
|
|
74
80
|
if: ${{ steps.release.outputs.release_created }}
|
|
75
81
|
run: |
|
|
82
|
+
export PATH="$HOME/.pixi/bin:$PATH"
|
|
76
83
|
|
|
77
84
|
# https://rattler-build.prefix.dev/latest/getting_started/#authentication
|
|
78
85
|
# https://rattler-build.prefix.dev/latest/getting_started/#publishing-the-package
|
|
79
86
|
# https://rattler-build.prefix.dev/latest/getting_started/#publishing-to-anacondaorg
|
|
80
87
|
rattler-build auth login anaconda.org --conda-token $ANACONDA_API_KEY
|
|
81
|
-
rattler-build publish .conda/
|
|
82
|
-
rattler-build publish .conda/
|
|
83
|
-
rattler-build publish .conda/
|
|
84
|
-
rattler-build publish .conda/
|
|
88
|
+
rattler-build publish .conda/retrovim.yaml --target-platform linux-64 --to https://anaconda.org/retronvim --build-number=+1
|
|
89
|
+
rattler-build publish .conda/retrovim.yaml --target-platform osx-64 --to https://anaconda.org/retronvim --build-number=+1
|
|
90
|
+
rattler-build publish .conda/retrovim.yaml --target-platform osx-arm64 --to https://anaconda.org/retronvim --build-number=+1
|
|
91
|
+
rattler-build publish .conda/retrovim.yaml --target-platform win-64 --to https://anaconda.org/retronvim --build-number=+1
|
|
85
92
|
|
|
86
93
|
npm publish
|
|
87
|
-
uv publish
|
|
94
|
+
uv build && uv publish
|
|
88
95
|
|
|
89
96
|
# ==========================================================
|
|
90
97
|
# 5. Upload artifacts to GitHub Release
|
|
@@ -6,23 +6,38 @@ const path = require('path');
|
|
|
6
6
|
const os = require('os');
|
|
7
7
|
|
|
8
8
|
const self = fs.realpathSync(process.argv[1]);
|
|
9
|
-
process.env.RETRONVIM_PREFIX = path.
|
|
9
|
+
process.env.RETRONVIM_PREFIX = path.dirname(path.dirname(self))
|
|
10
10
|
|
|
11
11
|
const where = os.platform() === 'win32' ? 'where' : 'which';
|
|
12
|
+
const dotexe = os.platform() === 'win32' ? '.exe' : '';
|
|
12
13
|
|
|
13
|
-
const executable = execFileSync(where, ['kanata'], { encoding: 'utf8' }).trim().split(/\r?\n/)[0];
|
|
14
|
+
const executable = execFileSync(where, ['kanata' + dotexe], { encoding: 'utf8' }).trim().split(/\r?\n/)[0];
|
|
14
15
|
|
|
15
|
-
|
|
16
|
+
if (os.platform() === 'win32'){
|
|
17
|
+
const child = spawn(
|
|
18
|
+
'conhost',
|
|
19
|
+
[
|
|
20
|
+
'--headless',
|
|
21
|
+
executable,
|
|
22
|
+
'--cfg',
|
|
23
|
+
path.join(process.env.RETRONVIM_PREFIX, 'kanata', 'touchcursor.kbd')
|
|
24
|
+
],
|
|
25
|
+
{stdio: 'inherit', detached: true,}
|
|
26
|
+
);
|
|
27
|
+
child.unref();
|
|
28
|
+
} else{
|
|
29
|
+
execFileSync('sudo', ['--validate'], { stdio: 'inherit' });
|
|
16
30
|
|
|
17
|
-
const child = spawn(
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
);
|
|
31
|
+
const child = spawn(
|
|
32
|
+
'sudo',
|
|
33
|
+
[
|
|
34
|
+
'--preserve-env',
|
|
35
|
+
executable,
|
|
36
|
+
'--cfg',
|
|
37
|
+
path.join(process.env.RETRONVIM_PREFIX, 'kanata', 'touchcursor.kbd')
|
|
38
|
+
],
|
|
39
|
+
{stdio: 'inherit', detached: true,}
|
|
40
|
+
);
|
|
41
|
+
child.unref();
|
|
42
|
+
}
|
|
27
43
|
|
|
28
|
-
child.unref();
|
package/.npm/nvim.js
CHANGED
|
@@ -7,7 +7,7 @@ const os = require('os');
|
|
|
7
7
|
|
|
8
8
|
const self = fs.realpathSync(process.argv[1]);
|
|
9
9
|
|
|
10
|
-
process.env.RETRONVIM_PREFIX = path.
|
|
10
|
+
process.env.RETRONVIM_PREFIX = path.dirname(path.dirname(self))
|
|
11
11
|
process.env.SHELL = 'zsh'
|
|
12
12
|
process.env.VIMINIT = `lua vim.cmd.source(vim.env.RETRONVIM_PREFIX .. [[/nvim/init.lua]])`;
|
|
13
13
|
process.env.ZDOTDIR = path.join(process.env.RETRONVIM_PREFIX, 'zsh');
|
|
@@ -20,7 +20,8 @@ process.env.LESSHISTFILE = '-';
|
|
|
20
20
|
process.env.YAZI_CONFIG_HOME = path.join(process.env.RETRONVIM_PREFIX, 'yazi');
|
|
21
21
|
|
|
22
22
|
const where = os.platform() === 'win32' ? 'where' : 'which';
|
|
23
|
+
const dotexe = os.platform() === 'win32' ? '.exe' : '';
|
|
23
24
|
|
|
24
|
-
const executable = execFileSync(where, ['nvim'], { encoding: 'utf8' }).trim().split(/\r?\n/)[0];
|
|
25
|
+
const executable = execFileSync(where, ['nvim' + dotexe], { encoding: 'utf8' }).trim().split(/\r?\n/)[0];
|
|
25
26
|
|
|
26
27
|
execFileSync(executable, process.argv.slice(2), { stdio: 'inherit' });
|
package/.npm/yazi.js
CHANGED
|
@@ -7,7 +7,7 @@ const os = require('os');
|
|
|
7
7
|
|
|
8
8
|
const self = fs.realpathSync(process.argv[1]);
|
|
9
9
|
|
|
10
|
-
process.env.RETRONVIM_PREFIX = path.
|
|
10
|
+
process.env.RETRONVIM_PREFIX = path.dirname(path.dirname(self))
|
|
11
11
|
process.env.SHELL = 'zsh'
|
|
12
12
|
process.env.VIMINIT = `lua vim.cmd.source(vim.env.RETRONVIM_PREFIX .. [[/nvim/init.lua]])`;
|
|
13
13
|
process.env.ZDOTDIR = path.join(process.env.RETRONVIM_PREFIX, 'zsh');
|
|
@@ -20,7 +20,8 @@ process.env.LESSHISTFILE = '-';
|
|
|
20
20
|
process.env.YAZI_CONFIG_HOME = path.join(process.env.RETRONVIM_PREFIX, 'yazi');
|
|
21
21
|
|
|
22
22
|
const where = os.platform() === 'win32' ? 'where' : 'which';
|
|
23
|
+
const dotexe = os.platform() === 'win32' ? '.exe' : '';
|
|
23
24
|
|
|
24
|
-
const executable = execFileSync(where, ['yazi'], { encoding: 'utf8' }).trim().split(/\r?\n/)[0];
|
|
25
|
+
const executable = execFileSync(where, ['yazi' + dotexe], { encoding: 'utf8' }).trim().split(/\r?\n/)[0];
|
|
25
26
|
|
|
26
27
|
execFileSync(executable, process.argv.slice(2), { stdio: 'inherit' });
|
package/.npm/zsh.js
CHANGED
|
@@ -7,11 +7,12 @@ const os = require('os');
|
|
|
7
7
|
|
|
8
8
|
const self = fs.realpathSync(process.argv[1]);
|
|
9
9
|
|
|
10
|
-
process.env.RETRONVIM_PREFIX = path.
|
|
10
|
+
process.env.RETRONVIM_PREFIX = path.dirname(path.dirname(self))
|
|
11
11
|
process.env.ZDOTDIR = path.join(process.env.RETRONVIM_PREFIX, 'zsh');
|
|
12
12
|
|
|
13
13
|
const where = os.platform() === 'win32' ? 'where' : 'which';
|
|
14
|
+
const dotexe = os.platform() === 'win32' ? '.exe' : '';
|
|
14
15
|
|
|
15
|
-
const executable = execFileSync(where, ['zsh'], { encoding: 'utf8' }).trim().split(/\r?\n/)[0];
|
|
16
|
+
const executable = execFileSync(where, ['zsh' + dotexe], { encoding: 'utf8' }).trim().split(/\r?\n/)[0];
|
|
16
17
|
|
|
17
18
|
execFileSync(executable, process.argv.slice(2), { stdio: 'inherit' });
|
|
@@ -3,26 +3,42 @@
|
|
|
3
3
|
import os
|
|
4
4
|
import sys
|
|
5
5
|
import subprocess
|
|
6
|
-
import shutil
|
|
7
6
|
|
|
8
7
|
def main():
|
|
9
|
-
os.environ['RETRONVIM_PREFIX'] = os.path.
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
8
|
+
os.environ['RETRONVIM_PREFIX'] = os.path.join(os.path.dirname(os.path.dirname(os.path.realpath(__file__))), 'data')
|
|
9
|
+
|
|
10
|
+
where = 'where' if sys.platform == 'win32' else 'which'
|
|
11
|
+
dotexe = 'where' if sys.platform == '.exe' else ''
|
|
12
|
+
|
|
13
|
+
executables = subprocess.run( [where, 'kanata' + dotexe], capture_output=True, text=True )
|
|
14
|
+
|
|
15
|
+
executable = executables.stdout.splitlines()[0]
|
|
16
|
+
|
|
17
|
+
if sys.platform == 'win32':
|
|
18
|
+
subprocess.Popen(
|
|
19
|
+
[
|
|
20
|
+
'conhost',
|
|
21
|
+
'--headless',
|
|
22
|
+
executable,
|
|
23
|
+
'--cfg',
|
|
24
|
+
os.path.join(os.environ['RETRONVIM_PREFIX'], 'kanata', 'touchcursor.kbd')
|
|
25
|
+
],
|
|
26
|
+
start_new_session=True
|
|
27
|
+
)
|
|
28
|
+
else:
|
|
29
|
+
subprocess.run(['sudo', '--validate'], check=True)
|
|
30
|
+
|
|
31
|
+
# Spawn detached child process running kanata
|
|
32
|
+
subprocess.Popen(
|
|
33
|
+
[
|
|
34
|
+
'sudo',
|
|
35
|
+
'--preserve-env',
|
|
36
|
+
executable,
|
|
37
|
+
'--cfg',
|
|
38
|
+
os.path.join(os.environ['RETRONVIM_PREFIX'], 'kanata', 'touchcursor.kbd')
|
|
39
|
+
],
|
|
40
|
+
start_new_session=True
|
|
41
|
+
)
|
|
26
42
|
|
|
27
43
|
if __name__ == '__main__':
|
|
28
44
|
main()
|
package/.pip/nvim/__init__.py
CHANGED
|
@@ -3,10 +3,9 @@
|
|
|
3
3
|
import os
|
|
4
4
|
import sys
|
|
5
5
|
import subprocess
|
|
6
|
-
import shutil
|
|
7
6
|
|
|
8
7
|
def main():
|
|
9
|
-
os.environ['RETRONVIM_PREFIX'] = os.path.
|
|
8
|
+
os.environ['RETRONVIM_PREFIX'] = os.path.join(os.path.dirname(os.path.dirname(os.path.realpath(__file__))), 'data')
|
|
10
9
|
|
|
11
10
|
os.environ['SHELL'] = 'zsh'
|
|
12
11
|
os.environ['VIMINIT'] = f"lua vim.cmd.source(vim.env.RETRONVIM_PREFIX .. [[/nvim/init.lua]])"
|
|
@@ -19,13 +18,14 @@ def main():
|
|
|
19
18
|
os.environ['LESSHISTFILE'] = '-'
|
|
20
19
|
os.environ['YAZI_CONFIG_HOME'] = os.path.join(os.environ['RETRONVIM_PREFIX'], 'yazi')
|
|
21
20
|
|
|
22
|
-
|
|
23
|
-
|
|
21
|
+
where = 'where' if sys.platform == 'win32' else 'which'
|
|
22
|
+
dotexe = 'where' if sys.platform == '.exe' else ''
|
|
24
23
|
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
24
|
+
executables = subprocess.run( [where, 'nvim' + dotexe], capture_output=True, text=True )
|
|
25
|
+
|
|
26
|
+
executable = executables.stdout.splitlines()[1] if sys.platform == 'win32' else executables.stdout.splitlines()[0]
|
|
27
|
+
|
|
28
|
+
subprocess.run([executable] + sys.argv[1:])
|
|
29
29
|
|
|
30
30
|
if __name__ == '__main__':
|
|
31
31
|
main()
|
package/.pip/yazi/__init__.py
CHANGED
|
@@ -3,10 +3,9 @@
|
|
|
3
3
|
import os
|
|
4
4
|
import sys
|
|
5
5
|
import subprocess
|
|
6
|
-
import shutil
|
|
7
6
|
|
|
8
7
|
def main():
|
|
9
|
-
os.environ['RETRONVIM_PREFIX'] = os.path.
|
|
8
|
+
os.environ['RETRONVIM_PREFIX'] = os.path.join(os.path.dirname(os.path.dirname(os.path.realpath(__file__))), 'data')
|
|
10
9
|
|
|
11
10
|
os.environ['SHELL'] = 'zsh'
|
|
12
11
|
os.environ['VIMINIT'] = f"lua vim.cmd.source(vim.env.RETRONVIM_PREFIX .. [[/nvim/init.lua]])"
|
|
@@ -19,13 +18,14 @@ def main():
|
|
|
19
18
|
os.environ['LESSHISTFILE'] = '-'
|
|
20
19
|
os.environ['YAZI_CONFIG_HOME'] = os.path.join(os.environ['RETRONVIM_PREFIX'], 'yazi')
|
|
21
20
|
|
|
22
|
-
|
|
23
|
-
|
|
21
|
+
where = 'where' if sys.platform == 'win32' else 'which'
|
|
22
|
+
dotexe = 'where' if sys.platform == '.exe' else ''
|
|
24
23
|
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
24
|
+
executables = subprocess.run( [where, 'yazi' + dotexe], capture_output=True, text=True )
|
|
25
|
+
|
|
26
|
+
executable = executables.stdout.splitlines()[1] if sys.platform == 'win32' else executables.stdout.splitlines()[0]
|
|
27
|
+
|
|
28
|
+
subprocess.run([executable] + sys.argv[1:])
|
|
29
29
|
|
|
30
30
|
if __name__ == '__main__':
|
|
31
31
|
main()
|
package/.pip/zsh/__init__.py
CHANGED
|
@@ -3,20 +3,19 @@
|
|
|
3
3
|
import os
|
|
4
4
|
import sys
|
|
5
5
|
import subprocess
|
|
6
|
-
import shutil
|
|
7
6
|
|
|
8
7
|
def main():
|
|
9
|
-
os.environ['RETRONVIM_PREFIX'] = os.path.
|
|
10
|
-
|
|
8
|
+
os.environ['RETRONVIM_PREFIX'] = os.path.join(os.path.dirname(os.path.dirname(os.path.realpath(__file__))), 'data')
|
|
11
9
|
os.environ['ZDOTDIR'] = os.path.join(os.environ['RETRONVIM_PREFIX'], 'zsh')
|
|
12
10
|
|
|
13
|
-
|
|
14
|
-
|
|
11
|
+
where = 'where' if sys.platform == 'win32' else 'which'
|
|
12
|
+
dotexe = 'where' if sys.platform == '.exe' else ''
|
|
13
|
+
|
|
14
|
+
executables = subprocess.run( [where, 'zsh' + dotexe], capture_output=True, text=True )
|
|
15
|
+
|
|
16
|
+
executable = executables.stdout.splitlines()[1] if sys.platform == 'win32' else executables.stdout.splitlines()[0]
|
|
15
17
|
|
|
16
|
-
|
|
17
|
-
os.execve(executable, args, os.environ)
|
|
18
|
-
except Exception:
|
|
19
|
-
subprocess.run([executable] + sys.argv[1:])
|
|
18
|
+
subprocess.run([executable] + sys.argv[1:])
|
|
20
19
|
|
|
21
20
|
if __name__ == '__main__':
|
|
22
21
|
main()
|
package/CHANGELOG.md
CHANGED
|
@@ -1,5 +1,14 @@
|
|
|
1
1
|
# Changelog
|
|
2
2
|
|
|
3
|
+
## [0.0.4](https://github.com/YeferYV/RetroVim/compare/v0.0.3...v0.0.4) (2026-08-07)
|
|
4
|
+
|
|
5
|
+
|
|
6
|
+
### Bug Fixes
|
|
7
|
+
|
|
8
|
+
* **retrovim.yaml:** trampoline not generating shim for nvim.cmd ([fb76d09](https://github.com/YeferYV/RetroVim/commit/fb76d091aabb8aa7063d64d6677619e815d4ab16))
|
|
9
|
+
* **zsh:** `ctrl+r` conflicts with builtin `zsh-autosuggestions` ([b5cf4d2](https://github.com/YeferYV/RetroVim/commit/b5cf4d2759e1d3336d8f4ebfeb1dc6d9382ad7c3))
|
|
10
|
+
* **zsh:** zsh-autosuggestion as git-submodule ([3370660](https://github.com/YeferYV/RetroVim/commit/3370660ddd9201db41afe5571eb82d3e605cfb0a))
|
|
11
|
+
|
|
3
12
|
## [0.0.3](https://github.com/YeferYV/RetroVim/compare/v0.0.2...v0.0.3) (2026-06-15)
|
|
4
13
|
|
|
5
14
|
|
package/README.md
CHANGED
|
@@ -245,25 +245,26 @@ _ _ _ _ _ _ _
|
|
|
245
245
|
- SSH/Bash/Zsh (linux/macos):
|
|
246
246
|
|
|
247
247
|
```bash
|
|
248
|
-
|
|
248
|
+
curl -L pixi.sh/install.sh | sh
|
|
249
|
+
pixi g install retrovim -c retronvim -c conda-forge
|
|
249
250
|
```
|
|
250
251
|
|
|
251
252
|
- npm + any package manager:
|
|
252
253
|
|
|
253
254
|
```bash
|
|
254
|
-
# brew install bat eza fzf git kanata lazygit
|
|
255
|
-
# pixi g install bat eza fzf git kanata lazygit
|
|
255
|
+
# brew install bat eza font-fira-code-nerd-font fzf git kanata lazygit neovim ripgrep starship yazi zsh zsh-patina 7zip pixi
|
|
256
|
+
# pixi g install bat eza font-fira-code-nerd-font fzf git kanata lazygit nvim ripgrep starship yazi zsh zsh-patina 7zip -c retronvim -c conda-forge -e retronvim
|
|
256
257
|
|
|
257
|
-
npm install -g
|
|
258
|
+
npm install -g retrovim
|
|
258
259
|
```
|
|
259
260
|
|
|
260
261
|
- pip + any package manager:
|
|
261
262
|
|
|
262
263
|
```bash
|
|
263
|
-
# brew install bat eza fzf git kanata lazygit
|
|
264
|
-
# pixi g install bat eza fzf git kanata lazygit
|
|
264
|
+
# brew install bat eza font-fira-code-nerd-font fzf git kanata lazygit neovim ripgrep starship yazi zsh zsh-patina 7zip pixi
|
|
265
|
+
# pixi g install bat eza font-fira-code-nerd-font fzf git kanata lazygit nvim ripgrep starship yazi zsh zsh-patina 7zip -c retronvim -c conda-forge -e retronvim
|
|
265
266
|
|
|
266
|
-
pip install
|
|
267
|
+
pip install retrovim
|
|
267
268
|
```
|
|
268
269
|
|
|
269
270
|
**Plugins**
|
|
@@ -277,7 +278,6 @@ _ _ _ _ _ _ _
|
|
|
277
278
|
- [`git`](https://github.com/git-for-windows/git)
|
|
278
279
|
- [`kanata`](https://github.com/jtroo/kanata)
|
|
279
280
|
- [`lazygit`](https://github.com/jesseduffield/lazygit)
|
|
280
|
-
- [`mise`](https://github.com/jdx/mise)
|
|
281
281
|
- [`neovim`](https://neovim.io)
|
|
282
282
|
- [`pixi`](https://github.com/prefix-dev/pixi)
|
|
283
283
|
- [`ripgrep`](https://github.com/BurntSushi/ripgrep)
|
package/nvim/init.lua
CHANGED
|
@@ -92,32 +92,24 @@ vim.opt.listchars = {
|
|
|
92
92
|
vim.treesitter.start = function() end --- nvim.conda on windows doesn't ship parser/lua.dll etc, lsp has their own syntax highlightting
|
|
93
93
|
|
|
94
94
|
if not vim.g.vscode then
|
|
95
|
-
vim.opt.pumborder = 'rounded'
|
|
96
|
-
vim.opt.cmdheight = 0
|
|
97
|
-
vim.opt.laststatus = 3
|
|
98
|
-
vim.opt.number = true
|
|
99
|
-
vim.opt.scrolloff = 3
|
|
100
|
-
vim.opt.sidescrolloff = 3
|
|
101
|
-
vim.opt.virtualedit = "all"
|
|
102
|
-
vim.o.foldcolumn = '1'
|
|
103
|
-
vim.o.foldlevel = 99
|
|
104
|
-
vim.o.foldmethod = "expr"
|
|
105
|
-
vim.o.foldexpr = 'v:lua.vim.lsp.foldexpr()'
|
|
95
|
+
vim.opt.pumborder = 'rounded' --- enable mini.completion border
|
|
96
|
+
vim.opt.cmdheight = 0 --- more space in the neovim command line for displaying messages
|
|
97
|
+
vim.opt.laststatus = 3 --- laststatus=3 global status line (line between splits)
|
|
98
|
+
vim.opt.number = true --- set numbered lines
|
|
99
|
+
vim.opt.scrolloff = 3 --- vertical scrolloff
|
|
100
|
+
vim.opt.sidescrolloff = 3 --- horizontal scrolloff
|
|
101
|
+
vim.opt.virtualedit = "all" --- allow cursor bypass end of line
|
|
102
|
+
vim.o.foldcolumn = '1' --- if '1' will show clickable fold signs
|
|
103
|
+
vim.o.foldlevel = 99 --- Disable folding at startup
|
|
104
|
+
vim.o.foldmethod = "expr" --- expr = specify an expression to define folds
|
|
105
|
+
vim.o.foldexpr = 'v:lua.vim.lsp.foldexpr()' --- if folding using treesitter then 'v:lua.vim.treesitter.foldexpr()'
|
|
106
106
|
vim.o.fillchars = [[eob: ,fold: ,foldinner: ,foldopen:,foldsep: ,foldclose:]]
|
|
107
|
-
vim.g.netrw_banner = 0
|
|
108
|
-
vim.g.netrw_liststyle = 3
|
|
109
|
-
vim.g.netrw_browse_split = 4
|
|
110
|
-
vim.g.netrw_winsize = 18
|
|
111
|
-
vim.g.netrw_preview = 1
|
|
112
|
-
vim.g.netrw_list_hide =
|
|
113
|
-
vim.cmd.packadd('netrw') and
|
|
114
|
-
vim.fn["netrw_gitignore#Hide"]()
|
|
115
|
-
.. ",.git"
|
|
116
|
-
-- vim.g.netrw_localcopydircmd = 'cp -r' -- Change copy command to support recursive copying
|
|
117
|
-
-- vim.g.netrw_keepdir = 0 -- don't close netrw after picking a file
|
|
118
|
-
-- vim.g.netrw_altv = 1 -- open file to the right
|
|
119
|
-
-- vim.g.netrw_special_syntax = 0 -- desactiva los colores por defecto de netrw
|
|
120
|
-
-- vim.g.netrw_fastbrowse = 1 -- re-use directory listings
|
|
107
|
+
vim.g.netrw_banner = 0 --- Hide the massive top banner
|
|
108
|
+
vim.g.netrw_liststyle = 3 --- Use tree-style view instead of a flat list
|
|
109
|
+
vim.g.netrw_browse_split = 4 --- Open files in a new vertical split on the right
|
|
110
|
+
vim.g.netrw_winsize = 18 --- Set the width of the netrw split window (percentage)
|
|
111
|
+
vim.g.netrw_preview = 1 --- open in a split window
|
|
112
|
+
vim.g.netrw_list_hide = [[.git,node_modules]] --- vim.fn["netrw_gitignore#Hide"]() --> conflicts with RetroVim/.pip/nvim/__init__.py
|
|
121
113
|
end
|
|
122
114
|
|
|
123
115
|
--- ╭──────────────╮
|
|
@@ -541,6 +533,17 @@ if not vim.g.vscode then
|
|
|
541
533
|
vim.pack.add({{ src = 'https://github.com/neovim/nvim-lspconfig', version = 'v2.10.0' }})
|
|
542
534
|
end
|
|
543
535
|
|
|
536
|
+
local fix_node_path = function()
|
|
537
|
+
return vim.env.APPDATA
|
|
538
|
+
and autocmd({ "TermLeave" }, {
|
|
539
|
+
once = true,
|
|
540
|
+
callback = function()
|
|
541
|
+
vim.fn.filecopy(vim.env.HOME .. "/.pixi/envs/neovim-lsp/node.exe",
|
|
542
|
+
vim.env.HOME .. "/.pixi/envs/neovim-lsp/bin/node.exe")
|
|
543
|
+
end
|
|
544
|
+
})
|
|
545
|
+
end
|
|
546
|
+
|
|
544
547
|
--> https://github.com/mason-org/mason-lspconfig.nvim/issues/371
|
|
545
548
|
--> https://github.com/vuejs/language-tools/issues/5381
|
|
546
549
|
vim.lsp.config['ts_ls'] = {
|
|
@@ -550,7 +553,7 @@ if not vim.g.vscode then
|
|
|
550
553
|
plugins = {
|
|
551
554
|
{
|
|
552
555
|
name = '@vue/typescript-plugin',
|
|
553
|
-
location = vim.env.
|
|
556
|
+
location = vim.env.HOME .. "/.pixi/envs/neovim-lsp/lib/node_modules/@vue/language-server/node_modules/@vue/typescript-plugin",
|
|
554
557
|
languages = { 'vue' },
|
|
555
558
|
},
|
|
556
559
|
},
|
|
@@ -570,28 +573,30 @@ if not vim.g.vscode then
|
|
|
570
573
|
vim.lsp.enable({ 'bashls', 'clangd', 'copilot', 'cssls', 'dockerls', 'emmet_language_server', 'gopls', 'html', 'kmp-lsp', 'lua_ls', 'neocmake', 'omnisharp', 'phpantom_lsp', 'prismals', 'ruff', 'rust_analyzer', 'sqls', 'taplo', 'terraformls', 'ts_ls' })
|
|
571
574
|
|
|
572
575
|
map("n", "<leader>L", "", { desc = " LSP installer" }) --- relaunch nvim to autostart the new installed lsp
|
|
573
|
-
map("n", "<leader>Lb", function() sendSequence('
|
|
574
|
-
map("n", "<leader>Lc", function() sendSequence('
|
|
575
|
-
map("n", "<leader>LC", function() sendSequence('
|
|
576
|
-
map("n", "<leader>Ld", function() sendSequence('
|
|
577
|
-
map("n", "<leader>Le", function() sendSequence('
|
|
578
|
-
map("n", "<leader>Lf", function() sendSequence('
|
|
579
|
-
map("n", "<leader>LF", function() sendSequence('
|
|
580
|
-
map("n", "<leader>Lg", function() sendSequence('
|
|
581
|
-
map("n", "<leader>Lh", function() sendSequence('
|
|
582
|
-
map("n", "<leader>Lj", function() sendSequence('
|
|
583
|
-
map("n", "<leader>Ll", function() sendSequence('
|
|
584
|
-
map("n", "<leader>
|
|
585
|
-
map("n", "<leader>
|
|
586
|
-
map("n", "<leader>
|
|
587
|
-
map("n", "<leader>
|
|
588
|
-
map("n", "<leader>
|
|
589
|
-
map("n", "<leader>
|
|
590
|
-
map("n", "<leader>
|
|
591
|
-
map("n", "<leader>
|
|
592
|
-
map("n", "<leader>
|
|
593
|
-
map("n", "<leader>
|
|
594
|
-
map("n", "<leader>
|
|
576
|
+
map("n", "<leader>Lb", function() sendSequence('pixi g install --environment neovim-lsp bash-language-server=5.6.0') fix_node_path() end, { desc = " bash" }) --- (no formatter press `=` to format selection)
|
|
577
|
+
map("n", "<leader>Lc", function() sendSequence('pixi g install --environment neovim-lsp clang-tools=22.1.0 --expose clangd') end, { desc = " c/c++" }) --- (+formatter)
|
|
578
|
+
map("n", "<leader>LC", function() sendSequence('pixi g install --environment neovim-lsp omnisharp-roslyn=1.39.12') end, { desc = " c#" }) --- (+formatter)
|
|
579
|
+
map("n", "<leader>Ld", function() sendSequence('pixi g install --environment neovim-lsp dockerfile-language-server-nodejs=0.15.0 ') fix_node_path() end, { desc = " docker" }) --- (+formatter)
|
|
580
|
+
map("n", "<leader>Le", function() sendSequence('pixi g install --environment neovim-lsp emmet-language-server=2.8.0 ') fix_node_path() end, { desc = " emmet (autoclose tag)" }) --- suggests <autoclose-this-tag> but not </close-some-open-tag> like vscode-html-language-server
|
|
581
|
+
map("n", "<leader>Lf", function() sendSequence('pixi g install pnpm nodejs && pnpm install -g oxfmt') end, { desc = " oxfmt formatter/eslint" })
|
|
582
|
+
map("n", "<leader>LF", function() sendSequence('pixi g install --environment neovim-lsp biome') end, { desc = " biome formatter/eslint" }) --- https://biomejs.dev/internals/language-support/
|
|
583
|
+
map("n", "<leader>Lg", function() sendSequence('pixi g install --environment neovim-lsp gopls=0.20.0') end, { desc = " go" }) --- (+formatter)
|
|
584
|
+
map("n", "<leader>Lh", function() sendSequence('pixi g install --environment neovim-lsp --channel retronvim phpantom_lsp=0.9.0') end, { desc = " php" }) --- (+formatter)
|
|
585
|
+
map("n", "<leader>Lj", function() sendSequence('pixi g install --environment neovim-lsp --channel retronvim kmp-lsp=0.25.0') end, { desc = " java kotlin swift" })
|
|
586
|
+
map("n", "<leader>Ll", function() sendSequence('pixi g install --environment neovim-lsp lua-language-server=3.17.1') end, { desc = " lua for " }) --- (+formatter)
|
|
587
|
+
map("n", "<leader>LL", function() sendSequence('winget install luals.lua-language-server || scoop install lua-language-server') end, { desc = " lua for " }) --- (+formatter)
|
|
588
|
+
map("n", "<leader>LM", function() sendSequence('pixi g install --environment neovim-lsp neocmakelsp=0.10.1') end, { desc = " cmake" }) --- (+formatter +linter) https://github.com/regen100/cmake-language-server doesn't have formatter nor linter
|
|
589
|
+
map("n", "<leader>Lp", function() sendSequence('pixi g install --environment neovim-lsp prisma-language-server=31.6.0') fix_node_path() end, { desc = " prisma" }) --- (+formatter)
|
|
590
|
+
map("n", "<leader>LP", function() sendSequence('pixi g install --environment neovim-lsp ty=0.0.43 ruff=0.15.16') end, { desc = " python" }) --- (-formatter) means no formatter
|
|
591
|
+
map("n", "<leader>Lr", function() sendSequence('pixi g install --environment neovim-lsp rust=1.97.1 rust-analyzer=2026.04.27') end, { desc = " rust" }) --- (+formatter)
|
|
592
|
+
map("n", "<leader>LR", function() sendSequence('pixi g install --environment neovim-lsp terraform-ls=0.38.5') fix_node_path() end, { desc = " terraform" }) --- (no formatter press `=` to format selection)
|
|
593
|
+
map("n", "<leader>Ls", function() sendSequence('pixi g install --environment neovim-lsp sql-language-server=1.7.1 vscode-jsonrpc=8.2.1') fix_node_path() end, { desc = " sqlls(-formatter +linter)" }) --- (no formatter use sqls)
|
|
594
|
+
map("n", "<leader>LS", function() sendSequence('pixi g install --environment neovim-lsp sqls=0.2.46') end, { desc = " sqls (+formatter -linter)" })
|
|
595
|
+
map("n", "<leader>Lt", function() sendSequence('pixi g install --environment neovim-lsp tailwindcss-language-server=0.14.29') fix_node_path() end, { desc = " tailwindcss" })
|
|
596
|
+
map("n", "<leader>LT", function() sendSequence('pixi g install --environment neovim-lsp taplo=0.10.0') end, { desc = " toml" }) --- (+formatter)
|
|
597
|
+
map("n", "<leader>Lx", function() sendSequence('pixi g install --environment neovim-lsp vscode-langservers-extracted=4.10.0') fix_node_path() end, { desc = " css html json" }) --- (+formatter)
|
|
598
|
+
map("n", "<leader>LX", function() sendSequence('pixi g install --environment neovim-lsp typescript=5.9.3 typescript-language-server=5.1.3 vue-language-server=3.2.8') fix_node_path() end, { desc = " " }) --- (+formatter)
|
|
599
|
+
map("n", "<leader>Ly", function() sendSequence('pixi g install --environment neovim-lsp yaml-language-server=1.21.0') fix_node_path() end, { desc = " yaml" }) --- (+formatter)
|
|
595
600
|
|
|
596
601
|
------------------------------------------------------------------------------------------------------------------------
|
|
597
602
|
|
|
@@ -633,7 +638,7 @@ if not vim.g.vscode then
|
|
|
633
638
|
"n",
|
|
634
639
|
"<leader>Ek",
|
|
635
640
|
function()
|
|
636
|
-
sendSequence("
|
|
641
|
+
sendSequence("pixi g install opencode copilot-language-server-release -c https://prefix.dev/retronvim -c conda-forge; exit")
|
|
637
642
|
vim.pack.add({{ src = 'https://github.com/folke/sidekick.nvim', version = 'v2.3.0' }})
|
|
638
643
|
autocmd({ "TermLeave" }, { once = true, command = "lsp enable copilot" })
|
|
639
644
|
require("sidekick").setup({})
|
package/package.json
CHANGED
package/pyproject.toml
CHANGED
|
@@ -4,10 +4,10 @@
|
|
|
4
4
|
# ╰────────────────────────────╯
|
|
5
5
|
|
|
6
6
|
[build-system]
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
requires = ["uv_build>=0.
|
|
10
|
-
build-backend = "uv_build"
|
|
7
|
+
requires = ["hatchling"]
|
|
8
|
+
build-backend = "hatchling.build"
|
|
9
|
+
# requires = ["uv_build>=0.12,<0.13"]
|
|
10
|
+
# build-backend = "uv_build"
|
|
11
11
|
|
|
12
12
|
[project]
|
|
13
13
|
name = "retrovim"
|
|
@@ -24,20 +24,20 @@ nvim = "nvim:main"
|
|
|
24
24
|
yazi = "yazi:main"
|
|
25
25
|
zsh = "zsh:main"
|
|
26
26
|
|
|
27
|
-
# https://docs.astral.sh/uv/concepts/build-backend/#file-inclusion-and-exclusion
|
|
28
|
-
[tool.uv.build-backend]
|
|
29
|
-
module-root = ".pip"
|
|
30
|
-
module-name = ["kanata_touchcursor", "nvim", "yazi", "zsh"]
|
|
31
|
-
data = { data = "." }
|
|
32
|
-
wheel-exclude = [".git","tests"]
|
|
27
|
+
# # https://docs.astral.sh/uv/concepts/build-backend/#file-inclusion-and-exclusion
|
|
28
|
+
# [tool.uv.build-backend]
|
|
29
|
+
# module-root = ".pip"
|
|
30
|
+
# module-name = ["kanata_touchcursor", "nvim", "yazi", "zsh"]
|
|
31
|
+
# data = { data = "." } # pip doesn't include it
|
|
32
|
+
# wheel-exclude = [".git","tests"]
|
|
33
33
|
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
34
|
+
[tool.hatch.build.targets.wheel]
|
|
35
|
+
packages = [
|
|
36
|
+
".pip/kanata_touchcursor",
|
|
37
|
+
".pip/nvim",
|
|
38
|
+
".pip/yazi",
|
|
39
|
+
".pip/zsh",
|
|
40
|
+
]
|
|
41
|
+
|
|
42
|
+
[tool.hatch.build.targets.wheel.force-include]
|
|
43
|
+
"." = "data"
|
package/yazi/keymap.toml
CHANGED
|
@@ -38,7 +38,7 @@ prepend_keymap = [
|
|
|
38
38
|
{ on = [ "g", "h" ], run = """ cd ~ """, desc = " Go home" },
|
|
39
39
|
{ on = [ "g", "g" ], run = """ arrow -9999 """, desc = " Go top" },
|
|
40
40
|
{ on = [ "g", "s" ], run = """ cd $YAZI_CONFIG_HOME/.. """, for = "unix", desc = " retrovim settings" },
|
|
41
|
-
{ on = [ "g", "s" ], run = """ cd %YAZI_CONFIG_HOME
|
|
41
|
+
{ on = [ "g", "s" ], run = """ cd %YAZI_CONFIG_HOME%/.. """, for = "windows", desc = " retrovim settings" },
|
|
42
42
|
{ on = [ "g", "r" ], run = """ plugin cd-git-root """, desc = " git root" },
|
|
43
43
|
{ on = [ "i" ], run = """ shell --block -- bat --paging always --wrap never %s """, desc = "Bat open selected" },
|
|
44
44
|
|
package/zsh/.zshrc
CHANGED
|
@@ -12,6 +12,7 @@ setopt interactive_comments # allow comment
|
|
|
12
12
|
zstyle ":completion:*" menu select # <tab><tab> to enter menu completion
|
|
13
13
|
precmd () { printf "\033]0; $(basename ${PWD/~/\~}) \a" } # tmux/wezterm CWD status/title
|
|
14
14
|
[[ "$OSTYPE" == "cygwin" ]] && export HOME="/c/Users/$USERNAME" # for git-bash / msys2 home
|
|
15
|
+
[[ "$OSTYPE" == "cygwin" ]] && export DOTEXE=".exe" # for git-bash / msys2
|
|
15
16
|
|
|
16
17
|
alias apt="sudo apt -y"
|
|
17
18
|
alias grep="grep --color=auto"
|
|
@@ -32,7 +33,7 @@ export NPM_CONFIG_PREFIX="$HOME/.local/share/npm"
|
|
|
32
33
|
export PAGER="less -R --use-color --color=d+g --color=u+r --color=Pyk --color=Syk"
|
|
33
34
|
export PNPM_HOME="$HOME/.local/share/pnpm" # $(pnpm setup)
|
|
34
35
|
export SAVEHIST=10000
|
|
35
|
-
export SHELL="zsh" # for nvim terminal if bash is the default shell
|
|
36
|
+
export SHELL="zsh$DOTEXE" # for nvim terminal if bash is the default shell
|
|
36
37
|
export STARSHIP_CONFIG="$ZDOTDIR/starship.toml"
|
|
37
38
|
export VIMINIT="lua vim.cmd.source(vim.env.ZDOTDIR .. [[/../nvim/init.lua]])" # luafile theorically is faster then `source` and `dofile`
|
|
38
39
|
export YAZI_CONFIG_HOME="$ZDOTDIR/../yazi"
|
|
@@ -41,20 +42,25 @@ export ZEROBREW_ROOT="$HOME/.local/share/zerobrew"
|
|
|
41
42
|
export ZEROBREW_PREFIX="$HOME/.local/share/zerobrew/prefix"
|
|
42
43
|
export PKG_CONFIG_PATH="$ZEROBREW_PREFIX/lib/pkgconfig:${PKG_CONFIG_PATH:-}"
|
|
43
44
|
|
|
44
|
-
export PATH="/bin:/usr/bin:$PATH"
|
|
45
45
|
export PATH="$HOME/appdata/local/mise/shims:$PATH"
|
|
46
46
|
export PATH="$HOME/.local/bin:$PATH"
|
|
47
47
|
export PATH="$HOME/.local/share/mise/shims:$PATH"
|
|
48
48
|
export PATH="$HOME/.local/share/npm/bin:$PATH"
|
|
49
|
+
export PATH="/bin:/usr/bin:$PATH" # ~/.local/bin/nvim from retronvim should search first for /bin/nvim binary
|
|
49
50
|
export PATH="$HOME/.pixi/envs/retronvim/bin:$PATH"
|
|
50
|
-
export PATH="$HOME/.pixi/envs/retronvim/Library:$PATH"
|
|
51
|
+
export PATH="$HOME/.pixi/envs/retronvim/Library/bin:$PATH"
|
|
52
|
+
export PATH="$HOME/.pixi/envs/retronvim/Library/usr/bin:$PATH"
|
|
51
53
|
export PATH="$HOME/.pixi/envs/retrovim/bin:$PATH"
|
|
52
|
-
export PATH="$HOME/.pixi/envs/retrovim/Library:$PATH"
|
|
54
|
+
export PATH="$HOME/.pixi/envs/retrovim/Library/bin:$PATH"
|
|
55
|
+
export PATH="$HOME/.pixi/envs/retrovim/Library/usr/bin:$PATH"
|
|
53
56
|
export PATH="$HOME/.pixi/bin:$PATH"
|
|
54
57
|
export PATH="$PATH:$PNPM_HOME" # $(pnpm setup)
|
|
55
58
|
export PATH="$PATH:$PNPM_HOME/global/5/node_modules/.bin" # $(pnpm approve-builds -g)
|
|
56
59
|
export PATH="$PATH:$ZEROBREW_PREFIX/bin"
|
|
57
60
|
|
|
61
|
+
[[ -e /data/data/com.termux ]] && export LD_LIBRARY_PATH="$(echo ~/.pixi/envs/*/lib | tr ' ' ':'):$LD_LIBRARY_PATH" # fixes lib**.so not found inside termux/proot-distro
|
|
62
|
+
[[ -e /data/data/com.termux ]] && export PATH="$(echo ~/.pixi/envs/*/bin | tr ' ' ':'):$PATH" # workaround for termux/proot-distro it should be before ~/.pixi/bin path
|
|
63
|
+
|
|
58
64
|
# ╭─────────────────╮
|
|
59
65
|
# │ yazi cd on exit │
|
|
60
66
|
# ╰─────────────────╯
|
|
@@ -141,5 +147,5 @@ bindkey -M viins '\el' _autosuggest_accept
|
|
|
141
147
|
>/dev/null 2>&1 which zsh-patina && eval "$(zsh-patina activate)"
|
|
142
148
|
|
|
143
149
|
# compinit should be after plugins for msys2
|
|
144
|
-
[[ -n $HOME/.cache/.zcompdump(#qNm.mh+24) ]] && compinit -d "$HOME/.cache/.zcompdump" || compinit -C -d "$HOME/.cache/.zcompdump"
|
|
150
|
+
[[ -n $HOME/.cache/.zcompdump(#qNm.mh+24) ]] && compinit -u -d "$HOME/.cache/.zcompdump" || compinit -u -C -d "$HOME/.cache/.zcompdump"
|
|
145
151
|
|