Compare commits
204 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
d42f95bbfb | ||
|
|
2f25e40b1f | ||
|
|
e8d6f03f6a | ||
|
|
3fc7a7e44a | ||
|
|
afe0466fb1 | ||
|
|
1193951beb | ||
|
|
c51fa7bc46 | ||
|
|
3d3a9152fa | ||
|
|
79d9cb4cb0 | ||
|
|
e059fae100 | ||
|
|
9180633e68 | ||
|
|
544b209a2d | ||
|
|
6e93689bde | ||
|
|
118f8e9da3 | ||
|
|
cdd934439d | ||
|
|
2ae7ffe0bc | ||
|
|
6551ace0fe | ||
|
|
b557f48982 | ||
|
|
171c5b9b03 | ||
|
|
757593c07a | ||
|
|
618e47d1cd | ||
|
|
8dabccd295 | ||
|
|
a76f3221cd | ||
|
|
b0d584d97a | ||
|
|
e34b51e95f | ||
|
|
c6d533b0ad | ||
|
|
6909639249 | ||
|
|
75dc1ed1ad | ||
|
|
be07caa071 | ||
|
|
6d626c4184 | ||
|
|
a0fddaa2f4 | ||
|
|
5e6e4042b1 | ||
|
|
a03380baa4 | ||
|
|
309ded1954 | ||
|
|
9fa35b1c38 | ||
|
|
e71e9d9ad3 | ||
|
|
c13b3d1350 | ||
|
|
20cd8699ac | ||
|
|
92997dda78 | ||
|
|
19a3bc3add | ||
|
|
6633611f42 | ||
|
|
16af913eee | ||
|
|
478668013f | ||
|
|
17befac581 | ||
|
|
ca22fc36a4 | ||
|
|
a6ab5e69d3 | ||
|
|
f6fb52b667 | ||
|
|
19968fc4ec | ||
|
|
f5d0f54790 | ||
|
|
9f29621415 | ||
|
|
72904d5fda | ||
|
|
2d0988ef93 | ||
|
|
d4376dc3eb | ||
|
|
bedc69f9d6 | ||
|
|
a055b441f5 | ||
|
|
4924ad099f | ||
|
|
787de412b8 | ||
|
|
ab9f2ecfd4 | ||
|
|
f9037f186a | ||
|
|
654bdbbd32 | ||
|
|
6ac1544e13 | ||
|
|
6cc8bc8366 | ||
|
|
8fc6a1dae0 | ||
|
|
0ffc17aa47 | ||
|
|
4b1cc7906f | ||
|
|
e1eaae27f4 | ||
|
|
25dec33c9b | ||
|
|
f244b2fbf2 | ||
|
|
b5f6fe9ca2 | ||
|
|
2b6a12af4d | ||
|
|
8b8f7d19f8 | ||
|
|
0bbc1be0a3 | ||
|
|
dbeadf05b6 | ||
|
|
6d192a4ac9 | ||
|
|
b23db545ce | ||
|
|
6235a109c4 | ||
|
|
28ae5a32fd | ||
|
|
fc3058495d | ||
|
|
c3172fe9e4 | ||
|
|
04510566b1 | ||
|
|
44a6b72d7f | ||
|
|
9994160bfe | ||
|
|
c5d2744c04 | ||
|
|
56bafd7a6a | ||
|
|
0a07646845 | ||
|
|
38ab19e00f | ||
|
|
4dd266cb66 | ||
|
|
b102728c20 | ||
|
|
e27578aee6 | ||
|
|
07a2b61d4c | ||
|
|
817db406bb | ||
|
|
442d1746f4 | ||
|
|
a5988f582e | ||
|
|
e9ef347c13 | ||
|
|
be5cdd1d63 | ||
|
|
d2af6c66fe | ||
|
|
d5475e8d8d | ||
|
|
6e940d9a1d | ||
|
|
8cfe52e6fb | ||
|
|
6e5ab2b994 | ||
|
|
008c91537b | ||
|
|
bfe377b8f2 | ||
|
|
825cf813fa | ||
|
|
b0efa49ed1 | ||
|
|
876f5fb570 | ||
|
|
e500ae8e29 | ||
|
|
2261c89a49 | ||
|
|
5a0dd71ed9 | ||
|
|
bfc461f756 | ||
|
|
ad0c442f1f | ||
|
|
4f389e7c0f | ||
|
|
4112acae08 | ||
|
|
a456b12011 | ||
|
|
20b33b56ad | ||
|
|
cf8cde2e5a | ||
|
|
8a35033782 | ||
|
|
e98fb643ec | ||
|
|
636d32b327 | ||
|
|
10f23e10a9 | ||
|
|
4868f637b8 | ||
|
|
b209b86e66 | ||
|
|
15a0a0281a | ||
|
|
7772c93a3e | ||
|
|
e4c79d3615 | ||
|
|
ba913b14dd | ||
|
|
5b0889b8bf | ||
|
|
d3515a1e88 | ||
|
|
4a8eb6e7a9 | ||
|
|
e5e4709a6a | ||
|
|
8ef1fbc0c3 | ||
|
|
badeedd913 | ||
|
|
02551c9de0 | ||
|
|
96d6c4aabe | ||
|
|
b25dbb3f9b | ||
|
|
0c6181fec4 | ||
|
|
1688938dd5 | ||
|
|
74cc13cc40 | ||
|
|
9ad1bf7afd | ||
|
|
e978b4534a | ||
|
|
9c30f43899 | ||
|
|
2f339aad6c | ||
|
|
f9c4c2f97d | ||
|
|
57a02ccf4c | ||
|
|
32f586eec1 | ||
|
|
6c313bbb04 | ||
|
|
7fe1089904 | ||
|
|
73b8209266 | ||
|
|
8878653a44 | ||
|
|
f1cc4d55b9 | ||
|
|
bacc83009b | ||
|
|
2d63e4b3cc | ||
|
|
db4fd29063 | ||
|
|
7b7b4cb6f2 | ||
|
|
f6cdab3704 | ||
|
|
288bf26c53 | ||
|
|
ca6ac99077 | ||
|
|
7e0bae024d | ||
|
|
cd4e4e169a | ||
|
|
d8f981138a | ||
|
|
5fee111149 | ||
|
|
422b9dcbfa | ||
|
|
b00df7aa38 | ||
|
|
8f5a8d8a8b | ||
|
|
21aaff3faa | ||
|
|
dd0ad25988 | ||
|
|
81b8bf5b4a | ||
|
|
6a500661a9 | ||
|
|
6efb198033 | ||
|
|
6019fed0c5 | ||
|
|
92f076e53e | ||
|
|
6ec7808c4a | ||
|
|
c41b3c9f95 | ||
|
|
1d7caa58e3 | ||
|
|
335c584940 | ||
|
|
c2bd205254 | ||
|
|
64dea84bb0 | ||
|
|
bd76c89e31 | ||
|
|
0401933a5b | ||
|
|
077ade4f67 | ||
|
|
b69b9d5e17 | ||
|
|
958e15bb1c | ||
|
|
2eb413f89b | ||
|
|
44ff25d524 | ||
|
|
7159ac7fec | ||
|
|
8967f6c4b9 | ||
|
|
a13eb2b147 | ||
|
|
8f566fdb1e | ||
|
|
84bc00e9b5 | ||
|
|
9fcde94176 | ||
|
|
ad34abee25 | ||
|
|
4c0089d696 | ||
|
|
16abd997c9 | ||
|
|
7c2beb48ef | ||
|
|
416bd916b4 | ||
|
|
80adaa8ae8 | ||
|
|
d392a74c5a | ||
|
|
e7d9ca2b3b | ||
|
|
bf5f189e44 | ||
|
|
19e6c4fd2d | ||
|
|
0256d76a33 | ||
|
|
e429893741 | ||
|
|
a2a90d5e20 | ||
|
|
590aae3557 | ||
|
|
8154e642aa |
@@ -13,7 +13,6 @@ freebsd_task:
|
||||
image_family: freebsd-12-4
|
||||
timeout_in: 20m
|
||||
install_script:
|
||||
- pkg update -f
|
||||
- pkg install -y gettext
|
||||
build_script:
|
||||
- NPROC=$(getconf _NPROCESSORS_ONLN)
|
||||
|
||||
@@ -1 +0,0 @@
|
||||
service_name: github-actions
|
||||
23
.github/CODEOWNERS
vendored
23
.github/CODEOWNERS
vendored
@@ -18,6 +18,7 @@ runtime/autoload/netrwFileHandlers.vim @cecamp
|
||||
runtime/autoload/netrwSettings.vim @cecamp
|
||||
runtime/autoload/php.vim @david-szabo97
|
||||
runtime/autoload/rubycomplete.vim @segfault @dkearns
|
||||
runtime/autoload/rust.vim @lilyball
|
||||
runtime/autoload/tar.vim @cecamp
|
||||
runtime/autoload/vimball.vim @cecamp
|
||||
runtime/autoload/xmlformat.vim @chrisbra
|
||||
@@ -150,7 +151,9 @@ runtime/ftplugin/go.vim @dbarnett
|
||||
runtime/ftplugin/gprof.vim @dpelle
|
||||
runtime/ftplugin/haml.vim @tpope
|
||||
runtime/ftplugin/hare.vim @rsaihe
|
||||
runtime/ftplugin/heex.vim @cvincent
|
||||
runtime/ftplugin/hgcommit.vim @k-takata
|
||||
runtime/ftplugin/hog.vim @wtfbbqhax
|
||||
runtime/ftplugin/html.vim @dkearns
|
||||
runtime/ftplugin/i3config.vim @hiqua
|
||||
runtime/ftplugin/icon.vim @dkearns
|
||||
@@ -180,13 +183,16 @@ runtime/ftplugin/pascal.vim @dkearns
|
||||
runtime/ftplugin/pbtxt.vim @lakshayg
|
||||
runtime/ftplugin/pdf.vim @tpope
|
||||
runtime/ftplugin/perl.vim @petdance @dkearns
|
||||
runtime/ftplugin/php.vim @dkearns
|
||||
runtime/ftplugin/pod.vim @petdance @dkearns
|
||||
runtime/ftplugin/poefilter.vim @ObserverOfTime
|
||||
runtime/ftplugin/postscr.vim @mrdubya
|
||||
runtime/ftplugin/ps1.vim @heaths
|
||||
runtime/ftplugin/ps1xml.vim @heaths
|
||||
runtime/ftplugin/pymanifest.vim @ObserverOfTime
|
||||
runtime/ftplugin/python.vim @tpict
|
||||
runtime/ftplugin/qb64.vim @dkearns
|
||||
runtime/ftplugin/qml.vim @ChaseKnowlden
|
||||
runtime/ftplugin/r.vim @jalvesaq
|
||||
runtime/ftplugin/racket.vim @benknoble
|
||||
runtime/ftplugin/readline.vim @dkearns
|
||||
@@ -197,11 +203,14 @@ runtime/ftplugin/routeros.vim @zainin
|
||||
runtime/ftplugin/rrst.vim @jalvesaq
|
||||
runtime/ftplugin/rst.vim @marshallward
|
||||
runtime/ftplugin/ruby.vim @tpope @dkearns
|
||||
runtime/ftplugin/rust.vim @lilyball
|
||||
runtime/ftplugin/sass.vim @tpope
|
||||
runtime/ftplugin/scala.vim @derekwyatt
|
||||
runtime/ftplugin/scss.vim @tpope
|
||||
runtime/ftplugin/sdoc.vim @gpanders
|
||||
runtime/ftplugin/sed.vim @dkearns
|
||||
runtime/ftplugin/sh.vim @dkearns
|
||||
runtime/ftplugin/solidity.vim @cothi
|
||||
runtime/ftplugin/solution.vim @dkearns
|
||||
runtime/ftplugin/spec.vim @ignatenkobrain
|
||||
runtime/ftplugin/ssa.vim @ObserverOfTime
|
||||
@@ -215,6 +224,7 @@ runtime/ftplugin/toml.vim @averms
|
||||
runtime/ftplugin/tt2html.vim @petdance
|
||||
runtime/ftplugin/typescript.vim @dkearns
|
||||
runtime/ftplugin/typescriptreact.vim @dkearns
|
||||
runtime/ftplugin/unison.vim @chuwy
|
||||
runtime/ftplugin/vdf.vim @ObserverOfTime
|
||||
runtime/ftplugin/wast.vim @rhysd
|
||||
runtime/ftplugin/wget.vim @dkearns
|
||||
@@ -251,6 +261,7 @@ runtime/indent/go.vim @dbarnett
|
||||
runtime/indent/gyp.vim @ObserverOfTime
|
||||
runtime/indent/haml.vim @tpope
|
||||
runtime/indent/hare.vim @rsaihe
|
||||
runtime/indent/hog.vim @wtfbbqhax
|
||||
runtime/indent/idlang.vim @dkearns
|
||||
runtime/indent/j.vim @glts
|
||||
runtime/indent/java.vim @xuhdev
|
||||
@@ -258,6 +269,7 @@ runtime/indent/javascript.vim @bounceme
|
||||
runtime/indent/json.vim @elzr
|
||||
runtime/indent/jsonc.vim @izhakjakov
|
||||
runtime/indent/julia.vim @carlobaldassi
|
||||
runtime/indent/krl.vim @KnoP-01
|
||||
runtime/indent/ld.vim @dkearns
|
||||
runtime/indent/less.vim @genoma
|
||||
runtime/indent/liquid.vim @tpope
|
||||
@@ -274,8 +286,10 @@ runtime/indent/postscr.vim @mrdubya
|
||||
runtime/indent/prolog.vim @dkearns
|
||||
runtime/indent/ps1.vim @heaths
|
||||
runtime/indent/qb64.vim @dkearns
|
||||
runtime/indent/qml.vim @ChaseKnowlden
|
||||
runtime/indent/r.vim @jalvesaq
|
||||
runtime/indent/racket.vim @benknoble
|
||||
runtime/indent/rapid.vim @KnoP-01
|
||||
runtime/indent/readline.vim @dkearns
|
||||
runtime/indent/rhelp.vim @jalvesaq
|
||||
runtime/indent/rmd.vim @jalvesaq
|
||||
@@ -286,6 +300,7 @@ runtime/indent/sass.vim @tpope
|
||||
runtime/indent/scala.vim @derekwyatt
|
||||
runtime/indent/scss.vim @tpope
|
||||
runtime/indent/sh.vim @chrisbra
|
||||
runtime/indent/solidity.vim @cothi
|
||||
runtime/indent/systemverilog.vim @Kocha
|
||||
runtime/indent/tcl.vim @dkearns
|
||||
runtime/indent/tcsh.vim @dkearns
|
||||
@@ -369,6 +384,7 @@ runtime/syntax/gitolite.vim @sitaramc
|
||||
runtime/syntax/gitrebase.vim @tpope
|
||||
runtime/syntax/go.vim @bhcleek
|
||||
runtime/syntax/godoc.vim @dbarnett
|
||||
runtime/syntax/gp.vim @KBelabas
|
||||
runtime/syntax/gprof.vim @dpelle
|
||||
runtime/syntax/groff.vim @jmarshall
|
||||
runtime/syntax/gyp.vim @ObserverOfTime
|
||||
@@ -377,6 +393,7 @@ runtime/syntax/hare.vim @rsaihe
|
||||
runtime/syntax/haskell.vim @coot
|
||||
runtime/syntax/hgcommit.vim @k-takata
|
||||
runtime/syntax/hitest.vim @lacygoill
|
||||
runtime/syntax/hog.vim @wtfbbqhax
|
||||
runtime/syntax/hollywood.vim @sodero
|
||||
runtime/syntax/html.vim @dkearns
|
||||
runtime/syntax/i3config.vim @hiqua
|
||||
@@ -389,6 +406,7 @@ runtime/syntax/javascript.vim @fleiner
|
||||
runtime/syntax/jsonc.vim @izhakjakov
|
||||
runtime/syntax/julia.vim @carlobaldassi
|
||||
runtime/syntax/kconfig.vim @chrisbra
|
||||
runtime/syntax/krl.vim @KnoP-01
|
||||
runtime/syntax/less.vim @genoma
|
||||
runtime/syntax/lex.vim @cecamp
|
||||
runtime/syntax/liquid.vim @tpope
|
||||
@@ -428,10 +446,13 @@ runtime/syntax/prolog.vim @XVilka
|
||||
runtime/syntax/ps1.vim @heaths
|
||||
runtime/syntax/ps1xml.vim @heaths
|
||||
runtime/syntax/psl.vim @danielkho
|
||||
runtime/syntax/pymanifest.vim @ObserverOfTime
|
||||
runtime/syntax/qb64.vim @dkearns
|
||||
runtime/syntax/qml.vim @ChaseKnowlden
|
||||
runtime/syntax/r.vim @jalvesaq
|
||||
runtime/syntax/racket.vim @benknoble
|
||||
runtime/syntax/raml.vim @in3d
|
||||
runtime/syntax/rapid.vim @KnoP-01
|
||||
runtime/syntax/ratpoison.vim @trapd00r
|
||||
runtime/syntax/rc.vim @chrisbra
|
||||
runtime/syntax/rcs.vim @hdima
|
||||
@@ -452,6 +473,7 @@ runtime/syntax/sdoc.vim @gpanders
|
||||
runtime/syntax/sed.vim @dkearns
|
||||
runtime/syntax/sh.vim @cecamp
|
||||
runtime/syntax/sm.vim @cecamp
|
||||
runtime/syntax/solidity.vim @cothi
|
||||
runtime/syntax/spec.vim @ignatenkobrain
|
||||
runtime/syntax/sqloracle.vim @chrisbra
|
||||
runtime/syntax/squirrel.vim @zenmatic
|
||||
@@ -477,6 +499,7 @@ runtime/syntax/tt2js.vim @petdance
|
||||
runtime/syntax/typescript.vim @HerringtonDarkholme
|
||||
runtime/syntax/typescriptcommon.vim @HerringtonDarkholme
|
||||
runtime/syntax/typescriptreact.vim @HerringtonDarkholme
|
||||
runtime/syntax/unison.vim @chuwy
|
||||
runtime/syntax/vdf.vim @ObserverOfTime
|
||||
runtime/syntax/vim.vim @cecamp
|
||||
runtime/syntax/vroom.vim @dbarnett
|
||||
|
||||
60
.github/labeler.yml
vendored
Normal file
60
.github/labeler.yml
vendored
Normal file
@@ -0,0 +1,60 @@
|
||||
# list of labels and minimatch globs to match to apply the label.
|
||||
|
||||
CI:
|
||||
- any: ['.cirrus.yml']
|
||||
- any: ['.github/dependabot.yml']
|
||||
- any: ['.github/labeler.yml']
|
||||
- any: ['.github/workflows/*']
|
||||
- any: ['.appveyor.yml']
|
||||
- any: ['.codecov.yml']
|
||||
|
||||
translation:
|
||||
- any: ['src/po/*.po']
|
||||
|
||||
if_lua:
|
||||
- any: ['src/if_lua.c']
|
||||
- any: ['src/proto/if_lua.pro']
|
||||
- any: ['runtime/doc/if_lua.txt']
|
||||
|
||||
if_mzscheme:
|
||||
- any: ['src/if_mzsch.c']
|
||||
- any: ['src/if_mzsch.h']
|
||||
- any: ['src/proto/if_mzsch.pro']
|
||||
- any: ['runtime/doc/if_mzsch.txt']
|
||||
|
||||
if_perl:
|
||||
- any: ['src/if_perl.xs']
|
||||
- any: ['src/if_perlsfio.c']
|
||||
- any: ['src/proto/if_perl.pro']
|
||||
- any: ['src/proto/if_perlsfio.pro']
|
||||
- any: ['runtime/doc/if_perl.txt']
|
||||
|
||||
if_python:
|
||||
- any: ['src/if_py_both.h']
|
||||
- any: ['runtime/doc/if_pyth.txt']
|
||||
- any: ['src/if_python.c']
|
||||
- any: ['src/if_python3.c']
|
||||
- any: ['src/proto/if_python.pro']
|
||||
- any: ['src/proto/if_python3.pro']
|
||||
|
||||
if_ruby:
|
||||
- any: ['src/if_ruby.c']
|
||||
- any: ['src/proto/if_ruby.pro']
|
||||
- any: ['runtime/doc/if_ruby.txt']
|
||||
|
||||
if_tcl:
|
||||
- any: ['src/if_tcl.c']
|
||||
- any: ['src/proto/if_tcl.pro']
|
||||
- any: ['runtime/doc/if_tcl.txt']
|
||||
|
||||
runtime:
|
||||
- any: ['runtime/ftplugin']
|
||||
- any: ['runtime/syntax']
|
||||
- any: ['runtime/indent']
|
||||
- any: ['runtime/pack/dist/opt/termdebug/plugin/termdebug.vim']
|
||||
|
||||
termdebug: runtime/pack/dist/opt/termdebug/plugin/termdebug.vim
|
||||
|
||||
netrw:
|
||||
- any: ['runtime/plugin/netrwPlugin.vim']
|
||||
- any: ['runtime/autoload/netrw*']
|
||||
61
.github/workflows/ci.yml
vendored
61
.github/workflows/ci.yml
vendored
@@ -38,6 +38,7 @@ jobs:
|
||||
features: [tiny, normal, huge]
|
||||
compiler: [clang, gcc]
|
||||
extra: [none]
|
||||
luaver: [lua5.4]
|
||||
include:
|
||||
- features: tiny
|
||||
compiler: clang
|
||||
@@ -49,18 +50,29 @@ jobs:
|
||||
shadow: ./src/shadow
|
||||
- features: huge
|
||||
coverage: true
|
||||
- features: huge
|
||||
compiler: clang
|
||||
extra: none
|
||||
interface: dynamic
|
||||
python3: stable-abi
|
||||
- features: huge
|
||||
compiler: gcc
|
||||
coverage: true
|
||||
interface: dynamic
|
||||
extra: testgui
|
||||
uchar: true
|
||||
luaver: lua5.4
|
||||
- features: huge
|
||||
compiler: clang
|
||||
extra: asan
|
||||
# Lua5.1 is the most widely used version (since it's what LuaJIT is
|
||||
# compatible with), so ensure it works
|
||||
luaver: lua5.1
|
||||
- features: huge
|
||||
compiler: gcc
|
||||
coverage: true
|
||||
extra: unittests
|
||||
luaver: lua5.4
|
||||
- features: normal
|
||||
compiler: gcc
|
||||
extra: vimtags
|
||||
@@ -85,8 +97,8 @@ jobs:
|
||||
libperl-dev \
|
||||
python2-dev \
|
||||
python3-dev \
|
||||
liblua5.4-dev \
|
||||
lua5.4 \
|
||||
lib${{ matrix.luaver }}-dev \
|
||||
${{ matrix.luaver }} \
|
||||
ruby-dev \
|
||||
tcl-dev \
|
||||
cscope \
|
||||
@@ -135,7 +147,16 @@ jobs:
|
||||
;;
|
||||
huge)
|
||||
echo "TEST=scripttests test_libvterm"
|
||||
echo "CONFOPT=--enable-perlinterp --enable-pythoninterp --enable-python3interp --enable-rubyinterp --enable-luainterp --enable-tclinterp"
|
||||
if ${{ matrix.interface == 'dynamic' }}; then
|
||||
if ${{ matrix.python3 == 'stable-abi' }}; then
|
||||
PYTHON3_FLAGS="--with-python3-stable-abi=3.8"
|
||||
else
|
||||
PYTHON3_FLAGS=""
|
||||
fi
|
||||
echo "CONFOPT=--enable-perlinterp=dynamic --enable-pythoninterp=dynamic --enable-python3interp=dynamic --enable-rubyinterp=dynamic --enable-luainterp=dynamic --enable-tclinterp=dynamic ${PYTHON3_FLAGS}"
|
||||
else
|
||||
echo "CONFOPT=--enable-perlinterp --enable-pythoninterp --enable-python3interp --enable-rubyinterp --enable-luainterp --enable-tclinterp"
|
||||
fi
|
||||
;;
|
||||
esac
|
||||
|
||||
@@ -178,17 +199,16 @@ jobs:
|
||||
if: (!(contains(matrix.extra, 'unittests') || contains(matrix.extra, 'vimtags')))
|
||||
env:
|
||||
DEST_DIR: ${{ env.TMPDIR }}/linux-modules-extra-${{ env.LINUX_VERSION }}
|
||||
uses: tecolicom/actions-use-apt-tools@main
|
||||
with:
|
||||
tools: linux-modules-extra-${{ env.LINUX_VERSION }}
|
||||
path: "${DEST_DIR}"
|
||||
|
||||
- name: modprobe snd-dummy
|
||||
if: (!(contains(matrix.extra, 'unittests') || contains(matrix.extra, 'vimtags')))
|
||||
run: |
|
||||
cd /lib/modules/${{ env.LINUX_VERSION }}
|
||||
if apt-cache show linux-modules-extra-${{ env.LINUX_VERSION }} >/dev/null 2>&1 ; then
|
||||
sudo apt-get install -d -y linux-modules-extra-${{ env.LINUX_VERSION }}
|
||||
sudo dpkg -x /var/cache/apt/archives/linux-modules-extra-${{ env.LINUX_VERSION }}*.deb "${DEST_DIR}"
|
||||
tar -cvC "${DEST_DIR}"/lib/modules/${{ env.LINUX_VERSION }} kernel/sound | sudo tar -x
|
||||
sudo depmod --verbose
|
||||
sudo modprobe --verbose snd-dummy
|
||||
else
|
||||
echo "Module " linux-modules-extra-${{ env.LINUX_VERSION }} "doesn't seem to exist, continue anyway"; exit 0
|
||||
fi
|
||||
|
||||
- name: Check autoconf
|
||||
if: contains(matrix.extra, 'unittests')
|
||||
@@ -226,7 +246,7 @@ jobs:
|
||||
"${SRCDIR}"/vim -u NONE -i NONE --not-a-term -esNX -V1 -S ci/if_ver-2.vim -c quit
|
||||
|
||||
- name: Test
|
||||
timeout-minutes: 20
|
||||
timeout-minutes: 25
|
||||
run: |
|
||||
do_test() { sg audio "sg $(id -gn) '$*'"; }
|
||||
do_test make ${SHADOWOPT} ${TEST}
|
||||
@@ -276,7 +296,6 @@ jobs:
|
||||
run: |
|
||||
brew install lua
|
||||
echo "LUA_PREFIX=/usr/local" >> $GITHUB_ENV
|
||||
brew uninstall perl
|
||||
|
||||
- name: Set up environment
|
||||
run: |
|
||||
@@ -365,8 +384,8 @@ jobs:
|
||||
fail-fast: false
|
||||
matrix:
|
||||
include:
|
||||
- { features: HUGE, toolchain: msvc, VIMDLL: no, GUI: no, arch: x64 }
|
||||
- { features: HUGE, toolchain: mingw, VIMDLL: yes, GUI: yes, arch: x86, coverage: yes }
|
||||
- { features: HUGE, toolchain: msvc, VIMDLL: no, GUI: no, arch: x64, python3: stable }
|
||||
- { features: HUGE, toolchain: mingw, VIMDLL: yes, GUI: yes, arch: x86, python3: stable, coverage: yes }
|
||||
- { features: HUGE, toolchain: msvc, VIMDLL: no, GUI: yes, arch: x86 }
|
||||
- { features: HUGE, toolchain: mingw, VIMDLL: yes, GUI: no, arch: x64, coverage: yes }
|
||||
- { features: NORMAL, toolchain: msvc, VIMDLL: yes, GUI: no, arch: x86 }
|
||||
@@ -497,6 +516,11 @@ jobs:
|
||||
) else (
|
||||
set GUI=${{ matrix.GUI }}
|
||||
)
|
||||
if "${{ matrix.python3 }}"=="stable" (
|
||||
set PYTHON3_STABLE=yes
|
||||
) else (
|
||||
set PYTHON3_STABLE=no
|
||||
)
|
||||
if "${{ matrix.features }}"=="HUGE" (
|
||||
nmake -nologo -f Make_mvc.mak ^
|
||||
FEATURES=${{ matrix.features }} ^
|
||||
@@ -504,6 +528,7 @@ jobs:
|
||||
DYNAMIC_LUA=yes LUA=%LUA_DIR% ^
|
||||
DYNAMIC_PYTHON=yes PYTHON=%PYTHON_DIR% ^
|
||||
DYNAMIC_PYTHON3=yes PYTHON3=%PYTHON3_DIR% ^
|
||||
DYNAMIC_PYTHON3_STABLE_ABI=%PYTHON3_STABLE% ^
|
||||
DYNAMIC_SODIUM=yes SODIUM=%SODIUM_DIR%
|
||||
) else (
|
||||
nmake -nologo -f Make_mvc.mak ^
|
||||
@@ -521,6 +546,11 @@ jobs:
|
||||
else
|
||||
GUI=${{ matrix.GUI }}
|
||||
fi
|
||||
if [ "${{ matrix.python3 }}" = "stable" ]; then
|
||||
PYTHON3_STABLE=yes
|
||||
else
|
||||
PYTHON3_STABLE=no
|
||||
fi
|
||||
if [ "${{ matrix.features }}" = "HUGE" ]; then
|
||||
mingw32-make -f Make_ming.mak -j2 \
|
||||
FEATURES=${{ matrix.features }} \
|
||||
@@ -528,6 +558,7 @@ jobs:
|
||||
DYNAMIC_LUA=yes LUA=${LUA_DIR_SLASH} \
|
||||
DYNAMIC_PYTHON=yes PYTHON=${PYTHON_DIR} \
|
||||
DYNAMIC_PYTHON3=yes PYTHON3=${PYTHON3_DIR} \
|
||||
DYNAMIC_PYTHON3_STABLE_ABI=${PYTHON3_STABLE} \
|
||||
DYNAMIC_SODIUM=yes SODIUM=${SODIUM_DIR} \
|
||||
STATIC_STDCPLUS=yes COVERAGE=${{ matrix.coverage }}
|
||||
else
|
||||
|
||||
24
.github/workflows/label.yml
vendored
Normal file
24
.github/workflows/label.yml
vendored
Normal file
@@ -0,0 +1,24 @@
|
||||
# This workflow will triage pull requests and apply a label based on the
|
||||
# paths that are modified in the pull request.
|
||||
#
|
||||
# To use this workflow, you will need to set up a .github/labeler.yml
|
||||
# file with configuration. For more information, see:
|
||||
# https://github.com/actions/labeler
|
||||
|
||||
name: Labeler
|
||||
on: [pull_request_target]
|
||||
|
||||
jobs:
|
||||
label:
|
||||
|
||||
runs-on: ubuntu-latest
|
||||
permissions:
|
||||
contents: read
|
||||
pull-requests: write
|
||||
|
||||
steps:
|
||||
- uses: actions/labeler@v4
|
||||
with:
|
||||
repo-token: "${{ secrets.GITHUB_TOKEN }}"
|
||||
configuration-path: .github/labeler.yml
|
||||
sync-labels: ''
|
||||
4
LICENSE
4
LICENSE
@@ -21,8 +21,8 @@ II) It is allowed to distribute a modified (or extended) version of Vim,
|
||||
maintainer will do with your changes and under what license they
|
||||
will be distributed is negotiable. If there has been no negotiation
|
||||
then this license, or a later version, also applies to your changes.
|
||||
The current maintainer is Bram Moolenaar <Bram@vim.org>. If this
|
||||
changes it will be announced in appropriate places (most likely
|
||||
The current maintainers are listed here: https://github.com/orgs/vim/people.
|
||||
If this changes it will be announced in appropriate places (most likely
|
||||
vim.sf.net, www.vim.org and/or comp.editors). When it is completely
|
||||
impossible to contact the maintainer, the obligation to send him
|
||||
your changes ceases. Once the maintainer has confirmed that he has
|
||||
|
||||
79
README.md
79
README.md
@@ -1,17 +1,21 @@
|
||||
[](https://www.vim.org)
|
||||
# [](https://www.vim.org)
|
||||
|
||||
[](https://github.com/vim/vim/actions?query=workflow%3A%22GitHub+CI%22) [](https://ci.appveyor.com/project/chrisbra/vim) [](https://cirrus-ci.com/github/vim/vim) [](https://codecov.io/gh/vim/vim?branch=master) [](https://scan.coverity.com/projects/vim) [](https://buildd.debian.org/vim) [](https://repology.org/metapackage/vim) [](https://fossies.org/linux/test/vim-master.tar.gz/codespell.html)
|
||||
|
||||
<sub>For translations of this README see the end.</sub>
|
||||
[](https://github.com/vim/vim/actions?query=workflow%3A%22GitHub+CI%22)
|
||||
[](https://ci.appveyor.com/project/chrisbra/vim)
|
||||
[](https://cirrus-ci.com/github/vim/vim)
|
||||
[](https://codecov.io/gh/vim/vim?branch=master)
|
||||
[](https://scan.coverity.com/projects/vim)
|
||||
[](https://buildd.debian.org/vim)
|
||||
[](https://repology.org/metapackage/vim)
|
||||
[](https://fossies.org/linux/test/vim-master.tar.gz/codespell.html)
|
||||
|
||||
If you find a bug or want to discuss the best way to add a new feature, please
|
||||
open an [issue](https://github.com/vim/vim/issues).
|
||||
[open an issue](https://github.com/vim/vim/issues/new/choose).
|
||||
If you have a question or want to discuss the best way to do something with
|
||||
Vim, you can use [StackExchange](https://vi.stackexchange.com/)
|
||||
or one of the [Maillists](https://www.vim.org/community.php).
|
||||
|
||||
|
||||
## What is Vim? ##
|
||||
## What is Vim?
|
||||
|
||||
Vim is a greatly improved version of the good old UNIX editor
|
||||
[Vi](https://en.wikipedia.org/wiki/Vi). Many new
|
||||
@@ -35,7 +39,7 @@ Amiga DOS, Atari MiNT, BeOS, RISC OS and OS/2. These are no longer maintained.
|
||||
|
||||
For Vim9 script see [README_VIM9](README_VIM9.md).
|
||||
|
||||
## Distribution ##
|
||||
## Distribution
|
||||
|
||||
You can often use your favorite package manager to install Vim. On Mac and
|
||||
Linux a small version of Vim is pre-installed, you still need to install Vim
|
||||
@@ -55,48 +59,45 @@ Some popular places to get the latest Vim:
|
||||
* Get a Windows executable from the
|
||||
[vim-win32-installer](https://github.com/vim/vim-win32-installer/releases) repository.
|
||||
|
||||
|
||||
|
||||
## Compiling ##
|
||||
## Compiling
|
||||
|
||||
If you obtained a binary distribution you don't need to compile Vim. If you
|
||||
obtained a source distribution, all the stuff for compiling Vim is in the
|
||||
[`src`](/src) directory. See [`src/INSTALL`](src/INSTALL) for instructions.
|
||||
[`src`](./src/) directory. See [`src/INSTALL`](./src/INSTALL) for instructions.
|
||||
|
||||
|
||||
## Installation ##
|
||||
## Installation
|
||||
|
||||
See one of these files for system-specific instructions. Either in the
|
||||
[READMEdir directory](./READMEdir/) (in the repository) or
|
||||
the top directory (if you unpack an archive):
|
||||
|
||||
README_ami.txt Amiga
|
||||
README_unix.txt Unix
|
||||
README_dos.txt MS-DOS and MS-Windows
|
||||
README_mac.txt Macintosh
|
||||
README_haiku.txt Haiku
|
||||
README_vms.txt VMS
|
||||
```
|
||||
README_ami.txt Amiga
|
||||
README_unix.txt Unix
|
||||
README_dos.txt MS-DOS and MS-Windows
|
||||
README_mac.txt Macintosh
|
||||
README_haiku.txt Haiku
|
||||
README_vms.txt VMS
|
||||
```
|
||||
|
||||
There are other `README_*.txt` files, depending on the distribution you used.
|
||||
|
||||
|
||||
## Documentation ##
|
||||
## Documentation
|
||||
|
||||
The Vim tutor is a one hour training course for beginners. Often it can be
|
||||
started as `vimtutor`. See `:help tutor` for more information.
|
||||
|
||||
The best is to use `:help` in Vim. If you don't have an executable yet, read
|
||||
[`runtime/doc/help.txt`](/runtime/doc/help.txt).
|
||||
[`runtime/doc/help.txt`](./runtime/doc/help.txt).
|
||||
It contains pointers to the other documentation files.
|
||||
The User Manual reads like a book and is recommended to learn to use
|
||||
Vim. See `:help user-manual`.
|
||||
|
||||
|
||||
## Copying ##
|
||||
## Copying
|
||||
|
||||
Vim is Charityware. You can use and copy it as much as you like, but you are
|
||||
encouraged to make a donation to help orphans in Uganda. Please read the file
|
||||
[`runtime/doc/uganda.txt`](runtime/doc/uganda.txt)
|
||||
[`runtime/doc/uganda.txt`](./runtime/doc/uganda.txt)
|
||||
for details (do `:help uganda` inside Vim).
|
||||
|
||||
Summary of the license: There are no restrictions on using or distributing an
|
||||
@@ -105,28 +106,25 @@ text must always be included. For modified versions, a few restrictions apply.
|
||||
The license is GPL compatible, you may compile Vim with GPL libraries and
|
||||
distribute it.
|
||||
|
||||
|
||||
## Sponsoring ##
|
||||
## Sponsoring
|
||||
|
||||
Fixing bugs and adding new features takes a lot of time and effort. To show
|
||||
your appreciation for the work and motivate Bram and others to continue
|
||||
working on Vim please send a donation.
|
||||
|
||||
Since Bram is back to a paid job the money will now be used to help children
|
||||
in Uganda. See [`runtime/doc/uganda.txt`](runtime/doc/uganda.txt). But
|
||||
in Uganda. See [`runtime/doc/uganda.txt`](./runtime/doc/uganda.txt). But
|
||||
at the same time donations increase Bram's motivation to keep working on Vim!
|
||||
|
||||
For the most recent information about sponsoring look on the Vim web site:
|
||||
https://www.vim.org/sponsor/
|
||||
|
||||
|
||||
## Contributing ##
|
||||
## Contributing
|
||||
|
||||
If you would like to help make Vim better, see the
|
||||
[CONTRIBUTING.md](/CONTRIBUTING.md) file.
|
||||
[CONTRIBUTING.md](./CONTRIBUTING.md) file.
|
||||
|
||||
|
||||
## Information ##
|
||||
## Information
|
||||
|
||||
If you are on macOS, you can use [Macvim](https://macvim-dev.github.io/macvim/).
|
||||
|
||||
@@ -141,14 +139,15 @@ If you still have problems or any other questions, use one of the mailing
|
||||
lists to discuss them with Vim users and developers:
|
||||
https://www.vim.org/maillist.php
|
||||
|
||||
If nothing else works, report bugs directly:
|
||||
Bram Moolenaar <Bram@vim.org>
|
||||
If nothing else works, report bugs directly to the vim-dev mailing list:
|
||||
`<vim-dev@vim.org>`
|
||||
|
||||
## Main author
|
||||
|
||||
## Main author ##
|
||||
|
||||
Send any other comments, patches, flowers and suggestions to:
|
||||
Bram Moolenaar <Bram@vim.org>
|
||||
Most of Vim was created by Bram Moolenaar `<Bram@vim.org>`
|
||||
[Bram-Moolenaar](https://vimhelp.org/version9.txt.html#Bram-Moolenaar)
|
||||
|
||||
Send any other comments, patches, flowers and suggestions to the vim-dev mailing list:
|
||||
`<vim-dev@vim.org>`
|
||||
|
||||
This is `README.md` for version 9.0 of Vim: Vi IMproved.
|
||||
|
||||
10
README.txt
10
README.txt
@@ -122,12 +122,14 @@ If you still have problems or any other questions, use one of the mailing
|
||||
lists to discuss them with Vim users and developers:
|
||||
https://www.vim.org/maillist.php
|
||||
|
||||
If nothing else works, report bugs directly:
|
||||
Bram Moolenaar <Bram@vim.org>
|
||||
If nothing else works, report bugs directly to the vim-dev mailing list:
|
||||
<vim-dev@vim.org>
|
||||
|
||||
|
||||
MAIN AUTHOR
|
||||
|
||||
Send any other comments, patches, flowers and suggestions to:
|
||||
Most of Vim was created by Bram Moolenaar <Bram@vim.org> |Bram-Moolenaar|
|
||||
|
||||
Bram Moolenaar E-mail: Bram@vim.org
|
||||
Send any other comments, patches, flowers and suggestions to the vim-dev mailing list:
|
||||
|
||||
<vim-dev@vim.org>
|
||||
|
||||
8
SECURITY.md
Normal file
8
SECURITY.md
Normal file
@@ -0,0 +1,8 @@
|
||||
# Security Policy
|
||||
|
||||
## Reporting a vulnerability
|
||||
|
||||
If you want to report a security issue, please use [huntr.dev](https://huntr.dev/bounties/disclose?target=https%3A%2F%2Fgithub.com%2Fvim%2Fvim) to privately disclose the issue to us.
|
||||
They also have rewards in the form of money, swag and CVEs.
|
||||
|
||||
**Please don't publicly disclose the issue until it has been addressed by us.**
|
||||
@@ -1,3 +1,3 @@
|
||||
/^CFLAGS[[:blank:]]*=/s/$/ -Wall -Wextra -Wshadow -Werror/
|
||||
/^PERL_CFLAGS_EXTRA[[:blank:]]*=/s/$/ -Wno-error=unused-function/
|
||||
/^PERL_CFLAGS_EXTRA[[:blank:]]*=/s/$/ -Wno-error=unused-function -Wno-shadow/
|
||||
/^RUBY_CFLAGS_EXTRA[[:blank:]]*=/s/$/ -Wno-error=unused-parameter/
|
||||
|
||||
@@ -1,10 +1,11 @@
|
||||
vim9script noclear
|
||||
|
||||
# Vim completion script
|
||||
# Language: C
|
||||
# Maintainer: Bram Moolenaar <Bram@vim.org>
|
||||
# Language: C
|
||||
# Maintainer: The Vim Project <https://github.com/vim/vim>
|
||||
# Last Change: 2023 Aug 10
|
||||
# Rewritten in Vim9 script by github user lacygoill
|
||||
# Last Change: 2022 Jan 31
|
||||
# Former Maintainer: Bram Moolenaar <Bram@vim.org>
|
||||
|
||||
var prepended: string
|
||||
var grepCache: dict<list<dict<any>>>
|
||||
|
||||
50
runtime/autoload/dist/ft.vim
vendored
50
runtime/autoload/dist/ft.vim
vendored
@@ -2,8 +2,9 @@ vim9script
|
||||
|
||||
# Vim functions for file type detection
|
||||
#
|
||||
# Maintainer: Bram Moolenaar <Bram@vim.org>
|
||||
# Last Change: 2023 Jun 09
|
||||
# Maintainer: The Vim Project <https://github.com/vim/vim>
|
||||
# Last Change: 2023 Aug 10
|
||||
# Former Maintainer: Bram Moolenaar <Bram@vim.org>
|
||||
|
||||
# These functions are moved here from runtime/filetype.vim to make startup
|
||||
# faster.
|
||||
@@ -286,6 +287,37 @@ export def FTe()
|
||||
endif
|
||||
enddef
|
||||
|
||||
def IsForth(): bool
|
||||
var first_line = nextnonblank(1)
|
||||
|
||||
# SwiftForth block comment (line is usually filled with '-' or '=') or
|
||||
# OPTIONAL (sometimes precedes the header comment)
|
||||
if getline(first_line) =~? '^\%({\%(\s\|$\)\|OPTIONAL\s\)'
|
||||
return true
|
||||
endif
|
||||
|
||||
var n = first_line
|
||||
while n < 100 && n <= line("$")
|
||||
# Forth comments and colon definitions
|
||||
if getline(n) =~ '^[:(\\] '
|
||||
return true
|
||||
endif
|
||||
n += 1
|
||||
endwhile
|
||||
return false
|
||||
enddef
|
||||
|
||||
# Distinguish between Forth and Fortran
|
||||
export def FTf()
|
||||
if exists("g:filetype_f")
|
||||
exe "setf " .. g:filetype_f
|
||||
elseif IsForth()
|
||||
setf forth
|
||||
else
|
||||
setf fortran
|
||||
endif
|
||||
enddef
|
||||
|
||||
export def FTfrm()
|
||||
if exists("g:filetype_frm")
|
||||
exe "setf " .. g:filetype_frm
|
||||
@@ -301,21 +333,13 @@ export def FTfrm()
|
||||
endif
|
||||
enddef
|
||||
|
||||
# Distinguish between Forth and F#.
|
||||
# Provided by Doug Kearns.
|
||||
# Distinguish between Forth and F#
|
||||
export def FTfs()
|
||||
if exists("g:filetype_fs")
|
||||
exe "setf " .. g:filetype_fs
|
||||
elseif IsForth()
|
||||
setf forth
|
||||
else
|
||||
var n = 1
|
||||
while n < 100 && n <= line("$")
|
||||
# Forth comments and colon definitions
|
||||
if getline(n) =~ "^[:(\\\\] "
|
||||
setf forth
|
||||
return
|
||||
endif
|
||||
n += 1
|
||||
endwhile
|
||||
setf fsharp
|
||||
endif
|
||||
enddef
|
||||
|
||||
90
runtime/autoload/dist/man.vim
vendored
90
runtime/autoload/dist/man.vim
vendored
@@ -1,9 +1,9 @@
|
||||
" Vim filetype plugin autoload file
|
||||
" Language: man
|
||||
" Maintainer: Jason Franklin <vim@justemail.net>
|
||||
" Maintainer: Jason Franklin <jason@oneway.dev>
|
||||
" Maintainer: SungHyun Nam <goweol@gmail.com>
|
||||
" Autoload Split: Bram Moolenaar
|
||||
" Last Change: 2022 Jun 18
|
||||
" Last Change: 2023 Jun 28
|
||||
|
||||
let s:cpo_save = &cpo
|
||||
set cpo-=C
|
||||
@@ -21,31 +21,65 @@ catch /E145:/
|
||||
" Ignore the error in restricted mode
|
||||
endtry
|
||||
|
||||
func s:ParseIntoPageAndSection()
|
||||
" Accommodate a reference that terminates in a hyphen.
|
||||
"
|
||||
" See init_charset_table() at
|
||||
" https://git.savannah.gnu.org/cgit/groff.git/tree/src/roff/troff/input.cpp?h=1.22.4#n6794
|
||||
"
|
||||
" See can_break_after() at
|
||||
" https://git.savannah.gnu.org/cgit/groff.git/tree/src/roff/troff/charinfo.h?h=1.22.4#n140
|
||||
"
|
||||
" Assumptions and limitations:
|
||||
" 1) Manual-page references (in consequence of command-related filenames)
|
||||
" do not contain non-ASCII HYPHENs (0x2010), any terminating HYPHEN
|
||||
" must have been introduced to mark division of a word at the end of
|
||||
" a line and can be discarded; whereas similar references may contain
|
||||
" ASCII HYPHEN-MINUSes (0x002d) and any terminating HYPHEN-MINUS forms
|
||||
" a compound word in addition to marking word division.
|
||||
" 2) Well-formed manual-page references always have a section suffix, e.g.
|
||||
" "git-commit(1)", therefore suspended hyphenated compounds are not
|
||||
" determined, e.g. [V] (With cursor at _git-merge-_ below...)
|
||||
" ".................... git-merge- and git-merge-base. (See git-cherry-
|
||||
" pick(1) and git-cherry(1).)" (... look up "git-merge-pick(1)".)
|
||||
"
|
||||
" Note that EM DASH (0x2014), a third stooge from init_charset_table(),
|
||||
" neither connects nor divides parts of a word.
|
||||
let str = expand("<cWORD>")
|
||||
|
||||
if str =~ '\%u2010$' " HYPHEN (-1).
|
||||
let str = strpart(str, 0, strridx(str, "\u2010"))
|
||||
|
||||
" Append the leftmost WORD (or an empty string) from the line below.
|
||||
let str .= get(split(get(getbufline(bufnr('%'), line('.') + 1), 0, '')), 0, '')
|
||||
elseif str =~ '-$' " HYPHEN-MINUS.
|
||||
" Append the leftmost WORD (or an empty string) from the line below.
|
||||
let str .= get(split(get(getbufline(bufnr('%'), line('.') + 1), 0, '')), 0, '')
|
||||
endif
|
||||
|
||||
" According to man(1), section name formats vary (MANSECT):
|
||||
" 1 n l 8 3 2 3posix 3pm 3perl 3am 5 4 9 6 7
|
||||
let parts = matchlist(str, '\(\k\+\)(\(\k\+\))')
|
||||
return (len(parts) > 2)
|
||||
\ ? {'page': parts[1], 'section': parts[2]}
|
||||
\ : {'page': matchstr(str, '\k\+'), 'section': ''}
|
||||
endfunc
|
||||
|
||||
func dist#man#PreGetPage(cnt)
|
||||
if a:cnt == 0
|
||||
let old_isk = &iskeyword
|
||||
if &ft == 'man'
|
||||
setl iskeyword+=(,)
|
||||
endif
|
||||
let str = expand("<cword>")
|
||||
let &l:iskeyword = old_isk
|
||||
let page = substitute(str, '(*\(\k\+\).*', '\1', '')
|
||||
let sect = substitute(str, '\(\k\+\)(\([^()]*\)).*', '\2', '')
|
||||
if match(sect, '^[0-9 ]\+$') == -1
|
||||
let sect = ""
|
||||
endif
|
||||
if sect == page
|
||||
let sect = ""
|
||||
endif
|
||||
let what = s:ParseIntoPageAndSection()
|
||||
let sect = what.section
|
||||
let page = what.page
|
||||
else
|
||||
let what = s:ParseIntoPageAndSection()
|
||||
let sect = a:cnt
|
||||
let page = expand("<cword>")
|
||||
let page = what.page
|
||||
endif
|
||||
|
||||
call dist#man#GetPage('', sect, page)
|
||||
endfunc
|
||||
|
||||
func s:GetCmdArg(sect, page)
|
||||
|
||||
if empty(a:sect)
|
||||
return shellescape(a:page)
|
||||
endif
|
||||
@@ -75,9 +109,11 @@ func dist#man#GetPage(cmdmods, ...)
|
||||
return
|
||||
endif
|
||||
|
||||
" To support: nmap K :Man <cword>
|
||||
if page == '<cword>'
|
||||
let page = expand('<cword>')
|
||||
" To support: nmap K :Man <cWORD><CR>
|
||||
if page ==? '<cword>'
|
||||
let what = s:ParseIntoPageAndSection()
|
||||
let sect = what.section
|
||||
let page = what.page
|
||||
endif
|
||||
|
||||
if !exists('g:ft_man_no_sect_fallback') || (g:ft_man_no_sect_fallback == 0)
|
||||
@@ -154,9 +190,14 @@ func dist#man#GetPage(cmdmods, ...)
|
||||
endif
|
||||
let env_cmd = s:env_has_u ? 'env -u MANPAGER' : 'env MANPAGER=cat'
|
||||
let env_cmd .= ' GROFF_NO_SGR=1'
|
||||
let man_cmd = env_cmd . ' man ' . s:GetCmdArg(sect, page) . ' | col -b'
|
||||
let man_cmd = env_cmd . ' man ' . s:GetCmdArg(sect, page)
|
||||
|
||||
silent exec "r !" . man_cmd
|
||||
|
||||
" Emulate piping the buffer through the "col -b" command.
|
||||
" Ref: https://github.com/vim/vim/issues/12301
|
||||
silent! keepjumps keeppatterns %s/\v(.)\b\ze\1?//ge
|
||||
|
||||
if unsetwidth
|
||||
let $MANWIDTH = ''
|
||||
endif
|
||||
@@ -180,9 +221,10 @@ func dist#man#PopPage()
|
||||
exec "let s:man_tag_buf=s:man_tag_buf_".s:man_tag_depth
|
||||
exec "let s:man_tag_lin=s:man_tag_lin_".s:man_tag_depth
|
||||
exec "let s:man_tag_col=s:man_tag_col_".s:man_tag_depth
|
||||
|
||||
exec s:man_tag_buf."b"
|
||||
exec s:man_tag_lin
|
||||
exec "norm! ".s:man_tag_col."|"
|
||||
call cursor(s:man_tag_lin, s:man_tag_col)
|
||||
|
||||
exec "unlet s:man_tag_buf_".s:man_tag_depth
|
||||
exec "unlet s:man_tag_lin_".s:man_tag_depth
|
||||
exec "unlet s:man_tag_col_".s:man_tag_depth
|
||||
|
||||
5
runtime/autoload/dist/script.vim
vendored
5
runtime/autoload/dist/script.vim
vendored
@@ -3,8 +3,9 @@ vim9script
|
||||
# Vim function for detecting a filetype from the file contents.
|
||||
# Invoked from "scripts.vim" in 'runtimepath'
|
||||
#
|
||||
# Maintainer: Bram Moolenaar <Bram@vim.org>
|
||||
# Last Change: 2023 Jun 09
|
||||
# Maintainer: The Vim Project <https://github.com/vim/vim>
|
||||
# Last Change: 2023 Aug 10
|
||||
# Former Maintainer: Bram Moolenaar <Bram@vim.org>
|
||||
|
||||
export def DetectFiletype()
|
||||
var line1 = getline(1)
|
||||
|
||||
20
runtime/autoload/dist/vimindent.vim
vendored
20
runtime/autoload/dist/vimindent.vim
vendored
@@ -2,7 +2,7 @@ vim9script
|
||||
|
||||
# Language: Vim script
|
||||
# Maintainer: github user lacygoill
|
||||
# Last Change: 2023 Feb 01
|
||||
# Last Change: 2023 Jun 29
|
||||
|
||||
# NOTE: Whenever you change the code, make sure the tests are still passing:
|
||||
#
|
||||
@@ -112,10 +112,6 @@ const DICT_KEY: string = '^\s*\%('
|
||||
.. '\)'
|
||||
.. ':\%(\s\|$\)'
|
||||
|
||||
# NOT_A_DICT_KEY {{{3
|
||||
|
||||
const NOT_A_DICT_KEY: string = ':\@!'
|
||||
|
||||
# END_OF_COMMAND {{{3
|
||||
|
||||
const END_OF_COMMAND: string = $'\s*\%($\|||\@!\|{INLINE_COMMENT}\)'
|
||||
@@ -197,13 +193,13 @@ patterns =<< trim eval END
|
||||
ldo\=\>!\=
|
||||
tabdo\=\>
|
||||
windo\>
|
||||
au\%[tocmd]\>.*
|
||||
com\%[mand]\>.*
|
||||
au\%[tocmd]\>!\=.*
|
||||
com\%[mand]\>!\=.*
|
||||
g\%[lobal]!\={PATTERN_DELIMITER}.*
|
||||
v\%[global]!\={PATTERN_DELIMITER}.*
|
||||
END
|
||||
|
||||
const HIGHER_ORDER_COMMAND: string = $'\%(^\|{BAR_SEPARATION}\)\s*\<\%({patterns->join('\|')}\){NOT_A_DICT_KEY}'
|
||||
const HIGHER_ORDER_COMMAND: string = $'\%(^\|{BAR_SEPARATION}\)\s*\<\%({patterns->join('\|')}\)\%(\s\|$\)\@='
|
||||
|
||||
# START_MIDDLE_END {{{3
|
||||
|
||||
@@ -254,7 +250,7 @@ START_MIDDLE_END = START_MIDDLE_END
|
||||
kwds->map((_, kwd: string) => kwd == ''
|
||||
? ''
|
||||
: $'\%(^\|{BAR_SEPARATION}\|\<sil\%[ent]\|{HIGHER_ORDER_COMMAND}\)\s*'
|
||||
.. $'\<\%({kwd}\)\>\%(\s*{OPERATOR}\)\@!'))
|
||||
.. $'\<\%({kwd}\)\>\%(\s\|$\|!\)\@=\%(\s*{OPERATOR}\)\@!'))
|
||||
|
||||
lockvar! START_MIDDLE_END
|
||||
|
||||
@@ -279,7 +275,7 @@ patterns = BLOCKS
|
||||
|
||||
const ENDS_BLOCK_OR_CLAUSE: string = '^\s*\%(' .. patterns->join('\|') .. $'\){END_OF_COMMAND}'
|
||||
.. $'\|^\s*cat\%[ch]\%(\s\+\({PATTERN_DELIMITER}\).*\1\)\={END_OF_COMMAND}'
|
||||
.. $'\|^\s*elseif\=\>\%({OPERATOR}\)\@!'
|
||||
.. $'\|^\s*elseif\=\>\%(\s\|$\)\@=\%(\s*{OPERATOR}\)\@!'
|
||||
|
||||
# STARTS_NAMED_BLOCK {{{3
|
||||
|
||||
@@ -296,7 +292,7 @@ patterns = []
|
||||
endfor
|
||||
}
|
||||
|
||||
const STARTS_NAMED_BLOCK: string = $'^\s*\%(sil\%[ent]\s\+\)\=\%({patterns->join('\|')}\)\>{NOT_A_DICT_KEY}'
|
||||
const STARTS_NAMED_BLOCK: string = $'^\s*\%(sil\%[ent]\s\+\)\=\%({patterns->join('\|')}\)\>\%(\s\|$\|!\)\@='
|
||||
|
||||
# STARTS_CURLY_BLOCK {{{3
|
||||
|
||||
@@ -312,7 +308,7 @@ const STARTS_CURLY_BLOCK: string = '\%('
|
||||
|
||||
# STARTS_FUNCTION {{{3
|
||||
|
||||
const STARTS_FUNCTION: string = $'^\s*\%({MODIFIERS.def}\)\=def\>{NOT_A_DICT_KEY}'
|
||||
const STARTS_FUNCTION: string = $'^\s*\%({MODIFIERS.def}\)\=def\>!\=\s\@='
|
||||
|
||||
# ENDS_FUNCTION {{{3
|
||||
|
||||
|
||||
@@ -1,6 +1,7 @@
|
||||
" Vim autoload file for editing compressed files.
|
||||
" Maintainer: Bram Moolenaar <Bram@vim.org>
|
||||
" Last Change: 2016 Sep 28
|
||||
" Maintainer: The Vim Project <https://github.com/vim/vim>
|
||||
" Last Change: 2023 Aug 10
|
||||
" Former Maintainer: Bram Moolenaar <Bram@vim.org>
|
||||
|
||||
" These functions are used by the gzip plugin.
|
||||
|
||||
|
||||
@@ -156,8 +156,8 @@ function! javascriptcomplete#CompleteJS(findstart, base)
|
||||
\ 'text', 'vLink']
|
||||
let bodys = bodyprop
|
||||
" Document - document.
|
||||
let docuprop = ['anchors', 'body', 'characterSet', 'doctype',
|
||||
\ 'documentElement', 'documentURI', 'embeds', 'fonts', 'forms',
|
||||
let docuprop = ['anchors', 'applets', 'body', 'characterSet', 'childNodes',
|
||||
\ 'doctype', 'documentElement', 'documentURI', 'embeds', 'fonts', 'forms',
|
||||
\ 'head', 'hidden', 'images', 'implementation', 'lastStyleSheetSet',
|
||||
\ 'links', 'plugins', 'preferredStyleSheetSet', 'scripts',
|
||||
\ 'scrollingElement', 'selectedStyleSheetSet', 'styleSheetSets',
|
||||
@@ -171,7 +171,7 @@ function! javascriptcomplete#CompleteJS(findstart, base)
|
||||
\ 'createEvent', 'createExpression', 'createNSResolver',
|
||||
\ 'createNodeIterator', 'createProcessingInstruction', 'createRange',
|
||||
\ 'createTextNode', 'createTouchList', 'createTreeWalker',
|
||||
\ 'enableStyleSheetsForSet', 'evaluate', 'focus', 'getElementById',
|
||||
\ 'enableStyleSheetsForSet', 'evaluate', 'focus',
|
||||
\ 'getElementById', 'getElementsByClassName', 'getElementsByName',
|
||||
\ 'getElementsByTagName', 'getElementsByTagNameNS',
|
||||
\ 'hasStorageAccess', 'importNode', 'onClick', 'onDblClick',
|
||||
|
||||
@@ -1,6 +1,7 @@
|
||||
" Vim support file to help with paste mappings and menus
|
||||
" Maintainer: Bram Moolenaar <Bram@vim.org>
|
||||
" Last Change: 2019 Jan 27
|
||||
" Maintainer: The Vim Project <https://github.com/vim/vim>
|
||||
" Last Change: 2023 Aug 10
|
||||
" Former Maintainer: Bram Moolenaar <Bram@vim.org>
|
||||
|
||||
" Define the string to use for items that are present both in Edit, Popup and
|
||||
" Toolbar menu. Also used in mswin.vim and macmap.vim.
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
" Author: Kevin Ballard
|
||||
" Author: Lily Ballard
|
||||
" Description: Helper functions for Rust commands/mappings
|
||||
" Last Modified: May 27, 2014
|
||||
" For bugs, patches and license go to https://github.com/rust-lang/rust.vim
|
||||
|
||||
@@ -1,6 +1,7 @@
|
||||
" Vim script to download a missing spell file
|
||||
" Maintainer: Bram Moolenaar <Bram@vim.org>
|
||||
" Last Change: 2020 Jul 10
|
||||
" Maintainer: The Vim Project <https://github.com/vim/vim>
|
||||
" Last Change: 2023 Aug 10
|
||||
" Former Maintainer: Bram Moolenaar <Bram@vim.org>
|
||||
|
||||
if !exists('g:spellfile_URL')
|
||||
" Always use https:// because it's secure. The certificate is for nluug.nl,
|
||||
|
||||
@@ -1,8 +1,9 @@
|
||||
:" Use this script to create the file "bugreport.txt", which contains
|
||||
:" information about the environment of a possible bug in Vim.
|
||||
:"
|
||||
:" Maintainer: Bram Moolenaar <Bram@vim.org>
|
||||
:" Last change: 2019 Jan 27
|
||||
:" Maintainer: The Vim Project <https://github.com/vim/vim>
|
||||
:" Last change: 2023 Aug 10
|
||||
:" Former Maintainer: Bram Moolenaar <Bram@vim.org>
|
||||
:"
|
||||
:" To use inside Vim:
|
||||
:" :so $VIMRUNTIME/bugreport.vim
|
||||
|
||||
@@ -1,6 +1,7 @@
|
||||
" Vim color file
|
||||
" Maintainer: Bram Moolenaar <Bram@vim.org>
|
||||
" Last Change: 2001 Jul 23
|
||||
" Maintainer: The Vim Project <https://github.com/vim/vim>
|
||||
" Last Change: 2023 Aug 10
|
||||
" Former Maintainer: Bram Moolenaar <Bram@vim.org>
|
||||
|
||||
" This is the default color scheme. It doesn't define the Normal
|
||||
" highlighting, it uses whatever the colors used to be.
|
||||
|
||||
@@ -8,4 +8,4 @@ If you want to write your own compiler plugin, have a look at the other files
|
||||
for how to do it, the format is simple.
|
||||
|
||||
If you think a compiler plugin you have written is useful for others, please
|
||||
send it to Bram@vim.org.
|
||||
send it to the vim-dev mailing list: <vim-dev@vim.org>
|
||||
|
||||
@@ -1,7 +1,8 @@
|
||||
" Vim compiler file
|
||||
" Compiler: Microsoft Visual C
|
||||
" Maintainer: Bram Moolenaar <Bram@vim.org>
|
||||
" Last Change: 2014 Sep 20
|
||||
" Maintainer: The Vim Project <https://github.com/vim/vim>
|
||||
" Last Change: 2023 Aug 10
|
||||
" Former Maintainer: Bram Moolenaar <Bram@vim.org>
|
||||
|
||||
if exists("current_compiler")
|
||||
finish
|
||||
|
||||
@@ -1,7 +1,8 @@
|
||||
" The default vimrc file.
|
||||
"
|
||||
" Maintainer: Bram Moolenaar <Bram@vim.org>
|
||||
" Last change: 2023 May 10
|
||||
" Maintainer: The Vim Project <https://github.com/vim/vim>
|
||||
" Last change: 2023 Aug 10
|
||||
" Former Maintainer: Bram Moolenaar <Bram@vim.org>
|
||||
"
|
||||
" This is loaded if no vimrc file was found.
|
||||
" Except when Vim is run with "-u NONE" or "-C".
|
||||
@@ -97,17 +98,21 @@ if 1
|
||||
filetype plugin indent on
|
||||
|
||||
" Put these in an autocmd group, so that you can revert them with:
|
||||
" ":augroup vimStartup | exe 'au!' | augroup END"
|
||||
" ":autocmd! vimStartup"
|
||||
augroup vimStartup
|
||||
au!
|
||||
autocmd!
|
||||
|
||||
" When editing a file, always jump to the last known cursor position.
|
||||
" Don't do it when the position is invalid, when inside an event handler
|
||||
" (happens when dropping a file on gvim) and for a commit message (it's
|
||||
" likely a different one than last time).
|
||||
" (happens when dropping a file on gvim), for a commit or rebase message
|
||||
" (likely a different one than last time), and when using xxd(1) to filter
|
||||
" and edit binary files (it transforms input files back and forth, causing
|
||||
" them to have dual nature, so to speak)
|
||||
autocmd BufReadPost *
|
||||
\ if line("'\"") >= 1 && line("'\"") <= line("$") && &ft !~# 'commit'
|
||||
\ | exe "normal! g`\""
|
||||
\ let line = line("'\"")
|
||||
\ | if line >= 1 && line <= line("$") && &filetype !~# 'commit'
|
||||
\ && index(['xxd', 'gitrebase'], &filetype) == -1
|
||||
\ | execute "normal! g`\""
|
||||
\ | endif
|
||||
|
||||
augroup END
|
||||
@@ -115,11 +120,11 @@ if 1
|
||||
" Quite a few people accidentally type "q:" instead of ":q" and get confused
|
||||
" by the command line window. Give a hint about how to get out.
|
||||
" If you don't like this you can put this in your vimrc:
|
||||
" ":augroup vimHints | exe 'au!' | augroup END"
|
||||
" ":autocmd! vimHints"
|
||||
augroup vimHints
|
||||
au!
|
||||
autocmd CmdwinEnter *
|
||||
\ echohl Todo |
|
||||
\ echohl Todo |
|
||||
\ echo gettext('You discovered the command-line window! You can close it with ":q".') |
|
||||
\ echohl None
|
||||
augroup END
|
||||
|
||||
@@ -1,8 +1,9 @@
|
||||
" This Vim script deletes all the menus, so that they can be redefined.
|
||||
" Warning: This also deletes all menus defined by the user!
|
||||
"
|
||||
" Maintainer: Bram Moolenaar <Bram@vim.org>
|
||||
" Last Change: 2019 Dec 10
|
||||
" Maintainer: The Vim Project <https://github.com/vim/vim>
|
||||
" Last Change: 2023 Aug 10
|
||||
" Former Maintainer: Bram Moolenaar <Bram@vim.org>
|
||||
|
||||
aunmenu *
|
||||
tlunmenu *
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
*builtin.txt* For Vim version 9.0. Last change: 2023 Jun 08
|
||||
*builtin.txt* For Vim version 9.0. Last change: 2023 Aug 09
|
||||
|
||||
|
||||
VIM REFERENCE MANUAL by Bram Moolenaar
|
||||
@@ -156,6 +156,7 @@ digraph_setlist({digraphlist}) Boolean register multiple |digraph|s
|
||||
echoraw({expr}) none output {expr} as-is
|
||||
empty({expr}) Number |TRUE| if {expr} is empty
|
||||
environ() Dict return environment variables
|
||||
err_teapot([{expr}]) none give E418, or E503 if {expr} is |TRUE|
|
||||
escape({string}, {chars}) String escape {chars} in {string} with '\'
|
||||
eval({string}) any evaluate {string} into its value
|
||||
eventhandler() Number |TRUE| if inside an event handler
|
||||
@@ -309,6 +310,7 @@ inputrestore() Number restore typeahead
|
||||
inputsave() Number save and clear typeahead
|
||||
inputsecret({prompt} [, {text}]) String like input() but hiding the text
|
||||
insert({object}, {item} [, {idx}]) List insert {item} in {object} [before {idx}]
|
||||
instanceof({object}, {class}) Number |TRUE| if {object} is an instance of {class}
|
||||
interrupt() none interrupt script execution
|
||||
invert({expr}) Number bitwise invert
|
||||
isabsolutepath({path}) Number |TRUE| if {path} is an absolute path
|
||||
@@ -706,13 +708,14 @@ trunc({expr}) Float truncate Float {expr}
|
||||
type({expr}) Number type of value {expr}
|
||||
typename({expr}) String representation of the type of {expr}
|
||||
undofile({name}) String undo file name for {name}
|
||||
undotree() List undo file tree
|
||||
undotree([{buf}]) List undo file tree for buffer {buf}
|
||||
uniq({list} [, {func} [, {dict}]])
|
||||
List remove adjacent duplicates from a list
|
||||
utf16idx({string}, {idx} [, {countcc} [, {charidx}]])
|
||||
Number UTF-16 index of byte {idx} in {string}
|
||||
values({dict}) List values in {dict}
|
||||
virtcol({expr} [, {list}]) Number or List
|
||||
virtcol({expr} [, {list} [, {winid}])
|
||||
Number or List
|
||||
screen column of cursor or mark
|
||||
virtcol2col({winid}, {lnum}, {col})
|
||||
Number byte index of a character on screen
|
||||
@@ -1248,7 +1251,7 @@ bufload({buf}) *bufload()*
|
||||
refers to an existing file then the file is read. Otherwise
|
||||
the buffer will be empty. If the buffer was already loaded
|
||||
then there is no change. If the buffer is not related to a
|
||||
file the no file is read (e.g., when 'buftype' is "nofile").
|
||||
file then no file is read (e.g., when 'buftype' is "nofile").
|
||||
If there is an existing swap file for the file of the buffer,
|
||||
there will be no dialog, the buffer will be loaded anyway.
|
||||
The {buf} argument is used like with |bufexists()|.
|
||||
@@ -2201,6 +2204,15 @@ environ() *environ()*
|
||||
use this: >
|
||||
:echo index(keys(environ()), 'HOME', 0, 1) != -1
|
||||
|
||||
|
||||
err_teapot([{expr}]) *err_teapot()*
|
||||
Produce an error with number 418, needed for implementation of
|
||||
RFC 2325.
|
||||
If {expr} is present and it is TRUE error 503 is given,
|
||||
indicating that coffee is temporarily not available.
|
||||
If {expr} is present it must be a String.
|
||||
|
||||
|
||||
escape({string}, {chars}) *escape()*
|
||||
Escape the characters in {chars} that occur in {string} with a
|
||||
backslash. Example: >
|
||||
@@ -3540,6 +3552,8 @@ getcompletion({pat}, {type} [, {filtered}]) *getcompletion()*
|
||||
cmdline |cmdline-completion| result
|
||||
compiler compilers
|
||||
cscope |:cscope| suboptions
|
||||
custom,{func} custom completion, defined via {func}
|
||||
customlist,{func} custom completion, defined via {func}
|
||||
diff_buffer |:diffget| and |:diffput| completion
|
||||
dir directory names
|
||||
environment environment variable names
|
||||
@@ -3992,6 +4006,9 @@ getqflist([{what}]) *getqflist()*
|
||||
text description of the error
|
||||
type type of the error, 'E', '1', etc.
|
||||
valid |TRUE|: recognized error message
|
||||
user_data
|
||||
custom data associated with the item, can be
|
||||
any type.
|
||||
|
||||
When there is no error list or it's empty, an empty list is
|
||||
returned. Quickfix list entries with a non-existing buffer
|
||||
@@ -5036,6 +5053,17 @@ insert({object}, {item} [, {idx}]) *insert()*
|
||||
Can also be used as a |method|: >
|
||||
mylist->insert(item)
|
||||
|
||||
instanceof({object}, {class}) *instanceof()*
|
||||
The result is a Number, which is |TRUE| when the {object} argument is a
|
||||
direct or indirect instance of a |Class| specified by {class}.
|
||||
When {class} is a |List| the function returns |TRUE| when {object} is an
|
||||
instance of any of the specified classes.
|
||||
Example: >
|
||||
instanceof(animal, [Dog, Cat])
|
||||
|
||||
< Can also be used as a |method|: >
|
||||
myobj->instanceof(mytype)
|
||||
|
||||
interrupt() *interrupt()*
|
||||
Interrupt script execution. It works more or less like the
|
||||
user typing CTRL-C, most commands won't execute and control
|
||||
@@ -6577,7 +6605,11 @@ printf({fmt}, {expr1} ...) *printf()*
|
||||
The "%" starts a conversion specification. The following
|
||||
arguments appear in sequence:
|
||||
|
||||
% [flags] [field-width] [.precision] type
|
||||
% [pos-argument] [flags] [field-width] [.precision] type
|
||||
|
||||
pos-argument
|
||||
At most one positional argument specifier. These
|
||||
take the form {n$}, where n is >= 1.
|
||||
|
||||
flags
|
||||
Zero or more of the following flags:
|
||||
@@ -6649,6 +6681,13 @@ printf({fmt}, {expr1} ...) *printf()*
|
||||
< This limits the length of the text used from "line" to
|
||||
"width" bytes.
|
||||
|
||||
If the argument to be formatted is specified using a posional
|
||||
argument specifier, and a '*' is used to indicate that a
|
||||
number argument is to be used to specify the width or
|
||||
precision, the argument(s) to be used must also be specified
|
||||
using a {n$} positional argument specifier. See |printf-$|.
|
||||
|
||||
|
||||
The conversion specifiers and their meanings are:
|
||||
|
||||
*printf-d* *printf-b* *printf-B* *printf-o*
|
||||
@@ -6738,6 +6777,103 @@ printf({fmt}, {expr1} ...) *printf()*
|
||||
of "%" items. If there are not sufficient or too many
|
||||
arguments an error is given. Up to 18 arguments can be used.
|
||||
|
||||
*printf-$*
|
||||
In certain languages, error and informative messages are
|
||||
more readable when the order of words is different from the
|
||||
corresponding message in English. To accomodate translations
|
||||
having a different word order, positional arguments may be
|
||||
used to indicate this. For instance: >
|
||||
|
||||
#, c-format
|
||||
msgid "%s returning %s"
|
||||
msgstr "waarde %2$s komt terug van %1$s"
|
||||
<
|
||||
In this example, the sentence has its 2 string arguments reversed
|
||||
in the output. >
|
||||
|
||||
echo printf(
|
||||
"In The Netherlands, vim's creator's name is: %1$s %2$s",
|
||||
"Bram", "Moolenaar")
|
||||
< In The Netherlands, vim's creator's name is: Bram Moolenaar >
|
||||
|
||||
echo printf(
|
||||
"In Belgium, vim's creator's name is: %2$s %1$s",
|
||||
"Bram", "Moolenaar")
|
||||
< In Belgium, vim's creator's name is: Moolenaar Bram
|
||||
|
||||
Width (and precision) can be specified using the '*' specifier.
|
||||
In this case, you must specify the field width position in the
|
||||
argument list. >
|
||||
|
||||
echo printf("%1$*2$.*3$d", 1, 2, 3)
|
||||
< 001 >
|
||||
echo printf("%2$*3$.*1$d", 1, 2, 3)
|
||||
< 2 >
|
||||
echo printf("%3$*1$.*2$d", 1, 2, 3)
|
||||
< 03 >
|
||||
echo printf("%1$*2$.*3$g", 1.4142, 2, 3)
|
||||
< 1.414
|
||||
|
||||
You can mix specifying the width and/or precision directly
|
||||
and via positional arguments: >
|
||||
|
||||
echo printf("%1$4.*2$f", 1.4142135, 6)
|
||||
< 1.414214 >
|
||||
echo printf("%1$*2$.4f", 1.4142135, 6)
|
||||
< 1.4142 >
|
||||
echo printf("%1$*2$.*3$f", 1.4142135, 6, 2)
|
||||
< 1.41
|
||||
|
||||
*E1400*
|
||||
You cannot mix positional and non-positional arguments: >
|
||||
echo printf("%s%1$s", "One", "Two")
|
||||
< E1400: Cannot mix positional and non-positional
|
||||
arguments: %s%1$s
|
||||
|
||||
*E1401*
|
||||
You cannot skip a positional argument in a format string: >
|
||||
echo printf("%3$s%1$s", "One", "Two", "Three")
|
||||
< E1401: format argument 2 unused in $-style
|
||||
format: %3$s%1$s
|
||||
|
||||
*E1402*
|
||||
You can re-use a [field-width] (or [precision]) argument: >
|
||||
echo printf("%1$d at width %2$d is: %01$*2$d", 1, 2)
|
||||
< 1 at width 2 is: 01
|
||||
|
||||
However, you can't use it as a different type: >
|
||||
echo printf("%1$d at width %2$ld is: %01$*2$d", 1, 2)
|
||||
< E1402: Positional argument 2 used as field
|
||||
width reused as different type: long int/int
|
||||
|
||||
*E1403*
|
||||
When a positional argument is used, but not the correct number
|
||||
or arguments is given, an error is raised: >
|
||||
echo printf("%1$d at width %2$d is: %01$*2$.*3$d", 1, 2)
|
||||
< E1403: Positional argument 3 out of bounds:
|
||||
%1$d at width %2$d is: %01$*2$.*3$d
|
||||
|
||||
Only the first error is reported: >
|
||||
echo printf("%01$*2$.*3$d %4$d", 1, 2)
|
||||
< E1403: Positional argument 3 out of bounds:
|
||||
%01$*2$.*3$d %4$d
|
||||
|
||||
*E1404*
|
||||
A positional argument can be used more than once: >
|
||||
echo printf("%1$s %2$s %1$s", "One", "Two")
|
||||
< One Two One
|
||||
|
||||
However, you can't use a different type the second time: >
|
||||
echo printf("%1$s %2$s %1$d", "One", "Two")
|
||||
< E1404: Positional argument 1 type used
|
||||
inconsistently: int/string
|
||||
|
||||
*E1405*
|
||||
Various other errors that lead to a format string being
|
||||
wrongly formatted lead to: >
|
||||
echo printf("%1$d at width %2$d is: %01$*2$.3$d", 1, 2)
|
||||
< E1405: Invalid format specifier:
|
||||
%1$d at width %2$d is: %01$*2$.3$d
|
||||
|
||||
prompt_getprompt({buf}) *prompt_getprompt()*
|
||||
Returns the effective prompt text for buffer {buf}. {buf} can
|
||||
@@ -8288,6 +8424,8 @@ setqflist({list} [, {action} [, {what}]]) *setqflist()*
|
||||
text description of the error
|
||||
type single-character error type, 'E', 'W', etc.
|
||||
valid recognized error message
|
||||
user_data custom data associated with the item, can be
|
||||
any type.
|
||||
|
||||
The "col", "vcol", "nr", "type" and "text" entries are
|
||||
optional. Either "lnum" or "pattern" entry can be used to
|
||||
@@ -10063,9 +10201,10 @@ undofile({name}) *undofile()*
|
||||
Can also be used as a |method|: >
|
||||
GetFilename()->undofile()
|
||||
|
||||
undotree() *undotree()*
|
||||
Return the current state of the undo tree in a dictionary with
|
||||
the following items:
|
||||
undotree([{buf}]) *undotree()*
|
||||
Return the current state of the undo tree for the current
|
||||
buffer, or for a specific buffer if {buf} is given. The
|
||||
result is a dictionary with the following items:
|
||||
"seq_last" The highest undo sequence number used.
|
||||
"seq_cur" The sequence number of the current position in
|
||||
the undo tree. This differs from "seq_last"
|
||||
@@ -10159,7 +10298,7 @@ values({dict}) *values()*
|
||||
Can also be used as a |method|: >
|
||||
mydict->values()
|
||||
|
||||
virtcol({expr} [, {list}]) *virtcol()*
|
||||
virtcol({expr} [, {list} [, {winid}]]) *virtcol()*
|
||||
The result is a Number, which is the screen column of the file
|
||||
position given with {expr}. That is, the last screen position
|
||||
occupied by the character at that position, when the screen
|
||||
@@ -10191,10 +10330,13 @@ virtcol({expr} [, {list}]) *virtcol()*
|
||||
returns the cursor position. Differs from |'<| in
|
||||
that it's updated right away.
|
||||
|
||||
If {list} is present and non-zero then virtcol() returns a List
|
||||
with the first and last screen position occupied by the
|
||||
If {list} is present and non-zero then virtcol() returns a
|
||||
List with the first and last screen position occupied by the
|
||||
character.
|
||||
|
||||
With the optional {winid} argument the values are obtained for
|
||||
that window instead of the current window.
|
||||
|
||||
Note that only marks in the current file can be used.
|
||||
Examples: >
|
||||
" With text "foo^Lbar" and cursor on the "^L":
|
||||
@@ -10206,7 +10348,7 @@ virtcol({expr} [, {list}]) *virtcol()*
|
||||
" With text " there", with 't at 'h':
|
||||
|
||||
virtcol("'t") " returns 6
|
||||
< The first column is 1. 0 is returned for an error.
|
||||
< The first column is 1. 0 or [0, 0] is returned for an error.
|
||||
A more advanced example that echoes the maximum length of
|
||||
all lines: >
|
||||
echo max(map(range(1, line('$')), "virtcol([v:val, '$'])"))
|
||||
@@ -10223,6 +10365,9 @@ virtcol2col({winid}, {lnum}, {col}) *virtcol2col()*
|
||||
{lnum}, then the byte index of the character at the last
|
||||
virtual column is returned.
|
||||
|
||||
For a multi-byte character, the column number of the first
|
||||
byte in the character is returned.
|
||||
|
||||
The {winid} argument can be the window number or the
|
||||
|window-ID|. If this is zero, then the current window is used.
|
||||
|
||||
@@ -10853,6 +10998,7 @@ python_dynamic Python 2.x interface is dynamically loaded. |has-python|
|
||||
python3 Python 3.x interface available. |has-python|
|
||||
python3_compiled Compiled with Python 3.x interface. |has-python|
|
||||
python3_dynamic Python 3.x interface is dynamically loaded. |has-python|
|
||||
python3_stable Python 3.x interface is using Python Stable ABI. |has-python|
|
||||
pythonx Python 2.x and/or 3.x interface available. |python_x|
|
||||
qnx QNX version of Vim.
|
||||
quickfix Compiled with |quickfix| support.
|
||||
|
||||
@@ -2424,6 +2424,25 @@ v:progpath Contains the command with which Vim was invoked, in a form
|
||||
".exe" is not added to v:progpath.
|
||||
Read-only.
|
||||
|
||||
*v:python3_version* *python3-version-variable*
|
||||
v:python3_version
|
||||
Version of Python 3 that Vim was built against. When
|
||||
Python is loaded dynamically (|python-dynamic|), this version
|
||||
should exactly match the Python library up to the minor
|
||||
version (e.g. 3.10.2 and 3.10.3 are compatible as the minor
|
||||
version is "10", whereas 3.9.4 and 3.10.3 are not compatible).
|
||||
When |python-stable-abi| is used, this will be the minimum Python
|
||||
version that you can use instead. (e.g. if v:python3_version
|
||||
indicates 3.9, you can use 3.9, 3.10, or anything above).
|
||||
|
||||
This number is encoded as a hex number following Python ABI
|
||||
versioning conventions. Do the following to have a
|
||||
human-readable full version in hex: >
|
||||
echo printf("%08X", v:python3_version)
|
||||
< You can obtain only the minor version by doing: >
|
||||
echo and(v:python3_version>>16,0xff)
|
||||
< Read-only.
|
||||
|
||||
*v:register* *register-variable*
|
||||
v:register The name of the register in effect for the current normal mode
|
||||
command (regardless of whether that command actually used a
|
||||
|
||||
@@ -146,6 +146,7 @@ variables can be used to overrule the filetype used for certain extensions:
|
||||
*.cls g:filetype_cls
|
||||
*.csh g:filetype_csh |ft-csh-syntax|
|
||||
*.dat g:filetype_dat
|
||||
*.f g:filetype_f |ft-forth-syntax|
|
||||
*.frm g:filetype_frm |ft-form-syntax|
|
||||
*.fs g:filetype_fs |ft-forth-syntax|
|
||||
*.i g:filetype_i |ft-progress-syntax|
|
||||
@@ -394,7 +395,7 @@ ways to change this:
|
||||
You must create a new filetype plugin in a directory early in
|
||||
'runtimepath'. For Unix, for example you could use this file: >
|
||||
vim ~/.vim/ftplugin/fortran.vim
|
||||
< You can set those settings and mappings that you would like to add. Note
|
||||
< You can set those settings and mappings that you would like to add. Note
|
||||
that the global plugin will be loaded after this, it may overrule the
|
||||
settings that you do here. If this is the case, you need to use one of the
|
||||
following two methods.
|
||||
@@ -403,7 +404,7 @@ ways to change this:
|
||||
You must put the copy in a directory early in 'runtimepath'. For Unix, for
|
||||
example, you could do this: >
|
||||
cp $VIMRUNTIME/ftplugin/fortran.vim ~/.vim/ftplugin/fortran.vim
|
||||
< Then you can edit the copied file to your liking. Since the b:did_ftplugin
|
||||
< Then you can edit the copied file to your liking. Since the b:did_ftplugin
|
||||
variable will be set, the global plugin will not be loaded.
|
||||
A disadvantage of this method is that when the distributed plugin gets
|
||||
improved, you will have to copy and modify it again.
|
||||
@@ -412,7 +413,7 @@ ways to change this:
|
||||
You must create a new filetype plugin in a directory from the end of
|
||||
'runtimepath'. For Unix, for example, you could use this file: >
|
||||
vim ~/.vim/after/ftplugin/fortran.vim
|
||||
< In this file you can change just those settings that you want to change.
|
||||
< In this file you can change just those settings that you want to change.
|
||||
|
||||
==============================================================================
|
||||
3. Docs for the default filetype plugins. *ftplugin-docs*
|
||||
|
||||
@@ -769,7 +769,19 @@ Unix ~
|
||||
The 'pythondll' or 'pythonthreedll' option can be used to specify the Python
|
||||
shared library file instead of DYNAMIC_PYTHON_DLL or DYNAMIC_PYTHON3_DLL file
|
||||
what were specified at compile time. The version of the shared library must
|
||||
match the Python 2.x or Python 3 version Vim was compiled with.
|
||||
match the Python 2.x or Python 3 version (|v:python3_version|) Vim was
|
||||
compiled with unless using |python3-stable-abi|.
|
||||
|
||||
|
||||
Stable ABI and mixing Python versions ~
|
||||
*python-stable* *python-stable-abi* *python3-stable-abi*
|
||||
If Vim was not compiled with Stable ABI (only available for Python 3), the
|
||||
version of the Python shared library must match the version that Vim was
|
||||
compiled with. Otherwise, mixing versions could result in unexpected crashes
|
||||
and failures. With Stable ABI, this restriction is relaxed, and any Python 3
|
||||
library with version of at least |v:python3_version| will work. See
|
||||
|has-python| for how to check if Stable ABI is supported, or see if version
|
||||
output includes |+python3/dyn-stable|.
|
||||
|
||||
==============================================================================
|
||||
10. Python 3 *python3*
|
||||
@@ -881,6 +893,18 @@ python support: >
|
||||
endif
|
||||
endif
|
||||
|
||||
When loading the library dynamically, Vim can be compiled to support Python 3
|
||||
Stable ABI (|python3-stable-abi|) which allows you to load a different version
|
||||
of Python 3 library than the one Vim was compiled with. To check it: >
|
||||
if has('python3_dynamic')
|
||||
if has('python3_stable')
|
||||
echo 'support Python 3 Stable ABI.'
|
||||
else
|
||||
echo 'does not support Python 3 Stable ABI.'
|
||||
echo 'only use Python 3 version ' .. v:python3_version
|
||||
endif
|
||||
endif
|
||||
|
||||
This also tells you whether Python is dynamically loaded, which will fail if
|
||||
the runtime library cannot be found.
|
||||
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
*intro.txt* For Vim version 9.0. Last change: 2022 Nov 20
|
||||
*intro.txt* For Vim version 9.0. Last change: 2023 Aug 09
|
||||
|
||||
|
||||
VIM REFERENCE MANUAL by Bram Moolenaar
|
||||
@@ -129,8 +129,9 @@ There are three ways to report bugs:
|
||||
3. Send bug reports to: Vim Developers <vim-dev@vim.org>
|
||||
This is a maillist, you need to become a member first and many people will
|
||||
see the message. If you don't want that, e.g. because it is a security
|
||||
issue, send it to <bugs@vim.org>, this only goes to the Vim maintainer
|
||||
(that's Bram).
|
||||
issue, please contact any of the current Vim maintainers
|
||||
https://github.com/orgs/vim/people (but not Bram or the vim-dev ML).
|
||||
In the future, a proper process for handling security issues will be setup.
|
||||
|
||||
Please be brief; all the time that is spent on answering mail is subtracted
|
||||
from the time that is spent on improving Vim! Always give a reproducible
|
||||
@@ -181,9 +182,9 @@ The user may create scripts for Vim that use external commands. These might
|
||||
introduce Y2K problems, but those are not really part of Vim itself.
|
||||
|
||||
==============================================================================
|
||||
3. Credits *credits* *author* *Bram* *Moolenaar*
|
||||
3. Credits *credits* *author*
|
||||
|
||||
Most of Vim was created by Bram Moolenaar <Bram@vim.org>.
|
||||
Most of Vim was created by Bram Moolenaar <Bram@vim.org> |Bram-Moolenaar|
|
||||
|
||||
Parts of the documentation come from several Vi manuals, written by:
|
||||
W.N. Joy
|
||||
@@ -216,7 +217,7 @@ Vim would never have become what it is now, without the help of these people!
|
||||
Bill Foster Athena GUI port (later removed)
|
||||
Google Lets me work on Vim one day a week
|
||||
Loic Grenie xvim (ideas for multi windows version)
|
||||
Sven Guckes Vim promoter and previous WWW page maintainer
|
||||
Sven Guckes Vim promoter and previous WWW page maintainer |Sven-Guckes|
|
||||
Darren Hiebert Exuberant ctags
|
||||
Jason Hildebrand GTK+ 2 port
|
||||
Bruce Hunsaker improvements for VMS port
|
||||
|
||||
@@ -242,8 +242,8 @@ gM Like "g0", but to halfway the text of the line.
|
||||
Thus "10gM" is near the start of the text and "90gM"
|
||||
is near the end of the text.
|
||||
|
||||
*g$* *g<End>*
|
||||
g$ or g<End> When lines wrap ('wrap' on): To the last character of
|
||||
*g$*
|
||||
g$ When lines wrap ('wrap' on): To the last character of
|
||||
the screen line and [count - 1] screen lines downward
|
||||
|inclusive|. Differs from "$" when a line is wider
|
||||
than the screen.
|
||||
@@ -256,6 +256,10 @@ g$ or g<End> When lines wrap ('wrap' on): To the last character of
|
||||
When 'virtualedit' is enabled moves to the end of the
|
||||
screen line.
|
||||
|
||||
*g<End>* *g<kEnd>*
|
||||
g<End> Like |g$| but to the last non-blank character
|
||||
instead of the last character.
|
||||
|
||||
*bar*
|
||||
| To screen column [count] in the current line.
|
||||
|exclusive| motion. Ceci n'est pas une pipe.
|
||||
|
||||
@@ -252,6 +252,8 @@ opt+=val" the expansion is done before the adding or removing.
|
||||
|
||||
Handling of local options *local-options*
|
||||
|
||||
Note: The following also applies to |global-local| options.
|
||||
|
||||
Some of the options only apply to a window or buffer. Each window or buffer
|
||||
has its own copy of this option, thus each can have its own value. This
|
||||
allows you to set 'list' in one window but not in another. And set
|
||||
@@ -301,6 +303,30 @@ The options local to a window are remembered for each buffer. This also
|
||||
happens when the buffer is not loaded, but they are lost when the buffer is
|
||||
wiped out |:bwipe|.
|
||||
|
||||
Special local window options *special-local-window-option*
|
||||
|
||||
The following local window options won't be copied over when new windows are
|
||||
created, thus they behave slightly differently:
|
||||
|
||||
Option Reason ~
|
||||
'previewwindow' there can only be a single one
|
||||
'scroll' specific to existing window
|
||||
'winfixheight' specific to existing window
|
||||
'winfixwidth' specific to existing window
|
||||
|
||||
Special local buffer options *special-local-buffer-option*
|
||||
|
||||
The following local buffer options won't be copied over when new buffers are
|
||||
created, thus they behave slightly differently:
|
||||
|
||||
Option Reason ~
|
||||
'filetype' explicitly set by autocommands
|
||||
'syntax' explicitly set by autocommands
|
||||
'bufhidden' denote |special-buffers|
|
||||
'buftype' denote |special-buffers|
|
||||
'readonly' will be detected automatically
|
||||
'modified' will be detected automatically
|
||||
|
||||
*:setl* *:setlocal*
|
||||
:setl[ocal][!] ... Like ":set" but set only the value local to the
|
||||
current buffer or window. Not all options have a
|
||||
@@ -374,7 +400,6 @@ used. Thus it does the same as: >
|
||||
Note: In the future more global options can be made |global-local|. Using
|
||||
":setlocal" on a global option might work differently then.
|
||||
|
||||
|
||||
*option-value-function*
|
||||
Some options ('completefunc', 'imactivatefunc', 'imstatusfunc', 'omnifunc',
|
||||
'operatorfunc', 'quickfixtextfunc', 'tagfunc' and 'thesaurusfunc') are set to
|
||||
@@ -1449,7 +1474,7 @@ A jump table for the options with a short description can be found at |Q_op|.
|
||||
|
||||
*'bufhidden'* *'bh'*
|
||||
'bufhidden' 'bh' string (default: "")
|
||||
local to buffer
|
||||
local to buffer |special-local-buffer-option|
|
||||
This option specifies what happens when a buffer is no longer
|
||||
displayed in a window:
|
||||
<empty> follow the global 'hidden' option
|
||||
@@ -1481,7 +1506,7 @@ A jump table for the options with a short description can be found at |Q_op|.
|
||||
|
||||
*'buftype'* *'bt'* *E382*
|
||||
'buftype' 'bt' string (default: "")
|
||||
local to buffer
|
||||
local to buffer |special-local-buffer-option|
|
||||
The value of this option specifies the type of a buffer:
|
||||
<empty> normal buffer
|
||||
nofile buffer which is not related to a file and will not be
|
||||
@@ -3408,7 +3433,7 @@ A jump table for the options with a short description can be found at |Q_op|.
|
||||
|
||||
*'filetype'* *'ft'*
|
||||
'filetype' 'ft' string (default: "")
|
||||
local to buffer
|
||||
local to buffer |special-local-buffer-option|
|
||||
When this option is set, the FileType autocommand event is triggered.
|
||||
All autocommands that match with the value of this option will be
|
||||
executed. Thus the value of 'filetype' is used in place of the file
|
||||
@@ -5565,7 +5590,7 @@ A jump table for the options with a short description can be found at |Q_op|.
|
||||
|
||||
*'modified'* *'mod'* *'nomodified'* *'nomod'*
|
||||
'modified' 'mod' boolean (default off)
|
||||
local to buffer
|
||||
local to buffer |special-local-buffer-option|
|
||||
When on, the buffer is considered to be modified. This option is set
|
||||
when:
|
||||
1. A change was made to the text since it was last written. Using the
|
||||
@@ -6136,7 +6161,7 @@ A jump table for the options with a short description can be found at |Q_op|.
|
||||
*'previewwindow'* *'nopreviewwindow'*
|
||||
*'pvw'* *'nopvw'* *E590*
|
||||
'previewwindow' 'pvw' boolean (default off)
|
||||
local to window
|
||||
local to window |special-local-window-option|
|
||||
{not available when compiled without the |+quickfix|
|
||||
feature}
|
||||
Identifies the preview window. Only one window can have this option
|
||||
@@ -6331,7 +6356,7 @@ A jump table for the options with a short description can be found at |Q_op|.
|
||||
|
||||
*'readonly'* *'ro'* *'noreadonly'* *'noro'*
|
||||
'readonly' 'ro' boolean (default off)
|
||||
local to buffer
|
||||
local to buffer |special-local-buffer-option|
|
||||
If on, writes fail unless you use a '!'. Protects you from
|
||||
accidentally overwriting a file. Default on when Vim is started
|
||||
in read-only mode ("vim -R") or when the executable is called "view".
|
||||
@@ -6710,7 +6735,7 @@ A jump table for the options with a short description can be found at |Q_op|.
|
||||
|
||||
*'scroll'* *'scr'*
|
||||
'scroll' 'scr' number (default: half the window height)
|
||||
local to window
|
||||
local to window |special-local-window-option|
|
||||
Number of lines to scroll with CTRL-U and CTRL-D commands. Will be
|
||||
set to half the number of lines in the window when the window size
|
||||
changes. This may happen when enabling the |status-line| or
|
||||
@@ -7972,7 +7997,7 @@ A jump table for the options with a short description can be found at |Q_op|.
|
||||
|
||||
*'syntax'* *'syn'*
|
||||
'syntax' 'syn' string (default empty)
|
||||
local to buffer
|
||||
local to buffer |special-local-buffer-option|
|
||||
{not available when compiled without the |+syntax|
|
||||
feature}
|
||||
When this option is set, the syntax with this name is loaded, unless
|
||||
@@ -9420,7 +9445,7 @@ A jump table for the options with a short description can be found at |Q_op|.
|
||||
|
||||
*'winfixheight'* *'wfh'* *'nowinfixheight'* *'nowfh'*
|
||||
'winfixheight' 'wfh' boolean (default off)
|
||||
local to window
|
||||
local to window |special-local-window-option|
|
||||
Keep the window height when windows are opened or closed and
|
||||
'equalalways' is set. Also for |CTRL-W_=|. Set by default for the
|
||||
|preview-window| and |quickfix-window|.
|
||||
@@ -9428,7 +9453,7 @@ A jump table for the options with a short description can be found at |Q_op|.
|
||||
|
||||
*'winfixwidth'* *'wfw'* *'nowinfixwidth'* *'nowfw'*
|
||||
'winfixwidth' 'wfw' boolean (default off)
|
||||
local to window
|
||||
local to window |special-local-window-option|
|
||||
Keep the window width when windows are opened or closed and
|
||||
'equalalways' is set. Also for |CTRL-W_=|.
|
||||
The width may be changed anyway when running out of room.
|
||||
|
||||
@@ -214,10 +214,10 @@ A syntax group name is to be used for syntax items that match the same kind of
|
||||
thing. These are then linked to a highlight group that specifies the color.
|
||||
A syntax group name doesn't specify any color or attributes itself.
|
||||
|
||||
The name for a highlight or syntax group must consist of ASCII letters, digits
|
||||
and the underscore. As a regexp: "[a-zA-Z0-9_]*". However, Vim does not give
|
||||
an error when using other characters. The maximum length of a group name is
|
||||
about 200 bytes. *E1249*
|
||||
The name for a highlight or syntax group must consist of ASCII letters,
|
||||
digits, underscores, dots, or hyphens. As a regexp: "[a-zA-Z0-9_.-]*".
|
||||
However, Vim does not give an error when using other characters. The maximum
|
||||
length of a group name is about 200 bytes. *E1249*
|
||||
|
||||
To be able to allow each user to pick their favorite set of colors, there must
|
||||
be preferred names for highlight groups that are common for many languages.
|
||||
@@ -1579,9 +1579,10 @@ example, FORM files, use this in your startup vimrc: >
|
||||
|
||||
FORTH *forth.vim* *ft-forth-syntax*
|
||||
|
||||
Files matching "*.fs" could be F# or Forth. If the automatic detection
|
||||
doesn't work for you, or you don't edit F# at all, use this in your
|
||||
startup vimrc: >
|
||||
Files matching "*.f" could be Fortran or Forth and those matching "*.fs" could
|
||||
be F# or Forth. If the automatic detection doesn't work for you, or you don't
|
||||
edit F# or Fortran at all, use this in your startup vimrc: >
|
||||
:let filetype_f = "forth"
|
||||
:let filetype_fs = "forth"
|
||||
|
||||
|
||||
|
||||
@@ -1434,6 +1434,7 @@ $quote eval.txt /*$quote*
|
||||
+python/dyn various.txt /*+python\/dyn*
|
||||
+python3 various.txt /*+python3*
|
||||
+python3/dyn various.txt /*+python3\/dyn*
|
||||
+python3/dyn-stable various.txt /*+python3\/dyn-stable*
|
||||
+quickfix various.txt /*+quickfix*
|
||||
+reltime various.txt /*+reltime*
|
||||
+rightleft various.txt /*+rightleft*
|
||||
@@ -3856,7 +3857,8 @@ BeOS os_beos.txt /*BeOS*
|
||||
Blob eval.txt /*Blob*
|
||||
Blobs eval.txt /*Blobs*
|
||||
Boolean eval.txt /*Boolean*
|
||||
Bram intro.txt /*Bram*
|
||||
Bram version9.txt /*Bram*
|
||||
Bram-Moolenaar version9.txt /*Bram-Moolenaar*
|
||||
BufAdd autocmd.txt /*BufAdd*
|
||||
BufCreate autocmd.txt /*BufCreate*
|
||||
BufDelete autocmd.txt /*BufDelete*
|
||||
@@ -5458,7 +5460,7 @@ Mark motion.txt /*Mark*
|
||||
MenuPopup autocmd.txt /*MenuPopup*
|
||||
MiNT os_mint.txt /*MiNT*
|
||||
ModeChanged autocmd.txt /*ModeChanged*
|
||||
Moolenaar intro.txt /*Moolenaar*
|
||||
Moolenaar version9.txt /*Moolenaar*
|
||||
MorphOS os_amiga.txt /*MorphOS*
|
||||
Motif gui_x11.txt /*Motif*
|
||||
Myspell spell.txt /*Myspell*
|
||||
@@ -9293,6 +9295,8 @@ python-path_hook if_pyth.txt /*python-path_hook*
|
||||
python-pyeval if_pyth.txt /*python-pyeval*
|
||||
python-range if_pyth.txt /*python-range*
|
||||
python-special-path if_pyth.txt /*python-special-path*
|
||||
python-stable if_pyth.txt /*python-stable*
|
||||
python-stable-abi if_pyth.txt /*python-stable-abi*
|
||||
python-strwidth if_pyth.txt /*python-strwidth*
|
||||
python-tabpage if_pyth.txt /*python-tabpage*
|
||||
python-tabpages if_pyth.txt /*python-tabpages*
|
||||
@@ -9305,6 +9309,8 @@ python.vim syntax.txt /*python.vim*
|
||||
python2-directory if_pyth.txt /*python2-directory*
|
||||
python3 if_pyth.txt /*python3*
|
||||
python3-directory if_pyth.txt /*python3-directory*
|
||||
python3-stable-abi if_pyth.txt /*python3-stable-abi*
|
||||
python3-version-variable eval.txt /*python3-version-variable*
|
||||
python_x if_pyth.txt /*python_x*
|
||||
python_x-special-comments if_pyth.txt /*python_x-special-comments*
|
||||
pythonx if_pyth.txt /*pythonx*
|
||||
@@ -9707,6 +9713,8 @@ spec_chglog_format pi_spec.txt /*spec_chglog_format*
|
||||
spec_chglog_prepend pi_spec.txt /*spec_chglog_prepend*
|
||||
spec_chglog_release_info pi_spec.txt /*spec_chglog_release_info*
|
||||
special-buffers windows.txt /*special-buffers*
|
||||
special-local-buffer-option options.txt /*special-local-buffer-option*
|
||||
special-local-window-option options.txt /*special-local-window-option*
|
||||
specifies vim9class.txt /*specifies*
|
||||
speed-up tips.txt /*speed-up*
|
||||
spell spell.txt /*spell*
|
||||
@@ -10629,6 +10637,7 @@ v:prevcount eval.txt /*v:prevcount*
|
||||
v:profiling eval.txt /*v:profiling*
|
||||
v:progname eval.txt /*v:progname*
|
||||
v:progpath eval.txt /*v:progpath*
|
||||
v:python3_version eval.txt /*v:python3_version*
|
||||
v:register eval.txt /*v:register*
|
||||
v:scrollstart eval.txt /*v:scrollstart*
|
||||
v:searchforward eval.txt /*v:searchforward*
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
*terminal.txt* For Vim version 9.0. Last change: 2023 Jun 09
|
||||
*terminal.txt* For Vim version 9.0. Last change: 2023 Aug 23
|
||||
|
||||
|
||||
VIM REFERENCE MANUAL by Bram Moolenaar
|
||||
@@ -38,6 +38,7 @@ If the result is "1" you have it.
|
||||
Example session |termdebug-example|
|
||||
Stepping through code |termdebug-stepping|
|
||||
Inspecting variables |termdebug-variables|
|
||||
Navigating stack frames |termdebug-frames|
|
||||
Other commands |termdebug-commands|
|
||||
Events |termdebug-events|
|
||||
Prompt mode |termdebug-prompt|
|
||||
@@ -1376,6 +1377,18 @@ This is similar to using "print" in the gdb window.
|
||||
You can usually shorten `:Evaluate` to `:Ev`.
|
||||
|
||||
|
||||
Navigating stack frames ~
|
||||
*termdebug-frames* *:Frame* *:Up* *:Down*
|
||||
`:Frame` [frame] select frame [frame], which is a frame number,
|
||||
address, or function name (default: current frame)
|
||||
`:Up` [count] go up [count] frames (default: 1; the frame that
|
||||
called the current)
|
||||
`+` same (see |termdebug_map_plus| to disable)
|
||||
`:Down` [count] go down [count] frames (default: 1; the frame called
|
||||
by the current)
|
||||
`-` same (see |termdebug_map_minus| to disable)
|
||||
|
||||
|
||||
Other commands ~
|
||||
*termdebug-commands*
|
||||
*:Gdb* jump to the gdb window
|
||||
@@ -1384,6 +1397,9 @@ Other commands ~
|
||||
isn't one
|
||||
*:Asm* jump to the window with the disassembly, create it if there
|
||||
isn't one
|
||||
*:Var* jump to the window with the local and argument variables,
|
||||
create it if there isn't one. This window updates whenever the
|
||||
program is stopped
|
||||
|
||||
Events ~
|
||||
*termdebug-events*
|
||||
@@ -1446,10 +1462,18 @@ If there is no g:termdebug_config you can use: >
|
||||
let g:termdebug_use_prompt = 1
|
||||
<
|
||||
*termdebug_map_K*
|
||||
The K key is normally mapped to :Evaluate. If you do not want this use: >
|
||||
The K key is normally mapped to |:Evaluate|. If you do not want this use: >
|
||||
let g:termdebug_config['map_K'] = 0
|
||||
If there is no g:termdebug_config you can use: >
|
||||
let g:termdebug_map_K = 0
|
||||
<
|
||||
*termdebug_map_minus*
|
||||
The - key is normally mapped to |:Down|. If you do not want this use: >
|
||||
let g:termdebug_config['map_minus'] = 0
|
||||
<
|
||||
*termdebug_map_plus*
|
||||
The + key is normally mapped to |:Up|. If you do not want this use: >
|
||||
let g:termdebug_config['map_plus'] = 0
|
||||
<
|
||||
*termdebug_disasm_window*
|
||||
If you want the Asm window shown by default, set the "disasm_window" flag to
|
||||
@@ -1460,6 +1484,15 @@ If there is no g:termdebug_config you can use: >
|
||||
let g:termdebug_disasm_window = 15
|
||||
Any value greater than 1 will set the Asm window height to that value.
|
||||
|
||||
*termdebug_variables_window*
|
||||
If you want the Var window shown by default, set the flag to 1.
|
||||
the "variables_window_height" entry can be used to set the window height: >
|
||||
let g:termdebug_config['variables_window'] = 1
|
||||
let g:termdebug_config['variables_window_height'] = 15
|
||||
If there is no g:termdebug_config you can use: >
|
||||
let g:termdebug_variables_window = 15
|
||||
Any value greater than 1 will set the Var window height to that value.
|
||||
|
||||
Communication ~
|
||||
*termdebug-communication*
|
||||
There is another, hidden, buffer, which is used for Vim to communicate with
|
||||
@@ -1541,6 +1574,20 @@ If there is no g:termdebug_config you can use: >
|
||||
let g:termdebug_popup = 0
|
||||
|
||||
|
||||
Change default signs ~
|
||||
*termdebug_signs*
|
||||
Termdebug uses the last two characters of the breakpoint ID in the
|
||||
signcolumn to represent breakpoints. For example, breakpoint ID 133
|
||||
will be displayed as `33`.
|
||||
|
||||
If you want to customize the breakpoint signs: >
|
||||
let g:termdebug_config['sign'] = '>>'
|
||||
If there is no g:terminal_config yet you can use: >
|
||||
let g:termdebug_config = {'sign': '>>'}
|
||||
|
||||
After this, breakpoints will be displayed as `>>` in the signcolumn.
|
||||
|
||||
|
||||
Window toolbar ~
|
||||
*termdebug_winbar*
|
||||
By default the Termdebug plugin creates a window toolbar if the mouse is
|
||||
|
||||
@@ -335,6 +335,12 @@ prop_list({lnum} [, {props}]) *prop_list()*
|
||||
length length in bytes, one more if line break is
|
||||
included
|
||||
id property ID
|
||||
text text to be displayed before {col}. Only
|
||||
present for |virtual-text| properties.
|
||||
text_align alignment property of |virtual-text|.
|
||||
text_padding_left
|
||||
left padding used for virtual text.
|
||||
text_wrap specifies whether |virtual-text| is wrapped.
|
||||
type name of the property type, omitted if
|
||||
the type was deleted
|
||||
type_bufnr buffer number for which this type was defined;
|
||||
|
||||
@@ -431,14 +431,26 @@ comma-separated list of extension(s) you find yourself wanting to edit: >
|
||||
|
||||
" vim -b : edit binary using xxd-format!
|
||||
augroup Binary
|
||||
au!
|
||||
au BufReadPre *.bin let &bin=1
|
||||
au BufReadPost *.bin if &bin | %!xxd
|
||||
au BufReadPost *.bin set ft=xxd | endif
|
||||
au BufWritePre *.bin if &bin | %!xxd -r
|
||||
au BufWritePre *.bin endif
|
||||
au BufWritePost *.bin if &bin | %!xxd
|
||||
au BufWritePost *.bin set nomod | endif
|
||||
autocmd!
|
||||
autocmd BufReadPre *.bin set binary
|
||||
autocmd BufReadPost *.bin
|
||||
\ if &binary
|
||||
\ | execute "silent %!xxd -c 32"
|
||||
\ | set filetype=xxd
|
||||
\ | redraw
|
||||
\ | endif
|
||||
autocmd BufWritePre *.bin
|
||||
\ if &binary
|
||||
\ | let s:view = winsaveview()
|
||||
\ | execute "silent %!xxd -r -c 32"
|
||||
\ | endif
|
||||
autocmd BufWritePost *.bin
|
||||
\ if &binary
|
||||
\ | execute "silent %!xxd -c 32"
|
||||
\ | set nomodified
|
||||
\ | call winrestview(s:view)
|
||||
\ | redraw
|
||||
\ | endif
|
||||
augroup END
|
||||
|
||||
==============================================================================
|
||||
|
||||
@@ -5535,7 +5535,6 @@ Undo:
|
||||
- Undo history wrong when ":next file" re-uses a buffer. (#5426) ex_next()
|
||||
should pass flag to do_argfile(), then to do_ecmd(). Is there a test for
|
||||
this?
|
||||
- Add buffer argument to undotree(). (#4001)
|
||||
- Undo problem: "g-" doesn't go back, gets stuck. (Björn Linse, 2016 Jul 18)
|
||||
- Undo message is not always properly displayed. Patch by Ken Takata, 2013
|
||||
oct 3. Doesn't work properly according to Yukihiro Nakadaira.
|
||||
|
||||
@@ -46,8 +46,8 @@ II) It is allowed to distribute a modified (or extended) version of Vim,
|
||||
maintainer will do with your changes and under what license they
|
||||
will be distributed is negotiable. If there has been no negotiation
|
||||
then this license, or a later version, also applies to your changes.
|
||||
The current maintainer is Bram Moolenaar <Bram@vim.org>. If this
|
||||
changes it will be announced in appropriate places (most likely
|
||||
The current maintainers are listed here: https://github.com/orgs/vim/people.
|
||||
If this changes it will be announced in appropriate places (most likely
|
||||
vim.sf.net, www.vim.org and/or comp.editors). When it is completely
|
||||
impossible to contact the maintainer, the obligation to send him
|
||||
your changes ceases. Once the maintainer has confirmed that he has
|
||||
|
||||
@@ -111,9 +111,19 @@ use CTRL-G u. This is useful if you want an insert command to be undoable in
|
||||
parts. E.g., for each sentence. |i_CTRL-G_u|
|
||||
|
||||
Setting the value of 'undolevels' also closes the undo block. Even when the
|
||||
new value is equal to the old value. In |Vim9| script: >
|
||||
&undolevels = &undolevels
|
||||
new value is equal to the old value. Use `g:undolevels` to explicitly read
|
||||
and write only the global value of 'undolevels'. In |Vim9| script: >
|
||||
&g:undolevels = &g:undolevels
|
||||
In legacy script: >
|
||||
let &g:undolevels = &g:undolevels
|
||||
|
||||
Note that the similar-looking assignment `let &undolevels=&undolevels` does not
|
||||
preserve the global option value of 'undolevels' in the event that the local
|
||||
option has been set to a different value. For example: >
|
||||
" Start with different global and local values for 'undolevels'.
|
||||
let &g:undolevels = 1000
|
||||
let &l:undolevels = 2000
|
||||
" This assignment changes the global option to 2000:
|
||||
let &undolevels = &undolevels
|
||||
|
||||
==============================================================================
|
||||
@@ -366,12 +376,20 @@ undo is possible. Use this if you are running out of memory.
|
||||
When you set 'undolevels' to -1 the undo information is not immediately
|
||||
cleared, this happens at the next change. To force clearing the undo
|
||||
information you can use these commands: >
|
||||
:let old_undolevels = &undolevels
|
||||
:set undolevels=-1
|
||||
:let old_undolevels = &l:undolevels
|
||||
:setlocal undolevels=-1
|
||||
:exe "normal a \<BS>\<Esc>"
|
||||
:let &undolevels = old_undolevels
|
||||
:let &l:undolevels = old_undolevels
|
||||
:unlet old_undolevels
|
||||
|
||||
Note use of `&l:undolevels` to explicitly read the local value of 'undolevels'
|
||||
and the use of `:setlocal` to change only the local option (which takes
|
||||
precedence over the corresponding global option value). Saving the option value
|
||||
via the use of `&undolevels` is unpredictable; it reads either the local value
|
||||
(if one has been set) or the global value (otherwise). Also, if a local value
|
||||
has been set, changing the option via `:set undolevels` will change both the
|
||||
global and local values, requiring extra work to save and restore both values.
|
||||
|
||||
Marks for the buffer ('a to 'z) are also saved and restored, together with the
|
||||
text.
|
||||
|
||||
|
||||
@@ -308,17 +308,27 @@ This switches on three very clever mechanisms:
|
||||
|
||||
|
||||
*restore-cursor* *last-position-jump* >
|
||||
autocmd BufReadPost *
|
||||
\ if line("'\"") >= 1 && line("'\"") <= line("$") && &ft !~# 'commit'
|
||||
\ | exe "normal! g`\""
|
||||
\ | endif
|
||||
augroup RestoreCursor
|
||||
autocmd!
|
||||
autocmd BufReadPost *
|
||||
\ let line = line("'\"")
|
||||
\ | if line >= 1 && line <= line("$") && &filetype !~# 'commit'
|
||||
\ && index(['xxd', 'gitrebase'], &filetype) == -1
|
||||
\ | execute "normal! g`\""
|
||||
\ | endif
|
||||
augroup END
|
||||
|
||||
Another autocommand. This time it is used after reading any file. The
|
||||
complicated stuff after it checks if the '" mark is defined, and jumps to it
|
||||
if so. The backslash at the start of a line is used to continue the command
|
||||
from the previous line. That avoids a line getting very long.
|
||||
See |line-continuation|. This only works in a Vim script file, not when
|
||||
typing commands at the command-line.
|
||||
if so. It doesn't do that for a commit or rebase message, which are likely
|
||||
a different one than last time, and when using xxd(1) to filter and edit
|
||||
binary files, which transforms input files back and forth, causing them to
|
||||
have dual nature, so to speak. See also |using-xxd|.
|
||||
|
||||
The backslash at the start of a line is used to continue the command from the
|
||||
previous line. That avoids a line getting very long. See |line-continuation|.
|
||||
This only works in a Vim script file, not when typing commands at the
|
||||
command line.
|
||||
|
||||
>
|
||||
command DiffOrig vert new | set bt=nofile | r ++edit # | 0d_ | diffthis
|
||||
|
||||
@@ -877,6 +877,7 @@ Other computation: *bitwise-function*
|
||||
srand() initialize seed used by rand()
|
||||
|
||||
Variables: *var-functions*
|
||||
instanceof() check if a variable is an instance of a given class
|
||||
type() type of a variable as a number
|
||||
typename() type of a variable as text
|
||||
islocked() check if a variable is locked
|
||||
@@ -1232,6 +1233,7 @@ Inter-process communication: *channel-functions*
|
||||
json_decode() decode a JSON string to Vim types
|
||||
js_encode() encode an expression to a JSON string
|
||||
js_decode() decode a JSON string to Vim types
|
||||
err_teapot() give error 418 or 503
|
||||
|
||||
Jobs: *job-functions*
|
||||
job_start() start a job
|
||||
@@ -1372,7 +1374,7 @@ Various: *various-functions*
|
||||
libcallnr() idem, returning a number
|
||||
|
||||
undofile() get the name of the undo file
|
||||
undotree() return the state of the undo tree
|
||||
undotree() return the state of the undo tree for a buffer
|
||||
|
||||
shiftwidth() effective value of 'shiftwidth'
|
||||
|
||||
|
||||
@@ -450,6 +450,8 @@ m *+python* Python 2 interface |python|
|
||||
m *+python/dyn* Python 2 interface |python-dynamic| |/dyn|
|
||||
m *+python3* Python 3 interface |python|
|
||||
m *+python3/dyn* Python 3 interface |python-dynamic| |/dyn|
|
||||
m *+python3/dyn-stable*
|
||||
Python 3 interface |python-dynamic| |python-stable| |/dyn|
|
||||
N *+quickfix* |:make| and |quickfix| commands
|
||||
N *+reltime* |reltime()| function, 'hlsearch'/'incsearch' timeout,
|
||||
'redrawtime' option
|
||||
|
||||
@@ -4627,7 +4627,7 @@ using an #ifdef. (Sergey Khorev)
|
||||
Mzscheme interface didn't link, missing function. Changed order of libraries
|
||||
in the configure script.
|
||||
|
||||
Ruby interface didn't compile on Mac. Changed #ifdef. (Kevin Ballard)
|
||||
Ruby interface didn't compile on Mac. Changed #ifdef. (Lily Ballard)
|
||||
|
||||
Patch 7.1b.001 (extra)
|
||||
Problem: Random text in a source file. No idea how it got there.
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
*version9.txt* For Vim version 9.0. Last change: 2022 Nov 23
|
||||
*version9.txt* For Vim version 9.0. Last change: 2023 Aug 09
|
||||
|
||||
|
||||
VIM REFERENCE MANUAL by Bram Moolenaar
|
||||
@@ -43,6 +43,17 @@ when the release was being prepared. Sven was a long time supporter of Vim.
|
||||
He registered the vim.org domain and created the first Vim website. We will
|
||||
remember him!
|
||||
|
||||
*Bram* *Moolenaar* *Bram-Moolenaar*
|
||||
Vim version 9.1 is dedicated to Bram Moolenaar, who passed away on August 3rd 2023
|
||||
while still working full-time on Vim. The Vim project would not exist without
|
||||
his ongoing passion to lead and develop Vim and the community for more than 30
|
||||
years. Bram was also passionate about his |ICCF| foundation to help children
|
||||
in Uganda. If you enjoy using Vim, please consider donating!
|
||||
We will miss his guidance, passion and leadership.
|
||||
|
||||
Obituary Articles: https://github.com/vim/vim/discussions/12742
|
||||
Say Farewell: https://github.com/vim/vim/discussions/12737
|
||||
|
||||
==============================================================================
|
||||
NEW FEATURES *new-9*
|
||||
|
||||
|
||||
@@ -232,6 +232,9 @@ If the class extends a parent class, the same thing happens. In the second
|
||||
step the members of the parent class are done first. There is no need to call
|
||||
"super()" or "new()" on the parent.
|
||||
|
||||
When defining the new() method the return type should not be specified. It
|
||||
always returns an object of the class.
|
||||
|
||||
==============================================================================
|
||||
|
||||
3. class members and functions *Vim9-class-member*
|
||||
@@ -420,6 +423,12 @@ Each member and function name can be used only once. It is not possible to
|
||||
define a function with the same name and different type of arguments.
|
||||
|
||||
|
||||
Member Initialization ~
|
||||
If the type of a member is not explicitly specified in a class, then it is set
|
||||
to "any" during class definition. When an object is instantiated from the
|
||||
class, then the type of the member is set.
|
||||
|
||||
|
||||
Extending a class ~
|
||||
*extends*
|
||||
A class can extend one other class. *E1352* *E1353* *E1354*
|
||||
|
||||
@@ -6,7 +6,7 @@
|
||||
.\" Changes by Bram Moolenaar <Bram@vim.org>
|
||||
.SH NAME
|
||||
.I xxd
|
||||
\- make a hexdump or do the reverse.
|
||||
\- make a hex dump or do the reverse.
|
||||
.SH SYNOPSIS
|
||||
.B xxd
|
||||
\-h[elp]
|
||||
@@ -57,20 +57,20 @@ are all equivalent.
|
||||
.PP
|
||||
.TP
|
||||
.IR \-a " | " \-autoskip
|
||||
Toggle autoskip: A single '*' replaces nul-lines. Default off.
|
||||
Toggle autoskip: A single '*' replaces NUL-lines. Default off.
|
||||
.TP
|
||||
.IR \-b " | " \-bits
|
||||
Switch to bits (binary digits) dump, rather than hexdump.
|
||||
Switch to bits (binary digits) dump, rather than hex dump.
|
||||
This option writes octets as eight digits "1"s and "0"s instead of a normal
|
||||
hexadecimal dump. Each line is preceded by a line number in hexadecimal and
|
||||
followed by an ascii (or ebcdic) representation. The command line switches
|
||||
followed by an ASCII (or EBCDIC) representation. The command line switches
|
||||
\-r, \-p, \-i do not work with this mode.
|
||||
.TP
|
||||
.IR "\-c cols " | " \-cols cols"
|
||||
Format
|
||||
.RI < cols >
|
||||
octets per line. Default 16 (\-i: 12, \-ps: 30, \-b: 6). Max 256.
|
||||
No maxmimum for \-ps. With \-ps, 0 results in one long line of output.
|
||||
No maximum for \-ps. With \-ps, 0 results in one long line of output.
|
||||
.TP
|
||||
.IR \-C " | " \-capitalize
|
||||
Capitalize variable names in C include file style, when using \-i.
|
||||
@@ -81,11 +81,11 @@ This does not change the hexadecimal representation. The option is
|
||||
meaningless in combinations with \-r, \-p or \-i.
|
||||
.TP
|
||||
.IR \-e
|
||||
Switch to little-endian hexdump.
|
||||
Switch to little-endian hex dump.
|
||||
This option treats byte groups as words in little-endian byte order.
|
||||
The default grouping of 4 bytes may be changed using
|
||||
.RI "" \-g .
|
||||
This option only applies to hexdump, leaving the ASCII (or EBCDIC)
|
||||
This option only applies to the hex dump, leaving the ASCII (or EBCDIC)
|
||||
representation unchanged.
|
||||
The command line switches
|
||||
\-r, \-p, \-i do not work with this mode.
|
||||
@@ -93,13 +93,13 @@ The command line switches
|
||||
.IR "\-g bytes " | " \-groupsize bytes"
|
||||
Separate the output of every
|
||||
.RI < bytes >
|
||||
bytes (two hex characters or eight bit-digits each) by a whitespace.
|
||||
bytes (two hex characters or eight bit digits each) by a whitespace.
|
||||
Specify
|
||||
.I \-g 0
|
||||
to suppress grouping.
|
||||
.RI < Bytes "> defaults to " 2
|
||||
in normal mode, \fI4\fP in little-endian mode and \fI1\fP in bits mode.
|
||||
Grouping does not apply to postscript or include style.
|
||||
Grouping does not apply to PostScript or include style.
|
||||
.TP
|
||||
.IR \-h " | " \-help
|
||||
Print a summary of available commands and exit. No hex dumping is performed.
|
||||
@@ -123,16 +123,16 @@ Add
|
||||
to the displayed file position.
|
||||
.TP
|
||||
.IR \-p " | " \-ps " | " \-postscript " | " \-plain
|
||||
Output in postscript continuous hexdump style. Also known as plain hexdump
|
||||
Output in PostScript continuous hex dump style. Also known as plain hex dump
|
||||
style.
|
||||
.TP
|
||||
.IR \-r " | " \-revert
|
||||
Reverse operation: convert (or patch) hexdump into binary.
|
||||
Reverse operation: convert (or patch) hex dump into binary.
|
||||
If not writing to stdout, xxd writes into its output file without truncating
|
||||
it. Use the combination
|
||||
.I \-r \-p
|
||||
to read plain hexadecimal dumps without line number information and without a
|
||||
particular column layout. Additional Whitespace and line-breaks are allowed
|
||||
particular column layout. Additional whitespace and line breaks are allowed
|
||||
anywhere.
|
||||
.TP
|
||||
.I \-seek offset
|
||||
@@ -140,7 +140,7 @@ When used after
|
||||
.IR \-r :
|
||||
revert with
|
||||
.RI < offset >
|
||||
added to file positions found in hexdump.
|
||||
added to file positions found in hex dump.
|
||||
.TP
|
||||
.I \-s [+][\-]seek
|
||||
Start at
|
||||
@@ -153,28 +153,28 @@ should be that many characters from the end of the input (or if combined with
|
||||
Without \-s option, xxd starts at the current file position.
|
||||
.TP
|
||||
.I \-u
|
||||
Use upper case hex letters. Default is lower case.
|
||||
Use upper-case hex letters. Default is lower-case.
|
||||
.TP
|
||||
.IR \-v " | " \-version
|
||||
Show version string.
|
||||
.SH CAVEATS
|
||||
.PP
|
||||
.I xxd \-r
|
||||
has some builtin magic while evaluating line number information.
|
||||
If the output file is seekable, then the linenumbers at the start of each
|
||||
hexdump line may be out of order, lines may be missing, or overlapping. In
|
||||
has some built-in magic while evaluating line number information.
|
||||
If the output file is seekable, then the line numbers at the start of each
|
||||
hex dump line may be out of order, lines may be missing, or overlapping. In
|
||||
these cases xxd will lseek(2) to the next position. If the output file is not
|
||||
seekable, only gaps are allowed, which will be filled by null-bytes.
|
||||
.PP
|
||||
.I xxd \-r
|
||||
never generates parse errors. Garbage is silently skipped.
|
||||
.PP
|
||||
When editing hexdumps, please note that
|
||||
When editing hex dumps, please note that
|
||||
.I xxd \-r
|
||||
skips everything on the input line after reading enough columns of hexadecimal
|
||||
data (see option \-c). This also means, that changes to the printable ascii (or
|
||||
ebcdic) columns are always ignored. Reverting a plain (or postscript) style
|
||||
hexdump with xxd \-r \-p does not depend on the correct number of columns. Here anything that looks like a pair of hex-digits is interpreted.
|
||||
data (see option \-c). This also means that changes to the printable ASCII (or
|
||||
EBCDIC) columns are always ignored. Reverting a plain (or PostScript) style
|
||||
hex dump with xxd \-r \-p does not depend on the correct number of columns. Here, anything that looks like a pair of hex digits is interpreted.
|
||||
.PP
|
||||
Note the difference between
|
||||
.br
|
||||
@@ -190,20 +190,20 @@ may be different from
|
||||
as lseek(2) is used to "rewind" input. A '+'
|
||||
makes a difference if the input source is stdin, and if stdin's file position
|
||||
is not at the start of the file by the time xxd is started and given its input.
|
||||
The following examples may help to clarify (or further confuse!)...
|
||||
The following examples may help to clarify (or further confuse!):
|
||||
.PP
|
||||
Rewind stdin before reading; needed because the `cat' has already read to the
|
||||
end of stdin.
|
||||
.br
|
||||
\fI% sh \-c "cat > plain_copy; xxd \-s 0 > hex_copy" < file\fR
|
||||
.PP
|
||||
Hexdump from file position 0x480 (=1024+128) onwards.
|
||||
Hex dump from file position 0x480 (=1024+128) onwards.
|
||||
The `+' sign means "relative to the current position", thus the `128' adds to
|
||||
the 1k where dd left off.
|
||||
.br
|
||||
\fI% sh \-c "dd of=plain_snippet bs=1k count=1; xxd \-s +128 > hex_snippet" < file\fR
|
||||
.PP
|
||||
Hexdump from file position 0x100 ( = 1024\-768) on.
|
||||
Hex dump from file position 0x100 (=1024\-768) onwards.
|
||||
.br
|
||||
\fI% sh \-c "dd of=plain_snippet bs=1k count=1; xxd \-s +\-768 > hex_snippet" < file\fR
|
||||
.PP
|
||||
@@ -224,7 +224,7 @@ Print 3 lines (hex 0x30 bytes) from the end of
|
||||
\fI% xxd \-s \-0x30 file\fR
|
||||
.PP
|
||||
.br
|
||||
Print 120 bytes as continuous hexdump with 20 octets per line.
|
||||
Print 120 bytes as a continuous hex dump with 20 octets per line.
|
||||
.br
|
||||
\fI% xxd \-l 120 \-ps \-c 20 xxd.1\fR
|
||||
.br
|
||||
@@ -242,7 +242,7 @@ Print 120 bytes as continuous hexdump with 20 octets per line.
|
||||
.br
|
||||
|
||||
.br
|
||||
Hexdump the first 120 bytes of this man page with 12 octets per line.
|
||||
Hex dump the first 120 bytes of this man page with 12 octets per line.
|
||||
.br
|
||||
\fI% xxd \-l 120 \-c 12 xxd.1\fR
|
||||
.br
|
||||
@@ -299,7 +299,7 @@ except for the last one which is 'A' (hex 0x41).
|
||||
\fI% echo "010000: 41" | xxd \-r > file\fR
|
||||
.PP
|
||||
.br
|
||||
Hexdump this file with autoskip.
|
||||
Hex dump this file with autoskip.
|
||||
.br
|
||||
\fI% xxd \-a \-c 12 file\fR
|
||||
.br
|
||||
@@ -310,26 +310,26 @@ Hexdump this file with autoskip.
|
||||
000fffc: 0000 0000 40 ....A
|
||||
.PP
|
||||
Create a 1 byte file containing a single 'A' character.
|
||||
The number after '\-r \-s' adds to the linenumbers found in the file;
|
||||
The number after '\-r \-s' adds to the line numbers found in the file;
|
||||
in effect, the leading bytes are suppressed.
|
||||
.br
|
||||
\fI% echo "010000: 41" | xxd \-r \-s \-0x10000 > file\fR
|
||||
.PP
|
||||
Use xxd as a filter within an editor such as
|
||||
.B vim(1)
|
||||
to hexdump a region marked between `a' and `z'.
|
||||
to hex dump a region marked between `a' and `z'.
|
||||
.br
|
||||
\fI:'a,'z!xxd\fR
|
||||
.PP
|
||||
Use xxd as a filter within an editor such as
|
||||
.B vim(1)
|
||||
to recover a binary hexdump marked between `a' and `z'.
|
||||
to recover a binary hex dump marked between `a' and `z'.
|
||||
.br
|
||||
\fI:'a,'z!xxd \-r\fR
|
||||
.PP
|
||||
Use xxd as a filter within an editor such as
|
||||
.B vim(1)
|
||||
to recover one line of a hexdump. Move the cursor over the line and type:
|
||||
to recover one line of a hex dump. Move the cursor over the line and type:
|
||||
.br
|
||||
\fI!!xxd \-r\fR
|
||||
.PP
|
||||
@@ -348,8 +348,9 @@ The following error values are returned:
|
||||
no errors encountered.
|
||||
.TP
|
||||
\-1
|
||||
operation not supported (
|
||||
.I xxd \-r \-i
|
||||
operation not supported
|
||||
\%(\c
|
||||
.I \%xxd \-r \-i
|
||||
still impossible).
|
||||
.TP
|
||||
1
|
||||
@@ -367,7 +368,7 @@ desired seek position is unreachable.
|
||||
uuencode(1), uudecode(1), patch(1)
|
||||
.br
|
||||
.SH WARNINGS
|
||||
The tools weirdness matches its creators brain.
|
||||
The tool's weirdness matches its creator's brain.
|
||||
Use entirely at your own risk. Copy files. Trace it. Become a wizard.
|
||||
.br
|
||||
.SH VERSION
|
||||
|
||||
@@ -1,6 +1,7 @@
|
||||
" Vim script for Evim key bindings
|
||||
" Maintainer: Bram Moolenaar <Bram@vim.org>
|
||||
" Last Change: 2022 May 10
|
||||
" Maintainer: The Vim Project <https://github.com/vim/vim>
|
||||
" Last Change: 2023 Aug 10
|
||||
" Former Maintainer: Bram Moolenaar <Bram@vim.org>
|
||||
|
||||
" Don't use Vi-compatible mode.
|
||||
set nocompatible
|
||||
|
||||
@@ -1,7 +1,8 @@
|
||||
" Vim support file to detect file types
|
||||
"
|
||||
" Maintainer: Bram Moolenaar <Bram@vim.org>
|
||||
" Last Change: 2023 Jun 09
|
||||
" Maintainer: The Vim Project <https://github.com/vim/vim>
|
||||
" Last Change: 2023 Aug 10
|
||||
" Former Maintainer: Bram Moolenaar <Bram@vim.org>
|
||||
|
||||
" Listen very carefully, I will say this only once
|
||||
if exists("did_load_filetypes")
|
||||
@@ -244,7 +245,7 @@ au BufNewFile,BufRead *.bib setf bib
|
||||
au BufNewFile,BufRead *.bst setf bst
|
||||
|
||||
" Bicep
|
||||
au BufNewFile,BufRead *.bicep setf bicep
|
||||
au BufNewFile,BufRead *.bicep,*.bicepparam setf bicep
|
||||
|
||||
" BIND configuration
|
||||
" sudoedit uses namedXXXX.conf
|
||||
@@ -254,6 +255,9 @@ au BufNewFile,BufRead named*.conf,rndc*.conf,rndc*.key setf named
|
||||
au BufNewFile,BufRead named.root setf bindzone
|
||||
au BufNewFile,BufRead *.db call dist#ft#BindzoneCheck('')
|
||||
|
||||
" Blade
|
||||
au BufNewFile,BufRead *.blade.php setf blade
|
||||
|
||||
" Blank
|
||||
au BufNewFile,BufRead *.bl setf blank
|
||||
|
||||
@@ -720,16 +724,19 @@ au BufNewFile,BufRead auto.master setf conf
|
||||
au BufNewFile,BufRead *.mas,*.master setf master
|
||||
|
||||
" Forth
|
||||
au BufNewFile,BufRead *.ft,*.fth setf forth
|
||||
au BufNewFile,BufRead *.ft,*.fth,*.4th setf forth
|
||||
|
||||
" Reva Forth
|
||||
au BufNewFile,BufRead *.frt setf reva
|
||||
|
||||
" Fortran
|
||||
if has("fname_case")
|
||||
au BufNewFile,BufRead *.F,*.FOR,*.FPP,*.FTN,*.F77,*.F90,*.F95,*.F03,*.F08 setf fortran
|
||||
au BufNewFile,BufRead *.F,*.FOR,*.FPP,*.FTN,*.F77,*.F90,*.F95,*.F03,*.F08 setf fortran
|
||||
endif
|
||||
au BufNewFile,BufRead *.f,*.for,*.fortran,*.fpp,*.ftn,*.f77,*.f90,*.f95,*.f03,*.f08 setf fortran
|
||||
au BufNewFile,BufRead *.for,*.fortran,*.fpp,*.ftn,*.f77,*.f90,*.f95,*.f03,*.f08 setf fortran
|
||||
|
||||
" Fortran or Forth
|
||||
au BufNewFile,BufRead *.f call dist#ft#FTf()
|
||||
|
||||
" Framescript
|
||||
au BufNewFile,BufRead *.fsl setf framescript
|
||||
@@ -891,6 +898,7 @@ if exists('$XDG_CONFIG_HOME')
|
||||
endif
|
||||
au BufNewFile,BufRead $HOME/.config/cabal/config setf cabalconfig
|
||||
au BufNewFile,BufRead cabal.config setf cabalconfig
|
||||
au BufNewFile,BufRead *.persistentmodels setf haskellpersistent
|
||||
|
||||
" Haste
|
||||
au BufNewFile,BufRead *.ht setf haste
|
||||
@@ -945,6 +953,9 @@ au BufNewFile,BufRead */etc/host.conf setf hostconf
|
||||
" Hosts access
|
||||
au BufNewFile,BufRead */etc/hosts.allow,*/etc/hosts.deny setf hostsaccess
|
||||
|
||||
" Hurl
|
||||
au BufRead,BufNewFile *.hurl setf hurl
|
||||
|
||||
" Hyper Builder
|
||||
au BufNewFile,BufRead *.hb setf hb
|
||||
|
||||
@@ -1057,6 +1068,9 @@ au BufNewFile,BufRead *.json5 setf json5
|
||||
" JSON Patch (RFC 6902)
|
||||
au BufNewFile,BufRead *.json-patch setf json
|
||||
|
||||
" Geojson is also json
|
||||
au BufNewFile,BufRead *.geojson setf json
|
||||
|
||||
" Jupyter Notebook is also json
|
||||
au BufNewFile,BufRead *.ipynb setf json
|
||||
|
||||
@@ -1511,6 +1525,9 @@ au BufNewFile,BufRead *.pdf setf pdf
|
||||
" PCMK - HAE - crm configure edit
|
||||
au BufNewFile,BufRead *.pcmk setf pcmk
|
||||
|
||||
" PEM (Privacy-Enhanced Mail)
|
||||
au BufNewFile,BufRead *.pem,*.cer,*.crt,*.csr setf pem
|
||||
|
||||
" Perl
|
||||
if has("fname_case")
|
||||
au BufNewFile,BufRead *.pl,*.PL call dist#ft#FTpl()
|
||||
@@ -1555,6 +1572,10 @@ au BufNewFile,BufRead *.rcp setf pilrc
|
||||
" Pine config
|
||||
au BufNewFile,BufRead .pinerc,pinerc,.pinercex,pinercex setf pine
|
||||
|
||||
" Pip requirements
|
||||
au BufNewFile,BufRead *.pip setf requirements
|
||||
au BufNewFile,BufRead requirements.txt setf requirements
|
||||
|
||||
" Pipenv Pipfiles
|
||||
au BufNewFile,BufRead Pipfile setf toml
|
||||
au BufNewFile,BufRead Pipfile.lock setf json
|
||||
@@ -1673,6 +1694,9 @@ au BufNewFile,BufRead *.pk setf poke
|
||||
" Protocols
|
||||
au BufNewFile,BufRead */etc/protocols setf protocols
|
||||
|
||||
" PyPA manifest files
|
||||
au BufNewFile,BufRead MANIFEST.in setf pymanifest
|
||||
|
||||
" Pyret
|
||||
au BufNewFile,BufRead *.arr setf pyret
|
||||
|
||||
@@ -1687,6 +1711,9 @@ au BufNewFile,BufRead *.ptl,*.pyi,SConstruct setf python
|
||||
" QL
|
||||
au BufRead,BufNewFile *.ql,*.qll setf ql
|
||||
|
||||
" QML
|
||||
au BufRead,BufNewFile *.qml,*.qbs setf qml
|
||||
|
||||
" QMLdir
|
||||
au BufRead,BufNewFile qmldir setf qmldir
|
||||
|
||||
@@ -2311,6 +2338,9 @@ au BufNewFile,BufRead */.config/upstart/*.override setf upstart
|
||||
" URL shortcut
|
||||
au BufNewFile,BufRead *.url setf urlshortcut
|
||||
|
||||
" V
|
||||
au BufNewFile,BufRead *.vsh,*.vv setf v
|
||||
|
||||
" Vala
|
||||
au BufNewFile,BufRead *.vala setf vala
|
||||
|
||||
@@ -2393,6 +2423,9 @@ au BufNewFile,BufRead .wgetrc,wgetrc setf wget
|
||||
" Wget2 config
|
||||
au BufNewFile,BufRead .wget2rc,wget2rc setf wget2
|
||||
|
||||
" WebGPU Shading Language (WGSL)
|
||||
au BufNewFile,BufRead *.wgsl setf wgsl
|
||||
|
||||
" Website MetaLanguage
|
||||
au BufNewFile,BufRead *.wml setf wml
|
||||
|
||||
@@ -2481,6 +2514,9 @@ au BufNewFile,BufRead *.fsproj,*.fsproj.user setf xml
|
||||
" VBPROJ files are Visual Studio.NET's XML-based Visual Basic project config files
|
||||
au BufNewFile,BufRead *.vbproj,*.vbproj.user setf xml
|
||||
|
||||
" Unison Language
|
||||
au BufNewFile,BufRead *.u,*.uu setf unison
|
||||
|
||||
" Qt Linguist translation source and Qt User Interface Files are XML
|
||||
" However, for .ts TypeScript is more common.
|
||||
au BufNewFile,BufRead *.ui setf xml
|
||||
@@ -2526,7 +2562,7 @@ au BufNewFile,BufRead *.yy,*.yxx,*.y++ setf yacc
|
||||
au BufNewFile,BufRead *.y call dist#ft#FTy()
|
||||
|
||||
" Yaml
|
||||
au BufNewFile,BufRead *.yaml,*.yml setf yaml
|
||||
au BufNewFile,BufRead *.yaml,*.yml,*.eyaml setf yaml
|
||||
|
||||
" Raml
|
||||
au BufNewFile,BufRead *.raml setf raml
|
||||
|
||||
@@ -1,7 +1,8 @@
|
||||
" Vim support file to switch off detection of file types
|
||||
"
|
||||
" Maintainer: Bram Moolenaar <Bram@vim.org>
|
||||
" Last change: 2001 Jun 11
|
||||
" Maintainer: The Vim Project <https://github.com/vim/vim>
|
||||
" Last change: 2023 Aug 10
|
||||
" Former Maintainer: Bram Moolenaar <Bram@vim.org>
|
||||
|
||||
if exists("did_load_filetypes")
|
||||
unlet did_load_filetypes
|
||||
|
||||
@@ -2,8 +2,9 @@ vim9script noclear
|
||||
|
||||
# Vim support file to switch on loading plugins for file types
|
||||
#
|
||||
# Maintainer: Bram Moolenaar <Bram@vim.org>
|
||||
# Last change: 2022 Feb 11
|
||||
# Maintainer: The Vim Project <https://github.com/vim/vim>
|
||||
# Last change: 2023 Aug 10
|
||||
# Former Maintainer: Bram Moolenaar <Bram@vim.org>
|
||||
|
||||
if exists("g:did_load_ftplugin")
|
||||
finish
|
||||
|
||||
@@ -1,7 +1,8 @@
|
||||
" Vim filetype plugin file
|
||||
" Language: Aap recipe
|
||||
" Maintainer: Bram Moolenaar <Bram@vim.org>
|
||||
" Last Change: 2021 Nov 14
|
||||
" Maintainer: The Vim Project <https://github.com/vim/vim>
|
||||
" Last Change: 2023 Aug 10
|
||||
" Former Maintainer: Bram Moolenaar <Bram@vim.org>
|
||||
|
||||
" Only do this when not done yet for this buffer
|
||||
if exists("b:did_ftplugin")
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
" Vim filetype plugin file
|
||||
" Language: bash
|
||||
" Maintainer: Bram Moolenaar
|
||||
" Last Changed: 2019 Jan 12
|
||||
" Maintainer: The Vim Project <https://github.com/vim/vim>
|
||||
" Last Changed: 2023 Aug 13
|
||||
"
|
||||
" This is not a real filetype plugin. It allows for someone to set 'filetype'
|
||||
" to "bash" in the modeline, and gets the effect of filetype "sh" with
|
||||
|
||||
@@ -1,7 +1,8 @@
|
||||
" Vim filetype plugin file
|
||||
" Language: BTM
|
||||
" Maintainer: Bram Moolenaar <Bram@vim.org>
|
||||
" Last Change: 2004 Jul 06
|
||||
" Maintainer: The Vim Project <https://github.com/vim/vim>
|
||||
" Last Change: 2023 Aug 10
|
||||
" Former Maintainer: Bram Moolenaar <Bram@vim.org>
|
||||
|
||||
" Only do this when not done yet for this buffer
|
||||
if exists("b:did_ftplugin")
|
||||
|
||||
@@ -1,7 +1,8 @@
|
||||
" Vim filetype plugin file
|
||||
" Language: C
|
||||
" Maintainer: Bram Moolenaar <Bram@vim.org>
|
||||
" Last Change: 2022 Apr 08
|
||||
" Maintainer: The Vim Project <https://github.com/vim/vim>
|
||||
" Last Change: 2023 Aug 10
|
||||
" Former Maintainer: Bram Moolenaar <Bram@vim.org>
|
||||
|
||||
" Only do this when not done yet for this buffer
|
||||
if exists("b:did_ftplugin")
|
||||
|
||||
@@ -1,7 +1,8 @@
|
||||
" Vim filetype plugin file
|
||||
" Language: C++
|
||||
" Maintainer: Bram Moolenaar <Bram@vim.org>
|
||||
" Last Change: 2020 Jul 26
|
||||
" Maintainer: The Vim Project <https://github.com/vim/vim>
|
||||
" Last Change: 2023 Aug 10
|
||||
" Former Maintainer: Bram Moolenaar <Bram@vim.org>
|
||||
|
||||
" Only do this when not done yet for this buffer
|
||||
if exists("b:did_ftplugin")
|
||||
|
||||
@@ -122,7 +122,7 @@ function NewVersion()
|
||||
normal! 1G0
|
||||
call search(')')
|
||||
normal! h
|
||||
" ':normal' doens't support key annotation (<c-a>) directly.
|
||||
" ':normal' doesn't support key annotation (<c-a>) directly.
|
||||
" Vim's manual recommends using ':exe' to use key annotation indirectly (backslash-escaping needed though).
|
||||
exe "normal! \<c-a>"
|
||||
call setline(1, substitute(getline(1), '-\$\$', '-', ''))
|
||||
|
||||
@@ -1,7 +1,8 @@
|
||||
" Vim filetype plugin file
|
||||
" Language: Diff
|
||||
" Maintainer: Bram Moolenaar <Bram@vim.org>
|
||||
" Last Change: 2021 Nov 14
|
||||
" Maintainer: The Vim Project <https://github.com/vim/vim>
|
||||
" Last Change: 2023 Aug 10
|
||||
" Former Maintainer: Bram Moolenaar <Bram@vim.org>
|
||||
|
||||
" Only do this when not done yet for this buffer
|
||||
if exists("b:did_ftplugin")
|
||||
|
||||
@@ -15,5 +15,22 @@ let b:undo_ftplugin = "setl com< cms< fo<"
|
||||
|
||||
setlocal comments=:# commentstring=#\ %s formatoptions-=t formatoptions+=croql
|
||||
|
||||
if has('unix') && executable('less')
|
||||
if !has('gui_running')
|
||||
command -buffer -nargs=1 Sman
|
||||
\ silent exe '!' . 'LESS= MANPAGER="less --pattern=''^\s+--' . <q-args> . '\b'' --hilite-search" man ' . 'gpg' |
|
||||
\ redraw!
|
||||
elseif has('terminal')
|
||||
command -buffer -nargs=1 Sman
|
||||
\ silent exe ':term ' . 'env LESS= MANPAGER="less --pattern=''' . escape('^\s+--' . <q-args> . '\b', '\') . ''' --hilite-search" man ' . 'gpg'
|
||||
endif
|
||||
if exists(':Sman') == 2
|
||||
setlocal iskeyword+=-
|
||||
setlocal keywordprg=:Sman
|
||||
let b:undo_ftplugin .= '| setlocal keywordprg< iskeyword<'
|
||||
endif
|
||||
endif
|
||||
|
||||
let &cpo = s:cpo_save
|
||||
unlet s:cpo_save
|
||||
|
||||
|
||||
@@ -17,6 +17,7 @@ let b:undo_ftplugin = "setl com< cms< fo<"
|
||||
setlocal comments=s1fl:{-,mb:-,ex:-},:-- commentstring=--\ %s
|
||||
setlocal formatoptions-=t formatoptions+=croql
|
||||
setlocal omnifunc=haskellcomplete#Complete
|
||||
setlocal iskeyword+='
|
||||
|
||||
let &cpo = s:cpo_save
|
||||
unlet s:cpo_save
|
||||
|
||||
@@ -14,3 +14,14 @@ setlocal comments=:<%!--
|
||||
setlocal commentstring=<%!--\ %s\ --%>
|
||||
|
||||
let b:undo_ftplugin = 'set sw< sts< et< com< cms<'
|
||||
|
||||
" HTML: thanks to Johannes Zellner and Benji Fisher.
|
||||
if exists("loaded_matchit") && !exists("b:match_words")
|
||||
let b:match_ignorecase = 1
|
||||
let b:match_words = '<!--:-->,' ..
|
||||
\ '<:>,' ..
|
||||
\ '<\@<=[ou]l\>[^>]*\%(>\|$\):<\@<=li\>:<\@<=/[ou]l>,' ..
|
||||
\ '<\@<=dl\>[^>]*\%(>\|$\):<\@<=d[td]\>:<\@<=/dl>,' ..
|
||||
\ '<\@<=\([^/!][^ \t>]*\)[^>]*\%(>\|$\):<\@<=/\1>'
|
||||
let b:undo_ftplugin ..= " | unlet! b:match_ignorecase b:match_words"
|
||||
endif
|
||||
|
||||
@@ -1,7 +1,8 @@
|
||||
" Vim filetype plugin file
|
||||
" Language: Mail
|
||||
" Maintainer: Bram Moolenaar <Bram@vim.org>
|
||||
" Last Change: 2021 Oct 23
|
||||
" Maintainer: The Vim Project <https://github.com/vim/vim>
|
||||
" Last Change: 2023 Aug 10
|
||||
" Former Maintainer: Bram Moolenaar <Bram@vim.org>
|
||||
|
||||
" Only do this when not done yet for this buffer
|
||||
if exists("b:did_ftplugin")
|
||||
|
||||
@@ -1,7 +1,8 @@
|
||||
" Vim filetype plugin file
|
||||
" Language: Make
|
||||
" Maintainer: Bram Moolenaar <Bram@vim.org>
|
||||
" Last Change: 2020 Oct 16
|
||||
" Maintainer: The Vim Project <https://github.com/vim/vim>
|
||||
" Last Change: 2023 Aug 10
|
||||
" Former Maintainer: Bram Moolenaar <Bram@vim.org>
|
||||
|
||||
" Only do this when not done yet for this buffer
|
||||
if exists("b:did_ftplugin")
|
||||
|
||||
@@ -16,5 +16,21 @@ let b:undo_ftplugin = "setl com< cms< inc< fo<"
|
||||
setlocal comments=:# commentstring=#\ %s include=^\\s*include
|
||||
setlocal formatoptions-=t formatoptions+=croql
|
||||
|
||||
if has('unix') && executable('less')
|
||||
if !has('gui_running')
|
||||
command -buffer -nargs=1 Sman
|
||||
\ silent exe '!' . 'LESS= MANPAGER="less --pattern=''^\s{,8}' . <q-args> . '\b'' --hilite-search" man ' . 'modprobe.d' |
|
||||
\ redraw!
|
||||
elseif has('terminal')
|
||||
command -buffer -nargs=1 Sman
|
||||
\ silent exe ':term ' . 'env LESS= MANPAGER="less --pattern=''' . escape('^\s{,8}' . <q-args> . '\b', '\') . ''' --hilite-search" man ' . 'modprobe.d'
|
||||
endif
|
||||
if exists(':Sman') == 2
|
||||
setlocal iskeyword+=-
|
||||
setlocal keywordprg=:Sman
|
||||
let b:undo_ftplugin .= '| setlocal keywordprg< iskeyword<'
|
||||
endif
|
||||
endif
|
||||
|
||||
let &cpo = s:cpo_save
|
||||
unlet s:cpo_save
|
||||
|
||||
@@ -18,5 +18,21 @@ setlocal formatoptions-=t formatoptions+=croql
|
||||
|
||||
let &l:include = '^\s*source\>'
|
||||
|
||||
if has('unix') && executable('less')
|
||||
if !has('gui_running')
|
||||
command -buffer -nargs=1 Sman
|
||||
\ silent exe '!' . 'LESS= MANPAGER="less --pattern=''^\s+' . <q-args> . '\b'' --hilite-search" man ' . 'muttrc' |
|
||||
\ redraw!
|
||||
elseif has('terminal')
|
||||
command -buffer -nargs=1 Sman
|
||||
\ silent exe 'term ' . 'env LESS= MANPAGER="less --pattern=''' . escape('^\s+' . <q-args> . '\b', '\') . ''' --hilite-search" man ' . 'muttrc'
|
||||
endif
|
||||
if exists(':Sman') == 2
|
||||
setlocal iskeyword+=-
|
||||
setlocal keywordprg=:Sman
|
||||
let b:undo_ftplugin .= '| setlocal keywordprg< iskeyword<'
|
||||
endif
|
||||
endif
|
||||
|
||||
let &cpo = s:cpo_save
|
||||
unlet s:cpo_save
|
||||
|
||||
17
runtime/ftplugin/nix.vim
Normal file
17
runtime/ftplugin/nix.vim
Normal file
@@ -0,0 +1,17 @@
|
||||
" Vim filetype plugin
|
||||
" Language: nix
|
||||
" Maintainer: Keith Smiley <keithbsmiley@gmail.com>
|
||||
" Last Change: 2023 Jul 22
|
||||
|
||||
" Only do this when not done yet for this buffer
|
||||
if exists("b:did_ftplugin")
|
||||
finish
|
||||
endif
|
||||
|
||||
" Don't load another plugin for this buffer
|
||||
let b:did_ftplugin = 1
|
||||
|
||||
let b:undo_ftplugin = "setl commentstring< comments<"
|
||||
|
||||
setlocal comments=:#
|
||||
setlocal commentstring=#\ %s
|
||||
@@ -1,7 +1,8 @@
|
||||
" Vim filetype plugin file
|
||||
" Language: Objective C
|
||||
" Maintainer: Bram Moolenaar <Bram@vim.org>
|
||||
" Last Change: 2003 Jan 15
|
||||
" Maintainer: The Vim Project <https://github.com/vim/vim>
|
||||
" Last Change: 2023 Aug 10
|
||||
" Former Maintainer: Bram Moolenaar <Bram@vim.org>
|
||||
|
||||
" Only do this when not done yet for this buffer
|
||||
if exists("b:did_ftplugin")
|
||||
|
||||
13
runtime/ftplugin/pymanifest.vim
Normal file
13
runtime/ftplugin/pymanifest.vim
Normal file
@@ -0,0 +1,13 @@
|
||||
" Vim filetype plugin
|
||||
" Language: PyPA manifest
|
||||
" Maintainer: ObserverOfTime <chronobserver@disroot.org>
|
||||
" Last Change: 2023 Aug 08
|
||||
|
||||
if exists('b:did_ftplugin')
|
||||
finish
|
||||
endif
|
||||
let b:did_ftplugin = 1
|
||||
|
||||
setl comments=:# commentstring=#\ %s
|
||||
|
||||
let b:undo_ftplugin = 'setl com< cms<'
|
||||
31
runtime/ftplugin/qml.vim
Normal file
31
runtime/ftplugin/qml.vim
Normal file
@@ -0,0 +1,31 @@
|
||||
" Vim filetype plugin file
|
||||
" Language: QML
|
||||
" Maintainer: Chase Knowlden <haroldknowlden@gmail.com>
|
||||
" Last Change: 2023 Aug 16
|
||||
|
||||
if exists( 'b:did_ftplugin' )
|
||||
finish
|
||||
endif
|
||||
let b:did_ftplugin = 1
|
||||
|
||||
let s:cpoptions_save = &cpoptions
|
||||
set cpoptions&vim
|
||||
|
||||
" command for undo
|
||||
let b:undo_ftplugin = "setlocal formatoptions< comments< commentstring<"
|
||||
|
||||
if (has("gui_win32") || has("gui_gtk")) && !exists( 'b:browsefilter' )
|
||||
let b:browsefilter =
|
||||
\ 'QML Files (*.qml,*.qbs)\t*.qml;*.qbs\n' .
|
||||
\ 'All Files\t*\n'
|
||||
endif
|
||||
|
||||
" Set 'comments' to format dashed lists in comments.
|
||||
setlocal comments=sO:*\ -,mO:*\ \ ,exO:*/,s1:/*,mb:*,ex:*/,://
|
||||
setlocal commentstring=//%s
|
||||
|
||||
setlocal formatoptions-=t
|
||||
setlocal formatoptions+=croql
|
||||
|
||||
let &cpoptions = s:cpoptions_save
|
||||
unlet s:cpoptions_save
|
||||
@@ -25,11 +25,27 @@ if exists("loaded_matchit") && !exists("b:match_words")
|
||||
endif
|
||||
|
||||
if (has("gui_win32") || has("gui_gtk")) && !exists("b:browsefilter")
|
||||
let b:browsefilter = "Readline Intialization Files (inputrc .inputrc)\tinputrc;*.inputrc\n" ..
|
||||
let b:browsefilter = "Readline Initialization Files (inputrc .inputrc)\tinputrc;*.inputrc\n" ..
|
||||
\ "All Files (*.*)\t*.*\n"
|
||||
let b:undo_ftplugin ..= " | unlet! b:browsefilter"
|
||||
endif
|
||||
|
||||
if has('unix') && executable('less')
|
||||
if !has('gui_running')
|
||||
command -buffer -nargs=1 Sman
|
||||
\ silent exe '!' . 'LESS= MANPAGER="less --pattern=''^\s+' . <q-args> . '\b'' --hilite-search" man ' . '3 readline' |
|
||||
\ redraw!
|
||||
elseif has('terminal')
|
||||
command -buffer -nargs=1 Sman
|
||||
\ silent exe 'term ' . 'env LESS= MANPAGER="less --pattern=''' . escape('^\s+' . <q-args> . '\b', '\') . ''' --hilite-search" man ' . '3 readline'
|
||||
endif
|
||||
if exists(':Sman') == 2
|
||||
setlocal iskeyword+=-
|
||||
setlocal keywordprg=:Sman
|
||||
let b:undo_ftplugin .= '| setlocal keywordprg< iskeyword<'
|
||||
endif
|
||||
endif
|
||||
|
||||
let &cpo = s:cpo_save
|
||||
unlet s:cpo_save
|
||||
|
||||
|
||||
@@ -28,7 +28,7 @@ setlocal formatoptions+=tcroql
|
||||
" directives (..) and ordered lists (1.), although it can cause problems for
|
||||
" many other cases.
|
||||
"
|
||||
" More sophisticated indentation rules should be revisted in the future.
|
||||
" More sophisticated indentation rules should be revisited in the future.
|
||||
|
||||
if exists("g:rst_style") && g:rst_style != 0
|
||||
setlocal expandtab shiftwidth=3 softtabstop=3 tabstop=8
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
" Language: Rust
|
||||
" Description: Vim ftplugin for Rust
|
||||
" Maintainer: Chris Morgan <me@chrismorgan.info>
|
||||
" Maintainer: Kevin Ballard <kevin@sb.org>
|
||||
" Maintainer: Lily Ballard <lily@ballards.net>
|
||||
" Last Change: June 08, 2016
|
||||
" For bugs, patches and license go to https://github.com/rust-lang/rust.vim
|
||||
|
||||
|
||||
29
runtime/ftplugin/sed.vim
Normal file
29
runtime/ftplugin/sed.vim
Normal file
@@ -0,0 +1,29 @@
|
||||
" Vim filetype plugin file
|
||||
" Language: sed
|
||||
" Maintainer: Doug Kearns <dougkearns@gmail.com>
|
||||
" Last Change: 2020 Apr 1
|
||||
|
||||
if exists("b:did_ftplugin")
|
||||
finish
|
||||
endif
|
||||
let b:did_ftplugin = 1
|
||||
|
||||
let s:cpo_save = &cpo
|
||||
set cpo&vim
|
||||
|
||||
setlocal comments=:#
|
||||
setlocal commentstring=#\ %s
|
||||
setlocal formatoptions-=t formatoptions+=croql
|
||||
|
||||
let b:undo_ftplugin = "setl com< cms< fo<"
|
||||
|
||||
if (has("gui_win32") || has("gui_gtk")) && !exists("b:browsefilter")
|
||||
let b:browsefilter = "sed Script Files (*.sed)\t*.sed\n" ..
|
||||
\ "All Files (*.*)\t*.*\n"
|
||||
let b:undo_ftplugin ..= " | unlet! b:browsefilter"
|
||||
endif
|
||||
|
||||
let &cpo = s:cpo_save
|
||||
unlet s:cpo_save
|
||||
|
||||
" vim: nowrap sw=2 sts=2 ts=8
|
||||
@@ -41,6 +41,19 @@ if (has("gui_win32") || has("gui_gtk")) && !exists("b:browsefilter")
|
||||
let b:undo_ftplugin ..= " | unlet! b:browsefilter"
|
||||
endif
|
||||
|
||||
if (exists('b:is_bash') && (b:is_bash == 1)) ||
|
||||
\ (exists('b:is_sh') && (b:is_sh == 1))
|
||||
if !has('gui_running') && executable('less')
|
||||
command! -buffer -nargs=1 Help silent exe '!bash -c "{ help "<args>" 2>/dev/null || man "<args>"; } | LESS= less"' | redraw!
|
||||
elseif has('terminal')
|
||||
command! -buffer -nargs=1 Help silent exe ':term bash -c "help "<args>" 2>/dev/null || man "<args>""'
|
||||
else
|
||||
command! -buffer -nargs=1 Help echo system('bash -c "help <args>" 2>/dev/null || man "<args>"')
|
||||
endif
|
||||
setlocal keywordprg=:Help
|
||||
let b:undo_ftplugin .= '| setlocal keywordprg<'
|
||||
endif
|
||||
|
||||
" Restore the saved compatibility options.
|
||||
let &cpo = s:save_cpo
|
||||
unlet s:save_cpo
|
||||
|
||||
15
runtime/ftplugin/solidity.vim
Normal file
15
runtime/ftplugin/solidity.vim
Normal file
@@ -0,0 +1,15 @@
|
||||
" Vim filetype plugin file
|
||||
" Language: Solidity
|
||||
" Maintainer: Cothi (jiungdev@gmail.com)
|
||||
" Original Author: tomlion (https://github.com/tomlion/vim-solidity)
|
||||
" Last Change: 2022 Sep 27
|
||||
" 2023 Aug 22 Vim Project (did_ftplugin, undo_ftplugin)
|
||||
|
||||
if exists("b:did_ftplugin")
|
||||
finish
|
||||
endif
|
||||
let b:did_ftplugin = 1
|
||||
|
||||
setlocal commentstring=//\ %s
|
||||
|
||||
let b:undo_ftplugin = "setlocal commentstring<"
|
||||
@@ -140,7 +140,7 @@ if !exists("*SQL_SetType")
|
||||
\ )
|
||||
|
||||
" Remove duplicates, since sqlanywhere.vim can exist in the
|
||||
" sytax, indent and ftplugin directory, yet we only want
|
||||
" syntax, indent and ftplugin directory, yet we only want
|
||||
" to display the option once
|
||||
let index = match(sqls, '.\{-}\ze\n')
|
||||
while index > -1
|
||||
@@ -204,7 +204,7 @@ if !exists("*SQL_SetType")
|
||||
endif
|
||||
let b:sql_type_override = new_sql_type
|
||||
|
||||
" Remove any cached SQL since a new sytax will have different
|
||||
" Remove any cached SQL since a new syntax will have different
|
||||
" items and groups
|
||||
if !exists('g:loaded_sql_completion') || g:loaded_sql_completion >= 100
|
||||
call sqlcomplete#ResetCacheSyntax()
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
" Vim filetype plugin file
|
||||
" Language: OpenSSH client configuration file
|
||||
" Previous Maintainer: Nikolai Weibull <now@bitwi.se>
|
||||
" Latest Revision: 2008-07-09
|
||||
" Language: OpenSSH client configuration file
|
||||
" Previous Maintainer: Nikolai Weibull <now@bitwi.se>
|
||||
" Latest Revision: 2008-07-09
|
||||
|
||||
if exists("b:did_ftplugin")
|
||||
finish
|
||||
@@ -11,9 +11,24 @@ let b:did_ftplugin = 1
|
||||
let s:cpo_save = &cpo
|
||||
set cpo&vim
|
||||
|
||||
let b:undo_ftplugin = "setl com< cms< fo<"
|
||||
|
||||
setlocal comments=:# commentstring=#\ %s formatoptions-=t formatoptions+=croql
|
||||
let b:undo_ftplugin = 'setlocal com< cms< fo<'
|
||||
|
||||
if has('unix') && executable('less')
|
||||
if !has('gui_running')
|
||||
command -buffer -nargs=1 Sman
|
||||
\ silent exe '!' . 'LESS= MANPAGER="less --pattern=''^\s+' . <q-args> . '$'' --hilite-search" man ' . 'ssh_config' |
|
||||
\ redraw!
|
||||
elseif has('terminal')
|
||||
command -buffer -nargs=1 Sman
|
||||
\ silent exe 'term ' . 'env LESS= MANPAGER="less --pattern=''' . escape('^\s+' . <q-args> . '$', '\') . ''' --hilite-search" man ' . 'ssh_config'
|
||||
endif
|
||||
if exists(':Sman') == 2
|
||||
setlocal iskeyword+=-
|
||||
setlocal keywordprg=:Sman
|
||||
let b:undo_ftplugin .= '| setlocal keywordprg< iskeyword<'
|
||||
endif
|
||||
endif
|
||||
|
||||
let &cpo = s:cpo_save
|
||||
unlet s:cpo_save
|
||||
|
||||
@@ -15,5 +15,21 @@ let b:undo_ftplugin = "setl com< cms< fo<"
|
||||
|
||||
setlocal comments=:# commentstring=#\ %s formatoptions-=t formatoptions+=croql
|
||||
|
||||
if has('unix') && executable('less')
|
||||
if !has('gui_running')
|
||||
command -buffer -nargs=1 Sman
|
||||
\ silent exe '!' . 'LESS= MANPAGER="less --pattern=''\b' . <q-args> . '\b'' --hilite-search" man ' . 'sudoers' |
|
||||
\ redraw!
|
||||
elseif has('terminal')
|
||||
command -buffer -nargs=1 Sman
|
||||
\ silent exe ':term ' . 'env LESS= MANPAGER="less --pattern=''' . escape('\b' . <q-args> . '\b', '\') . ''' --hilite-search" man ' . 'sudoers'
|
||||
endif
|
||||
if exists(':Sman') == 2
|
||||
setlocal iskeyword+=-
|
||||
setlocal keywordprg=:Sman
|
||||
let b:undo_ftplugin .= '| setlocal keywordprg< iskeyword<'
|
||||
endif
|
||||
endif
|
||||
|
||||
let &cpo = s:cpo_save
|
||||
unlet s:cpo_save
|
||||
|
||||
@@ -7,35 +7,30 @@ if !exists('b:did_ftplugin')
|
||||
runtime! ftplugin/dosini.vim
|
||||
endif
|
||||
|
||||
if !has('unix')
|
||||
finish
|
||||
endif
|
||||
|
||||
if !has('gui_running')
|
||||
command! -buffer -nargs=1 Sman silent exe '!' . KeywordLookup_systemd(<q-args>) | redraw!
|
||||
elseif has('terminal')
|
||||
command! -buffer -nargs=1 Sman silent exe 'term ' . KeywordLookup_systemd(<q-args>)
|
||||
else
|
||||
finish
|
||||
endif
|
||||
|
||||
if !exists('*KeywordLookup_systemd')
|
||||
function KeywordLookup_systemd(keyword) abort
|
||||
let matches = matchlist(getline(search('\v^\s*\[\s*.+\s*\]\s*$', 'nbWz')), '\v^\s*\[\s*(\k+).*\]\s*$')
|
||||
if len(matches) > 1
|
||||
let section = matches[1]
|
||||
return 'LESS= MANPAGER="less --pattern=''(^|,)\s+' . a:keyword . '=$'' --hilite-search" man ' . 'systemd.' . section
|
||||
else
|
||||
return 'LESS= MANPAGER="less --pattern=''(^|,)\s+' . a:keyword . '=$'' --hilite-search" man ' . 'systemd'
|
||||
if has('unix') && executable('less')
|
||||
if !has('gui_running')
|
||||
command -buffer -nargs=1 Sman silent exe '!' . KeywordLookup_systemd(<q-args>) | redraw!
|
||||
elseif has('terminal')
|
||||
command -buffer -nargs=1 Sman silent exe 'term ' . KeywordLookup_systemd(<q-args>)
|
||||
endif
|
||||
if exists(':Sman') == 2
|
||||
if !exists('*KeywordLookup_systemd')
|
||||
function KeywordLookup_systemd(keyword) abort
|
||||
let matches = matchlist(getline(search('\v^\s*\[\s*.+\s*\]\s*$', 'nbWz')), '\v^\s*\[\s*(\k+).*\]\s*$')
|
||||
if len(matches) > 1
|
||||
let section = matches[1]
|
||||
return 'LESS= MANPAGER="less --pattern=''(^|,)\s+' . a:keyword . '=$'' --hilite-search" man ' . 'systemd.' . section
|
||||
else
|
||||
return 'LESS= MANPAGER="less --pattern=''(^|,)\s+' . a:keyword . '=$'' --hilite-search" man ' . 'systemd'
|
||||
endif
|
||||
endfunction
|
||||
endif
|
||||
endfunction
|
||||
endif
|
||||
|
||||
setlocal iskeyword+=-
|
||||
setlocal keywordprg=:Sman
|
||||
|
||||
if !exists('b:undo_ftplugin') || empty(b:undo_ftplugin)
|
||||
let b:undo_ftplugin = 'setlocal keywordprg< iskeyword<'
|
||||
else
|
||||
let b:undo_ftplugin .= '| setlocal keywordprg< iskeyword<'
|
||||
setlocal iskeyword+=-
|
||||
setlocal keywordprg=:Sman
|
||||
if !exists('b:undo_ftplugin') || empty(b:undo_ftplugin)
|
||||
let b:undo_ftplugin = 'setlocal keywordprg< iskeyword<'
|
||||
else
|
||||
let b:undo_ftplugin .= '| setlocal keywordprg< iskeyword<'
|
||||
endif
|
||||
endif
|
||||
endif
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
" Vim filetype plugin file
|
||||
" Language: HMTL Tidy Configuration
|
||||
" Language: HTML Tidy Configuration
|
||||
" Maintainer: Doug Kearns <dougkearns@gmail.com>
|
||||
" Last Change: 2020 Sep 4
|
||||
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
" Language: TOML
|
||||
" Homepage: https://github.com/cespare/vim-toml
|
||||
" Maintainer: Aman Verma
|
||||
" Author: Kevin Ballard <kevin@sb.org>
|
||||
" Author: Lily Ballard <lily@ballards.net>
|
||||
" Last Change: Sep 21, 2021
|
||||
|
||||
if exists('b:did_ftplugin')
|
||||
|
||||
@@ -15,5 +15,21 @@ let b:undo_ftplugin = "setl com< cms< fo<"
|
||||
|
||||
setlocal comments=:# commentstring=#\ %s formatoptions-=t formatoptions+=croql
|
||||
|
||||
if has('unix') && executable('less')
|
||||
if !has('gui_running')
|
||||
command -buffer -nargs=1 Sman
|
||||
\ silent exe '!' . 'LESS= MANPAGER="less --pattern=''^\s{,8}' . <q-args> . '\b'' --hilite-search" man ' . 'udev' |
|
||||
\ redraw!
|
||||
elseif has('terminal')
|
||||
command -buffer -nargs=1 Sman
|
||||
\ silent exe ':term ' . 'env LESS= MANPAGER="less --pattern=''' . escape('^\s{,8}' . <q-args> . '\b', '\') . ''' --hilite-search" man ' . 'udev'
|
||||
endif
|
||||
if exists(':Sman') == 2
|
||||
setlocal iskeyword+=-
|
||||
setlocal keywordprg=:Sman
|
||||
let b:undo_ftplugin .= '| setlocal keywordprg< iskeyword<'
|
||||
endif
|
||||
endif
|
||||
|
||||
let &cpo = s:cpo_save
|
||||
unlet s:cpo_save
|
||||
|
||||
14
runtime/ftplugin/unison.vim
Normal file
14
runtime/ftplugin/unison.vim
Normal file
@@ -0,0 +1,14 @@
|
||||
" Vim filetype plugin file
|
||||
" Language: unison
|
||||
" Maintainer: Anton Parkhomenko <anton@chuwy.me>
|
||||
" Latest Revision: 2023-08-07
|
||||
|
||||
if exists("b:did_ftplugin")
|
||||
finish
|
||||
endif
|
||||
let b:did_ftplugin = 1
|
||||
|
||||
let b:undo_ftplugin = "setl cms< isk<"
|
||||
|
||||
setlocal commentstring=--\ %s
|
||||
setlocal iskeyword+=!,'
|
||||
@@ -1,7 +1,8 @@
|
||||
" Vim filetype plugin
|
||||
" Language: Vim
|
||||
" Maintainer: Bram Moolenaar <Bram@vim.org>
|
||||
" Last Change: 2023 Feb 07
|
||||
" Maintainer: The Vim Project <https://github.com/vim/vim>
|
||||
" Last Change: 2023 Aug 10
|
||||
" Former Maintainer: Bram Moolenaar <Bram@vim.org>
|
||||
|
||||
" Only do this when not done yet for this buffer
|
||||
if exists("b:did_ftplugin")
|
||||
|
||||
@@ -17,7 +17,7 @@ compiler zig_build
|
||||
" Match Zig builtin fns
|
||||
setlocal iskeyword+=@-@
|
||||
|
||||
" Recomended code style, no tabs and 4-space indentation
|
||||
" Recommended code style, no tabs and 4-space indentation
|
||||
setlocal expandtab
|
||||
setlocal tabstop=8
|
||||
setlocal softtabstop=4
|
||||
|
||||
@@ -1,7 +1,8 @@
|
||||
" Vim filetype plugin file
|
||||
" Language: Zimbu
|
||||
" Maintainer: Bram Moolenaar <Bram@vim.org>
|
||||
" Last Change: 2022 Sep 07
|
||||
" Maintainer: The Vim Project <https://github.com/vim/vim>
|
||||
" Last Change: 2023 Aug 10
|
||||
" Former Maintainer: Bram Moolenaar <Bram@vim.org>
|
||||
|
||||
" Only do this when not done yet for this buffer
|
||||
if exists("b:did_ftplugin")
|
||||
|
||||
@@ -2,8 +2,9 @@ vim9script
|
||||
|
||||
# Vim support file to switch off loading plugins for file types
|
||||
#
|
||||
# Maintainer: Bram Moolenaar <Bram@vim.org>
|
||||
# Last Change: 2022 Feb 09
|
||||
# Maintainer: The Vim Project <https://github.com/vim/vim>
|
||||
# Last Change: 2023 Aug 10
|
||||
# Former Maintainer: Bram Moolenaar <Bram@vim.org>
|
||||
|
||||
if exists("g:did_load_ftplugin")
|
||||
unlet g:did_load_ftplugin
|
||||
|
||||
@@ -2,8 +2,9 @@
|
||||
" The commands in this are executed when the GUI is started, after the vimrc
|
||||
" has been executed.
|
||||
"
|
||||
" Maintainer: Bram Moolenaar <Bram@vim.org>
|
||||
" Last change: 2016 Apr 05
|
||||
" Maintainer: The Vim Project <https://github.com/vim/vim>
|
||||
" Last Change: 2023 Aug 10
|
||||
" Former Maintainer: Bram Moolenaar <Bram@vim.org>
|
||||
"
|
||||
" To use it, copy it to
|
||||
" for Unix: ~/.gvimrc
|
||||
|
||||
@@ -1,7 +1,8 @@
|
||||
" Vim support file to switch on loading indent files for file types
|
||||
"
|
||||
" Maintainer: Bram Moolenaar <Bram@vim.org>
|
||||
" Last Change: 2022 Feb 11
|
||||
" Maintainer: The Vim Project <https://github.com/vim/vim>
|
||||
" Last Change: 2023 Aug 10
|
||||
" Former Maintainer: Bram Moolenaar <Bram@vim.org>
|
||||
|
||||
if exists("did_indent_on")
|
||||
finish
|
||||
|
||||
@@ -6,15 +6,16 @@ at ":help indent-expression". Looking at the existing files should give you
|
||||
inspiration.
|
||||
|
||||
If you make a new indent file which would be useful for others, please send it
|
||||
to Bram@vim.org. Include instructions for detecting the file type for this
|
||||
language, by file name extension or by checking a few lines in the file.
|
||||
And please stick to the rules below.
|
||||
to the vim-dev mailing list <vim-dev@vim.org>. Include instructions for
|
||||
detecting the file type for this language, by file name extension or by
|
||||
checking a few lines in the file. And please stick to the rules below.
|
||||
|
||||
If you have remarks about an existing file, send them to the maintainer of
|
||||
that file. Only when you get no response send a message to Bram@vim.org.
|
||||
that file. Only when you get no response send a message to the vim-dev
|
||||
mailing list: <vim-dev@vim.org>.
|
||||
|
||||
If you are the maintainer of an indent file and make improvements, e-mail the
|
||||
new version to Bram@vim.org.
|
||||
new version to the vim-dev mailing list: <vim-dev@vim.org>.
|
||||
|
||||
|
||||
Rules for making an indent file:
|
||||
|
||||
@@ -1,7 +1,8 @@
|
||||
" Vim indent file
|
||||
" Language: Aap recipe
|
||||
" Maintainer: Bram Moolenaar <Bram@vim.org>
|
||||
" Last Change: 2005 Jun 24
|
||||
" Maintainer: The Vim Project <https://github.com/vim/vim>
|
||||
" Last Change: 2023 Aug 10
|
||||
" Former Maintainer: Bram Moolenaar <Bram@vim.org>
|
||||
|
||||
" Only load this indent file when no other was loaded.
|
||||
if exists("b:did_indent")
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
" Vim indent file
|
||||
" Language: bash
|
||||
" Maintainer: Bram
|
||||
" Last Change: 2019 Sep 27
|
||||
" Maintainer: The Vim Project <https://github.com/vim/vim>
|
||||
" Last Change: 2023 Aug 13
|
||||
|
||||
" Only load this indent file when no other was loaded.
|
||||
if exists("b:did_indent")
|
||||
|
||||
@@ -1,7 +1,8 @@
|
||||
" Vim indent file
|
||||
" Language: C
|
||||
" Maintainer: Bram Moolenaar <Bram@vim.org>
|
||||
" Last Change: 2005 Mar 27
|
||||
" Maintainer: The Vim Project <https://github.com/vim/vim>
|
||||
" Last Change: 2023 Aug 10
|
||||
" Former Maintainer: Bram Moolenaar <Bram@vim.org>
|
||||
|
||||
" Only load this indent file when no other was loaded.
|
||||
if exists("b:did_indent")
|
||||
|
||||
@@ -1,7 +1,8 @@
|
||||
" Vim indent file
|
||||
" Language: C++
|
||||
" Maintainer: Bram Moolenaar <Bram@vim.org>
|
||||
" Last Change: 2008 Nov 29
|
||||
" Maintainer: The Vim Project <https://github.com/vim/vim>
|
||||
" Last Change: 2023 Aug 10
|
||||
" Former Maintainer: Bram Moolenaar <Bram@vim.org>
|
||||
|
||||
" Only load this indent file when no other was loaded.
|
||||
if exists("b:did_indent")
|
||||
|
||||
@@ -1,7 +1,8 @@
|
||||
" Vim indent file
|
||||
" Language: CUDA
|
||||
" Maintainer: Bram Moolenaar <Bram@vim.org>
|
||||
" Last Change: 2008 Nov 29
|
||||
" Maintainer: The Vim Project <https://github.com/vim/vim>
|
||||
" Last Change: 2023 Aug 10
|
||||
" Former Maintainer: Bram Moolenaar <Bram@vim.org>
|
||||
|
||||
" Only load this indent file when no other was loaded.
|
||||
if exists("b:did_indent")
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
" Vim indent script for HTML
|
||||
" Maintainer: Bram Moolenaar
|
||||
" Maintainer: The Vim Project <https://github.com/vim/vim>
|
||||
" Original Author: Andy Wokula <anwoku@yahoo.de>
|
||||
" Last Change: 2022 Jan 31
|
||||
" Last Change: 2023 Aug 13
|
||||
" Version: 1.0 "{{{
|
||||
" Description: HTML indent script with cached state for faster indenting on a
|
||||
" range of lines.
|
||||
|
||||
@@ -27,6 +27,16 @@ if exists("*GetLuaIndent")
|
||||
endif
|
||||
|
||||
function! GetLuaIndent()
|
||||
let ignorecase_save = &ignorecase
|
||||
try
|
||||
let &ignorecase = 0
|
||||
return GetLuaIndentIntern()
|
||||
finally
|
||||
let &ignorecase = ignorecase_save
|
||||
endtry
|
||||
endfunction
|
||||
|
||||
function! GetLuaIndentIntern()
|
||||
" Find a non-blank line above the current line.
|
||||
let prevlnum = prevnonblank(v:lnum - 1)
|
||||
|
||||
@@ -41,7 +51,7 @@ function! GetLuaIndent()
|
||||
let prevline = getline(prevlnum)
|
||||
let midx = match(prevline, '^\s*\%(if\>\|for\>\|while\>\|repeat\>\|else\>\|elseif\>\|do\>\|then\>\)')
|
||||
if midx == -1
|
||||
let midx = match(prevline, '{\s*$')
|
||||
let midx = match(prevline, '{\s*\%(--\%([^[].*\)\?\)\?$')
|
||||
if midx == -1
|
||||
let midx = match(prevline, '\<function\>\s*\%(\k\|[.:]\)\{-}\s*(')
|
||||
endif
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
" Vim indent file
|
||||
" Language: Mail
|
||||
" Maintainer: Bram Moolenaar
|
||||
" Last Change: 2021 Sep 26
|
||||
" Maintainer: The Vim Project <https://github.com/vim/vim>
|
||||
" Last Change: 2023 Aug 13
|
||||
|
||||
if exists("b:did_indent")
|
||||
finish
|
||||
|
||||
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user