mirror of
https://github.com/zoriya/vim.git
synced 2025-12-26 17:08:10 +00:00
Compare commits
230 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
d47d83745f | ||
|
|
46643713dc | ||
|
|
ea683da58c | ||
|
|
16b3578f35 | ||
|
|
d563883a1f | ||
|
|
2931f2a5df | ||
|
|
922a443cfd | ||
|
|
ff330ff2c4 | ||
|
|
cf703fe9d6 | ||
|
|
2321ca2a78 | ||
|
|
9a27c7fde6 | ||
|
|
c4a908e836 | ||
|
|
abd468ed0f | ||
|
|
f18c4dbbe5 | ||
|
|
0eaadec6b2 | ||
|
|
169ebb0804 | ||
|
|
53f1673cd9 | ||
|
|
1b0c1d050e | ||
|
|
aeac9006d5 | ||
|
|
64d8e25bf6 | ||
|
|
6384c5db8d | ||
|
|
100f5c90f4 | ||
|
|
7947312871 | ||
|
|
77b642501a | ||
|
|
df0db16cf7 | ||
|
|
72b4b870fc | ||
|
|
1b0c2fcf6e | ||
|
|
31845093b7 | ||
|
|
75537a93e9 | ||
|
|
33a80eeb85 | ||
|
|
030cddc7ec | ||
|
|
26b84339fd | ||
|
|
f9e687e068 | ||
|
|
c8fe338d64 | ||
|
|
d5824ce1b5 | ||
|
|
30180b8dad | ||
|
|
e0ab94e712 | ||
|
|
d77f9d595e | ||
|
|
bc54f3f3fe | ||
|
|
dac1947bb3 | ||
|
|
dda933d06c | ||
|
|
b07a82b6d5 | ||
|
|
349e7d94e6 | ||
|
|
0913a1089a | ||
|
|
f7f3e32fcc | ||
|
|
87bc3f7459 | ||
|
|
de653f0880 | ||
|
|
b62cc36a60 | ||
|
|
5a49789a9b | ||
|
|
dd905a2ae1 | ||
|
|
a5d4121eed | ||
|
|
11fbc2866c | ||
|
|
44f660c421 | ||
|
|
cd055da370 | ||
|
|
da9ce2cde1 | ||
|
|
19a1669ffc | ||
|
|
417ccd7138 | ||
|
|
779f2fc3a7 | ||
|
|
f1b512a0b6 | ||
|
|
641ad6c7ac | ||
|
|
5c80908ced | ||
|
|
04c4ce650f | ||
|
|
0874a83e9b | ||
|
|
d8b554904d | ||
|
|
f37506f60f | ||
|
|
c628fdcd46 | ||
|
|
89bcfda683 | ||
|
|
4792255eff | ||
|
|
64cefedfc8 | ||
|
|
edf3f97ae2 | ||
|
|
965ed14973 | ||
|
|
0418609534 | ||
|
|
7f7bd297d6 | ||
|
|
7683aaa506 | ||
|
|
cb03397aba | ||
|
|
6fc8227ebf | ||
|
|
fec246d2c5 | ||
|
|
36f44c21da | ||
|
|
d90b6c02e2 | ||
|
|
f4145d8e99 | ||
|
|
885c00eabe | ||
|
|
0abe0522d0 | ||
|
|
0426bae2ab | ||
|
|
e999782e36 | ||
|
|
46328f9a1c | ||
|
|
4427db9bb2 | ||
|
|
6a402edbeb | ||
|
|
1773ddfdcd | ||
|
|
e67d546f3c | ||
|
|
818078ddfb | ||
|
|
73d4e4c892 | ||
|
|
3056735ae8 | ||
|
|
9f8187c335 | ||
|
|
ffdf08c94e | ||
|
|
821179809d | ||
|
|
e17bdffff7 | ||
|
|
1195669f9e | ||
|
|
44ca54aeb9 | ||
|
|
9992237a3e | ||
|
|
76efafba2a | ||
|
|
2b529bb626 | ||
|
|
d29459baa6 | ||
|
|
2570957607 | ||
|
|
7df0f6313a | ||
|
|
e4a3bcf28d | ||
|
|
dd74ab9b46 | ||
|
|
4d6f32cbfb | ||
|
|
f1f0792e55 | ||
|
|
9f28953f0c | ||
|
|
db249f26ed | ||
|
|
ec42059b78 | ||
|
|
54b6352c6f | ||
|
|
78c7e274f2 | ||
|
|
424d74bb20 | ||
|
|
015efc32c1 | ||
|
|
5b30291785 | ||
|
|
ba2099034f | ||
|
|
358308dd99 | ||
|
|
b58fe4588c | ||
|
|
d6f2ee32dc | ||
|
|
77401add71 | ||
|
|
7b668e83d0 | ||
|
|
1b58cdd160 | ||
|
|
17f1347b86 | ||
|
|
973365dcc4 | ||
|
|
f267f8bdf7 | ||
|
|
9baf297c99 | ||
|
|
de7762a2c1 | ||
|
|
9b7f8ce9eb | ||
|
|
920694c1b6 | ||
|
|
989f592f7f | ||
|
|
dd1248143e | ||
|
|
843b884461 | ||
|
|
e07e797db0 | ||
|
|
e11d61a3b1 | ||
|
|
66e29d7112 | ||
|
|
f04507d132 | ||
|
|
9e4d8215d3 | ||
|
|
7571d55f7d | ||
|
|
1381d79147 | ||
|
|
3392883770 | ||
|
|
bfd096d020 | ||
|
|
af9c4c9b57 | ||
|
|
d3c907b5d2 | ||
|
|
6bff02eb53 | ||
|
|
91984b9034 | ||
|
|
e5a8f35b42 | ||
|
|
f5a39447a8 | ||
|
|
13d216d302 | ||
|
|
dc1f1645cb | ||
|
|
4f416e4124 | ||
|
|
22177f0c08 | ||
|
|
386600f0cb | ||
|
|
16350cb979 | ||
|
|
58b853460a | ||
|
|
e59215c7dc | ||
|
|
e56132bb41 | ||
|
|
cff50f5ec9 | ||
|
|
35a4cfa200 | ||
|
|
2d1a248762 | ||
|
|
d58b0f982a | ||
|
|
4ae209597c | ||
|
|
e9d58a6459 | ||
|
|
0952131376 | ||
|
|
b5ae48e9ff | ||
|
|
ebcccad573 | ||
|
|
b338483152 | ||
|
|
95ec9d6a6a | ||
|
|
d823fa910c | ||
|
|
107abd2ca5 | ||
|
|
0e5d3a2940 | ||
|
|
c257487035 | ||
|
|
91c5262b19 | ||
|
|
bcc1dcc981 | ||
|
|
446a973ce3 | ||
|
|
717e196060 | ||
|
|
a6b7a08ae0 | ||
|
|
a357e44ccd | ||
|
|
50fa8dd00c | ||
|
|
f71d7b9ee5 | ||
|
|
c9fb77c692 | ||
|
|
7547a78446 | ||
|
|
36d1c0fef4 | ||
|
|
71dd9744cf | ||
|
|
7a9a5f4019 | ||
|
|
09de17536d | ||
|
|
2147746cf8 | ||
|
|
a772ec5e91 | ||
|
|
b73598e2f0 | ||
|
|
e4a76ad0e7 | ||
|
|
3a93838339 | ||
|
|
ba98bef191 | ||
|
|
a8e691d449 | ||
|
|
812ad4f3a2 | ||
|
|
c8ce615299 | ||
|
|
3321e9d8a3 | ||
|
|
472a0a880a | ||
|
|
00ff380295 | ||
|
|
8e97bd74b5 | ||
|
|
446cce6d53 | ||
|
|
5b4a3767f6 | ||
|
|
c96a2f3b88 | ||
|
|
328604307b | ||
|
|
83b3c3d8a0 | ||
|
|
66459b7c98 | ||
|
|
d76a0c15f8 | ||
|
|
7522f69821 | ||
|
|
7ab6defcaf | ||
|
|
7dc5e2e486 | ||
|
|
5971dab112 | ||
|
|
b650b9878e | ||
|
|
46c4d4ac66 | ||
|
|
c90f2aedd0 | ||
|
|
9d5b876d45 | ||
|
|
fe9489233c | ||
|
|
877e957798 | ||
|
|
ee695f787a | ||
|
|
cf25fdb8f1 | ||
|
|
4c38d66d25 | ||
|
|
7cba71d7e3 | ||
|
|
edf634e0f1 | ||
|
|
abb71fbd39 | ||
|
|
472472898a | ||
|
|
86f2cd5bc5 | ||
|
|
796aa9c804 | ||
|
|
bc8801c931 | ||
|
|
bc7ce675b2 | ||
|
|
8dd3a43d75 | ||
|
|
ba96e9af38 | ||
|
|
acadbeabe1 |
@@ -62,6 +62,7 @@ addons:
|
||||
- python3-dev
|
||||
- liblua5.1-0-dev
|
||||
- lua5.1
|
||||
- cscope
|
||||
|
||||
before_install:
|
||||
- pip install --user cpp-coveralls
|
||||
|
||||
4
Filelist
4
Filelist
@@ -93,6 +93,7 @@ SRC_ALL = \
|
||||
src/vim.h \
|
||||
src/winclip.c \
|
||||
src/window.c \
|
||||
src/tee/tee.c \
|
||||
src/xxd/xxd.c \
|
||||
src/main.aap \
|
||||
src/testdir/main.aap \
|
||||
@@ -263,6 +264,7 @@ SRC_UNIX = \
|
||||
src/workshop.h \
|
||||
src/wsdebug.c \
|
||||
src/wsdebug.h \
|
||||
src/tee/Makefile \
|
||||
src/xxd/Makefile \
|
||||
|
||||
# source files for both DOS and Unix
|
||||
@@ -314,6 +316,7 @@ SRC_DOS = \
|
||||
src/Make_dvc.mak \
|
||||
src/Make_ming.mak \
|
||||
src/Make_mvc.mak \
|
||||
tools/rename.bat \
|
||||
src/bigvim.bat \
|
||||
src/bigvim64.bat \
|
||||
src/msvcsetup.bat \
|
||||
@@ -357,6 +360,7 @@ SRC_DOS = \
|
||||
src/vimrun.c \
|
||||
src/xpm_w32.c \
|
||||
src/xpm_w32.h \
|
||||
src/tee/Make_mvc.mak \
|
||||
src/xxd/Make_bc5.mak \
|
||||
src/xxd/Make_ming.mak \
|
||||
src/xxd/Make_mvc.mak \
|
||||
|
||||
111
Makefile
111
Makefile
@@ -51,12 +51,9 @@ all install uninstall tools config configure reconfig proto depend lint tags typ
|
||||
#
|
||||
# dossrc vim##src.zip sources for MS-DOS
|
||||
# dosrt vim##rt.zip runtime for MS-DOS
|
||||
# dosbin vim##d16.zip binary for MS-DOS 16 bits
|
||||
# vim##d32.zip binary for MS-DOS 32 bits
|
||||
# vim##w32.zip binary for Win32
|
||||
# dosbin vim##w32.zip binary for Win32
|
||||
# gvim##.zip binary for GUI Win32
|
||||
# gvim##ole.zip OLE exe for Win32 GUI
|
||||
# gvim##_s.zip exe for Win32s GUI
|
||||
#
|
||||
# OBSOLETE
|
||||
# amisrc vim##src.tgz sources for Amiga
|
||||
@@ -73,15 +70,6 @@ all install uninstall tools config configure reconfig proto depend lint tags typ
|
||||
MAJOR = 7
|
||||
MINOR = 4
|
||||
|
||||
# Uncomment this line if the Win32s version is to be included.
|
||||
# DOSBIN_S = dosbin_s
|
||||
|
||||
# Uncomment this line if the 16 bit DOS version is to be included.
|
||||
# DOSBIN_D16 = dosbin_d16
|
||||
|
||||
# Uncomment this line if the 32 bit DOS version is to be included.
|
||||
# DOSBIN_D32 = dosbin_d32
|
||||
|
||||
# CHECKLIST for creating a new version:
|
||||
#
|
||||
# - Update Vim version number. For a test version in: src/version.h, Contents,
|
||||
@@ -149,31 +137,35 @@ MINOR = 4
|
||||
# - > cd src
|
||||
# > nmake -f Make_mvc.mak
|
||||
# - Run the tests:
|
||||
# > rm testdir/*.out testdir/*.res
|
||||
# > nmake -f Make_mvc.mak testclean
|
||||
# > nmake -f Make_mvc.mak test
|
||||
# - check the output.
|
||||
# - Rename vim.exe to vimw32.exe, xxd/xxd.exe to xxdw32.exe.
|
||||
# - Rename vim.pdb to vimw32.pdb.
|
||||
# - Rename install.exe to installw32.exe and uninstal.exe to uninstalw32.exe.
|
||||
# - Rename (using tools/rename.bat):
|
||||
# vim.exe to vimw32.exe
|
||||
# tee/tee.exe to teew32.exe
|
||||
# xxd/xxd.exe to xxdw32.exe
|
||||
# vim.pdb to vimw32.pdb
|
||||
# install.exe to installw32.exe
|
||||
# uninstal.exe to uninstalw32.exe
|
||||
# Win32 GUI version build:
|
||||
# - > cd src
|
||||
# > nmake -f Make_mvc.mak GUI=yes
|
||||
# - Run the tests:
|
||||
# > rm testdir/*.out testdir/*.res
|
||||
# > nmake -f Make_mvc.mak testclean
|
||||
# > nmake -f Make_mvc.mak testgvim
|
||||
# - check the output.
|
||||
# - move "gvim.exe" to here (otherwise the OLE version will overwrite it).
|
||||
# - Move gvim.pdb to here.
|
||||
# - Copy "GvimExt/gvimext.dll" to here.
|
||||
# - Delete vimrun.exe, install.exe and uninstal.exe.
|
||||
# Win32 GUI version with OLE, PERL, TCL, PYTHON and dynamic IME:
|
||||
# Win32 GUI version with OLE, PERL, Ruby, TCL, PYTHON and dynamic IME:
|
||||
# - Install the interfaces you want, see src/INSTALLpc.txt
|
||||
# - Build:
|
||||
# > cd src
|
||||
# Adjust bigvim.bat to match the version of each interface you want.
|
||||
# > bigvim.bat
|
||||
# - Run the tests:
|
||||
# > rm testdir/*.out testdir/*.res
|
||||
# > nmake -f Make_mvc.mak testclean
|
||||
# > nmake -f Make_mvc.mak testgvim
|
||||
# - check the output.
|
||||
# - Rename "gvim.exe" to "gvim_ole.exe".
|
||||
@@ -187,7 +179,8 @@ MINOR = 4
|
||||
# NSIS self installing exe:
|
||||
# - To get NSIS see http://nsis.sourceforge.net
|
||||
# - Make sure gvim_ole.exe, vimw32.exe, installw32.exe,
|
||||
# uninstalw32.exe and xxdw32.exe have been build as mentioned above.
|
||||
# uninstalw32.exe, teew32.exe and xxdw32.exe have been build as mentioned
|
||||
# above.
|
||||
# - copy these files (get them from a binary archive or build them):
|
||||
# gvimext.dll in src/GvimExt
|
||||
# gvimext64.dll in src/GvimExt
|
||||
@@ -221,15 +214,7 @@ MINOR = 4
|
||||
# 32 bit DOS version: Support was removed in 7.4.1399. When syncing to before
|
||||
# that it probably won't build.
|
||||
#
|
||||
# Win32s GUI version: (requires a very old compiler)
|
||||
# - Set environment for Visual C++ 4.1 (requires a new console window):
|
||||
# "vcvars32.bat" (use the path for VC 4.1 e:\msdev\bin)
|
||||
# - "nmake -f Make_mvc.mak GUI=yes INTL=no clean" (use the path for VC 4.1)
|
||||
# - "nmake -f Make_mvc.mak GUI=yes INTL=no" (use the path for VC 4.1)
|
||||
# - Rename "gvim.exe" to "gvim_w32s.exe".
|
||||
# - Rename "install.exe" to "installw32.exe"
|
||||
# - Rename "uninstal.exe" to "uninstalw32.exe"
|
||||
# - The produced uninstalw32.exe and vimrun.exe are used.
|
||||
# Win32s GUI version: Support was removed in patch 7.4.1364.
|
||||
#
|
||||
# OS/2 support was removed in patch 7.4.1008. If you want to give it a try
|
||||
# sync to before that and check the old version of this Makefile for
|
||||
@@ -268,12 +253,9 @@ dist/comment:
|
||||
mkdir dist/comment
|
||||
|
||||
COMMENT_RT = comment/$(VERSION)-rt
|
||||
COMMENT_D16 = comment/$(VERSION)-bin-d16
|
||||
COMMENT_D32 = comment/$(VERSION)-bin-d32
|
||||
COMMENT_W32 = comment/$(VERSION)-bin-w32
|
||||
COMMENT_GVIM = comment/$(VERSION)-bin-gvim
|
||||
COMMENT_OLE = comment/$(VERSION)-bin-ole
|
||||
COMMENT_W32S = comment/$(VERSION)-bin-w32s
|
||||
COMMENT_SRC = comment/$(VERSION)-src
|
||||
COMMENT_HTML = comment/$(VERSION)-html
|
||||
COMMENT_FARSI = comment/$(VERSION)-farsi
|
||||
@@ -281,12 +263,6 @@ COMMENT_FARSI = comment/$(VERSION)-farsi
|
||||
dist/$(COMMENT_RT): dist/comment
|
||||
echo "Vim - Vi IMproved - v$(VDOT) runtime files for MS-DOS and MS-Windows" > dist/$(COMMENT_RT)
|
||||
|
||||
dist/$(COMMENT_D16): dist/comment
|
||||
echo "Vim - Vi IMproved - v$(VDOT) binaries for MS-DOS 16 bit real mode" > dist/$(COMMENT_D16)
|
||||
|
||||
dist/$(COMMENT_D32): dist/comment
|
||||
echo "Vim - Vi IMproved - v$(VDOT) binaries for MS-DOS 32 bit protected mode" > dist/$(COMMENT_D32)
|
||||
|
||||
dist/$(COMMENT_W32): dist/comment
|
||||
echo "Vim - Vi IMproved - v$(VDOT) binaries for MS-Windows NT/95" > dist/$(COMMENT_W32)
|
||||
|
||||
@@ -296,9 +272,6 @@ dist/$(COMMENT_GVIM): dist/comment
|
||||
dist/$(COMMENT_OLE): dist/comment
|
||||
echo "Vim - Vi IMproved - v$(VDOT) MS-Windows GUI binaries with OLE support" > dist/$(COMMENT_OLE)
|
||||
|
||||
dist/$(COMMENT_W32S): dist/comment
|
||||
echo "Vim - Vi IMproved - v$(VDOT) GUI binaries for MS-Windows 3.1/3.11" > dist/$(COMMENT_W32S)
|
||||
|
||||
dist/$(COMMENT_SRC): dist/comment
|
||||
echo "Vim - Vi IMproved - v$(VDOT) sources for MS-DOS and MS-Windows" > dist/$(COMMENT_SRC)
|
||||
|
||||
@@ -501,7 +474,8 @@ runtime_unix2dos: dosrt_files
|
||||
cd dist/vim/$(VIMRTDIR); tar cf - * \
|
||||
| (cd ../../../runtime/dos; tar xf -)
|
||||
|
||||
dosbin: prepare dosbin_gvim dosbin_w32 $(DOSBIN_D32) dosbin_ole $(DOSBIN_S) $(DOSBIN_D16)
|
||||
dosbin: prepare dosbin_gvim dosbin_w32 dosbin_ole $(DOSBIN_S)
|
||||
-rm $(IN_README_DIR)
|
||||
|
||||
# make Win32 gvim
|
||||
dosbin_gvim: dist no_title.vim dist/$(COMMENT_GVIM)
|
||||
@@ -512,8 +486,8 @@ dosbin_gvim: dist no_title.vim dist/$(COMMENT_GVIM)
|
||||
tar cf - \
|
||||
$(BIN_DOS) \
|
||||
| (cd dist/vim/$(VIMRTDIR); tar xf -)
|
||||
-rm $(IN_README_DIR)
|
||||
cp gvim.exe dist/vim/$(VIMRTDIR)/gvim.exe
|
||||
cp teew32.exe dist/vim/$(VIMRTDIR)/tee.exe
|
||||
cp xxdw32.exe dist/vim/$(VIMRTDIR)/xxd.exe
|
||||
cp vimrun.exe dist/vim/$(VIMRTDIR)/vimrun.exe
|
||||
cp installw32.exe dist/vim/$(VIMRTDIR)/install.exe
|
||||
@@ -532,43 +506,13 @@ dosbin_w32: dist no_title.vim dist/$(COMMENT_W32)
|
||||
$(BIN_DOS) \
|
||||
| (cd dist/vim/$(VIMRTDIR); tar xf -)
|
||||
cp vimw32.exe dist/vim/$(VIMRTDIR)/vim.exe
|
||||
cp teew32.exe dist/vim/$(VIMRTDIR)/tee.exe
|
||||
cp xxdw32.exe dist/vim/$(VIMRTDIR)/xxd.exe
|
||||
cp installw32.exe dist/vim/$(VIMRTDIR)/install.exe
|
||||
cp uninstalw32.exe dist/vim/$(VIMRTDIR)/uninstal.exe
|
||||
cd dist && zip -9 -rD -z vim$(VERSION)w32.zip vim <$(COMMENT_W32)
|
||||
cp vimw32.pdb dist/vim$(VERSION)w32.pdb
|
||||
|
||||
# make 32bit DOS
|
||||
dosbin_d32: dist no_title.vim dist/$(COMMENT_D32)
|
||||
-rm -rf dist/vim$(VERSION)d32.zip
|
||||
-rm -rf dist/vim
|
||||
mkdir dist/vim
|
||||
mkdir dist/vim/$(VIMRTDIR)
|
||||
tar cf - \
|
||||
$(BIN_DOS) \
|
||||
| (cd dist/vim/$(VIMRTDIR); tar xf -)
|
||||
cp vimd32.exe dist/vim/$(VIMRTDIR)/vim.exe
|
||||
cp xxdd32.exe dist/vim/$(VIMRTDIR)/xxd.exe
|
||||
cp installd32.exe dist/vim/$(VIMRTDIR)/install.exe
|
||||
cp uninstald32.exe dist/vim/$(VIMRTDIR)/uninstal.exe
|
||||
cp csdpmi4b.zip dist/vim/$(VIMRTDIR)
|
||||
cd dist && zip -9 -rD -z vim$(VERSION)d32.zip vim <$(COMMENT_D32)
|
||||
|
||||
# make 16bit DOS
|
||||
dosbin_d16: dist no_title.vim dist/$(COMMENT_D16)
|
||||
-rm -rf dist/vim$(VERSION)d16.zip
|
||||
-rm -rf dist/vim
|
||||
mkdir dist/vim
|
||||
mkdir dist/vim/$(VIMRTDIR)
|
||||
tar cf - \
|
||||
$(BIN_DOS) \
|
||||
| (cd dist/vim/$(VIMRTDIR); tar xf -)
|
||||
cp vimd16.exe dist/vim/$(VIMRTDIR)/vim.exe
|
||||
cp xxdd16.exe dist/vim/$(VIMRTDIR)/xxd.exe
|
||||
cp installd16.exe dist/vim/$(VIMRTDIR)/install.exe
|
||||
cp uninstald16.exe dist/vim/$(VIMRTDIR)/uninstal.exe
|
||||
cd dist && zip -9 -rD -z vim$(VERSION)d16.zip vim <$(COMMENT_D16)
|
||||
|
||||
# make Win32 gvim with OLE
|
||||
dosbin_ole: dist no_title.vim dist/$(COMMENT_OLE)
|
||||
-rm -rf dist/gvim$(VERSION)ole.zip
|
||||
@@ -579,6 +523,7 @@ dosbin_ole: dist no_title.vim dist/$(COMMENT_OLE)
|
||||
$(BIN_DOS) \
|
||||
| (cd dist/vim/$(VIMRTDIR); tar xf -)
|
||||
cp gvim_ole.exe dist/vim/$(VIMRTDIR)/gvim.exe
|
||||
cp teew32.exe dist/vim/$(VIMRTDIR)/tee.exe
|
||||
cp xxdw32.exe dist/vim/$(VIMRTDIR)/xxd.exe
|
||||
cp vimrun.exe dist/vim/$(VIMRTDIR)/vimrun.exe
|
||||
cp installw32.exe dist/vim/$(VIMRTDIR)/install.exe
|
||||
@@ -590,22 +535,6 @@ dosbin_ole: dist no_title.vim dist/$(COMMENT_OLE)
|
||||
cd dist && zip -9 -rD -z gvim$(VERSION)ole.zip vim <$(COMMENT_OLE)
|
||||
cp gvim_ole.pdb dist/gvim$(VERSION)ole.pdb
|
||||
|
||||
# make Win32s gvim
|
||||
dosbin_s: dist no_title.vim dist/$(COMMENT_W32S)
|
||||
-rm -rf dist/gvim$(VERSION)_s.zip
|
||||
-rm -rf dist/vim
|
||||
mkdir dist/vim
|
||||
mkdir dist/vim/$(VIMRTDIR)
|
||||
tar cf - \
|
||||
$(BIN_DOS) \
|
||||
| (cd dist/vim/$(VIMRTDIR); tar xf -)
|
||||
cp gvim_w32s.exe dist/vim/$(VIMRTDIR)/gvim.exe
|
||||
cp xxdd32.exe dist/vim/$(VIMRTDIR)/xxd.exe
|
||||
cp README_w32s.txt dist/vim/$(VIMRTDIR)
|
||||
cp installw32.exe dist/vim/$(VIMRTDIR)/install.exe
|
||||
cp uninstalw32.exe dist/vim/$(VIMRTDIR)/uninstal.exe
|
||||
cd dist && zip -9 -rD -z gvim$(VERSION)_s.zip vim <$(COMMENT_W32S)
|
||||
|
||||
html: dist dist/$(COMMENT_HTML)
|
||||
-rm -rf dist/vim$(VERSION)html.zip
|
||||
cd runtime/doc && zip -9 -z ../../dist/vim$(VERSION)html.zip *.html <../../dist/$(COMMENT_HTML)
|
||||
|
||||
@@ -26,9 +26,10 @@ build_script:
|
||||
test_script:
|
||||
- cd src/testdir
|
||||
# Testing with MSVC gvim
|
||||
- path C:\Python35-x64;%PATH%
|
||||
- nmake -f Make_dos.mak VIMPROG=..\gvim
|
||||
- nmake -f Make_dos.mak clean
|
||||
# Testing with MingW console version
|
||||
- nmake -f Make_dos.mak VIMPROG=..\vim
|
||||
|
||||
# vim: sw=2 sts=2 et ts=2 sr
|
||||
# vim: sw=2 sts=2 et ts=8 sr
|
||||
|
||||
@@ -188,6 +188,7 @@ Section "Vim executables and runtime files"
|
||||
File /oname=install.exe ${VIMSRC}\installw32.exe
|
||||
File /oname=uninstal.exe ${VIMSRC}\uninstalw32.exe
|
||||
File ${VIMSRC}\vimrun.exe
|
||||
File /oname=tee.exe ${VIMSRC}\teew32.exe
|
||||
File /oname=xxd.exe ${VIMSRC}\xxdw32.exe
|
||||
File ${VIMTOOLS}\diff.exe
|
||||
File ${VIMRT}\vimtutor.bat
|
||||
|
||||
@@ -93,7 +93,7 @@ function! s:GetBufferRubyEntity( name, type, ... )
|
||||
|
||||
let stopline = 1
|
||||
|
||||
let crex = '^\s*\<' . a:type . '\>\s*\<' . a:name . '\>\s*\(<\s*.*\s*\)\?'
|
||||
let crex = '^\s*\<' . a:type . '\>\s*\<' . escape(a:name, '*') . '\>\s*\(<\s*.*\s*\)\?'
|
||||
let [lnum,lcol] = searchpos( crex, 'w' )
|
||||
"let [lnum,lcol] = searchpairpos( crex . '\zs', '', '\(end\|}\)', 'w' )
|
||||
|
||||
@@ -149,7 +149,7 @@ function! s:GetRubyVarType(v)
|
||||
let ctors = ctors.'\)'
|
||||
|
||||
let fstr = '=\s*\([^ \t]\+.' . ctors .'\>\|[\[{"''/]\|%[xwQqr][(\[{@]\|[A-Za-z0-9@:\-()\.]\+...\?\|lambda\|&\)'
|
||||
let sstr = ''.a:v.'\>\s*[+\-*/]*'.fstr
|
||||
let sstr = ''.escape(a:v, '*').'\>\s*[+\-*/]*'.fstr
|
||||
let [lnum,lcol] = searchpos(sstr,'nb',stopline)
|
||||
if lnum != 0 && lcol != 0
|
||||
let str = matchstr(getline(lnum),fstr,lcol)
|
||||
@@ -266,6 +266,28 @@ class VimRubyCompletion
|
||||
end
|
||||
end
|
||||
|
||||
def load_gems
|
||||
fpath = VIM::evaluate("get(g:, 'rubycomplete_gemfile_path', 'Gemfile')")
|
||||
return unless File.file?(fpath) && File.readable?(fpath)
|
||||
want_bundler = VIM::evaluate("get(g:, 'rubycomplete_use_bundler')")
|
||||
parse_file = !want_bundler
|
||||
begin
|
||||
require 'bundler'
|
||||
Bundler.setup
|
||||
Bundler.require
|
||||
rescue Exception
|
||||
parse_file = true
|
||||
end
|
||||
if parse_file
|
||||
File.new(fpath).each_line do |line|
|
||||
begin
|
||||
require $1 if /\s*gem\s*['"]([^'"]+)/.match(line)
|
||||
rescue Exception
|
||||
end
|
||||
end
|
||||
end
|
||||
end
|
||||
|
||||
def load_buffer_class(name)
|
||||
dprint "load_buffer_class(%s) START" % name
|
||||
classdef = get_buffer_entity(name, 's:GetBufferRubyClass("%s")')
|
||||
@@ -588,6 +610,10 @@ class VimRubyCompletion
|
||||
load_rails
|
||||
end
|
||||
|
||||
want_gems = VIM::evaluate("get(g:, 'rubycomplete_load_gemfile')")
|
||||
load_gems unless want_gems.to_i.zero?
|
||||
|
||||
|
||||
input = VIM::Buffer.current.line
|
||||
cpos = VIM::Window.current.cursor[1] - 1
|
||||
input = input[0..cpos]
|
||||
@@ -678,7 +704,9 @@ class VimRubyCompletion
|
||||
cv = eval("self.class.constants")
|
||||
vartype = get_var_type( receiver )
|
||||
dprint "vartype: %s" % vartype
|
||||
if vartype != ''
|
||||
|
||||
invalid_vartype = ['', "gets"]
|
||||
if !invalid_vartype.include?(vartype)
|
||||
load_buffer_class( vartype )
|
||||
|
||||
begin
|
||||
@@ -706,7 +734,7 @@ class VimRubyCompletion
|
||||
methods.concat m.instance_methods(false)
|
||||
}
|
||||
end
|
||||
variables += add_rails_columns( "#{vartype}" ) if vartype && vartype.length > 0
|
||||
variables += add_rails_columns( "#{vartype}" ) if vartype && !invalid_vartype.include?(vartype)
|
||||
|
||||
when /^\(?\s*[A-Za-z0-9:^@.%\/+*\(\)]+\.\.\.?[A-Za-z0-9:^@.%\/+*\(\)]+\s*\)?\.([^.]*)/
|
||||
message = $1
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
" vim: tw=0 ts=4 sw=4
|
||||
" Vim color file
|
||||
" Maintainer: Ron Aaron <ron@ronware.org>
|
||||
" Last Change: 2013 May 23
|
||||
" Last Change: 2016 Sep 04
|
||||
|
||||
hi clear
|
||||
set background=dark
|
||||
@@ -45,6 +45,7 @@ hi TabLineFill term=bold,reverse cterm=bold ctermfg=lightblue ctermbg=white g
|
||||
hi TabLineSel term=reverse ctermfg=white ctermbg=lightblue guifg=white guibg=blue
|
||||
hi Underlined term=underline cterm=bold,underline ctermfg=lightblue guifg=lightblue gui=bold,underline
|
||||
hi Ignore ctermfg=black ctermbg=black guifg=black guibg=black
|
||||
hi EndOfBuffer term=bold cterm=bold ctermfg=darkred guifg=#cc0000 gui=bold
|
||||
hi link IncSearch Visual
|
||||
hi link String Constant
|
||||
hi link Character Constant
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
" Vim compiler file
|
||||
" Compiler: Cucumber
|
||||
" Maintainer: Tim Pope <vimNOSPAM@tpope.org>
|
||||
" Last Change: 2010 Aug 09
|
||||
" Last Change: 2016 Aug 29
|
||||
|
||||
if exists("current_compiler")
|
||||
finish
|
||||
@@ -19,7 +19,7 @@ CompilerSet makeprg=cucumber
|
||||
|
||||
CompilerSet errorformat=
|
||||
\%W%m\ (Cucumber::Undefined),
|
||||
\%E%m\ (%.%#),
|
||||
\%E%m\ (%\\S%#),
|
||||
\%Z%f:%l,
|
||||
\%Z%f:%l:%.%#
|
||||
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
" Vim compiler file
|
||||
" Compiler: Haml
|
||||
" Maintainer: Tim Pope <vimNOSPAM@tpope.org>
|
||||
" Last Change: 2013 May 30
|
||||
" Last Change: 2016 Aug 29
|
||||
|
||||
if exists("current_compiler")
|
||||
finish
|
||||
@@ -15,7 +15,7 @@ endif
|
||||
let s:cpo_save = &cpo
|
||||
set cpo-=C
|
||||
|
||||
CompilerSet makeprg=haml\ -c
|
||||
CompilerSet makeprg=haml
|
||||
|
||||
CompilerSet errorformat=
|
||||
\Haml\ %trror\ on\ line\ %l:\ %m,
|
||||
|
||||
@@ -27,7 +27,11 @@ CompilerSet errorformat=
|
||||
\%\\s%#[%f:%l:\ %#%m,
|
||||
\%\\s%#%f:%l:\ %#%m,
|
||||
\%\\s%#%f:%l:,
|
||||
\%m\ [%f:%l]:
|
||||
\%m\ [%f:%l]:,
|
||||
\%+Erake\ aborted!,
|
||||
\%+EDon't\ know\ how\ to\ build\ task\ %.%#,
|
||||
\%+Einvalid\ option:%.%#,
|
||||
\%+Irake\ %\\S%\\+%\\s%\\+#\ %.%#
|
||||
|
||||
let &cpo = s:cpo_save
|
||||
unlet s:cpo_save
|
||||
|
||||
@@ -22,9 +22,10 @@ CompilerSet errorformat=
|
||||
\%f:%l:\ %tarning:\ %m,
|
||||
\%E%.%#:in\ `load':\ %f:%l:%m,
|
||||
\%E%f:%l:in\ `%*[^']':\ %m,
|
||||
\%-Z\ \ \ \ \ \#\ %f:%l:%.%#,
|
||||
\%-Z\ \ \ \ \ %\\+\#\ %f:%l:%.%#,
|
||||
\%E\ \ %\\d%\\+)%.%#,
|
||||
\%C\ \ \ \ \ %m,
|
||||
\%C%\\s%#,
|
||||
\%-G%.%#
|
||||
|
||||
let &cpo = s:cpo_save
|
||||
|
||||
@@ -17,6 +17,8 @@ let s:cpo_save = &cpo
|
||||
set cpo-=C
|
||||
|
||||
CompilerSet makeprg=testrb
|
||||
" CompilerSet makeprg=ruby\ -Itest
|
||||
" CompilerSet makeprg=m
|
||||
|
||||
CompilerSet errorformat=\%W\ %\\+%\\d%\\+)\ Failure:,
|
||||
\%C%m\ [%f:%l]:,
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
" Vim compiler file
|
||||
" Compiler: Sass
|
||||
" Maintainer: Tim Pope <vimNOSPAM@tpope.org>
|
||||
" Last Change: 2013 May 30
|
||||
" Last Change: 2016 Aug 29
|
||||
|
||||
if exists("current_compiler")
|
||||
finish
|
||||
@@ -15,7 +15,7 @@ endif
|
||||
let s:cpo_save = &cpo
|
||||
set cpo-=C
|
||||
|
||||
CompilerSet makeprg=sass\ -c
|
||||
CompilerSet makeprg=sass
|
||||
|
||||
CompilerSet errorformat=
|
||||
\%f:%l:%m\ (Sass::Syntax%trror),
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
" The default vimrc file.
|
||||
"
|
||||
" Maintainer: Bram Moolenaar <Bram@vim.org>
|
||||
" Last change: 2016 Jul 29
|
||||
" Last change: 2016 Sep 02
|
||||
"
|
||||
" This is loaded if no vimrc file was found.
|
||||
" Except when Vim is run with "-u NONE" or "-C".
|
||||
@@ -13,6 +13,12 @@ if v:progname =~? "evim"
|
||||
finish
|
||||
endif
|
||||
|
||||
" Bail out if something that ran earlier, e.g. a system wide vimrc, does not
|
||||
" want Vim to use these default values.
|
||||
if exists('skip_defaults_vim')
|
||||
finish
|
||||
endif
|
||||
|
||||
" Use Vim settings, rather than Vi settings (much better!).
|
||||
" This must be first, because it changes other options as a side effect.
|
||||
set nocompatible
|
||||
@@ -25,9 +31,16 @@ set ruler " show the cursor position all the time
|
||||
set showcmd " display incomplete commands
|
||||
set wildmenu " display completion matches in a status line
|
||||
|
||||
set ttimeout " time out for key codes
|
||||
set ttimeoutlen=100 " wait up to 100ms after Esc for special key
|
||||
|
||||
" Show @@@ in the last line if it is truncated.
|
||||
set display=truncate
|
||||
|
||||
" Show a few lines of context around the cursor. Note that this makes the
|
||||
" text scroll if you mouse-click near the start or end of the window.
|
||||
set scrolloff=5
|
||||
|
||||
" Do incremental searching when it's possible to timeout.
|
||||
if has('reltime')
|
||||
set incsearch
|
||||
@@ -104,9 +117,9 @@ if !exists(":DiffOrig")
|
||||
\ | wincmd p | diffthis
|
||||
endif
|
||||
|
||||
if has('langmap') && exists('+langnoremap')
|
||||
if has('langmap') && exists('+langremap')
|
||||
" Prevent that the langmap option applies to characters that result from a
|
||||
" mapping. If unset (default), this may break plugins (but it's backward
|
||||
" mapping. If set (default), this may break plugins (but it's backward
|
||||
" compatible).
|
||||
set langnoremap
|
||||
set nolangremap
|
||||
endif
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
*autocmd.txt* For Vim version 7.4. Last change: 2016 Jul 19
|
||||
*autocmd.txt* For Vim version 7.4. Last change: 2016 Sep 03
|
||||
|
||||
|
||||
VIM REFERENCE MANUAL by Bram Moolenaar
|
||||
@@ -419,8 +419,8 @@ BufUnload Before unloading a buffer. This is when the
|
||||
NOTE: When this autocommand is executed, the
|
||||
current buffer "%" may be different from the
|
||||
buffer being unloaded "<afile>".
|
||||
Don't change to another buffer, it will cause
|
||||
problems.
|
||||
Don't change to another buffer or window, it
|
||||
will cause problems!
|
||||
When exiting and v:dying is 2 or more this
|
||||
event is not triggered.
|
||||
*BufWinEnter*
|
||||
@@ -784,7 +784,9 @@ QuickFixCmdPre Before a quickfix command is run (|:make|,
|
||||
|:vimgrepadd|, |:lvimgrepadd|, |:cscope|,
|
||||
|:cfile|, |:cgetfile|, |:caddfile|, |:lfile|,
|
||||
|:lgetfile|, |:laddfile|, |:helpgrep|,
|
||||
|:lhelpgrep|).
|
||||
|:lhelpgrep|, |:cexpr|, |:cgetexpr|,
|
||||
|:caddexpr|, |:cbuffer|, |:cgetbuffer|,
|
||||
|:caddbuffer|).
|
||||
The pattern is matched against the command
|
||||
being run. When |:grep| is used but 'grepprg'
|
||||
is set to "internal" it still matches "grep".
|
||||
@@ -1065,6 +1067,9 @@ Note that for all systems the '/' character is used for path separator (even
|
||||
MS-DOS and OS/2). This was done because the backslash is difficult to use
|
||||
in a pattern and to make the autocommands portable across different systems.
|
||||
|
||||
It is possible to use |pattern| items, but they may not work as expected,
|
||||
because of the translation done for the above.
|
||||
|
||||
*autocmd-changes*
|
||||
Matching with the pattern is done when an event is triggered. Changing the
|
||||
buffer name in one of the autocommands, or even deleting the buffer, does not
|
||||
@@ -1163,10 +1168,12 @@ name!
|
||||
different from existing {event} names, as this
|
||||
most likely will not do what you intended.
|
||||
|
||||
*:augroup-delete* *E367*
|
||||
*:augroup-delete* *E367* *W19* *E936*
|
||||
:aug[roup]! {name} Delete the autocmd group {name}. Don't use
|
||||
this if there is still an autocommand using
|
||||
this group! This is not checked.
|
||||
this group! You will get a warning if doing
|
||||
it anyway. when the group is the current group
|
||||
you will get error E936.
|
||||
|
||||
To enter autocommands for a specific group, use this method:
|
||||
1. Select the group with ":augroup {name}".
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
*channel.txt* For Vim version 7.4. Last change: 2016 Jul 15
|
||||
*channel.txt* For Vim version 7.4. Last change: 2016 Sep 07
|
||||
|
||||
|
||||
VIM REFERENCE MANUAL by Bram Moolenaar
|
||||
@@ -25,7 +25,9 @@ The Netbeans interface also uses a channel. |netbeans|
|
||||
|
||||
{Vi does not have any of these features}
|
||||
{only when compiled with the |+channel| feature for channel stuff}
|
||||
You can check this with: `has('channel')`
|
||||
{only when compiled with the |+job| feature for job stuff}
|
||||
You can check this with: `has('job')`
|
||||
|
||||
==============================================================================
|
||||
1. Overview *job-channel-overview*
|
||||
@@ -54,7 +56,7 @@ Common combination are:
|
||||
- Using a job connected through pipes in NL mode. E.g., to run a style
|
||||
checker and receive errors and warnings.
|
||||
- Using a deamon, connecting over a socket in JSON mode. E.g. to lookup
|
||||
crosss-refrences in a database.
|
||||
cross-references in a database.
|
||||
|
||||
==============================================================================
|
||||
2. Channel demo *channel-demo* *demoserver.py*
|
||||
@@ -247,9 +249,15 @@ In which {number} is different every time. It must be used in the response
|
||||
This way Vim knows which sent message matches with which received message and
|
||||
can call the right handler. Also when the messages arrive out of order.
|
||||
|
||||
A newline character is terminating the JSON text. This can be used to
|
||||
separate the read text. For example, in Python:
|
||||
splitidx = read_text.find('\n')
|
||||
message = read_text[:splitidx]
|
||||
rest = read_text[splitidx + 1:]
|
||||
|
||||
The sender must always send valid JSON to Vim. Vim can check for the end of
|
||||
the message by parsing the JSON. It will only accept the message if the end
|
||||
was received.
|
||||
was received. A newline after the message is optional.
|
||||
|
||||
When the process wants to send a message to Vim without first receiving a
|
||||
message, it must use the number zero:
|
||||
@@ -389,6 +397,9 @@ This {string} can also be JSON, use |json_encode()| to create it and
|
||||
|
||||
It is not possible to use |ch_evalexpr()| or |ch_sendexpr()| on a raw channel.
|
||||
|
||||
A String in Vim cannot contain NUL bytes. To send or receive NUL bytes read
|
||||
or write from a buffer. See |in_io-buffer| and |out_io-buffer|.
|
||||
|
||||
==============================================================================
|
||||
7. More channel functions *channel-more*
|
||||
|
||||
@@ -474,7 +485,7 @@ For example, to start a job and write its output in buffer "dummy": >
|
||||
|
||||
|
||||
Job input from a buffer ~
|
||||
|
||||
*in_io-buffer*
|
||||
To run a job that reads from a buffer: >
|
||||
let job = job_start({command},
|
||||
\ {'in_io': 'buffer', 'in_name': 'mybuffer'})
|
||||
@@ -490,6 +501,10 @@ A special mode is when "in_top" is set to zero and "in_bot" is not set: Every
|
||||
time a line is added to the buffer, the last-but-one line will be send to the
|
||||
job stdin. This allows for editing the last line and sending it when pressing
|
||||
Enter.
|
||||
*channel-close-in*
|
||||
When not using the special mode the pipe or socket will be closed after the
|
||||
last line has been written. This signals the reading end that the input
|
||||
finished. You can also use |ch_close_in()| to close it sooner.
|
||||
|
||||
NUL bytes in the text will be passed to the job (internally Vim stores these
|
||||
as NL bytes).
|
||||
@@ -631,6 +646,8 @@ See |job_setoptions()| and |ch_setoptions()|.
|
||||
"out_buf": number the number of the buffer to write to
|
||||
"out_modifiable": 0 when writing to a buffer, 'modifiable' will be off
|
||||
(see below)
|
||||
"out_msg": 0 when writing to a new buffer, the first line will be
|
||||
set to "Reading from channel output..."
|
||||
|
||||
*job-err_io* *err_name* *err_buf*
|
||||
"err_io": "out" stderr messages to go to stdout
|
||||
@@ -642,13 +659,15 @@ See |job_setoptions()| and |ch_setoptions()|.
|
||||
"err_buf": number the number of the buffer to write to
|
||||
"err_modifiable": 0 when writing to a buffer, 'modifiable' will be off
|
||||
(see below)
|
||||
"err_msg": 0 when writing to a new buffer, the first line will be
|
||||
set to "Reading from channel error..."
|
||||
|
||||
"block_write": number only for testing: pretend every other write to stdin
|
||||
will block
|
||||
|
||||
|
||||
Writing to a buffer ~
|
||||
|
||||
*out_io-buffer*
|
||||
When the out_io or err_io mode is "buffer" and there is a callback, the text
|
||||
is appended to the buffer before invoking the callback.
|
||||
|
||||
@@ -671,8 +690,16 @@ buffer number.
|
||||
|
||||
For a new buffer 'buftype' is set to "nofile" and 'bufhidden' to "hide". If
|
||||
you prefer other settings, create the buffer first and pass the buffer number.
|
||||
|
||||
*out_modifiable* *err_modifiable*
|
||||
The "out_modifiable" and "err_modifiable" options can be used to set the
|
||||
'modifiable' option off, or write to a buffer that has 'modifiable' off. That
|
||||
means that lines will be appended to the buffer, but the user can't easily
|
||||
change the buffer.
|
||||
*out_msg* *err_msg*
|
||||
The "out_msg" option can be used to specify whether a new buffer will have the
|
||||
first line set to "Reading from channel output...". The default is to add the
|
||||
message. "err_msg" does the same for channel error.
|
||||
|
||||
'modifiable' option off, or write to a buffer that has 'modifiable' off. That
|
||||
means that lines will be appended to the buffer, but the user can't easily
|
||||
change the buffer.
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
*cmdline.txt* For Vim version 7.4. Last change: 2015 Dec 17
|
||||
*cmdline.txt* For Vim version 7.4. Last change: 2016 Aug 27
|
||||
|
||||
|
||||
VIM REFERENCE MANUAL by Bram Moolenaar
|
||||
@@ -423,12 +423,26 @@ CTRL-L A match is done on the pattern in front of the cursor. If
|
||||
If there are multiple matches the longest common part is
|
||||
inserted in place of the pattern. If the result is shorter
|
||||
than the pattern, no completion is done.
|
||||
*/_CTRL-L*
|
||||
When 'incsearch' is set, entering a search pattern for "/" or
|
||||
"?" and the current match is displayed then CTRL-L will add
|
||||
one character from the end of the current match. If
|
||||
'ignorecase' and 'smartcase' are set and the command line has
|
||||
no uppercase characters, the added character is converted to
|
||||
lowercase.
|
||||
*c_CTRL-G* */_CTRL-G*
|
||||
CTRL-G When 'incsearch' is set, entering a search pattern for "/" or
|
||||
"?" and the current match is displayed then CTRL-G will move
|
||||
to the next match (does not take |search-offset| into account)
|
||||
Use CTRL-T to move to the previous match. Hint: on a regular
|
||||
keyboard T is above G.
|
||||
*c_CTRL-T* */_CTRL-T*
|
||||
CTRL-T When 'incsearch' is set, entering a search pattern for "/" or
|
||||
"?" and the current match is displayed then CTRL-T will move
|
||||
to the previous match (does not take |search-offset| into
|
||||
account).
|
||||
Use CTRL-G to move to the next match. Hint: on a regular
|
||||
keyboard T is above G.
|
||||
|
||||
The 'wildchar' option defaults to <Tab> (CTRL-E when in Vi compatible mode; in
|
||||
a previous version <Esc> was used). In the pattern standard wildcards '*' and
|
||||
|
||||
@@ -1,12 +1,12 @@
|
||||
*diff.txt* For Vim version 7.4. Last change: 2015 Nov 01
|
||||
*diff.txt* For Vim version 7.4. Last change: 2016 Aug 24
|
||||
|
||||
|
||||
VIM REFERENCE MANUAL by Bram Moolenaar
|
||||
|
||||
|
||||
*diff* *vimdiff* *gvimdiff* *diff-mode*
|
||||
This file describes the |+diff| feature: Showing differences between two,
|
||||
three or four versions of the same file.
|
||||
This file describes the |+diff| feature: Showing differences between two to
|
||||
eight versions of the same file.
|
||||
|
||||
The basics are explained in section |08.7| of the user manual.
|
||||
|
||||
@@ -117,7 +117,7 @@ To make these commands use a vertical split, prepend |:vertical|. Examples: >
|
||||
If you always prefer a vertical split include "vertical" in 'diffopt'.
|
||||
|
||||
*E96*
|
||||
There can be up to four buffers with 'diff' set.
|
||||
There can be up to eight buffers with 'diff' set.
|
||||
|
||||
Since the option values are remembered with the buffer, you can edit another
|
||||
file for a moment and come back to the same file and be in diff mode again.
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
*editing.txt* For Vim version 7.4. Last change: 2016 Mar 28
|
||||
*editing.txt* For Vim version 7.4. Last change: 2016 Aug 06
|
||||
|
||||
|
||||
VIM REFERENCE MANUAL by Bram Moolenaar
|
||||
@@ -1114,10 +1114,12 @@ The names can be in upper- or lowercase.
|
||||
edited. See |:confirm| and 'confirm'. {not in Vi}
|
||||
|
||||
:q[uit]! Quit without writing, also when the current buffer has
|
||||
changes. If this is the last window and there is a
|
||||
modified hidden buffer, the current buffer is
|
||||
abandoned and the first changed hidden buffer becomes
|
||||
the current buffer.
|
||||
changes. The buffer is unloaded, also when it has
|
||||
'hidden' set.
|
||||
If this is the last window and there is a modified
|
||||
hidden buffer, the current buffer is abandoned and the
|
||||
first changed hidden buffer becomes the current
|
||||
buffer.
|
||||
Use ":qall!" to exit always.
|
||||
|
||||
:cq[uit] Quit always, without writing, and return an error
|
||||
|
||||
File diff suppressed because it is too large
Load Diff
@@ -1,4 +1,4 @@
|
||||
*gui_x11.txt* For Vim version 7.4. Last change: 2016 Apr 08
|
||||
*gui_x11.txt* For Vim version 7.4. Last change: 2016 Aug 21
|
||||
|
||||
|
||||
VIM REFERENCE MANUAL by Bram Moolenaar
|
||||
@@ -421,6 +421,9 @@ These are the different looks:
|
||||
GNOME is compiled with if it was found by configure and the
|
||||
--enable-gnome-check argument was used.
|
||||
|
||||
Note: Avoid use of --enable-gnome-check with GTK+ 3 GUI build. The
|
||||
functionality mentioned above is consolidated in GTK+ 3.
|
||||
|
||||
|
||||
GNOME session support *gui-gnome-session* *gnome-session*
|
||||
|
||||
@@ -457,20 +460,37 @@ continues on Yzis: https://github.com/chrizel/Yzis.
|
||||
==============================================================================
|
||||
8. Compiling *gui-x11-compiling*
|
||||
|
||||
If using X11, Vim's Makefile will by default first try to find the necessary
|
||||
GTK+ files on your system. If the GTK+ files cannot be found, then the Motif
|
||||
files will be searched for. Finally, if this fails, the Athena files will be
|
||||
searched for. If all three fail, the GUI will be disabled.
|
||||
If using X11, Vim's configure will by default first try to find the necessary
|
||||
GTK+ files on your system. When both GTK+ 2 and GTK+ 3 are available, GTK+ 2
|
||||
will be chosen unless --enable-gui=gtk3 is passed explicitly to configure.
|
||||
|
||||
For GTK+, Vim's configuration process requires that GTK+ be properly
|
||||
installed. That is, the shell script 'gtk-config' must be in your PATH, and
|
||||
you can already successful compile, build, and execute a GTK+ program. The
|
||||
reason for this is that the compiler flags (CFLAGS) and link flags (LDFLAGS)
|
||||
are obtained through the 'gtk-config' shell script.
|
||||
If the GTK+ files cannot be found, then the Motif files will be searched for.
|
||||
Finally, if this fails, the Athena files will be searched for. If all three
|
||||
fail, the GUI will be disabled.
|
||||
|
||||
If you want to build with GTK+ 2 support pass the --enable-gtk2-check argument
|
||||
to ./configure. Optionally, support for GNOME 2 will be compiled if the
|
||||
--enable-gnome-check option is also given.
|
||||
For GTK+, Vim's configuration process uses pkg-config(1) to check if the
|
||||
GTK+ required for a specified build is properly installed and usable.
|
||||
Accordingly, it is a good idea to make sure before running configure that
|
||||
your system has a working pkg-config together with the .pc file of the
|
||||
required GTK+. For that, say, run the following on the command line to see if
|
||||
your pkg-config works with your GTK+ 2: >
|
||||
|
||||
$ pkgconfig --modversion gtk+-2.0
|
||||
|
||||
Replace gtk+-2.0 with gtk+-3.0 for GTK+ 3. If you get the correct version
|
||||
number of your GTK+, you can proceed; if not, you probably need to do some
|
||||
system administration chores to set up pkg-config and GTK+ correctly.
|
||||
|
||||
The GTK+ 2 GUI is built by default. Therefore, you usually don't need to pass
|
||||
any options such as --enable-gui=gtk2 to configure and build that.
|
||||
|
||||
Optionally, the GTK+ 2 GUI can consolidate the GNOME 2 support. This support
|
||||
is enabled by passing --enable-gnome-check to configure.
|
||||
|
||||
If you want to build the GTK+ 3 GUI, you have to pass --enable-gui=gtk3
|
||||
explicitly to configure, and avoid passing --enable-gnome-check to that, as
|
||||
the functionality of the GNOME 2 support has already been consolidated in
|
||||
GTK+ 3.
|
||||
|
||||
Otherwise, if you are using Motif or Athena, when you have the Motif or Athena
|
||||
files in a directory where configure doesn't look, edit the Makefile to enter
|
||||
@@ -478,18 +498,14 @@ the names of the directories. Search for "GUI_INC_LOC" for an example to set
|
||||
the Motif directories, "CONF_OPT_X" for Athena.
|
||||
|
||||
*gui-x11-gtk*
|
||||
At the time of this writing, GTK+ version 1.0.6 and 1.2 are outdated. It
|
||||
is suggested that you use GTK 2. The GTK 1 support will most likely be
|
||||
dropped soon.
|
||||
Currently, Vim supports both GTK+ 2 and GTK+ 3.
|
||||
|
||||
For the GTK+ 2 GUI, using the latest release of the GTK+ 2.0 or GTK+ 2.2
|
||||
series is recommended.
|
||||
The GTK+ 2 GUI requires GTK+ 2.2 or later.
|
||||
|
||||
Lastly, although GTK+ has supposedly been ported to the Win32 platform, this
|
||||
has not been tested with Vim and is also unsupported. Also, it's unlikely to
|
||||
even compile since GTK+ GUI uses parts of the generic X11 code. This might
|
||||
change in distant future; particularly because getting rid of the X11 centric
|
||||
code parts is also required for GTK+ framebuffer support.
|
||||
Although the GTK+ 3 GUI is written in such a way that the source code can be
|
||||
compiled against all versions of the 3.x series, we recommend GTK+ 3.10 or
|
||||
later because of its substantial implementation changes in redraw done at
|
||||
that version.
|
||||
|
||||
*gui-x11-motif*
|
||||
For Motif, you need at least Motif version 1.2 and/or X11R5. Motif 2.0 and
|
||||
|
||||
@@ -59,6 +59,12 @@ Example:
|
||||
EOF
|
||||
endfunction
|
||||
<
|
||||
To see what version of Lua you have: >
|
||||
:lua print(_VERSION)
|
||||
|
||||
If you use LuaJIT you can also use this: >
|
||||
:lua print(jit.version)
|
||||
<
|
||||
|
||||
*:luado*
|
||||
:[range]luado {body} Execute Lua function "function (line, linenr) {body}
|
||||
|
||||
@@ -97,6 +97,9 @@ procedures is restricted.
|
||||
:mzscheme (require (prefix vim- vimext)) ; for MzScheme < 4.x
|
||||
:mzscheme (require (prefix-in vim- 'vimext)) ; MzScheme 4.x
|
||||
:mzscheme (vim-set-buff-line 10 "This is line #10")
|
||||
|
||||
To see what version of MzScheme you have: >
|
||||
:mzscheme (display (version))
|
||||
<
|
||||
Inline script usage: >
|
||||
function! <SID>SetFirstLine()
|
||||
|
||||
@@ -83,6 +83,9 @@ Example vim script: >
|
||||
EOF
|
||||
endfunction
|
||||
<
|
||||
To see what version of Perl you have: >
|
||||
:perl print $^V
|
||||
<
|
||||
|
||||
*:perldo* *:perld*
|
||||
:[range]perld[o] {cmd} Execute Perl command {cmd} for each line in the
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
*if_pyth.txt* For Vim version 7.4. Last change: 2015 Nov 10
|
||||
*if_pyth.txt* For Vim version 7.4. Last change: 2016 Sep 01
|
||||
|
||||
|
||||
VIM REFERENCE MANUAL by Paul Moore
|
||||
@@ -56,7 +56,11 @@ Example: >
|
||||
print 'EAT ME'
|
||||
EOF
|
||||
endfunction
|
||||
<
|
||||
|
||||
To see what version of Python you have: >
|
||||
:python import sys
|
||||
:python print(sys.version)
|
||||
|
||||
Note: Python is very sensitive to the indenting. Make sure the "class" line
|
||||
and "EOF" do not have any indent.
|
||||
|
||||
@@ -745,6 +749,10 @@ The `:py3` and `:python3` commands work similar to `:python`. A simple check
|
||||
if the `:py3` command is working: >
|
||||
:py3 print("Hello")
|
||||
< *:py3file*
|
||||
To see what version of Python you have: >
|
||||
:py3 import sys
|
||||
:py3 print(sys.version)
|
||||
|
||||
The `:py3file` command works similar to `:pyfile`.
|
||||
*:py3do*
|
||||
The `:py3do` command works similar to `:pydo`.
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
*if_ruby.txt* For Vim version 7.4. Last change: 2015 Dec 03
|
||||
*if_ruby.txt* For Vim version 7.4. Last change: 2016 Sep 01
|
||||
|
||||
|
||||
VIM REFERENCE MANUAL by Shugo Maeda
|
||||
@@ -58,6 +58,9 @@ Example Vim script: >
|
||||
EOF
|
||||
endfunction
|
||||
<
|
||||
To see what version of Ruby you have: >
|
||||
:ruby print RUBY_VERSION
|
||||
<
|
||||
|
||||
*:rubydo* *:rubyd* *E265*
|
||||
:[range]rubyd[o] {cmd} Evaluate Ruby command {cmd} for each line in the
|
||||
@@ -205,7 +208,7 @@ MS-Windows ~
|
||||
You need to install the right version of Ruby for this to work. You can find
|
||||
the package to download from:
|
||||
http://www.garbagecollect.jp/ruby/mswin32/en/download/release.html
|
||||
Currently that is ruby-1.9.1-p429-i386-mswin32.zip
|
||||
Currently that is ruby-1.9.2-p136-i386-mswin32.zip
|
||||
|
||||
To use the Ruby interface the Ruby DLL must be in your search path. In a
|
||||
console window type "path" to see what directories are used. The 'rubydll'
|
||||
|
||||
@@ -54,6 +54,9 @@ Example: >
|
||||
EOF
|
||||
endfunction
|
||||
<
|
||||
To see what version of Tcl you have: >
|
||||
:tcl puts [info patchlevel]
|
||||
<
|
||||
|
||||
*:tcldo* *:tcld*
|
||||
:[range]tcld[o] {cmd} Execute Tcl command {cmd} for each line in [range]
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
*index.txt* For Vim version 7.4. Last change: 2016 Jul 16
|
||||
*index.txt* For Vim version 7.4. Last change: 2016 Aug 27
|
||||
|
||||
|
||||
VIM REFERENCE MANUAL by Bram Moolenaar
|
||||
@@ -984,7 +984,7 @@ tag command action in Command-line editing mode ~
|
||||
|c_CTRL-E| CTRL-E cursor to end of command-line
|
||||
|'cedit'| CTRL-F default value for 'cedit': opens the
|
||||
command-line window; otherwise not used
|
||||
CTRL-G not used
|
||||
|c_CTRL-G| CTRL-G next match when 'incsearch' is active
|
||||
|c_<BS>| <BS> delete the character in front of the cursor
|
||||
|c_digraph| {char1} <BS> {char2}
|
||||
enter digraph when 'digraph' is on
|
||||
@@ -1017,7 +1017,7 @@ tag command action in Command-line editing mode ~
|
||||
insert the contents of a register or object
|
||||
under the cursor literally
|
||||
CTRL-S (used for terminal control flow)
|
||||
CTRL-T not used
|
||||
|c_CTRL-T| CTRL-T previous match when 'incsearch' is active
|
||||
|c_CTRL-U| CTRL-U remove all characters
|
||||
|c_CTRL-V| CTRL-V insert next non-digit literally, insert three
|
||||
digit decimal number as a single byte.
|
||||
@@ -1207,7 +1207,7 @@ tag command action ~
|
||||
|:display| :di[splay] display registers
|
||||
|:djump| :dj[ump] jump to #define
|
||||
|:dl| :dl short for |:delete| with the 'l' flag
|
||||
|:dl| :del[ete]l short for |:delete| with the 'l' flag
|
||||
|:del| :del[ete]l short for |:delete| with the 'l' flag
|
||||
|:dlist| :dli[st] list #defines
|
||||
|:doautocmd| :do[autocmd] apply autocommands to current buffer
|
||||
|:doautoall| :doautoa[ll] apply autocommands for all loaded buffers
|
||||
@@ -1239,6 +1239,7 @@ tag command action ~
|
||||
|:file| :f[ile] show or set the current file name
|
||||
|:files| :files list all files in the buffer list
|
||||
|:filetype| :filet[ype] switch file type detection on/off
|
||||
|:filter| :filt[er] filter output of following command
|
||||
|:find| :fin[d] find file in 'path' and edit it
|
||||
|:finally| :fina[lly] part of a :try command
|
||||
|:finish| :fini[sh] quit sourcing a Vim script
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
*map.txt* For Vim version 7.4. Last change: 2016 Jul 06
|
||||
*map.txt* For Vim version 7.4. Last change: 2016 Aug 26
|
||||
|
||||
|
||||
VIM REFERENCE MANUAL by Bram Moolenaar
|
||||
@@ -431,6 +431,9 @@ with a space.
|
||||
Note: When using mappings for Visual mode, you can use the "'<" mark, which
|
||||
is the start of the last selected Visual area in the current buffer |'<|.
|
||||
|
||||
The |:filter| command can be used to select what mappings to list. The
|
||||
pattern is matched against the {lhs} and {rhs} in the raw form.
|
||||
|
||||
*:map-verbose*
|
||||
When 'verbose' is non-zero, listing a key map will also display where it was
|
||||
last defined. Example: >
|
||||
@@ -1177,6 +1180,10 @@ scripts.
|
||||
" Command has the -register attribute
|
||||
b Command is local to current buffer
|
||||
(see below for details on attributes)
|
||||
The list can be filtered on command name with
|
||||
|:filter|, e.g., to list all commands with "Pyth" in
|
||||
the name: >
|
||||
filter Pyth command
|
||||
|
||||
:com[mand] {cmd} List the user-defined commands that start with {cmd}
|
||||
|
||||
@@ -1416,9 +1423,11 @@ The valid escape sequences are
|
||||
<mods> The command modifiers, if specified. Otherwise, expands to
|
||||
nothing. Supported modifiers are |:aboveleft|, |:belowright|,
|
||||
|:botright|, |:browse|, |:confirm|, |:hide|, |:keepalt|,
|
||||
|:keepjumps|, |:keepmarks|, |:keeppatterns|, |:lockmarks|,
|
||||
|:noswapfile|, |:silent|, |:tab|, |:topleft|, |:verbose|, and
|
||||
|:vertical|.
|
||||
|:keepjumps|, |:keepmarks|, |:keeppatterns|, |:leftabove|,
|
||||
|:lockmarks|, |:noswapfile| |:rightbelow|, |:silent|, |:tab|,
|
||||
|:topleft|, |:verbose|, and |:vertical|.
|
||||
Note that these are not yet supported: |:noautocmd|,
|
||||
|:sandbox| and |:unsilent|.
|
||||
Examples: >
|
||||
command! -nargs=+ -complete=file MyEdit
|
||||
\ for f in expand(<q-args>, 0, 1) |
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
*message.txt* For Vim version 7.4. Last change: 2016 Jul 16
|
||||
*message.txt* For Vim version 7.4. Last change: 2016 Sep 01
|
||||
|
||||
|
||||
VIM REFERENCE MANUAL by Bram Moolenaar
|
||||
@@ -39,6 +39,7 @@ back.
|
||||
Note: If the output has been stopped with "q" at the more prompt, it will only
|
||||
be displayed up to this point.
|
||||
The previous command output is cleared when another command produces output.
|
||||
The "g<" output is not redirected.
|
||||
|
||||
If you are using translated messages, the first printed line tells who
|
||||
maintains the messages or the translations. You can use this to contact the
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
*options.txt* For Vim version 7.4. Last change: 2016 Jul 28
|
||||
*options.txt* For Vim version 7.4. Last change: 2016 Sep 02
|
||||
|
||||
|
||||
VIM REFERENCE MANUAL by Bram Moolenaar
|
||||
@@ -261,10 +261,10 @@ global value, which is used for new buffers. With ":set" both the local and
|
||||
global value is changed. With "setlocal" only the local value is changed,
|
||||
thus this value is not used when editing a new buffer.
|
||||
|
||||
When editing a buffer that has been edited before, the last used window
|
||||
options are used again. If this buffer has been edited in this window, the
|
||||
values from back then are used. Otherwise the values from the window where
|
||||
the buffer was edited last are used.
|
||||
When editing a buffer that has been edited before, the options from the window
|
||||
that was last closed are used again. If this buffer has been edited in this
|
||||
window, the values from back then are used. Otherwise the values from the
|
||||
last closed window where the buffer was edited last are used.
|
||||
|
||||
It's possible to set a local window option specifically for a type of buffer.
|
||||
When you edit another buffer in the same window, you don't want to keep
|
||||
@@ -2618,7 +2618,8 @@ A jump table for the options with a short description can be found at |Q_op|.
|
||||
{Vi: directory to put temp file in, defaults to "/tmp"}
|
||||
|
||||
*'display'* *'dy'*
|
||||
'display' 'dy' string (default "")
|
||||
'display' 'dy' string (default "", set to "truncate" in
|
||||
|defaults.vim|)
|
||||
global
|
||||
{not in Vi}
|
||||
Change the way text is displayed. This is comma separated list of
|
||||
@@ -2855,10 +2856,17 @@ A jump table for the options with a short description can be found at |Q_op|.
|
||||
global
|
||||
{not in Vi}
|
||||
Enables the reading of .vimrc, .exrc and .gvimrc in the current
|
||||
directory. If you switch this option on you should also consider
|
||||
setting the 'secure' option (see |initialization|). Using a local
|
||||
.exrc, .vimrc or .gvimrc is a potential security leak, use with care!
|
||||
also see |.vimrc| and |gui-init|.
|
||||
directory.
|
||||
|
||||
Setting this option is a potential security leak. E.g., consider
|
||||
unpacking a package or fetching files from github, a .vimrc in there
|
||||
might be a trojan horse. BETTER NOT SET THIS OPTION!
|
||||
Instead, define an autocommand in your .vimrc to set options for a
|
||||
matching directory.
|
||||
|
||||
If you do switch this option on you should also consider setting the
|
||||
'secure' option (see |initialization|).
|
||||
Also see |.vimrc| and |gui-init|.
|
||||
This option cannot be set from a |modeline| or in the |sandbox|, for
|
||||
security reasons.
|
||||
|
||||
@@ -3645,7 +3653,7 @@ A jump table for the options with a short description can be found at |Q_op|.
|
||||
qXX - quality XX. Valid quality names are: PROOF, DRAFT,
|
||||
ANTIALIASED, NONANTIALIASED, CLEARTYPE, DEFAULT.
|
||||
Normally you would use "qDEFAULT".
|
||||
Some quality values isn't supported in legacy OSs.
|
||||
Some quality values are not supported in legacy OSs.
|
||||
|
||||
Use a ':' to separate the options.
|
||||
- A '_' can be used in the place of a space, so you don't need to use
|
||||
@@ -3944,17 +3952,16 @@ A jump table for the options with a short description can be found at |Q_op|.
|
||||
|
||||
*'highlight'* *'hl'*
|
||||
'highlight' 'hl' string (default (as a single string):
|
||||
"8:SpecialKey,@:NonText,d:Directory,
|
||||
e:ErrorMsg,i:IncSearch,l:Search,m:MoreMsg,
|
||||
M:ModeMsg,n:LineNr,N:CursorLineNr,
|
||||
r:Question,s:StatusLine,S:StatusLineNC,
|
||||
c:VertSplit, t:Title,v:Visual,
|
||||
w:WarningMsg,W:WildMenu,
|
||||
f:Folded,F:FoldColumn,A:DiffAdd,
|
||||
C:DiffChange,D:DiffDelete,T:DiffText,
|
||||
>:SignColumn,B:SpellBad,P:SpellCap,
|
||||
R:SpellRare,L:SpellLocal,-:Conceal,
|
||||
+:Pmenu,=:PmenuSel,
|
||||
"8:SpecialKey,~:EndOfBuffer,@:NonText,
|
||||
d:Directory,e:ErrorMsg,i:IncSearch,
|
||||
l:Search,m:MoreMsg,M:ModeMsg,n:LineNr,
|
||||
N:CursorLineNr,r:Question,s:StatusLine,
|
||||
S:StatusLineNC,c:VertSplit,t:Title,
|
||||
v:Visual,w:WarningMsg,W:WildMenu,f:Folded,
|
||||
F:FoldColumn,A:DiffAdd,C:DiffChange,
|
||||
D:DiffDelete,T:DiffText,>:SignColumn,
|
||||
B:SpellBad,P:SpellCap,R:SpellRare,
|
||||
L:SpellLocal,-:Conceal,+:Pmenu,=:PmenuSel,
|
||||
x:PmenuSbar,X:PmenuThumb")
|
||||
global
|
||||
{not in Vi}
|
||||
@@ -3963,7 +3970,8 @@ A jump table for the options with a short description can be found at |Q_op|.
|
||||
first character in a pair gives the occasion, the second the mode to
|
||||
use for that occasion. The occasions are:
|
||||
|hl-SpecialKey| 8 Meta and special keys listed with ":map"
|
||||
|hl-NonText| @ '~' and '@' at the end of the window and
|
||||
|hl-EndOfBuffer| ~ lines after the last line in the buffer
|
||||
|hl-NonText| @ '@' at the end of the window and
|
||||
characters from 'showbreak'
|
||||
|hl-Directory| d directories in CTRL-D listing and other special
|
||||
things in listings
|
||||
@@ -4318,6 +4326,8 @@ A jump table for the options with a short description can be found at |Q_op|.
|
||||
original position when no match is found and when pressing <Esc>. You
|
||||
still need to finish the search command with <Enter> to move the
|
||||
cursor to the match.
|
||||
You can use the CTRL-N and CTRL-P keys to move to the next and
|
||||
previous match. |c_CTRL-N| |c_CTRL-P|
|
||||
When compiled with the |+reltime| feature Vim only searches for about
|
||||
half a second. With a complicated pattern and/or a lot of text the
|
||||
match may not be found. This is to avoid that Vim hangs while you
|
||||
@@ -4402,7 +4412,7 @@ A jump table for the options with a short description can be found at |Q_op|.
|
||||
if you want to use Vim as a modeless editor. Used for |evim|.
|
||||
These Insert mode commands will be useful:
|
||||
- Use the cursor keys to move around.
|
||||
- Use CTRL-O to execute one Normal mode command |i_CTRL-O|). When
|
||||
- Use CTRL-O to execute one Normal mode command |i_CTRL-O|. When
|
||||
this is a mapping, it is executed as if 'insertmode' was off.
|
||||
Normal mode remains active until the mapping is finished.
|
||||
- Use CTRL-L to execute a number of Normal mode commands, then use
|
||||
@@ -4631,7 +4641,7 @@ A jump table for the options with a short description can be found at |Q_op|.
|
||||
be able to execute Normal mode commands.
|
||||
This is the opposite of the 'keymap' option, where characters are
|
||||
mapped in Insert mode.
|
||||
Also consider setting 'langnoremap' to avoid 'langmap' applies to
|
||||
Also consider resetting 'langremap' to avoid 'langmap' applies to
|
||||
characters resulting from a mapping.
|
||||
This option cannot be set from a |modeline| or in the |sandbox|, for
|
||||
security reasons.
|
||||
@@ -4694,10 +4704,20 @@ A jump table for the options with a short description can be found at |Q_op|.
|
||||
{not in Vi}
|
||||
{only available when compiled with the |+langmap|
|
||||
feature}
|
||||
When on, setting 'langmap' does not apply to characters resulting from
|
||||
This is just like 'langremap' but with the value inverted. It only
|
||||
exists for backwards compatibility. When setting 'langremap' then
|
||||
'langnoremap' is set to the inverted value, and the other way around.
|
||||
|
||||
*'langremap'* *'lrm'* *'nolangremap'* *'nolrm'*
|
||||
'langremap' 'lrm' boolean (default on, reset in |defaults.vim|)
|
||||
global
|
||||
{not in Vi}
|
||||
{only available when compiled with the |+langmap|
|
||||
feature}
|
||||
When off, setting 'langmap' does not apply to characters resulting from
|
||||
a mapping. This basically means, if you noticed that setting
|
||||
'langmap' disables some of your mappings, try setting this option.
|
||||
This option defaults to off for backwards compatibility. Set it on if
|
||||
'langmap' disables some of your mappings, try resetting this option.
|
||||
This option defaults to on for backwards compatibility. Set it off if
|
||||
that works for you to avoid mappings to break.
|
||||
|
||||
*'laststatus'* *'ls'*
|
||||
@@ -4750,7 +4770,7 @@ A jump table for the options with a short description can be found at |Q_op|.
|
||||
use this command to get the tallest window possible: >
|
||||
:set lines=999
|
||||
< Minimum value is 2, maximum value is 1000.
|
||||
If you get less lines than expected, check the 'guiheadroom' option.
|
||||
If you get fewer lines than expected, check the 'guiheadroom' option.
|
||||
When you set this option and Vim is unable to change the physical
|
||||
number of lines of the display, the display may be messed up.
|
||||
|
||||
@@ -4902,10 +4922,11 @@ A jump table for the options with a short description can be found at |Q_op|.
|
||||
global
|
||||
Changes the special characters that can be used in search patterns.
|
||||
See |pattern|.
|
||||
NOTE: To avoid portability problems with using patterns, always keep
|
||||
this option at the default "on". Only switch it off when working with
|
||||
old Vi scripts. In any other situation write patterns that work when
|
||||
'magic' is on. Include "\M" when you want to |/\M|.
|
||||
WARNING: Switching this option off most likely breaks plugins! That
|
||||
is because many patterns assume it's on and will fail when it's off.
|
||||
Only switch it off when working with old Vi scripts. In any other
|
||||
situation write patterns that work when 'magic' is on. Include "\M"
|
||||
when you want to |/\M|.
|
||||
|
||||
*'makeef'* *'mef'*
|
||||
'makeef' 'mef' string (default: "")
|
||||
@@ -6244,6 +6265,8 @@ A jump table for the options with a short description can be found at |Q_op|.
|
||||
"inclusive" means that the last character of the selection is included
|
||||
in an operation. For example, when "x" is used to delete the
|
||||
selection.
|
||||
When "old" is used and 'virtualedit' allows the cursor to move past
|
||||
the end of line the line break still isn't included.
|
||||
Note that when "exclusive" is used and selecting from the end
|
||||
backwards, you cannot include the last character of a line, when
|
||||
starting in Normal mode and 'virtualedit' empty.
|
||||
@@ -6732,10 +6755,21 @@ A jump table for the options with a short description can be found at |Q_op|.
|
||||
|
||||
Example: Try this together with 'sidescroll' and 'listchars' as
|
||||
in the following example to never allow the cursor to move
|
||||
onto the "extends" character:
|
||||
onto the "extends" character: >
|
||||
|
||||
:set nowrap sidescroll=1 listchars=extends:>,precedes:<
|
||||
:set sidescrolloff=1
|
||||
<
|
||||
*'signcolumn'* *'scl'*
|
||||
'signcolumn' 'scl' string (default "auto")
|
||||
local to window
|
||||
{not in Vi}
|
||||
{not available when compiled without the |+signs|
|
||||
feature}
|
||||
Whether or not to draw the signcolumn. Valid values are:
|
||||
"auto" only when there is a sign to display
|
||||
"no" never
|
||||
"yes" always
|
||||
|
||||
|
||||
*'smartcase'* *'scs'* *'nosmartcase'* *'noscs'*
|
||||
@@ -7405,6 +7439,9 @@ A jump table for the options with a short description can be found at |Q_op|.
|
||||
By default, tag searches are case-sensitive. Case is ignored when
|
||||
'ignorecase' is set and 'tagcase' is "followic", or when 'tagcase' is
|
||||
"ignore".
|
||||
Also when 'tagcase' is "followscs" and 'smartcase' is set, or
|
||||
'tagcase' is "smart", and the pattern contains only lowercase
|
||||
characters.
|
||||
|
||||
When 'tagbsearch' is off, tags searching is slower when a full match
|
||||
exists, but faster when no full match exists. Tags in unsorted tags
|
||||
@@ -7423,8 +7460,10 @@ A jump table for the options with a short description can be found at |Q_op|.
|
||||
This option specifies how case is handled when searching the tags
|
||||
file:
|
||||
followic Follow the 'ignorecase' option
|
||||
followscs Follow the 'smartcase' and 'ignorecase' options
|
||||
ignore Ignore case
|
||||
match Match case
|
||||
smart Ignore case unless an upper case letter is used
|
||||
|
||||
*'taglength'* *'tl'*
|
||||
'taglength' 'tl' number (default 0)
|
||||
@@ -7924,8 +7963,8 @@ A jump table for the options with a short description can be found at |Q_op|.
|
||||
"xterm", "xterm2", "urxvt" or "sgr" (because dec mouse codes conflict
|
||||
with them).
|
||||
This option is automatically set to "xterm", when the 'term' option is
|
||||
set to a name that starts with "xterm", "mlterm", or "screen", and
|
||||
'ttymouse' is not set already.
|
||||
set to a name that starts with "xterm", "mlterm", "screen", "st" (full
|
||||
match only), "st-" or "stterm", and 'ttymouse' is not set already.
|
||||
Additionally, if vim is compiled with the |+termresponse| feature and
|
||||
|t_RV| is set to the escape sequence to request the xterm version
|
||||
number, more intelligent detection process runs.
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
*os_win32.txt* For Vim version 7.4. Last change: 2016 Mar 05
|
||||
*os_win32.txt* For Vim version 7.4. Last change: 2016 Aug 28
|
||||
|
||||
|
||||
VIM REFERENCE MANUAL by George Reilly
|
||||
@@ -144,29 +144,8 @@ the console.
|
||||
5. Running under Windows 3.1 *win32-win3.1*
|
||||
|
||||
*win32s* *windows-3.1*
|
||||
There is a special version of Gvim that runs under Windows 3.1 and 3.11. You
|
||||
need the gvim.exe that was compiled with Visual C++ 4.1.
|
||||
|
||||
To run the Win32 version under Windows 3.1, you need to install Win32s. You
|
||||
might have it already from another Win32 application which you have installed.
|
||||
If Vim doesn't seem to be running properly, get the latest version: 1.30c.
|
||||
You can find it at:
|
||||
|
||||
http://support.microsoft.com/download/support/mslfiles/pw1118.exe
|
||||
|
||||
(Microsoft moved it again, we don't know where it is now :-( ).
|
||||
|
||||
The reason for having two versions of gvim.exe is that the Win32s version was
|
||||
compiled with VC++ 4.1. This is the last version of VC++ that supports Win32s
|
||||
programs. VC++ 5.0 is better, so that one was used for the Win32 version.
|
||||
Apart from that, there is no difference between the programs. If you are in a
|
||||
mixed environment, you can use the gvim.exe for Win32s on both.
|
||||
|
||||
The Win32s version works the same way as the Win32 version under 95/NT. When
|
||||
running under Win32s the following differences apply:
|
||||
- You cannot use long file names, because Windows 3.1 doesn't support them!
|
||||
- When executing an external command, it doesn't return an exit code. After
|
||||
doing ":make" you have to do ":cn" yourself.
|
||||
There was a special version of Gvim that runs under Windows 3.1 and 3.11.
|
||||
Support was removed in patch 7.4.1363.
|
||||
|
||||
==============================================================================
|
||||
6. Win32 mini FAQ *win32-faq*
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
*quickref.txt* For Vim version 7.4. Last change: 2016 Jun 14
|
||||
*quickref.txt* For Vim version 7.4. Last change: 2016 Aug 21
|
||||
|
||||
|
||||
VIM REFERENCE MANUAL by Bram Moolenaar
|
||||
@@ -767,7 +767,7 @@ Short explanation of each option: *option-list*
|
||||
'keywordprg' 'kp' program to use for the "K" command
|
||||
'langmap' 'lmap' alphabetic characters for other language mode
|
||||
'langmenu' 'lm' language to be used for the menus
|
||||
'langnoremap' 'lnr' do not apply 'langmap' to mapped characters
|
||||
'langremap' 'lrm' do apply 'langmap' to mapped characters
|
||||
'laststatus' 'ls' tells when last window has status lines
|
||||
'lazyredraw' 'lz' don't redraw while executing macros
|
||||
'linebreak' 'lbr' wrap long lines at a blank
|
||||
@@ -883,6 +883,7 @@ Short explanation of each option: *option-list*
|
||||
'showtabline' 'stal' tells when the tab pages line is displayed
|
||||
'sidescroll' 'ss' minimum number of columns to scroll horizontal
|
||||
'sidescrolloff' 'siso' min. nr. of columns to left and right of cursor
|
||||
'signcolumn' 'scl' when to display the sign column
|
||||
'smartcase' 'scs' no ignore case when pattern has uppercase
|
||||
'smartindent' 'si' smart autoindenting for C programs
|
||||
'smarttab' 'sta' use 'shiftwidth' when inserting <Tab>
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
*sign.txt* For Vim version 7.4. Last change: 2014 May 07
|
||||
*sign.txt* For Vim version 7.4. Last change: 2016 Aug 17
|
||||
|
||||
|
||||
VIM REFERENCE MANUAL by Gordon Prieur
|
||||
@@ -45,8 +45,10 @@ There are two steps in using signs:
|
||||
|
||||
When signs are defined for a file, Vim will automatically add a column of two
|
||||
characters to display them in. When the last sign is unplaced the column
|
||||
disappears again. The color of the column is set with the SignColumn group
|
||||
|hl-SignColumn|. Example to set the color: >
|
||||
disappears again. This behavior can be changed with the 'signcolumn' option.
|
||||
|
||||
The color of the column is set with the SignColumn group |hl-SignColumn|.
|
||||
Example to set the color: >
|
||||
|
||||
:highlight SignColumn guibg=darkgrey
|
||||
|
||||
@@ -195,7 +197,9 @@ JUMPING TO A SIGN *:sign-jump* *E157*
|
||||
If the file isn't displayed in window and the current file can
|
||||
not be |abandon|ed this fails.
|
||||
|
||||
:sign jump {id} buffer={nr}
|
||||
Same, but use buffer {nr}.
|
||||
:sign jump {id} buffer={nr} *E934*
|
||||
Same, but use buffer {nr}. This fails if buffer {nr} does not
|
||||
have a name.
|
||||
|
||||
|
||||
vim:tw=78:ts=8:ft=help:norl:
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
*starting.txt* For Vim version 7.4. Last change: 2016 Jul 28
|
||||
*starting.txt* For Vim version 7.4. Last change: 2016 Sep 03
|
||||
|
||||
|
||||
VIM REFERENCE MANUAL by Bram Moolenaar
|
||||
@@ -838,7 +838,7 @@ accordingly. Vim proceeds in this order:
|
||||
options values and has "syntax on" and "filetype on" commands,
|
||||
which is what most new users will want. See |defaults.vim|.
|
||||
|
||||
d. If the 'exrc' option is on (which is not the default), the current
|
||||
d. If the 'exrc' option is on (which is NOT the default), the current
|
||||
directory is searched for three files. The first that exists is used,
|
||||
the others are ignored.
|
||||
- The file ".vimrc" (for Unix, Amiga and OS/2) (*)
|
||||
@@ -858,6 +858,8 @@ accordingly. Vim proceeds in this order:
|
||||
searched for the "plugin" sub-directory and all files ending in ".vim"
|
||||
will be sourced (in alphabetical order per directory), also in
|
||||
subdirectories.
|
||||
However, directories in 'runtimepath' ending in "after" are skipped
|
||||
here and only loaded after packages, see below.
|
||||
Loading plugins won't be done when:
|
||||
- The 'loadplugins' option was reset in a vimrc file.
|
||||
- The |--noplugin| command line argument is used.
|
||||
@@ -865,13 +867,18 @@ accordingly. Vim proceeds in this order:
|
||||
- When Vim was compiled without the |+eval| feature.
|
||||
Note that using "-c 'set noloadplugins'" doesn't work, because the
|
||||
commands from the command line have not been executed yet. You can
|
||||
use "--cmd 'set noloadplugins'" |--cmd|.
|
||||
use "--cmd 'set noloadplugins'" or "--cmd 'set loadplugins'" |--cmd|.
|
||||
|
||||
Packages are loaded. These are plugins, as above, but found in the
|
||||
"start" directory of each entry in 'packpath'. Every plugin directory
|
||||
found is added in 'runtimepath' and then the plugins are sourced. See
|
||||
|packages|.
|
||||
|
||||
The plugins scripts are loaded, as above, but now only the directories
|
||||
ending in "after" are used. Note that 'runtimepath' will have changed
|
||||
if packages have been found, but that should not add a directory
|
||||
ending in "after".
|
||||
|
||||
5. Set 'shellpipe' and 'shellredir'
|
||||
The 'shellpipe' and 'shellredir' options are set according to the
|
||||
value of the 'shell' option, unless they have been set before.
|
||||
@@ -916,7 +923,8 @@ accordingly. Vim proceeds in this order:
|
||||
The $MYVIMRC or $MYGVIMRC file will be set to the first found vimrc and/or
|
||||
gvimrc file.
|
||||
|
||||
Some hints on using initializations:
|
||||
|
||||
Some hints on using initializations ~
|
||||
|
||||
Standard setup:
|
||||
Create a vimrc file to set the default settings and mappings for all your edit
|
||||
@@ -939,27 +947,37 @@ want to set the defaults for all users. Create a vimrc file with commands
|
||||
for default settings and mappings and put it in the place that is given with
|
||||
the ":version" command.
|
||||
|
||||
Saving the current state of Vim to a file:
|
||||
|
||||
Saving the current state of Vim to a file ~
|
||||
|
||||
Whenever you have changed values of options or when you have created a
|
||||
mapping, then you may want to save them in a vimrc file for later use. See
|
||||
|save-settings| about saving the current state of settings to a file.
|
||||
|
||||
Avoiding setup problems for Vi users:
|
||||
|
||||
Avoiding setup problems for Vi users ~
|
||||
|
||||
Vi uses the variable EXINIT and the file "~/.exrc". So if you do not want to
|
||||
interfere with Vi, then use the variable VIMINIT and the file "vimrc" instead.
|
||||
|
||||
Amiga environment variables:
|
||||
|
||||
Amiga environment variables ~
|
||||
|
||||
On the Amiga, two types of environment variables exist. The ones set with the
|
||||
DOS 1.3 (or later) setenv command are recognized. See the AmigaDos 1.3
|
||||
manual. The environment variables set with the old Manx Set command (before
|
||||
version 5.0) are not recognized.
|
||||
|
||||
MS-DOS line separators:
|
||||
|
||||
MS-DOS line separators ~
|
||||
|
||||
On MS-DOS-like systems (MS-DOS itself, Win32, and OS/2), Vim assumes that all
|
||||
the vimrc files have <CR> <NL> pairs as line separators. This will give
|
||||
problems if you have a file with only <NL>s and have a line like
|
||||
":map xx yy^M". The trailing ^M will be ignored.
|
||||
|
||||
|
||||
Vi compatible default value ~
|
||||
*compatible-default*
|
||||
When Vim starts, the 'compatible' option is on. This will be used when Vim
|
||||
starts its initializations. But as soon as:
|
||||
@@ -979,7 +997,7 @@ This has the side effect of setting or resetting other options (see
|
||||
changed. This has the same effect like the value of 'compatible' had this
|
||||
value when starting Vim.
|
||||
|
||||
'compatible is NOT reset, and |defaults.vim| is not loaded:
|
||||
'compatible' is NOT reset, and |defaults.vim| is not loaded:
|
||||
- when Vim was started with the |-u| command line argument, especially with
|
||||
"-u NONE", or
|
||||
- when started with the |-C| command line argument, or
|
||||
@@ -992,6 +1010,8 @@ encountered. This makes a difference when using things like "<CR>". If the
|
||||
mappings depend on a certain value of 'compatible', set or reset it before
|
||||
giving the mapping.
|
||||
|
||||
|
||||
Defaults without a .vimrc file ~
|
||||
*defaults.vim*
|
||||
If Vim is started normally and no user vimrc file is found, the
|
||||
$VIMRUTIME/defaults.vim script is loaded. This will set 'compatible' off,
|
||||
@@ -1010,8 +1030,12 @@ If you don't like some of the defaults, you can still source defaults.vim and
|
||||
revert individual settings. See the defaults.vim file for hints on how to
|
||||
revert each item.
|
||||
|
||||
If you use a system-wide vimrc and don't want defaults.vim to change settings,
|
||||
set the "skip_defaults_vim" variable.
|
||||
|
||||
Avoiding trojan horses: *trojan-horse*
|
||||
|
||||
Avoiding trojan horses ~
|
||||
*trojan-horse*
|
||||
While reading the "vimrc" or the "exrc" file in the current directory, some
|
||||
commands can be disabled for security reasons by setting the 'secure' option.
|
||||
This is always done when executing the command from a tags file. Otherwise it
|
||||
@@ -1034,6 +1058,8 @@ Be careful!
|
||||
part of the line in the tags file) is always done in secure mode. This works
|
||||
just like executing a command from a vimrc/exrc in the current directory.
|
||||
|
||||
|
||||
If Vim startup is slow ~
|
||||
*slow-start*
|
||||
If Vim takes a long time to start up, use the |--startuptime| argument to find
|
||||
out what happens. There are a few common causes:
|
||||
@@ -1048,6 +1074,8 @@ out what happens. There are a few common causes:
|
||||
moment (use the Vim argument "-i NONE", |-i|). Try reducing the number of
|
||||
lines stored in a register with ":set viminfo='20,<50,s10". |viminfo-file|.
|
||||
|
||||
|
||||
Intro message ~
|
||||
*:intro*
|
||||
When Vim starts without a file name, an introductory message is displayed (for
|
||||
those who don't know what Vim is). It is removed as soon as the display is
|
||||
@@ -1604,8 +1632,11 @@ most of the information will be restored).
|
||||
*:ol* *:oldfiles*
|
||||
:ol[dfiles] List the files that have marks stored in the viminfo
|
||||
file. This list is read on startup and only changes
|
||||
afterwards with ":rviminfo!". Also see |v:oldfiles|.
|
||||
afterwards with `:rviminfo!`. Also see |v:oldfiles|.
|
||||
The number can be used with |c_#<|.
|
||||
The output can be filtered with |:filter|, e.g.: >
|
||||
filter /\.vim/ oldfiles
|
||||
< The filtering happens on the file name.
|
||||
{not in Vi, only when compiled with the |+eval|
|
||||
feature}
|
||||
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
*syntax.txt* For Vim version 7.4. Last change: 2016 May 28
|
||||
*syntax.txt* For Vim version 7.4. Last change: 2016 Aug 16
|
||||
|
||||
|
||||
VIM REFERENCE MANUAL by Bram Moolenaar
|
||||
@@ -949,6 +949,8 @@ Variable Highlight ~
|
||||
*c_no_bracket_error* don't highlight {}; inside [] as errors
|
||||
*c_no_curly_error* don't highlight {}; inside [] and () as errors;
|
||||
except { and } in first column
|
||||
Default is to highlight them, otherwise you
|
||||
can't spot a missing ")".
|
||||
*c_curly_error* highlight a missing }; this forces syncing from the
|
||||
start of the file, can be slow
|
||||
*c_no_ansi* don't do standard ANSI types and constants
|
||||
@@ -3762,7 +3764,7 @@ Whether or not it is actually concealed depends on the value of the
|
||||
'conceallevel' option. The 'concealcursor' option is used to decide whether
|
||||
concealable items in the current line are displayed unconcealed to be able to
|
||||
edit the line.
|
||||
Another way to conceal text with with |matchadd()|.
|
||||
Another way to conceal text is with |matchadd()|.
|
||||
|
||||
concealends *:syn-concealends*
|
||||
|
||||
@@ -4868,6 +4870,9 @@ DiffChange diff mode: Changed line |diff.txt|
|
||||
DiffDelete diff mode: Deleted line |diff.txt|
|
||||
*hl-DiffText*
|
||||
DiffText diff mode: Changed text within a changed line |diff.txt|
|
||||
*hl-EndOfBuffer*
|
||||
EndOfBuffer filler lines (~) after the last line in the buffer.
|
||||
By default, this is highlighted like |hl-NonText|.
|
||||
*hl-ErrorMsg*
|
||||
ErrorMsg error messages on the command line
|
||||
*hl-VertSplit*
|
||||
@@ -4896,10 +4901,10 @@ ModeMsg 'showmode' message (e.g., "-- INSERT --")
|
||||
*hl-MoreMsg*
|
||||
MoreMsg |more-prompt|
|
||||
*hl-NonText*
|
||||
NonText '~' and '@' at the end of the window, characters from
|
||||
'showbreak' and other characters that do not really exist in
|
||||
the text (e.g., ">" displayed when a double-wide character
|
||||
doesn't fit at the end of the line).
|
||||
NonText '@' at the end of the window, characters from 'showbreak'
|
||||
and other characters that do not really exist in the text
|
||||
(e.g., ">" displayed when a double-wide character doesn't
|
||||
fit at the end of the line).
|
||||
*hl-Normal*
|
||||
Normal normal text
|
||||
*hl-Pmenu*
|
||||
|
||||
@@ -87,14 +87,21 @@ In the GUI tab pages line you can use the right mouse button to open menu.
|
||||
Execute {cmd} and when it opens a new window open a new tab
|
||||
page instead. Doesn't work for |:diffsplit|, |:diffpatch|,
|
||||
|:execute| and |:normal|.
|
||||
When [count] is omitted the tab page appears after the current
|
||||
one.
|
||||
When [count] is specified the new tab page comes after tab
|
||||
page [count]. Use ":0tab cmd" to get the new tab page as the
|
||||
first one.
|
||||
If [count] is given the new tab page appears after the tab
|
||||
page [count] otherwise the new tab page will appear after the
|
||||
current one.
|
||||
Examples: >
|
||||
:tab split " opens current buffer in new tab page
|
||||
:tab help gt " opens tab page with help for "gt"
|
||||
:tab split " opens current buffer in new tab page
|
||||
:tab help gt " opens tab page with help for "gt"
|
||||
:.tab help gt " as above
|
||||
:+tab help " opens tab page with help after the next
|
||||
" tab page
|
||||
:-tab help " opens tab page with help before the
|
||||
" current one
|
||||
:0tab help " opens tab page with help before the
|
||||
" first one
|
||||
:$tab help " opens tab page with help after the last
|
||||
" one
|
||||
|
||||
CTRL-W gf Open a new tab page and edit the file name under the cursor.
|
||||
See |CTRL-W_gf|.
|
||||
@@ -141,10 +148,11 @@ something else.
|
||||
given, then they become hidden. But modified buffers are
|
||||
never abandoned, so changes cannot get lost. >
|
||||
:tabonly " close all tab pages except the current
|
||||
" one
|
||||
|
||||
:{count}tabo[nly][!]
|
||||
Close all tab pages except the {count}th one. >
|
||||
:.tabonly " one
|
||||
:.tabonly " as above
|
||||
:-tabonly " close all tab pages except the previous
|
||||
" one
|
||||
:+tabonly " close all tab pages except the next one
|
||||
|
||||
@@ -400,6 +400,7 @@ $VIM_POSIX vi_diff.txt /*$VIM_POSIX*
|
||||
'langmap' options.txt /*'langmap'*
|
||||
'langmenu' options.txt /*'langmenu'*
|
||||
'langnoremap' options.txt /*'langnoremap'*
|
||||
'langremap' options.txt /*'langremap'*
|
||||
'laststatus' options.txt /*'laststatus'*
|
||||
'lazyredraw' options.txt /*'lazyredraw'*
|
||||
'lbr' options.txt /*'lbr'*
|
||||
@@ -416,6 +417,7 @@ $VIM_POSIX vi_diff.txt /*$VIM_POSIX*
|
||||
'lnr' options.txt /*'lnr'*
|
||||
'loadplugins' options.txt /*'loadplugins'*
|
||||
'lpl' options.txt /*'lpl'*
|
||||
'lrm' options.txt /*'lrm'*
|
||||
'ls' options.txt /*'ls'*
|
||||
'lsp' options.txt /*'lsp'*
|
||||
'luadll' options.txt /*'luadll'*
|
||||
@@ -586,6 +588,7 @@ $VIM_POSIX vi_diff.txt /*$VIM_POSIX*
|
||||
'nojoinspaces' options.txt /*'nojoinspaces'*
|
||||
'nojs' options.txt /*'nojs'*
|
||||
'nolangnoremap' options.txt /*'nolangnoremap'*
|
||||
'nolangremap' options.txt /*'nolangremap'*
|
||||
'nolazyredraw' options.txt /*'nolazyredraw'*
|
||||
'nolbr' options.txt /*'nolbr'*
|
||||
'nolinebreak' options.txt /*'nolinebreak'*
|
||||
@@ -594,6 +597,7 @@ $VIM_POSIX vi_diff.txt /*$VIM_POSIX*
|
||||
'nolnr' options.txt /*'nolnr'*
|
||||
'noloadplugins' options.txt /*'noloadplugins'*
|
||||
'nolpl' options.txt /*'nolpl'*
|
||||
'nolrm' options.txt /*'nolrm'*
|
||||
'nolz' options.txt /*'nolz'*
|
||||
'noma' options.txt /*'noma'*
|
||||
'nomacatsui' options.txt /*'nomacatsui'*
|
||||
@@ -806,6 +810,7 @@ $VIM_POSIX vi_diff.txt /*$VIM_POSIX*
|
||||
'sbr' options.txt /*'sbr'*
|
||||
'sc' options.txt /*'sc'*
|
||||
'scb' options.txt /*'scb'*
|
||||
'scl' options.txt /*'scl'*
|
||||
'scr' options.txt /*'scr'*
|
||||
'scroll' options.txt /*'scroll'*
|
||||
'scrollbind' options.txt /*'scrollbind'*
|
||||
@@ -848,6 +853,7 @@ $VIM_POSIX vi_diff.txt /*$VIM_POSIX*
|
||||
'si' options.txt /*'si'*
|
||||
'sidescroll' options.txt /*'sidescroll'*
|
||||
'sidescrolloff' options.txt /*'sidescrolloff'*
|
||||
'signcolumn' options.txt /*'signcolumn'*
|
||||
'siso' options.txt /*'siso'*
|
||||
'sj' options.txt /*'sj'*
|
||||
'slm' options.txt /*'slm'*
|
||||
@@ -1232,6 +1238,7 @@ $VIM_POSIX vi_diff.txt /*$VIM_POSIX*
|
||||
+job various.txt /*+job*
|
||||
+jumplist various.txt /*+jumplist*
|
||||
+keymap various.txt /*+keymap*
|
||||
+lambda various.txt /*+lambda*
|
||||
+langmap various.txt /*+langmap*
|
||||
+libcall various.txt /*+libcall*
|
||||
+linebreak various.txt /*+linebreak*
|
||||
@@ -1590,6 +1597,9 @@ $VIM_POSIX vi_diff.txt /*$VIM_POSIX*
|
||||
/\{- pattern.txt /*\/\\{-*
|
||||
/\~ pattern.txt /*\/\\~*
|
||||
/^ pattern.txt /*\/^*
|
||||
/_CTRL-G cmdline.txt /*\/_CTRL-G*
|
||||
/_CTRL-L cmdline.txt /*\/_CTRL-L*
|
||||
/_CTRL-T cmdline.txt /*\/_CTRL-T*
|
||||
/atom pattern.txt /*\/atom*
|
||||
/bar pattern.txt /*\/bar*
|
||||
/branch pattern.txt /*\/branch*
|
||||
@@ -1994,6 +2004,7 @@ $VIM_POSIX vi_diff.txt /*$VIM_POSIX*
|
||||
:bmodified windows.txt /*:bmodified*
|
||||
:bn windows.txt /*:bn*
|
||||
:bnext windows.txt /*:bnext*
|
||||
:bo windows.txt /*:bo*
|
||||
:botright windows.txt /*:botright*
|
||||
:bp windows.txt /*:bp*
|
||||
:bprevious windows.txt /*:bprevious*
|
||||
@@ -2263,6 +2274,8 @@ $VIM_POSIX vi_diff.txt /*$VIM_POSIX*
|
||||
:filetype-overview filetype.txt /*:filetype-overview*
|
||||
:filetype-plugin-off filetype.txt /*:filetype-plugin-off*
|
||||
:filetype-plugin-on filetype.txt /*:filetype-plugin-on*
|
||||
:filt various.txt /*:filt*
|
||||
:filter various.txt /*:filter*
|
||||
:fin editing.txt /*:fin*
|
||||
:fina eval.txt /*:fina*
|
||||
:finally eval.txt /*:finally*
|
||||
@@ -2286,6 +2299,7 @@ $VIM_POSIX vi_diff.txt /*$VIM_POSIX*
|
||||
:for eval.txt /*:for*
|
||||
:fu eval.txt /*:fu*
|
||||
:func-abort eval.txt /*:func-abort*
|
||||
:func-closure eval.txt /*:func-closure*
|
||||
:func-dict eval.txt /*:func-dict*
|
||||
:func-range eval.txt /*:func-range*
|
||||
:function eval.txt /*:function*
|
||||
@@ -4467,6 +4481,11 @@ E929 starting.txt /*E929*
|
||||
E93 windows.txt /*E93*
|
||||
E930 eval.txt /*E930*
|
||||
E931 message.txt /*E931*
|
||||
E932 eval.txt /*E932*
|
||||
E933 eval.txt /*E933*
|
||||
E934 sign.txt /*E934*
|
||||
E935 eval.txt /*E935*
|
||||
E936 autocmd.txt /*E936*
|
||||
E94 windows.txt /*E94*
|
||||
E95 message.txt /*E95*
|
||||
E96 diff.txt /*E96*
|
||||
@@ -4745,6 +4764,7 @@ W15 repeat.txt /*W15*
|
||||
W16 message.txt /*W16*
|
||||
W17 arabic.txt /*W17*
|
||||
W18 syntax.txt /*W18*
|
||||
W19 autocmd.txt /*W19*
|
||||
WORD motion.txt /*WORD*
|
||||
WWW intro.txt /*WWW*
|
||||
Win32 os_win32.txt /*Win32*
|
||||
@@ -5061,6 +5081,7 @@ beval_lnum-variable eval.txt /*beval_lnum-variable*
|
||||
beval_text-variable eval.txt /*beval_text-variable*
|
||||
beval_winid-variable eval.txt /*beval_winid-variable*
|
||||
beval_winnr-variable eval.txt /*beval_winnr-variable*
|
||||
binary-number eval.txt /*binary-number*
|
||||
bitwise-function usr_41.txt /*bitwise-function*
|
||||
blockwise-examples visual.txt /*blockwise-examples*
|
||||
blockwise-operators visual.txt /*blockwise-operators*
|
||||
@@ -5156,6 +5177,7 @@ c_CTRL-C cmdline.txt /*c_CTRL-C*
|
||||
c_CTRL-D cmdline.txt /*c_CTRL-D*
|
||||
c_CTRL-E cmdline.txt /*c_CTRL-E*
|
||||
c_CTRL-F cmdline.txt /*c_CTRL-F*
|
||||
c_CTRL-G cmdline.txt /*c_CTRL-G*
|
||||
c_CTRL-H cmdline.txt /*c_CTRL-H*
|
||||
c_CTRL-I cmdline.txt /*c_CTRL-I*
|
||||
c_CTRL-J cmdline.txt /*c_CTRL-J*
|
||||
@@ -5172,6 +5194,7 @@ c_CTRL-R_CTRL-O cmdline.txt /*c_CTRL-R_CTRL-O*
|
||||
c_CTRL-R_CTRL-P cmdline.txt /*c_CTRL-R_CTRL-P*
|
||||
c_CTRL-R_CTRL-R cmdline.txt /*c_CTRL-R_CTRL-R*
|
||||
c_CTRL-R_CTRL-W cmdline.txt /*c_CTRL-R_CTRL-W*
|
||||
c_CTRL-T cmdline.txt /*c_CTRL-T*
|
||||
c_CTRL-U cmdline.txt /*c_CTRL-U*
|
||||
c_CTRL-V cmdline.txt /*c_CTRL-V*
|
||||
c_CTRL-W cmdline.txt /*c_CTRL-W*
|
||||
@@ -5223,6 +5246,7 @@ cc change.txt /*cc*
|
||||
ceil() eval.txt /*ceil()*
|
||||
ch.vim syntax.txt /*ch.vim*
|
||||
ch_close() eval.txt /*ch_close()*
|
||||
ch_close_in() eval.txt /*ch_close_in()*
|
||||
ch_evalexpr() eval.txt /*ch_evalexpr()*
|
||||
ch_evalraw() eval.txt /*ch_evalraw()*
|
||||
ch_getbufnr() eval.txt /*ch_getbufnr()*
|
||||
@@ -5265,6 +5289,7 @@ changing change.txt /*changing*
|
||||
channel channel.txt /*channel*
|
||||
channel-callback channel.txt /*channel-callback*
|
||||
channel-close channel.txt /*channel-close*
|
||||
channel-close-in channel.txt /*channel-close-in*
|
||||
channel-commands channel.txt /*channel-commands*
|
||||
channel-demo channel.txt /*channel-demo*
|
||||
channel-functions usr_41.txt /*channel-functions*
|
||||
@@ -5340,6 +5365,7 @@ clipboard-unnamed options.txt /*clipboard-unnamed*
|
||||
clipboard-unnamedplus options.txt /*clipboard-unnamedplus*
|
||||
clojure-indent indent.txt /*clojure-indent*
|
||||
close_cb channel.txt /*close_cb*
|
||||
closure eval.txt /*closure*
|
||||
cmdarg-variable eval.txt /*cmdarg-variable*
|
||||
cmdbang-variable eval.txt /*cmdbang-variable*
|
||||
cmdline-arguments vi_diff.txt /*cmdline-arguments*
|
||||
@@ -5582,6 +5608,7 @@ debugger.txt debugger.txt /*debugger.txt*
|
||||
dec-mouse options.txt /*dec-mouse*
|
||||
decada_members ft_ada.txt /*decada_members*
|
||||
deepcopy() eval.txt /*deepcopy()*
|
||||
defaults.vim starting.txt /*defaults.vim*
|
||||
definition-search tagsrch.txt /*definition-search*
|
||||
definitions intro.txt /*definitions*
|
||||
delete() eval.txt /*delete()*
|
||||
@@ -5708,6 +5735,8 @@ erlang.vim syntax.txt /*erlang.vim*
|
||||
err_buf channel.txt /*err_buf*
|
||||
err_cb channel.txt /*err_cb*
|
||||
err_mode channel.txt /*err_mode*
|
||||
err_modifiable channel.txt /*err_modifiable*
|
||||
err_msg channel.txt /*err_msg*
|
||||
err_name channel.txt /*err_name*
|
||||
err_timeout channel.txt /*err_timeout*
|
||||
errmsg-variable eval.txt /*errmsg-variable*
|
||||
@@ -6110,6 +6139,7 @@ ftplugin-name usr_05.txt /*ftplugin-name*
|
||||
ftplugin-overrule filetype.txt /*ftplugin-overrule*
|
||||
ftplugin-special usr_41.txt /*ftplugin-special*
|
||||
ftplugins usr_05.txt /*ftplugins*
|
||||
funcref() eval.txt /*funcref()*
|
||||
function() eval.txt /*function()*
|
||||
function-argument eval.txt /*function-argument*
|
||||
function-key intro.txt /*function-key*
|
||||
@@ -6385,6 +6415,7 @@ gdb debug.txt /*gdb*
|
||||
ge motion.txt /*ge*
|
||||
get() eval.txt /*get()*
|
||||
get-ms-debuggers debug.txt /*get-ms-debuggers*
|
||||
getbufinfo() eval.txt /*getbufinfo()*
|
||||
getbufline() eval.txt /*getbufline()*
|
||||
getbufvar() eval.txt /*getbufvar()*
|
||||
getchar() eval.txt /*getchar()*
|
||||
@@ -6417,8 +6448,10 @@ getscript-data pi_getscript.txt /*getscript-data*
|
||||
getscript-history pi_getscript.txt /*getscript-history*
|
||||
getscript-plugins pi_getscript.txt /*getscript-plugins*
|
||||
getscript-start pi_getscript.txt /*getscript-start*
|
||||
gettabinfo() eval.txt /*gettabinfo()*
|
||||
gettabvar() eval.txt /*gettabvar()*
|
||||
gettabwinvar() eval.txt /*gettabwinvar()*
|
||||
getwininfo() eval.txt /*getwininfo()*
|
||||
getwinposx() eval.txt /*getwinposx()*
|
||||
getwinposy() eval.txt /*getwinposy()*
|
||||
getwinvar() eval.txt /*getwinvar()*
|
||||
@@ -6624,6 +6657,7 @@ hl-DiffChange syntax.txt /*hl-DiffChange*
|
||||
hl-DiffDelete syntax.txt /*hl-DiffDelete*
|
||||
hl-DiffText syntax.txt /*hl-DiffText*
|
||||
hl-Directory syntax.txt /*hl-Directory*
|
||||
hl-EndOfBuffer syntax.txt /*hl-EndOfBuffer*
|
||||
hl-ErrorMsg syntax.txt /*hl-ErrorMsg*
|
||||
hl-FoldColumn syntax.txt /*hl-FoldColumn*
|
||||
hl-Folded syntax.txt /*hl-Folded*
|
||||
@@ -6836,6 +6870,7 @@ improvements-7 version7.txt /*improvements-7*
|
||||
improvements-8 version8.txt /*improvements-8*
|
||||
in_bot channel.txt /*in_bot*
|
||||
in_buf channel.txt /*in_buf*
|
||||
in_io-buffer channel.txt /*in_io-buffer*
|
||||
in_mode channel.txt /*in_mode*
|
||||
in_name channel.txt /*in_name*
|
||||
in_top channel.txt /*in_top*
|
||||
@@ -7577,6 +7612,7 @@ new-search-path version6.txt /*new-search-path*
|
||||
new-searchpat version6.txt /*new-searchpat*
|
||||
new-session-files version5.txt /*new-session-files*
|
||||
new-spell version7.txt /*new-spell*
|
||||
new-style-testing eval.txt /*new-style-testing*
|
||||
new-tab-pages version7.txt /*new-tab-pages*
|
||||
new-undo-branches version7.txt /*new-undo-branches*
|
||||
new-unlisted-buffers version6.txt /*new-unlisted-buffers*
|
||||
@@ -7620,6 +7656,7 @@ ocaml.vim syntax.txt /*ocaml.vim*
|
||||
octal eval.txt /*octal*
|
||||
octal-nrformats options.txt /*octal-nrformats*
|
||||
octal-number eval.txt /*octal-number*
|
||||
old-style-testing eval.txt /*old-style-testing*
|
||||
oldfiles-variable eval.txt /*oldfiles-variable*
|
||||
ole-activation if_ole.txt /*ole-activation*
|
||||
ole-eval if_ole.txt /*ole-eval*
|
||||
@@ -7664,7 +7701,10 @@ os_win32.txt os_win32.txt /*os_win32.txt*
|
||||
other-features vi_diff.txt /*other-features*
|
||||
out_buf channel.txt /*out_buf*
|
||||
out_cb channel.txt /*out_cb*
|
||||
out_io-buffer channel.txt /*out_io-buffer*
|
||||
out_mode channel.txt /*out_mode*
|
||||
out_modifiable channel.txt /*out_modifiable*
|
||||
out_msg channel.txt /*out_msg*
|
||||
out_name channel.txt /*out_name*
|
||||
out_timeout channel.txt /*out_timeout*
|
||||
p change.txt /*p*
|
||||
@@ -7776,10 +7816,12 @@ print-options print.txt /*print-options*
|
||||
print.txt print.txt /*print.txt*
|
||||
printf() eval.txt /*printf()*
|
||||
printf-% eval.txt /*printf-%*
|
||||
printf-B eval.txt /*printf-B*
|
||||
printf-E eval.txt /*printf-E*
|
||||
printf-G eval.txt /*printf-G*
|
||||
printf-S eval.txt /*printf-S*
|
||||
printf-X eval.txt /*printf-X*
|
||||
printf-b eval.txt /*printf-b*
|
||||
printf-c eval.txt /*printf-c*
|
||||
printf-d eval.txt /*printf-d*
|
||||
printf-e eval.txt /*printf-e*
|
||||
@@ -8432,11 +8474,11 @@ t_ZH term.txt /*t_ZH*
|
||||
t_ZR term.txt /*t_ZR*
|
||||
t_al term.txt /*t_al*
|
||||
t_bc term.txt /*t_bc*
|
||||
t_bool-varialble eval.txt /*t_bool-varialble*
|
||||
t_bool-variable eval.txt /*t_bool-variable*
|
||||
t_cd term.txt /*t_cd*
|
||||
t_cdl version4.txt /*t_cdl*
|
||||
t_ce term.txt /*t_ce*
|
||||
t_channel-varialble eval.txt /*t_channel-varialble*
|
||||
t_channel-variable eval.txt /*t_channel-variable*
|
||||
t_ci version4.txt /*t_ci*
|
||||
t_cil version4.txt /*t_cil*
|
||||
t_cl term.txt /*t_cl*
|
||||
@@ -8448,7 +8490,7 @@ t_cv version4.txt /*t_cv*
|
||||
t_cvv version4.txt /*t_cvv*
|
||||
t_da term.txt /*t_da*
|
||||
t_db term.txt /*t_db*
|
||||
t_dict-varialble eval.txt /*t_dict-varialble*
|
||||
t_dict-variable eval.txt /*t_dict-variable*
|
||||
t_dl term.txt /*t_dl*
|
||||
t_ed version4.txt /*t_ed*
|
||||
t_el version4.txt /*t_el*
|
||||
@@ -8462,12 +8504,12 @@ t_f6 version4.txt /*t_f6*
|
||||
t_f7 version4.txt /*t_f7*
|
||||
t_f8 version4.txt /*t_f8*
|
||||
t_f9 version4.txt /*t_f9*
|
||||
t_float-varialble eval.txt /*t_float-varialble*
|
||||
t_float-variable eval.txt /*t_float-variable*
|
||||
t_fs term.txt /*t_fs*
|
||||
t_func-varialble eval.txt /*t_func-varialble*
|
||||
t_func-variable eval.txt /*t_func-variable*
|
||||
t_help version4.txt /*t_help*
|
||||
t_il version4.txt /*t_il*
|
||||
t_job-varialble eval.txt /*t_job-varialble*
|
||||
t_job-variable eval.txt /*t_job-variable*
|
||||
t_k1 term.txt /*t_k1*
|
||||
t_k2 term.txt /*t_k2*
|
||||
t_k3 term.txt /*t_k3*
|
||||
@@ -8492,15 +8534,15 @@ t_kr term.txt /*t_kr*
|
||||
t_ks term.txt /*t_ks*
|
||||
t_ku term.txt /*t_ku*
|
||||
t_le term.txt /*t_le*
|
||||
t_list-varialble eval.txt /*t_list-varialble*
|
||||
t_list-variable eval.txt /*t_list-variable*
|
||||
t_mb term.txt /*t_mb*
|
||||
t_md term.txt /*t_md*
|
||||
t_me term.txt /*t_me*
|
||||
t_mr term.txt /*t_mr*
|
||||
t_ms term.txt /*t_ms*
|
||||
t_nd term.txt /*t_nd*
|
||||
t_none-varialble eval.txt /*t_none-varialble*
|
||||
t_number-varialble eval.txt /*t_number-varialble*
|
||||
t_none-variable eval.txt /*t_none-variable*
|
||||
t_number-variable eval.txt /*t_number-variable*
|
||||
t_op term.txt /*t_op*
|
||||
t_se term.txt /*t_se*
|
||||
t_sf1 version4.txt /*t_sf1*
|
||||
@@ -8520,7 +8562,7 @@ t_sku version4.txt /*t_sku*
|
||||
t_so term.txt /*t_so*
|
||||
t_sr term.txt /*t_sr*
|
||||
t_star7 term.txt /*t_star7*
|
||||
t_string-varialble eval.txt /*t_string-varialble*
|
||||
t_string-variable eval.txt /*t_string-variable*
|
||||
t_tb version4.txt /*t_tb*
|
||||
t_te term.txt /*t_te*
|
||||
t_ti term.txt /*t_ti*
|
||||
@@ -8664,6 +8706,7 @@ test_null_list() eval.txt /*test_null_list()*
|
||||
test_null_partial() eval.txt /*test_null_partial()*
|
||||
test_null_string() eval.txt /*test_null_string()*
|
||||
test_settime() eval.txt /*test_settime()*
|
||||
testing eval.txt /*testing*
|
||||
testing-variable eval.txt /*testing-variable*
|
||||
tex-cchar syntax.txt /*tex-cchar*
|
||||
tex-cole syntax.txt /*tex-cole*
|
||||
@@ -8694,9 +8737,14 @@ throw-from-catch eval.txt /*throw-from-catch*
|
||||
throw-variables eval.txt /*throw-variables*
|
||||
throwpoint-variable eval.txt /*throwpoint-variable*
|
||||
time-functions usr_41.txt /*time-functions*
|
||||
timer eval.txt /*timer*
|
||||
timer-functions usr_41.txt /*timer-functions*
|
||||
timer_info() eval.txt /*timer_info()*
|
||||
timer_pause() eval.txt /*timer_pause()*
|
||||
timer_start() eval.txt /*timer_start()*
|
||||
timer_stop() eval.txt /*timer_stop()*
|
||||
timer_stopall() eval.txt /*timer_stopall()*
|
||||
timers eval.txt /*timers*
|
||||
timestamp editing.txt /*timestamp*
|
||||
timestamps editing.txt /*timestamps*
|
||||
tips tips.txt /*tips*
|
||||
@@ -9179,6 +9227,7 @@ win_id2win() eval.txt /*win_id2win()*
|
||||
winbufnr() eval.txt /*winbufnr()*
|
||||
wincol() eval.txt /*wincol()*
|
||||
window windows.txt /*window*
|
||||
window-ID windows.txt /*window-ID*
|
||||
window-contents intro.txt /*window-contents*
|
||||
window-exit editing.txt /*window-exit*
|
||||
window-functions usr_41.txt /*window-functions*
|
||||
@@ -9189,6 +9238,7 @@ window-size term.txt /*window-size*
|
||||
window-size-functions usr_41.txt /*window-size-functions*
|
||||
window-tag windows.txt /*window-tag*
|
||||
window-variable eval.txt /*window-variable*
|
||||
windowid windows.txt /*windowid*
|
||||
windowid-variable eval.txt /*windowid-variable*
|
||||
windows windows.txt /*windows*
|
||||
windows-3.1 os_win32.txt /*windows-3.1*
|
||||
@@ -9198,6 +9248,7 @@ windows-starting windows.txt /*windows-starting*
|
||||
windows.txt windows.txt /*windows.txt*
|
||||
windows95 os_win32.txt /*windows95*
|
||||
winheight() eval.txt /*winheight()*
|
||||
winid windows.txt /*winid*
|
||||
winline() eval.txt /*winline()*
|
||||
winnr() eval.txt /*winnr()*
|
||||
winrestcmd() eval.txt /*winrestcmd()*
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
*tagsrch.txt* For Vim version 7.4. Last change: 2013 Oct 01
|
||||
*tagsrch.txt* For Vim version 7.4. Last change: 2016 Aug 20
|
||||
|
||||
|
||||
VIM REFERENCE MANUAL by Bram Moolenaar
|
||||
@@ -84,14 +84,23 @@ Note that when the current file changes, the priority list is mostly not
|
||||
changed, to avoid confusion when using ":tnext". It is changed when using
|
||||
":tag {ident}".
|
||||
|
||||
The ignore-case matches are not found for a ":tag" command when the
|
||||
'ignorecase' option is off and 'tagcase' is "followic" or when 'tagcase' is
|
||||
"match". They are found when a pattern is used (starting with a "/") and for
|
||||
":tselect", also when 'ignorecase' is off and 'tagcase' is "followic" or when
|
||||
'tagcase' is "match". Note that using ignore-case tag searching disables
|
||||
binary searching in the tags file, which causes a slowdown. This can be
|
||||
avoided by fold-case sorting the tag file. See the 'tagbsearch' option for an
|
||||
explanation.
|
||||
The ignore-case matches are not found for a ":tag" command when:
|
||||
- the 'ignorecase' option is off and 'tagcase' is "followic"
|
||||
- 'tagcase' is "match"
|
||||
- 'tagcase' is "smart" and the pattern contains an upper case character.
|
||||
- 'tagcase' is "followscs" and 'smartcase' option is on and the pattern
|
||||
contains an upper case character.
|
||||
|
||||
The gnore-case matches are found when:
|
||||
- a pattern is used (starting with a "/")
|
||||
- for ":tselect"
|
||||
- when 'tagcase' is "followic" and 'ignorecase' is off
|
||||
- when 'tagcase' is "match"
|
||||
- when 'tagcase' is "followscs" and the 'smartcase' option is off
|
||||
|
||||
Note that using ignore-case tag searching disables binary searching in the
|
||||
tags file, which causes a slowdown. This can be avoided by fold-case sorting
|
||||
the tag file. See the 'tagbsearch' option for an explanation.
|
||||
|
||||
==============================================================================
|
||||
2. Tag stack *tag-stack* *tagstack* *E425*
|
||||
@@ -442,13 +451,18 @@ file "tags". It can also be used to access a common tags file.
|
||||
The next file in the list is not used when:
|
||||
- A matching static tag for the current buffer has been found.
|
||||
- A matching global tag has been found.
|
||||
This also depends on whether case is ignored. Case is ignored when
|
||||
'ignorecase' is set and 'tagcase' is "followic", or when 'tagcase' is
|
||||
"ignore". If case is not ignored, and the tags file only has a match without
|
||||
matching case, the next tags file is searched for a match with matching case.
|
||||
If no tag with matching case is found, the first match without matching case
|
||||
is used. If case is ignored, and a matching global tag with or without
|
||||
matching case is found, this one is used, no further tags files are searched.
|
||||
This also depends on whether case is ignored. Case is ignored when:
|
||||
- 'tagcase' is "followic" and 'ignorecase' is set
|
||||
- 'tagcase' is "ignore"
|
||||
- 'tagcase' is "smart" and the pattern only contains lower case
|
||||
characters.
|
||||
- 'tagcase' is "followscs" and 'smartcase' is set and the pattern only
|
||||
contains lower case characters.
|
||||
If case is not ignored, and the tags file only has a match without matching
|
||||
case, the next tags file is searched for a match with matching case. If no
|
||||
tag with matching case is found, the first match without matching case is
|
||||
used. If case is ignored, and a matching global tag with or without matching
|
||||
case is found, this one is used, no further tags files are searched.
|
||||
|
||||
When a tag file name starts with "./", the '.' is replaced with the path of
|
||||
the current file. This makes it possible to use a tags file in the directory
|
||||
@@ -819,24 +833,24 @@ CTRL-W d Open a new window, with the cursor on the first
|
||||
|
||||
*:search-args*
|
||||
Common arguments for the commands above:
|
||||
[!] When included, find matches in lines that are recognized as comments.
|
||||
When excluded, a match is ignored when the line is recognized as a
|
||||
comment (according to 'comments'), or the match is in a C comment (after
|
||||
"//" or inside /* */). Note that a match may be missed if a line is
|
||||
recognized as a comment, but the comment ends halfway the line.
|
||||
And if the line is a comment, but it is not recognized (according to
|
||||
'comments') a match may be found in it anyway. Example: >
|
||||
[!] When included, find matches in lines that are recognized as comments.
|
||||
When excluded, a match is ignored when the line is recognized as a
|
||||
comment (according to 'comments'), or the match is in a C comment
|
||||
(after "//" or inside /* */). Note that a match may be missed if a
|
||||
line is recognized as a comment, but the comment ends halfway the line.
|
||||
And if the line is a comment, but it is not recognized (according to
|
||||
'comments') a match may be found in it anyway. Example: >
|
||||
/* comment
|
||||
foobar */
|
||||
< A match for "foobar" is found, because this line is not recognized as a
|
||||
comment (even though syntax highlighting does recognize it).
|
||||
Note: Since a macro definition mostly doesn't look like a comment, the
|
||||
[!] makes no difference for ":dlist", ":dsearch" and ":djump".
|
||||
[/] A pattern can be surrounded by '/'. Without '/' only whole words are
|
||||
matched, using the pattern "\<pattern\>". Only after the second '/' a
|
||||
next command can be appended with '|'. Example: >
|
||||
< A match for "foobar" is found, because this line is not recognized as
|
||||
a comment (even though syntax highlighting does recognize it).
|
||||
Note: Since a macro definition mostly doesn't look like a comment, the
|
||||
[!] makes no difference for ":dlist", ":dsearch" and ":djump".
|
||||
[/] A pattern can be surrounded by '/'. Without '/' only whole words are
|
||||
matched, using the pattern "\<pattern\>". Only after the second '/' a
|
||||
next command can be appended with '|'. Example: >
|
||||
:isearch /string/ | echo "the last one"
|
||||
< For a ":djump", ":dsplit", ":dlist" and ":dsearch" command the pattern
|
||||
is used as a literal string, not as a search pattern.
|
||||
< For a ":djump", ":dsplit", ":dlist" and ":dsearch" command the pattern
|
||||
is used as a literal string, not as a search pattern.
|
||||
|
||||
vim:tw=78:ts=8:ft=help:norl:
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
*term.txt* For Vim version 7.4. Last change: 2016 Apr 29
|
||||
*term.txt* For Vim version 7.4. Last change: 2016 Sep 02
|
||||
|
||||
|
||||
VIM REFERENCE MANUAL by Bram Moolenaar
|
||||
@@ -426,6 +426,8 @@ Vim has started, the escape sequences may not be recognized anymore.
|
||||
Vim supports using true colors in the terminal (taken from |highlight-guifg|
|
||||
and |highlight-guibg|), given that the terminal supports this. To make this
|
||||
work the 'termguicolors' option needs to be set.
|
||||
See https://gist.github.com/XVilka/8346728 for a list of terminals that
|
||||
support true colors.
|
||||
|
||||
Sometimes setting 'termguicolors' is not enough and one has to set the |t_8f|
|
||||
and |t_8b| options explicitly. Default values of these options are
|
||||
@@ -433,9 +435,8 @@ and |t_8b| options explicitly. Default values of these options are
|
||||
set when `$TERM` is `xterm`. Some terminals accept the same sequences, but
|
||||
with all semicolons replaced by colons (this is actually more compatible, but
|
||||
less widely supported): >
|
||||
set t_8f=^[[38:2:%lu:%lu:%lum
|
||||
set t_8b=^[[48:2:%lu:%lu:%lum
|
||||
(replace `^[` with real escape)
|
||||
let &t_8f = "\<Esc>[38:2:%lu:%lu:%lum"
|
||||
let &t_8b = "\<Esc>[48:2:%lu:%lu:%lum"
|
||||
|
||||
These options contain printf strings, with |printf()| (actually, its C
|
||||
equivalent hence `l` modifier) invoked with the t_ option value and three
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
*todo.txt* For Vim version 7.4. Last change: 2016 Jul 23
|
||||
*todo.txt* For Vim version 7.4. Last change: 2016 Sep 08
|
||||
|
||||
|
||||
VIM REFERENCE MANUAL by Bram Moolenaar
|
||||
@@ -34,7 +34,27 @@ not be repeated below, unless there is extra information.
|
||||
*known-bugs*
|
||||
-------------------- Known bugs and current work -----------------------
|
||||
|
||||
Invalid memory access in do_pending_operator. (Dominique, 2016 Sep 5)
|
||||
|
||||
Invalid memory access in msg_puts_printf (Dominique, 2016 Sep 6)
|
||||
|
||||
Crash after wiping a buffer. (Dominique, Sep 7)
|
||||
|
||||
With MS-Windows gvim:
|
||||
test_netbeans.vim fails. Nb_basic line 12 and 13.
|
||||
test86 fails partial fix
|
||||
test87 fails
|
||||
|
||||
Make ":filter" work with more commands.
|
||||
Search for: msg_putchar('\n')
|
||||
|
||||
+channel:
|
||||
- channel_wait() may return an error while there is still something to read.
|
||||
Perhaps try to read once?
|
||||
- Problem with stderr on Windows? (Vincent Rischmann, 2016 Aug 31, #1026)
|
||||
- Add 'cwd' argument to start_job(): directory to change to in the child.
|
||||
check for valid directory before forking.
|
||||
- Implement |job-term| ?
|
||||
- Channel test fails with Motif. Sometimes kills the X11 server.
|
||||
- When a message in the queue but there is no callback, drop it after a while?
|
||||
Add timestamp to queued messages and callbacks with ID, remove after a
|
||||
@@ -51,6 +71,8 @@ Later
|
||||
With xterm could use -S{pty}.
|
||||
|
||||
Regexp problems:
|
||||
- The new engine does not do the example in change.txt correctly, where the
|
||||
meaning of \1 and \2 is explained. (Harm te Hennepe, #990)
|
||||
- Since 7.4.704 the old regex engine fails to match [[:print:]] in 0xf6.
|
||||
(Manuel Ortega, 2016 Apr 24)
|
||||
Test fails on Mac. Avoid using isalpha(), isalnum(), etc? Depends on
|
||||
@@ -105,26 +127,12 @@ What if there is an invalid character?
|
||||
Should json_encode()/json_decode() restrict recursiveness?
|
||||
Or avoid recursiveness.
|
||||
|
||||
Patch to test popupmenu. Fails, possibly due to a bug.
|
||||
(Christian Brabandt, 2016 Jul 23)
|
||||
|
||||
7 In "-- INSERT (lang) --" show the name of the keymap used instead of
|
||||
"lang". (Ilya Dogolazky)
|
||||
Patch: Show keymap name in mode indicator (Dmitri Vereshchagin, 2016 Jul 19,
|
||||
#933)
|
||||
|
||||
Patch to fix the Problem using cgn to change a search hit when
|
||||
replacement includes hit. Reported by John Beckett, fix by Christian Brabandt,
|
||||
2016 Jan 11.
|
||||
Error in test_startup_utf8 on Solaris. (Danek Duvall, 2016 Aug 17)
|
||||
|
||||
Once .exe with updated installer is available: Add remark to download page
|
||||
about /S and /D options (Ken Takata, 2016 Apr 13)
|
||||
Or point to nightly builds: https://github.com/vim/vim-win32-installer/releases
|
||||
|
||||
Problem with completion on "**/" in $path. (issue #932)
|
||||
Happens in uniquefy_paths() ? More info Jul 22.
|
||||
Fix for this (Harm te Hennepe, 2016 Jul 21, #939)
|
||||
|
||||
Cursor positioned in the wrong place when editing src/testdir/test_viml.vim.
|
||||
|
||||
Javascript indent wrong after /* in single quoted string:
|
||||
@@ -136,45 +144,40 @@ Javascript indent wrong after /* in single quoted string:
|
||||
Use ADDR_OTHER instead of ADDR_LINES for many more commands.
|
||||
Add tests for using number larger than number of lines in buffer.
|
||||
|
||||
Updating marks in quickfix list is broken. (Yegappan, 2016 Jul 18)
|
||||
|
||||
Invalid behavior with NULL list. (Nikolai Pavlov, #768)
|
||||
|
||||
For current Windows build .pdb file is missing. (Gabriele Fava, 2016 May 11)
|
||||
5)
|
||||
|
||||
Support closure for lambda? Ken Takata is working on it.
|
||||
Patch Jul 19. Still need test updates.
|
||||
min() and max() spawn lots of error messages if sorted list/dictionary
|
||||
contains invalid data (Nikolay Pavlov, 2016 Sep 4, #1039)
|
||||
|
||||
Patch to fix compiler warning with gtk3. (Kazunobu Kuriyama, 2016 Aug 24)
|
||||
|
||||
Problem with whitespace in errorformat. (Gerd Wachsmuth, 2016 May 15, #807)
|
||||
|
||||
Undo problem: "g-" doesn't go back, gets stuck. (Björn Linse, 2016 Jul 18)
|
||||
|
||||
Patch to allow setting w:quickfix_title via setqflist() and setloclist()
|
||||
functions. (Christian Brabandt, 2013 May 8, update May 21)
|
||||
Patch to add getlocstack() / setlocstack(). (Christian Brabandt, 2013 May 14)
|
||||
Second one. Update May 22.
|
||||
Update by Daniel Hahler, 2014 Jul 4, Aug 14, Oct 14, Oct 15.
|
||||
Rethink this: can we add an argument to setqflist() and getqflist() for these
|
||||
extra items?
|
||||
sort() is not stable when using numeric/float sort (Nikolay Pavlov, 2016 Sep
|
||||
4#1038)
|
||||
|
||||
Patch to add filtering of the quickfix list. (Yegappan Lakshmanan, 2016 Mar
|
||||
13, last version) Update June 26, #830.
|
||||
Instead use a Vim script implementation, invoked from a Vim command.
|
||||
cmap using execute() has side effects. (Killthemule, 2016 Aug 17, #983)
|
||||
|
||||
Syntax highlighting for messages with RFC3339 timestamp (#946)
|
||||
Did maintainer reply?
|
||||
|
||||
ml_get errors when reloading file. (Chris Desjardins, 2016 Apr 19)
|
||||
Also with latest version.
|
||||
|
||||
Still problems with 'emoji'. See issue #721. Patch 7.4.1697 half-fixes it.
|
||||
Avoid PLAN_WRITE in windgoto() ?
|
||||
Should already never use utf-8 chars to position the cursor.
|
||||
|
||||
Cannot delete a file with square brackets with delete(). (#696)
|
||||
|
||||
No autocommand for when changing directory. Patch from allen haim, 2016 Jun
|
||||
27, #888
|
||||
Justin M Keyes: use "global" or "window" for the pattern. Can add "tab"
|
||||
later.
|
||||
Completion for input() does not expand environment variables. (chdiza, 2016
|
||||
Jul 25, #948)
|
||||
|
||||
'hlsearch' interferes with a Conceal match. (Rom Grk, 2016 Aug 9)
|
||||
|
||||
Patch to add context information to quickfix/location list. (Yegappan
|
||||
Lakshmanan, 2016 Aug 25)
|
||||
|
||||
MS-Windows: use WS_HIDE instead of SW_SHOWMINNOACTIVE in os_win32.c?
|
||||
Otherwise task flickers in taskbar.
|
||||
@@ -184,41 +187,43 @@ Also for ":@.".
|
||||
|
||||
Repeating 'opfunc' in a function only works once. (Tarmean, 2016 Jul 15, #925)
|
||||
|
||||
Patch on issue #728 by Christian Brabandt, 2016 Apr 7. Update with test: Apr 8.
|
||||
Explanation Apr 12.
|
||||
Might be related to:
|
||||
Test 44 fails when [[=A=]] is changed to [[=À=]]. Caused by getcmdline() not
|
||||
handling the 0x80 as a second byte correctly? (Dominique Pelle, 2015 Jun 10)
|
||||
|
||||
Patch to add 'topbot' to 'belloff' option. (Coot, 2016 Mar 18, #695)
|
||||
|
||||
Patch for C syntax HL. (Bradley Garagan, 2016 Apr 17) #763
|
||||
|
||||
Patch to make matchit work better, respect 'matchpairs'. (Ken Takata, 2016 Mar
|
||||
25)
|
||||
Second problem in #966: ins_compl_add_tv() uses get_dict_string() multiple
|
||||
times, overwrites the one buffer. (Nikolay Pavlov, 2016 Aug 5)
|
||||
|
||||
This does not work: :set cscopequickfix=a-
|
||||
(Linewi, 2015 Jul 12, #914)
|
||||
|
||||
Possibly wrong value for seq_cur. (Florent Fayolle, 2016 May 15, #806)
|
||||
|
||||
Filetype plugin for awk. (Doug Kearns, 2016 Sep 5)
|
||||
|
||||
Patch to improve map documentation. Issue #799.
|
||||
|
||||
Patch for syntax folding optimization. (Shougo, 2016 Sep 6, #1045)
|
||||
|
||||
Patch for restoring wide characters in the console buffer.
|
||||
(Ken Takata, 2016 Jun 7)
|
||||
|
||||
We can use '. to go to the last change in the current buffer, but how about
|
||||
the last change in any buffer? Can we use ', (, is next to .)?
|
||||
|
||||
Ramel Eshed: system() is much slower than job_start(), why? (Aug 26)
|
||||
|
||||
Patch for Python: #622. (Roland Puntaier, 2016 Feb 2)
|
||||
What does it change?
|
||||
|
||||
Patch to make gd and gD work better for non-K&R code and with comments.
|
||||
(Anton Lindqvist, 2016 Aug 29)
|
||||
|
||||
When generating the Unicode tables with runtime/tools/unicode.vim the
|
||||
emoji_width table has only one entry.
|
||||
|
||||
It's possible to add ",," to 'wildignore', an empty entry. Causes problems.
|
||||
Reject the value? #710.
|
||||
|
||||
Patch to fix increment/decrement not working properly when 'virtualedit' is
|
||||
set. (Hirohito Higashi, 2016 Aug 1, #923)
|
||||
|
||||
Patch to support strikethrough next to bold and italic. (Christian Brabandt,
|
||||
2013 Jul 30) Update from Ken Takata, 2013 Oct 12.
|
||||
Update mentioned by Christian, 2016 Apr 25.
|
||||
@@ -239,11 +244,14 @@ Add redrawtabline command. (Naruhiko Nishino, 2016 Jun 11)
|
||||
|
||||
Neovim patch for utfc_ptr2char_len() https://github.com/neovim/neovim/pull/4574
|
||||
No test, needs some work to include.
|
||||
|
||||
Patch to make finding duplicate tags much faster, using a hashtab. (James
|
||||
McCoy, 2016 Sept 6, #1046)
|
||||
>
|
||||
Patch to improve indenting for C++ constructor with initializer list.
|
||||
(Hirohito Higashi, 2016 Mar 31)
|
||||
|
||||
After 7.5 is released:
|
||||
After 8.0 is released:
|
||||
- Drop support for older MS-Windows systems, before XP.
|
||||
Patch from Ken Takata, 2016 Mar 8.
|
||||
|
||||
@@ -272,6 +280,9 @@ Problem using ":try" inside ":execute". (ZyX, 2013 Sep 15)
|
||||
|
||||
Patch to make tests pass with EBCDIC. (Owen Leibman, 2016 Apr 10)
|
||||
|
||||
Add ":read :command", to insert the output of an Ex command?
|
||||
Can already do it with ":$put =execute('command')".
|
||||
|
||||
When repeating the 'confirm' dialog one needs to press Enter. (ds26gte, 2016
|
||||
Apr 17) #762
|
||||
|
||||
@@ -298,8 +309,23 @@ Should use /usr/local/share/applications or /usr/share/applications.
|
||||
Or use $XDG_DATA_DIRS.
|
||||
Also need to run update-desktop-database (Kuriyama Kazunobu, 2015 Nov 4)
|
||||
|
||||
Patch to add getbufinfo(), gettabinfo() and getwininfo(). (Yegappan
|
||||
Lakshmanan, 2016 Apr 2016) Update Jun 8.
|
||||
Patch to test popupmenu. Fails, possibly due to a bug.
|
||||
(Christian Brabandt, 2016 Jul 23)
|
||||
|
||||
Patch to introduce 'cmdencoding'. (Ken Takata, Aug 18?)
|
||||
Better help Aug 19.
|
||||
Problem: applies to too many commands, such as :cbuffer.
|
||||
Updated patch with three options, 2016 Sep 8.
|
||||
Win32: When running ":make" and 'encoding' differs from the system locale,
|
||||
the output should be converted. Esp. when 'encoding' is "utf-8". (Yongwei
|
||||
Wu) Should we use 'termencoding' for this?
|
||||
|
||||
Patch to have text objects defined by arbitrary single characters. (Daniel
|
||||
Thau, 2013 Nov 20, 2014 Jan 29, 2014 Jan 31)
|
||||
Added tests (James McCoy, 2016 Aug 3). Still needs more work.
|
||||
|
||||
Patch to add CTRL-N / CTRL-P while searching. (Christian Brabandt, 2016 Aug
|
||||
3) Problem: two matches in one line and using CTRL-P does not move back.
|
||||
|
||||
Access to uninitialized memory in match_backref() regexp_nda.c:4882
|
||||
(Dominique Pelle, 2015 Nov 6)
|
||||
@@ -322,9 +348,6 @@ Patch to avoid redrawing tabline when the popup menu is visible.
|
||||
Patch to add {skip} argument to search(). (Christian Brabandt, 2016 Feb 24)
|
||||
Update 2016 Jun 10, #861
|
||||
|
||||
Add value "smart" to 'tagcase': ignore case when tag is all lower case.
|
||||
Patch from Christian Brabandt, 2016 Mar 30, #712.
|
||||
|
||||
Patch to be able to use hex numbers with :digraph. (Lcd, 2015 Sep 6)
|
||||
Update Sep 7. Update by Christian Brabandt, 2015 Sep 8, 2016 Feb 1.
|
||||
|
||||
@@ -403,6 +426,10 @@ inconsistent with the documentation.
|
||||
Can we cache the syntax attributes, so that updates for 'relativenumber' and
|
||||
'cursorline'/'cursorcolumn' are a lot faster?
|
||||
|
||||
C highlighting: modern C allows: /* comment */ #ifdef
|
||||
and also line continuation after #include.
|
||||
I can't recommend it though.
|
||||
|
||||
Build with Python on Mac does not always use the right library.
|
||||
(Kazunobu Kuriyama, 2015 Mar 28)
|
||||
|
||||
@@ -521,7 +548,7 @@ Mixup of highlighting when there is a match and SpellBad. (ZyX, 2015 Jan 1)
|
||||
Patch for drag&drop reordering of GUI tab pages reordering.
|
||||
(Ken Takata, 2013 Nov 22, second one, also by Masamichi Abe)
|
||||
Now on Git: https://gist.github.com/nocd5/165286495c782b815b94
|
||||
Update 2016 Mar 15.
|
||||
Update 2016 Aug 10.
|
||||
|
||||
Patch on Issue 72: 'autochdir' causes problems for :vimgrep.
|
||||
|
||||
@@ -541,9 +568,6 @@ any one-character from the previous line. (Kartik Agaram, 2014 Sep 19)
|
||||
|
||||
Syntax highlighting slow (hangs) in SASS file. (Niek Bosch, 2013 Aug 21)
|
||||
|
||||
Patch to add the EndOfBuffer highlight group, used instead of NonText for "~"
|
||||
lines. (Marco Hinz, 2014 Nov 2)
|
||||
|
||||
Adding "~" to 'cdpath' doesn't work for completion? (Davido, 2013 Aug 19)
|
||||
|
||||
Should be easy to highlight all matches with 'incsearch'. Idea by Itchyny,
|
||||
@@ -552,8 +576,6 @@ Should be easy to highlight all matches with 'incsearch'. Idea by Itchyny,
|
||||
Wrong scrolling when using incsearch. Patch by Christian Brabandt, 2014 Dec 4.
|
||||
Is this a good solution?
|
||||
|
||||
Patch to add /pattern/ to :oldfiles. Pull #575.
|
||||
|
||||
Patch: Let rare word highlighting overrule good word highlighting.
|
||||
(Jakson A. Aquino, 2010 Jul 30, again 2011 Jul 2)
|
||||
|
||||
@@ -623,9 +645,11 @@ Spell files use a latin single quote. Unicode also has another single quote:
|
||||
New OpenOffice spell files support this with ICONV. But they are not
|
||||
compatible with Vim spell files. The old files can no longer be downloaded.
|
||||
|
||||
xterm should be able to pass focus changes to Vim, so that Vim can check for
|
||||
buffers that changed. Perhaps in misc.c, function selectwindow().
|
||||
Xterm 224 supports it!
|
||||
Patch to make FocusGained and FocusLost work in modern terminals. (Hayaki
|
||||
Saito, 2013 Apr 24) Has a problem (email 2015 Jan 7).
|
||||
Update 2015 Jan 10.
|
||||
Saito, 2013 Apr 24) Update 2016 Aug 12.
|
||||
Also see issue #609.
|
||||
We could add the enable/disable sequences to t_ti/t_te or t_ks/t_ke.
|
||||
|
||||
@@ -754,9 +778,6 @@ Patch by Thomas Tuegel, also for GTK, 2013 Nov 24
|
||||
Patch to add funcref to Lua. (Luis Carvalho, 2013 Sep 4)
|
||||
With tests: Sep 5.
|
||||
|
||||
Patch to fix that on suckless Terminal mousewheel up does not work.
|
||||
(Ralph Eastwood, 2013 Nov 25)
|
||||
|
||||
Discussion about canonicalization of Hebrew. (Ron Aaron, 2011 April 10)
|
||||
|
||||
Checking runtime scripts: Thilo Six, 2012 Jun 6.
|
||||
@@ -849,9 +870,6 @@ Improve the installer for MS-Windows. There are a few alternatives:
|
||||
Problem: they all work slightly different (e.g. don't install vimrun.exe).
|
||||
How to test that it works well for all Vim users?
|
||||
|
||||
Patch to check whether a buffer is quickfix or a location list.
|
||||
(Yasuhiro Matsumoto, 2014 Dec 9)
|
||||
|
||||
Patch to make fold updates much faster. (Christian Brabandt, 2012 Dec)
|
||||
|
||||
Issue 54: document behavior of -complete, also expands arg.
|
||||
@@ -866,11 +884,6 @@ In the ATTENTION message about an existing swap file, mention the name of the
|
||||
process that is running. It might actually be some other program, e.g. after
|
||||
a reboot.
|
||||
|
||||
Patch to have text objects defined by arbitrary single characters. (Daniel
|
||||
Thau, 2013 Nov 20, 2014 Jan 29, 2014 Jan 31)
|
||||
Ben Fritz: problem with 'selection' set to "exclusive".
|
||||
Updated to current Vim, not quite right yet. (Ben Fritz, 2014 Mar 27)
|
||||
|
||||
Patch to select the next or previous text object if there isn't one under the
|
||||
cursor. (Daniel Thau, 2013 Nov 20)
|
||||
|
||||
@@ -892,9 +905,6 @@ Patch to make confirm() display colors. (Christian Brabandt, 2012 Nov 9)
|
||||
|
||||
Patch to add functions for signs. (Christian Brabandt, 2013 Jan 27)
|
||||
|
||||
Do we need some way (option) to show the sign column even when there are no
|
||||
signs? Patch by Christian Brabandt, 2013 Aug 22.
|
||||
|
||||
Patch to remove flicker from popup menu. (Yasuhiro Matsumoto, 2013 Aug 15)
|
||||
|
||||
Problem with refresh:always in completion. (Tyler Wade, 2013 Mar 17)
|
||||
@@ -1369,7 +1379,7 @@ https://scan.coverity.com/projects/241
|
||||
Patch to support :undo absolute jump to file save number. (Christian Brabandt,
|
||||
2010 Nov 5)
|
||||
|
||||
Patch to use 'foldnextmax' also for "marker" foldmethod. (Arnaud Lacombe, 2011
|
||||
Patch to use 'foldnestmax' also for "marker" foldmethod. (Arnaud Lacombe, 2011
|
||||
Jan 7)
|
||||
|
||||
Bug with 'incsearch' going to wrong line. (Wolfram Kresse, 2009 Aug 17)
|
||||
@@ -2237,10 +2247,6 @@ only set after Visual moded is ended.
|
||||
Also add a variable for the Visual mode. So that this mode and '< '> can be
|
||||
used to set what "gv" selects. (Ben Schmidt)
|
||||
|
||||
Win32: When running ":make" and 'encoding' differs from the system locale, the
|
||||
output should be converted. Esp. when 'encoding' is "utf-8". (Yongwei Wu)
|
||||
Should we use 'termencoding' for this?
|
||||
|
||||
Win32, NTFS: When editing a specific infostream directly and 'backupcopy' is
|
||||
"auto" should detect this situation and work like 'backupcopy' is "yes". File
|
||||
name is something like "c:\path\foo.txt:bar", includes a colon. (Alex
|
||||
@@ -2265,10 +2271,6 @@ Patch for adding ":lscscope". (Navdeep Parhar, 2007 Apr 26; update 2008 Apr
|
||||
tabs and the autocommand "autocmd BufWinLeave * mkview". (James Vega, 2007
|
||||
Jun 18)
|
||||
|
||||
xterm should be able to pass focus changes to Vim, so that Vim can check for
|
||||
buffers that changed. Perhaps in misc.c, function selectwindow().
|
||||
Xterm 224 supports it!
|
||||
|
||||
When completing from another file that uses a different encoding completion
|
||||
text has the wrong encoding. E.g., when 'encoding' is utf-8 and file is
|
||||
latin1. Example from Gombault Damien, 2007 Mar 24.
|
||||
@@ -2442,9 +2444,6 @@ Awaiting updated patches:
|
||||
done for filetype detection. Patch from Walter Briscoe, 2003 Jul 1.
|
||||
7 Add a "-@ filelist" argument: read file names from a file. (David
|
||||
Kotchan has a patch for it)
|
||||
8 Include a connection to an external program through a pipe? See
|
||||
patches from Felbinger for a mathematica interface.
|
||||
Or use emacs server kind of thing?
|
||||
7 Add ":justify" command. Patch from Vit Stradal 2002 Nov 25.
|
||||
- findmatch() should be adjusted for Lisp. See remark at
|
||||
get_lisp_indent(). Esp. \( and \) should be skipped. (Dorai Sitaram,
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
*usr_41.txt* For Vim version 7.4. Last change: 2016 Jul 24
|
||||
*usr_41.txt* For Vim version 7.4. Last change: 2016 Sep 01
|
||||
|
||||
VIM USER MANUAL - by Bram Moolenaar
|
||||
|
||||
@@ -803,6 +803,9 @@ Buffers, windows and the argument list:
|
||||
win_gotoid() go to window with ID
|
||||
win_id2tabwin() get tab and window nr from window ID
|
||||
win_id2win() get window nr from window ID
|
||||
getbufinfo() get a list with buffer information
|
||||
gettabinfo() get a list with tab page information
|
||||
getwininfo() get a list with window information
|
||||
|
||||
Command line: *command-line-functions*
|
||||
getcmdline() get the current command line
|
||||
@@ -929,6 +932,7 @@ Testing: *test-functions*
|
||||
Inter-process communication: *channel-functions*
|
||||
ch_open() open a channel
|
||||
ch_close() close a channel
|
||||
ch_close_in() close the in part of a channel
|
||||
ch_read() read a message from a channel
|
||||
ch_readraw() read a raw message from a channel
|
||||
ch_sendexpr() send a JSON message over a channel
|
||||
@@ -957,7 +961,10 @@ Jobs: *job-functions*
|
||||
|
||||
Timers: *timer-functions*
|
||||
timer_start() create a timer
|
||||
timer_pause() pause or unpause a timer
|
||||
timer_stop() stop a timer
|
||||
timer_stopall() stop all timers
|
||||
timer_info() get information about timers
|
||||
|
||||
Various: *various-functions*
|
||||
mode() get current editing mode
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
*various.txt* For Vim version 7.4. Last change: 2016 Jul 09
|
||||
*various.txt* For Vim version 7.4. Last change: 2016 Sep 06
|
||||
|
||||
|
||||
VIM REFERENCE MANUAL by Bram Moolenaar
|
||||
@@ -91,6 +91,8 @@ g8 Print the hex values of the bytes used in the
|
||||
on paper see |:hardcopy|. In the GUI you can use the
|
||||
File.Print menu entry.
|
||||
See |ex-flags| for [flags].
|
||||
The |:filter| command can be used to only show lines
|
||||
matching a pattern.
|
||||
|
||||
:[range]p[rint] {count} [flags]
|
||||
Print {count} lines, starting with [range] (default
|
||||
@@ -361,6 +363,7 @@ N *+insert_expand* |insert_expand| Insert mode completion
|
||||
m *+job* starting and stopping jobs |job|
|
||||
N *+jumplist* |jumplist|
|
||||
B *+keymap* |'keymap'|
|
||||
N *+lambda* |lambda| and |closure|
|
||||
B *+langmap* |'langmap'|
|
||||
N *+libcall* |libcall()|
|
||||
N *+linebreak* |'linebreak'|, |'breakat'| and |'showbreak'|
|
||||
@@ -419,7 +422,7 @@ N *+statusline* Options 'statusline', 'rulerformat' and special
|
||||
m *+sun_workshop* |workshop|
|
||||
N *+syntax* Syntax highlighting |syntax|
|
||||
*+system()* Unix only: opposite of |+fork|
|
||||
N *+tag_binary* binary searching in tags file |tag-binary-search|
|
||||
T *+tag_binary* binary searching in tags file |tag-binary-search|
|
||||
N *+tag_old_static* old method for static tags |tag-old-static|
|
||||
m *+tag_any_white* any white space allowed in tags file |tag-any-white|
|
||||
m *+tcl* Tcl interface |tcl|
|
||||
@@ -523,6 +526,27 @@ N *+X11* Unix only: can restore window title |X11|
|
||||
|
||||
:redi[r] END End redirecting messages. {not in Vi}
|
||||
|
||||
*:filt* *:filter*
|
||||
:filt[er] {pat} {command}
|
||||
:filt[er] /{pat}/ {command}
|
||||
Restrict the output of {command} to matches with {pat}.
|
||||
For example, to list only xml files: >
|
||||
:filter /\.xml$/ oldfiles
|
||||
<
|
||||
{pat} is a Vim search pattern. Instead of enclosing
|
||||
it in / any non-ID character (see |'isident'|) can be
|
||||
used, so long as it does not appear in {pat}. Without
|
||||
the enclosing character the pattern cannot include the
|
||||
bar character.
|
||||
|
||||
The pattern is matched against the relevant part of
|
||||
the output, not necessarily the whole line. Only some
|
||||
commands support filtering, try it out to check if it
|
||||
works.
|
||||
|
||||
Only normal messages are filtered, error messages are
|
||||
not.
|
||||
|
||||
*:sil* *:silent* *:silent!*
|
||||
:sil[ent][!] {command} Execute {command} silently. Normal messages will not
|
||||
be given or added to the message history.
|
||||
|
||||
@@ -4026,7 +4026,7 @@ Solution: Check for NULL pointer returned from mch_open().
|
||||
Files: src/if_cscope.c
|
||||
|
||||
Patch 7.0.154
|
||||
Problem: When 'foldnextmax' is negative Vim can hang. (James Vega)
|
||||
Problem: When 'foldnestmax' is negative Vim can hang. (James Vega)
|
||||
Solution: Avoid the fold level becoming negative.
|
||||
Files: src/fold.c, src/syntax.c
|
||||
|
||||
|
||||
File diff suppressed because it is too large
Load Diff
@@ -1,4 +1,4 @@
|
||||
*vi_diff.txt* For Vim version 7.4. Last change: 2016 Feb 12
|
||||
*vi_diff.txt* For Vim version 7.4. Last change: 2016 Aug 16
|
||||
|
||||
|
||||
VIM REFERENCE MANUAL by Bram Moolenaar
|
||||
@@ -147,7 +147,7 @@ Support for different systems.
|
||||
resource usage, esp. on MS-DOS. For some outdated systems you need to
|
||||
use an older Vim version.
|
||||
|
||||
Multi level undo. |undo|
|
||||
Multi level persistent undo. |undo|
|
||||
'u' goes backward in time, 'CTRL-R' goes forward again. Set option
|
||||
'undolevels' to the number of changes to be remembered (default 1000).
|
||||
Set 'undolevels' to 0 for a Vi-compatible one level undo. Set it to
|
||||
@@ -158,6 +158,9 @@ Multi level undo. |undo|
|
||||
create a branch in the undo tree. This means you can go back to any
|
||||
state of the text, there is no risk of a change causing text to be
|
||||
lost forever. |undo-tree|
|
||||
The undo information is stored in a file when the 'undofile' option is
|
||||
set. This means you can exit Vim, start Vim on a previously edited
|
||||
file and undo changes that were made before exiting Vim.
|
||||
|
||||
Graphical User Interface (GUI). |gui|
|
||||
Included support for GUI: menu's, mouse, scrollbars, etc. You can
|
||||
@@ -212,6 +215,15 @@ Plugins. |add-plugin|
|
||||
right directory. That's an easy way to start using Vim scripts
|
||||
written by others. Plugins can be for all kind of files, or
|
||||
specifically for a filetype.
|
||||
Packages make this even easier. |packages|
|
||||
|
||||
Asynchronous communication and timers. |channel| |job| |timer|
|
||||
Vim can exchange messages with other processes in the background.
|
||||
This makes it possible to have servers do work and send back the
|
||||
results to Vim. |channel|
|
||||
Vim can start a job, communicate with it and stop it. |job|
|
||||
Timers can fire once or repeatedly and invoke a function to do any
|
||||
work. |timer|
|
||||
|
||||
Repeat a series of commands. |q|
|
||||
"q{c}" starts recording typed characters into named register {c}.
|
||||
|
||||
@@ -222,7 +222,7 @@ OPTIONS
|
||||
|
||||
-R Read-only mode. The 'readonly' option will be set. You
|
||||
can still edit the buffer, but will be prevented from acci‐
|
||||
dently overwriting a file. If you do want to overwrite a
|
||||
dentally overwriting a file. If you do want to overwrite a
|
||||
file, add an exclamation mark to the Ex command, as in
|
||||
":w!". The -R option also implies the -n option (see
|
||||
below). The 'readonly' option can be reset with ":set
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
*windows.txt* For Vim version 7.4. Last change: 2016 Jun 10
|
||||
*windows.txt* For Vim version 7.4. Last change: 2016 Aug 23
|
||||
|
||||
|
||||
VIM REFERENCE MANUAL by Bram Moolenaar
|
||||
@@ -75,7 +75,7 @@ places where a Normal mode command can't be used or is inconvenient.
|
||||
|
||||
The main Vim window can hold several split windows. There are also tab pages
|
||||
|tab-page|, each of which can hold multiple windows.
|
||||
|
||||
*window-ID* *winid* *windowid*
|
||||
Each window has a unique identifier called the window ID. This identifier
|
||||
will not change within a Vim session. The |win_getid()| and |win_id2tabwin()|
|
||||
functions can be used to convert between the window/tab number and the
|
||||
@@ -255,7 +255,7 @@ window will appear.
|
||||
far left and occupies the full height of the Vim window.
|
||||
Doesn't work for |:execute| and |:normal|.
|
||||
|
||||
*:botright*
|
||||
*:bo* *:botright*
|
||||
:bo[tright] {cmd}
|
||||
Execute {cmd}. If it contains a command that splits a window,
|
||||
it will appear at the bottom and occupy the full width of the
|
||||
@@ -1042,6 +1042,10 @@ list of buffers. |unlisted-buffer|
|
||||
h+ hidden buffers which are modified
|
||||
a+ active buffers which are modified
|
||||
|
||||
When using |:filter| the pattern is matched against the
|
||||
displayed buffer name, e.g.: >
|
||||
filter /\.vim/ ls
|
||||
<
|
||||
*:bad* *:badd*
|
||||
:bad[d] [+lnum] {fname}
|
||||
Add file name {fname} to the buffer list, without loading it.
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
" Vim support file to detect file types
|
||||
"
|
||||
" Maintainer: Bram Moolenaar <Bram@vim.org>
|
||||
" Last Change: 2016 Jul 21
|
||||
" Last Change: 2016 Aug 26
|
||||
|
||||
" Listen very carefully, I will say this only once
|
||||
if exists("did_load_filetypes")
|
||||
@@ -692,8 +692,8 @@ func! s:FTe()
|
||||
let n = 1
|
||||
while n < 100 && n < line("$")
|
||||
if getline(n) =~ "^\\s*\\(<'\\|'>\\)\\s*$"
|
||||
setf specman
|
||||
return
|
||||
setf specman
|
||||
return
|
||||
endif
|
||||
let n = n + 1
|
||||
endwhile
|
||||
@@ -779,8 +779,7 @@ au BufNewFile,BufRead *.mo,*.gdmo setf gdmo
|
||||
au BufNewFile,BufRead *.ged,lltxxxxx.txt setf gedcom
|
||||
|
||||
" Git
|
||||
au BufNewFile,BufRead COMMIT_EDITMSG setf gitcommit
|
||||
au BufNewFile,BufRead MERGE_MSG setf gitcommit
|
||||
au BufNewFile,BufRead COMMIT_EDITMSG,MERGE_MSG,TAG_EDITMSG setf gitcommit
|
||||
au BufNewFile,BufRead *.git/config,.gitconfig,.gitmodules setf gitconfig
|
||||
au BufNewFile,BufRead *.git/modules/*/config setf gitconfig
|
||||
au BufNewFile,BufRead */.config/git/config setf gitconfig
|
||||
@@ -1781,6 +1780,9 @@ au BufNewFile,BufRead *.sass setf sass
|
||||
" Sather
|
||||
au BufNewFile,BufRead *.sa setf sather
|
||||
|
||||
" Scala
|
||||
au BufNewFile,BufRead *.scala setf scala
|
||||
|
||||
" Scilab
|
||||
au BufNewFile,BufRead *.sci,*.sce setf scilab
|
||||
|
||||
@@ -2053,7 +2055,7 @@ func! s:FTRules()
|
||||
if line =~ s:ft_rules_udev_rules_pattern
|
||||
let udev_rules = substitute(line, s:ft_rules_udev_rules_pattern, '\1', "")
|
||||
if dir == udev_rules
|
||||
setf udevrules
|
||||
setf udevrules
|
||||
endif
|
||||
break
|
||||
endif
|
||||
@@ -2302,7 +2304,7 @@ au BufNewFile,BufRead */etc/updatedb.conf setf updatedb
|
||||
au BufNewFile,BufRead */usr/share/upstart/*.conf setf upstart
|
||||
au BufNewFile,BufRead */usr/share/upstart/*.override setf upstart
|
||||
au BufNewFile,BufRead */etc/init/*.conf,*/etc/init/*.override setf upstart
|
||||
au BufNewFile,BufRead */.init/*.conf,*/.init/*.override setf upstart
|
||||
au BufNewFile,BufRead */.init/*.conf,*/.init/*.override setf upstart
|
||||
au BufNewFile,BufRead */.config/upstart/*.conf setf upstart
|
||||
au BufNewFile,BufRead */.config/upstart/*.override setf upstart
|
||||
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
" Vim filetype plugin
|
||||
" Language: Cucumber
|
||||
" Maintainer: Tim Pope <vimNOSPAM@tpope.org>
|
||||
" Last Change: 2013 Jun 01
|
||||
" Last Change: 2016 Aug 29
|
||||
|
||||
" Only do this when not done yet for this buffer
|
||||
if (exists("b:did_ftplugin"))
|
||||
@@ -19,27 +19,23 @@ setlocal omnifunc=CucumberComplete
|
||||
let b:undo_ftplugin = "setl fo< com< cms< ofu<"
|
||||
|
||||
let b:cucumber_root = expand('%:p:h:s?.*[\/]\%(features\|stories\)\zs[\/].*??')
|
||||
if !exists("b:cucumber_steps_glob")
|
||||
let b:cucumber_steps_glob = b:cucumber_root.'/**/*.rb'
|
||||
endif
|
||||
|
||||
if !exists("g:no_plugin_maps") && !exists("g:no_cucumber_maps")
|
||||
nnoremap <silent><buffer> <C-]> :<C-U>exe <SID>jump('edit',v:count)<CR>
|
||||
nnoremap <silent><buffer> [<C-D> :<C-U>exe <SID>jump('edit',v:count)<CR>
|
||||
nnoremap <silent><buffer> ]<C-D> :<C-U>exe <SID>jump('edit',v:count)<CR>
|
||||
nnoremap <silent><buffer> <C-W>] :<C-U>exe <SID>jump('split',v:count)<CR>
|
||||
nnoremap <silent><buffer> <C-W><C-]> :<C-U>exe <SID>jump('split',v:count)<CR>
|
||||
nnoremap <silent><buffer> <C-W>d :<C-U>exe <SID>jump('split',v:count)<CR>
|
||||
nnoremap <silent><buffer> <C-W><C-D> :<C-U>exe <SID>jump('split',v:count)<CR>
|
||||
nnoremap <silent><buffer> <C-W>} :<C-U>exe <SID>jump('pedit',v:count)<CR>
|
||||
nnoremap <silent><buffer> [d :<C-U>exe <SID>jump('pedit',v:count)<CR>
|
||||
nnoremap <silent><buffer> ]d :<C-U>exe <SID>jump('pedit',v:count)<CR>
|
||||
cnoremap <SID>foldopen <Bar>if &foldopen =~# 'tag'<Bar>exe 'norm! zv'<Bar>endif
|
||||
nnoremap <silent> <script> <buffer> [<C-D> :<C-U>exe <SID>jump('edit',v:count)<SID>foldopen<CR>
|
||||
nnoremap <silent> <script> <buffer> ]<C-D> :<C-U>exe <SID>jump('edit',v:count)<SID>foldopen<CR>
|
||||
nnoremap <silent> <script> <buffer> <C-W>d :<C-U>exe <SID>jump('split',v:count)<SID>foldopen<CR>
|
||||
nnoremap <silent> <script> <buffer> <C-W><C-D> :<C-U>exe <SID>jump('split',v:count)<SID>foldopen<CR>
|
||||
nnoremap <silent> <script> <buffer> [d :<C-U>exe <SID>jump('pedit',v:count)<CR>
|
||||
nnoremap <silent> <script> <buffer> ]d :<C-U>exe <SID>jump('pedit',v:count)<CR>
|
||||
let b:undo_ftplugin .=
|
||||
\ "|sil! nunmap <buffer> <C-]>" .
|
||||
\ "|sil! nunmap <buffer> [<C-D>" .
|
||||
\ "|sil! nunmap <buffer> ]<C-D>" .
|
||||
\ "|sil! nunmap <buffer> <C-W>]" .
|
||||
\ "|sil! nunmap <buffer> <C-W><C-]>" .
|
||||
\ "|sil! nunmap <buffer> <C-W>d" .
|
||||
\ "|sil! nunmap <buffer> <C-W><C-D>" .
|
||||
\ "|sil! nunmap <buffer> <C-W>}" .
|
||||
\ "|sil! nunmap <buffer> [d" .
|
||||
\ "|sil! nunmap <buffer> ]d"
|
||||
endif
|
||||
@@ -59,7 +55,7 @@ endfunction
|
||||
function! s:allsteps()
|
||||
let step_pattern = '\C^\s*\K\k*\>\s*(\=\s*\zs\S.\{-\}\ze\s*)\=\s*\%(do\|{\)\s*\%(|[^|]*|\s*\)\=\%($\|#\)'
|
||||
let steps = []
|
||||
for file in split(glob(b:cucumber_root.'/**/*.rb'),"\n")
|
||||
for file in split(glob(b:cucumber_steps_glob),"\n")
|
||||
let lines = readfile(file)
|
||||
let num = 0
|
||||
for line in lines
|
||||
|
||||
@@ -27,7 +27,7 @@ elseif !exists("b:eruby_subtype")
|
||||
let s:lines = getline(1)."\n".getline(2)."\n".getline(3)."\n".getline(4)."\n".getline(5)."\n".getline("$")
|
||||
let b:eruby_subtype = matchstr(s:lines,'eruby_subtype=\zs\w\+')
|
||||
if b:eruby_subtype == ''
|
||||
let b:eruby_subtype = matchstr(substitute(expand("%:t"),'\c\%(\.erb\|\.eruby\|\.erubis\)\+$','',''),'\.\zs\w\+$')
|
||||
let b:eruby_subtype = matchstr(substitute(expand("%:t"),'\c\%(\.erb\|\.eruby\|\.erubis\)\+$','',''),'\.\zs\w\+\%(\ze+\w\+\)\=$')
|
||||
endif
|
||||
if b:eruby_subtype == 'rhtml'
|
||||
let b:eruby_subtype = 'html'
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
" Vim filetype plugin
|
||||
" Language: generic git output
|
||||
" Maintainer: Tim Pope <vimNOSPAM@tpope.org>
|
||||
" Last Change: 2013 May 30
|
||||
" Last Change: 2016 Aug 29
|
||||
|
||||
" Only do this when not done yet for this buffer
|
||||
if (exists("b:did_ftplugin"))
|
||||
@@ -12,6 +12,8 @@ let b:did_ftplugin = 1
|
||||
if !exists('b:git_dir')
|
||||
if expand('%:p') =~# '[\/]\.git[\/]modules[\/]'
|
||||
" Stay out of the way
|
||||
elseif expand('%:p') =~# '[\/]\.git[\/]worktrees'
|
||||
let b:git_dir = matchstr(expand('%:p'),'.*\.git[\/]worktrees[\/][^\/]\+\>')
|
||||
elseif expand('%:p') =~# '\.git\>'
|
||||
let b:git_dir = matchstr(expand('%:p'),'.*\.git\>')
|
||||
elseif $GIT_DIR != ''
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
" Vim filetype plugin
|
||||
" Language: git commit file
|
||||
" Maintainer: Tim Pope <vimNOSPAM@tpope.org>
|
||||
" Last Change: 2013 May 30
|
||||
" Last Change: 2016 Aug 29
|
||||
|
||||
" Only do this when not done yet for this buffer
|
||||
if (exists("b:did_ftplugin"))
|
||||
@@ -11,15 +11,10 @@ endif
|
||||
runtime! ftplugin/git.vim
|
||||
let b:did_ftplugin = 1
|
||||
|
||||
setlocal nomodeline tabstop=8 formatoptions-=croq formatoptions+=tl
|
||||
|
||||
let b:undo_ftplugin = 'setl modeline< tabstop< formatoptions<'
|
||||
|
||||
if &textwidth == 0
|
||||
" make sure that log messages play nice with git-log on standard terminals
|
||||
setlocal textwidth=72
|
||||
let b:undo_ftplugin .= "|setl tw<"
|
||||
endif
|
||||
setlocal comments=:# commentstring=#\ %s
|
||||
setlocal nomodeline tabstop=8 formatoptions+=tl textwidth=72
|
||||
setlocal formatoptions-=c formatoptions-=r formatoptions-=o formatoptions-=q
|
||||
let b:undo_ftplugin = 'setl modeline< tabstop< formatoptions< tw< com< cms<'
|
||||
|
||||
if exists("g:no_gitcommit_commands") || v:version < 700
|
||||
finish
|
||||
@@ -31,6 +26,8 @@ endif
|
||||
|
||||
command! -bang -bar -buffer -complete=custom,s:diffcomplete -nargs=* DiffGitCached :call s:gitdiffcached(<bang>0,b:git_dir,<f-args>)
|
||||
|
||||
let b:undo_ftplugin = b:undo_ftplugin . "|delc DiffGitCached"
|
||||
|
||||
function! s:diffcomplete(A,L,P)
|
||||
let args = ""
|
||||
if a:P <= match(a:L." -- "," -- ")+3
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
" Vim filetype plugin
|
||||
" Language: git rebase --interactive
|
||||
" Maintainer: Tim Pope <vimNOSPAM@tpope.org>
|
||||
" Last Change: 2010 May 21
|
||||
" Last Change: 2016 Aug 29
|
||||
|
||||
" Only do this when not done yet for this buffer
|
||||
if (exists("b:did_ftplugin"))
|
||||
@@ -12,10 +12,11 @@ runtime! ftplugin/git.vim
|
||||
let b:did_ftplugin = 1
|
||||
|
||||
setlocal comments=:# commentstring=#\ %s formatoptions-=t
|
||||
setlocal nomodeline
|
||||
if !exists("b:undo_ftplugin")
|
||||
let b:undo_ftplugin = ""
|
||||
endif
|
||||
let b:undo_ftplugin = b:undo_ftplugin."|setl com< cms< fo<"
|
||||
let b:undo_ftplugin = b:undo_ftplugin."|setl com< cms< fo< ml<"
|
||||
|
||||
function! s:choose(word)
|
||||
s/^\(\w\+\>\)\=\(\s*\)\ze\x\{4,40\}\>/\=(strlen(submatch(1)) == 1 ? a:word[0] : a:word) . substitute(submatch(2),'^$',' ','')/e
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
" Vim filetype plugin
|
||||
" Language: Haml
|
||||
" Maintainer: Tim Pope <vimNOSPAM@tpope.org>
|
||||
" Last Change: 2013 Jun 01
|
||||
" Last Change: 2016 Aug 29
|
||||
|
||||
" Only do this when not done yet for this buffer
|
||||
if exists("b:did_ftplugin")
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
" Vim filetype plugin
|
||||
" Language: Markdown
|
||||
" Maintainer: Tim Pope <vimNOSPAM@tpope.org>
|
||||
" Last Change: 2013 May 30
|
||||
" Last Change: 2016 Aug 29
|
||||
|
||||
if exists("b:did_ftplugin")
|
||||
finish
|
||||
@@ -11,7 +11,7 @@ runtime! ftplugin/html.vim ftplugin/html_*.vim ftplugin/html/*.vim
|
||||
|
||||
setlocal comments=fb:*,fb:-,fb:+,n:> commentstring=>\ %s
|
||||
setlocal formatoptions+=tcqln formatoptions-=r formatoptions-=o
|
||||
setlocal formatlistpat=^\\s*\\d\\+\\.\\s\\+\\\|^[-*+]\\s\\+
|
||||
setlocal formatlistpat=^\\s*\\d\\+\\.\\s\\+\\\|^[-*+]\\s\\+\\\|^\\[^\\ze[^\\]]\\+\\]:
|
||||
|
||||
if exists('b:undo_ftplugin')
|
||||
let b:undo_ftplugin .= "|setl cms< com< fo< flp<"
|
||||
@@ -19,4 +19,32 @@ else
|
||||
let b:undo_ftplugin = "setl cms< com< fo< flp<"
|
||||
endif
|
||||
|
||||
function! MarkdownFold()
|
||||
let line = getline(v:lnum)
|
||||
|
||||
" Regular headers
|
||||
let depth = match(line, '\(^#\+\)\@<=\( .*$\)\@=')
|
||||
if depth > 0
|
||||
return ">" . depth
|
||||
endif
|
||||
|
||||
" Setext style headings
|
||||
let nextline = getline(v:lnum + 1)
|
||||
if (line =~ '^.\+$') && (nextline =~ '^=\+$')
|
||||
return ">1"
|
||||
endif
|
||||
|
||||
if (line =~ '^.\+$') && (nextline =~ '^-\+$')
|
||||
return ">2"
|
||||
endif
|
||||
|
||||
return "="
|
||||
endfunction
|
||||
|
||||
if has("folding") && exists("g:markdown_folding")
|
||||
setlocal foldexpr=MarkdownFold()
|
||||
setlocal foldmethod=expr
|
||||
let b:undo_ftplugin .= " foldexpr< foldmethod<"
|
||||
endif
|
||||
|
||||
" vim:set sw=2:
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
" Language: python
|
||||
" Maintainer: James Sully <sullyj3@gmail.com>
|
||||
" Previous Maintainer: Johannes Zellner <johannes@zellner.org>
|
||||
" Last Change: Wed, 29 June 2016
|
||||
" Last Change: Tue, 06 September 2016
|
||||
" https://github.com/sullyj3/vim-ftplugin-python
|
||||
|
||||
if exists("b:did_ftplugin") | finish | endif
|
||||
@@ -22,15 +22,25 @@ setlocal omnifunc=pythoncomplete#Complete
|
||||
|
||||
set wildignore+=*.pyc
|
||||
|
||||
nnoremap <silent> <buffer> ]] :call <SID>Python_jump('n', '\v%$\|^(class\|def)>', 'W')<cr>
|
||||
nnoremap <silent> <buffer> [[ :call <SID>Python_jump('n', '\v^(class\|def)>', 'Wb')<cr>
|
||||
nnoremap <silent> <buffer> ]m :call <SID>Python_jump('n', '\v%$\|^\s*(class\|def)>', 'W')<cr>
|
||||
nnoremap <silent> <buffer> [m :call <SID>Python_jump('n', '\v^\s*(class\|def)>', 'Wb')<cr>
|
||||
let b:next_toplevel='\v%$\|^(class\|def)>'
|
||||
let b:prev_toplevel='\v^(class\|def)>'
|
||||
let b:next='\v%$\|^\s*(class\|def)>'
|
||||
let b:prev='\v^\s*(class\|def)>'
|
||||
|
||||
xnoremap <silent> <buffer> ]] :call <SID>Python_jump('x', '\v%$\|^(class\|def)>', 'W')<cr>
|
||||
xnoremap <silent> <buffer> [[ :call <SID>Python_jump('x', '\v^(class\|def)>', 'Wb')<cr>
|
||||
xnoremap <silent> <buffer> ]m :call <SID>Python_jump('x', '\v%$\|^\s*(class\|def)>', 'W')<cr>
|
||||
xnoremap <silent> <buffer> [m :call <SID>Python_jump('x', '\v^\s*(class\|def)>', 'Wb')<cr>
|
||||
execute "nnoremap <silent> <buffer> ]] :call <SID>Python_jump('n', '". b:next_toplevel."', 'W')<cr>"
|
||||
execute "nnoremap <silent> <buffer> [[ :call <SID>Python_jump('n', '". b:prev_toplevel."', 'Wb')<cr>"
|
||||
execute "nnoremap <silent> <buffer> ]m :call <SID>Python_jump('n', '". b:next."', 'W')<cr>"
|
||||
execute "nnoremap <silent> <buffer> [m :call <SID>Python_jump('n', '". b:prev."', 'Wb')<cr>"
|
||||
|
||||
execute "onoremap <silent> <buffer> ]] :call <SID>Python_jump('o', '". b:next_toplevel."', 'W')<cr>"
|
||||
execute "onoremap <silent> <buffer> [[ :call <SID>Python_jump('o', '". b:prev_toplevel."', 'Wb')<cr>"
|
||||
execute "onoremap <silent> <buffer> ]m :call <SID>Python_jump('o', '". b:next."', 'W')<cr>"
|
||||
execute "onoremap <silent> <buffer> [m :call <SID>Python_jump('o', '". b:prev."', 'Wb')<cr>"
|
||||
|
||||
execute "xnoremap <silent> <buffer> ]] :call <SID>Python_jump('x', '". b:next_toplevel."', 'W')<cr>"
|
||||
execute "xnoremap <silent> <buffer> [[ :call <SID>Python_jump('x', '". b:prev_toplevel."', 'Wb')<cr>"
|
||||
execute "xnoremap <silent> <buffer> ]m :call <SID>Python_jump('x', '". b:next."', 'W')<cr>"
|
||||
execute "xnoremap <silent> <buffer> [m :call <SID>Python_jump('x', '". b:prev."', 'Wb')<cr>"
|
||||
|
||||
if !exists('*<SID>Python_jump')
|
||||
fun! <SID>Python_jump(mode, motion, flags) range
|
||||
@@ -56,8 +66,10 @@ if has("browsefilter") && !exists("b:browsefilter")
|
||||
\ "All Files (*.*)\t*.*\n"
|
||||
endif
|
||||
|
||||
" As suggested by PEP8.
|
||||
setlocal expandtab shiftwidth=4 softtabstop=4 tabstop=8
|
||||
if !exists("g:python_recommended_style") || g:python_recommended_style != 0
|
||||
" As suggested by PEP8.
|
||||
setlocal expandtab shiftwidth=4 softtabstop=4 tabstop=8
|
||||
endif
|
||||
|
||||
" First time: try finding "pydoc".
|
||||
if !exists('g:pydoc_executable')
|
||||
|
||||
@@ -1,9 +1,9 @@
|
||||
" Vim filetype plugin file
|
||||
" Language: R help file
|
||||
" Language: R Markdown file
|
||||
" Maintainer: Jakson Alves de Aquino <jalvesaq@gmail.com>
|
||||
" Homepage: https://github.com/jalvesaq/R-Vim-runtime
|
||||
" Last Change: Tue Apr 07, 2015 04:37PM
|
||||
" Original work by Alex Zvoleff (adjusted for rmd by Michel Kuhlmann)
|
||||
" Last Change: Mon Jun 06, 2016 09:41PM
|
||||
" Original work by Alex Zvoleff (adjusted from R help for rmd by Michel Kuhlmann)
|
||||
|
||||
" Only do this when not yet done for this buffer
|
||||
if exists("b:did_ftplugin")
|
||||
@@ -12,6 +12,16 @@ endif
|
||||
|
||||
runtime! ftplugin/html.vim ftplugin/html_*.vim ftplugin/html/*.vim
|
||||
|
||||
" Nvim-R plugin needs this
|
||||
if exists("*CompleteR")
|
||||
if &omnifunc == "CompleteR"
|
||||
let b:rplugin_nonr_omnifunc = ""
|
||||
else
|
||||
let b:rplugin_nonr_omnifunc = &omnifunc
|
||||
endif
|
||||
set omnifunc=CompleteR
|
||||
endif
|
||||
|
||||
setlocal comments=fb:*,fb:-,fb:+,n:> commentstring=>\ %s
|
||||
setlocal formatoptions+=tcqln
|
||||
setlocal formatlistpat=^\\s*\\d\\+\\.\\s\\+\\\|^\\s*[-*+]\\s\\+
|
||||
|
||||
@@ -28,12 +28,13 @@ if exists("loaded_matchit") && !exists("b:match_words")
|
||||
\ ':' .
|
||||
\ '\<\%(else\|elsif\|ensure\|when\|rescue\|break\|redo\|next\|retry\)\>' .
|
||||
\ ':' .
|
||||
\ '\<end\>' .
|
||||
\ '\%(^\|[^.\:@$]\)\@<=\<end\:\@!\>' .
|
||||
\ ',{:},\[:\],(:)'
|
||||
|
||||
let b:match_skip =
|
||||
\ "synIDattr(synID(line('.'),col('.'),0),'name') =~ '" .
|
||||
\ "\\<ruby\\%(String\\|StringDelimiter\\|ASCIICode\\|Escape\\|" .
|
||||
\ "Regexp\\|RegexpDelimiter\\|" .
|
||||
\ "Interpolation\\|NoInterpolation\\|Comment\\|Documentation\\|" .
|
||||
\ "ConditionalModifier\\|RepeatModifier\\|OptionalDo\\|" .
|
||||
\ "Function\\|BlockArgument\\|KeywordAsMethod\\|ClassVariable\\|" .
|
||||
@@ -43,7 +44,7 @@ endif
|
||||
setlocal formatoptions-=t formatoptions+=croql
|
||||
|
||||
setlocal include=^\\s*\\<\\(load\\>\\\|require\\>\\\|autoload\\s*:\\=[\"']\\=\\h\\w*[\"']\\=,\\)
|
||||
setlocal includeexpr=substitute(substitute(v:fname,'::','/','g'),'$','.rb','')
|
||||
setlocal includeexpr=substitute(substitute(v:fname,'::','/','g'),'\%(\.rb\)\=$','.rb','')
|
||||
setlocal suffixesadd=.rb
|
||||
|
||||
if exists("&ofu") && has("ruby")
|
||||
@@ -66,32 +67,32 @@ if !exists('g:ruby_version_paths')
|
||||
let g:ruby_version_paths = {}
|
||||
endif
|
||||
|
||||
function! s:query_path(root)
|
||||
function! s:query_path(root) abort
|
||||
let code = "print $:.join %q{,}"
|
||||
if &shell =~# 'sh' && $PATH !~# '\s'
|
||||
let prefix = 'env PATH='.$PATH.' '
|
||||
if &shell =~# 'sh'
|
||||
let prefix = 'env PATH='.shellescape($PATH).' '
|
||||
else
|
||||
let prefix = ''
|
||||
endif
|
||||
if &shellxquote == "'"
|
||||
let path_check = prefix.'ruby -e "' . code . '"'
|
||||
let path_check = prefix.'ruby --disable-gems -e "' . code . '"'
|
||||
else
|
||||
let path_check = prefix."ruby -e '" . code . "'"
|
||||
let path_check = prefix."ruby --disable-gems -e '" . code . "'"
|
||||
endif
|
||||
|
||||
let cd = haslocaldir() ? 'lcd' : 'cd'
|
||||
let cwd = getcwd()
|
||||
let cwd = fnameescape(getcwd())
|
||||
try
|
||||
exe cd fnameescape(a:root)
|
||||
let path = split(system(path_check),',')
|
||||
exe cd fnameescape(cwd)
|
||||
exe cd cwd
|
||||
return path
|
||||
finally
|
||||
exe cd fnameescape(cwd)
|
||||
exe cd cwd
|
||||
endtry
|
||||
endfunction
|
||||
|
||||
function! s:build_path(path)
|
||||
function! s:build_path(path) abort
|
||||
let path = join(map(copy(a:path), 'v:val ==# "." ? "" : v:val'), ',')
|
||||
if &g:path !~# '\v^\.%(,/%(usr|emx)/include)=,,$'
|
||||
let path = substitute(&g:path,',,$',',','') . ',' . path
|
||||
@@ -101,7 +102,7 @@ endfunction
|
||||
|
||||
if !exists('b:ruby_version') && !exists('g:ruby_path') && isdirectory(expand('%:p:h'))
|
||||
let s:version_file = findfile('.ruby-version', '.;')
|
||||
if !empty(s:version_file)
|
||||
if !empty(s:version_file) && filereadable(s:version_file)
|
||||
let b:ruby_version = get(readfile(s:version_file, '', 1), '')
|
||||
if !has_key(g:ruby_version_paths, b:ruby_version)
|
||||
let g:ruby_version_paths[b:ruby_version] = s:query_path(fnamemodify(s:version_file, ':p:h'))
|
||||
@@ -135,7 +136,7 @@ if exists('s:ruby_paths') && stridx(&l:tags, join(map(copy(s:ruby_paths),'v:val.
|
||||
let &l:tags = &tags . ',' . join(map(copy(s:ruby_paths),'v:val."/tags"'),',')
|
||||
endif
|
||||
|
||||
if has("gui_win32") && !exists("b:browsefilter")
|
||||
if (has("gui_win32") || has("gui_gtk")) && !exists("b:browsefilter")
|
||||
let b:browsefilter = "Ruby Source Files (*.rb)\t*.rb\n" .
|
||||
\ "All Files (*.*)\t*.*\n"
|
||||
endif
|
||||
@@ -145,7 +146,22 @@ let b:undo_ftplugin = "setl fo< inc< inex< sua< def< com< cms< path< tags< kp<"
|
||||
\."| if exists('&ofu') && has('ruby') | setl ofu< | endif"
|
||||
\."| if has('balloon_eval') && exists('+bexpr') | setl bexpr< | endif"
|
||||
|
||||
function! s:map(mode, flags, map) abort
|
||||
let from = matchstr(a:map, '\S\+')
|
||||
if empty(mapcheck(from, a:mode))
|
||||
exe a:mode.'map' '<buffer>'.(a:0 ? a:1 : '') a:map
|
||||
let b:undo_ftplugin .= '|sil! '.a:mode.'unmap <buffer> '.from
|
||||
endif
|
||||
endfunction
|
||||
|
||||
cmap <buffer><script><expr> <Plug><cword> substitute(RubyCursorIdentifier(),'^$',"\022\027",'')
|
||||
cmap <buffer><script><expr> <Plug><cfile> substitute(RubyCursorFile(),'^$',"\022\006",'')
|
||||
let b:undo_ftplugin .= "| sil! cunmap <buffer> <Plug><cword>| sil! cunmap <buffer> <Plug><cfile>"
|
||||
|
||||
if !exists("g:no_plugin_maps") && !exists("g:no_ruby_maps")
|
||||
nmap <buffer><script> <SID>: :<C-U>
|
||||
nmap <buffer><script> <SID>c: :<C-U><C-R>=v:count ? v:count : ''<CR>
|
||||
|
||||
nnoremap <silent> <buffer> [m :<C-U>call <SID>searchsyn('\<def\>','rubyDefine','b','n')<CR>
|
||||
nnoremap <silent> <buffer> ]m :<C-U>call <SID>searchsyn('\<def\>','rubyDefine','','n')<CR>
|
||||
nnoremap <silent> <buffer> [M :<C-U>call <SID>searchsyn('\<end\>','rubyDefine','b','n')<CR>
|
||||
@@ -168,7 +184,7 @@ if !exists("g:no_plugin_maps") && !exists("g:no_ruby_maps")
|
||||
\."| sil! exe 'unmap <buffer> [[' | sil! exe 'unmap <buffer> ]]' | sil! exe 'unmap <buffer> []' | sil! exe 'unmap <buffer> ]['"
|
||||
\."| sil! exe 'unmap <buffer> [m' | sil! exe 'unmap <buffer> ]m' | sil! exe 'unmap <buffer> [M' | sil! exe 'unmap <buffer> ]M'"
|
||||
|
||||
if maparg('im','n') == ''
|
||||
if maparg('im','x') == '' && maparg('im','o') == '' && maparg('am','x') == '' && maparg('am','o') == ''
|
||||
onoremap <silent> <buffer> im :<C-U>call <SID>wrap_i('[m',']M')<CR>
|
||||
onoremap <silent> <buffer> am :<C-U>call <SID>wrap_a('[m',']M')<CR>
|
||||
xnoremap <silent> <buffer> im :<C-U>call <SID>wrap_i('[m',']M')<CR>
|
||||
@@ -178,7 +194,7 @@ if !exists("g:no_plugin_maps") && !exists("g:no_ruby_maps")
|
||||
\."| sil! exe 'xunmap <buffer> im' | sil! exe 'xunmap <buffer> am'"
|
||||
endif
|
||||
|
||||
if maparg('iM','n') == ''
|
||||
if maparg('iM','x') == '' && maparg('iM','o') == '' && maparg('aM','x') == '' && maparg('aM','o') == ''
|
||||
onoremap <silent> <buffer> iM :<C-U>call <SID>wrap_i('[[','][')<CR>
|
||||
onoremap <silent> <buffer> aM :<C-U>call <SID>wrap_a('[[','][')<CR>
|
||||
xnoremap <silent> <buffer> iM :<C-U>call <SID>wrap_i('[[','][')<CR>
|
||||
@@ -188,33 +204,24 @@ if !exists("g:no_plugin_maps") && !exists("g:no_ruby_maps")
|
||||
\."| sil! exe 'xunmap <buffer> iM' | sil! exe 'xunmap <buffer> aM'"
|
||||
endif
|
||||
|
||||
if maparg("\<C-]>",'n') == ''
|
||||
nnoremap <silent> <buffer> <C-]> :<C-U>exe v:count1."tag <C-R>=RubyCursorIdentifier()<CR>"<CR>
|
||||
nnoremap <silent> <buffer> g<C-]> :<C-U>exe "tjump <C-R>=RubyCursorIdentifier()<CR>"<CR>
|
||||
nnoremap <silent> <buffer> g] :<C-U>exe "tselect <C-R>=RubyCursorIdentifier()<CR>"<CR>
|
||||
nnoremap <silent> <buffer> <C-W>] :<C-U>exe v:count1."stag <C-R>=RubyCursorIdentifier()<CR>"<CR>
|
||||
nnoremap <silent> <buffer> <C-W><C-]> :<C-U>exe v:count1."stag <C-R>=RubyCursorIdentifier()<CR>"<CR>
|
||||
nnoremap <silent> <buffer> <C-W>g<C-]> :<C-U>exe "stjump <C-R>=RubyCursorIdentifier()<CR>"<CR>
|
||||
nnoremap <silent> <buffer> <C-W>g] :<C-U>exe "stselect <C-R>=RubyCursorIdentifier()<CR>"<CR>
|
||||
nnoremap <silent> <buffer> <C-W>} :<C-U>exe "ptag <C-R>=RubyCursorIdentifier()<CR>"<CR>
|
||||
nnoremap <silent> <buffer> <C-W>g} :<C-U>exe "ptjump <C-R>=RubyCursorIdentifier()<CR>"<CR>
|
||||
let b:undo_ftplugin = b:undo_ftplugin
|
||||
\."| sil! exe 'nunmap <buffer> <C-]>'| sil! exe 'nunmap <buffer> g<C-]>'| sil! exe 'nunmap <buffer> g]'"
|
||||
\."| sil! exe 'nunmap <buffer> <C-W>]'| sil! exe 'nunmap <buffer> <C-W><C-]>'"
|
||||
\."| sil! exe 'nunmap <buffer> <C-W>g<C-]>'| sil! exe 'nunmap <buffer> <C-W>g]'"
|
||||
\."| sil! exe 'nunmap <buffer> <C-W>}'| sil! exe 'nunmap <buffer> <C-W>g}'"
|
||||
endif
|
||||
call s:map('c', '', '<C-R><C-W> <Plug><cword>')
|
||||
call s:map('c', '', '<C-R><C-F> <Plug><cfile>')
|
||||
|
||||
if maparg("gf",'n') == ''
|
||||
" By using findfile() rather than gf's normal behavior, we prevent
|
||||
" erroneously editing a directory.
|
||||
nnoremap <silent> <buffer> gf :<C-U>exe <SID>gf(v:count1,"gf",'edit')<CR>
|
||||
nnoremap <silent> <buffer> <C-W>f :<C-U>exe <SID>gf(v:count1,"\<Lt>C-W>f",'split')<CR>
|
||||
nnoremap <silent> <buffer> <C-W><C-F> :<C-U>exe <SID>gf(v:count1,"\<Lt>C-W>\<Lt>C-F>",'split')<CR>
|
||||
nnoremap <silent> <buffer> <C-W>gf :<C-U>exe <SID>gf(v:count1,"\<Lt>C-W>gf",'tabedit')<CR>
|
||||
let b:undo_ftplugin = b:undo_ftplugin
|
||||
\."| sil! exe 'nunmap <buffer> gf' | sil! exe 'nunmap <buffer> <C-W>f' | sil! exe 'nunmap <buffer> <C-W><C-F>' | sil! exe 'nunmap <buffer> <C-W>gf'"
|
||||
endif
|
||||
cmap <buffer><script><expr> <SID>tagzv &foldopen =~# 'tag' ? '<Bar>norm! zv' : ''
|
||||
call s:map('n', '<silent>', '<C-]> <SID>:exe v:count1."tag <Plug><cword>"<SID>tagzv<CR>')
|
||||
call s:map('n', '<silent>', 'g<C-]> <SID>:exe "tjump <Plug><cword>"<SID>tagzv<CR>')
|
||||
call s:map('n', '<silent>', 'g] <SID>:exe "tselect <Plug><cword>"<SID>tagzv<CR>')
|
||||
call s:map('n', '<silent>', '<C-W>] <SID>:exe v:count1."stag <Plug><cword>"<SID>tagzv<CR>')
|
||||
call s:map('n', '<silent>', '<C-W><C-]> <SID>:exe v:count1."stag <Plug><cword>"<SID>tagzv<CR>')
|
||||
call s:map('n', '<silent>', '<C-W>g<C-]> <SID>:exe "stjump <Plug><cword>"<SID>tagzv<CR>')
|
||||
call s:map('n', '<silent>', '<C-W>g] <SID>:exe "stselect <Plug><cword>"<SID>tagzv<CR>')
|
||||
call s:map('n', '<silent>', '<C-W>} <SID>:exe v:count1."ptag <Plug><cword>"<CR>')
|
||||
call s:map('n', '<silent>', '<C-W>g} <SID>:exe "ptjump <Plug><cword>"<CR>')
|
||||
|
||||
call s:map('n', '<silent>', 'gf <SID>c:find <Plug><cfile><CR>')
|
||||
call s:map('n', '<silent>', '<C-W>f <SID>c:sfind <Plug><cfile><CR>')
|
||||
call s:map('n', '<silent>', '<C-W><C-F> <SID>c:sfind <Plug><cfile><CR>')
|
||||
call s:map('n', '<silent>', '<C-W>gf <SID>c:tabfind <Plug><cfile><CR>')
|
||||
endif
|
||||
|
||||
let &cpo = s:cpo_save
|
||||
@@ -225,7 +232,7 @@ if exists("g:did_ruby_ftplugin_functions")
|
||||
endif
|
||||
let g:did_ruby_ftplugin_functions = 1
|
||||
|
||||
function! RubyBalloonexpr()
|
||||
function! RubyBalloonexpr() abort
|
||||
if !exists('s:ri_found')
|
||||
let s:ri_found = executable('ri')
|
||||
endif
|
||||
@@ -274,13 +281,13 @@ function! RubyBalloonexpr()
|
||||
endif
|
||||
endfunction
|
||||
|
||||
function! s:searchsyn(pattern,syn,flags,mode)
|
||||
function! s:searchsyn(pattern, syn, flags, mode) abort
|
||||
let cnt = v:count1
|
||||
norm! m'
|
||||
if a:mode ==# 'v'
|
||||
norm! gv
|
||||
endif
|
||||
let i = 0
|
||||
let cnt = v:count ? v:count : 1
|
||||
while i < cnt
|
||||
let i = i + 1
|
||||
let line = line('.')
|
||||
@@ -296,11 +303,11 @@ function! s:searchsyn(pattern,syn,flags,mode)
|
||||
endwhile
|
||||
endfunction
|
||||
|
||||
function! s:synname()
|
||||
function! s:synname() abort
|
||||
return synIDattr(synID(line('.'),col('.'),0),'name')
|
||||
endfunction
|
||||
|
||||
function! s:wrap_i(back,forward)
|
||||
function! s:wrap_i(back,forward) abort
|
||||
execute 'norm k'.a:forward
|
||||
let line = line('.')
|
||||
execute 'norm '.a:back
|
||||
@@ -310,7 +317,7 @@ function! s:wrap_i(back,forward)
|
||||
execute 'norm jV'.a:forward.'k'
|
||||
endfunction
|
||||
|
||||
function! s:wrap_a(back,forward)
|
||||
function! s:wrap_a(back,forward) abort
|
||||
execute 'norm '.a:forward
|
||||
if line('.') < line('$') && getline(line('.')+1) ==# ''
|
||||
let after = 1
|
||||
@@ -328,37 +335,55 @@ function! s:wrap_a(back,forward)
|
||||
endif
|
||||
endfunction
|
||||
|
||||
function! RubyCursorIdentifier()
|
||||
function! RubyCursorIdentifier() abort
|
||||
let asciicode = '\%(\w\|[]})\"'."'".']\)\@<!\%(?\%(\\M-\\C-\|\\C-\\M-\|\\M-\\c\|\\c\\M-\|\\c\|\\C-\|\\M-\)\=\%(\\\o\{1,3}\|\\x\x\{1,2}\|\\\=\S\)\)'
|
||||
let number = '\%(\%(\w\|[]})\"'."'".']\s*\)\@<!-\)\=\%(\<[[:digit:]_]\+\%(\.[[:digit:]_]\+\)\=\%([Ee][[:digit:]_]\+\)\=\>\|\<0[xXbBoOdD][[:xdigit:]_]\+\>\)\|'.asciicode
|
||||
let operator = '\%(\[\]\|<<\|<=>\|[!<>]=\=\|===\=\|[!=]\~\|>>\|\*\*\|\.\.\.\=\|=>\|[~^&|*/%+-]\)'
|
||||
let method = '\%(\<[_a-zA-Z]\w*\>\%([?!]\|\s*=>\@!\)\=\)'
|
||||
let method = '\%(\.[_a-zA-Z]\w*\s*=>\@!\|\<[_a-zA-Z]\w*\>[?!]\=\)'
|
||||
let global = '$\%([!$&"'."'".'*+,./:;<=>?@\`~]\|-\=\w\+\>\)'
|
||||
let symbolizable = '\%(\%(@@\=\)\w\+\>\|'.global.'\|'.method.'\|'.operator.'\)'
|
||||
let pattern = '\C\s*\%('.number.'\|\%(:\@<!:\)\='.symbolizable.'\)'
|
||||
let [lnum, col] = searchpos(pattern,'bcn',line('.'))
|
||||
let raw = matchstr(getline('.')[col-1 : ],pattern)
|
||||
let stripped = substitute(substitute(raw,'\s\+=$','=',''),'^\s*:\=','','')
|
||||
let stripped = substitute(substitute(raw,'\s\+=$','=',''),'^\s*[:.]\=','','')
|
||||
return stripped == '' ? expand("<cword>") : stripped
|
||||
endfunction
|
||||
|
||||
function! s:gf(count,map,edit) abort
|
||||
if getline('.') =~# '^\s*require_relative\s*\(["'']\).*\1\s*$'
|
||||
let target = matchstr(getline('.'),'\(["'']\)\zs.\{-\}\ze\1')
|
||||
return a:edit.' %:h/'.target.'.rb'
|
||||
elseif getline('.') =~# '^\s*\%(require[( ]\|load[( ]\|autoload[( ]:\w\+,\)\s*\s*\%(::\)\=File\.expand_path(\(["'']\)\.\./.*\1,\s*__FILE__)\s*$'
|
||||
let target = matchstr(getline('.'),'\(["'']\)\.\./\zs.\{-\}\ze\1')
|
||||
return a:edit.' %:h/'.target.'.rb'
|
||||
function! RubyCursorFile() abort
|
||||
let isfname = &isfname
|
||||
try
|
||||
set isfname+=:
|
||||
let cfile = expand('<cfile>')
|
||||
finally
|
||||
let isfname = &isfname
|
||||
endtry
|
||||
let pre = matchstr(strpart(getline('.'), 0, col('.')-1), '.*\f\@<!')
|
||||
let post = matchstr(strpart(getline('.'), col('.')), '\f\@!.*')
|
||||
let ext = getline('.') =~# '^\s*\%(require\%(_relative\)\=\|autoload\)\>' && cfile !~# '\.rb$' ? '.rb' : ''
|
||||
if s:synname() ==# 'rubyConstant'
|
||||
let cfile = substitute(cfile,'\.\w\+[?!=]\=$','','')
|
||||
let cfile = substitute(cfile,'::','/','g')
|
||||
let cfile = substitute(cfile,'\(\u\+\)\(\u\l\)','\1_\2', 'g')
|
||||
let cfile = substitute(cfile,'\(\l\|\d\)\(\u\)','\1_\2', 'g')
|
||||
return tolower(cfile) . '.rb'
|
||||
elseif getline('.') =~# '^\s*require_relative\s*\(["'']\).*\1\s*$'
|
||||
let cfile = expand('%:p:h') . '/' . matchstr(getline('.'),'\(["'']\)\zs.\{-\}\ze\1') . ext
|
||||
elseif getline('.') =~# '^\s*\%(require[( ]\|load[( ]\|autoload[( ]:\w\+,\)\s*\%(::\)\=File\.expand_path(\(["'']\)\.\./.*\1,\s*__FILE__)\s*$'
|
||||
let target = matchstr(getline('.'),'\(["'']\)\.\.\zs/.\{-\}\ze\1')
|
||||
let cfile = expand('%:p:h') . target . ext
|
||||
elseif getline('.') =~# '^\s*\%(require \|load \|autoload :\w\+,\)\s*\(["'']\).*\1\s*$'
|
||||
let target = matchstr(getline('.'),'\(["'']\)\zs.\{-\}\ze\1')
|
||||
let cfile = matchstr(getline('.'),'\(["'']\)\zs.\{-\}\ze\1') . ext
|
||||
elseif pre.post =~# '\<File.expand_path[( ].*[''"]\{2\}, *__FILE__\>' && cfile =~# '^\.\.'
|
||||
let cfile = expand('%:p:h') . strpart(cfile, 2)
|
||||
else
|
||||
let target = expand('<cfile>')
|
||||
return substitute(cfile, '\C\v^(.*):(\d+)%(:in)=$', '+\2 \1', '')
|
||||
endif
|
||||
let found = findfile(target, &path, a:count)
|
||||
if found ==# ''
|
||||
return 'norm! '.a:count.a:map
|
||||
let cwdpat = '^\M' . substitute(getcwd(), '[\/]', '\\[\\/]', 'g').'\ze\[\/]'
|
||||
let cfile = substitute(cfile, cwdpat, '.', '')
|
||||
if fnameescape(cfile) !=# cfile
|
||||
return '+ '.fnameescape(cfile)
|
||||
else
|
||||
return a:edit.' '.fnameescape(found)
|
||||
return cfile
|
||||
endif
|
||||
endfunction
|
||||
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
" Vim filetype plugin
|
||||
" Language: Sass
|
||||
" Maintainer: Tim Pope <vimNOSPAM@tpope.org>
|
||||
" Last Change: 2010 Jul 26
|
||||
" Last Change: 2016 Aug 29
|
||||
|
||||
" Only do this when not done yet for this buffer
|
||||
if exists("b:did_ftplugin")
|
||||
@@ -9,8 +9,9 @@ if exists("b:did_ftplugin")
|
||||
endif
|
||||
let b:did_ftplugin = 1
|
||||
|
||||
let b:undo_ftplugin = "setl cms< def< inc< inex< ofu< sua<"
|
||||
let b:undo_ftplugin = "setl com< cms< def< inc< inex< ofu< sua<"
|
||||
|
||||
setlocal comments=://
|
||||
setlocal commentstring=//\ %s
|
||||
setlocal define=^\\s*\\%(@mixin\\\|=\\)
|
||||
setlocal includeexpr=substitute(v:fname,'\\%(.*/\\\|^\\)\\zs','_','')
|
||||
|
||||
35
runtime/ftplugin/scala.vim
Normal file
35
runtime/ftplugin/scala.vim
Normal file
@@ -0,0 +1,35 @@
|
||||
" Vim filetype plugin file
|
||||
" Language: Scala
|
||||
" Maintainer: Derek Wyatt
|
||||
" URL: https://github.com/derekwyatt/vim-scala
|
||||
" License: Same as Vim
|
||||
" Last Change: 02 August 2016
|
||||
" ----------------------------------------------------------------------------
|
||||
|
||||
if exists('b:did_ftplugin') || &cp
|
||||
finish
|
||||
endif
|
||||
let b:did_ftplugin = 1
|
||||
|
||||
" j is fairly new in Vim, so don't complain if it's not there
|
||||
setlocal formatoptions-=t formatoptions+=croqnl
|
||||
silent! setlocal formatoptions+=j
|
||||
|
||||
" Just like c.vim, but additionally doesn't wrap text onto /** line when
|
||||
" formatting. Doesn't bungle bulleted lists when formatting.
|
||||
if get(g:, 'scala_scaladoc_indent', 0)
|
||||
setlocal comments=sO:*\ -,mO:*\ \ ,exO:*/,s2:/**,mb:*,ex:*/,s1:/*,mb:*,ex:*/,://
|
||||
else
|
||||
setlocal comments=sO:*\ -,mO:*\ \ ,exO:*/,s1:/**,mb:*,ex:*/,s1:/*,mb:*,ex:*/,://
|
||||
endif
|
||||
setlocal commentstring=//\ %s
|
||||
|
||||
setlocal shiftwidth=2 softtabstop=2 expandtab
|
||||
|
||||
setlocal include='^\s*import'
|
||||
setlocal includeexpr='substitute(v:fname,"\\.","/","g")'
|
||||
|
||||
setlocal path+=src/main/scala,src/test/scala
|
||||
setlocal suffixesadd=.scala
|
||||
|
||||
" vim:set sw=2 sts=2 ts=8 et:
|
||||
@@ -1,12 +1,13 @@
|
||||
" Vim filetype plugin
|
||||
" Language: SCSS
|
||||
" Maintainer: Tim Pope <vimNOSPAM@tpope.org>
|
||||
" Last Change: 2010 Jul 26
|
||||
" Last Change: 2016 Aug 29
|
||||
|
||||
if exists("b:did_ftplugin")
|
||||
finish
|
||||
endif
|
||||
|
||||
runtime! ftplugin/sass.vim
|
||||
setlocal comments=s1:/*,mb:*,ex:*/,://
|
||||
|
||||
" vim:set sw=2:
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
" Vim indent file
|
||||
" Language: Cucumber
|
||||
" Maintainer: Tim Pope <vimNOSPAM@tpope.org>
|
||||
" Last Change: 2013 May 30
|
||||
" Last Change: 2016 Aug 29
|
||||
|
||||
if exists("b:did_indent")
|
||||
finish
|
||||
@@ -27,6 +27,7 @@ function! GetCucumberIndent()
|
||||
let line = getline(prevnonblank(v:lnum-1))
|
||||
let cline = getline(v:lnum)
|
||||
let nline = getline(nextnonblank(v:lnum+1))
|
||||
let sw = exists('*shiftwidth') ? shiftwidth() : &sw
|
||||
let syn = s:syn(prevnonblank(v:lnum-1))
|
||||
let csyn = s:syn(v:lnum)
|
||||
let nsyn = s:syn(nextnonblank(v:lnum+1))
|
||||
@@ -35,38 +36,38 @@ function! GetCucumberIndent()
|
||||
return 0
|
||||
elseif csyn ==# 'cucumberExamples' || cline =~# '^\s*\%(Examples\|Scenarios\):'
|
||||
" examples heading
|
||||
return 2 * &sw
|
||||
return 2 * sw
|
||||
elseif csyn =~# '^cucumber\%(Background\|Scenario\|ScenarioOutline\)$' || cline =~# '^\s*\%(Background\|Scenario\|Scenario Outline\):'
|
||||
" background, scenario or outline heading
|
||||
return &sw
|
||||
return sw
|
||||
elseif syn ==# 'cucumberFeature' || line =~# '^\s*Feature:'
|
||||
" line after feature heading
|
||||
return &sw
|
||||
return sw
|
||||
elseif syn ==# 'cucumberExamples' || line =~# '^\s*\%(Examples\|Scenarios\):'
|
||||
" line after examples heading
|
||||
return 3 * &sw
|
||||
return 3 * sw
|
||||
elseif syn =~# '^cucumber\%(Background\|Scenario\|ScenarioOutline\)$' || line =~# '^\s*\%(Background\|Scenario\|Scenario Outline\):'
|
||||
" line after background, scenario or outline heading
|
||||
return 2 * &sw
|
||||
return 2 * sw
|
||||
elseif cline =~# '^\s*[@#]' && (nsyn == 'cucumberFeature' || nline =~# '^\s*Feature:' || indent(prevnonblank(v:lnum-1)) <= 0)
|
||||
" tag or comment before a feature heading
|
||||
return 0
|
||||
elseif cline =~# '^\s*@'
|
||||
" other tags
|
||||
return &sw
|
||||
return sw
|
||||
elseif cline =~# '^\s*[#|]' && line =~# '^\s*|'
|
||||
" mid-table
|
||||
" preserve indent
|
||||
return indent(prevnonblank(v:lnum-1))
|
||||
elseif cline =~# '^\s*|' && line =~# '^\s*[^|]'
|
||||
" first line of a table, relative indent
|
||||
return indent(prevnonblank(v:lnum-1)) + &sw
|
||||
return indent(prevnonblank(v:lnum-1)) + sw
|
||||
elseif cline =~# '^\s*[^|]' && line =~# '^\s*|'
|
||||
" line after a table, relative unindent
|
||||
return indent(prevnonblank(v:lnum-1)) - &sw
|
||||
return indent(prevnonblank(v:lnum-1)) - sw
|
||||
elseif cline =~# '^\s*#' && getline(v:lnum-1) =~ '^\s*$' && (nsyn =~# '^cucumber\%(Background\|Scenario\|ScenarioOutline\)$' || nline =~# '^\s*\%(Background\|Scenario\|Scenario Outline\):')
|
||||
" comments on scenarios
|
||||
return &sw
|
||||
return sw
|
||||
endif
|
||||
return indent(prevnonblank(v:lnum-1))
|
||||
endfunction
|
||||
|
||||
@@ -19,6 +19,9 @@ else
|
||||
endif
|
||||
unlet! b:did_indent
|
||||
|
||||
" Force HTML indent to not keep state.
|
||||
let b:html_indent_usestate = 0
|
||||
|
||||
if &l:indentexpr == ''
|
||||
if &l:cindent
|
||||
let &l:indentexpr = 'cindent(v:lnum)'
|
||||
@@ -38,7 +41,18 @@ if exists("*GetErubyIndent")
|
||||
finish
|
||||
endif
|
||||
|
||||
" this file uses line continuations
|
||||
let s:cpo_sav = &cpo
|
||||
set cpo&vim
|
||||
|
||||
function! GetErubyIndent(...)
|
||||
" The value of a single shift-width
|
||||
if exists('*shiftwidth')
|
||||
let sw = shiftwidth()
|
||||
else
|
||||
let sw = &sw
|
||||
endif
|
||||
|
||||
if a:0 && a:1 == '.'
|
||||
let v:lnum = line('.')
|
||||
elseif a:0 && a:1 =~ '^\d'
|
||||
@@ -52,31 +66,44 @@ function! GetErubyIndent(...)
|
||||
let ind = GetRubyIndent(v:lnum)
|
||||
else
|
||||
exe "let ind = ".b:eruby_subtype_indentexpr
|
||||
|
||||
" Workaround for Andy Wokula's HTML indent. This should be removed after
|
||||
" some time, since the newest version is fixed in a different way.
|
||||
if b:eruby_subtype_indentexpr =~# '^HtmlIndent('
|
||||
\ && exists('b:indent')
|
||||
\ && type(b:indent) == type({})
|
||||
\ && has_key(b:indent, 'lnum')
|
||||
" Force HTML indent to not keep state
|
||||
let b:indent.lnum = -1
|
||||
endif
|
||||
endif
|
||||
let lnum = prevnonblank(v:lnum-1)
|
||||
let line = getline(lnum)
|
||||
let cline = getline(v:lnum)
|
||||
if cline =~# '^\s*<%[-=]\=\s*\%(}\|end\|else\|\%(ensure\|rescue\|elsif\|when\).\{-\}\)\s*\%([-=]\=%>\|$\)'
|
||||
let ind = ind - &sw
|
||||
let ind = ind - sw
|
||||
endif
|
||||
if line =~# '\S\s*<%[-=]\=\s*\%(}\|end\).\{-\}\s*\%([-=]\=%>\|$\)'
|
||||
let ind = ind - &sw
|
||||
let ind = ind - sw
|
||||
endif
|
||||
if line =~# '\%({\|\<do\)\%(\s*|[^|]*|\)\=\s*[-=]\=%>'
|
||||
let ind = ind + &sw
|
||||
let ind = ind + sw
|
||||
elseif line =~# '<%[-=]\=\s*\%(module\|class\|def\|if\|for\|while\|until\|else\|elsif\|case\|when\|unless\|begin\|ensure\|rescue\)\>.*%>'
|
||||
let ind = ind + &sw
|
||||
let ind = ind + sw
|
||||
endif
|
||||
if line =~# '^\s*<%[=#-]\=\s*$' && cline !~# '^\s*end\>'
|
||||
let ind = ind + &sw
|
||||
let ind = ind + sw
|
||||
endif
|
||||
if line !~# '^\s*<%' && line =~# '%>\s*$'
|
||||
let ind = ind - &sw
|
||||
if line !~# '^\s*<%' && line =~# '%>\s*$' && line !~# '^\s*end\>'
|
||||
let ind = ind - sw
|
||||
endif
|
||||
if cline =~# '^\s*[-=]\=%>\s*$'
|
||||
let ind = ind - &sw
|
||||
let ind = ind - sw
|
||||
endif
|
||||
return ind
|
||||
endfunction
|
||||
|
||||
let &cpo = s:cpo_sav
|
||||
unlet! s:cpo_sav
|
||||
|
||||
" vim:set sw=2 sts=2 ts=8 noet:
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
" Vim indent file
|
||||
" Language: Fortran 2008 (and older: Fortran 2003, 95, 90, and 77)
|
||||
" Version: 0.44
|
||||
" Last Change: 2016 Jan. 26
|
||||
" Version: 0.45
|
||||
" Last Change: 2016 Aug. 29
|
||||
" Maintainer: Ajit J. Thakkar <ajit@unb.ca>; <http://www2.unb.ca/~ajit/>
|
||||
" Usage: For instructions, do :help fortran-indent from Vim
|
||||
" Credits:
|
||||
@@ -121,7 +121,7 @@ function FortranGetIndent(lnum)
|
||||
let prefix='\(\(pure\|impure\|elemental\|recursive\)\s\+\)\{,2}'
|
||||
let type='\(\(integer\|real\|double\s\+precision\|complex\|logical'
|
||||
\.'\|character\|type\|class\)\s*\S*\s\+\)\='
|
||||
if prevstat =~? '^\s*\(module\|contains\|program\)\>'
|
||||
if prevstat =~? '^\s*\(module\|contains\/submodule\|program\)\>'
|
||||
\ ||prevstat =~? '^\s*'.prefix.'subroutine\>'
|
||||
\ ||prevstat =~? '^\s*'.prefix.type.'function\>'
|
||||
\ ||prevstat =~? '^\s*'.type.prefix.'function\>'
|
||||
@@ -129,14 +129,14 @@ function FortranGetIndent(lnum)
|
||||
endif
|
||||
if getline(v:lnum) =~? '^\s*contains\>'
|
||||
\ ||getline(v:lnum)=~? '^\s*end\s*'
|
||||
\ .'\(function\|subroutine\|module\|program\)\>'
|
||||
\ .'\(function\|subroutine\|module\/submodule\|program\)\>'
|
||||
let ind = ind - shiftwidth()
|
||||
endif
|
||||
endif
|
||||
|
||||
"Subtract a shiftwidth from else, else if, elsewhere, case, end if,
|
||||
" end where, end select, end forall, end interface, end associate,
|
||||
" end enum, and end type statements
|
||||
" end enum, end type, end block and end type statements
|
||||
if getline(v:lnum) =~? '^\s*\(\d\+\s\)\=\s*'
|
||||
\. '\(else\|else\s*if\|else\s*where\|case\|'
|
||||
\. 'end\s*\(if\|where\|select\|interface\|'
|
||||
@@ -152,9 +152,6 @@ function FortranGetIndent(lnum)
|
||||
if prevstat =~ '&\s*$' && prev2stat !~ '&\s*$'
|
||||
let ind = ind + shiftwidth()
|
||||
endif
|
||||
if prevstat =~ '&\s*$' && prevstat =~ '\<else\s*if\>'
|
||||
let ind = ind - shiftwidth()
|
||||
endif
|
||||
"Line after last continuation line
|
||||
if prevstat !~ '&\s*$' && prev2stat =~ '&\s*$' && prevstat !~? '\<then\>'
|
||||
let ind = ind - shiftwidth()
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
" Vim indent file
|
||||
" Language: git config file
|
||||
" Maintainer: Tim Pope <vimNOSPAM@tpope.org>
|
||||
" Last Change: 2013 May 30
|
||||
" Last Change: 2016 Aug 29
|
||||
|
||||
if exists("b:did_indent")
|
||||
finish
|
||||
@@ -20,17 +20,18 @@ if exists("*GetGitconfigIndent")
|
||||
endif
|
||||
|
||||
function! GetGitconfigIndent()
|
||||
let sw = exists('*shiftwidth') ? shiftwidth() : &sw
|
||||
let line = getline(prevnonblank(v:lnum-1))
|
||||
let cline = getline(v:lnum)
|
||||
if line =~ '\\\@<!\%(\\\\\)*\\$'
|
||||
" odd number of slashes, in a line continuation
|
||||
return 2 * &sw
|
||||
return 2 * sw
|
||||
elseif cline =~ '^\s*\['
|
||||
return 0
|
||||
elseif cline =~ '^\s*\a'
|
||||
return &sw
|
||||
return sw
|
||||
elseif cline == '' && line =~ '^\['
|
||||
return &sw
|
||||
return sw
|
||||
else
|
||||
return -1
|
||||
endif
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
" Vim indent file
|
||||
" Language: Haml
|
||||
" Maintainer: Tim Pope <vimNOSPAM@tpope.org>
|
||||
" Last Change: 2013 May 30
|
||||
" Last Change: 2016 Aug 29
|
||||
|
||||
if exists("b:did_indent")
|
||||
finish
|
||||
@@ -37,10 +37,11 @@ function! GetHamlIndent()
|
||||
let line = substitute(line,'^\s\+','','')
|
||||
let indent = indent(lnum)
|
||||
let cindent = indent(v:lnum)
|
||||
let sw = exists('*shiftwidth') ? shiftwidth() : &sw
|
||||
if cline =~# '\v^-\s*%(elsif|else|when)>'
|
||||
let indent = cindent < indent ? cindent : indent - &sw
|
||||
let indent = cindent < indent ? cindent : indent - sw
|
||||
endif
|
||||
let increase = indent + &sw
|
||||
let increase = indent + sw
|
||||
if indent == indent(lnum)
|
||||
let indent = cindent <= indent ? -1 : increase
|
||||
endif
|
||||
|
||||
@@ -1,18 +1,194 @@
|
||||
" Vim indent file
|
||||
" Language: Javascript
|
||||
" Maintainer: Going to be Darrick Wiebe
|
||||
" Last Change: 2015 Jun 09
|
||||
" Language: Javascript
|
||||
" Maintainer: Chris Paul ( https://github.com/bounceme )
|
||||
" URL: https://github.com/pangloss/vim-javascript
|
||||
" Last Change: August 25, 2016
|
||||
|
||||
" Only load this indent file when no other was loaded.
|
||||
if exists("b:did_indent")
|
||||
finish
|
||||
if exists('b:did_indent')
|
||||
finish
|
||||
endif
|
||||
let b:did_indent = 1
|
||||
|
||||
" C indenting is not too bad.
|
||||
setlocal cindent
|
||||
" Now, set up our indentation expression and keys that trigger it.
|
||||
setlocal indentexpr=GetJavascriptIndent()
|
||||
setlocal nolisp noautoindent nosmartindent
|
||||
setlocal indentkeys=0{,0},0),0],:,!^F,o,O,e
|
||||
setlocal cinoptions+=j1,J1
|
||||
setlocal cinkeys-=0#
|
||||
setlocal cinkeys+=0]
|
||||
|
||||
let b:undo_indent = "setl cin<"
|
||||
let b:undo_indent = 'setlocal indentexpr< smartindent< autoindent< indentkeys< cinoptions<'
|
||||
|
||||
" Only define the function once.
|
||||
if exists('*GetJavascriptIndent')
|
||||
finish
|
||||
endif
|
||||
|
||||
let s:cpo_save = &cpo
|
||||
set cpo&vim
|
||||
|
||||
" Get shiftwidth value
|
||||
if exists('*shiftwidth')
|
||||
function s:sw()
|
||||
return shiftwidth()
|
||||
endfunction
|
||||
else
|
||||
function s:sw()
|
||||
return &sw
|
||||
endfunction
|
||||
endif
|
||||
|
||||
let s:line_pre = '^\s*\%(\%(\%(\/\*.\{-}\)\=\*\+\/\s*\)\=\)\@>'
|
||||
let s:expr_case = s:line_pre . '\%(\%(case\>.\+\)\|default\)\s*:'
|
||||
" Regex of syntax group names that are or delimit string or are comments.
|
||||
let s:syng_strcom = '\%(s\%(tring\|pecial\)\|comment\|regex\|doc\|template\)'
|
||||
|
||||
" Regex of syntax group names that are strings or documentation.
|
||||
let s:syng_comment = '\%(comment\|doc\)'
|
||||
|
||||
" Expression used to check whether we should skip a match with searchpair().
|
||||
let s:skip_expr = "synIDattr(synID(line('.'),col('.'),0),'name') =~? '".s:syng_strcom."'"
|
||||
|
||||
if has('reltime')
|
||||
function s:GetPair(start,end,flags,time)
|
||||
return searchpair(a:start,'',a:end,a:flags,s:skip_expr,max([prevnonblank(v:lnum) - 2000,0]),a:time)
|
||||
endfunction
|
||||
else
|
||||
function s:GetPair(start,end,flags,n)
|
||||
return searchpair(a:start,'',a:end,a:flags,0,max([prevnonblank(v:lnum) - 2000,0]))
|
||||
endfunction
|
||||
endif
|
||||
|
||||
let s:line_term = '\s*\%(\%(\/\%(\%(\*.\{-}\*\/\)\|\%(\*\+\)\)\)\s*\)\=$'
|
||||
|
||||
" configurable regexes that define continuation lines, not including (, {, or [.
|
||||
if !exists('g:javascript_opfirst')
|
||||
let g:javascript_opfirst = '\%([<>,:?^%|*&]\|\/[^/*]\|\([-.+]\)\1\@!\|=>\@!\|in\%(stanceof\)\=\>\)'
|
||||
endif
|
||||
if !exists('g:javascript_continuation')
|
||||
let g:javascript_continuation = '\%([<=,.?/*:^%|&]\|+\@<!+\|-\@<!-\|=\@<!>\|\<in\%(stanceof\)\=\)'
|
||||
endif
|
||||
|
||||
let g:javascript_opfirst = s:line_pre . g:javascript_opfirst
|
||||
let g:javascript_continuation .= s:line_term
|
||||
|
||||
function s:OneScope(lnum,text,add)
|
||||
return a:text =~# '\%(\<else\|\<do\|=>\)' . s:line_term ? 'no b' :
|
||||
\ ((a:add && a:text =~ s:line_pre . '$' && search('\%' . s:PrevCodeLine(a:lnum - 1) . 'l.)' . s:line_term)) ||
|
||||
\ cursor(a:lnum, match(a:text, ')' . s:line_term)) > -1) &&
|
||||
\ s:GetPair('(', ')', 'cbW', 100) > 0 && search('\C\l\+\_s*\%#','bW') &&
|
||||
\ (a:add || ((expand('<cword>') !=# 'while' || !s:GetPair('\C\<do\>', '\C\<while\>','nbW',100)) &&
|
||||
\ (expand('<cword>') !=# 'each' || search('\C\<for\_s\+\%#','nbW')))) ? expand('<cword>') : ''
|
||||
endfunction
|
||||
|
||||
" https://github.com/sweet-js/sweet.js/wiki/design#give-lookbehind-to-the-reader
|
||||
function s:IsBlock()
|
||||
return getline(line('.'))[col('.')-1] == '{' && !search(
|
||||
\ '\C\%(\<return\s*\|\%([-=~!<*+,.?^%|&\[(]\|=\@<!>\|\*\@<!\/\|\<\%(var\|const\|let\|import\|export\%(\_s\+default\)\=\|yield\|delete\|void\|t\%(ypeof\|hrow\)\|new\|in\%(stanceof\)\=\)\)\_s*\)\%#','bnW') &&
|
||||
\ (!search(':\_s*\%#','bW') || (!s:GetPair('[({[]','[])}]','bW',200) || s:IsBlock()))
|
||||
endfunction
|
||||
|
||||
" Auxiliary Functions {{{2
|
||||
|
||||
" Find line above 'lnum' that isn't empty, in a comment, or in a string.
|
||||
function s:PrevCodeLine(lnum)
|
||||
let l:lnum = prevnonblank(a:lnum)
|
||||
while l:lnum
|
||||
if synIDattr(synID(l:lnum,matchend(getline(l:lnum), '^\s*[^''"]'),0),'name') !~? s:syng_strcom
|
||||
return l:lnum
|
||||
endif
|
||||
let l:lnum = prevnonblank(l:lnum - 1)
|
||||
endwhile
|
||||
endfunction
|
||||
|
||||
" Check if line 'lnum' has a balanced amount of parentheses.
|
||||
function s:Balanced(lnum)
|
||||
let [open_0,open_2,open_4] = [0,0,0]
|
||||
let l:line = getline(a:lnum)
|
||||
let pos = match(l:line, '[][(){}]', 0)
|
||||
while pos != -1
|
||||
if synIDattr(synID(a:lnum,pos + 1,0),'name') !~? s:syng_strcom
|
||||
let idx = stridx('(){}[]', l:line[pos])
|
||||
if idx % 2 == 0
|
||||
let open_{idx} = open_{idx} + 1
|
||||
else
|
||||
let open_{idx - 1} = open_{idx - 1} - 1
|
||||
endif
|
||||
endif
|
||||
let pos = match(l:line, '[][(){}]', pos + 1)
|
||||
endwhile
|
||||
return (!open_4 + !open_2 + !open_0) - 2
|
||||
endfunction
|
||||
" }}}
|
||||
|
||||
function GetJavascriptIndent()
|
||||
if !exists('b:js_cache')
|
||||
let b:js_cache = [0,0,0]
|
||||
endif
|
||||
" Get the current line.
|
||||
let l:line = getline(v:lnum)
|
||||
let syns = synIDattr(synID(v:lnum, 1, 0), 'name')
|
||||
|
||||
" start with strings,comments,etc.{{{2
|
||||
if (l:line !~ '^[''"`]' && syns =~? '\%(string\|template\)') ||
|
||||
\ (l:line !~ '^\s*[/*]' && syns =~? s:syng_comment)
|
||||
return -1
|
||||
endif
|
||||
if l:line !~ '^\%(\/\*\|\s*\/\/\)' && syns =~? s:syng_comment
|
||||
return cindent(v:lnum)
|
||||
endif
|
||||
let l:lnum = s:PrevCodeLine(v:lnum - 1)
|
||||
if l:lnum == 0
|
||||
return 0
|
||||
endif
|
||||
|
||||
if (l:line =~# s:expr_case)
|
||||
let cpo_switch = &cpo
|
||||
set cpo+=%
|
||||
let ind = cindent(v:lnum)
|
||||
let &cpo = cpo_switch
|
||||
return ind
|
||||
endif
|
||||
"}}}
|
||||
|
||||
" the containing paren, bracket, curly. Memoize, last lineNr either has the
|
||||
" same scope or starts a new one, unless if it closed a scope.
|
||||
call cursor(v:lnum,1)
|
||||
if b:js_cache[0] >= l:lnum && b:js_cache[0] < v:lnum && b:js_cache[0] &&
|
||||
\ (b:js_cache[0] > l:lnum || s:Balanced(l:lnum) > 0)
|
||||
let num = b:js_cache[1]
|
||||
elseif syns != '' && l:line[0] =~ '\s'
|
||||
let pattern = syns =~? 'block' ? ['{','}'] : syns =~? 'jsparen' ? ['(',')'] :
|
||||
\ syns =~? 'jsbracket'? ['\[','\]'] : ['[({[]','[])}]']
|
||||
let num = s:GetPair(pattern[0],pattern[1],'bW',2000)
|
||||
else
|
||||
let num = s:GetPair('[({[]','[])}]','bW',2000)
|
||||
endif
|
||||
let b:js_cache = [v:lnum,num,line('.') == v:lnum ? b:js_cache[2] : col('.')]
|
||||
|
||||
if l:line =~ s:line_pre . '[])}]'
|
||||
return indent(num)
|
||||
endif
|
||||
|
||||
call cursor(b:js_cache[1],b:js_cache[2])
|
||||
|
||||
let swcase = getline(l:lnum) =~# s:expr_case
|
||||
let pline = swcase ? getline(l:lnum) : substitute(getline(l:lnum), '\%(:\@<!\/\/.*\)$', '','')
|
||||
let inb = num == 0 || num < l:lnum && ((l:line !~ s:line_pre . ',' && pline !~ ',' . s:line_term) || s:IsBlock())
|
||||
let switch_offset = num == 0 || s:OneScope(num, strpart(getline(num),0,b:js_cache[2] - 1),1) !=# 'switch' ? 0 :
|
||||
\ &cino !~ ':' || !has('float') ? s:sw() :
|
||||
\ float2nr(str2float(matchstr(&cino,'.*:\zs[-0-9.]*')) * (&cino =~# '.*:[^,]*s' ? s:sw() : 1))
|
||||
|
||||
" most significant, find the indent amount
|
||||
if inb && !swcase && ((l:line =~# g:javascript_opfirst || pline =~# g:javascript_continuation) ||
|
||||
\ num < l:lnum && s:OneScope(l:lnum,pline,0) =~# '\<\%(for\|each\|if\|let\|no\sb\|w\%(hile\|ith\)\)\>' &&
|
||||
\ l:line !~ s:line_pre . '{')
|
||||
return (num > 0 ? indent(num) : -s:sw()) + (s:sw() * 2) + switch_offset
|
||||
elseif num > 0
|
||||
return indent(num) + s:sw() + switch_offset
|
||||
endif
|
||||
|
||||
endfunction
|
||||
|
||||
|
||||
let &cpo = s:cpo_save
|
||||
unlet s:cpo_save
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
" Vim indent file
|
||||
" Language: Liquid
|
||||
" Maintainer: Tim Pope <vimNOSPAM@tpope.org>
|
||||
" Last Change: 2013 May 30
|
||||
" Last Change: 2016 Aug 29
|
||||
|
||||
if exists('b:did_indent')
|
||||
finish
|
||||
@@ -54,9 +54,10 @@ function! GetLiquidIndent(...)
|
||||
let line = substitute(line,'\C^\%(\s*{%\s*end\w*\s*%}\)\+','','')
|
||||
let line .= matchstr(cline,'\C^\%(\s*{%\s*end\w*\s*%}\)\+')
|
||||
let cline = substitute(cline,'\C^\%(\s*{%\s*end\w*\s*%}\)\+','','')
|
||||
let ind += &sw * s:count(line,'{%\s*\%(if\|elsif\|else\|unless\|ifchanged\|case\|when\|for\|empty\|tablerow\|capture\)\>')
|
||||
let ind -= &sw * s:count(line,'{%\s*end\%(if\|unless\|ifchanged\|case\|for\|tablerow\|capture\)\>')
|
||||
let ind -= &sw * s:count(cline,'{%\s*\%(elsif\|else\|when\|empty\)\>')
|
||||
let ind -= &sw * s:count(cline,'{%\s*end\w*$')
|
||||
let sw = exists('*shiftwidth') ? shiftwidth() : &sw
|
||||
let ind += sw * s:count(line,'{%\s*\%(if\|elsif\|else\|unless\|ifchanged\|case\|when\|for\|empty\|tablerow\|capture\)\>')
|
||||
let ind -= sw * s:count(line,'{%\s*end\%(if\|unless\|ifchanged\|case\|for\|tablerow\|capture\)\>')
|
||||
let ind -= sw * s:count(cline,'{%\s*\%(elsif\|else\|when\|empty\)\>')
|
||||
let ind -= sw * s:count(cline,'{%\s*end\w*$')
|
||||
return ind
|
||||
endfunction
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
" Language: Rnoweb
|
||||
" Author: Jakson Alves de Aquino <jalvesaq@gmail.com>
|
||||
" Homepage: https://github.com/jalvesaq/R-Vim-runtime
|
||||
" Last Change: Tue Apr 07, 2015 04:38PM
|
||||
" Last Change: Fri Apr 15, 2016 10:58PM
|
||||
|
||||
|
||||
" Only load this indent file when no other was loaded.
|
||||
@@ -10,7 +10,17 @@ if exists("b:did_indent")
|
||||
finish
|
||||
endif
|
||||
runtime indent/tex.vim
|
||||
let s:TeXIndent = function(substitute(&indentexpr, "()", "", ""))
|
||||
|
||||
function! s:NoTeXIndent()
|
||||
return indent(line("."))
|
||||
endfunction
|
||||
|
||||
if &indentexpr == "" || &indentexpr == "GetRnowebIndent()"
|
||||
let s:TeXIndent = function("s:NoTeXIndent")
|
||||
else
|
||||
let s:TeXIndent = function(substitute(&indentexpr, "()", "", ""))
|
||||
endif
|
||||
|
||||
unlet b:did_indent
|
||||
runtime indent/r.vim
|
||||
let s:RIndent = function(substitute(&indentexpr, "()", "", ""))
|
||||
|
||||
@@ -13,12 +13,23 @@ if exists("b:did_indent")
|
||||
endif
|
||||
let b:did_indent = 1
|
||||
|
||||
if !exists('g:ruby_indent_access_modifier_style')
|
||||
" Possible values: "normal", "indent", "outdent"
|
||||
let g:ruby_indent_access_modifier_style = 'normal'
|
||||
endif
|
||||
|
||||
if !exists('g:ruby_indent_block_style')
|
||||
" Possible values: "expression", "do"
|
||||
let g:ruby_indent_block_style = 'expression'
|
||||
endif
|
||||
|
||||
setlocal nosmartindent
|
||||
|
||||
" Now, set up our indentation expression and keys that trigger it.
|
||||
setlocal indentexpr=GetRubyIndent(v:lnum)
|
||||
setlocal indentkeys=0{,0},0),0],!^F,o,O,e
|
||||
setlocal indentkeys=0{,0},0),0],!^F,o,O,e,:,.
|
||||
setlocal indentkeys+==end,=else,=elsif,=when,=ensure,=rescue,==begin,==end
|
||||
setlocal indentkeys+==private,=protected,=public
|
||||
|
||||
" Only define the function once.
|
||||
if exists("*GetRubyIndent")
|
||||
@@ -34,7 +45,7 @@ set cpo&vim
|
||||
" Regex of syntax group names that are or delimit strings/symbols or are comments.
|
||||
let s:syng_strcom = '\<ruby\%(Regexp\|RegexpDelimiter\|RegexpEscape' .
|
||||
\ '\|Symbol\|String\|StringDelimiter\|StringEscape\|ASCIICode' .
|
||||
\ '\|Interpolation\|NoInterpolation\|Comment\|Documentation\)\>'
|
||||
\ '\|Interpolation\|InterpolationDelimiter\|NoInterpolation\|Comment\|Documentation\)\>'
|
||||
|
||||
" Regex of syntax group names that are strings.
|
||||
let s:syng_string =
|
||||
@@ -49,9 +60,10 @@ let s:skip_expr =
|
||||
\ "synIDattr(synID(line('.'),col('.'),1),'name') =~ '".s:syng_strcom."'"
|
||||
|
||||
" Regex used for words that, at the start of a line, add a level of indent.
|
||||
let s:ruby_indent_keywords = '^\s*\zs\<\%(module\|class\|def\|if\|for' .
|
||||
\ '\|while\|until\|else\|elsif\|case\|when\|unless\|begin\|ensure' .
|
||||
\ '\|rescue\):\@!\>' .
|
||||
let s:ruby_indent_keywords =
|
||||
\ '^\s*\zs\<\%(module\|class\|if\|for' .
|
||||
\ '\|while\|until\|else\|elsif\|case\|when\|unless\|begin\|ensure\|rescue' .
|
||||
\ '\|\%(public\|protected\|private\)\=\s*def\):\@!\>' .
|
||||
\ '\|\%([=,*/%+-]\|<<\|>>\|:\s\)\s*\zs' .
|
||||
\ '\<\%(if\|for\|while\|until\|case\|unless\|begin\):\@!\>'
|
||||
|
||||
@@ -64,7 +76,8 @@ let s:ruby_deindent_keywords =
|
||||
" TODO: the do here should be restricted somewhat (only at end of line)?
|
||||
let s:end_start_regex =
|
||||
\ '\C\%(^\s*\|[=,*/%+\-|;{]\|<<\|>>\|:\s\)\s*\zs' .
|
||||
\ '\<\%(module\|class\|def\|if\|for\|while\|until\|case\|unless\|begin\):\@!\>' .
|
||||
\ '\<\%(module\|class\|if\|for\|while\|until\|case\|unless\|begin' .
|
||||
\ '\|\%(public\|protected\|private\)\=\s*def\):\@!\>' .
|
||||
\ '\|\%(^\|[^.:@$]\)\@<=\<do:\@!\>'
|
||||
|
||||
" Regex that defines the middle-match for the 'end' keyword.
|
||||
@@ -82,16 +95,35 @@ let s:end_skip_expr = s:skip_expr .
|
||||
let s:non_bracket_continuation_regex = '\%([\\.,:*/%+]\|\<and\|\<or\|\%(<%\)\@<![=-]\|\W[|&?]\|||\|&&\)\s*\%(#.*\)\=$'
|
||||
|
||||
" Regex that defines continuation lines.
|
||||
" TODO: this needs to deal with if ...: and so on
|
||||
let s:continuation_regex =
|
||||
\ '\%(%\@<![({[\\.,:*/%+]\|\<and\|\<or\|\%(<%\)\@<![=-]\|\W[|&?]\|||\|&&\)\s*\%(#.*\)\=$'
|
||||
|
||||
" Regex that defines continuable keywords
|
||||
let s:continuable_regex =
|
||||
\ '\C\%(^\s*\|[=,*/%+\-|;{]\|<<\|>>\|:\s\)\s*\zs' .
|
||||
\ '\<\%(if\|for\|while\|until\|unless\):\@!\>'
|
||||
|
||||
" Regex that defines bracket continuations
|
||||
let s:bracket_continuation_regex = '%\@<!\%([({[]\)\s*\%(#.*\)\=$'
|
||||
|
||||
" Regex that defines dot continuations
|
||||
let s:dot_continuation_regex = '%\@<!\.\s*\%(#.*\)\=$'
|
||||
|
||||
" Regex that defines backslash continuations
|
||||
let s:backslash_continuation_regex = '%\@<!\\\s*$'
|
||||
|
||||
" Regex that defines end of bracket continuation followed by another continuation
|
||||
let s:bracket_switch_continuation_regex = '^\([^(]\+\zs).\+\)\+'.s:continuation_regex
|
||||
|
||||
" Regex that defines the first part of a splat pattern
|
||||
let s:splat_regex = '[[,(]\s*\*\s*\%(#.*\)\=$'
|
||||
|
||||
" Regex that describes all indent access modifiers
|
||||
let s:access_modifier_regex = '\C^\s*\%(public\|protected\|private\)\s*\%(#.*\)\=$'
|
||||
|
||||
" Regex that describes the indent access modifiers (excludes public)
|
||||
let s:indent_access_modifier_regex = '\C^\s*\%(protected\|private\)\s*\%(#.*\)\=$'
|
||||
|
||||
" Regex that defines blocks.
|
||||
"
|
||||
" Note that there's a slight problem with this regex and s:continuation_regex.
|
||||
@@ -102,10 +134,13 @@ let s:splat_regex = '[[,(]\s*\*\s*\%(#.*\)\=$'
|
||||
" The reason is that the pipe matches a hanging "|" operator.
|
||||
"
|
||||
let s:block_regex =
|
||||
\ '\%(\<do:\@!\>\|%\@<!{\)\s*\%(|\s*(*\s*\%([*@&]\=\h\w*,\=\s*\)\%(,\s*(*\s*[*@&]\=\h\w*\s*)*\s*\)*|\)\=\s*\%(#.*\)\=$'
|
||||
\ '\%(\<do:\@!\>\|%\@<!{\)\s*\%(|[^|]*|\)\=\s*\%(#.*\)\=$'
|
||||
|
||||
let s:block_continuation_regex = '^\s*[^])}\t ].*'.s:block_regex
|
||||
|
||||
" Regex that describes a leading operator (only a method call's dot for now)
|
||||
let s:leading_operator_regex = '^\s*[.]'
|
||||
|
||||
" 2. Auxiliary Functions {{{1
|
||||
" ======================
|
||||
|
||||
@@ -165,7 +200,21 @@ function s:GetMSL(lnum)
|
||||
" Otherwise, terminate search as we have found our MSL already.
|
||||
let line = getline(lnum)
|
||||
|
||||
if s:Match(lnum, s:splat_regex)
|
||||
if !s:Match(msl, s:backslash_continuation_regex) &&
|
||||
\ s:Match(lnum, s:backslash_continuation_regex)
|
||||
" If the current line doesn't end in a backslash, but the previous one
|
||||
" does, look for that line's msl
|
||||
"
|
||||
" Example:
|
||||
" foo = "bar" \
|
||||
" "baz"
|
||||
"
|
||||
let msl = lnum
|
||||
elseif s:Match(msl, s:leading_operator_regex)
|
||||
" If the current line starts with a leading operator, keep its indent
|
||||
" and keep looking for an MSL.
|
||||
let msl = lnum
|
||||
elseif s:Match(lnum, s:splat_regex)
|
||||
" If the above line looks like the "*" of a splat, use the current one's
|
||||
" indentation.
|
||||
"
|
||||
@@ -175,7 +224,7 @@ function s:GetMSL(lnum)
|
||||
" something
|
||||
"
|
||||
return msl
|
||||
elseif s:Match(line, s:non_bracket_continuation_regex) &&
|
||||
elseif s:Match(lnum, s:non_bracket_continuation_regex) &&
|
||||
\ s:Match(msl, s:non_bracket_continuation_regex)
|
||||
" If the current line is a non-bracket continuation and so is the
|
||||
" previous one, keep its indent and continue looking for an MSL.
|
||||
@@ -186,6 +235,18 @@ function s:GetMSL(lnum)
|
||||
" three
|
||||
"
|
||||
let msl = lnum
|
||||
elseif s:Match(lnum, s:dot_continuation_regex) &&
|
||||
\ (s:Match(msl, s:bracket_continuation_regex) || s:Match(msl, s:block_continuation_regex))
|
||||
" If the current line is a bracket continuation or a block-starter, but
|
||||
" the previous is a dot, keep going to see if the previous line is the
|
||||
" start of another continuation.
|
||||
"
|
||||
" Example:
|
||||
" parent.
|
||||
" method_call {
|
||||
" three
|
||||
"
|
||||
let msl = lnum
|
||||
elseif s:Match(lnum, s:non_bracket_continuation_regex) &&
|
||||
\ (s:Match(msl, s:bracket_continuation_regex) || s:Match(msl, s:block_continuation_regex))
|
||||
" If the current line is a bracket continuation or a block-starter, but
|
||||
@@ -299,18 +360,39 @@ function s:ExtraBrackets(lnum)
|
||||
endfunction
|
||||
|
||||
function s:Match(lnum, regex)
|
||||
let col = match(getline(a:lnum), '\C'.a:regex) + 1
|
||||
return col > 0 && !s:IsInStringOrComment(a:lnum, col) ? col : 0
|
||||
let line = getline(a:lnum)
|
||||
let offset = match(line, '\C'.a:regex)
|
||||
let col = offset + 1
|
||||
|
||||
while offset > -1 && s:IsInStringOrComment(a:lnum, col)
|
||||
let offset = match(line, '\C'.a:regex, offset + 1)
|
||||
let col = offset + 1
|
||||
endwhile
|
||||
|
||||
if offset > -1
|
||||
return col
|
||||
else
|
||||
return 0
|
||||
endif
|
||||
endfunction
|
||||
|
||||
function s:MatchLast(lnum, regex)
|
||||
let line = getline(a:lnum)
|
||||
let col = match(line, '.*\zs' . a:regex)
|
||||
while col != -1 && s:IsInStringOrComment(a:lnum, col)
|
||||
let line = strpart(line, 0, col)
|
||||
let col = match(line, '.*' . a:regex)
|
||||
endwhile
|
||||
return col + 1
|
||||
" Locates the containing class/module's definition line, ignoring nested classes
|
||||
" along the way.
|
||||
"
|
||||
function! s:FindContainingClass()
|
||||
let saved_position = getpos('.')
|
||||
|
||||
while searchpair(s:end_start_regex, s:end_middle_regex, s:end_end_regex, 'bW',
|
||||
\ s:end_skip_expr) > 0
|
||||
if expand('<cword>') =~# '\<class\|module\>'
|
||||
let found_lnum = line('.')
|
||||
call setpos('.', saved_position)
|
||||
return found_lnum
|
||||
endif
|
||||
endif
|
||||
|
||||
call setpos('.', saved_position)
|
||||
return 0
|
||||
endfunction
|
||||
|
||||
" 3. GetRubyIndent Function {{{1
|
||||
@@ -320,6 +402,13 @@ function GetRubyIndent(...)
|
||||
" 3.1. Setup {{{2
|
||||
" ----------
|
||||
|
||||
" The value of a single shift-width
|
||||
if exists('*shiftwidth')
|
||||
let sw = shiftwidth()
|
||||
else
|
||||
let sw = &sw
|
||||
endif
|
||||
|
||||
" For the current line, use the first argument if given, else v:lnum
|
||||
let clnum = a:0 ? a:1 : v:lnum
|
||||
|
||||
@@ -333,6 +422,24 @@ function GetRubyIndent(...)
|
||||
let line = getline(clnum)
|
||||
let ind = -1
|
||||
|
||||
" If this line is an access modifier keyword, align according to the closest
|
||||
" class declaration.
|
||||
if g:ruby_indent_access_modifier_style == 'indent'
|
||||
if s:Match(clnum, s:access_modifier_regex)
|
||||
let class_line = s:FindContainingClass()
|
||||
if class_line > 0
|
||||
return indent(class_line) + sw
|
||||
endif
|
||||
endif
|
||||
elseif g:ruby_indent_access_modifier_style == 'outdent'
|
||||
if s:Match(clnum, s:access_modifier_regex)
|
||||
let class_line = s:FindContainingClass()
|
||||
if class_line > 0
|
||||
return indent(class_line)
|
||||
endif
|
||||
endif
|
||||
endif
|
||||
|
||||
" If we got a closing bracket on an empty line, find its match and indent
|
||||
" according to it. For parentheses we indent to its column - 1, for the
|
||||
" others we indent to the containing line's MSL's level. Return -1 if fail.
|
||||
@@ -343,7 +450,9 @@ function GetRubyIndent(...)
|
||||
if searchpair(escape(bs[0], '\['), '', bs[1], 'bW', s:skip_expr) > 0
|
||||
if line[col-1]==')' && col('.') != col('$') - 1
|
||||
let ind = virtcol('.') - 1
|
||||
else
|
||||
elseif g:ruby_indent_block_style == 'do'
|
||||
let ind = indent(line('.'))
|
||||
else " g:ruby_indent_block_style == 'expression'
|
||||
let ind = indent(s:GetMSL(line('.')))
|
||||
endif
|
||||
endif
|
||||
@@ -366,10 +475,17 @@ function GetRubyIndent(...)
|
||||
|
||||
if strpart(line, 0, col('.') - 1) =~ '=\s*$' &&
|
||||
\ strpart(line, col('.') - 1, 2) !~ 'do'
|
||||
" assignment to case/begin/etc, on the same line, hanging indent
|
||||
let ind = virtcol('.') - 1
|
||||
elseif g:ruby_indent_block_style == 'do'
|
||||
" align to line of the "do", not to the MSL
|
||||
let ind = indent(line('.'))
|
||||
elseif getline(msl) =~ '=\s*\(#.*\)\=$'
|
||||
" in the case of assignment to the MSL, align to the starting line,
|
||||
" not to the MSL
|
||||
let ind = indent(line('.'))
|
||||
else
|
||||
" align to the MSL
|
||||
let ind = indent(msl)
|
||||
endif
|
||||
endif
|
||||
@@ -389,6 +505,11 @@ function GetRubyIndent(...)
|
||||
return 0
|
||||
endif
|
||||
|
||||
" If the current line starts with a leading operator, add a level of indent.
|
||||
if s:Match(clnum, s:leading_operator_regex)
|
||||
return indent(s:GetMSL(clnum)) + sw
|
||||
endif
|
||||
|
||||
" 3.3. Work on the previous line. {{{2
|
||||
" -------------------------------
|
||||
|
||||
@@ -409,14 +530,50 @@ function GetRubyIndent(...)
|
||||
let line = getline(lnum)
|
||||
let ind = indent(lnum)
|
||||
|
||||
if g:ruby_indent_access_modifier_style == 'indent'
|
||||
" If the previous line was a private/protected keyword, add a
|
||||
" level of indent.
|
||||
if s:Match(lnum, s:indent_access_modifier_regex)
|
||||
return indent(lnum) + sw
|
||||
endif
|
||||
elseif g:ruby_indent_access_modifier_style == 'outdent'
|
||||
" If the previous line was a private/protected/public keyword, add
|
||||
" a level of indent, since the keyword has been out-dented.
|
||||
if s:Match(lnum, s:access_modifier_regex)
|
||||
return indent(lnum) + sw
|
||||
endif
|
||||
endif
|
||||
|
||||
if s:Match(lnum, s:continuable_regex) && s:Match(lnum, s:continuation_regex)
|
||||
return indent(s:GetMSL(lnum)) + sw + sw
|
||||
endif
|
||||
|
||||
" If the previous line ended with a block opening, add a level of indent.
|
||||
if s:Match(lnum, s:block_regex)
|
||||
return indent(s:GetMSL(lnum)) + &sw
|
||||
let msl = s:GetMSL(lnum)
|
||||
|
||||
if g:ruby_indent_block_style == 'do'
|
||||
" don't align to the msl, align to the "do"
|
||||
let ind = indent(lnum) + sw
|
||||
elseif getline(msl) =~ '=\s*\(#.*\)\=$'
|
||||
" in the case of assignment to the msl, align to the starting line,
|
||||
" not to the msl
|
||||
let ind = indent(lnum) + sw
|
||||
else
|
||||
let ind = indent(msl) + sw
|
||||
endif
|
||||
return ind
|
||||
endif
|
||||
|
||||
" If the previous line started with a leading operator, use its MSL's level
|
||||
" of indent
|
||||
if s:Match(lnum, s:leading_operator_regex)
|
||||
return indent(s:GetMSL(lnum))
|
||||
endif
|
||||
|
||||
" If the previous line ended with the "*" of a splat, add a level of indent
|
||||
if line =~ s:splat_regex
|
||||
return indent(lnum) + &sw
|
||||
return indent(lnum) + sw
|
||||
endif
|
||||
|
||||
" If the previous line contained unclosed opening brackets and we are still
|
||||
@@ -431,22 +588,22 @@ function GetRubyIndent(...)
|
||||
if opening.pos != -1
|
||||
if opening.type == '(' && searchpair('(', '', ')', 'bW', s:skip_expr) > 0
|
||||
if col('.') + 1 == col('$')
|
||||
return ind + &sw
|
||||
return ind + sw
|
||||
else
|
||||
return virtcol('.')
|
||||
endif
|
||||
else
|
||||
let nonspace = matchend(line, '\S', opening.pos + 1) - 1
|
||||
return nonspace > 0 ? nonspace : ind + &sw
|
||||
return nonspace > 0 ? nonspace : ind + sw
|
||||
endif
|
||||
elseif closing.pos != -1
|
||||
call cursor(lnum, closing.pos + 1)
|
||||
normal! %
|
||||
|
||||
if s:Match(line('.'), s:ruby_indent_keywords)
|
||||
return indent('.') + &sw
|
||||
return indent('.') + sw
|
||||
else
|
||||
return indent('.')
|
||||
return indent(s:GetMSL(line('.')))
|
||||
endif
|
||||
else
|
||||
call cursor(clnum, vcol)
|
||||
@@ -473,7 +630,7 @@ function GetRubyIndent(...)
|
||||
let col = s:Match(lnum, s:ruby_indent_keywords)
|
||||
if col > 0
|
||||
call cursor(lnum, col)
|
||||
let ind = virtcol('.') - 1 + &sw
|
||||
let ind = virtcol('.') - 1 + sw
|
||||
" TODO: make this better (we need to count them) (or, if a searchpair
|
||||
" fails, we know that something is lacking an end and thus we indent a
|
||||
" level
|
||||
@@ -490,10 +647,14 @@ function GetRubyIndent(...)
|
||||
let p_lnum = lnum
|
||||
let lnum = s:GetMSL(lnum)
|
||||
|
||||
" If the previous line wasn't a MSL and is continuation return its indent.
|
||||
" TODO: the || s:IsInString() thing worries me a bit.
|
||||
" If the previous line wasn't a MSL.
|
||||
if p_lnum != lnum
|
||||
if s:Match(p_lnum, s:non_bracket_continuation_regex) || s:IsInString(p_lnum,strlen(line))
|
||||
" If previous line ends bracket and begins non-bracket continuation decrease indent by 1.
|
||||
if s:Match(p_lnum, s:bracket_switch_continuation_regex)
|
||||
return ind - 1
|
||||
" If previous line is a continuation return its indent.
|
||||
" TODO: the || s:IsInString() thing worries me a bit.
|
||||
elseif s:Match(p_lnum, s:non_bracket_continuation_regex) || s:IsInString(p_lnum,strlen(line))
|
||||
return ind
|
||||
endif
|
||||
endif
|
||||
@@ -506,9 +667,9 @@ function GetRubyIndent(...)
|
||||
" TODO: this does not take into account contrived things such as
|
||||
" module Foo; class Bar; end
|
||||
if s:Match(lnum, s:ruby_indent_keywords)
|
||||
let ind = msl_ind + &sw
|
||||
let ind = msl_ind + sw
|
||||
if s:Match(lnum, s:end_end_regex)
|
||||
let ind = ind - &sw
|
||||
let ind = ind - sw
|
||||
endif
|
||||
return ind
|
||||
endif
|
||||
@@ -517,7 +678,7 @@ function GetRubyIndent(...)
|
||||
" closing bracket, indent one extra level.
|
||||
if s:Match(lnum, s:non_bracket_continuation_regex) && !s:Match(lnum, '^\s*\([\])}]\|end\)')
|
||||
if lnum == p_lnum
|
||||
let ind = msl_ind + &sw
|
||||
let ind = msl_ind + sw
|
||||
else
|
||||
let ind = msl_ind
|
||||
endif
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
" Vim indent file
|
||||
" Language: Sass
|
||||
" Maintainer: Tim Pope <vimNOSPAM@tpope.org>
|
||||
" Last Change: 2013 May 30
|
||||
" Last Change: 2016 Aug 29
|
||||
|
||||
if exists("b:did_indent")
|
||||
finish
|
||||
@@ -29,9 +29,7 @@ function! GetSassIndent()
|
||||
let indent = indent(lnum)
|
||||
let cindent = indent(v:lnum)
|
||||
if line !~ s:property && line !~ s:extend && cline =~ s:property
|
||||
return indent + &sw
|
||||
"elseif line =~ s:property && cline !~ s:property
|
||||
"return indent - &sw
|
||||
return indent + (exists('*shiftwidth') ? shiftwidth() : &sw)
|
||||
else
|
||||
return -1
|
||||
endif
|
||||
|
||||
609
runtime/indent/scala.vim
Normal file
609
runtime/indent/scala.vim
Normal file
@@ -0,0 +1,609 @@
|
||||
" Vim indent file
|
||||
" Language: Scala (http://scala-lang.org/)
|
||||
" Original Author: Stefan Matthias Aust
|
||||
" Modifications By: Derek Wyatt
|
||||
" URL: https://github.com/derekwyatt/vim-scala
|
||||
" Last Change: 2016 Aug 26
|
||||
|
||||
if exists("b:did_indent")
|
||||
finish
|
||||
endif
|
||||
let b:did_indent = 1
|
||||
|
||||
setlocal autoindent
|
||||
setlocal indentexpr=GetScalaIndent()
|
||||
setlocal indentkeys=0{,0},0),!^F,<>>,o,O,e,=case,<CR>
|
||||
|
||||
if exists("*GetScalaIndent")
|
||||
finish
|
||||
endif
|
||||
let s:keepcpo= &cpo
|
||||
set cpo&vim
|
||||
|
||||
let s:defMatcher = '\%(\%(private\|protected\)\%(\[[^\]]*\]\)\?\s\+\|abstract\s\+\|override\s\+\)*\<def\>'
|
||||
let s:funcNameMatcher = '\w\+'
|
||||
let s:typeSpecMatcher = '\%(\s*\[\_[^\]]*\]\)'
|
||||
let s:defArgMatcher = '\%((\_.\{-})\)'
|
||||
let s:returnTypeMatcher = '\%(:\s*\w\+' . s:typeSpecMatcher . '\?\)'
|
||||
let g:fullDefMatcher = '^\s*' . s:defMatcher . '\s\+' . s:funcNameMatcher . '\s*' . s:typeSpecMatcher . '\?\s*' . s:defArgMatcher . '\?\s*' . s:returnTypeMatcher . '\?\s*[={]'
|
||||
|
||||
function! scala#ConditionalConfirm(msg)
|
||||
if 0
|
||||
call confirm(a:msg)
|
||||
endif
|
||||
endfunction
|
||||
|
||||
function! scala#GetLine(lnum)
|
||||
let line = substitute(getline(a:lnum), '//.*$', '', '')
|
||||
let line = substitute(line, '"\(.\|\\"\)\{-}"', '""', 'g')
|
||||
return line
|
||||
endfunction
|
||||
|
||||
function! scala#CountBrackets(line, openBracket, closedBracket)
|
||||
let line = substitute(a:line, '"\(.\|\\"\)\{-}"', '', 'g')
|
||||
let open = substitute(line, '[^' . a:openBracket . ']', '', 'g')
|
||||
let close = substitute(line, '[^' . a:closedBracket . ']', '', 'g')
|
||||
return strlen(open) - strlen(close)
|
||||
endfunction
|
||||
|
||||
function! scala#CountParens(line)
|
||||
return scala#CountBrackets(a:line, '(', ')')
|
||||
endfunction
|
||||
|
||||
function! scala#CountCurlies(line)
|
||||
return scala#CountBrackets(a:line, '{', '}')
|
||||
endfunction
|
||||
|
||||
function! scala#LineEndsInIncomplete(line)
|
||||
if a:line =~ '[.,]\s*$'
|
||||
return 1
|
||||
else
|
||||
return 0
|
||||
endif
|
||||
endfunction
|
||||
|
||||
function! scala#LineIsAClosingXML(line)
|
||||
if a:line =~ '^\s*</\w'
|
||||
return 1
|
||||
else
|
||||
return 0
|
||||
endif
|
||||
endfunction
|
||||
|
||||
function! scala#LineCompletesXML(lnum, line)
|
||||
let savedpos = getpos('.')
|
||||
call setpos('.', [savedpos[0], a:lnum, 0, savedpos[3]])
|
||||
let tag = substitute(a:line, '^.*</\([^>]*\)>.*$', '\1', '')
|
||||
let [lineNum, colnum] = searchpairpos('<' . tag . '>', '', '</' . tag . '>', 'Wbn')
|
||||
call setpos('.', savedpos)
|
||||
let pline = scala#GetLine(prevnonblank(lineNum - 1))
|
||||
if pline =~ '=\s*$'
|
||||
return 1
|
||||
else
|
||||
return 0
|
||||
endif
|
||||
endfunction
|
||||
|
||||
function! scala#IsParentCase()
|
||||
let savedpos = getpos('.')
|
||||
call setpos('.', [savedpos[0], savedpos[1], 0, savedpos[3]])
|
||||
let [l, c] = searchpos('^\s*\%(' . s:defMatcher . '\|\%(\<case\>\)\)', 'bnW')
|
||||
let retvalue = -1
|
||||
if l != 0 && search('\%' . l . 'l\s*\<case\>', 'bnW')
|
||||
let retvalue = l
|
||||
endif
|
||||
call setpos('.', savedpos)
|
||||
return retvalue
|
||||
endfunction
|
||||
|
||||
function! scala#CurlyMatcher()
|
||||
let matchline = scala#GetLineThatMatchesBracket('{', '}')
|
||||
if scala#CountParens(scala#GetLine(matchline)) < 0
|
||||
let savedpos = getpos('.')
|
||||
call setpos('.', [savedpos[0], matchline, 9999, savedpos[3]])
|
||||
call searchpos('{', 'Wbc')
|
||||
call searchpos(')', 'Wb')
|
||||
let [lnum, colnum] = searchpairpos('(', '', ')', 'Wbn')
|
||||
call setpos('.', savedpos)
|
||||
let line = scala#GetLine(lnum)
|
||||
if line =~ '^\s*' . s:defMatcher
|
||||
return lnum
|
||||
else
|
||||
return matchline
|
||||
endif
|
||||
else
|
||||
return matchline
|
||||
endif
|
||||
endfunction
|
||||
|
||||
function! scala#GetLineAndColumnThatMatchesCurly()
|
||||
return scala#GetLineAndColumnThatMatchesBracket('{', '}')
|
||||
endfunction
|
||||
|
||||
function! scala#GetLineAndColumnThatMatchesParen()
|
||||
return scala#GetLineAndColumnThatMatchesBracket('(', ')')
|
||||
endfunction
|
||||
|
||||
function! scala#GetLineAndColumnThatMatchesBracket(openBracket, closedBracket)
|
||||
let savedpos = getpos('.')
|
||||
let curline = scala#GetLine(line('.'))
|
||||
if curline =~ a:closedBracket . '.*' . a:openBracket . '.*' . a:closedBracket
|
||||
call setpos('.', [savedpos[0], savedpos[1], 0, savedpos[3]])
|
||||
call searchpos(a:closedBracket . '\ze[^' . a:closedBracket . a:openBracket . ']*' . a:openBracket, 'W')
|
||||
else
|
||||
call setpos('.', [savedpos[0], savedpos[1], 9999, savedpos[3]])
|
||||
call searchpos(a:closedBracket, 'Wbc')
|
||||
endif
|
||||
let [lnum, colnum] = searchpairpos(a:openBracket, '', a:closedBracket, 'Wbn')
|
||||
call setpos('.', savedpos)
|
||||
return [lnum, colnum]
|
||||
endfunction
|
||||
|
||||
function! scala#GetLineThatMatchesCurly()
|
||||
return scala#GetLineThatMatchesBracket('{', '}')
|
||||
endfunction
|
||||
|
||||
function! scala#GetLineThatMatchesParen()
|
||||
return scala#GetLineThatMatchesBracket('(', ')')
|
||||
endfunction
|
||||
|
||||
function! scala#GetLineThatMatchesBracket(openBracket, closedBracket)
|
||||
let [lnum, colnum] = scala#GetLineAndColumnThatMatchesBracket(a:openBracket, a:closedBracket)
|
||||
return lnum
|
||||
endfunction
|
||||
|
||||
function! scala#NumberOfBraceGroups(line)
|
||||
let line = substitute(a:line, '[^()]', '', 'g')
|
||||
if strlen(line) == 0
|
||||
return 0
|
||||
endif
|
||||
let line = substitute(line, '^)*', '', 'g')
|
||||
if strlen(line) == 0
|
||||
return 0
|
||||
endif
|
||||
let line = substitute(line, '^(', '', 'g')
|
||||
if strlen(line) == 0
|
||||
return 0
|
||||
endif
|
||||
let c = 1
|
||||
let counter = 0
|
||||
let groupCount = 0
|
||||
while counter < strlen(line)
|
||||
let char = strpart(line, counter, 1)
|
||||
if char == '('
|
||||
let c = c + 1
|
||||
elseif char == ')'
|
||||
let c = c - 1
|
||||
endif
|
||||
if c == 0
|
||||
let groupCount = groupCount + 1
|
||||
endif
|
||||
let counter = counter + 1
|
||||
endwhile
|
||||
return groupCount
|
||||
endfunction
|
||||
|
||||
function! scala#MatchesIncompleteDefValr(line)
|
||||
if a:line =~ '^\s*\%(' . s:defMatcher . '\|\<va[lr]\>\).*[=({]\s*$'
|
||||
return 1
|
||||
else
|
||||
return 0
|
||||
endif
|
||||
endfunction
|
||||
|
||||
function! scala#LineIsCompleteIf(line)
|
||||
if scala#CountBrackets(a:line, '{', '}') == 0 &&
|
||||
\ scala#CountBrackets(a:line, '(', ')') == 0 &&
|
||||
\ a:line =~ '^\s*\<if\>\s*([^)]*)\s*\S.*$'
|
||||
return 1
|
||||
else
|
||||
return 0
|
||||
endif
|
||||
endfunction
|
||||
|
||||
function! scala#LineCompletesIfElse(lnum, line)
|
||||
if a:line =~ '^\s*\%(\<if\>\|\%(}\s*\)\?\<else\>\)'
|
||||
return 0
|
||||
endif
|
||||
let result = search('^\%(\s*\<if\>\s*(.*).*\n\|\s*\<if\>\s*(.*)\s*\n.*\n\)\%(\s*\<else\>\s*\<if\>\s*(.*)\s*\n.*\n\)*\%(\s*\<else\>\s*\n\|\s*\<else\>[^{]*\n\)\?\%' . a:lnum . 'l', 'Wbn')
|
||||
if result != 0 && scala#GetLine(prevnonblank(a:lnum - 1)) !~ '{\s*$'
|
||||
return result
|
||||
endif
|
||||
return 0
|
||||
endfunction
|
||||
|
||||
function! scala#GetPrevCodeLine(lnum)
|
||||
" This needs to skip comment lines
|
||||
return prevnonblank(a:lnum - 1)
|
||||
endfunction
|
||||
|
||||
function! scala#InvertBracketType(openBracket, closedBracket)
|
||||
if a:openBracket == '('
|
||||
return [ '{', '}' ]
|
||||
else
|
||||
return [ '(', ')' ]
|
||||
endif
|
||||
endfunction
|
||||
|
||||
function! scala#Testhelper(lnum, line, openBracket, closedBracket, iteration)
|
||||
let bracketCount = scala#CountBrackets(a:line, a:openBracket, a:closedBracket)
|
||||
" There are more '}' braces than '{' on this line so it may be completing the function definition
|
||||
if bracketCount < 0
|
||||
let [matchedLNum, matchedColNum] = scala#GetLineAndColumnThatMatchesBracket(a:openBracket, a:closedBracket)
|
||||
if matchedLNum == a:lnum
|
||||
return -1
|
||||
endif
|
||||
let matchedLine = scala#GetLine(matchedLNum)
|
||||
if ! scala#MatchesIncompleteDefValr(matchedLine)
|
||||
let bracketLine = substitute(substitute(matchedLine, '\%' . matchedColNum . 'c.*$', '', ''), '[^{}()]', '', 'g')
|
||||
if bracketLine =~ '}$'
|
||||
return scala#Testhelper(matchedLNum, matchedLine, '{', '}', a:iteration + 1)
|
||||
elseif bracketLine =~ ')$'
|
||||
return scala#Testhelper(matchedLNum, matchedLine, '(', ')', a:iteration + 1)
|
||||
else
|
||||
let prevCodeLNum = scala#GetPrevCodeLine(matchedLNum)
|
||||
if scala#MatchesIncompleteDefValr(scala#GetLine(prevCodeLNum))
|
||||
return prevCodeLNum
|
||||
else
|
||||
return -1
|
||||
endif
|
||||
endif
|
||||
else
|
||||
" return indent value instead
|
||||
return matchedLNum
|
||||
endif
|
||||
" There's an equal number of '{' and '}' on this line so it may be a single line function definition
|
||||
elseif bracketCount == 0
|
||||
if a:iteration == 0
|
||||
let otherBracketType = scala#InvertBracketType(a:openBracket, a:closedBracket)
|
||||
return scala#Testhelper(a:lnum, a:line, otherBracketType[0], otherBracketType[1], a:iteration + 1)
|
||||
else
|
||||
let prevCodeLNum = scala#GetPrevCodeLine(a:lnum)
|
||||
let prevCodeLine = scala#GetLine(prevCodeLNum)
|
||||
if scala#MatchesIncompleteDefValr(prevCodeLine) && prevCodeLine !~ '{\s*$'
|
||||
return prevCodeLNum
|
||||
else
|
||||
let possibleIfElse = scala#LineCompletesIfElse(a:lnum, a:line)
|
||||
if possibleIfElse != 0
|
||||
let defValrLine = prevnonblank(possibleIfElse - 1)
|
||||
let possibleDefValr = scala#GetLine(defValrLine)
|
||||
if scala#MatchesIncompleteDefValr(possibleDefValr) && possibleDefValr =~ '^.*=\s*$'
|
||||
return possibleDefValr
|
||||
else
|
||||
return -1
|
||||
endif
|
||||
else
|
||||
return -1
|
||||
endif
|
||||
endif
|
||||
endif
|
||||
else
|
||||
return -1
|
||||
endif
|
||||
endfunction
|
||||
|
||||
function! scala#Test(lnum, line, openBracket, closedBracket)
|
||||
return scala#Testhelper(a:lnum, a:line, a:openBracket, a:closedBracket, 0)
|
||||
endfunction
|
||||
|
||||
function! scala#LineCompletesDefValr(lnum, line)
|
||||
let bracketCount = scala#CountBrackets(a:line, '{', '}')
|
||||
if bracketCount < 0
|
||||
let matchedBracket = scala#GetLineThatMatchesBracket('{', '}')
|
||||
if ! scala#MatchesIncompleteDefValr(scala#GetLine(matchedBracket))
|
||||
let possibleDefValr = scala#GetLine(prevnonblank(matchedBracket - 1))
|
||||
if matchedBracket != -1 && scala#MatchesIncompleteDefValr(possibleDefValr)
|
||||
return 1
|
||||
else
|
||||
return 0
|
||||
endif
|
||||
else
|
||||
return 0
|
||||
endif
|
||||
elseif bracketCount == 0
|
||||
let bracketCount = scala#CountBrackets(a:line, '(', ')')
|
||||
if bracketCount < 0
|
||||
let matchedBracket = scala#GetLineThatMatchesBracket('(', ')')
|
||||
if ! scala#MatchesIncompleteDefValr(scala#GetLine(matchedBracket))
|
||||
let possibleDefValr = scala#GetLine(prevnonblank(matchedBracket - 1))
|
||||
if matchedBracket != -1 && scala#MatchesIncompleteDefValr(possibleDefValr)
|
||||
return 1
|
||||
else
|
||||
return 0
|
||||
endif
|
||||
else
|
||||
return 0
|
||||
endif
|
||||
elseif bracketCount == 0
|
||||
let possibleDefValr = scala#GetLine(prevnonblank(a:lnum - 1))
|
||||
if scala#MatchesIncompleteDefValr(possibleDefValr) && possibleDefValr =~ '^.*=\s*$'
|
||||
return 1
|
||||
else
|
||||
let possibleIfElse = scala#LineCompletesIfElse(a:lnum, a:line)
|
||||
if possibleIfElse != 0
|
||||
let possibleDefValr = scala#GetLine(prevnonblank(possibleIfElse - 1))
|
||||
if scala#MatchesIncompleteDefValr(possibleDefValr) && possibleDefValr =~ '^.*=\s*$'
|
||||
return 2
|
||||
else
|
||||
return 0
|
||||
endif
|
||||
else
|
||||
return 0
|
||||
endif
|
||||
endif
|
||||
else
|
||||
return 0
|
||||
endif
|
||||
endif
|
||||
endfunction
|
||||
|
||||
function! scala#SpecificLineCompletesBrackets(lnum, openBracket, closedBracket)
|
||||
let savedpos = getpos('.')
|
||||
call setpos('.', [savedpos[0], a:lnum, 9999, savedpos[3]])
|
||||
let retv = scala#LineCompletesBrackets(a:openBracket, a:closedBracket)
|
||||
call setpos('.', savedpos)
|
||||
|
||||
return retv
|
||||
endfunction
|
||||
|
||||
function! scala#LineCompletesBrackets(openBracket, closedBracket)
|
||||
let savedpos = getpos('.')
|
||||
let offline = 0
|
||||
while offline == 0
|
||||
let [lnum, colnum] = searchpos(a:closedBracket, 'Wb')
|
||||
let [lnumA, colnumA] = searchpairpos(a:openBracket, '', a:closedBracket, 'Wbn')
|
||||
if lnum != lnumA
|
||||
let [lnumB, colnumB] = searchpairpos(a:openBracket, '', a:closedBracket, 'Wbnr')
|
||||
let offline = 1
|
||||
endif
|
||||
endwhile
|
||||
call setpos('.', savedpos)
|
||||
if lnumA == lnumB && colnumA == colnumB
|
||||
return lnumA
|
||||
else
|
||||
return -1
|
||||
endif
|
||||
endfunction
|
||||
|
||||
function! GetScalaIndent()
|
||||
" Find a non-blank line above the current line.
|
||||
let prevlnum = prevnonblank(v:lnum - 1)
|
||||
|
||||
" Hit the start of the file, use zero indent.
|
||||
if prevlnum == 0
|
||||
return 0
|
||||
endif
|
||||
|
||||
let ind = indent(prevlnum)
|
||||
let originalIndentValue = ind
|
||||
let prevline = scala#GetLine(prevlnum)
|
||||
let curlnum = v:lnum
|
||||
let curline = scala#GetLine(curlnum)
|
||||
if get(g:, 'scala_scaladoc_indent', 0)
|
||||
let star_indent = 2
|
||||
else
|
||||
let star_indent = 1
|
||||
end
|
||||
|
||||
if prevline =~ '^\s*/\*\*'
|
||||
if prevline =~ '\*/\s*$'
|
||||
return ind
|
||||
else
|
||||
return ind + star_indent
|
||||
endif
|
||||
endif
|
||||
|
||||
if curline =~ '^\s*\*'
|
||||
return cindent(curlnum)
|
||||
endif
|
||||
|
||||
" If this line starts with a { then make it indent the same as the previous line
|
||||
if curline =~ '^\s*{'
|
||||
call scala#ConditionalConfirm("1")
|
||||
" Unless, of course, the previous one is a { as well
|
||||
if prevline !~ '^\s*{'
|
||||
call scala#ConditionalConfirm("2")
|
||||
return indent(prevlnum)
|
||||
endif
|
||||
endif
|
||||
|
||||
" '.' continuations
|
||||
if curline =~ '^\s*\.'
|
||||
if prevline =~ '^\s*\.'
|
||||
return ind
|
||||
else
|
||||
return ind + &shiftwidth
|
||||
endif
|
||||
endif
|
||||
|
||||
" Indent html literals
|
||||
if prevline !~ '/>\s*$' && prevline =~ '^\s*<[a-zA-Z][^>]*>\s*$'
|
||||
call scala#ConditionalConfirm("3")
|
||||
return ind + &shiftwidth
|
||||
endif
|
||||
|
||||
" assumes curly braces around try-block
|
||||
if curline =~ '^\s*}\s*\<catch\>'
|
||||
return ind - &shiftwidth
|
||||
elseif curline =~ '^\s*\<catch\>'
|
||||
return ind
|
||||
endif
|
||||
|
||||
" Add a 'shiftwidth' after lines that start a block
|
||||
" If 'if', 'for' or 'while' end with ), this is a one-line block
|
||||
" If 'val', 'var', 'def' end with =, this is a one-line block
|
||||
if (prevline =~ '^\s*\<\%(\%(}\?\s*else\s\+\)\?if\|for\|while\)\>.*[)=]\s*$' && scala#NumberOfBraceGroups(prevline) <= 1)
|
||||
\ || prevline =~ '^\s*' . s:defMatcher . '.*=\s*$'
|
||||
\ || prevline =~ '^\s*\<va[lr]\>.*[=]\s*$'
|
||||
\ || prevline =~ '^\s*\%(}\s*\)\?\<else\>\s*$'
|
||||
\ || prevline =~ '=\s*$'
|
||||
call scala#ConditionalConfirm("4")
|
||||
let ind = ind + &shiftwidth
|
||||
elseif prevline =~ '^\s*\<\%(}\?\s*else\s\+\)\?if\>' && curline =~ '^\s*}\?\s*\<else\>'
|
||||
return ind
|
||||
endif
|
||||
|
||||
let lineCompletedBrackets = 0
|
||||
let bracketCount = scala#CountBrackets(prevline, '{', '}')
|
||||
if bracketCount > 0 || prevline =~ '.*{\s*$'
|
||||
call scala#ConditionalConfirm("5b")
|
||||
let ind = ind + &shiftwidth
|
||||
elseif bracketCount < 0
|
||||
call scala#ConditionalConfirm("6b")
|
||||
" if the closing brace actually completes the braces entirely, then we
|
||||
" have to indent to line that started the whole thing
|
||||
let completeLine = scala#LineCompletesBrackets('{', '}')
|
||||
if completeLine != -1
|
||||
call scala#ConditionalConfirm("8b")
|
||||
let prevCompleteLine = scala#GetLine(prevnonblank(completeLine - 1))
|
||||
" However, what actually started this part looks like it was a function
|
||||
" definition, so we need to indent to that line instead. This is
|
||||
" actually pretty weak at the moment.
|
||||
if prevCompleteLine =~ '=\s*$'
|
||||
call scala#ConditionalConfirm("9b")
|
||||
let ind = indent(prevnonblank(completeLine - 1))
|
||||
else
|
||||
call scala#ConditionalConfirm("10b")
|
||||
let ind = indent(completeLine)
|
||||
endif
|
||||
else
|
||||
let lineCompletedBrackets = 1
|
||||
endif
|
||||
endif
|
||||
|
||||
if ind == originalIndentValue
|
||||
let bracketCount = scala#CountBrackets(prevline, '(', ')')
|
||||
if bracketCount > 0 || prevline =~ '.*(\s*$'
|
||||
call scala#ConditionalConfirm("5a")
|
||||
let ind = ind + &shiftwidth
|
||||
elseif bracketCount < 0
|
||||
call scala#ConditionalConfirm("6a")
|
||||
" if the closing brace actually completes the braces entirely, then we
|
||||
" have to indent to line that started the whole thing
|
||||
let completeLine = scala#LineCompletesBrackets('(', ')')
|
||||
if completeLine != -1 && prevline !~ '^.*{\s*$'
|
||||
call scala#ConditionalConfirm("8a")
|
||||
let prevCompleteLine = scala#GetLine(prevnonblank(completeLine - 1))
|
||||
" However, what actually started this part looks like it was a function
|
||||
" definition, so we need to indent to that line instead. This is
|
||||
" actually pretty weak at the moment.
|
||||
if prevCompleteLine =~ '=\s*$'
|
||||
call scala#ConditionalConfirm("9a")
|
||||
let ind = indent(prevnonblank(completeLine - 1))
|
||||
else
|
||||
call scala#ConditionalConfirm("10a")
|
||||
let ind = indent(completeLine)
|
||||
endif
|
||||
else
|
||||
" This is the only part that's different from from the '{', '}' one below
|
||||
" Yup... some refactoring is necessary at some point.
|
||||
let ind = ind + (bracketCount * &shiftwidth)
|
||||
let lineCompletedBrackets = 1
|
||||
endif
|
||||
endif
|
||||
endif
|
||||
|
||||
if curline =~ '^\s*}\?\s*\<else\>\%(\s\+\<if\>\s*(.*)\)\?\s*{\?\s*$' &&
|
||||
\ ! scala#LineIsCompleteIf(prevline) &&
|
||||
\ prevline !~ '^.*}\s*$'
|
||||
let ind = ind - &shiftwidth
|
||||
endif
|
||||
|
||||
" Subtract a 'shiftwidth' on '}' or html
|
||||
let curCurlyCount = scala#CountCurlies(curline)
|
||||
if curCurlyCount < 0
|
||||
call scala#ConditionalConfirm("14a")
|
||||
let matchline = scala#CurlyMatcher()
|
||||
return indent(matchline)
|
||||
elseif curline =~ '^\s*</[a-zA-Z][^>]*>'
|
||||
call scala#ConditionalConfirm("14c")
|
||||
return ind - &shiftwidth
|
||||
endif
|
||||
|
||||
let prevParenCount = scala#CountParens(prevline)
|
||||
if prevline =~ '^\s*\<for\>.*$' && prevParenCount > 0
|
||||
call scala#ConditionalConfirm("15")
|
||||
let ind = indent(prevlnum) + 5
|
||||
endif
|
||||
|
||||
let prevCurlyCount = scala#CountCurlies(prevline)
|
||||
if prevCurlyCount == 0 && prevline =~ '^.*\%(=>\|⇒\)\s*$' && prevline !~ '^\s*this\s*:.*\%(=>\|⇒\)\s*$' && curline !~ '^\s*\<case\>'
|
||||
call scala#ConditionalConfirm("16")
|
||||
let ind = ind + &shiftwidth
|
||||
endif
|
||||
|
||||
if ind == originalIndentValue && curline =~ '^\s*\<case\>'
|
||||
call scala#ConditionalConfirm("17")
|
||||
let parentCase = scala#IsParentCase()
|
||||
if parentCase != -1
|
||||
call scala#ConditionalConfirm("17a")
|
||||
return indent(parentCase)
|
||||
endif
|
||||
endif
|
||||
|
||||
if prevline =~ '^\s*\*/'
|
||||
\ || prevline =~ '*/\s*$'
|
||||
call scala#ConditionalConfirm("18")
|
||||
let ind = ind - star_indent
|
||||
endif
|
||||
|
||||
if scala#LineEndsInIncomplete(prevline)
|
||||
call scala#ConditionalConfirm("19")
|
||||
return ind
|
||||
endif
|
||||
|
||||
if scala#LineIsAClosingXML(prevline)
|
||||
if scala#LineCompletesXML(prevlnum, prevline)
|
||||
call scala#ConditionalConfirm("20a")
|
||||
return ind - &shiftwidth
|
||||
else
|
||||
call scala#ConditionalConfirm("20b")
|
||||
return ind
|
||||
endif
|
||||
endif
|
||||
|
||||
if ind == originalIndentValue
|
||||
"let indentMultiplier = scala#LineCompletesDefValr(prevlnum, prevline)
|
||||
"if indentMultiplier != 0
|
||||
" call scala#ConditionalConfirm("19a")
|
||||
" let ind = ind - (indentMultiplier * &shiftwidth)
|
||||
let defValrLine = scala#Test(prevlnum, prevline, '{', '}')
|
||||
if defValrLine != -1
|
||||
call scala#ConditionalConfirm("21a")
|
||||
let ind = indent(defValrLine)
|
||||
elseif lineCompletedBrackets == 0
|
||||
call scala#ConditionalConfirm("21b")
|
||||
if scala#GetLine(prevnonblank(prevlnum - 1)) =~ '^.*\<else\>\s*\%(//.*\)\?$'
|
||||
call scala#ConditionalConfirm("21c")
|
||||
let ind = ind - &shiftwidth
|
||||
elseif scala#LineCompletesIfElse(prevlnum, prevline)
|
||||
call scala#ConditionalConfirm("21d")
|
||||
let ind = ind - &shiftwidth
|
||||
elseif scala#CountParens(curline) < 0 && curline =~ '^\s*)' && scala#GetLine(scala#GetLineThatMatchesBracket('(', ')')) =~ '.*(\s*$'
|
||||
" Handles situations that look like this:
|
||||
"
|
||||
" val a = func(
|
||||
" 10
|
||||
" )
|
||||
"
|
||||
" or
|
||||
"
|
||||
" val a = func(
|
||||
" 10
|
||||
" ).somethingHere()
|
||||
call scala#ConditionalConfirm("21e")
|
||||
let ind = ind - &shiftwidth
|
||||
endif
|
||||
endif
|
||||
endif
|
||||
|
||||
call scala#ConditionalConfirm("returning " . ind)
|
||||
|
||||
return ind
|
||||
endfunction
|
||||
|
||||
let &cpo = s:keepcpo
|
||||
unlet s:keepcpo
|
||||
|
||||
" vim:set sw=2 sts=2 ts=8 et:
|
||||
" vim600:fdm=marker fdl=1 fdc=0:
|
||||
@@ -1,9 +1,9 @@
|
||||
" Vim indent file
|
||||
" Language: Tera Term Language (TTL)
|
||||
" Based on Tera Term Version 4.86
|
||||
" Based on Tera Term Version 4.92
|
||||
" Maintainer: Ken Takata
|
||||
" URL: https://github.com/k-takata/vim-teraterm
|
||||
" Last Change: 2015 Jun 4
|
||||
" Last Change: 2016 Aug 17
|
||||
" Filenames: *.ttl
|
||||
" License: VIM License
|
||||
|
||||
@@ -25,9 +25,7 @@ endif
|
||||
" The shiftwidth() function is relatively new.
|
||||
" Don't require it to exist.
|
||||
if exists('*shiftwidth')
|
||||
function s:sw() abort
|
||||
return shiftwidth()
|
||||
endfunction
|
||||
let s:sw = function('shiftwidth')
|
||||
else
|
||||
function s:sw() abort
|
||||
return &shiftwidth
|
||||
@@ -48,7 +46,7 @@ function! GetTeraTermIndent(lnum)
|
||||
|
||||
let l:ind = l:previ
|
||||
|
||||
if l:prevl =~ '^\s*if\>.*\<then\s*$'
|
||||
if l:prevl =~ '^\s*if\>.*\<then\>'
|
||||
" previous line opened a block
|
||||
let l:ind += s:sw()
|
||||
endif
|
||||
|
||||
@@ -37,7 +37,7 @@ function s:FindPrevLessIndentedLine(lnum, ...)
|
||||
let curindent = a:0 ? a:1 : indent(a:lnum)
|
||||
while prevlnum
|
||||
\&& indent(prevlnum) >= curindent
|
||||
\&& getline(prevlnum) !~# '^\s*#'
|
||||
\&& getline(prevlnum) =~# '^\s*#'
|
||||
let prevlnum = prevnonblank(prevlnum-1)
|
||||
endwhile
|
||||
return prevlnum
|
||||
@@ -51,11 +51,33 @@ function s:FindPrevLEIndentedLineMatchingRegex(lnum, regex)
|
||||
return plilnum
|
||||
endfunction
|
||||
|
||||
let s:mapkeyregex='\v^\s*%(\''%([^'']|'''')*\'''.
|
||||
\ '|\"%([^"\\]|\\.)*\"'.
|
||||
\ '|%(%(\:\ )@!.)*)\:%(\ |$)'
|
||||
let s:mapkeyregex='\v^\s*\#@!\S@=%(\''%([^'']|\''\'')*\'''.
|
||||
\ '|\"%([^"\\]|\\.)*\"'.
|
||||
\ '|%(%(\:\ )@!.)*)\:%(\ |$)'
|
||||
let s:liststartregex='\v^\s*%(\-%(\ |$))'
|
||||
|
||||
let s:c_ns_anchor_char = '\v%([\n\r\uFEFF \t,[\]{}]@!\p)'
|
||||
let s:c_ns_anchor_name = s:c_ns_anchor_char.'+'
|
||||
let s:c_ns_anchor_property = '\v\&'.s:c_ns_anchor_name
|
||||
|
||||
let s:ns_word_char = '\v[[:alnum:]_\-]'
|
||||
let s:ns_tag_char = '\v%(%\x\x|'.s:ns_word_char.'|[#/;?:@&=+$.~*''()])'
|
||||
let s:c_named_tag_handle = '\v\!'.s:ns_word_char.'+\!'
|
||||
let s:c_secondary_tag_handle = '\v\!\!'
|
||||
let s:c_primary_tag_handle = '\v\!'
|
||||
let s:c_tag_handle = '\v%('.s:c_named_tag_handle.
|
||||
\ '|'.s:c_secondary_tag_handle.
|
||||
\ '|'.s:c_primary_tag_handle.')'
|
||||
let s:c_ns_shorthand_tag = '\v'.s:c_tag_handle . s:ns_tag_char.'+'
|
||||
let s:c_non_specific_tag = '\v\!'
|
||||
let s:ns_uri_char = '\v%(%\x\x|'.s:ns_word_char.'\v|[#/;?:@&=+$,.!~*''()[\]])'
|
||||
let s:c_verbatim_tag = '\v\!\<'.s:ns_uri_char.'+\>'
|
||||
let s:c_ns_tag_property = '\v'.s:c_verbatim_tag.
|
||||
\ '\v|'.s:c_ns_shorthand_tag.
|
||||
\ '\v|'.s:c_non_specific_tag
|
||||
|
||||
let s:block_scalar_header = '\v[|>]%([+-]?[1-9]|[1-9]?[+-])?'
|
||||
|
||||
function GetYAMLIndent(lnum)
|
||||
if a:lnum == 1 || !prevnonblank(a:lnum-1)
|
||||
return 0
|
||||
@@ -127,7 +149,10 @@ function GetYAMLIndent(lnum)
|
||||
" - List with
|
||||
" multiline scalar
|
||||
return previndent+2
|
||||
elseif prevline =~# s:mapkeyregex
|
||||
elseif prevline =~# s:mapkeyregex . '\v\s*%(%('.s:c_ns_tag_property.
|
||||
\ '\v|'.s:c_ns_anchor_property.
|
||||
\ '\v|'.s:block_scalar_header.
|
||||
\ '\v)%(\s+|\s*%(\#.*)?$))*'
|
||||
" Mapping with: value
|
||||
" that is multiline scalar
|
||||
return previndent+s:shiftwidth()
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
" Vim Keymap file for Hanyu Pinyin tone marks through numbers.
|
||||
" Maintainer: Fredrik Roubert <roubert@df.lth.se>
|
||||
" Maintainer: Fredrik Roubert <fredrik@roubert.name>
|
||||
" Last Changed: February 15, 2004
|
||||
|
||||
" All characters are given literally.
|
||||
|
||||
94
runtime/keymap/russian-jcukenmac.vim
Normal file
94
runtime/keymap/russian-jcukenmac.vim
Normal file
@@ -0,0 +1,94 @@
|
||||
" Vim Keymap file for russian characters, layout 'jcuken', Mac variant
|
||||
|
||||
" Derived from russian-jcuken.vim by Artem Chuprina <ran@ran.pp.ru>
|
||||
" Maintainer: Anton Fonarev <avfonarev@gmail.com>
|
||||
" Last Changed: 2016 August 17
|
||||
|
||||
" All characters are given literally, conversion to another encoding (e.g.,
|
||||
" UTF-8) should work.
|
||||
|
||||
scriptencoding utf-8
|
||||
|
||||
let b:keymap_name = "ru"
|
||||
|
||||
loadkeymap
|
||||
|
||||
\| Ё CYRILLIC CAPITAL LETTER IO
|
||||
\\ ё CYRILLIC SMALL LETTER IO
|
||||
|
||||
F А CYRILLIC CAPITAL LETTER A
|
||||
< Б CYRILLIC CAPITAL LETTER BE
|
||||
D В CYRILLIC CAPITAL LETTER VE
|
||||
U Г CYRILLIC CAPITAL LETTER GHE
|
||||
L Д CYRILLIC CAPITAL LETTER DE
|
||||
T Е CYRILLIC CAPITAL LETTER IE
|
||||
: Ж CYRILLIC CAPITAL LETTER ZHE
|
||||
P З CYRILLIC CAPITAL LETTER ZE
|
||||
B И CYRILLIC CAPITAL LETTER I
|
||||
Q Й CYRILLIC CAPITAL LETTER SHORT I
|
||||
R К CYRILLIC CAPITAL LETTER KA
|
||||
K Л CYRILLIC CAPITAL LETTER EL
|
||||
V М CYRILLIC CAPITAL LETTER EM
|
||||
Y Н CYRILLIC CAPITAL LETTER EN
|
||||
J О CYRILLIC CAPITAL LETTER O
|
||||
G П CYRILLIC CAPITAL LETTER PE
|
||||
H Р CYRILLIC CAPITAL LETTER ER
|
||||
C С CYRILLIC CAPITAL LETTER ES
|
||||
N Т CYRILLIC CAPITAL LETTER TE
|
||||
E У CYRILLIC CAPITAL LETTER U
|
||||
A Ф CYRILLIC CAPITAL LETTER EF
|
||||
{ Х CYRILLIC CAPITAL LETTER HA
|
||||
W Ц CYRILLIC CAPITAL LETTER TSE
|
||||
X Ч CYRILLIC CAPITAL LETTER CHE
|
||||
I Ш CYRILLIC CAPITAL LETTER SHA
|
||||
O Щ CYRILLIC CAPITAL LETTER SHCHA
|
||||
} Ъ CYRILLIC CAPITAL LETTER HARD SIGN
|
||||
S Ы CYRILLIC CAPITAL LETTER YERU
|
||||
M Ь CYRILLIC CAPITAL LETTER SOFT SIGN
|
||||
\" Э CYRILLIC CAPITAL LETTER E
|
||||
> Ю CYRILLIC CAPITAL LETTER YU
|
||||
Z Я CYRILLIC CAPITAL LETTER YA
|
||||
f а CYRILLIC SMALL LETTER A
|
||||
, б CYRILLIC SMALL LETTER BE
|
||||
d в CYRILLIC SMALL LETTER VE
|
||||
u г CYRILLIC SMALL LETTER GHE
|
||||
l д CYRILLIC SMALL LETTER DE
|
||||
t е CYRILLIC SMALL LETTER IE
|
||||
; ж CYRILLIC SMALL LETTER ZHE
|
||||
p з CYRILLIC SMALL LETTER ZE
|
||||
b и CYRILLIC SMALL LETTER I
|
||||
q й CYRILLIC SMALL LETTER SHORT I
|
||||
r к CYRILLIC SMALL LETTER KA
|
||||
k л CYRILLIC SMALL LETTER EL
|
||||
v м CYRILLIC SMALL LETTER EM
|
||||
y н CYRILLIC SMALL LETTER EN
|
||||
j о CYRILLIC SMALL LETTER O
|
||||
g п CYRILLIC SMALL LETTER PE
|
||||
h р CYRILLIC SMALL LETTER ER
|
||||
c с CYRILLIC SMALL LETTER ES
|
||||
n т CYRILLIC SMALL LETTER TE
|
||||
e у CYRILLIC SMALL LETTER U
|
||||
a ф CYRILLIC SMALL LETTER EF
|
||||
[ х CYRILLIC SMALL LETTER HA
|
||||
w ц CYRILLIC SMALL LETTER TSE
|
||||
x ч CYRILLIC SMALL LETTER CHE
|
||||
i ш CYRILLIC SMALL LETTER SHA
|
||||
o щ CYRILLIC SMALL LETTER SHCHA
|
||||
] ъ CYRILLIC SMALL LETTER HARD SIGN
|
||||
s ы CYRILLIC SMALL LETTER YERU
|
||||
m ь CYRILLIC SMALL LETTER SOFT SIGN
|
||||
' э CYRILLIC SMALL LETTER E
|
||||
. ю CYRILLIC SMALL LETTER YU
|
||||
z я CYRILLIC SMALL LETTER YA
|
||||
|
||||
§ >
|
||||
± <
|
||||
@ "
|
||||
# №
|
||||
$ %
|
||||
% :
|
||||
^ ,
|
||||
& .
|
||||
* ;
|
||||
` ]
|
||||
~ [
|
||||
@@ -1,7 +1,7 @@
|
||||
" These commands create the option window.
|
||||
"
|
||||
" Maintainer: Bram Moolenaar <Bram@vim.org>
|
||||
" Last Change: 2016 Apr 30
|
||||
" Last Change: 2016 Aug 21
|
||||
|
||||
" If there already is an option window, jump to that one.
|
||||
if bufwinnr("option-window") > 0
|
||||
@@ -1203,8 +1203,8 @@ endif
|
||||
if has("langmap")
|
||||
call append("$", "langmap\tlist of characters that are translated in Normal mode")
|
||||
call <SID>OptionG("lmap", &lmap)
|
||||
call append("$", "langnoremap\tdon't apply 'langmap' to mapped characters")
|
||||
call <SID>BinOptionG("lnr", &lnr)
|
||||
call append("$", "langremap\tapply 'langmap' to mapped characters")
|
||||
call <SID>BinOptionG("lrm", &lrm)
|
||||
endif
|
||||
if has("xim")
|
||||
call append("$", "imdisable\twhen set never use IM; overrules following IM options")
|
||||
@@ -1307,6 +1307,11 @@ call append("$", "\t(local to buffer)")
|
||||
call <SID>BinOptionL("bl")
|
||||
call append("$", "debug\tset to \"msg\" to see all error messages")
|
||||
call append("$", " \tset debug=" . &debug)
|
||||
if has("signs")
|
||||
call append("$", "signcolumn\twhether to show the signcolumn")
|
||||
call append("$", "\t(local to window)")
|
||||
call <SID>OptionL("scl")
|
||||
endif
|
||||
if has("mzscheme")
|
||||
call append("$", "mzquantum\tinterval in milliseconds between polls for MzScheme threads")
|
||||
call append("$", " \tset mzq=" . &mzq)
|
||||
|
||||
23
runtime/pack/dist/opt/matchit/plugin/matchit.vim
vendored
23
runtime/pack/dist/opt/matchit/plugin/matchit.vim
vendored
@@ -1,8 +1,9 @@
|
||||
" matchit.vim: (global plugin) Extended "%" matching
|
||||
" Last Change: Fri Jan 25 10:00 AM 2008 EST
|
||||
" Last Change: 2016 Aug 21
|
||||
" Maintainer: Benji Fisher PhD <benji@member.AMS.org>
|
||||
" Version: 1.13.2, for Vim 6.3+
|
||||
" Fix from Fernando Torres included.
|
||||
" Improvement from Ken Takata included.
|
||||
" URL: http://www.vim.org/script.php?script_id=39
|
||||
|
||||
" Documentation:
|
||||
@@ -44,6 +45,7 @@ endif
|
||||
let loaded_matchit = 1
|
||||
let s:last_mps = ""
|
||||
let s:last_words = ":"
|
||||
let s:patBR = ""
|
||||
|
||||
let s:save_cpo = &cpo
|
||||
set cpo&vim
|
||||
@@ -121,8 +123,8 @@ function! s:Match_wrapper(word, forward, mode) range
|
||||
execute "let match_words =" b:match_words
|
||||
endif
|
||||
" Thanks to Preben "Peppe" Guldberg and Bram Moolenaar for this suggestion!
|
||||
if (match_words != s:last_words) || (&mps != s:last_mps) ||
|
||||
\ exists("b:match_debug")
|
||||
if (match_words != s:last_words) || (&mps != s:last_mps)
|
||||
\ || exists("b:match_debug")
|
||||
let s:last_mps = &mps
|
||||
" The next several lines were here before
|
||||
" BF started messing with this script.
|
||||
@@ -148,6 +150,10 @@ function! s:Match_wrapper(word, forward, mode) range
|
||||
if exists("b:match_debug")
|
||||
let b:match_pat = s:pat
|
||||
endif
|
||||
" Reconstruct the version with unresolved backrefs.
|
||||
let s:patBR = substitute(match_words.',',
|
||||
\ s:notslash.'\zs[,:]*,[,:]*', ',', 'g')
|
||||
let s:patBR = substitute(s:patBR, s:notslash.'\zs:\{2,}', ':', 'g')
|
||||
endif
|
||||
|
||||
" Second step: set the following local variables:
|
||||
@@ -192,14 +198,10 @@ function! s:Match_wrapper(word, forward, mode) range
|
||||
" group = colon-separated list of patterns, one of which matches
|
||||
" = ini:mid:fin or ini:fin
|
||||
"
|
||||
" Reconstruct the version with unresolved backrefs.
|
||||
let patBR = substitute(match_words.',',
|
||||
\ s:notslash.'\zs[,:]*,[,:]*', ',', 'g')
|
||||
let patBR = substitute(patBR, s:notslash.'\zs:\{2,}', ':', 'g')
|
||||
" Now, set group and groupBR to the matching group: 'if:endif' or
|
||||
" 'while:endwhile' or whatever. A bit of a kluge: s:Choose() returns
|
||||
" group . "," . groupBR, and we pick it apart.
|
||||
let group = s:Choose(s:pat, matchline, ",", ":", prefix, suffix, patBR)
|
||||
let group = s:Choose(s:pat, matchline, ",", ":", prefix, suffix, s:patBR)
|
||||
let i = matchend(group, s:notslash . ",")
|
||||
let groupBR = strpart(group, i)
|
||||
let group = strpart(group, 0, i-1)
|
||||
@@ -661,6 +663,7 @@ fun! s:MultiMatch(spflag, mode)
|
||||
\ exists("b:match_debug")
|
||||
let s:last_words = match_words
|
||||
let s:last_mps = &mps
|
||||
let match_words = match_words . (strlen(match_words) ? "," : "") . default
|
||||
if match_words !~ s:notslash . '\\\d'
|
||||
let s:do_BR = 0
|
||||
let s:pat = match_words
|
||||
@@ -668,8 +671,8 @@ fun! s:MultiMatch(spflag, mode)
|
||||
let s:do_BR = 1
|
||||
let s:pat = s:ParseWords(match_words)
|
||||
endif
|
||||
let s:all = '\%(' . substitute(s:pat . (strlen(s:pat)?",":"") . default,
|
||||
\ '[,:]\+','\\|','g') . '\)'
|
||||
let s:all = '\%(' . substitute(s:pat . (strlen(s:pat) ? "," : "") . default,
|
||||
\ '[,:]\+', '\\|', 'g') . '\)'
|
||||
if exists("b:match_debug")
|
||||
let b:match_pat = s:pat
|
||||
endif
|
||||
|
||||
@@ -61,7 +61,6 @@ an 50.10.320 &Syntax.AB.Ascii\ Doc :cal SetSyn("asciidoc")<CR>
|
||||
an 50.10.330 &Syntax.AB.ASP\ with\ VBScript :cal SetSyn("aspvbs")<CR>
|
||||
an 50.10.340 &Syntax.AB.ASP\ with\ Perl :cal SetSyn("aspperl")<CR>
|
||||
an 50.10.350 &Syntax.AB.Assembly.680x0 :cal SetSyn("asm68k")<CR>
|
||||
an 50.10.355 &Syntax.AB.Assembly.AVR :cal SetSyn("avra")<CR>
|
||||
an 50.10.360 &Syntax.AB.Assembly.Flat :cal SetSyn("fasm")<CR>
|
||||
an 50.10.370 &Syntax.AB.Assembly.GNU :cal SetSyn("asm")<CR>
|
||||
an 50.10.380 &Syntax.AB.Assembly.GNU\ H-8300 :cal SetSyn("asmh8300")<CR>
|
||||
@@ -162,31 +161,31 @@ an 50.30.290 &Syntax.DE.Doxygen.C\ with\ doxygen :cal SetSyn("c.doxygen")<CR>
|
||||
an 50.30.300 &Syntax.DE.Doxygen.C++\ with\ doxygen :cal SetSyn("cpp.doxygen")<CR>
|
||||
an 50.30.310 &Syntax.DE.Doxygen.IDL\ with\ doxygen :cal SetSyn("idl.doxygen")<CR>
|
||||
an 50.30.320 &Syntax.DE.Doxygen.Java\ with\ doxygen :cal SetSyn("java.doxygen")<CR>
|
||||
an 50.30.320 &Syntax.DE.Doxygen.DataScript\ with\ doxygen :cal SetSyn("datascript.doxygen")<CR>
|
||||
an 50.30.330 &Syntax.DE.Dracula :cal SetSyn("dracula")<CR>
|
||||
an 50.30.340 &Syntax.DE.DSSSL :cal SetSyn("dsl")<CR>
|
||||
an 50.30.350 &Syntax.DE.DTD :cal SetSyn("dtd")<CR>
|
||||
an 50.30.360 &Syntax.DE.DTML\ (Zope) :cal SetSyn("dtml")<CR>
|
||||
an 50.30.370 &Syntax.DE.DTrace :cal SetSyn("dtrace")<CR>
|
||||
an 50.30.380 &Syntax.DE.Dts/dtsi :cal SetSyn("dts")<CR>
|
||||
an 50.30.390 &Syntax.DE.Dylan.Dylan :cal SetSyn("dylan")<CR>
|
||||
an 50.30.400 &Syntax.DE.Dylan.Dylan\ interface :cal SetSyn("dylanintr")<CR>
|
||||
an 50.30.410 &Syntax.DE.Dylan.Dylan\ lid :cal SetSyn("dylanlid")<CR>
|
||||
an 50.30.430 &Syntax.DE.EDIF :cal SetSyn("edif")<CR>
|
||||
an 50.30.440 &Syntax.DE.Eiffel :cal SetSyn("eiffel")<CR>
|
||||
an 50.30.450 &Syntax.DE.Elinks\ config :cal SetSyn("elinks")<CR>
|
||||
an 50.30.460 &Syntax.DE.Elm\ filter\ rules :cal SetSyn("elmfilt")<CR>
|
||||
an 50.30.470 &Syntax.DE.Embedix\ Component\ Description :cal SetSyn("ecd")<CR>
|
||||
an 50.30.480 &Syntax.DE.ERicsson\ LANGuage :cal SetSyn("erlang")<CR>
|
||||
an 50.30.490 &Syntax.DE.ESMTP\ rc :cal SetSyn("esmtprc")<CR>
|
||||
an 50.30.500 &Syntax.DE.ESQL-C :cal SetSyn("esqlc")<CR>
|
||||
an 50.30.510 &Syntax.DE.Essbase\ script :cal SetSyn("csc")<CR>
|
||||
an 50.30.520 &Syntax.DE.Esterel :cal SetSyn("esterel")<CR>
|
||||
an 50.30.530 &Syntax.DE.Eterm\ config :cal SetSyn("eterm")<CR>
|
||||
an 50.30.540 &Syntax.DE.Eviews :cal SetSyn("eviews")<CR>
|
||||
an 50.30.550 &Syntax.DE.Exim\ conf :cal SetSyn("exim")<CR>
|
||||
an 50.30.560 &Syntax.DE.Expect :cal SetSyn("expect")<CR>
|
||||
an 50.30.570 &Syntax.DE.Exports :cal SetSyn("exports")<CR>
|
||||
an 50.30.330 &Syntax.DE.Doxygen.DataScript\ with\ doxygen :cal SetSyn("datascript.doxygen")<CR>
|
||||
an 50.30.340 &Syntax.DE.Dracula :cal SetSyn("dracula")<CR>
|
||||
an 50.30.350 &Syntax.DE.DSSSL :cal SetSyn("dsl")<CR>
|
||||
an 50.30.360 &Syntax.DE.DTD :cal SetSyn("dtd")<CR>
|
||||
an 50.30.370 &Syntax.DE.DTML\ (Zope) :cal SetSyn("dtml")<CR>
|
||||
an 50.30.380 &Syntax.DE.DTrace :cal SetSyn("dtrace")<CR>
|
||||
an 50.30.390 &Syntax.DE.Dts/dtsi :cal SetSyn("dts")<CR>
|
||||
an 50.30.400 &Syntax.DE.Dylan.Dylan :cal SetSyn("dylan")<CR>
|
||||
an 50.30.410 &Syntax.DE.Dylan.Dylan\ interface :cal SetSyn("dylanintr")<CR>
|
||||
an 50.30.420 &Syntax.DE.Dylan.Dylan\ lid :cal SetSyn("dylanlid")<CR>
|
||||
an 50.30.440 &Syntax.DE.EDIF :cal SetSyn("edif")<CR>
|
||||
an 50.30.450 &Syntax.DE.Eiffel :cal SetSyn("eiffel")<CR>
|
||||
an 50.30.460 &Syntax.DE.Elinks\ config :cal SetSyn("elinks")<CR>
|
||||
an 50.30.470 &Syntax.DE.Elm\ filter\ rules :cal SetSyn("elmfilt")<CR>
|
||||
an 50.30.480 &Syntax.DE.Embedix\ Component\ Description :cal SetSyn("ecd")<CR>
|
||||
an 50.30.490 &Syntax.DE.ERicsson\ LANGuage :cal SetSyn("erlang")<CR>
|
||||
an 50.30.500 &Syntax.DE.ESMTP\ rc :cal SetSyn("esmtprc")<CR>
|
||||
an 50.30.510 &Syntax.DE.ESQL-C :cal SetSyn("esqlc")<CR>
|
||||
an 50.30.520 &Syntax.DE.Essbase\ script :cal SetSyn("csc")<CR>
|
||||
an 50.30.530 &Syntax.DE.Esterel :cal SetSyn("esterel")<CR>
|
||||
an 50.30.540 &Syntax.DE.Eterm\ config :cal SetSyn("eterm")<CR>
|
||||
an 50.30.550 &Syntax.DE.Eviews :cal SetSyn("eviews")<CR>
|
||||
an 50.30.560 &Syntax.DE.Exim\ conf :cal SetSyn("exim")<CR>
|
||||
an 50.30.570 &Syntax.DE.Expect :cal SetSyn("expect")<CR>
|
||||
an 50.30.580 &Syntax.DE.Exports :cal SetSyn("exports")<CR>
|
||||
an 50.40.100 &Syntax.FG.Falcon :cal SetSyn("falcon")<CR>
|
||||
an 50.40.110 &Syntax.FG.Fantom :cal SetSyn("fan")<CR>
|
||||
an 50.40.120 &Syntax.FG.Fetchmail :cal SetSyn("fetchmail")<CR>
|
||||
@@ -328,7 +327,6 @@ an 50.70.270 &Syntax.M.Messages\ (/var/log) :cal SetSyn("messages")<CR>
|
||||
an 50.70.280 &Syntax.M.Metafont :cal SetSyn("mf")<CR>
|
||||
an 50.70.290 &Syntax.M.MetaPost :cal SetSyn("mp")<CR>
|
||||
an 50.70.300 &Syntax.M.MGL :cal SetSyn("mgl")<CR>
|
||||
an 50.70.305 &Syntax.M.MIX :cal SetSyn("mix")<CR>
|
||||
an 50.70.310 &Syntax.M.MMIX :cal SetSyn("mmix")<CR>
|
||||
an 50.70.320 &Syntax.M.Modconf :cal SetSyn("modconf")<CR>
|
||||
an 50.70.330 &Syntax.M.Model :cal SetSyn("model")<CR>
|
||||
|
||||
@@ -1,13 +1,10 @@
|
||||
" Vim syntax file
|
||||
" Language: xa 6502 cross assembler
|
||||
" Maintainer: Clemens Kirchgatterer <clemens@1541.org>
|
||||
" Last Change: 2014 Jan 05
|
||||
" Last Change: 2016 Aug 31
|
||||
|
||||
" For version 5.x: Clear all syntax items
|
||||
" For version 6.x: Quit when a syntax file was already loaded
|
||||
if version < 600
|
||||
syntax clear
|
||||
elseif exists("b:current_syntax")
|
||||
" quit when a syntax file was already loaded
|
||||
if exists("b:current_syntax")
|
||||
finish
|
||||
endif
|
||||
|
||||
@@ -138,29 +135,19 @@ syn match a65End excludenl /end$/ contained
|
||||
syn match a65Continue "\\$" contained
|
||||
|
||||
" Define the default highlighting.
|
||||
" For version 5.7 and earlier: only when not done already
|
||||
" For version 5.8 and later: only when an item doesn't have highlighting yet
|
||||
if version >= 508 || !exists("did_a65_syntax_inits")
|
||||
if version < 508
|
||||
let did_a65_syntax_inits = 1
|
||||
command -nargs=+ HiLink hi link <args>
|
||||
else
|
||||
command -nargs=+ HiLink hi def link <args>
|
||||
endif
|
||||
" Only when an item doesn't have highlighting yet
|
||||
|
||||
HiLink a65Section Special
|
||||
HiLink a65Address Special
|
||||
HiLink a65Comment Comment
|
||||
HiLink a65PreProc PreProc
|
||||
HiLink a65Number Number
|
||||
HiLink a65String String
|
||||
HiLink a65Type Statement
|
||||
HiLink a65Opcode Type
|
||||
HiLink a65PC Error
|
||||
HiLink a65Todo Todo
|
||||
HiLink a65HiLo Number
|
||||
hi def link a65Section Special
|
||||
hi def link a65Address Special
|
||||
hi def link a65Comment Comment
|
||||
hi def link a65PreProc PreProc
|
||||
hi def link a65Number Number
|
||||
hi def link a65String String
|
||||
hi def link a65Type Statement
|
||||
hi def link a65Opcode Type
|
||||
hi def link a65PC Error
|
||||
hi def link a65Todo Todo
|
||||
hi def link a65HiLo Number
|
||||
|
||||
delcommand HiLink
|
||||
endif
|
||||
|
||||
let b:current_syntax = "a65"
|
||||
|
||||
@@ -5,11 +5,8 @@
|
||||
" Last Change: 2013 Jun 13
|
||||
" Comment: Thanks to EPI-USE Labs for all your assistance. :)
|
||||
|
||||
" For version < 6.0: Clear all syntax items
|
||||
" For version >= 6.0: Quit when a syntax file was already loaded
|
||||
if version < 600
|
||||
syntax clear
|
||||
elseif exists("b:current_syntax")
|
||||
" quit when a syntax file was already loaded
|
||||
if exists("b:current_syntax")
|
||||
finish
|
||||
endif
|
||||
|
||||
@@ -43,11 +40,7 @@ syn match abapStringEscape contained "``"
|
||||
syn match abapNumber "\-\=\<\d\+\>"
|
||||
syn region abapHex matchgroup=abapHex start="X'" end="'"
|
||||
|
||||
if version >= 600
|
||||
setlocal iskeyword=48-57,_,A-Z,a-z,/
|
||||
else
|
||||
set iskeyword=48-57,_,A-Z,a-z,/
|
||||
endif
|
||||
setlocal iskeyword=48-57,_,A-Z,a-z,/
|
||||
|
||||
syn match abapNamespace "\</\w\+/"
|
||||
|
||||
@@ -175,38 +168,28 @@ syn keyword abapTodo contained TODO NOTE
|
||||
syn match abapTodo "\#EC\W\+\w\+"
|
||||
|
||||
" Define the default highlighting.
|
||||
" For version 5.7 and earlier: only when not done already
|
||||
" For version 5.8 and later: only when an item doesn't have highlighting yet
|
||||
if version >= 508 || !exists("did_abap_syntax_inits")
|
||||
if version < 508
|
||||
let did_abap_syntax_inits = 1
|
||||
command -nargs=+ HiLink hi link <args>
|
||||
else
|
||||
command -nargs=+ HiLink hi def link <args>
|
||||
endif
|
||||
" Only when an item doesn't have highlighting yet
|
||||
|
||||
HiLink abapError Error
|
||||
HiLink abapComment Comment
|
||||
HiLink abapInclude Include
|
||||
HiLink abapStatement Statement
|
||||
HiLink abapComplexStatement Statement
|
||||
HiLink abapSpecial Special
|
||||
HiLink abapNamespace Special
|
||||
HiLink abapSpecialTables Special
|
||||
HiLink abapSymbolOperator abapOperator
|
||||
HiLink abapOperator Operator
|
||||
HiLink abapCharString String
|
||||
HiLink abapString String
|
||||
HiLink abapFloat Float
|
||||
HiLink abapTypes Type
|
||||
HiLink abapSymbol Structure
|
||||
HiLink abapStructure Structure
|
||||
HiLink abapField Variable
|
||||
HiLink abapNumber Number
|
||||
HiLink abapHex Number
|
||||
hi def link abapError Error
|
||||
hi def link abapComment Comment
|
||||
hi def link abapInclude Include
|
||||
hi def link abapStatement Statement
|
||||
hi def link abapComplexStatement Statement
|
||||
hi def link abapSpecial Special
|
||||
hi def link abapNamespace Special
|
||||
hi def link abapSpecialTables Special
|
||||
hi def link abapSymbolOperator abapOperator
|
||||
hi def link abapOperator Operator
|
||||
hi def link abapCharString String
|
||||
hi def link abapString String
|
||||
hi def link abapFloat Float
|
||||
hi def link abapTypes Type
|
||||
hi def link abapSymbol Structure
|
||||
hi def link abapStructure Structure
|
||||
hi def link abapField Variable
|
||||
hi def link abapNumber Number
|
||||
hi def link abapHex Number
|
||||
|
||||
delcommand HiLink
|
||||
endif
|
||||
|
||||
let b:current_syntax = "abap"
|
||||
|
||||
|
||||
@@ -4,11 +4,8 @@
|
||||
" Last Change: 2002 Feb 24
|
||||
" Remark: Huge improvement in folding performance--see filetype plugin
|
||||
|
||||
" For version 5.x: Clear all syntax items
|
||||
" For version 6.x: Quit when a syntax file was already loaded
|
||||
if version < 600
|
||||
syntax clear
|
||||
elseif exists("b:current_syntax")
|
||||
" quit when a syntax file was already loaded
|
||||
if exists("b:current_syntax")
|
||||
finish
|
||||
endif
|
||||
|
||||
@@ -25,24 +22,14 @@ syn match abaqusValue "=\s*[^,]*"lc=1 contained display
|
||||
syn match abaqusBadLine "^\s\+\*.*" display
|
||||
|
||||
" Define the default highlighting.
|
||||
" For version 5.7 and earlier: only when not done already
|
||||
" For version 5.8 and later: only when an item doesn't have highlighting yet
|
||||
if version >= 508 || !exists("did_abaqus_syn_inits")
|
||||
if version < 508
|
||||
let did_abaqus_syn_inits = 1
|
||||
command -nargs=+ HiLink hi link <args>
|
||||
else
|
||||
command -nargs=+ HiLink hi def link <args>
|
||||
endif
|
||||
" Only when an item doesn't have highlighting yet
|
||||
|
||||
" The default methods for highlighting. Can be overridden later
|
||||
HiLink abaqusComment Comment
|
||||
HiLink abaqusKeyword Statement
|
||||
HiLink abaqusParameter Identifier
|
||||
HiLink abaqusValue Constant
|
||||
HiLink abaqusBadLine Error
|
||||
" The default methods for highlighting. Can be overridden later
|
||||
hi def link abaqusComment Comment
|
||||
hi def link abaqusKeyword Statement
|
||||
hi def link abaqusParameter Identifier
|
||||
hi def link abaqusValue Constant
|
||||
hi def link abaqusBadLine Error
|
||||
|
||||
delcommand HiLink
|
||||
endif
|
||||
|
||||
let b:current_syntax = "abaqus"
|
||||
|
||||
@@ -4,11 +4,8 @@
|
||||
" URL: http://perun.hscs.wmin.ac.uk/~jra/vim/syntax/abc.vim
|
||||
" Last Change: 27th April 2001
|
||||
|
||||
" For version 5.x: Clear all syntax items
|
||||
" For version 6.x: Quit when a syntax file was already loaded
|
||||
if version < 600
|
||||
syntax clear
|
||||
elseif exists("b:current_syntax")
|
||||
" quit when a syntax file was already loaded
|
||||
if exists("b:current_syntax")
|
||||
finish
|
||||
endif
|
||||
|
||||
@@ -36,28 +33,18 @@ syn match abcComment "%.*$"
|
||||
|
||||
|
||||
" Define the default highlighting.
|
||||
" For version 5.7 and earlier: only when not done already
|
||||
" For version 5.8 and later: only when an item doesn't have highlighting yet
|
||||
if version >= 508 || !exists("did_abc_syn_inits")
|
||||
if version < 508
|
||||
let did_abc_syn_inits = 1
|
||||
command -nargs=+ HiLink hi link <args>
|
||||
else
|
||||
command -nargs=+ HiLink hi def link <args>
|
||||
endif
|
||||
" Only when an item doesn't have highlighting yet
|
||||
|
||||
HiLink abcComment Comment
|
||||
HiLink abcHeadField Type
|
||||
HiLink abcBodyField Special
|
||||
HiLink abcBar Statement
|
||||
HiLink abcTuple Statement
|
||||
HiLink abcBroken Statement
|
||||
HiLink abcTie Statement
|
||||
HiLink abcGuitarChord Identifier
|
||||
HiLink abcNote Constant
|
||||
hi def link abcComment Comment
|
||||
hi def link abcHeadField Type
|
||||
hi def link abcBodyField Special
|
||||
hi def link abcBar Statement
|
||||
hi def link abcTuple Statement
|
||||
hi def link abcBroken Statement
|
||||
hi def link abcTie Statement
|
||||
hi def link abcGuitarChord Identifier
|
||||
hi def link abcNote Constant
|
||||
|
||||
delcommand HiLink
|
||||
endif
|
||||
|
||||
let b:current_syntax = "abc"
|
||||
|
||||
|
||||
@@ -3,11 +3,8 @@
|
||||
" Maintainer: John Cook <johncook3@gmail.com>
|
||||
" Last Change: 2011 Dec 27
|
||||
|
||||
" For version 5.x: Clear all syntax items
|
||||
" For version 6.x: Quit when a syntax file was already loaded
|
||||
if version < 600
|
||||
syntax clear
|
||||
elseif exists("b:current_syntax")
|
||||
" quit when a syntax file was already loaded
|
||||
if exists("b:current_syntax")
|
||||
finish
|
||||
endif
|
||||
|
||||
@@ -123,48 +120,38 @@ endif
|
||||
syn sync minlines=1
|
||||
|
||||
" Define the default highlighting.
|
||||
" For version 5.7 and earlier: only when not done already
|
||||
" For version 5.8 and later: only when an item doesn't have highlighting yet
|
||||
if version >= 508 || !exists("did_abel_syn_inits")
|
||||
if version < 508
|
||||
let did_abel_syn_inits = 1
|
||||
command -nargs=+ HiLink hi link <args>
|
||||
else
|
||||
command -nargs=+ HiLink hi def link <args>
|
||||
endif
|
||||
" Only when an item doesn't have highlighting yet
|
||||
|
||||
" The default highlighting.
|
||||
HiLink abelHeader abelStatement
|
||||
HiLink abelSection abelStatement
|
||||
HiLink abelDeclaration abelStatement
|
||||
HiLink abelLogicalOperator abelOperator
|
||||
HiLink abelRangeOperator abelOperator
|
||||
HiLink abelAlternateOperator abelOperator
|
||||
HiLink abelArithmeticOperator abelOperator
|
||||
HiLink abelRelationalOperator abelOperator
|
||||
HiLink abelAssignmentOperator abelOperator
|
||||
HiLink abelTruthTableOperator abelOperator
|
||||
HiLink abelSpecifier abelStatement
|
||||
HiLink abelOperator abelStatement
|
||||
HiLink abelStatement Statement
|
||||
HiLink abelIdentifier Identifier
|
||||
HiLink abelTypeId abelType
|
||||
HiLink abelTypeIdChar abelType
|
||||
HiLink abelType Type
|
||||
HiLink abelNumber abelString
|
||||
HiLink abelString String
|
||||
HiLink abelConstant Constant
|
||||
HiLink abelComment Comment
|
||||
HiLink abelExtension abelSpecial
|
||||
HiLink abelSpecialChar abelSpecial
|
||||
HiLink abelTypeIdEnd abelSpecial
|
||||
HiLink abelSpecial Special
|
||||
HiLink abelDirective PreProc
|
||||
HiLink abelTodo Todo
|
||||
HiLink abelError Error
|
||||
" The default highlighting.
|
||||
hi def link abelHeader abelStatement
|
||||
hi def link abelSection abelStatement
|
||||
hi def link abelDeclaration abelStatement
|
||||
hi def link abelLogicalOperator abelOperator
|
||||
hi def link abelRangeOperator abelOperator
|
||||
hi def link abelAlternateOperator abelOperator
|
||||
hi def link abelArithmeticOperator abelOperator
|
||||
hi def link abelRelationalOperator abelOperator
|
||||
hi def link abelAssignmentOperator abelOperator
|
||||
hi def link abelTruthTableOperator abelOperator
|
||||
hi def link abelSpecifier abelStatement
|
||||
hi def link abelOperator abelStatement
|
||||
hi def link abelStatement Statement
|
||||
hi def link abelIdentifier Identifier
|
||||
hi def link abelTypeId abelType
|
||||
hi def link abelTypeIdChar abelType
|
||||
hi def link abelType Type
|
||||
hi def link abelNumber abelString
|
||||
hi def link abelString String
|
||||
hi def link abelConstant Constant
|
||||
hi def link abelComment Comment
|
||||
hi def link abelExtension abelSpecial
|
||||
hi def link abelSpecialChar abelSpecial
|
||||
hi def link abelTypeIdEnd abelSpecial
|
||||
hi def link abelSpecial Special
|
||||
hi def link abelDirective PreProc
|
||||
hi def link abelTodo Todo
|
||||
hi def link abelError Error
|
||||
|
||||
delcommand HiLink
|
||||
endif
|
||||
|
||||
let b:current_syntax = "abel"
|
||||
|
||||
|
||||
@@ -7,11 +7,8 @@
|
||||
" Syntax file to handle all $ACEDB/wspec/*.wrm files, primarily models.wrm
|
||||
" AceDB software is available from http://www.acedb.org
|
||||
|
||||
" For version 5.x: Clear all syntax items
|
||||
" For version 6.x: Quit when a syntax file was already loaded
|
||||
if version < 600
|
||||
syntax clear
|
||||
elseif exists("b:current_syntax")
|
||||
" quit when a syntax file was already loaded
|
||||
if exists("b:current_syntax")
|
||||
finish
|
||||
endif
|
||||
|
||||
@@ -86,35 +83,25 @@ syn region acedbString start=/"/ end=/"/ skip=/\\"/ oneline
|
||||
" Rest of syntax highlighting rules start here
|
||||
|
||||
" Define the default highlighting.
|
||||
" For version 5.7 and earlier: only when not done already
|
||||
" For version 5.8 and later: only when an item doesn't have highlighting yet
|
||||
if version >= 508 || !exists("did_acedb_syn_inits")
|
||||
if version < 508
|
||||
let did_acedb_syn_inits = 1
|
||||
command -nargs=+ HiLink hi link <args>
|
||||
else
|
||||
command -nargs=+ HiLink hi def link <args>
|
||||
endif
|
||||
" Only when an item doesn't have highlighting yet
|
||||
|
||||
HiLink acedbMagic Special
|
||||
HiLink acedbHyb Special
|
||||
HiLink acedbType Type
|
||||
HiLink acedbOption Type
|
||||
HiLink acedbSubclass Type
|
||||
HiLink acedbSubtag Include
|
||||
HiLink acedbFlag Include
|
||||
HiLink acedbTag Include
|
||||
HiLink acedbClass Todo
|
||||
HiLink acedbHelp Todo
|
||||
HiLink acedbXref Identifier
|
||||
HiLink acedbModifier Label
|
||||
HiLink acedbComment Comment
|
||||
HiLink acedbBlock ModeMsg
|
||||
HiLink acedbNumber Number
|
||||
HiLink acedbString String
|
||||
hi def link acedbMagic Special
|
||||
hi def link acedbHyb Special
|
||||
hi def link acedbType Type
|
||||
hi def link acedbOption Type
|
||||
hi def link acedbSubclass Type
|
||||
hi def link acedbSubtag Include
|
||||
hi def link acedbFlag Include
|
||||
hi def link acedbTag Include
|
||||
hi def link acedbClass Todo
|
||||
hi def link acedbHelp Todo
|
||||
hi def link acedbXref Identifier
|
||||
hi def link acedbModifier Label
|
||||
hi def link acedbComment Comment
|
||||
hi def link acedbBlock ModeMsg
|
||||
hi def link acedbNumber Number
|
||||
hi def link acedbString String
|
||||
|
||||
delcommand HiLink
|
||||
endif
|
||||
|
||||
let b:current_syntax = "acedb"
|
||||
|
||||
|
||||
@@ -7,21 +7,14 @@
|
||||
" Comment: Replaced sourcing c.vim file by ada.vim and rename lex*
|
||||
" in aflex*
|
||||
|
||||
" For version 5.x: Clear all syntax items
|
||||
" For version 6.x: Quit when a syntax file was already loaded
|
||||
if version < 600
|
||||
syntax clear
|
||||
elseif exists("b:current_syntax")
|
||||
" quit when a syntax file was already loaded
|
||||
if exists("b:current_syntax")
|
||||
finish
|
||||
endif
|
||||
|
||||
" Read the Ada syntax to start with
|
||||
if version < 600
|
||||
so <sfile>:p:h/ada.vim
|
||||
else
|
||||
runtime! syntax/ada.vim
|
||||
unlet b:current_syntax
|
||||
endif
|
||||
runtime! syntax/ada.vim
|
||||
unlet b:current_syntax
|
||||
|
||||
|
||||
" --- AfLex stuff ---
|
||||
@@ -69,31 +62,20 @@ syn sync match aflexSyncPat groupthere aflexPatBlock "^<$"
|
||||
syn sync match aflexSyncPat groupthere aflexPatBlock "^%%$"
|
||||
|
||||
" Define the default highlighting.
|
||||
" For version 5.7 and earlier: only when not done already
|
||||
" For version 5.8 and later: only when an item doesn't have highlighting yet
|
||||
" Only when an item doesn't have highlighting yet
|
||||
hi def link aflexSlashQuote aflexPat
|
||||
hi def link aflexBrace aflexPat
|
||||
hi def link aflexAbbrvComment aflexPatComment
|
||||
|
||||
if version >= 508 || !exists("did_aflex_syntax_inits")
|
||||
if version < 508
|
||||
let did_aflex_syntax_inits = 1
|
||||
command -nargs=+ HiLink hi link <args>
|
||||
else
|
||||
command -nargs=+ HiLink hi def link <args>
|
||||
endif
|
||||
HiLink aflexSlashQuote aflexPat
|
||||
HiLink aflexBrace aflexPat
|
||||
HiLink aflexAbbrvComment aflexPatComment
|
||||
|
||||
HiLink aflexAbbrv SpecialChar
|
||||
HiLink aflexAbbrvRegExp Macro
|
||||
HiLink aflexCFunctions Function
|
||||
HiLink aflexMorePat SpecialChar
|
||||
HiLink aflexPat Function
|
||||
HiLink aflexPatComment Comment
|
||||
HiLink aflexPatString Function
|
||||
HiLink aflexPatTag Special
|
||||
HiLink aflexSep Delimiter
|
||||
delcommand HiLink
|
||||
endif
|
||||
hi def link aflexAbbrv SpecialChar
|
||||
hi def link aflexAbbrvRegExp Macro
|
||||
hi def link aflexCFunctions Function
|
||||
hi def link aflexMorePat SpecialChar
|
||||
hi def link aflexPat Function
|
||||
hi def link aflexPatComment Comment
|
||||
hi def link aflexPatString Function
|
||||
hi def link aflexPatTag Special
|
||||
hi def link aflexSep Delimiter
|
||||
|
||||
let b:current_syntax = "aflex"
|
||||
|
||||
|
||||
@@ -3,11 +3,8 @@
|
||||
" Maintainer: John Cook <john.cook@kla-tencor.com>
|
||||
" Last Change: 2001 Apr 25
|
||||
|
||||
" For version 5.x: Clear all syntax items
|
||||
" For version 6.x: Quit when a syntax file was already loaded
|
||||
if version < 600
|
||||
syntax clear
|
||||
elseif exists("b:current_syntax")
|
||||
" quit when a syntax file was already loaded
|
||||
if exists("b:current_syntax")
|
||||
finish
|
||||
endif
|
||||
|
||||
@@ -66,29 +63,19 @@ syn match ahdlSpecialChar "[\[\]().,;]"
|
||||
syn sync minlines=1
|
||||
|
||||
" Define the default highlighting.
|
||||
" For version 5.7 and earlier: only when not done already
|
||||
" For version 5.8 and later: only when an item doesn't have highlighting yet
|
||||
if version >= 508 || !exists("did_ahdl_syn_inits")
|
||||
if version < 508
|
||||
let did_ahdl_syn_inits = 1
|
||||
command -nargs=+ HiLink hi link <args>
|
||||
else
|
||||
command -nargs=+ HiLink hi def link <args>
|
||||
endif
|
||||
" Only when an item doesn't have highlighting yet
|
||||
|
||||
" The default highlighting.
|
||||
HiLink ahdlNumber ahdlString
|
||||
HiLink ahdlMegafunction ahdlIdentifier
|
||||
HiLink ahdlSpecialChar SpecialChar
|
||||
HiLink ahdlKeyword Statement
|
||||
HiLink ahdlString String
|
||||
HiLink ahdlComment Comment
|
||||
HiLink ahdlIdentifier Identifier
|
||||
HiLink ahdlOperator Operator
|
||||
HiLink ahdlTodo Todo
|
||||
" The default highlighting.
|
||||
hi def link ahdlNumber ahdlString
|
||||
hi def link ahdlMegafunction ahdlIdentifier
|
||||
hi def link ahdlSpecialChar SpecialChar
|
||||
hi def link ahdlKeyword Statement
|
||||
hi def link ahdlString String
|
||||
hi def link ahdlComment Comment
|
||||
hi def link ahdlIdentifier Identifier
|
||||
hi def link ahdlOperator Operator
|
||||
hi def link ahdlTodo Todo
|
||||
|
||||
delcommand HiLink
|
||||
endif
|
||||
|
||||
let b:current_syntax = "ahdl"
|
||||
" vim:ts=8
|
||||
|
||||
@@ -1,15 +1,12 @@
|
||||
" Vim syntax file
|
||||
" Language: AmigaDos
|
||||
" Maintainer: Charles E. Campbell <NdrOchipS@PcampbellAfamily.Mbiz>
|
||||
" Last Change: Oct 23, 2014
|
||||
" Version: 7
|
||||
" Last Change: Aug 31, 2016
|
||||
" Version: 9
|
||||
" URL: http://www.drchip.org/astronaut/vim/index.html#SYNTAX_AMIGA
|
||||
|
||||
" For version 5.x: Clear all syntax items
|
||||
" For version 6.x: Quit when a syntax file was already loaded
|
||||
if version < 600
|
||||
syntax clear
|
||||
elseif exists("b:current_syntax")
|
||||
" quit when a syntax file was already loaded
|
||||
if exists("b:current_syntax")
|
||||
finish
|
||||
endif
|
||||
|
||||
@@ -72,30 +69,20 @@ syn match amiComment ";.*$" contains=amiCommentGroup
|
||||
syn sync lines=50
|
||||
|
||||
" Define the default highlighting.
|
||||
" For version 5.7 and earlier: only when not done already
|
||||
" For version 5.8 and later: only when an item doesn't have highlighting yet
|
||||
if version >= 508 || !exists("did_amiga_syn_inits")
|
||||
if version < 508
|
||||
let did_amiga_syn_inits = 1
|
||||
command -nargs=+ HiLink hi link <args>
|
||||
else
|
||||
command -nargs=+ HiLink hi def link <args>
|
||||
endif
|
||||
if !exists("skip_amiga_syntax_inits")
|
||||
|
||||
HiLink amiAlias Type
|
||||
HiLink amiComment Comment
|
||||
HiLink amiDev Type
|
||||
HiLink amiEcho String
|
||||
HiLink amiElse Statement
|
||||
HiLink amiError Error
|
||||
HiLink amiKey Statement
|
||||
HiLink amiNumber Number
|
||||
HiLink amiString String
|
||||
HiLink amiTest Special
|
||||
hi def link amiAlias Type
|
||||
hi def link amiComment Comment
|
||||
hi def link amiDev Type
|
||||
hi def link amiEcho String
|
||||
hi def link amiElse Statement
|
||||
hi def link amiError Error
|
||||
hi def link amiKey Statement
|
||||
hi def link amiNumber Number
|
||||
hi def link amiString String
|
||||
hi def link amiTest Special
|
||||
|
||||
delcommand HiLink
|
||||
endif
|
||||
|
||||
let b:current_syntax = "amiga"
|
||||
|
||||
" vim:ts=15
|
||||
|
||||
@@ -9,11 +9,8 @@
|
||||
" of [], in order to avoid -read highlighted,
|
||||
" or [quote] strings highlighted
|
||||
|
||||
" For version 5.x: Clear all syntax items
|
||||
" For version 6.x: Quit when a syntax file was already loaded
|
||||
if version < 600
|
||||
syntax clear
|
||||
elseif exists("b:current_syntax")
|
||||
" quit when a syntax file was already loaded
|
||||
if exists("b:current_syntax")
|
||||
finish
|
||||
endif
|
||||
|
||||
@@ -123,35 +120,25 @@ syn region amlSkip matchgroup=amlOutput start="&typ" end="$" contains=amlVar
|
||||
syn region amlSkip matchgroup=amlOutput start="&type" end="$" contains=amlVar
|
||||
|
||||
" Define the default highlighting.
|
||||
" For version 5.7 and earlier: only when not done already
|
||||
" For version 5.8 and later: only when an item doesn't have highlighting yet
|
||||
if version >= 508 || !exists("did_aml_syntax_inits")
|
||||
if version < 508
|
||||
let did_aml_syntax_inits = 1
|
||||
command -nargs=+ HiLink hi link <args>
|
||||
else
|
||||
command -nargs=+ HiLink hi def link <args>
|
||||
endif
|
||||
" Only when an item doesn't have highlighting yet
|
||||
|
||||
HiLink amlComment Comment
|
||||
HiLink amlNumber Number
|
||||
HiLink amlQuote String
|
||||
HiLink amlVar Identifier
|
||||
HiLink amlVar2 Identifier
|
||||
HiLink amlFunction PreProc
|
||||
HiLink amlDir Statement
|
||||
HiLink amlDir2 Statement
|
||||
HiLink amlDirSym Statement
|
||||
HiLink amlOutput Statement
|
||||
HiLink amlArcCmd ModeMsg
|
||||
HiLink amlFormedCmd amlArcCmd
|
||||
HiLink amlTabCmd amlArcCmd
|
||||
HiLink amlInfoCmd amlArcCmd
|
||||
HiLink amlVtrCmd amlArcCmd
|
||||
HiLink amlFormed amlArcCmd
|
||||
HiLink amlTab amlArcCmd
|
||||
hi def link amlComment Comment
|
||||
hi def link amlNumber Number
|
||||
hi def link amlQuote String
|
||||
hi def link amlVar Identifier
|
||||
hi def link amlVar2 Identifier
|
||||
hi def link amlFunction PreProc
|
||||
hi def link amlDir Statement
|
||||
hi def link amlDir2 Statement
|
||||
hi def link amlDirSym Statement
|
||||
hi def link amlOutput Statement
|
||||
hi def link amlArcCmd ModeMsg
|
||||
hi def link amlFormedCmd amlArcCmd
|
||||
hi def link amlTabCmd amlArcCmd
|
||||
hi def link amlInfoCmd amlArcCmd
|
||||
hi def link amlVtrCmd amlArcCmd
|
||||
hi def link amlFormed amlArcCmd
|
||||
hi def link amlTab amlArcCmd
|
||||
|
||||
delcommand HiLink
|
||||
endif
|
||||
|
||||
let b:current_syntax = "aml"
|
||||
|
||||
@@ -3,9 +3,8 @@
|
||||
" Last Change: 2003 May 11
|
||||
|
||||
|
||||
if version < 600
|
||||
syntax clear
|
||||
elseif exists("b:current_syntax")
|
||||
" quit when a syntax file was already loaded
|
||||
if exists("b:current_syntax")
|
||||
finish
|
||||
endif
|
||||
|
||||
@@ -115,33 +114,24 @@ syn keyword amplTodo contained TODO FIXME XXX
|
||||
|
||||
|
||||
|
||||
if version >= 508 || !exists("did_ampl_syntax_inits")
|
||||
if version < 508
|
||||
let did_ampl_syntax_inits = 1
|
||||
command -nargs=+ HiLink hi link <args>
|
||||
else
|
||||
command -nargs=+ HiLink hi def link <args>
|
||||
endif
|
||||
|
||||
" The default methods for highlighting. Can be overridden later.
|
||||
HiLink amplEntityKeyword Keyword
|
||||
HiLink amplType Type
|
||||
HiLink amplStatement Statement
|
||||
HiLink amplOperators Operator
|
||||
HiLink amplBasicOperators Operator
|
||||
HiLink amplConditional Conditional
|
||||
HiLink amplRepeat Repeat
|
||||
HiLink amplStrings String
|
||||
HiLink amplNumerics Number
|
||||
HiLink amplSetFunction Function
|
||||
HiLink amplBuiltInFunction Function
|
||||
HiLink amplRandomGenerator Function
|
||||
HiLink amplComment Comment
|
||||
HiLink amplDotSuffix Special
|
||||
HiLink amplPiecewise Special
|
||||
" The default methods for highlighting. Can be overridden later.
|
||||
hi def link amplEntityKeyword Keyword
|
||||
hi def link amplType Type
|
||||
hi def link amplStatement Statement
|
||||
hi def link amplOperators Operator
|
||||
hi def link amplBasicOperators Operator
|
||||
hi def link amplConditional Conditional
|
||||
hi def link amplRepeat Repeat
|
||||
hi def link amplStrings String
|
||||
hi def link amplNumerics Number
|
||||
hi def link amplSetFunction Function
|
||||
hi def link amplBuiltInFunction Function
|
||||
hi def link amplRandomGenerator Function
|
||||
hi def link amplComment Comment
|
||||
hi def link amplDotSuffix Special
|
||||
hi def link amplPiecewise Special
|
||||
|
||||
delcommand HiLink
|
||||
endif
|
||||
|
||||
let b:current_syntax = "ampl"
|
||||
|
||||
|
||||
@@ -4,11 +4,8 @@
|
||||
" LastChange: 02 May 2001
|
||||
" Original: Comes from JavaCC.vim
|
||||
|
||||
" For version 5.x: Clear all syntax items
|
||||
" For version 6.x: Quit when a syntax file was already loaded
|
||||
if version < 600
|
||||
syntax clear
|
||||
elseif exists("b:current_syntax")
|
||||
" quit when a syntax file was already loaded
|
||||
if exists("b:current_syntax")
|
||||
finish
|
||||
endif
|
||||
|
||||
@@ -18,12 +15,8 @@ endif
|
||||
" Those files usually have the extension *.jj
|
||||
|
||||
" source the java.vim file
|
||||
if version < 600
|
||||
so <sfile>:p:h/java.vim
|
||||
else
|
||||
runtime! syntax/java.vim
|
||||
unlet b:current_syntax
|
||||
endif
|
||||
runtime! syntax/java.vim
|
||||
unlet b:current_syntax
|
||||
|
||||
"remove catching errors caused by wrong parenthesis (does not work in antlr
|
||||
"files) (first define them in case they have not been defined in java)
|
||||
@@ -53,17 +46,8 @@ syn match antlrSep "[|:]\|\.\."
|
||||
syn keyword antlrActionToken TOKEN SKIP MORE SPECIAL_TOKEN
|
||||
syn keyword antlrError DEBUG IGNORE_IN_BNF
|
||||
|
||||
if version >= 508 || !exists("did_antlr_syntax_inits")
|
||||
if version < 508
|
||||
let did_antlr_syntax_inits = 1
|
||||
command -nargs=+ HiLink hi link <args>
|
||||
else
|
||||
command -nargs=+ HiLink hi def link <args>
|
||||
endif
|
||||
HiLink antlrSep Statement
|
||||
HiLink antlrPackages Statement
|
||||
delcommand HiLink
|
||||
endif
|
||||
hi def link antlrSep Statement
|
||||
hi def link antlrPackages Statement
|
||||
|
||||
let b:current_syntax = "antlr"
|
||||
|
||||
|
||||
@@ -9,13 +9,9 @@
|
||||
" make it really linewise?
|
||||
" + add `display' where appropriate
|
||||
|
||||
" Setup
|
||||
if version >= 600
|
||||
if exists("b:current_syntax")
|
||||
finish
|
||||
endif
|
||||
else
|
||||
syntax clear
|
||||
" quit when a syntax file was already loaded
|
||||
if exists("b:current_syntax")
|
||||
finish
|
||||
endif
|
||||
|
||||
syn case ignore
|
||||
@@ -178,37 +174,28 @@ syn match apacheSection "<\/\=\(<IfVersion\)[^>]*>" contains=apacheAnything
|
||||
syn keyword apacheDeclaration VirtualDocumentRoot VirtualDocumentRootIP VirtualScriptAlias VirtualScriptAliasIP
|
||||
|
||||
" Define the default highlighting
|
||||
if version >= 508 || !exists("did_apache_syntax_inits")
|
||||
if version < 508
|
||||
let did_apache_syntax_inits = 1
|
||||
command -nargs=+ HiLink hi link <args>
|
||||
else
|
||||
command -nargs=+ HiLink hi def link <args>
|
||||
endif
|
||||
|
||||
HiLink apacheAllowOverride apacheDeclaration
|
||||
HiLink apacheAllowOverrideValue apacheOption
|
||||
HiLink apacheAuthType apacheDeclaration
|
||||
HiLink apacheAuthTypeValue apacheOption
|
||||
HiLink apacheOptionOption apacheOption
|
||||
HiLink apacheDeclaration Function
|
||||
HiLink apacheAnything apacheOption
|
||||
HiLink apacheOption Number
|
||||
HiLink apacheComment Comment
|
||||
HiLink apacheFixme Todo
|
||||
HiLink apacheLimitSectionKeyword apacheLimitSection
|
||||
HiLink apacheLimitSection apacheSection
|
||||
HiLink apacheSection Label
|
||||
HiLink apacheMethodOption Type
|
||||
HiLink apacheAllowDeny Include
|
||||
HiLink apacheAllowDenyValue Identifier
|
||||
HiLink apacheOrder Special
|
||||
HiLink apacheOrderValue String
|
||||
HiLink apacheString String
|
||||
HiLink apacheError Error
|
||||
HiLink apacheUserID Number
|
||||
hi def link apacheAllowOverride apacheDeclaration
|
||||
hi def link apacheAllowOverrideValue apacheOption
|
||||
hi def link apacheAuthType apacheDeclaration
|
||||
hi def link apacheAuthTypeValue apacheOption
|
||||
hi def link apacheOptionOption apacheOption
|
||||
hi def link apacheDeclaration Function
|
||||
hi def link apacheAnything apacheOption
|
||||
hi def link apacheOption Number
|
||||
hi def link apacheComment Comment
|
||||
hi def link apacheFixme Todo
|
||||
hi def link apacheLimitSectionKeyword apacheLimitSection
|
||||
hi def link apacheLimitSection apacheSection
|
||||
hi def link apacheSection Label
|
||||
hi def link apacheMethodOption Type
|
||||
hi def link apacheAllowDeny Include
|
||||
hi def link apacheAllowDenyValue Identifier
|
||||
hi def link apacheOrder Special
|
||||
hi def link apacheOrderValue String
|
||||
hi def link apacheString String
|
||||
hi def link apacheError Error
|
||||
hi def link apacheUserID Number
|
||||
|
||||
delcommand HiLink
|
||||
endif
|
||||
|
||||
let b:current_syntax = "apache"
|
||||
|
||||
@@ -20,11 +20,8 @@
|
||||
" </SubSection>
|
||||
" </Section>
|
||||
|
||||
" For version 5.x: Clear all syntax items
|
||||
" For version 6.x: Quit when a syntax file was already loaded
|
||||
if version < 600
|
||||
syntax clear
|
||||
elseif exists("b:current_syntax")
|
||||
" quit when a syntax file was already loaded
|
||||
if exists("b:current_syntax")
|
||||
finish
|
||||
endif
|
||||
|
||||
@@ -41,25 +38,15 @@ syn match apTagOption contained / [-\/_\.:*a-zA-Z0-9]\+/ms=s+1
|
||||
syn match apTagError contained /[^>]</ms=s+1
|
||||
|
||||
" Define the default highlighting.
|
||||
" For version 5.7 and earlier: only when not done already
|
||||
" For version 5.8 and later: only when an item doesn't have highlighting yet
|
||||
if version >= 508 || !exists("did_apachestyle_syn_inits")
|
||||
if version < 508
|
||||
let did_apachestyle_syn_inits = 1
|
||||
command -nargs=+ HiLink hi link <args>
|
||||
else
|
||||
command -nargs=+ HiLink hi def link <args>
|
||||
endif
|
||||
" Only when an item doesn't have highlighting yet
|
||||
|
||||
HiLink apComment Comment
|
||||
HiLink apOption Keyword
|
||||
"HiLink apLastValue Identifier ugly?
|
||||
HiLink apTag Special
|
||||
HiLink apTagOption Identifier
|
||||
HiLink apTagError Error
|
||||
hi def link apComment Comment
|
||||
hi def link apOption Keyword
|
||||
"hi def link apLastValue Identifier ugly?
|
||||
hi def link apTag Special
|
||||
hi def link apTagOption Identifier
|
||||
hi def link apTagError Error
|
||||
|
||||
delcommand HiLink
|
||||
endif
|
||||
|
||||
let b:current_syntax = "apachestyle"
|
||||
" vim: ts=8
|
||||
|
||||
@@ -3,12 +3,9 @@
|
||||
" Maintainer: Yann Amar <quidame@poivron.org>
|
||||
" Last Change: 2015 Dec 22
|
||||
|
||||
" For version 5.x: Clear all syntax items
|
||||
" For version 6.x and 7.x: Quit when a syntax file was already loaded
|
||||
" quit when a syntax file was already loaded
|
||||
if !exists("main_syntax")
|
||||
if version < 600
|
||||
syntax clear
|
||||
elseif exists("b:current_syntax")
|
||||
if exists("b:current_syntax")
|
||||
finish
|
||||
endif
|
||||
let main_syntax = 'aptconf'
|
||||
|
||||
@@ -10,20 +10,13 @@
|
||||
|
||||
" Thanks to Rik, Erik Nomitch, Adam Obeng and Graeme Cross for helpful feedback!
|
||||
|
||||
" For version 5.x: Clear all syntax items
|
||||
" For version 6.x: Quit when a syntax file was already loaded
|
||||
if version < 600
|
||||
syntax clear
|
||||
elseif exists("b:current_syntax")
|
||||
" quit when a syntax file was already loaded
|
||||
if exists("b:current_syntax")
|
||||
finish
|
||||
endif
|
||||
|
||||
" Read the C syntax to start with
|
||||
if version < 600
|
||||
so <sfile>:p:h/cpp.vim
|
||||
else
|
||||
runtime! syntax/cpp.vim
|
||||
endif
|
||||
runtime! syntax/cpp.vim
|
||||
|
||||
syn keyword arduinoConstant HIGH LOW INPUT OUTPUT
|
||||
syn keyword arduinoConstant DEC BIN HEX OCT BYTE
|
||||
|
||||
@@ -7,11 +7,8 @@
|
||||
|
||||
" Thanks to Ori Avtalion for feedback on the comment markers!
|
||||
|
||||
" For version 5.x: Clear all syntax items
|
||||
" For version 6.0 and later: Quit when a syntax file was already loaded
|
||||
if version < 600
|
||||
syntax clear
|
||||
elseif exists("b:current_syntax")
|
||||
" quit when a syntax file was already loaded
|
||||
if exists("b:current_syntax")
|
||||
finish
|
||||
endif
|
||||
|
||||
@@ -103,37 +100,27 @@ syn match asmDirective "\.[A-Za-z][0-9A-Za-z-_]*"
|
||||
syn case match
|
||||
|
||||
" Define the default highlighting.
|
||||
" For version 5.7 and earlier: only when not done already
|
||||
" For version 5.8 and later: only when an item doesn't have highlighting yet
|
||||
if version >= 508 || !exists("did_asm_syntax_inits")
|
||||
if version < 508
|
||||
let did_asm_syntax_inits = 1
|
||||
command -nargs=+ HiLink hi link <args>
|
||||
else
|
||||
command -nargs=+ HiLink hi def link <args>
|
||||
endif
|
||||
" Only when an item doesn't have highlighting yet
|
||||
|
||||
" The default methods for highlighting. Can be overridden later
|
||||
HiLink asmSection Special
|
||||
HiLink asmLabel Label
|
||||
HiLink asmComment Comment
|
||||
HiLink asmTodo Todo
|
||||
HiLink asmDirective Statement
|
||||
" The default methods for highlighting. Can be overridden later
|
||||
hi def link asmSection Special
|
||||
hi def link asmLabel Label
|
||||
hi def link asmComment Comment
|
||||
hi def link asmTodo Todo
|
||||
hi def link asmDirective Statement
|
||||
|
||||
HiLink asmInclude Include
|
||||
HiLink asmCond PreCondit
|
||||
HiLink asmMacro Macro
|
||||
hi def link asmInclude Include
|
||||
hi def link asmCond PreCondit
|
||||
hi def link asmMacro Macro
|
||||
|
||||
HiLink hexNumber Number
|
||||
HiLink decNumber Number
|
||||
HiLink octNumber Number
|
||||
HiLink binNumber Number
|
||||
hi def link hexNumber Number
|
||||
hi def link decNumber Number
|
||||
hi def link octNumber Number
|
||||
hi def link binNumber Number
|
||||
|
||||
HiLink asmIdentifier Identifier
|
||||
HiLink asmType Type
|
||||
hi def link asmIdentifier Identifier
|
||||
hi def link asmType Type
|
||||
|
||||
delcommand HiLink
|
||||
endif
|
||||
|
||||
let b:current_syntax = "asm"
|
||||
|
||||
|
||||
@@ -8,11 +8,8 @@
|
||||
" Feel free to contribute...
|
||||
"
|
||||
|
||||
" For version 5.x: Clear all syntax items
|
||||
" For version 6.x: Quit when a syntax file was already loaded
|
||||
if version < 600
|
||||
syntax clear
|
||||
elseif exists("b:current_syntax")
|
||||
" quit when a syntax file was already loaded
|
||||
if exists("b:current_syntax")
|
||||
finish
|
||||
endif
|
||||
|
||||
@@ -328,63 +325,53 @@ syn match asm68kDirective "\<XREF\(\.S\)\=\s"
|
||||
syn case match
|
||||
|
||||
" Define the default highlighting.
|
||||
" For version 5.7 and earlier: only when not done already
|
||||
" For version 5.8 and later: only when an item doesn't have highlighting yet
|
||||
if version >= 508 || !exists("did_asm68k_syntax_inits")
|
||||
if version < 508
|
||||
let did_asm68k_syntax_inits = 1
|
||||
command -nargs=+ HiLink hi link <args>
|
||||
else
|
||||
command -nargs=+ HiLink hi def link <args>
|
||||
endif
|
||||
" Only when an item doesn't have highlighting yet
|
||||
|
||||
" The default methods for highlighting. Can be overridden later
|
||||
" Comment Constant Error Identifier PreProc Special Statement Todo Type
|
||||
"
|
||||
" Constant Boolean Character Number String
|
||||
" Identifier Function
|
||||
" PreProc Define Include Macro PreCondit
|
||||
" Special Debug Delimiter SpecialChar SpecialComment Tag
|
||||
" Statement Conditional Exception Keyword Label Operator Repeat
|
||||
" Type StorageClass Structure Typedef
|
||||
" The default methods for highlighting. Can be overridden later
|
||||
" Comment Constant Error Identifier PreProc Special Statement Todo Type
|
||||
"
|
||||
" Constant Boolean Character Number String
|
||||
" Identifier Function
|
||||
" PreProc Define Include Macro PreCondit
|
||||
" Special Debug Delimiter SpecialChar SpecialComment Tag
|
||||
" Statement Conditional Exception Keyword Label Operator Repeat
|
||||
" Type StorageClass Structure Typedef
|
||||
|
||||
HiLink asm68kComment Comment
|
||||
HiLink asm68kTodo Todo
|
||||
hi def link asm68kComment Comment
|
||||
hi def link asm68kTodo Todo
|
||||
|
||||
HiLink hexNumber Number " Constant
|
||||
HiLink octNumber Number " Constant
|
||||
HiLink binNumber Number " Constant
|
||||
HiLink decNumber Number " Constant
|
||||
HiLink floatNumber Number " Constant
|
||||
HiLink floatExponent Number " Constant
|
||||
HiLink floatE SpecialChar " Statement
|
||||
"HiLink floatE Number " Constant
|
||||
hi def link hexNumber Number " Constant
|
||||
hi def link octNumber Number " Constant
|
||||
hi def link binNumber Number " Constant
|
||||
hi def link decNumber Number " Constant
|
||||
hi def link floatNumber Number " Constant
|
||||
hi def link floatExponent Number " Constant
|
||||
hi def link floatE SpecialChar " Statement
|
||||
"hi def link floatE Number " Constant
|
||||
|
||||
HiLink asm68kImmediate SpecialChar " Statement
|
||||
"HiLink asm68kSymbol Constant
|
||||
hi def link asm68kImmediate SpecialChar " Statement
|
||||
"hi def link asm68kSymbol Constant
|
||||
|
||||
HiLink asm68kString String " Constant
|
||||
HiLink asm68kCharError Error
|
||||
HiLink asm68kStringError Error
|
||||
hi def link asm68kString String " Constant
|
||||
hi def link asm68kCharError Error
|
||||
hi def link asm68kStringError Error
|
||||
|
||||
HiLink asm68kReg Identifier
|
||||
HiLink asm68kOperator Identifier
|
||||
hi def link asm68kReg Identifier
|
||||
hi def link asm68kOperator Identifier
|
||||
|
||||
HiLink asm68kInclude Include " PreProc
|
||||
HiLink asm68kMacro Macro " PreProc
|
||||
HiLink asm68kMacroParam Keyword " Statement
|
||||
hi def link asm68kInclude Include " PreProc
|
||||
hi def link asm68kMacro Macro " PreProc
|
||||
hi def link asm68kMacroParam Keyword " Statement
|
||||
|
||||
HiLink asm68kDirective Special
|
||||
HiLink asm68kPreCond Special
|
||||
hi def link asm68kDirective Special
|
||||
hi def link asm68kPreCond Special
|
||||
|
||||
|
||||
HiLink asm68kOpcode Statement
|
||||
HiLink asm68kCond Conditional " Statement
|
||||
HiLink asm68kRepeat Repeat " Statement
|
||||
hi def link asm68kOpcode Statement
|
||||
hi def link asm68kCond Conditional " Statement
|
||||
hi def link asm68kRepeat Repeat " Statement
|
||||
|
||||
HiLink asm68kLabel Type
|
||||
delcommand HiLink
|
||||
endif
|
||||
hi def link asm68kLabel Type
|
||||
|
||||
let b:current_syntax = "asm68k"
|
||||
|
||||
|
||||
@@ -3,11 +3,8 @@
|
||||
" Maintainer: Kevin Dahlhausen <kdahlhaus@yahoo.com>
|
||||
" Last Change: 2002 Sep 19
|
||||
|
||||
" For version 5.x: Clear all syntax items
|
||||
" For version 6.x: Quit when a syntax file was already loaded
|
||||
if version < 600
|
||||
syntax clear
|
||||
elseif exists("b:current_syntax")
|
||||
" quit when a syntax file was already loaded
|
||||
if exists("b:current_syntax")
|
||||
finish
|
||||
endif
|
||||
|
||||
@@ -52,33 +49,19 @@ syn case match
|
||||
|
||||
|
||||
" Read the general asm syntax
|
||||
if version < 600
|
||||
source <sfile>:p:h/asm.vim
|
||||
else
|
||||
runtime! syntax/asm.vim
|
||||
endif
|
||||
runtime! syntax/asm.vim
|
||||
|
||||
|
||||
" Define the default highlighting.
|
||||
" For version 5.7 and earlier: only when not done already
|
||||
" For version 5.8 and later: only when an item doesn't have highlighting yet
|
||||
if version >= 508 || !exists("did_hitachi_syntax_inits")
|
||||
if version < 508
|
||||
let did_hitachi_syntax_inits = 1
|
||||
command -nargs=+ HiLink hi link <args>
|
||||
else
|
||||
command -nargs=+ HiLink hi def link <args>
|
||||
endif
|
||||
" Only when an item doesn't have highlighting yet
|
||||
|
||||
HiLink asmOpcode Statement
|
||||
HiLink asmRegister Identifier
|
||||
hi def link asmOpcode Statement
|
||||
hi def link asmRegister Identifier
|
||||
|
||||
" My default-color overrides:
|
||||
"hi asmOpcode ctermfg=yellow
|
||||
"hi asmReg ctermfg=lightmagenta
|
||||
" My default-color overrides:
|
||||
"hi asmOpcode ctermfg=yellow
|
||||
"hi asmReg ctermfg=lightmagenta
|
||||
|
||||
delcommand HiLink
|
||||
endif
|
||||
|
||||
let b:current_syntax = "asmh8300"
|
||||
|
||||
|
||||
@@ -4,11 +4,8 @@
|
||||
" URL: http://www.fleiner.com/vim/syntax/asn.vim
|
||||
" Last Change: 2012 Oct 05
|
||||
|
||||
" For version 5.x: Clear all syntax items
|
||||
" For version 6.x: Quit when a syntax file was already loaded
|
||||
if version < 600
|
||||
syntax clear
|
||||
elseif exists("b:current_syntax")
|
||||
" quit when a syntax file was already loaded
|
||||
if exists("b:current_syntax")
|
||||
finish
|
||||
endif
|
||||
|
||||
@@ -50,34 +47,24 @@ syn match asnBraces "[{}]"
|
||||
syn sync ccomment asnComment
|
||||
|
||||
" Define the default highlighting.
|
||||
" For version 5.7 and earlier: only when not done already
|
||||
" For version 5.8 and later: only when an item doesn't have highlighting yet
|
||||
if version >= 508 || !exists("did_asn_syn_inits")
|
||||
if version < 508
|
||||
let did_asn_syn_inits = 1
|
||||
command -nargs=+ HiLink hi link <args>
|
||||
else
|
||||
command -nargs=+ HiLink hi def link <args>
|
||||
endif
|
||||
HiLink asnDefinition Function
|
||||
HiLink asnBraces Function
|
||||
HiLink asnStructure Statement
|
||||
HiLink asnBoolValue Boolean
|
||||
HiLink asnSpecial Special
|
||||
HiLink asnString String
|
||||
HiLink asnCharacter Character
|
||||
HiLink asnSpecialCharacter asnSpecial
|
||||
HiLink asnNumber asnValue
|
||||
HiLink asnComment Comment
|
||||
HiLink asnLineComment asnComment
|
||||
HiLink asnType Type
|
||||
HiLink asnTypeInfo PreProc
|
||||
HiLink asnValue Number
|
||||
HiLink asnExternal Include
|
||||
HiLink asnTagModifier Function
|
||||
HiLink asnFieldOption Type
|
||||
delcommand HiLink
|
||||
endif
|
||||
" Only when an item doesn't have highlighting yet
|
||||
hi def link asnDefinition Function
|
||||
hi def link asnBraces Function
|
||||
hi def link asnStructure Statement
|
||||
hi def link asnBoolValue Boolean
|
||||
hi def link asnSpecial Special
|
||||
hi def link asnString String
|
||||
hi def link asnCharacter Character
|
||||
hi def link asnSpecialCharacter asnSpecial
|
||||
hi def link asnNumber asnValue
|
||||
hi def link asnComment Comment
|
||||
hi def link asnLineComment asnComment
|
||||
hi def link asnType Type
|
||||
hi def link asnTypeInfo PreProc
|
||||
hi def link asnValue Number
|
||||
hi def link asnExternal Include
|
||||
hi def link asnTagModifier Function
|
||||
hi def link asnFieldOption Type
|
||||
|
||||
let &cpo = s:cpo_save
|
||||
unlet s:cpo_save
|
||||
|
||||
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user