mirror of
https://github.com/zoriya/vim.git
synced 2025-12-15 03:36:17 +00:00
Compare commits
114 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
e8a7dfedfc | ||
|
|
1824f45883 | ||
|
|
23324a0b35 | ||
|
|
8617348e21 | ||
|
|
b4367b7fb6 | ||
|
|
2886dcceba | ||
|
|
792cf5e1be | ||
|
|
18223a592e | ||
|
|
d17a57a433 | ||
|
|
ac02a638b4 | ||
|
|
ee1a2b5a2a | ||
|
|
b7a97ef340 | ||
|
|
37ac4a531c | ||
|
|
66f0e6c6e2 | ||
|
|
8c96af9c05 | ||
|
|
a893194d91 | ||
|
|
473952e852 | ||
|
|
9be0e0b9d3 | ||
|
|
1a61339806 | ||
|
|
0f1c6708fd | ||
|
|
2e47cab715 | ||
|
|
7b666c7883 | ||
|
|
383f387d9d | ||
|
|
5be4ceecea | ||
|
|
a7f6c3cf07 | ||
|
|
38f1eeac3d | ||
|
|
2313b61257 | ||
|
|
5e8e967f25 | ||
|
|
ce0fac2897 | ||
|
|
30e8e73506 | ||
|
|
46a426c9ac | ||
|
|
d2842ea60b | ||
|
|
d2c1fb476d | ||
|
|
f21118e4a9 | ||
|
|
4aea03eb87 | ||
|
|
e0d749a496 | ||
|
|
101e99207f | ||
|
|
0d0c3ca007 | ||
|
|
010ee9657a | ||
|
|
03ac52fc02 | ||
|
|
053f712ef2 | ||
|
|
b8ff5c271e | ||
|
|
0f6629a08a | ||
|
|
513537bfff | ||
|
|
cadbe1b1fb | ||
|
|
c258549032 | ||
|
|
910c378d93 | ||
|
|
bd67aac279 | ||
|
|
1e82a784ac | ||
|
|
b20b9e14dd | ||
|
|
4d5c12626c | ||
|
|
bffba7f704 | ||
|
|
589edb3404 | ||
|
|
56ebbabea1 | ||
|
|
4bd782339e | ||
|
|
7528d1f6b5 | ||
|
|
cd67059c0c | ||
|
|
181d4f58cc | ||
|
|
cebfcffa40 | ||
|
|
d103ee7843 | ||
|
|
7a9bd7c1e0 | ||
|
|
705918f9f7 | ||
|
|
7e0f462db5 | ||
|
|
397c6a1438 | ||
|
|
37d1807a80 | ||
|
|
0e57dd859e | ||
|
|
69198cb8c0 | ||
|
|
dac1347b4d | ||
|
|
8aeec40207 | ||
|
|
ea8dcf8346 | ||
|
|
9c658c9eac | ||
|
|
248fdb3332 | ||
|
|
e00fdf35d0 | ||
|
|
8ae54375ca | ||
|
|
af91438338 | ||
|
|
a046b37c22 | ||
|
|
1ac90b4fa6 | ||
|
|
60a8de28d1 | ||
|
|
50bf7ce0c9 | ||
|
|
0571f3d6f9 | ||
|
|
076d98839c | ||
|
|
5babc6e858 | ||
|
|
997d42427e | ||
|
|
017ba07fa2 | ||
|
|
d9b0d83b13 | ||
|
|
57da698168 | ||
|
|
dbec74907e | ||
|
|
1946de140a | ||
|
|
9283f92008 | ||
|
|
dcb2b9cb08 | ||
|
|
0eddca40a6 | ||
|
|
8fe1000e9c | ||
|
|
840d16fd36 | ||
|
|
d20dcb3d01 | ||
|
|
410e98a70b | ||
|
|
e5fbd73930 | ||
|
|
96e38a86a7 | ||
|
|
adbde3fbed | ||
|
|
bf9a3b0164 | ||
|
|
b9c79cf5cc | ||
|
|
f92e58cadb | ||
|
|
7ee80f7661 | ||
|
|
ce90e36f59 | ||
|
|
9490b9a61c | ||
|
|
3d2a3cbce8 | ||
|
|
4544bd2f24 | ||
|
|
fca068b977 | ||
|
|
6cdce2a003 | ||
|
|
6d7d7cf750 | ||
|
|
f6ed61e148 | ||
|
|
30e9b3c425 | ||
|
|
fa90d70884 | ||
|
|
9b1cd65d8b | ||
|
|
261f346f81 |
1
.gitignore
vendored
1
.gitignore
vendored
@@ -77,6 +77,7 @@ src/testdir/messages
|
||||
src/testdir/viminfo
|
||||
src/testdir/opt_test.vim
|
||||
runtime/indent/testdir/*.out
|
||||
runtime/indent/testdir/*.fail
|
||||
src/memfile_test
|
||||
src/json_test
|
||||
src/message_test
|
||||
|
||||
32
Filelist
32
Filelist
@@ -21,6 +21,7 @@ SRC_ALL = \
|
||||
src/blob.c \
|
||||
src/blowfish.c \
|
||||
src/buffer.c \
|
||||
src/bufwrite.c \
|
||||
src/change.c \
|
||||
src/channel.c \
|
||||
src/charset.c \
|
||||
@@ -32,10 +33,14 @@ SRC_ALL = \
|
||||
src/dict.c \
|
||||
src/diff.c \
|
||||
src/digraph.c \
|
||||
src/drawline.c \
|
||||
src/drawscreen.c \
|
||||
src/edit.c \
|
||||
src/eval.c \
|
||||
src/evalbuffer.c \
|
||||
src/evalfunc.c \
|
||||
src/evalvars.c \
|
||||
src/evalwindow.c \
|
||||
src/ex_cmdidxs.h \
|
||||
src/ex_cmds.c \
|
||||
src/ex_cmds.h \
|
||||
@@ -76,6 +81,7 @@ SRC_ALL = \
|
||||
src/message_test.c \
|
||||
src/misc1.c \
|
||||
src/misc2.c \
|
||||
src/mouse.c \
|
||||
src/move.c \
|
||||
src/mysign \
|
||||
src/nbdebug.c \
|
||||
@@ -85,13 +91,17 @@ SRC_ALL = \
|
||||
src/ops.c \
|
||||
src/option.c \
|
||||
src/option.h \
|
||||
src/popupmnu.c \
|
||||
src/optiondefs.h \
|
||||
src/optionstr.c \
|
||||
src/popupmenu.c \
|
||||
src/popupwin.c \
|
||||
src/profiler.c \
|
||||
src/quickfix.c \
|
||||
src/regexp.c \
|
||||
src/regexp_bt.c \
|
||||
src/regexp_nfa.c \
|
||||
src/regexp.h \
|
||||
src/register.c \
|
||||
src/scriptfile.c \
|
||||
src/screen.c \
|
||||
src/search.c \
|
||||
@@ -102,6 +112,7 @@ SRC_ALL = \
|
||||
src/spell.c \
|
||||
src/spell.h \
|
||||
src/spellfile.c \
|
||||
src/spellsuggest.c \
|
||||
src/structs.h \
|
||||
src/syntax.c \
|
||||
src/tag.c \
|
||||
@@ -176,6 +187,7 @@ SRC_ALL = \
|
||||
src/proto/blob.pro \
|
||||
src/proto/blowfish.pro \
|
||||
src/proto/buffer.pro \
|
||||
src/proto/bufwrite.pro \
|
||||
src/proto/change.pro \
|
||||
src/proto/channel.pro \
|
||||
src/proto/charset.pro \
|
||||
@@ -187,10 +199,14 @@ SRC_ALL = \
|
||||
src/proto/dict.pro \
|
||||
src/proto/diff.pro \
|
||||
src/proto/digraph.pro \
|
||||
src/proto/drawline.pro \
|
||||
src/proto/drawscreen.pro \
|
||||
src/proto/edit.pro \
|
||||
src/proto/eval.pro \
|
||||
src/proto/evalbuffer.pro \
|
||||
src/proto/evalfunc.pro \
|
||||
src/proto/evalvars.pro \
|
||||
src/proto/evalwindow.pro \
|
||||
src/proto/ex_cmds.pro \
|
||||
src/proto/ex_cmds2.pro \
|
||||
src/proto/ex_docmd.pro \
|
||||
@@ -220,16 +236,19 @@ SRC_ALL = \
|
||||
src/proto/message.pro \
|
||||
src/proto/misc1.pro \
|
||||
src/proto/misc2.pro \
|
||||
src/proto/mouse.pro \
|
||||
src/proto/move.pro \
|
||||
src/proto/netbeans.pro \
|
||||
src/proto/normal.pro \
|
||||
src/proto/ops.pro \
|
||||
src/proto/option.pro \
|
||||
src/proto/popupmnu.pro \
|
||||
src/proto/optionstr.pro \
|
||||
src/proto/popupmenu.pro \
|
||||
src/proto/popupwin.pro \
|
||||
src/proto/profiler.pro \
|
||||
src/proto/quickfix.pro \
|
||||
src/proto/regexp.pro \
|
||||
src/proto/register.pro \
|
||||
src/proto/scriptfile.pro \
|
||||
src/proto/screen.pro \
|
||||
src/proto/search.pro \
|
||||
@@ -239,6 +258,7 @@ SRC_ALL = \
|
||||
src/proto/sound.pro \
|
||||
src/proto/spell.pro \
|
||||
src/proto/spellfile.pro \
|
||||
src/proto/spellsuggest.pro \
|
||||
src/proto/syntax.pro \
|
||||
src/proto/tag.pro \
|
||||
src/proto/term.pro \
|
||||
@@ -274,7 +294,7 @@ SRC_ALL = \
|
||||
src/libvterm/src/encoding/uk.inc \
|
||||
src/libvterm/src/encoding/uk.tbl \
|
||||
src/libvterm/src/keyboard.c \
|
||||
src/libvterm/src/mouse.c \
|
||||
src/libvterm/src/termmouse.c \
|
||||
src/libvterm/src/parser.c \
|
||||
src/libvterm/src/pen.c \
|
||||
src/libvterm/src/rect.h \
|
||||
@@ -499,7 +519,7 @@ SRC_DOS = \
|
||||
src/testdir/Make_dos.mak \
|
||||
src/testdir/Make_ming.mak \
|
||||
src/testdir/dos.vim \
|
||||
src/uninstal.c \
|
||||
src/uninstall.c \
|
||||
src/vim.def \
|
||||
src/vim.rc \
|
||||
src/vimio.h \
|
||||
@@ -514,7 +534,7 @@ SRC_DOS = \
|
||||
nsis/gvim_version.nsh \
|
||||
nsis/README.txt \
|
||||
nsis/lang/*.nsi \
|
||||
uninstal.txt \
|
||||
uninstall.txt \
|
||||
src/VisVim/Commands.cpp \
|
||||
src/VisVim/Commands.h \
|
||||
src/VisVim/DSAddIn.cpp \
|
||||
@@ -834,7 +854,7 @@ BIN_AMI = \
|
||||
# files for DOS binary (also in extra archive)
|
||||
BIN_DOS = \
|
||||
README_bindos.txt \
|
||||
uninstal.txt \
|
||||
uninstall.txt \
|
||||
|
||||
# files for Win32 OLE binary (also in extra archive)
|
||||
BIN_OLE = \
|
||||
|
||||
14
Makefile
14
Makefile
@@ -165,7 +165,7 @@ MINOR = 1
|
||||
# xxd/xxd.exe to xxdw32.exe
|
||||
# vim.pdb to vimw32.pdb
|
||||
# install.exe to installw32.exe
|
||||
# uninstal.exe to uninstalw32.exe
|
||||
# uninstall.exe to uninstallw32.exe
|
||||
# Win32 GUI version build:
|
||||
# - > cd src
|
||||
# > nmake -f Make_mvc.mak GUI=yes
|
||||
@@ -175,7 +175,7 @@ MINOR = 1
|
||||
# - 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.
|
||||
# - Delete vimrun.exe, install.exe and uninstall.exe.
|
||||
# Win32 GUI version with OLE, PERL, Ruby, TCL, PYTHON and dynamic IME:
|
||||
# - Install the interfaces you want, see src/INSTALLpc.txt
|
||||
# Adjust bigvim.bat to match the version of each interface you want.
|
||||
@@ -188,7 +188,7 @@ MINOR = 1
|
||||
# - check the output.
|
||||
# - Rename "gvim.exe" to "gvim_ole.exe".
|
||||
# - Rename gvim.pdb to "gvim_ole.pdb".
|
||||
# - Delete install.exe and uninstal.exe.
|
||||
# - Delete install.exe and uninstall.exe.
|
||||
# Create the archives:
|
||||
# - Copy all the "*.exe" files to where this Makefile is.
|
||||
# - Copy all the "*.pdb" files to where this Makefile is.
|
||||
@@ -197,7 +197,7 @@ MINOR = 1
|
||||
# NSIS self installing exe:
|
||||
# - To get NSIS see http://nsis.sourceforge.net
|
||||
# - Make sure gvim_ole.exe, vimw32.exe, installw32.exe,
|
||||
# uninstalw32.exe, teew32.exe and xxdw32.exe have been build as mentioned
|
||||
# uninstallw32.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
|
||||
@@ -518,7 +518,7 @@ dosbin_gvim: dist no_title.vim dist/$(COMMENT_GVIM)
|
||||
cp xxdw32.exe dist/vim/$(VIMRTDIR)/xxd.exe
|
||||
cp vimrun.exe dist/vim/$(VIMRTDIR)/vimrun.exe
|
||||
cp installw32.exe dist/vim/$(VIMRTDIR)/install.exe
|
||||
cp uninstalw32.exe dist/vim/$(VIMRTDIR)/uninstal.exe
|
||||
cp uninstallw32.exe dist/vim/$(VIMRTDIR)/uninstall.exe
|
||||
mkdir dist/vim/$(VIMRTDIR)/GvimExt32
|
||||
cp gvimext.dll dist/vim/$(VIMRTDIR)/GvimExt32/gvimext.dll
|
||||
mkdir dist/vim/$(VIMRTDIR)/GvimExt64
|
||||
@@ -539,7 +539,7 @@ dosbin_w32: dist no_title.vim dist/$(COMMENT_W32)
|
||||
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
|
||||
cp uninstallw32.exe dist/vim/$(VIMRTDIR)/uninstall.exe
|
||||
cd dist && zip -9 -rD -z vim$(VERSION)w32.zip vim <$(COMMENT_W32)
|
||||
cp vimw32.pdb dist/vim$(VERSION)w32.pdb
|
||||
|
||||
@@ -557,7 +557,7 @@ dosbin_ole: dist no_title.vim dist/$(COMMENT_OLE)
|
||||
cp xxdw32.exe dist/vim/$(VIMRTDIR)/xxd.exe
|
||||
cp vimrun.exe dist/vim/$(VIMRTDIR)/vimrun.exe
|
||||
cp installw32.exe dist/vim/$(VIMRTDIR)/install.exe
|
||||
cp uninstalw32.exe dist/vim/$(VIMRTDIR)/uninstal.exe
|
||||
cp uninstallw32.exe dist/vim/$(VIMRTDIR)/uninstall.exe
|
||||
cp gvimext.dll dist/vim/$(VIMRTDIR)/gvimext.dll
|
||||
cp README_ole.txt dist/vim/$(VIMRTDIR)
|
||||
cp src/VisVim/VisVim.dll dist/vim/$(VIMRTDIR)/VisVim.dll
|
||||
|
||||
@@ -14,7 +14,7 @@ To build the installable .exe:
|
||||
gvim.exe (the OLE version),
|
||||
vimrun.exe,
|
||||
install.exe,
|
||||
uninstal.exe,
|
||||
uninstall.exe,
|
||||
tee/tee.exe,
|
||||
xxd/xxd.exe,
|
||||
|
||||
|
||||
@@ -341,13 +341,13 @@ Section "$(str_section_exe)" id_section_exe
|
||||
File ${VIMSRC}\vim${BIT}.dll
|
||||
!endif
|
||||
File /oname=install.exe ${VIMSRC}\installw32.exe
|
||||
File /oname=uninstal.exe ${VIMSRC}\uninstalw32.exe
|
||||
File /oname=uninstall.exe ${VIMSRC}\uninstallw32.exe
|
||||
File ${VIMSRC}\vimrun.exe
|
||||
File /oname=tee.exe ${VIMSRC}\teew32.exe
|
||||
File /oname=xxd.exe ${VIMSRC}\xxdw32.exe
|
||||
File ..\vimtutor.bat
|
||||
File ..\README.txt
|
||||
File ..\uninstal.txt
|
||||
File ..\uninstall.txt
|
||||
File ${VIMRT}\*.vim
|
||||
File ${VIMRT}\rgb.txt
|
||||
|
||||
@@ -955,7 +955,7 @@ Section "un.$(str_unsection_register)" id_unsection_register
|
||||
|
||||
# delete the context menu entry and batch files
|
||||
DetailPrint "$(str_msg_unregistering)"
|
||||
nsExec::Exec "$0\uninstal.exe -nsis"
|
||||
nsExec::Exec "$0\uninstall.exe -nsis"
|
||||
Pop $3
|
||||
|
||||
# We may have been put to the background when uninstall did something.
|
||||
|
||||
280
nsis/lang/serbian.nsi
Normal file
280
nsis/lang/serbian.nsi
Normal file
@@ -0,0 +1,280 @@
|
||||
# vi:set ts=8 sts=4 sw=4 et fdm=marker:
|
||||
#
|
||||
# serbian.nsi: Serbian language strings for gvim NSIS installer.
|
||||
#
|
||||
# Locale ID : 3098
|
||||
# fileencoding : UTF-8
|
||||
# Author : Ivan Pešić
|
||||
|
||||
!insertmacro MUI_LANGUAGE "Српски"
|
||||
|
||||
|
||||
# Overwrite the default translation.
|
||||
# These strings should be always English. Otherwise dosinst.c fails.
|
||||
LangString ^SetupCaption ${LANG_SERBIAN} \
|
||||
"$(^Name) Setup"
|
||||
LangString ^UninstallCaption ${LANG_SERBIAN} \
|
||||
"$(^Name) Uninstall"
|
||||
|
||||
##############################################################################
|
||||
# MUI Configuration Strings {{{1
|
||||
##############################################################################
|
||||
|
||||
#LangString str_dest_folder ${LANG_SERBIAN} \
|
||||
# "Destination Folder (Must end with $\"vim$\")"
|
||||
|
||||
LangString str_show_readme ${LANG_SERBIAN} \
|
||||
"Прикажи ПРОЧИТАЈМЕ када се заврши инсталација"
|
||||
|
||||
# Install types:
|
||||
LangString str_type_typical ${LANG_SERBIAN} \
|
||||
"Типична"
|
||||
|
||||
LangString str_type_minimal ${LANG_SERBIAN} \
|
||||
"Минимална"
|
||||
|
||||
LangString str_type_full ${LANG_SERBIAN} \
|
||||
"Пуна"
|
||||
|
||||
|
||||
##############################################################################
|
||||
# Section Titles & Description {{{1
|
||||
##############################################################################
|
||||
|
||||
LangString str_section_old_ver ${LANG_SERBIAN} \
|
||||
"Уклањање постојећ(е/их) верзиј(е/а)"
|
||||
LangString str_desc_old_ver ${LANG_SERBIAN} \
|
||||
"Уклања постојећ(у/е) Vim верзииј(у/е) из вашег система."
|
||||
|
||||
LangString str_section_exe ${LANG_SERBIAN} \
|
||||
"Vim ГКИ и фајлови потребни за извршавање"
|
||||
LangString str_desc_exe ${LANG_SERBIAN} \
|
||||
"Vim ГКИ извршни фајлови и фајлови потребни током извршавања. Ова компонента је неопходна."
|
||||
|
||||
LangString str_section_console ${LANG_SERBIAN} \
|
||||
"Vim конзолни програм"
|
||||
LangString str_desc_console ${LANG_SERBIAN} \
|
||||
"Конзолна верзија програма Vim (vim.exe)."
|
||||
|
||||
LangString str_section_batch ${LANG_SERBIAN} \
|
||||
"Креирај .bat фајлове"
|
||||
LangString str_desc_batch ${LANG_SERBIAN} \
|
||||
"Креира у Windows директоријуму .bat фајлове за Vim варијанте \
|
||||
у циљу коришћења из командне линије."
|
||||
|
||||
LangString str_group_icons ${LANG_SERBIAN} \
|
||||
"Креирај иконе за Vim"
|
||||
LangString str_desc_icons ${LANG_SERBIAN} \
|
||||
"Креира иконе за Vim на различитим местима, како би се олакшао приступ."
|
||||
|
||||
LangString str_section_desktop ${LANG_SERBIAN} \
|
||||
"На радној површини"
|
||||
LangString str_desc_desktop ${LANG_SERBIAN} \
|
||||
"Креира иконе за gVim извршне фајлове на радној површини."
|
||||
|
||||
LangString str_section_start_menu ${LANG_SERBIAN} \
|
||||
"У фасцикли Програми унутар Старт менија"
|
||||
LangString str_desc_start_menu ${LANG_SERBIAN} \
|
||||
"Додаје Vim у фолдер Програми Старт менија."
|
||||
|
||||
#LangString str_section_quick_launch ${LANG_SERBIAN} \
|
||||
# "In the Quick Launch Bar"
|
||||
#LangString str_desc_quick_launch ${LANG_SERBIAN} \
|
||||
# "Add Vim shortcut in the quick launch bar."
|
||||
|
||||
LangString str_section_edit_with ${LANG_SERBIAN} \
|
||||
"Додај Vim контекстни мени"
|
||||
LangString str_desc_edit_with ${LANG_SERBIAN} \
|
||||
"Додаје Vim у $\"Отвори помоћу...$\" листу контекстног менија."
|
||||
|
||||
#LangString str_section_edit_with32 ${LANG_SERBIAN} \
|
||||
# "32-bit Version"
|
||||
#LangString str_desc_edit_with32 ${LANG_SERBIAN} \
|
||||
# "Add Vim to the $\"Open With...$\" context menu list \
|
||||
# for 32-bit applications."
|
||||
|
||||
#LangString str_section_edit_with64 ${LANG_SERBIAN} \
|
||||
# "64-bit Version"
|
||||
#LangString str_desc_edit_with64 ${LANG_SERBIAN} \
|
||||
# "Add Vim to the $\"Open With...$\" context menu list \
|
||||
# for 64-bit applications."
|
||||
|
||||
LangString str_section_vim_rc ${LANG_SERBIAN} \
|
||||
"Креирај Подразумевану конфигурацију"
|
||||
LangString str_desc_vim_rc ${LANG_SERBIAN} \
|
||||
"Креира подразумевани конфиг фајл (_vimrc) ако неки већ не постоји."
|
||||
|
||||
LangString str_group_plugin ${LANG_SERBIAN} \
|
||||
"Креира директоријуме додатака"
|
||||
LangString str_desc_plugin ${LANG_SERBIAN} \
|
||||
"Креира директоријуме додатака. Ови директоријуми омогућавају проширење програма Vim \
|
||||
убацивањем фајла у директоријум."
|
||||
|
||||
LangString str_section_plugin_home ${LANG_SERBIAN} \
|
||||
"Приватне"
|
||||
LangString str_desc_plugin_home ${LANG_SERBIAN} \
|
||||
"Креира директоријуме додатака у HOME директоријуму."
|
||||
|
||||
LangString str_section_plugin_vim ${LANG_SERBIAN} \
|
||||
"Дељене"
|
||||
LangString str_desc_plugin_vim ${LANG_SERBIAN} \
|
||||
"Креира директоријуме додатака у Vim инсталационом директоријуму, користе их сви \
|
||||
на систему."
|
||||
|
||||
LangString str_section_vis_vim ${LANG_SERBIAN} \
|
||||
"VisVim проширење"
|
||||
LangString str_desc_vis_vim ${LANG_SERBIAN} \
|
||||
"VisVim проширење за Microsoft Visual Studio интеграцију."
|
||||
|
||||
LangString str_section_nls ${LANG_SERBIAN} \
|
||||
"Подршка за домаћи језик"
|
||||
LangString str_desc_nls ${LANG_SERBIAN} \
|
||||
"Инсталира фајлове за домаћу језичку подршку."
|
||||
|
||||
LangString str_unsection_register ${LANG_SERBIAN} \
|
||||
"Поништи регистрацију Vim"
|
||||
LangString str_desc_unregister ${LANG_SERBIAN} \
|
||||
"Поништава регистрацију програма Vim на систему."
|
||||
|
||||
LangString str_unsection_exe ${LANG_SERBIAN} \
|
||||
"Уклони Vim извршне фајлове/фајлове потребне у време извршавања"
|
||||
LangString str_desc_rm_exe ${LANG_SERBIAN} \
|
||||
"Уклања све Vim извршне фајлове и оне потребне у време извршавања."
|
||||
|
||||
LangString str_ungroup_plugin ${LANG_SERBIAN} \
|
||||
"Укони директоријуме додатака"
|
||||
LangString str_desc_rm_plugin ${LANG_SERBIAN} \
|
||||
"Уклања директоријуме додатака ако су празни."
|
||||
|
||||
LangString str_unsection_plugin_home ${LANG_SERBIAN} \
|
||||
"Приватне"
|
||||
LangString str_desc_rm_plugin_home ${LANG_SERBIAN} \
|
||||
"Уклања директоријуме додатака из HOME директоријума."
|
||||
|
||||
LangString str_unsection_plugin_vim ${LANG_SERBIAN} \
|
||||
"Дељене"
|
||||
LangString str_desc_rm_plugin_vim ${LANG_SERBIAN} \
|
||||
"Уклања директоријуме додатака из Vim инсталациониг директоријума."
|
||||
|
||||
LangString str_unsection_rootdir ${LANG_SERBIAN} \
|
||||
"Уклони Vim корени директоријум"
|
||||
LangString str_desc_rm_rootdir ${LANG_SERBIAN} \
|
||||
"Уклања Vim корени директоријум. Он садржи ваше Vim конфигурационе фајлове!"
|
||||
|
||||
|
||||
##############################################################################
|
||||
# Messages {{{1
|
||||
##############################################################################
|
||||
|
||||
#LangString str_msg_too_many_ver ${LANG_SERBIAN} \
|
||||
# "Found $vim_old_ver_count Vim versions on your system.$\r$\n\
|
||||
# This installer can only handle ${VIM_MAX_OLD_VER} versions \
|
||||
# at most.$\r$\n\
|
||||
# Please remove some versions and start again."
|
||||
|
||||
#LangString str_msg_invalid_root ${LANG_SERBIAN} \
|
||||
# "Invalid install path: $vim_install_root!$\r$\n\
|
||||
# It should end with $\"vim$\"."
|
||||
|
||||
#LangString str_msg_bin_mismatch ${LANG_SERBIAN} \
|
||||
# "Binary path mismatch!$\r$\n$\r$\n\
|
||||
# Expect the binary path to be $\"$vim_bin_path$\",$\r$\n\
|
||||
# but system indicates the binary path is $\"$INSTDIR$\"."
|
||||
|
||||
#LangString str_msg_vim_running ${LANG_SERBIAN} \
|
||||
# "Vim is still running on your system.$\r$\n\
|
||||
# Please close all instances of Vim before you continue."
|
||||
|
||||
#LangString str_msg_register_ole ${LANG_SERBIAN} \
|
||||
# "Attempting to register Vim with OLE. \
|
||||
# There is no message indicates whether this works or not."
|
||||
|
||||
#LangString str_msg_unreg_ole ${LANG_SERBIAN} \
|
||||
# "Attempting to unregister Vim with OLE. \
|
||||
# There is no message indicates whether this works or not."
|
||||
|
||||
#LangString str_msg_rm_start ${LANG_SERBIAN} \
|
||||
# "Uninstalling the following version:"
|
||||
|
||||
#LangString str_msg_rm_fail ${LANG_SERBIAN} \
|
||||
# "Fail to uninstall the following version:"
|
||||
|
||||
#LangString str_msg_no_rm_key ${LANG_SERBIAN} \
|
||||
# "Cannot find uninstaller registry key."
|
||||
|
||||
#LangString str_msg_no_rm_reg ${LANG_SERBIAN} \
|
||||
# "Cannot find uninstaller from registry."
|
||||
|
||||
#LangString str_msg_no_rm_exe ${LANG_SERBIAN} \
|
||||
# "Cannot access uninstaller."
|
||||
|
||||
#LangString str_msg_rm_copy_fail ${LANG_SERBIAN} \
|
||||
# "Fail to copy uninstaller to temporary directory."
|
||||
|
||||
#LangString str_msg_rm_run_fail ${LANG_SERBIAN} \
|
||||
# "Fail to run uninstaller."
|
||||
|
||||
#LangString str_msg_abort_install ${LANG_SERBIAN} \
|
||||
# "Installer will abort."
|
||||
|
||||
LangString str_msg_install_fail ${LANG_SERBIAN} \
|
||||
"Инсталација није успела. Више среће идући пут."
|
||||
|
||||
LangString str_msg_rm_exe_fail ${LANG_SERBIAN} \
|
||||
"Неки фајлови у $0 нису обрисани!$\r$\n\
|
||||
Морате то ручно да обавите."
|
||||
|
||||
#LangString str_msg_rm_root_fail ${LANG_SERBIAN} \
|
||||
# "WARNING: Cannot remove $\"$vim_install_root$\", it is not empty!"
|
||||
|
||||
LangString str_msg_uninstalling ${LANG_SERBIAN} \
|
||||
"Уклањање старе верзије..."
|
||||
|
||||
LangString str_msg_registering ${LANG_SERBIAN} \
|
||||
"Регистровање..."
|
||||
|
||||
LangString str_msg_unregistering ${LANG_SERBIAN} \
|
||||
"Поништавање регистрације..."
|
||||
|
||||
|
||||
##############################################################################
|
||||
# Dialog Box {{{1
|
||||
##############################################################################
|
||||
|
||||
LangString str_vimrc_page_title ${LANG_SERBIAN} \
|
||||
"Изаберите _vimrc подешавања"
|
||||
LangString str_vimrc_page_subtitle ${LANG_SERBIAN} \
|
||||
"Изаберите подешавања за побољшања, тастатуру и миша."
|
||||
|
||||
LangString str_msg_compat_title ${LANG_SERBIAN} \
|
||||
" Vi / Vim понашање "
|
||||
LangString str_msg_compat_desc ${LANG_SERBIAN} \
|
||||
"&Компатибилност и побољшања"
|
||||
LangString str_msg_compat_vi ${LANG_SERBIAN} \
|
||||
"Vi компатибилно"
|
||||
LangString str_msg_compat_vim ${LANG_SERBIAN} \
|
||||
"Vim оригинално"
|
||||
LangString str_msg_compat_defaults ${LANG_SERBIAN} \
|
||||
"Vim са неким побољшањима (учитава defaults.vim)"
|
||||
LangString str_msg_compat_all ${LANG_SERBIAN} \
|
||||
"Vim са свим побољшањима (учитава vimrc_example.vim) (Подразумевано)"
|
||||
|
||||
LangString str_msg_keymap_title ${LANG_SERBIAN} \
|
||||
" Мапирања "
|
||||
LangString str_msg_keymap_desc ${LANG_SERBIAN} \
|
||||
"&Ремапира неколико тастера за Windows (Ctrl-V, Ctrl-C, Ctrl-A, Ctrl-S, Ctrl-F, итд.)"
|
||||
LangString str_msg_keymap_default ${LANG_SERBIAN} \
|
||||
"Немој да ремапираш тастере (Подразумевано)"
|
||||
LangString str_msg_keymap_windows ${LANG_SERBIAN} \
|
||||
"Ремапира неколико тастера"
|
||||
|
||||
LangString str_msg_mouse_title ${LANG_SERBIAN} \
|
||||
" Миш "
|
||||
LangString str_msg_mouse_desc ${LANG_SERBIAN} \
|
||||
"&Понашање левог и десног тастера"
|
||||
LangString str_msg_mouse_default ${LANG_SERBIAN} \
|
||||
"Десни: искачући мени, Леви: визуелни режим (Подразумевано)"
|
||||
LangString str_msg_mouse_windows ${LANG_SERBIAN} \
|
||||
"Десни: искачући мени, Леви: режим избора (Windows)"
|
||||
LangString str_msg_mouse_unix ${LANG_SERBIAN} \
|
||||
"Десни: проширује избор, Леви: визуелни режим (Unix)"
|
||||
@@ -2,7 +2,7 @@
|
||||
" Language: Haskell
|
||||
" Maintainer: Daniel Campoverde <alx@sillybytes.net>
|
||||
" URL: https://github.com/alx741/haskellcomplete.vim
|
||||
" Last Change: 2018 Aug 26
|
||||
" Last Change: 2019 May 14
|
||||
|
||||
" Usage: setlocal omnifunc=haskellcomplete#Complete
|
||||
|
||||
@@ -63,6 +63,7 @@ function! haskellcomplete#Complete(findstart, base)
|
||||
call add(l:matches, extension)
|
||||
endif
|
||||
endfor
|
||||
let b:completingLangExtension = 0
|
||||
return l:matches
|
||||
endif
|
||||
|
||||
@@ -78,6 +79,7 @@ function! haskellcomplete#Complete(findstart, base)
|
||||
call add(l:matches, flag)
|
||||
endif
|
||||
endfor
|
||||
let b:completingOptionsGHC = 0
|
||||
return l:matches
|
||||
endif
|
||||
|
||||
@@ -93,6 +95,7 @@ function! haskellcomplete#Complete(findstart, base)
|
||||
call add(l:matches, module)
|
||||
endif
|
||||
endfor
|
||||
let b:completingModule = 0
|
||||
return l:matches
|
||||
endif
|
||||
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
" Vim completion script
|
||||
" Language: HTML and XHTML
|
||||
" Maintainer: Mikolaj Machowski ( mikmach AT wp DOT pl )
|
||||
" Last Change: 2014 Jun 20
|
||||
" Last Change: 2019 Sep 27
|
||||
|
||||
" Distinguish between HTML versions.
|
||||
" To use with other HTML versions add another "elseif" condition to match
|
||||
@@ -245,7 +245,8 @@ function! htmlcomplete#CompleteTags(findstart, base)
|
||||
" If context contains white space it is attribute.
|
||||
" It can be also value of attribute.
|
||||
" We have to get first word to offer proper completions
|
||||
if context == ''
|
||||
if context =~ '^\s*$'
|
||||
" empty or whitespace line
|
||||
let tag = ''
|
||||
else
|
||||
let tag = split(context)[0]
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
" Warning: This also deletes all menus defined by the user!
|
||||
"
|
||||
" Maintainer: Bram Moolenaar <Bram@vim.org>
|
||||
" Last Change: 2001 May 27
|
||||
" Last Change: 2019 Sep 11
|
||||
|
||||
aunmenu *
|
||||
tlunmenu *
|
||||
@@ -21,6 +21,11 @@ silent! unlet menutrans_path_dialog
|
||||
silent! unlet menutrans_tags_dialog
|
||||
silent! unlet menutrans_textwidth_dialog
|
||||
silent! unlet menutrans_fileformat_dialog
|
||||
silent! unlet menutrans_fileformat_choices
|
||||
silent! unlet menutrans_no_file
|
||||
silent! unlet menutrans_set_lang_to
|
||||
silent! unlet menutrans_spell_change_ARG_to
|
||||
silent! unlet menutrans_spell_add_ARG_to_word_list
|
||||
silent! unlet menutrans_spell_ignore_ARG
|
||||
|
||||
" vim: set sw=2 :
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
*autocmd.txt* For Vim version 8.1. Last change: 2019 Jun 26
|
||||
*autocmd.txt* For Vim version 8.1. Last change: 2019 Sep 16
|
||||
|
||||
|
||||
VIM REFERENCE MANUAL by Bram Moolenaar
|
||||
@@ -355,6 +355,10 @@ Name triggered by ~
|
||||
when popup menu visible
|
||||
|TextYankPost| after text has been yanked or deleted
|
||||
|
||||
|SafeState| nothing pending, going to wait for the user to type a
|
||||
character
|
||||
|SafeStateAgain| repeated SafeState
|
||||
|
||||
|ColorSchemePre| before loading a color scheme
|
||||
|ColorScheme| after loading a color scheme
|
||||
|
||||
@@ -554,16 +558,14 @@ CmdlineLeave Before leaving the command line.
|
||||
*CmdwinEnter*
|
||||
CmdwinEnter After entering the command-line window.
|
||||
Useful for setting options specifically for
|
||||
this special type of window. This is
|
||||
triggered _instead_ of BufEnter and WinEnter.
|
||||
this special type of window.
|
||||
<afile> is set to a single character,
|
||||
indicating the type of command-line.
|
||||
|cmdwin-char|
|
||||
*CmdwinLeave*
|
||||
CmdwinLeave Before leaving the command-line window.
|
||||
Useful to clean up any global setting done
|
||||
with CmdwinEnter. This is triggered _instead_
|
||||
of BufLeave and WinLeave.
|
||||
with CmdwinEnter.
|
||||
<afile> is set to a single character,
|
||||
indicating the type of command-line.
|
||||
|cmdwin-char|
|
||||
@@ -957,6 +959,32 @@ RemoteReply When a reply from a Vim that functions as
|
||||
Note that even if an autocommand is defined,
|
||||
the reply should be read with |remote_read()|
|
||||
to consume it.
|
||||
*SafeState*
|
||||
SafeState When nothing is pending, going to wait for the
|
||||
user to type a character.
|
||||
This will not be triggered when:
|
||||
- an operator is pending
|
||||
- a register was entered with "r
|
||||
- halfway executing a command
|
||||
- executing a mapping
|
||||
- there is typeahead
|
||||
- Insert mode completion is active
|
||||
- Command line completion is active
|
||||
You can use `mode()` to find out what state
|
||||
Vim is in. That may be:
|
||||
- VIsual mode
|
||||
- Normal mode
|
||||
- Insert mode
|
||||
- Command-line mode
|
||||
Depending on what you want to do, you may also
|
||||
check more with `state()`, e.g. whether the
|
||||
screen was scrolled for messages.
|
||||
*SafeStateAgain*
|
||||
SafeStateAgain Like SafeState but after processing any
|
||||
messages and invoking callbacks. This may be
|
||||
triggered often, don't do something that takes
|
||||
time.
|
||||
|
||||
*SessionLoadPost*
|
||||
SessionLoadPost After loading the session file created using
|
||||
the |:mksession| command.
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
*change.txt* For Vim version 8.1. Last change: 2019 Aug 21
|
||||
*change.txt* For Vim version 8.1. Last change: 2019 Sep 27
|
||||
|
||||
|
||||
VIM REFERENCE MANUAL by Bram Moolenaar
|
||||
@@ -1172,7 +1172,7 @@ Rationale: In Vi the "y" command followed by a backwards motion would
|
||||
With a linewise yank command the cursor is put in the first line, but the
|
||||
column is unmodified, thus it may not be on the first yanked character.
|
||||
|
||||
There are ten types of registers: *registers* *E354*
|
||||
There are ten types of registers: *registers* *{register}* *E354*
|
||||
1. The unnamed register ""
|
||||
2. 10 numbered registers "0 to "9
|
||||
3. The small delete register "-
|
||||
@@ -1618,8 +1618,6 @@ By default, "b:#" is included. This means that a line that starts with
|
||||
"#include" is not recognized as a comment line. But a line that starts with
|
||||
"# define" is recognized. This is a compromise.
|
||||
|
||||
{not available when compiled without the |+comments| feature}
|
||||
|
||||
*fo-table*
|
||||
You can use the 'formatoptions' option to influence how Vim formats text.
|
||||
'formatoptions' is a string that can contain any of the letters below. The
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
*channel.txt* For Vim version 8.1. Last change: 2019 Aug 22
|
||||
*channel.txt* For Vim version 8.1. Last change: 2019 Sep 11
|
||||
|
||||
|
||||
VIM REFERENCE MANUAL by Bram Moolenaar
|
||||
@@ -508,6 +508,9 @@ ch_evalexpr({handle}, {expr} [, {options}]) *ch_evalexpr()*
|
||||
expression. When there is an error or timeout it returns an
|
||||
empty string.
|
||||
|
||||
Note that while waiting for the response, Vim handles other
|
||||
messages. You need to make sure this doesn't cause trouble.
|
||||
|
||||
Can also be used as a |method|: >
|
||||
GetChannel()->ch_evalexpr(expr)
|
||||
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
*cmdline.txt* For Vim version 8.1. Last change: 2019 Aug 18
|
||||
*cmdline.txt* For Vim version 8.1. Last change: 2019 Sep 27
|
||||
|
||||
|
||||
VIM REFERENCE MANUAL by Bram Moolenaar
|
||||
@@ -129,7 +129,7 @@ CTRL-K {char1} {char2} *c_CTRL-K*
|
||||
enter digraph (see |digraphs|). When {char1} is a special
|
||||
key, the code for that key is inserted in <> form.
|
||||
|
||||
CTRL-R {0-9a-z"%#:-=.} *c_CTRL-R* *c_<C-R>*
|
||||
CTRL-R {register} *c_CTRL-R* *c_<C-R>*
|
||||
Insert the contents of a numbered or named register. Between
|
||||
typing CTRL-R and the second character '"' will be displayed
|
||||
to indicate that you are expected to enter the name of a
|
||||
@@ -191,8 +191,8 @@ CTRL-R CTRL-L *c_CTRL-R_CTRL-L* *c_<C-R>_<C-L>*
|
||||
|
||||
*c_CTRL-R_CTRL-R* *c_<C-R>_<C-R>*
|
||||
*c_CTRL-R_CTRL-O* *c_<C-R>_<C-O>*
|
||||
CTRL-R CTRL-R {0-9a-z"%#:-=. CTRL-F CTRL-P CTRL-W CTRL-A CTRL-L}
|
||||
CTRL-R CTRL-O {0-9a-z"%#:-=. CTRL-F CTRL-P CTRL-W CTRL-A CTRL-L}
|
||||
CTRL-R CTRL-R {register CTRL-F CTRL-P CTRL-W CTRL-A CTRL-L}
|
||||
CTRL-R CTRL-O {register CTRL-F CTRL-P CTRL-W CTRL-A CTRL-L}
|
||||
Insert register or object under the cursor. Works like
|
||||
|c_CTRL-R| but inserts the text literally. For example, if
|
||||
register a contains "xy^Hz" (where ^H is a backspace),
|
||||
@@ -909,8 +909,7 @@ Note: these are typed literally, they are not special keys!
|
||||
*%:8* *%:p* *%:.* *%:~* *%:h* *%:t* *%:r* *%:e* *%:s* *%:gs* *%:S*
|
||||
The file name modifiers can be used after "%", "#", "#n", "<cfile>", "<sfile>",
|
||||
"<afile>" or "<abuf>". They are also used with the |fnamemodify()| function.
|
||||
These are not available when Vim has been compiled without the |+modify_fname|
|
||||
feature.
|
||||
|
||||
These modifiers can be given, in this order:
|
||||
:p Make file name a full path. Must be the first modifier. Also
|
||||
changes "~/" (and "~user/" for Unix and VMS) to the path for
|
||||
@@ -1172,11 +1171,9 @@ edited as described in |cmdwin-char|.
|
||||
|
||||
AUTOCOMMANDS
|
||||
|
||||
Two autocommand events are used: |CmdwinEnter| and |CmdwinLeave|. Since this
|
||||
window is of a special type, the WinEnter, WinLeave, BufEnter and BufLeave
|
||||
events are not triggered. You can use the Cmdwin events to do settings
|
||||
specifically for the command-line window. Be careful not to cause side
|
||||
effects!
|
||||
Two autocommand events are used: |CmdwinEnter| and |CmdwinLeave|. You can use
|
||||
the Cmdwin events to do settings specifically for the command-line window.
|
||||
Be careful not to cause side effects!
|
||||
Example: >
|
||||
:au CmdwinEnter : let b:cpt_save = &cpt | set cpt=.
|
||||
:au CmdwinLeave : let &cpt = b:cpt_save
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
*editing.txt* For Vim version 8.1. Last change: 2019 Jun 10
|
||||
*editing.txt* For Vim version 8.1. Last change: 2019 Sep 27
|
||||
|
||||
|
||||
VIM REFERENCE MANUAL by Bram Moolenaar
|
||||
@@ -100,7 +100,7 @@ g CTRL-G Prints the current position of the cursor in five
|
||||
:buffers
|
||||
:files
|
||||
:ls List all the currently known file names. See
|
||||
'windows.txt' |:files| |:buffers| |:ls|.
|
||||
|windows.txt| |:files| |:buffers| |:ls|.
|
||||
|
||||
Vim will remember the full path name of a file name that you enter. In most
|
||||
cases when the file name is displayed only the name you typed is shown, but
|
||||
@@ -1233,7 +1233,7 @@ The syntax is best shown via some examples: >
|
||||
< Open the browser in the C:/bar directory, with the current
|
||||
buffer filename as default, and save the buffer under the
|
||||
filename chosen.
|
||||
Also see the |'browsedir'| option.
|
||||
Also see the 'browsedir' option.
|
||||
For versions of Vim where browsing is not supported, the command is executed
|
||||
unmodified.
|
||||
|
||||
@@ -1554,7 +1554,7 @@ focus.
|
||||
If you want to automatically reload a file when it has been changed outside of
|
||||
Vim, set the 'autoread' option. This doesn't work at the moment you write the
|
||||
file though, only when the file wasn't changed inside of Vim.
|
||||
|
||||
*ignore-timestamp*
|
||||
If you do not want to be asked or automatically reload the file, you can use
|
||||
this: >
|
||||
set buftype=nofile
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
*eval.txt* For Vim version 8.1. Last change: 2019 Sep 06
|
||||
*eval.txt* For Vim version 8.1. Last change: 2019 Sep 27
|
||||
|
||||
|
||||
VIM REFERENCE MANUAL by Bram Moolenaar
|
||||
@@ -92,7 +92,8 @@ the Number. Examples:
|
||||
*octal*
|
||||
Conversion from a String to a Number is done by converting the first digits to
|
||||
a number. Hexadecimal "0xf9", Octal "017", and Binary "0b10" numbers are
|
||||
recognized. If the String doesn't start with digits, the result is zero.
|
||||
recognized (NOTE: when using |scriptversion-4| octal is not recognized). If
|
||||
the String doesn't start with digits, the result is zero.
|
||||
Examples:
|
||||
String "456" --> Number 456 ~
|
||||
String "6bar" --> Number 6 ~
|
||||
@@ -2754,10 +2755,12 @@ spellsuggest({word} [, {max} [, {capital}]])
|
||||
split({expr} [, {pat} [, {keepempty}]])
|
||||
List make |List| from {pat} separated {expr}
|
||||
sqrt({expr}) Float square root of {expr}
|
||||
state([{what}]) String current state of Vim
|
||||
str2float({expr}) Float convert String to Float
|
||||
str2list({expr} [, {utf8}]) List convert each character of {expr} to
|
||||
ASCII/UTF8 value
|
||||
str2nr({expr} [, {base}]) Number convert String to Number
|
||||
str2nr({expr} [, {base} [, {quoted}]])
|
||||
Number convert String to Number
|
||||
strchars({expr} [, {skipcc}]) Number character length of the String {expr}
|
||||
strcharpart({str}, {start} [, {len}])
|
||||
String {len} characters of {str} at {start}
|
||||
@@ -2816,6 +2819,7 @@ term_gettty({buf}, [{input}]) String get the tty name of a terminal
|
||||
term_list() List get the list of terminal buffers
|
||||
term_scrape({buf}, {row}) List get row of a terminal screen
|
||||
term_sendkeys({buf}, {keys}) none send keystrokes to a terminal
|
||||
term_setapi({buf}, {expr}) none set |terminal-api| function name prefix
|
||||
term_setansicolors({buf}, {colors})
|
||||
none set ANSI palette in GUI color mode
|
||||
term_setkill({buf}, {how}) none set signal to stop job in terminal
|
||||
@@ -2875,6 +2879,8 @@ win_gotoid({expr}) Number go to window with ID {expr}
|
||||
win_id2tabwin({expr}) List get tab and window nr from window ID
|
||||
win_id2win({expr}) Number get window nr from window ID
|
||||
win_screenpos({nr}) List get screen position of window {nr}
|
||||
win_splitmove({nr}, {target} [, {options}])
|
||||
none move window {nr} to split of {target}
|
||||
winbufnr({nr}) Number buffer number of window {nr}
|
||||
wincol() Number window column of the cursor
|
||||
winheight({nr}) Number height of window {nr}
|
||||
@@ -3257,9 +3263,14 @@ bufnr([{expr} [, {create}]])
|
||||
The result is the number of a buffer, as it is displayed by
|
||||
the ":ls" command. For the use of {expr}, see |bufname()|
|
||||
above.
|
||||
|
||||
If the buffer doesn't exist, -1 is returned. Or, if the
|
||||
{create} argument is present and not zero, a new, unlisted,
|
||||
buffer is created and its number is returned.
|
||||
buffer is created and its number is returned. Example: >
|
||||
let newbuf = bufnr('Scratch001', 1)
|
||||
< Using an empty name uses the current buffer. To create a new
|
||||
buffer with an empty name use |bufadd()|.
|
||||
|
||||
bufnr("$") is the last buffer: >
|
||||
:let last_buffer = bufnr("$")
|
||||
< The result is a Number, which is the highest buffer number
|
||||
@@ -7062,6 +7073,7 @@ mode([expr]) Return a string that indicates the current mode.
|
||||
If [expr] is supplied and it evaluates to a non-zero Number or
|
||||
a non-empty String (|non-zero-arg|), then the full mode is
|
||||
returned, otherwise only the first letter is returned.
|
||||
Also see |state()|.
|
||||
|
||||
n Normal, Terminal-Normal
|
||||
no Operator-pending
|
||||
@@ -8895,7 +8907,11 @@ sound_playevent({name} [, {callback}])
|
||||
|
||||
Returns the sound ID, which can be passed to `sound_stop()`.
|
||||
Returns zero if the sound could not be played.
|
||||
{only available when compiled with the |+sound| feature}
|
||||
|
||||
Can also be used as a |method|: >
|
||||
GetSoundName()->sound_playevent()
|
||||
|
||||
< {only available when compiled with the |+sound| feature}
|
||||
|
||||
*sound_playfile()*
|
||||
sound_playfile({path} [, {callback}])
|
||||
@@ -8903,6 +8919,10 @@ sound_playfile({path} [, {callback}])
|
||||
must be a full path. On Ubuntu you may find files to play
|
||||
with this command: >
|
||||
:!find /usr/share/sounds -type f | grep -v index.theme
|
||||
|
||||
< Can also be used as a |method|: >
|
||||
GetSoundPath()->sound_playfile()
|
||||
|
||||
< {only available when compiled with the |+sound| feature}
|
||||
|
||||
|
||||
@@ -8913,7 +8933,10 @@ sound_stop({id}) *sound_stop()*
|
||||
On MS-Windows, this does not work for event sound started by
|
||||
`sound_playevent()`. To stop event sounds, use `sound_clear()`.
|
||||
|
||||
{only available when compiled with the |+sound| feature}
|
||||
Can also be used as a |method|: >
|
||||
soundid->sound_stop()
|
||||
|
||||
< {only available when compiled with the |+sound| feature}
|
||||
|
||||
*soundfold()*
|
||||
soundfold({word})
|
||||
@@ -8924,6 +8947,9 @@ soundfold({word})
|
||||
This can be used for making spelling suggestions. Note that
|
||||
the method can be quite slow.
|
||||
|
||||
Can also be used as a |method|: >
|
||||
GetWord()->soundfold()
|
||||
<
|
||||
*spellbadword()*
|
||||
spellbadword([{sentence}])
|
||||
Without argument: The result is the badly spelled word under
|
||||
@@ -8950,6 +8976,9 @@ spellbadword([{sentence}])
|
||||
'spell' option must be set and the value of 'spelllang' is
|
||||
used.
|
||||
|
||||
Can also be used as a |method|: >
|
||||
GetText()->spellbadword()
|
||||
<
|
||||
*spellsuggest()*
|
||||
spellsuggest({word} [, {max} [, {capital}]])
|
||||
Return a |List| with spelling suggestions to replace {word}.
|
||||
@@ -8973,6 +9002,8 @@ spellsuggest({word} [, {max} [, {capital}]])
|
||||
'spell' option must be set and the values of 'spelllang' and
|
||||
'spellsuggest' are used.
|
||||
|
||||
Can also be used as a |method|: >
|
||||
GetWord()->spellsuggest()
|
||||
|
||||
split({expr} [, {pattern} [, {keepempty}]]) *split()*
|
||||
Make a |List| out of {expr}. When {pattern} is omitted or
|
||||
@@ -9018,6 +9049,42 @@ sqrt({expr}) *sqrt()*
|
||||
{only available when compiled with the |+float| feature}
|
||||
|
||||
|
||||
state([{what}]) *state()*
|
||||
Return a string which contains characters indicating the
|
||||
current state. Mostly useful in callbacks that want to do
|
||||
work that may not always be safe. Roughly this works like:
|
||||
- callback uses state() to check if work is safe to do.
|
||||
Yes: then do it right away.
|
||||
No: add to work queue and add a |SafeState| and/or
|
||||
|SafeStateAgain| autocommand (|SafeState| triggers at
|
||||
toplevel, |SafeStateAgain| triggers after handling
|
||||
messages and callbacks).
|
||||
- When SafeState or SafeStateAgain is triggered and executes
|
||||
your autocommand, check with `state()` if the work can be
|
||||
done now, and if yes remove it from the queue and execute.
|
||||
Remove the autocommand if the queue is now empty.
|
||||
Also see |mode()|.
|
||||
|
||||
When {what} is given only characters in this string will be
|
||||
added. E.g, this checks if the screen has scrolled: >
|
||||
if state('s') == ''
|
||||
" screen has not scrolled
|
||||
<
|
||||
These characters indicate the state, generally indicating that
|
||||
something is busy:
|
||||
m halfway a mapping, :normal command, feedkeys() or
|
||||
stuffed command
|
||||
o operator pending or waiting for a command argument,
|
||||
e.g. after |f|
|
||||
a Insert mode autocomplete active
|
||||
x executing an autocommand
|
||||
w blocked on waiting, e.g. ch_evalexpr() and
|
||||
ch_read(), ch_readraw() when reading json.
|
||||
S not triggering SafeState or SafeStateAgain
|
||||
c callback invoked, including timer (repeats for
|
||||
recursiveness up to "ccc")
|
||||
s screen has scrolled for messages
|
||||
|
||||
str2float({expr}) *str2float()*
|
||||
Convert String {expr} to a Float. This mostly works the same
|
||||
as when using a floating point number in an expression, see
|
||||
@@ -9054,9 +9121,11 @@ str2list({expr} [, {utf8}]) *str2list()*
|
||||
GetString()->str2list()
|
||||
|
||||
|
||||
str2nr({expr} [, {base}]) *str2nr()*
|
||||
str2nr({expr} [, {base} [, {quoted}]]) *str2nr()*
|
||||
Convert string {expr} to a number.
|
||||
{base} is the conversion base, it can be 2, 8, 10 or 16.
|
||||
When {quoted} is present and non-zero then embedded single
|
||||
quotes are ignored, thus "1'000'000" is a million.
|
||||
|
||||
When {base} is omitted base 10 is used. This also means that
|
||||
a leading zero doesn't cause octal conversion to be used, as
|
||||
@@ -9069,6 +9138,19 @@ str2nr({expr} [, {base}]) *str2nr()*
|
||||
leading "0b" or "0B" is ignored.
|
||||
Text after the number is silently ignored.
|
||||
|
||||
Can also be used as a |method|: >
|
||||
GetText()->str2nr()
|
||||
|
||||
strcharpart({src}, {start} [, {len}]) *strcharpart()*
|
||||
Like |strpart()| but using character index and length instead
|
||||
of byte index and length.
|
||||
When a character index is used where a character does not
|
||||
exist it is assumed to be one character. For example: >
|
||||
strcharpart('abc', -1, 2)
|
||||
< results in 'a'.
|
||||
|
||||
Can also be used as a |method|: >
|
||||
GetText()->strcharpart(5)
|
||||
|
||||
strchars({expr} [, {skipcc}]) *strchars()*
|
||||
The result is a Number, which is the number of characters
|
||||
@@ -9094,13 +9176,8 @@ strchars({expr} [, {skipcc}]) *strchars()*
|
||||
endfunction
|
||||
endif
|
||||
<
|
||||
strcharpart({src}, {start} [, {len}]) *strcharpart()*
|
||||
Like |strpart()| but using character index and length instead
|
||||
of byte index and length.
|
||||
When a character index is used where a character does not
|
||||
exist it is assumed to be one character. For example: >
|
||||
strcharpart('abc', -1, 2)
|
||||
< results in 'a'.
|
||||
Can also be used as a |method|: >
|
||||
GetText()->strchars()
|
||||
|
||||
strdisplaywidth({expr} [, {col}]) *strdisplaywidth()*
|
||||
The result is a Number, which is the number of display cells
|
||||
@@ -9115,6 +9192,9 @@ strdisplaywidth({expr} [, {col}]) *strdisplaywidth()*
|
||||
Ambiguous, this function's return value depends on 'ambiwidth'.
|
||||
Also see |strlen()|, |strwidth()| and |strchars()|.
|
||||
|
||||
Can also be used as a |method|: >
|
||||
GetText()->strdisplaywidth()
|
||||
|
||||
strftime({format} [, {time}]) *strftime()*
|
||||
The result is a String, which is a formatted date and time, as
|
||||
specified by the {format} string. The given {time} is used,
|
||||
@@ -9134,12 +9214,18 @@ strftime({format} [, {time}]) *strftime()*
|
||||
< Not available on all systems. To check use: >
|
||||
:if exists("*strftime")
|
||||
|
||||
< Can also be used as a |method|: >
|
||||
GetFormat()->strftime()
|
||||
|
||||
strgetchar({str}, {index}) *strgetchar()*
|
||||
Get character {index} from {str}. This uses a character
|
||||
index, not a byte index. Composing characters are considered
|
||||
separate characters here.
|
||||
Also see |strcharpart()| and |strchars()|.
|
||||
|
||||
Can also be used as a |method|: >
|
||||
GetText()->strgetchar(5)
|
||||
|
||||
stridx({haystack}, {needle} [, {start}]) *stridx()*
|
||||
The result is a Number, which gives the byte index in
|
||||
{haystack} of the first occurrence of the String {needle}.
|
||||
@@ -9159,6 +9245,8 @@ stridx({haystack}, {needle} [, {start}]) *stridx()*
|
||||
stridx() works similar to the C function strstr(). When used
|
||||
with a single character it works similar to strchr().
|
||||
|
||||
Can also be used as a |method|: >
|
||||
GetHaystack()->stridx(needle)
|
||||
*string()*
|
||||
string({expr}) Return {expr} converted to a String. If {expr} is a Number,
|
||||
Float, String, Blob or a composition of them, then the result
|
||||
@@ -9211,6 +9299,9 @@ strpart({src}, {start} [, {len}]) *strpart()*
|
||||
example, to get three bytes under and after the cursor: >
|
||||
strpart(getline("."), col(".") - 1, 3)
|
||||
<
|
||||
Can also be used as a |method|: >
|
||||
GetText()->strpart(5)
|
||||
|
||||
strridx({haystack}, {needle} [, {start}]) *strridx()*
|
||||
The result is a Number, which gives the byte index in
|
||||
{haystack} of the last occurrence of the String {needle}.
|
||||
@@ -9229,6 +9320,9 @@ strridx({haystack}, {needle} [, {start}]) *strridx()*
|
||||
When used with a single character it works similar to the C
|
||||
function strrchr().
|
||||
|
||||
Can also be used as a |method|: >
|
||||
GetHaystack()->strridx(needle)
|
||||
|
||||
strtrans({expr}) *strtrans()*
|
||||
The result is a String, which is {expr} with all unprintable
|
||||
characters translated into printable characters |'isprint'|.
|
||||
@@ -9277,6 +9371,9 @@ submatch({nr} [, {list}]) *submatch()* *E935*
|
||||
< This finds the first number in the line and adds one to it.
|
||||
A line break is included as a newline character.
|
||||
|
||||
Can also be used as a |method|: >
|
||||
GetNr()->submatch()
|
||||
|
||||
substitute({expr}, {pat}, {sub}, {flags}) *substitute()*
|
||||
The result is a String, which is a copy of {expr}, in which
|
||||
the first match of {pat} is replaced with {sub}.
|
||||
@@ -9340,6 +9437,9 @@ swapinfo({fname}) *swapinfo()*
|
||||
Not a swap file: does not contain correct block ID
|
||||
Magic number mismatch: Info in first block is invalid
|
||||
|
||||
Can also be used as a |method|: >
|
||||
GetFilename()->swapinfo()
|
||||
|
||||
swapname({expr}) *swapname()*
|
||||
The result is the swap file path of the buffer {expr}.
|
||||
For the use of {expr}, see |bufname()| above.
|
||||
@@ -9347,6 +9447,9 @@ swapname({expr}) *swapname()*
|
||||
|:swapname| (unless no swap file).
|
||||
If buffer {expr} has no swap file, returns an empty string.
|
||||
|
||||
Can also be used as a |method|: >
|
||||
GetBufname()->swapname()
|
||||
|
||||
synID({lnum}, {col}, {trans}) *synID()*
|
||||
The result is a Number, which is the syntax ID at the position
|
||||
{lnum} and {col} in the current window.
|
||||
@@ -9531,9 +9634,14 @@ systemlist({expr} [, {input}]) *systemlist()*
|
||||
Same as |system()|, but returns a |List| with lines (parts of
|
||||
output separated by NL) with NULs transformed into NLs. Output
|
||||
is the same as |readfile()| will output with {binary} argument
|
||||
set to "b". Note that on MS-Windows you may get trailing CR
|
||||
characters.
|
||||
set to "b", except that there is no extra empty item when the
|
||||
result ends in a NL.
|
||||
Note that on MS-Windows you may get trailing CR characters.
|
||||
|
||||
To see the difference between "echo hello" and "echo -n hello"
|
||||
use |system()| and |split()|: >
|
||||
echo system('echo hello')->split('\n', 1)
|
||||
<
|
||||
Returns an empty string on error.
|
||||
|
||||
Can also be used as a |method|: >
|
||||
@@ -9553,6 +9661,8 @@ tabpagebuflist([{arg}]) *tabpagebuflist()*
|
||||
endfor
|
||||
< Note that a buffer may appear in more than one window.
|
||||
|
||||
Can also be used as a |method|: >
|
||||
GetTabpage()->tabpagebuflist()
|
||||
|
||||
tabpagenr([{arg}]) *tabpagenr()*
|
||||
The result is a Number, which is the number of the current
|
||||
@@ -9575,6 +9685,9 @@ tabpagewinnr({tabarg} [, {arg}]) *tabpagewinnr()*
|
||||
tabpagewinnr(4, '$') " number of windows in tab page 4
|
||||
< When {tabarg} is invalid zero is returned.
|
||||
|
||||
Can also be used as a |method|: >
|
||||
GetTabpage()->tabpagewinnr()
|
||||
<
|
||||
*tagfiles()*
|
||||
tagfiles() Returns a |List| with the file names used to search for tags
|
||||
for the current buffer. This is the 'tags' option expanded.
|
||||
@@ -9623,6 +9736,9 @@ taglist({expr} [, {filename}]) *taglist()*
|
||||
located by Vim. Refer to |tags-file-format| for the format of
|
||||
the tags file generated by the different ctags tools.
|
||||
|
||||
Can also be used as a |method|: >
|
||||
GetTagpattern()->taglist()
|
||||
|
||||
tan({expr}) *tan()*
|
||||
Return the tangent of {expr}, measured in radians, as a |Float|
|
||||
in the range [-inf, inf].
|
||||
@@ -9689,7 +9805,10 @@ timer_info([{id}])
|
||||
"callback" the callback
|
||||
"paused" 1 if the timer is paused, 0 otherwise
|
||||
|
||||
{only available when compiled with the |+timers| feature}
|
||||
Can also be used as a |method|: >
|
||||
GetTimer()->timer_info()
|
||||
|
||||
< {only available when compiled with the |+timers| feature}
|
||||
|
||||
timer_pause({timer}, {paused}) *timer_pause()*
|
||||
Pause or unpause a timer. A paused timer does not invoke its
|
||||
@@ -9704,7 +9823,10 @@ timer_pause({timer}, {paused}) *timer_pause()*
|
||||
String, then the timer is paused, otherwise it is unpaused.
|
||||
See |non-zero-arg|.
|
||||
|
||||
{only available when compiled with the |+timers| feature}
|
||||
Can also be used as a |method|: >
|
||||
GetTimer()->timer_pause(1)
|
||||
|
||||
< {only available when compiled with the |+timers| feature}
|
||||
|
||||
*timer_start()* *timer* *timers*
|
||||
timer_start({time}, {callback} [, {options}])
|
||||
@@ -9737,7 +9859,10 @@ timer_start({time}, {callback} [, {options}])
|
||||
< This will invoke MyHandler() three times at 500 msec
|
||||
intervals.
|
||||
|
||||
Not available in the |sandbox|.
|
||||
Can also be used as a |method|: >
|
||||
GetMsec()->timer_start(callback)
|
||||
|
||||
< Not available in the |sandbox|.
|
||||
{only available when compiled with the |+timers| feature}
|
||||
|
||||
timer_stop({timer}) *timer_stop()*
|
||||
@@ -9745,7 +9870,10 @@ timer_stop({timer}) *timer_stop()*
|
||||
{timer} is an ID returned by timer_start(), thus it must be a
|
||||
Number. If {timer} does not exist there is no error.
|
||||
|
||||
{only available when compiled with the |+timers| feature}
|
||||
Can also be used as a |method|: >
|
||||
GetTimer()->timer_stop()
|
||||
|
||||
< {only available when compiled with the |+timers| feature}
|
||||
|
||||
timer_stopall() *timer_stopall()*
|
||||
Stop all timers. The timer callbacks will no longer be
|
||||
@@ -9759,11 +9887,17 @@ tolower({expr}) *tolower()*
|
||||
characters turned into lowercase (just like applying |gu| to
|
||||
the string).
|
||||
|
||||
Can also be used as a |method|: >
|
||||
GetText()->tolower()
|
||||
|
||||
toupper({expr}) *toupper()*
|
||||
The result is a copy of the String given, with all lowercase
|
||||
characters turned into uppercase (just like applying |gU| to
|
||||
the string).
|
||||
|
||||
Can also be used as a |method|: >
|
||||
GetText()->toupper()
|
||||
|
||||
tr({src}, {fromstr}, {tostr}) *tr()*
|
||||
The result is a copy of the {src} string with all characters
|
||||
which appear in {fromstr} replaced by the character in that
|
||||
@@ -9778,6 +9912,9 @@ tr({src}, {fromstr}, {tostr}) *tr()*
|
||||
echo tr("<blob>", "<>", "{}")
|
||||
< returns "{blob}"
|
||||
|
||||
Can also be used as a |method|: >
|
||||
GetText()->tr(from, to)
|
||||
|
||||
trim({text} [, {mask}]) *trim()*
|
||||
Return {text} as a String where any character in {mask} is
|
||||
removed from the beginning and end of {text}.
|
||||
@@ -9794,6 +9931,9 @@ trim({text} [, {mask}]) *trim()*
|
||||
echo trim("rm<Xrm<>X>rrm", "rm<>")
|
||||
< returns "Xrm<>X" (characters in the middle are not removed)
|
||||
|
||||
Can also be used as a |method|: >
|
||||
GetText()->trim()
|
||||
|
||||
trunc({expr}) *trunc()*
|
||||
Return the largest integral value with magnitude less than or
|
||||
equal to {expr} as a |Float| (truncate towards zero).
|
||||
@@ -9854,6 +9994,9 @@ undofile({name}) *undofile()*
|
||||
When compiled without the |+persistent_undo| option this always
|
||||
returns an empty string.
|
||||
|
||||
Can also be used as a |method|: >
|
||||
GetFilename()->undofile()
|
||||
|
||||
undotree() *undotree()*
|
||||
Return the current state of the undo tree in a dictionary with
|
||||
the following items:
|
||||
@@ -9952,8 +10095,11 @@ virtcol({expr}) *virtcol()*
|
||||
all lines: >
|
||||
echo max(map(range(1, line('$')), "virtcol([v:val, '$'])"))
|
||||
|
||||
< Can also be used as a |method|: >
|
||||
GetPos()->virtcol()
|
||||
|
||||
visualmode([expr]) *visualmode()*
|
||||
|
||||
visualmode([{expr}]) *visualmode()*
|
||||
The result is a String, which describes the last Visual mode
|
||||
used in the current buffer. Initially it returns an empty
|
||||
string, but once Visual mode has been used, it returns "v",
|
||||
@@ -9967,7 +10113,7 @@ visualmode([expr]) *visualmode()*
|
||||
Visual mode that was used.
|
||||
If Visual mode is active, use |mode()| to get the Visual mode
|
||||
(e.g., in a |:vmap|).
|
||||
If [expr] is supplied and it evaluates to a non-zero Number or
|
||||
If {expr} is supplied and it evaluates to a non-zero Number or
|
||||
a non-empty String, then the Visual mode will be cleared and
|
||||
the old value is returned. See |non-zero-arg|.
|
||||
|
||||
@@ -9996,10 +10142,17 @@ win_execute({id}, {command} [, {silent}]) *win_execute()*
|
||||
Not all commands are allowed in popup windows.
|
||||
When window {id} does not exist then no error is given.
|
||||
|
||||
Can also be used as a |method|, the base is used for the
|
||||
command: >
|
||||
GetCommand()->win_execute(winid)
|
||||
|
||||
win_findbuf({bufnr}) *win_findbuf()*
|
||||
Returns a list with |window-ID|s for windows that contain
|
||||
buffer {bufnr}. When there is none the list is empty.
|
||||
|
||||
Can also be used as a |method|: >
|
||||
GetBufnr()->win_findbuf()
|
||||
|
||||
win_getid([{win} [, {tab}]]) *win_getid()*
|
||||
Get the |window-ID| for the specified window.
|
||||
When {win} is missing use the current window.
|
||||
@@ -10009,20 +10162,32 @@ win_getid([{win} [, {tab}]]) *win_getid()*
|
||||
number {tab}. The first tab has number one.
|
||||
Return zero if the window cannot be found.
|
||||
|
||||
Can also be used as a |method|: >
|
||||
GetWinnr()->win_getid()
|
||||
|
||||
win_gotoid({expr}) *win_gotoid()*
|
||||
Go to window with ID {expr}. This may also change the current
|
||||
tabpage.
|
||||
Return 1 if successful, 0 if the window cannot be found.
|
||||
|
||||
Can also be used as a |method|: >
|
||||
GetWinid()->win_gotoid()
|
||||
|
||||
win_id2tabwin({expr}) *win_id2tabwin()*
|
||||
Return a list with the tab number and window number of window
|
||||
with ID {expr}: [tabnr, winnr].
|
||||
Return [0, 0] if the window cannot be found.
|
||||
|
||||
Can also be used as a |method|: >
|
||||
GetWinid()->win_id2tabwin()
|
||||
|
||||
win_id2win({expr}) *win_id2win()*
|
||||
Return the window number of window with ID {expr}.
|
||||
Return 0 if the window cannot be found in the current tabpage.
|
||||
|
||||
Can also be used as a |method|: >
|
||||
GetWinid()->win_id2win()
|
||||
|
||||
win_screenpos({nr}) *win_screenpos()*
|
||||
Return the screen position of window {nr} as a list with two
|
||||
numbers: [row, col]. The first window always has position
|
||||
@@ -10031,6 +10196,31 @@ win_screenpos({nr}) *win_screenpos()*
|
||||
Return [0, 0] if the window cannot be found in the current
|
||||
tabpage.
|
||||
|
||||
Can also be used as a |method|: >
|
||||
GetWinid()->win_screenpos()
|
||||
<
|
||||
win_splitmove({nr}, {target} [, {options}]) *win_splitmove()*
|
||||
Move the window {nr} to a new split of the window {target}.
|
||||
This is similar to moving to {target}, creating a new window
|
||||
using |:split| but having the same contents as window {nr}, and
|
||||
then closing {nr}.
|
||||
|
||||
Both {nr} and {target} can be window numbers or |window-ID|s.
|
||||
|
||||
Returns zero for success, non-zero for failure.
|
||||
|
||||
{options} is a Dictionary with the following optional entries:
|
||||
"vertical" When TRUE, the split is created vertically,
|
||||
like with |:vsplit|.
|
||||
"rightbelow" When TRUE, the split is made below or to the
|
||||
right (if vertical). When FALSE, it is done
|
||||
above or to the left (if vertical). When not
|
||||
present, the values of 'splitbelow' and
|
||||
'splitright' are used.
|
||||
|
||||
Can also be used as a |method|: >
|
||||
GetWinid()->win_splitmove(target)
|
||||
<
|
||||
*winbufnr()*
|
||||
winbufnr({nr}) The result is a Number, which is the number of the buffer
|
||||
associated with window {nr}. {nr} can be the window number or
|
||||
@@ -10058,6 +10248,9 @@ winheight({nr}) *winheight()*
|
||||
This excludes any window toolbar line.
|
||||
Examples: >
|
||||
:echo "The current window has " . winheight(0) . " lines."
|
||||
|
||||
< Can also be used as a |method|: >
|
||||
GetWinid()->winheight()
|
||||
<
|
||||
winlayout([{tabnr}]) *winlayout()*
|
||||
The result is a nested List containing the layout of windows
|
||||
@@ -10087,6 +10280,9 @@ winlayout([{tabnr}]) *winlayout()*
|
||||
:echo winlayout(2)
|
||||
['col', [['leaf', 1002], ['row', ['leaf', 1003],
|
||||
['leaf', 1001]]], ['leaf', 1000]]
|
||||
<
|
||||
Can also be used as a |method|: >
|
||||
GetTabnr()->winlayout()
|
||||
<
|
||||
*winline()*
|
||||
winline() The result is a Number, which is the screen line of the cursor
|
||||
@@ -10121,6 +10317,9 @@ winnr([{arg}]) The result is a Number, which is the number of the current
|
||||
let window_count = winnr('$')
|
||||
let prev_window = winnr('#')
|
||||
let wnum = winnr('3k')
|
||||
|
||||
< Can also be used as a |method|: >
|
||||
GetWinval()->winnr()
|
||||
<
|
||||
*winrestcmd()*
|
||||
winrestcmd() Returns a sequence of |:resize| commands that should restore
|
||||
@@ -10149,6 +10348,9 @@ winrestview({dict})
|
||||
If you have changed the values the result is unpredictable.
|
||||
If the window size changed the result won't be the same.
|
||||
|
||||
Can also be used as a |method|: >
|
||||
GetView()->winrestview()
|
||||
<
|
||||
*winsaveview()*
|
||||
winsaveview() Returns a |Dictionary| that contains information to restore
|
||||
the view of the current window. Use |winrestview()| to
|
||||
@@ -10186,6 +10388,9 @@ winwidth({nr}) *winwidth()*
|
||||
< For getting the terminal or screen size, see the 'columns'
|
||||
option.
|
||||
|
||||
Can also be used as a |method|: >
|
||||
GetWinid()->winwidth()
|
||||
|
||||
|
||||
wordcount() *wordcount()*
|
||||
The result is a dictionary of byte/chars/word statistics for
|
||||
@@ -10247,6 +10452,9 @@ writefile({object}, {fname} [, {flags}])
|
||||
:let fl = readfile("foo", "b")
|
||||
:call writefile(fl, "foocopy", "b")
|
||||
|
||||
< Can also be used as a |method|: >
|
||||
GetText()->writefile("thefile")
|
||||
|
||||
|
||||
xor({expr}, {expr}) *xor()*
|
||||
Bitwise XOR on the two arguments. The arguments are converted
|
||||
@@ -12782,6 +12990,23 @@ instead of failing in mysterious ways.
|
||||
|
||||
Test for support with: >
|
||||
has('vimscript-3')
|
||||
<
|
||||
*scriptversion-4* >
|
||||
:scriptversion 4
|
||||
< Numbers with a leading zero are not recognized as octal. With the
|
||||
previous version you get: >
|
||||
echo 017 " displays 15
|
||||
echo 018 " displays 18
|
||||
< with script version 4: >
|
||||
echo 017 " displays 17
|
||||
echo 018 " displays 18
|
||||
< Also, it is possible to use single quotes inside numbers to make them
|
||||
easier to read: >
|
||||
echo 1'000'000
|
||||
< The quotes must be surrounded by digits.
|
||||
|
||||
Test for support with: >
|
||||
has('vimscript-4')
|
||||
|
||||
==============================================================================
|
||||
11. No +eval feature *no-eval-feature*
|
||||
|
||||
@@ -595,6 +595,10 @@ If you do not like the default folding, use an autocommand to add your desired
|
||||
folding style instead. For example: >
|
||||
autocmd FileType man setlocal foldmethod=indent foldenable
|
||||
|
||||
If you would like :Man {number} {name} to behave like man {number} {name} by
|
||||
not running man {name} if no page is found, then use this: >
|
||||
let g:ft_man_no_sect_fallback = 1
|
||||
|
||||
You may also want to set 'keywordprg' to make the |K| command open a manual
|
||||
page in a Vim window: >
|
||||
set keywordprg=:Man
|
||||
|
||||
@@ -171,14 +171,14 @@ you can.
|
||||
path {path}\gvim.exe
|
||||
HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\Uninstall\vim 5.6
|
||||
DisplayName Vim 5.6: Edit with Vim popup menu entry
|
||||
UninstallString {path}\uninstal.exe
|
||||
UninstallString {path}\uninstall.exe
|
||||
|
||||
Replace {path} with the path that leads to the executable.
|
||||
Don't type {default}, this is the value for the key itself.
|
||||
|
||||
To remove "Edit with Vim" from the popup menu, just remove the registry
|
||||
entries mentioned above. The "uninstal.exe" program can do this for you. You
|
||||
can also use the entry in the Windows standard "Add/Remove Programs" list.
|
||||
entries mentioned above. The "uninstall.exe" program can do this for you.
|
||||
You can also use the entry in the Windows standard "Add/Remove Programs" list.
|
||||
|
||||
If you notice that this entry overrules other file type associations, set
|
||||
those associations again by hand (using Windows Explorer, see above). This
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
*index.txt* For Vim version 8.1. Last change: 2019 Aug 21
|
||||
*index.txt* For Vim version 8.1. Last change: 2019 Sep 27
|
||||
|
||||
|
||||
VIM REFERENCE MANUAL by Bram Moolenaar
|
||||
@@ -23,7 +23,7 @@ to look for deleting something, use: "/delete".
|
||||
5. Terminal-Job mode |terminal-job-index|
|
||||
6. EX commands |ex-cmd-index|
|
||||
|
||||
For an overview of options see help.txt |option-list|.
|
||||
For an overview of options see |option-list|.
|
||||
For an overview of built-in functions see |functions|.
|
||||
For a list of Vim variables see |vim-variable|.
|
||||
For a complete listing of all help items see |help-tags|.
|
||||
@@ -73,14 +73,14 @@ tag char action in Insert mode ~
|
||||
the cursor
|
||||
|i_CTRL-Q| CTRL-Q same as CTRL-V, unless used for terminal
|
||||
control flow
|
||||
|i_CTRL-R| CTRL-R {0-9a-z"%#*:=}
|
||||
|i_CTRL-R| CTRL-R {register}
|
||||
insert the contents of a register
|
||||
|i_CTRL-R_CTRL-R| CTRL-R CTRL-R {0-9a-z"%#*:=}
|
||||
|i_CTRL-R_CTRL-R| CTRL-R CTRL-R {register}
|
||||
insert the contents of a register literally
|
||||
|i_CTRL-R_CTRL-O| CTRL-R CTRL-O {0-9a-z"%#*:=}
|
||||
|i_CTRL-R_CTRL-O| CTRL-R CTRL-O {register}
|
||||
insert the contents of a register literally
|
||||
and don't auto-indent
|
||||
|i_CTRL-R_CTRL-P| CTRL-R CTRL-P {0-9a-z"%#*:=}
|
||||
|i_CTRL-R_CTRL-P| CTRL-R CTRL-P {register}
|
||||
insert the contents of a register literally
|
||||
and fix indent.
|
||||
CTRL-S (used for terminal control flow)
|
||||
@@ -1128,6 +1128,8 @@ The commands are sorted on the non-optional part of their name.
|
||||
|
||||
tag command action ~
|
||||
------------------------------------------------------------------------------
|
||||
|:| : nothing
|
||||
|:range| :{range} go to last line in {range}
|
||||
|:!| :! filter lines or execute an external command
|
||||
|:!!| :!! repeat last ":!" command
|
||||
|:#| :# same as ":number"
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
*insert.txt* For Vim version 8.1. Last change: 2019 Aug 21
|
||||
*insert.txt* For Vim version 8.1. Last change: 2019 Sep 27
|
||||
|
||||
|
||||
VIM REFERENCE MANUAL by Bram Moolenaar
|
||||
@@ -106,7 +106,7 @@ CTRL-K {char1} [char2]
|
||||
CTRL-N Find next keyword (see |i_CTRL-N|).
|
||||
CTRL-P Find previous keyword (see |i_CTRL-P|).
|
||||
|
||||
CTRL-R {0-9a-z"%#*+:.-=} *i_CTRL-R*
|
||||
CTRL-R {register} *i_CTRL-R*
|
||||
Insert the contents of a register. Between typing CTRL-R and
|
||||
the second character, '"' will be displayed to indicate that
|
||||
you are expected to enter the name of a register.
|
||||
@@ -143,7 +143,7 @@ CTRL-R {0-9a-z"%#*+:.-=} *i_CTRL-R*
|
||||
sequence will be broken.
|
||||
See |registers| about registers.
|
||||
|
||||
CTRL-R CTRL-R {0-9a-z"%#*+/:.-=} *i_CTRL-R_CTRL-R*
|
||||
CTRL-R CTRL-R {register} *i_CTRL-R_CTRL-R*
|
||||
Insert the contents of a register. Works like using a single
|
||||
CTRL-R, but the text is inserted literally, not as if typed.
|
||||
This differs when the register contains characters like <BS>.
|
||||
@@ -155,7 +155,7 @@ CTRL-R CTRL-R {0-9a-z"%#*+/:.-=} *i_CTRL-R_CTRL-R*
|
||||
The '.' register (last inserted text) is still inserted as
|
||||
typed.
|
||||
|
||||
CTRL-R CTRL-O {0-9a-z"%#*+/:.-=} *i_CTRL-R_CTRL-O*
|
||||
CTRL-R CTRL-O {register} *i_CTRL-R_CTRL-O*
|
||||
Insert the contents of a register literally and don't
|
||||
auto-indent. Does the same as pasting with the mouse
|
||||
|<MiddleMouse>|. When the register is linewise this will
|
||||
@@ -164,7 +164,7 @@ CTRL-R CTRL-O {0-9a-z"%#*+/:.-=} *i_CTRL-R_CTRL-O*
|
||||
The '.' register (last inserted text) is still inserted as
|
||||
typed.
|
||||
|
||||
CTRL-R CTRL-P {0-9a-z"%#*+/:.-=} *i_CTRL-R_CTRL-P*
|
||||
CTRL-R CTRL-P {register} *i_CTRL-R_CTRL-P*
|
||||
Insert the contents of a register literally and fix the
|
||||
indent, like |[<MiddleMouse>|.
|
||||
Does not replace characters!
|
||||
@@ -1124,7 +1124,7 @@ is used when the info popup is created. The option is a comma separated list
|
||||
of values:
|
||||
height maximum height of the popup
|
||||
width maximum width of the popup
|
||||
highlight highlight group of the popup (default is Pmenu)
|
||||
highlight highlight group of the popup (default is PmenuSel)
|
||||
align "item" (default) or "menu"
|
||||
border "on" (default) or "off"
|
||||
Example: >
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
*options.txt* For Vim version 8.1. Last change: 2019 Aug 21
|
||||
*options.txt* For Vim version 8.1. Last change: 2019 Sep 26
|
||||
|
||||
|
||||
VIM REFERENCE MANUAL by Bram Moolenaar
|
||||
@@ -856,6 +856,8 @@ A jump table for the options with a short description can be found at |Q_op|.
|
||||
:set background&
|
||||
< Vim will guess the value. In the GUI this should work correctly,
|
||||
in other cases Vim might not be able to guess the right value.
|
||||
If the GUI supports a dark them, you can use the "d" flag in
|
||||
'guioptions', see 'go-d'.
|
||||
|
||||
When the |t_RB| option is set, Vim will use it to request the background
|
||||
color from the terminal. If the returned RGB value is dark/light and
|
||||
@@ -1683,8 +1685,6 @@ A jump table for the options with a short description can be found at |Q_op|.
|
||||
'comments' 'com' string (default
|
||||
"s1:/*,mb:*,ex:*/,://,b:#,:%,:XCOMM,n:>,fb:-")
|
||||
local to buffer
|
||||
{not available when compiled without the |+comments|
|
||||
feature}
|
||||
A comma separated list of strings that can start a comment line. See
|
||||
|format-comments|. See |option-backslash| about using backslashes to
|
||||
insert a space.
|
||||
@@ -2461,13 +2461,33 @@ A jump table for the options with a short description can be found at |Q_op|.
|
||||
local to window
|
||||
{not available when compiled without the |+syntax|
|
||||
feature}
|
||||
Highlight the screen line of the cursor with CursorLine
|
||||
|hl-CursorLine|. Useful to easily spot the cursor. Will make screen
|
||||
redrawing slower.
|
||||
Highlight the text line of the cursor with CursorLine |hl-CursorLine|.
|
||||
Useful to easily spot the cursor. Will make screen redrawing slower.
|
||||
When Visual mode is active the highlighting isn't used to make it
|
||||
easier to see the selected text.
|
||||
|
||||
|
||||
*'cursorlineopt'* *'culopt'*
|
||||
'cursorlineopt' 'culopt' string (default: "number,line")
|
||||
local to window
|
||||
{not in Vi}
|
||||
{not available when compiled without the |+syntax|
|
||||
feature}
|
||||
Comma separated list of settings for how 'cursorline' is displayed.
|
||||
Valid values:
|
||||
"line" Highlight the text line of the cursor with
|
||||
CursorLine |hl-CursorLine|.
|
||||
"screenline" Highlight only the screen line of the cursor with
|
||||
CursorLine |hl-CursorLine|.
|
||||
"number" Highlight the line number of the cursor with
|
||||
CursorLineNr |hl-CursorLineNr|.
|
||||
|
||||
Special value:
|
||||
"both" Alias for the values "line,number".
|
||||
|
||||
"line" and "screenline" cannot be used together.
|
||||
|
||||
|
||||
*'debug'*
|
||||
'debug' string (default "")
|
||||
global
|
||||
@@ -3720,6 +3740,9 @@ A jump table for the options with a short description can be found at |Q_op|.
|
||||
*'go-c'*
|
||||
'c' Use console dialogs instead of popup dialogs for simple
|
||||
choices.
|
||||
*'go-d'*
|
||||
'd' Use dark theme variant if available. Currently only works for
|
||||
GTK+ GUI.
|
||||
*'go-e'*
|
||||
'e' Add tab pages when indicated with 'showtabline'.
|
||||
'guitablabel' can be used to change the text in the labels.
|
||||
@@ -4817,9 +4840,9 @@ A jump table for the options with a short description can be found at |Q_op|.
|
||||
off and the line continues beyond the right of the
|
||||
screen.
|
||||
*lcs-precedes*
|
||||
precedes:c Character to show in the first column, when 'wrap'
|
||||
is off and there is text preceding the character
|
||||
visible in the first column.
|
||||
precedes:c Character to show in the first visible column of the
|
||||
physical line, when there is text preceding the
|
||||
character visible in the first column.
|
||||
*lcs-conceal*
|
||||
conceal:c Character to show in place of concealed text, when
|
||||
'conceallevel' is set to 1.
|
||||
@@ -8152,8 +8175,8 @@ A jump table for the options with a short description can be found at |Q_op|.
|
||||
Win32 and OS/2)
|
||||
global or local to buffer |global-local|
|
||||
Maximum number of changes that can be undone. Since undo information
|
||||
is kept in memory, higher numbers will cause more memory to be used
|
||||
(nevertheless, a single change can use an unlimited amount of memory).
|
||||
is kept in memory, higher numbers will cause more memory to be used.
|
||||
Nevertheless, a single change can already use a large amount of memory.
|
||||
Set to 0 for Vi compatibility: One level of undo and "u" undoes
|
||||
itself: >
|
||||
set ul=0
|
||||
@@ -8540,8 +8563,8 @@ A jump table for the options with a short description can be found at |Q_op|.
|
||||
":map <BS> X" to make backspace delete the character in front of the
|
||||
cursor.
|
||||
When 'l' is included and it is used after an operator at the end of a
|
||||
line then it will not move to the next line. This makes "dl", "cl",
|
||||
"yl" etc. work normally.
|
||||
line (not an empty line) then it will not move to the next line. This
|
||||
makes "dl", "cl", "yl" etc. work normally.
|
||||
NOTE: This option is set to the Vi default value when 'compatible' is
|
||||
set and to the Vim default value when 'compatible' is reset.
|
||||
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
*popup.txt* For Vim version 8.1. Last change: 2019 Sep 03
|
||||
*popup.txt* For Vim version 8.1. Last change: 2019 Sep 25
|
||||
|
||||
|
||||
VIM REFERENCE MANUAL by Bram Moolenaar
|
||||
@@ -137,9 +137,7 @@ Options can be set on the window with `setwinvar()`, e.g.: >
|
||||
call setwinvar(winid, '&wrap', 0)
|
||||
And options can be set on the buffer with `setbufvar()`, e.g.: >
|
||||
call setbufvar(winbufnr(winid), '&filetype', 'java')
|
||||
Note that this does not trigger autocommands. Use `win_execute()` if you do
|
||||
need them.
|
||||
|
||||
You can also use `win_execute()` with a ":setlocal" command.
|
||||
|
||||
|
||||
==============================================================================
|
||||
@@ -204,7 +202,7 @@ popup_beval({what}, {options}) *popup_beval()*
|
||||
\ mousemoved: 'WORD',
|
||||
\ })
|
||||
< Use {options} to change the properties.
|
||||
See |popup_beval_example| for an example use.
|
||||
See |popup_beval_example| for an example.
|
||||
|
||||
Can also be used as a |method|: >
|
||||
GetText()->popup_beval({})
|
||||
@@ -540,6 +538,10 @@ properties. It is in one of four forms:
|
||||
dictionary with a "col" entry, see below:
|
||||
|popup-props|.
|
||||
|
||||
If you want to create a new buffer yourself use |bufadd()| and pass the buffer
|
||||
number to popup_create().
|
||||
It is not possible to use the buffer of a terminal window. *E278*
|
||||
|
||||
The second argument of |popup_create()| is a dictionary with options:
|
||||
line Screen line where to position the popup. Can use a
|
||||
number or "cursor", "cursor+1" or "cursor-1" to use
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
*quickref.txt* For Vim version 8.1. Last change: 2019 Aug 20
|
||||
*quickref.txt* For Vim version 8.1. Last change: 2019 Sep 27
|
||||
|
||||
|
||||
VIM REFERENCE MANUAL by Bram Moolenaar
|
||||
@@ -291,7 +291,7 @@ moving around:
|
||||
|i_CTRL-A| CTRL-A insert previously inserted text
|
||||
|i_CTRL-@| CTRL-@ insert previously inserted text and stop
|
||||
Insert mode
|
||||
|i_CTRL-R| CTRL-R {0-9a-z%#:.-="} insert the contents of a register
|
||||
|i_CTRL-R| CTRL-R {register} insert the contents of a register
|
||||
|
||||
|i_CTRL-N| CTRL-N insert next match of identifier before the
|
||||
cursor
|
||||
@@ -670,6 +670,7 @@ Short explanation of each option: *option-list*
|
||||
'cursorbind' 'crb' move cursor in window as it moves in other windows
|
||||
'cursorcolumn' 'cuc' highlight the screen column of the cursor
|
||||
'cursorline' 'cul' highlight the screen line of the cursor
|
||||
'cursorlineopt' 'culopt' settings for 'cursorline'
|
||||
'debug' set to "msg" to see all error messages
|
||||
'define' 'def' pattern to be used to find a macro definition
|
||||
'delcombine' 'deco' delete combining characters on their own
|
||||
@@ -1076,8 +1077,7 @@ Short explanation of each option: *option-list*
|
||||
three digits)
|
||||
|c_CTRL-K| CTRL-K {char1} {char2}
|
||||
enter digraph (See |Q_di|)
|
||||
|c_CTRL-R| CTRL-R {0-9a-z"%#:-=}
|
||||
insert the contents of a register
|
||||
|c_CTRL-R| CTRL-R {register} insert the contents of a register
|
||||
|
||||
|c_<Left>| <Left>/<Right> cursor left/right
|
||||
|c_<S-Left>| <S-Left>/<S-Right> cursor one word left/right
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
*repeat.txt* For Vim version 8.1. Last change: 2019 Jun 14
|
||||
*repeat.txt* For Vim version 8.1. Last change: 2019 Sep 20
|
||||
|
||||
|
||||
VIM REFERENCE MANUAL by Bram Moolenaar
|
||||
@@ -219,10 +219,10 @@ For writing a Vim script, see chapter 41 of the user manual |usr_41.txt|.
|
||||
|
||||
When {file} contains wildcards it is expanded to all
|
||||
matching files. Example: >
|
||||
:runtime! plugin/*.vim
|
||||
:runtime! plugin/**/*.vim
|
||||
< This is what Vim uses to load the plugin files when
|
||||
starting up. This similar command: >
|
||||
:runtime plugin/*.vim
|
||||
:runtime plugin/**/*.vim
|
||||
< would source the first file only.
|
||||
|
||||
When 'verbose' is one or higher, there is a message
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
*sign.txt* For Vim version 8.1. Last change: 2019 Jul 21
|
||||
*sign.txt* For Vim version 8.1. Last change: 2019 Sep 06
|
||||
|
||||
|
||||
VIM REFERENCE MANUAL by Gordon Prieur
|
||||
|
||||
@@ -152,8 +152,8 @@ a slash. Thus "-R" means recovery and "-/R" readonly.
|
||||
This can be used to find out where time is spent while loading
|
||||
your .vimrc, plugins and opening the first file.
|
||||
When {fname} already exists new messages are appended.
|
||||
(Only available when compiled with the |+startuptime|
|
||||
feature).
|
||||
{only available when compiled with the |+startuptime|
|
||||
feature}
|
||||
|
||||
*--literal*
|
||||
--literal Take file names literally, don't expand wildcards. Not needed
|
||||
@@ -311,10 +311,10 @@ a slash. Thus "-R" means recovery and "-/R" readonly.
|
||||
-l Lisp mode. Sets the 'lisp' and 'showmatch' options on.
|
||||
|
||||
*-A*
|
||||
-A Arabic mode. Sets the 'arabic' option on. (Only when
|
||||
-A Arabic mode. Sets the 'arabic' option on. {only when
|
||||
compiled with the |+arabic| features (which include
|
||||
|+rightleft|), otherwise Vim gives an error message
|
||||
and exits.)
|
||||
and exits}
|
||||
|
||||
*-F*
|
||||
-F This was used for Farsi mode, which has been removed.
|
||||
@@ -322,8 +322,8 @@ a slash. Thus "-R" means recovery and "-/R" readonly.
|
||||
|
||||
*-H*
|
||||
-H Hebrew mode. Sets the 'hkmap' and 'rightleft' options on.
|
||||
(Only when compiled with the |+rightleft| feature, otherwise
|
||||
Vim gives an error message and exits.)
|
||||
{only when compiled with the |+rightleft| feature, otherwise
|
||||
Vim gives an error message and exits}
|
||||
|
||||
*-V* *verbose*
|
||||
-V[N] Verbose. Sets the 'verbose' option to [N] (default: 10).
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
*syntax.txt* For Vim version 8.1. Last change: 2019 Jul 15
|
||||
*syntax.txt* For Vim version 8.1. Last change: 2019 Sep 19
|
||||
|
||||
|
||||
VIM REFERENCE MANUAL by Bram Moolenaar
|
||||
@@ -1746,7 +1746,7 @@ There are several html preprocessor languages out there. html.vim has been
|
||||
written such that it should be trivial to include it. To do so add the
|
||||
following two lines to the syntax coloring file for that language
|
||||
(the example comes from the asp.vim file):
|
||||
|
||||
>
|
||||
runtime! syntax/html.vim
|
||||
syn cluster htmlPreproc add=asp
|
||||
|
||||
@@ -1923,6 +1923,16 @@ displayed line. The default value is 10. The disadvantage of using a larger
|
||||
number is that redrawing can become slow.
|
||||
|
||||
|
||||
JSON *json.vim* *ft-json-syntax*
|
||||
|
||||
The json syntax file provides syntax highlighting with conceal support by
|
||||
default. To disable concealment: >
|
||||
let g:vim_json_conceal = 0
|
||||
|
||||
To disable syntax highlighting of errors: >
|
||||
let g:vim_json_warnings = 0
|
||||
|
||||
|
||||
LACE *lace.vim* *ft-lace-syntax*
|
||||
|
||||
Lace (Language for Assembly of Classes in Eiffel) is case insensitive, but the
|
||||
@@ -5042,7 +5052,8 @@ IncSearch 'incsearch' highlighting; also used for the text replaced with
|
||||
LineNr Line number for ":number" and ":#" commands, and when 'number'
|
||||
or 'relativenumber' option is set.
|
||||
*hl-CursorLineNr*
|
||||
CursorLineNr Like LineNr when 'cursorline' or 'relativenumber' is set for
|
||||
CursorLineNr Like LineNr when 'cursorline' is set and 'cursorlineopt' is
|
||||
set to "number" or "both", or 'relativenumber' is set, for
|
||||
the cursor line.
|
||||
*hl-MatchParen*
|
||||
MatchParen The character under the cursor or just before it, if it
|
||||
|
||||
@@ -183,9 +183,11 @@ $VIM_POSIX vi_diff.txt /*$VIM_POSIX*
|
||||
'csverb' options.txt /*'csverb'*
|
||||
'cuc' options.txt /*'cuc'*
|
||||
'cul' options.txt /*'cul'*
|
||||
'culopt' options.txt /*'culopt'*
|
||||
'cursorbind' options.txt /*'cursorbind'*
|
||||
'cursorcolumn' options.txt /*'cursorcolumn'*
|
||||
'cursorline' options.txt /*'cursorline'*
|
||||
'cursorlineopt' options.txt /*'cursorlineopt'*
|
||||
'cwh' options.txt /*'cwh'*
|
||||
'debug' options.txt /*'debug'*
|
||||
'deco' options.txt /*'deco'*
|
||||
@@ -310,6 +312,7 @@ $VIM_POSIX vi_diff.txt /*$VIM_POSIX*
|
||||
'go-a' options.txt /*'go-a'*
|
||||
'go-b' options.txt /*'go-b'*
|
||||
'go-c' options.txt /*'go-c'*
|
||||
'go-d' options.txt /*'go-d'*
|
||||
'go-e' options.txt /*'go-e'*
|
||||
'go-f' options.txt /*'go-f'*
|
||||
'go-g' options.txt /*'go-g'*
|
||||
@@ -4038,6 +4041,7 @@ E274 eval.txt /*E274*
|
||||
E275 textprop.txt /*E275*
|
||||
E276 eval.txt /*E276*
|
||||
E277 remote.txt /*E277*
|
||||
E278 popup.txt /*E278*
|
||||
E28 syntax.txt /*E28*
|
||||
E280 if_tcl.txt /*E280*
|
||||
E282 starting.txt /*E282*
|
||||
@@ -5001,6 +5005,8 @@ S change.txt /*S*
|
||||
SHELL starting.txt /*SHELL*
|
||||
SQLGetType ft_sql.txt /*SQLGetType*
|
||||
SQLSetType ft_sql.txt /*SQLSetType*
|
||||
SafeState autocmd.txt /*SafeState*
|
||||
SafeStateAgain autocmd.txt /*SafeStateAgain*
|
||||
Select visual.txt /*Select*
|
||||
Select-mode visual.txt /*Select-mode*
|
||||
Select-mode-mapping visual.txt /*Select-mode-mapping*
|
||||
@@ -6423,6 +6429,7 @@ ft-ia64-syntax syntax.txt /*ft-ia64-syntax*
|
||||
ft-inform-syntax syntax.txt /*ft-inform-syntax*
|
||||
ft-java-syntax syntax.txt /*ft-java-syntax*
|
||||
ft-javascript-omni insert.txt /*ft-javascript-omni*
|
||||
ft-json-syntax syntax.txt /*ft-json-syntax*
|
||||
ft-ksh-syntax syntax.txt /*ft-ksh-syntax*
|
||||
ft-lace-syntax syntax.txt /*ft-lace-syntax*
|
||||
ft-lex-syntax syntax.txt /*ft-lex-syntax*
|
||||
@@ -6846,6 +6853,7 @@ getfperm() eval.txt /*getfperm()*
|
||||
getfsize() eval.txt /*getfsize()*
|
||||
getftime() eval.txt /*getftime()*
|
||||
getftype() eval.txt /*getftype()*
|
||||
getimstatus() eval.txt /*getimstatus()*
|
||||
getjumplist() eval.txt /*getjumplist()*
|
||||
getlatestvimscripts-install pi_getscript.txt /*getlatestvimscripts-install*
|
||||
getline() eval.txt /*getline()*
|
||||
@@ -7286,6 +7294,7 @@ if_ruby.txt if_ruby.txt /*if_ruby.txt*
|
||||
if_sniff.txt if_sniff.txt /*if_sniff.txt*
|
||||
if_tcl.txt if_tcl.txt /*if_tcl.txt*
|
||||
ignore-errors eval.txt /*ignore-errors*
|
||||
ignore-timestamp editing.txt /*ignore-timestamp*
|
||||
improved-autocmds-5.4 version5.txt /*improved-autocmds-5.4*
|
||||
improved-quickfix version5.txt /*improved-quickfix*
|
||||
improved-sessions version5.txt /*improved-sessions*
|
||||
@@ -7408,6 +7417,7 @@ join() eval.txt /*join()*
|
||||
js_decode() eval.txt /*js_decode()*
|
||||
js_encode() eval.txt /*js_encode()*
|
||||
jsbterm-mouse options.txt /*jsbterm-mouse*
|
||||
json.vim syntax.txt /*json.vim*
|
||||
json_decode() eval.txt /*json_decode()*
|
||||
json_encode() eval.txt /*json_encode()*
|
||||
jtags tagsrch.txt /*jtags*
|
||||
@@ -8256,6 +8266,7 @@ popup-callback popup.txt /*popup-callback*
|
||||
popup-close popup.txt /*popup-close*
|
||||
popup-examples popup.txt /*popup-examples*
|
||||
popup-filter popup.txt /*popup-filter*
|
||||
popup-filter-mode popup.txt /*popup-filter-mode*
|
||||
popup-function-details popup.txt /*popup-function-details*
|
||||
popup-functions popup.txt /*popup-functions*
|
||||
popup-intro popup.txt /*popup-intro*
|
||||
@@ -8642,6 +8653,7 @@ scriptversion eval.txt /*scriptversion*
|
||||
scriptversion-1 eval.txt /*scriptversion-1*
|
||||
scriptversion-2 eval.txt /*scriptversion-2*
|
||||
scriptversion-3 eval.txt /*scriptversion-3*
|
||||
scriptversion-4 eval.txt /*scriptversion-4*
|
||||
scroll-binding scroll.txt /*scroll-binding*
|
||||
scroll-cursor scroll.txt /*scroll-cursor*
|
||||
scroll-down scroll.txt /*scroll-down*
|
||||
@@ -8921,6 +8933,7 @@ starting.txt starting.txt /*starting.txt*
|
||||
startup starting.txt /*startup*
|
||||
startup-options starting.txt /*startup-options*
|
||||
startup-terminal term.txt /*startup-terminal*
|
||||
state() eval.txt /*state()*
|
||||
static-tag tagsrch.txt /*static-tag*
|
||||
status-line windows.txt /*status-line*
|
||||
statusmsg-variable eval.txt /*statusmsg-variable*
|
||||
@@ -9331,6 +9344,7 @@ term_list() terminal.txt /*term_list()*
|
||||
term_scrape() terminal.txt /*term_scrape()*
|
||||
term_sendkeys() terminal.txt /*term_sendkeys()*
|
||||
term_setansicolors() terminal.txt /*term_setansicolors()*
|
||||
term_setapi() terminal.txt /*term_setapi()*
|
||||
term_setkill() terminal.txt /*term_setkill()*
|
||||
term_setrestore() terminal.txt /*term_setrestore()*
|
||||
term_setsize() terminal.txt /*term_setsize()*
|
||||
@@ -9966,6 +9980,7 @@ win_gotoid() eval.txt /*win_gotoid()*
|
||||
win_id2tabwin() eval.txt /*win_id2tabwin()*
|
||||
win_id2win() eval.txt /*win_id2win()*
|
||||
win_screenpos() eval.txt /*win_screenpos()*
|
||||
win_splitmove() eval.txt /*win_splitmove()*
|
||||
winbufnr() eval.txt /*winbufnr()*
|
||||
wincol() eval.txt /*wincol()*
|
||||
window windows.txt /*window*
|
||||
@@ -10151,6 +10166,7 @@ zz scroll.txt /*zz*
|
||||
{move-around} visual.txt /*{move-around}*
|
||||
{offset} pattern.txt /*{offset}*
|
||||
{pat} autocmd.txt /*{pat}*
|
||||
{register} change.txt /*{register}*
|
||||
{rhs} map.txt /*{rhs}*
|
||||
{subject} helphelp.txt /*{subject}*
|
||||
{} intro.txt /*{}*
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
*terminal.txt* For Vim version 8.1. Last change: 2019 Jul 04
|
||||
*terminal.txt* For Vim version 8.1. Last change: 2019 Sep 26
|
||||
|
||||
|
||||
VIM REFERENCE MANUAL by Bram Moolenaar
|
||||
@@ -222,7 +222,7 @@ Command syntax ~
|
||||
Vim width (no window left or right of
|
||||
the terminal window) this value is
|
||||
ignored.
|
||||
++eof={text} when using [range]: text to send after
|
||||
++eof={text} When using [range]: text to send after
|
||||
the last line was written. Cannot
|
||||
contain white space. A CR is
|
||||
appended. For MS-Windows the default
|
||||
@@ -234,6 +234,10 @@ Command syntax ~
|
||||
++type={pty} (MS-Windows only): Use {pty} as the
|
||||
virtual console. See 'termwintype'
|
||||
for the values.
|
||||
++api={expr} Permit the function name starting with
|
||||
{expr} to be called as |terminal-api|
|
||||
function. If {expr} is empty then no
|
||||
function can be called.
|
||||
|
||||
If you want to use more options use the |term_start()|
|
||||
function.
|
||||
@@ -479,6 +483,9 @@ term_dumpdiff({filename}, {filename} [, {options}])
|
||||
Using the "s" key the top and bottom parts are swapped. This
|
||||
makes it easy to spot a difference.
|
||||
|
||||
Can also be used as a |method|: >
|
||||
GetFilename()->term_dumpdiff(otherfile)
|
||||
<
|
||||
*term_dumpload()*
|
||||
term_dumpload({filename} [, {options}])
|
||||
Open a new window displaying the contents of {filename}
|
||||
@@ -488,6 +495,9 @@ term_dumpload({filename} [, {options}])
|
||||
|
||||
For {options} see |term_dumpdiff()|.
|
||||
|
||||
Can also be used as a |method|: >
|
||||
GetFilename()-> term_dumpload()
|
||||
<
|
||||
*term_dumpwrite()*
|
||||
term_dumpwrite({buf}, {filename} [, {options}])
|
||||
Dump the contents of the terminal screen of {buf} in the file
|
||||
@@ -502,11 +512,18 @@ term_dumpwrite({buf}, {filename} [, {options}])
|
||||
"rows" maximum number of rows to dump
|
||||
"columns" maximum number of columns to dump
|
||||
|
||||
Can also be used as a |method|, the base is used for the file
|
||||
name: >
|
||||
GetFilename()-> term_dumpwrite(bufnr)
|
||||
|
||||
term_getaltscreen({buf}) *term_getaltscreen()*
|
||||
Returns 1 if the terminal of {buf} is using the alternate
|
||||
screen.
|
||||
{buf} is used as with |term_getsize()|.
|
||||
{only available when compiled with the |+terminal| feature}
|
||||
|
||||
Can also be used as a |method|: >
|
||||
GetBufnr()->term_getaltscreen()
|
||||
|
||||
|
||||
term_getansicolors({buf}) *term_getansicolors()*
|
||||
Get the ANSI color palette in use by terminal {buf}.
|
||||
@@ -517,8 +534,12 @@ term_getansicolors({buf}) *term_getansicolors()*
|
||||
|
||||
{buf} is used as with |term_getsize()|. If the buffer does not
|
||||
exist or is not a terminal window, an empty list is returned.
|
||||
{only available when compiled with the |+terminal| feature and
|
||||
with GUI enabled and/or the |+termguicolors| feature}
|
||||
|
||||
Can also be used as a |method|: >
|
||||
GetBufnr()->term_getansicolors()
|
||||
|
||||
< {only available when compiled with GUI enabled and/or the
|
||||
|+termguicolors| feature}
|
||||
|
||||
term_getattr({attr}, {what}) *term_getattr()*
|
||||
Given {attr}, a value returned by term_scrape() in the "attr"
|
||||
@@ -528,7 +549,10 @@ term_getattr({attr}, {what}) *term_getattr()*
|
||||
underline
|
||||
strike
|
||||
reverse
|
||||
{only available when compiled with the |+terminal| feature}
|
||||
|
||||
Can also be used as a |method|: >
|
||||
GetAttr()->term_getattr()
|
||||
|
||||
|
||||
term_getcursor({buf}) *term_getcursor()*
|
||||
Get the cursor position of terminal {buf}. Returns a list with
|
||||
@@ -550,13 +574,18 @@ term_getcursor({buf}) *term_getcursor()*
|
||||
{buf} must be the buffer number of a terminal window. If the
|
||||
buffer does not exist or is not a terminal window, an empty
|
||||
list is returned.
|
||||
{only available when compiled with the |+terminal| feature}
|
||||
|
||||
Can also be used as a |method|: >
|
||||
GetBufnr()->term_getcursor()
|
||||
|
||||
term_getjob({buf}) *term_getjob()*
|
||||
Get the Job associated with terminal window {buf}.
|
||||
{buf} is used as with |term_getsize()|.
|
||||
Returns |v:null| when there is no job.
|
||||
{only available when compiled with the |+terminal| feature}
|
||||
|
||||
Can also be used as a |method|: >
|
||||
GetBufnr()->term_getjob()
|
||||
|
||||
|
||||
term_getline({buf}, {row}) *term_getline()*
|
||||
Get a line of text from the terminal window of {buf}.
|
||||
@@ -567,7 +596,10 @@ term_getline({buf}, {row}) *term_getline()*
|
||||
returned.
|
||||
|
||||
To get attributes of each character use |term_scrape()|.
|
||||
{only available when compiled with the |+terminal| feature}
|
||||
|
||||
Can also be used as a |method|: >
|
||||
GetBufnr()->term_getline(row)
|
||||
|
||||
|
||||
term_getscrolled({buf}) *term_getscrolled()*
|
||||
Return the number of lines that scrolled to above the top of
|
||||
@@ -579,7 +611,10 @@ term_getscrolled({buf}) *term_getscrolled()*
|
||||
< (if that line exists).
|
||||
|
||||
{buf} is used as with |term_getsize()|.
|
||||
{only available when compiled with the |+terminal| feature}
|
||||
|
||||
Can also be used as a |method|: >
|
||||
GetBufnr()->term_getscrolled()
|
||||
|
||||
|
||||
term_getsize({buf}) *term_getsize()*
|
||||
Get the size of terminal {buf}. Returns a list with two
|
||||
@@ -589,7 +624,10 @@ term_getsize({buf}) *term_getsize()*
|
||||
{buf} must be the buffer number of a terminal window. Use an
|
||||
empty string for the current buffer. If the buffer does not
|
||||
exist or is not a terminal window, an empty list is returned.
|
||||
{only available when compiled with the |+terminal| feature}
|
||||
|
||||
Can also be used as a |method|: >
|
||||
GetBufnr()->term_getsize()
|
||||
|
||||
|
||||
term_getstatus({buf}) *term_getstatus()*
|
||||
Get the status of terminal {buf}. This returns a comma
|
||||
@@ -602,7 +640,10 @@ term_getstatus({buf}) *term_getstatus()*
|
||||
{buf} must be the buffer number of a terminal window. If the
|
||||
buffer does not exist or is not a terminal window, an empty
|
||||
string is returned.
|
||||
{only available when compiled with the |+terminal| feature}
|
||||
|
||||
Can also be used as a |method|: >
|
||||
GetBufnr()->term_getstatus()
|
||||
|
||||
|
||||
term_gettitle({buf}) *term_gettitle()*
|
||||
Get the title of terminal {buf}. This is the title that the
|
||||
@@ -611,7 +652,10 @@ term_gettitle({buf}) *term_gettitle()*
|
||||
{buf} must be the buffer number of a terminal window. If the
|
||||
buffer does not exist or is not a terminal window, an empty
|
||||
string is returned.
|
||||
{only available when compiled with the |+terminal| feature}
|
||||
|
||||
Can also be used as a |method|: >
|
||||
GetBufnr()->term_gettitle()
|
||||
|
||||
|
||||
term_gettty({buf} [, {input}]) *term_gettty()*
|
||||
Get the name of the controlling terminal associated with
|
||||
@@ -620,12 +664,15 @@ term_gettty({buf} [, {input}]) *term_gettty()*
|
||||
When {input} is omitted or 0, return the name for writing
|
||||
(stdout). When {input} is 1 return the name for reading
|
||||
(stdin). On UNIX, both return same name.
|
||||
{only available when compiled with the |+terminal| feature}
|
||||
|
||||
Can also be used as a |method|: >
|
||||
GetBufnr()->term_gettty()
|
||||
|
||||
|
||||
term_list() *term_list()*
|
||||
Return a list with the buffer numbers of all buffers for
|
||||
terminal windows.
|
||||
{only available when compiled with the |+terminal| feature}
|
||||
|
||||
|
||||
term_scrape({buf}, {row}) *term_scrape()*
|
||||
Get the contents of {row} of terminal screen of {buf}.
|
||||
@@ -642,7 +689,10 @@ term_scrape({buf}, {row}) *term_scrape()*
|
||||
"attr" attributes of the cell, use |term_getattr()|
|
||||
to get the individual flags
|
||||
"width" cell width: 1 or 2
|
||||
{only available when compiled with the |+terminal| feature}
|
||||
|
||||
Can also be used as a |method|: >
|
||||
GetBufnr()->term_scrape(row)
|
||||
|
||||
|
||||
term_sendkeys({buf}, {keys}) *term_sendkeys()*
|
||||
Send keystrokes {keys} to terminal {buf}.
|
||||
@@ -650,7 +700,19 @@ term_sendkeys({buf}, {keys}) *term_sendkeys()*
|
||||
|
||||
{keys} are translated as key sequences. For example, "\<c-x>"
|
||||
means the character CTRL-X.
|
||||
{only available when compiled with the |+terminal| feature}
|
||||
|
||||
Can also be used as a |method|: >
|
||||
GetBufnr()->term_sendkeys(keys)
|
||||
|
||||
|
||||
term_setapi({buf}, {expr}) *term_setapi()*
|
||||
Set the function name prefix to be used for the |terminal-api|
|
||||
function in terminal {buf}. For example: >
|
||||
:call term_setapi(buf, "Myapi_")
|
||||
:call term_setapi(buf, "")
|
||||
<
|
||||
The default is "Tapi_". When {expr} is an empty string then
|
||||
no |terminal-api| function can be used for {buf}.
|
||||
|
||||
term_setansicolors({buf}, {colors}) *term_setansicolors()*
|
||||
Set the ANSI color palette used by terminal {buf}.
|
||||
@@ -680,8 +742,12 @@ term_setansicolors({buf}, {colors}) *term_setansicolors()*
|
||||
'termguicolors' is set. When not using GUI colors (GUI mode
|
||||
or 'termguicolors'), the terminal window always uses the 16
|
||||
ANSI colors of the underlying terminal.
|
||||
{only available when compiled with the |+terminal| feature and
|
||||
with GUI enabled and/or the |+termguicolors| feature}
|
||||
|
||||
Can also be used as a |method|: >
|
||||
GetBufnr()->term_setansicolors(colors)
|
||||
|
||||
< {only available with GUI enabled and/or the |+termguicolors|
|
||||
feature}
|
||||
|
||||
term_setkill({buf}, {how}) *term_setkill()*
|
||||
When exiting Vim or trying to close the terminal window in
|
||||
@@ -695,6 +761,10 @@ term_setkill({buf}, {how}) *term_setkill()*
|
||||
After sending the signal Vim will wait for up to a second to
|
||||
check that the job actually stopped.
|
||||
|
||||
Can also be used as a |method|: >
|
||||
GetBufnr()->term_setkill(how)
|
||||
|
||||
|
||||
term_setrestore({buf}, {command}) *term_setrestore()*
|
||||
Set the command to write in a session file to restore the job
|
||||
in this terminal. The line written in the session file is: >
|
||||
@@ -703,7 +773,10 @@ term_setrestore({buf}, {command}) *term_setrestore()*
|
||||
|
||||
Use an empty {command} to run 'shell'.
|
||||
Use "NONE" to not restore this window.
|
||||
{only available when compiled with the |+terminal| feature}
|
||||
|
||||
Can also be used as a |method|: >
|
||||
GetBufnr()->term_setrestore(command)
|
||||
|
||||
|
||||
term_setsize({buf}, {rows}, {cols}) *term_setsize()* *E955*
|
||||
Set the size of terminal {buf}. The size of the window
|
||||
@@ -714,7 +787,10 @@ term_setsize({buf}, {rows}, {cols}) *term_setsize()* *E955*
|
||||
{buf} must be the buffer number of a terminal window. Use an
|
||||
empty string for the current buffer. If the buffer does not
|
||||
exist or is not a terminal window, an error is given.
|
||||
{only available when compiled with the |+terminal| feature}
|
||||
|
||||
Can also be used as a |method|: >
|
||||
GetBufnr()->term_setsize(rows, cols)
|
||||
|
||||
|
||||
term_start({cmd} [, {options}]) *term_start()*
|
||||
Open a terminal window and run {cmd} in it.
|
||||
@@ -780,15 +856,24 @@ term_start({cmd} [, {options}]) *term_start()*
|
||||
color modes. See |g:terminal_ansi_colors|.
|
||||
"tty_type" (MS-Windows only): Specify which pty to
|
||||
use. See 'termwintype' for the values.
|
||||
"term_api" function name prefix for the
|
||||
|terminal-api| function. See
|
||||
|term_setapi()|.
|
||||
|
||||
Can also be used as a |method|: >
|
||||
GetCommand()->term_start()
|
||||
|
||||
< {only available when compiled with the |+terminal| feature}
|
||||
|
||||
{only available when compiled with the |+terminal| feature}
|
||||
|
||||
term_wait({buf} [, {time}]) *term_wait()*
|
||||
Wait for pending updates of {buf} to be handled.
|
||||
{buf} is used as with |term_getsize()|.
|
||||
{time} is how long to wait for updates to arrive in msec. If
|
||||
not set then 10 msec will be used.
|
||||
{only available when compiled with the |+terminal| feature}
|
||||
|
||||
Can also be used as a |method|: >
|
||||
GetBufnr()->term_wait()
|
||||
|
||||
==============================================================================
|
||||
3. Terminal communication *terminal-communication*
|
||||
@@ -833,9 +918,9 @@ Currently supported commands:
|
||||
Call a user defined function with {argument}.
|
||||
The function is called with two arguments: the buffer number
|
||||
of the terminal and {argument}, the decoded JSON argument.
|
||||
The function name must start with "Tapi_" to avoid
|
||||
By default, the function name must start with "Tapi_" to avoid
|
||||
accidentally calling a function not meant to be used for the
|
||||
terminal API.
|
||||
terminal API. This can be changed with |term_setapi()|.
|
||||
The user function should sanity check the argument.
|
||||
The function can use |term_sendkeys()| to send back a reply.
|
||||
Example in JSON: >
|
||||
@@ -1156,8 +1241,10 @@ gdb:
|
||||
`:Run` [args] run the program with [args] or the previous arguments
|
||||
`:Arguments` {args} set arguments for the next `:Run`
|
||||
|
||||
*:Break* set a breakpoint at the current line; a sign will be displayed
|
||||
*:Clear* delete the breakpoint at the current line
|
||||
*:Break* set a breakpoint at the cursor position
|
||||
:Break {position}
|
||||
set a breakpoint at the specified position
|
||||
*:Clear* delete the breakpoint at the cursor position
|
||||
|
||||
*:Step* execute the gdb "step" command
|
||||
*:Over* execute the gdb "next" command (`:Next` is a Vim command)
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
*testing.txt* For Vim version 8.1. Last change: 2019 Aug 21
|
||||
*testing.txt* For Vim version 8.1. Last change: 2019 Sep 08
|
||||
|
||||
|
||||
VIM REFERENCE MANUAL by Bram Moolenaar
|
||||
@@ -44,6 +44,8 @@ test_alloc_fail({id}, {countdown}, {repeat}) *test_alloc_fail()*
|
||||
let memory allocation fail {repeat} times. When {repeat} is
|
||||
smaller than one it fails one time.
|
||||
|
||||
Can also be used as a |method|: >
|
||||
GetAllocId()->test_alloc_fail()
|
||||
|
||||
test_autochdir() *test_autochdir()*
|
||||
Set a flag to enable the effect of 'autochdir' before Vim
|
||||
@@ -55,6 +57,8 @@ test_feedinput({string}) *test_feedinput()*
|
||||
were typed by the user. This uses a low level input buffer.
|
||||
This function works only when with |+unix| or GUI is running.
|
||||
|
||||
Can also be used as a |method|: >
|
||||
GetText()->test_feedinput()
|
||||
|
||||
test_garbagecollect_now() *test_garbagecollect_now()*
|
||||
Like garbagecollect(), but executed right away. This must
|
||||
@@ -73,6 +77,8 @@ test_getvalue({name}) *test_getvalue()*
|
||||
{name} are supported:
|
||||
need_fileinfo
|
||||
|
||||
Can also be used as a |method|: >
|
||||
GetName()->test_getvalue()
|
||||
|
||||
test_ignore_error({expr}) *test_ignore_error()*
|
||||
Ignore any error containing {expr}. A normal message is given
|
||||
@@ -84,6 +90,8 @@ test_ignore_error({expr}) *test_ignore_error()*
|
||||
When the {expr} is the string "RESET" then the list of ignored
|
||||
errors is made empty.
|
||||
|
||||
Can also be used as a |method|: >
|
||||
GetErrorText()->test_ignore_error()
|
||||
|
||||
test_null_blob() *test_null_blob()*
|
||||
Return a |Blob| that is null. Only useful for testing.
|
||||
@@ -124,6 +132,9 @@ test_option_not_set({name}) *test_option_not_set()*
|
||||
even though the value is "double".
|
||||
Only to be used for testing!
|
||||
|
||||
Can also be used as a |method|: >
|
||||
GetOptionName()->test_option_not_set()
|
||||
|
||||
|
||||
test_override({name}, {val}) *test_override()*
|
||||
Overrides certain parts of Vim's internal processing to be able
|
||||
@@ -155,12 +166,17 @@ test_override({name}, {val}) *test_override()*
|
||||
< The value of "starting" is saved. It is restored by: >
|
||||
call test_override('starting', 0)
|
||||
|
||||
< Can also be used as a |method|: >
|
||||
GetOverrideVal()-> test_override('starting')
|
||||
|
||||
test_refcount({expr}) *test_refcount()*
|
||||
Return the reference count of {expr}. When {expr} is of a
|
||||
type that does not have a reference count, returns -1. Only
|
||||
to be used for testing.
|
||||
|
||||
Can also be used as a |method|: >
|
||||
GetVarname()->test_refcount()
|
||||
|
||||
|
||||
test_scrollbar({which}, {value}, {dragging}) *test_scrollbar()*
|
||||
Pretend using scrollbar {which} to move it to position
|
||||
@@ -179,6 +195,8 @@ test_scrollbar({which}, {value}, {dragging}) *test_scrollbar()*
|
||||
Only works when the {which} scrollbar actually exists,
|
||||
obviously only when using the GUI.
|
||||
|
||||
Can also be used as a |method|: >
|
||||
GetValue()->test_scrollbar('right', 0)
|
||||
|
||||
test_setmouse({row}, {col}) *test_setmouse()*
|
||||
Set the mouse position to be used for the next mouse action.
|
||||
@@ -197,6 +215,9 @@ test_settime({expr}) *test_settime()*
|
||||
{expr} must evaluate to a number. When the value is zero the
|
||||
normal behavior is restored.
|
||||
|
||||
Can also be used as a |method|: >
|
||||
GetTime()->test_settime()
|
||||
|
||||
==============================================================================
|
||||
3. Assert functions *assert-functions-details*
|
||||
|
||||
|
||||
@@ -341,7 +341,7 @@ will move accordingly.
|
||||
When text is deleted and a text property no longer includes any text, it is
|
||||
deleted. However, a text property that was defined as zero-width will remain,
|
||||
unless the whole line is deleted.
|
||||
` *E275*
|
||||
*E275*
|
||||
When a buffer is unloaded, all the text properties are gone. There is no way
|
||||
to store the properties in a file. You can only re-create them. When a
|
||||
buffer is hidden the text is preserved and so are the text properties. It is
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
*todo.txt* For Vim version 8.1. Last change: 2019 Aug 30
|
||||
*todo.txt* For Vim version 8.1. Last change: 2019 Sep 27
|
||||
|
||||
|
||||
VIM REFERENCE MANUAL by Bram Moolenaar
|
||||
@@ -38,7 +38,13 @@ browser use: https://github.com/vim/vim/issues/1234
|
||||
*known-bugs*
|
||||
-------------------- Known bugs and current work -----------------------
|
||||
|
||||
'completeopt' "popup" variant that uses a callback after the popup has been
|
||||
created, so the contents can be changed. Make it hidden, callback
|
||||
or later has to make it visible. #4924 Setting the buffer contents later
|
||||
doesn't work well.
|
||||
|
||||
Popup windows:
|
||||
- Use popup (or popup menu) for command line completion
|
||||
- Implement flip option
|
||||
- Why does 'nrformats' leak from the popup window buffer???
|
||||
Happens in Test_simple_popup() at the second screendump.
|
||||
@@ -54,6 +60,7 @@ Popup windows:
|
||||
incomplete cell.
|
||||
|
||||
Text properties: See comment at top of src/textprop.c.
|
||||
- Implement prop_find() #4970
|
||||
|
||||
'incsearch' with :s: (#3321)
|
||||
- Get E20 when using command history to get "'<,'>s/a/b" and no Visual area
|
||||
@@ -98,7 +105,6 @@ Terminal emulator window:
|
||||
be redrawn.
|
||||
- GUI: When using ":set go+=!" a system() call causes the hit-enter prompt.
|
||||
(#3327)
|
||||
- Terminal API: Add more functionality? (Ozaki Kiichi 2018 May 13, #2907)
|
||||
- GUI: hang until key typed. (#3530)
|
||||
- Allow for specifying the directory, with ++cwd={dir}.
|
||||
- With a vertical split only one window is updated. (Linwei, 2018 Jun 2,
|
||||
@@ -124,20 +130,35 @@ Terminal emulator window:
|
||||
conversions.
|
||||
|
||||
Error numbers available:
|
||||
E278, E279, E290, E292, E362, E366, E450, E451, E452,
|
||||
E279, E290, E292, E362, E366, E450, E451, E452,
|
||||
E453, E454, E460, E489, E491, E565, E578, E610, E611, E653,
|
||||
E654, E856, E857, E860, E861, E863, E889, E900
|
||||
|
||||
Running test_gui and test_gui_init with Motif sometimes kills the window
|
||||
manager. Problem with Motif? Now test_gui crashes in submenu_change().
|
||||
Athena is OK.
|
||||
Motif: Build on Ubuntu can't enter any text in dialog text fields.
|
||||
|
||||
Improve running tests on MS-Windows: #4922
|
||||
|
||||
Patch to properly break CJK lines: #3875
|
||||
Ready to include now?
|
||||
|
||||
Remove check for cmd_silent when calling search_stat()? (Gary Johnson)
|
||||
|
||||
undo result wrong: Masato Nishihata, #4798
|
||||
|
||||
Undo puts cursor in wrong line after "cG<Esc>" undo.
|
||||
|
||||
Sound: support on Mac? Or does libcanberra work there?
|
||||
|
||||
Patch to add win_splitmove() function. (Andy Massimino, #4561)
|
||||
|
||||
Patch for #4733: #4734. Test needs improvements.
|
||||
|
||||
Patch to sort buffers on b_last_used time. (Andy Massimino, #4722)
|
||||
|
||||
Patch to highlight the line number differently below the cursor line. (Shaun
|
||||
Brady, #624)
|
||||
|
||||
Patch to fix session file when using multiple tabs. (Jason Franklin, 2019 May
|
||||
20)
|
||||
Also put :argadd commands at the start for all buffers, so that their order
|
||||
@@ -155,43 +176,62 @@ Ready to include now?
|
||||
Adding "10" to 'spellsuggest' causes spell suggestions to become very slow.
|
||||
(#4087)
|
||||
|
||||
Patch to support 'cursorlineopt' - only highlight the line number of the
|
||||
cursor line: #4693
|
||||
|
||||
Let plugins know how much space is available in the last line before
|
||||
triggering the hit-enter prompt. Internally called "sc_col".
|
||||
(Daniel Hahler, #4732)
|
||||
|
||||
Patch for Template string: #4491 Not ready yet. New pull: #4634
|
||||
|
||||
":bnext" in a help buffer is supposed to go to the next help buffer, but it
|
||||
goes to any buffer, and then :bnext skips help buffers, since they are
|
||||
unlisted. (#4478)
|
||||
|
||||
Patch to fix using zero sc_sid. (#4877)
|
||||
|
||||
Universal solution to detect if t_RS is working, using cursor position.
|
||||
Koichi Iwamoto, #2126
|
||||
|
||||
Make 'showbreak' global-local.
|
||||
|
||||
The :syntax cchar value can only be a single character. It would be useful to
|
||||
support combining characters. (Charles Campbell) Also #4687
|
||||
|
||||
Patch to make gM move to middle of line. (Yasuhiro Matsumoto, Sep 8, #2070)
|
||||
|
||||
Patch to add v:argv, arguments that Vim was started with. (Dmitri
|
||||
Vereshchagin, #1322)
|
||||
|
||||
New value "uselast" for 'switchbuf'. (Lemonboy, 2017 Apr 23, #1652)
|
||||
|
||||
Include Haiku port. (Adrien Destugues, Siarzhuk Zharski, 2013 Oct 24)
|
||||
It can replace the BeOS code, which is likely not used anymore.
|
||||
Now on github: #1856. Updated Oct 2017
|
||||
Got permission to include this under the Vim license.
|
||||
|
||||
Problem showing a line if the number column width changes when using "o".
|
||||
(Mateusz Morusiewicz, #4245)
|
||||
|
||||
When using :packadd for a replacement language plugin, it is loaded after the
|
||||
default one. #4698
|
||||
|
||||
Patch to remove FORTIFY_SOURCE also from CPPFLAGS. (Benedikt Morbach, #2786)
|
||||
|
||||
Patch from Namsh to allow building with both XIM and hangulin. (2019 Aug 29)
|
||||
|
||||
Patch to fix redirect of shell on MS-Windows. (Yasuhiro Matsumoto, #2054)
|
||||
|
||||
When using :packadd files under "later" are not used, which is inconsistent
|
||||
with packages under "start". (xtal8, #1994)
|
||||
|
||||
Modeless selection doesn't work in gvim. (#4783)
|
||||
Caused by patch 8.1.1534.
|
||||
|
||||
Patch to add random number generator. (Hong Xu, 2010 Nov 8, update Nov 10)
|
||||
Alternative from Christian Brabandt. (2010 Sep 19)
|
||||
New one from Yasuhiro Matsumoto, #1277.
|
||||
|
||||
Visual highlight not removed when 'dipslay' is "lastline" and line doesn't
|
||||
fit. (Kevin Lawler, #4457)
|
||||
|
||||
Patch to add interrupt(). (Yasuhiro Matsumoto, #2834)
|
||||
|
||||
Patch to add per-tabpage and per-window previous directory: "lcd -" and "tcd
|
||||
-". (Yegappan Lakshmanan, #4362)
|
||||
|
||||
Does not build with MinGW out of the box:
|
||||
- _stat64 is not defined, need to use "struct stat" in vim.h
|
||||
- WINVER conflict, should use 0x0600 by default?
|
||||
@@ -199,11 +239,30 @@ Does not build with MinGW out of the box:
|
||||
Crash when mixing matchadd and substitute()? (Max Christian Pohle, 2018 May
|
||||
13, #2910) Can't reproduce?
|
||||
|
||||
Patch to configure BUILD_DATE for reproducible builds. (James McCoy, #513)
|
||||
|
||||
Patch to add MODIFIED_BY to MSVC build file. (Chen Lei, 2016 Nov 24, #1275)
|
||||
|
||||
Check_external_diff() is used too often. (Daniel Hahler, #4800)
|
||||
|
||||
Incorrect formatting with autoindent. (Sebastian Gniazdowski, #4909)
|
||||
|
||||
Patch to add the :bvimgrep command. (Christian Brabandt, 2014 Nov 12)
|
||||
Updated 2016 Jun 10, #858 Update 2017 Mar 28: use <buffer>
|
||||
|
||||
Errors found with random data:
|
||||
heap-buffer-overflow in alist_add (#2472)
|
||||
|
||||
Patch to support CamelCase for spell checking: See a lower-to-upper case
|
||||
change as a word boundary. (btucker-MPCData, 2016 Nov 6, #1235)
|
||||
patch for 'spellcamelcase' option: spellcheck each CamelCased word.
|
||||
(Ben Tucker, 2016 Dec 2)
|
||||
|
||||
Patch to add {skip} argument to search(). (Christian Brabandt, 2016 Feb 24)
|
||||
Update 2016 Jun 10, #861
|
||||
|
||||
Patch to add "cmdline" completion to getcompletion(). (Shougo, Oct 1, #1140)
|
||||
|
||||
Improve fallback for menu translations, to avoid having to create lots of
|
||||
files that source the actual file. E.g. menu_da_de -> menu_da
|
||||
Include part of #3242?
|
||||
@@ -211,7 +270,21 @@ Include part of #3242?
|
||||
When a terminal exit_cb closes the window, a following typed key is lost, if
|
||||
it's in a mapping. (2018 Oct 6, #2302, #3522)
|
||||
|
||||
Patch for Inno Setup: #2739
|
||||
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, #958). Still needs more work.
|
||||
|
||||
Patch for multi-byte characters in langmap and applying a mapping on them.
|
||||
(Christian Brabandt, 2015 Jun 12, update July 25)
|
||||
Is this the right solution? Need to cleanup langmap behavior:
|
||||
- in vgetorpeek() apply langmap to the typeahead buffer and put the result in
|
||||
a copy-buffer, only when langmap is appropriate for the current mode. Then
|
||||
check for mapping and let gotchars() work on the copy-buffer.
|
||||
- Remove LANGMAP_ADJUST() in other parts of the code. Make sure the mode is
|
||||
covered by the above change.
|
||||
So that replaying the register doesn't use keymap/langmap and still does the
|
||||
same thing. Remarks on PR #543 (Roland Puntaier).
|
||||
Also see #737: langmap not applied to replaying recording.
|
||||
|
||||
Would be nice to set tab-local values for 'diffexpr' and 'diffopt'. Use
|
||||
t:diffexpr_option t:diffopt_option? (#4782)
|
||||
@@ -232,6 +305,11 @@ Give a few examples. (#4288)
|
||||
Opening a file with --remote-tab-silent that matches 'wildignore' does not
|
||||
work, results in (E479: No match". (#4610)
|
||||
|
||||
Patch for this (Tristan Konolige, #1011, only adds the option, no implem.):
|
||||
7 Add an option to add one pixel column to the character width? Lucida
|
||||
Console italic is wider than the normal font ("d" overlaps with next char).
|
||||
Opposite of 'linespace': 'columnspace'.
|
||||
|
||||
Bug: script written with "-W scriptout" contains Key codes, while the script
|
||||
read with "-s scriptin" expects escape codes. Probably "scriptout" needs to
|
||||
be adjusted. (Daniel Steinberg, 2019 Feb 24, #4041)
|
||||
@@ -278,8 +356,6 @@ Many users don't like 'thesaurus' to match so many words. (#4667, #1611)
|
||||
Some composing characters actually add a cell width to the character they are
|
||||
on top off, making the whole thing two characters wide. (#4526)
|
||||
|
||||
Add CmdwinLeavePost (#4762). Also add WinLeavePost then?
|
||||
|
||||
Should we include some part of pull request #4505, not increment changedtick
|
||||
in some cases? E.g. for ":write" when the changed flag was already off, the
|
||||
buffer didn't change at all.
|
||||
@@ -311,6 +387,9 @@ Support setting the character displayed below the last line? Neovim uses
|
||||
Check: __attribute__((format(printf, on semsg() and siemsg(). Where was this
|
||||
added?
|
||||
|
||||
Patch to add a flatten() function. #3676. Check that the doc explains the
|
||||
maxdepth argument (applies to the input "recursiveness").
|
||||
|
||||
Add test for urxvt mouse codes. Also test that mouse coordinates can be
|
||||
negative. (see #4326)
|
||||
|
||||
@@ -346,11 +425,6 @@ Not existing directory in CDPATH leads to two shell calls. (#4525)
|
||||
Use dict_iterate_start() / dict_iterate_next() instead of relying on the
|
||||
internals of the dict structure.
|
||||
|
||||
Running test_gui and test_gui_init with Motif sometimes kills the window
|
||||
manager. Problem with Motif? Now test_gui crashes in submenu_change().
|
||||
Athena is OK.
|
||||
Motif: Build on Ubuntu can't enter any text in dialog text fields.
|
||||
|
||||
nvo-mode mapping works on Windows, not on Linux. (#3678)
|
||||
|
||||
Missing tests for:
|
||||
@@ -502,9 +576,6 @@ Further xdiff changes:
|
||||
|
||||
Difference between two regexp engines: #3373
|
||||
|
||||
Patch to properly break CJK lines: #3875
|
||||
Requires more tests. dbcs_ functions are not implemented.
|
||||
|
||||
Patch to add ch_listen() (Yasuhiro Matsumoto, 2018 Nov 26, #3639)
|
||||
What is the practical use for this?
|
||||
|
||||
@@ -512,7 +583,7 @@ When the last line wraps, selecting with the mouse below that line only
|
||||
includes the first screen line. (2018 Aug 23, #3368)
|
||||
|
||||
Refactored HTML indent file. (Michael Lee, #1821)
|
||||
Ask to write a test first.
|
||||
Asked to write a test.
|
||||
|
||||
MS-Windows: .lnk file not resolved properly when 'encoding' is set.
|
||||
(lkintact, 2018 Sep 22, #3473)
|
||||
@@ -599,9 +670,6 @@ pass an expression to evaluate. Allow passing zero for "never skip".
|
||||
Add an option similar to 'lazyredraw' to skip redrawing while executing a
|
||||
script or function.
|
||||
|
||||
Universal solution to detect if t_RS is working, using cursor position.
|
||||
Koichi Iwamoto, #2126
|
||||
|
||||
When using a menu item while the "more" prompt is displayed doesn't work well.
|
||||
E.g. after using help->version. Have a key that ends the "more" prompt and
|
||||
does nothing otherwise?
|
||||
@@ -639,6 +707,9 @@ Jan 15, #2555)
|
||||
|
||||
":bufdo e" disabled syntax HL in windows other than the current. (BPJ)
|
||||
|
||||
Patch for Template string: #4491. New pull: #4634
|
||||
It's an awful lot of code for something that is just a bit nicer syntax.
|
||||
|
||||
Check argument of systemlist(). (Pavlov)
|
||||
|
||||
No maintainer for Vietnamese translations.
|
||||
@@ -772,7 +843,7 @@ Problem with 'delcombine'. (agguser, 2017 Nov 10, #2313)
|
||||
MS-Windows: buffer completion doesn't work when using backslash (or slash)
|
||||
for a path separator. (xtal8, #2201)
|
||||
|
||||
Would be nice for insert mode completion to highlight the text that was added
|
||||
Would be nice for Insert mode completion to highlight the text that was added
|
||||
(and may change when picking another completion).
|
||||
|
||||
Test runtime files.
|
||||
@@ -795,15 +866,8 @@ The ":move" command does not honor closed folds. (Ryan Lue, #2351)
|
||||
Patch to fix increment/decrement not working properly when 'virtualedit' is
|
||||
set. (Hirohito Higashi, 2016 Aug 1, #923)
|
||||
|
||||
Patch to make gM move to middle of line. (Yasuhiro Matsumoto, Sep 8, #2070)
|
||||
|
||||
Cannot copy modeless selection when cursor is inside it. (lkintact, #2300)
|
||||
|
||||
Include Haiku port. (Adrien Destugues, Siarzhuk Zharski, 2013 Oct 24)
|
||||
It can replace the BeOS code, which is likely not used anymore.
|
||||
Now on github: #1856. Updated Oct 2017
|
||||
Got permission to include this under the Vim license.
|
||||
|
||||
Test_writefile_fails_conversion failure on Solaris because if different iconv
|
||||
behavior. Skip when "uname" returns "SunOS"? (Pavel Heimlich, #1872)
|
||||
|
||||
@@ -900,8 +964,6 @@ Memory leak in test97? The string is actually freed. Weird.
|
||||
assert_fails() can only check for the first error. Make it possible to have
|
||||
it catch multiple errors and check all of them.
|
||||
|
||||
New value "uselast" for 'switchbuf'. (Lemonboy, 2017 Apr 23, #1652)
|
||||
|
||||
Add a toolbar in the terminal. Can be global, above all windows, or specific
|
||||
for one window.
|
||||
|
||||
@@ -989,10 +1051,6 @@ somewhere else. :{range}copy {dest} !cmd
|
||||
Patch to fix that empty first tab is not in session.
|
||||
(Hirohito Higashi, 2016 Nov 25, #1282)
|
||||
|
||||
Patch to add random number generator. (Hong Xu, 2010 Nov 8, update Nov 10)
|
||||
Alternative from Christian Brabandt. (2010 Sep 19)
|
||||
New one from Yasuhiro Matsumoto, #1277.
|
||||
|
||||
Patch to fix escaping of job arguments. (Yasuhiro Matsumoto, 2016 Oct 5)
|
||||
Update Oct 14: https://gist.github.com/mattn/d47e7d3bfe5ade4be86062b565a4bfca
|
||||
Update Aug 2017: #1954
|
||||
@@ -1048,10 +1106,6 @@ Patch to make it possible to extend a list with itself.
|
||||
|
||||
Patch to add Zstandard compressed file support. (Nick Terrell, 2016 Oct 24)
|
||||
|
||||
Patch to add MODIFIED_BY to MSVC build file. (Chen Lei, 2016 Nov 24, #1275)
|
||||
|
||||
Patch to change argument of :marks. (LemonBoy, 2017 Jan 29, #1426)
|
||||
|
||||
On Windows buffer completion sees backslash as escape char instead of path
|
||||
separator. (Toffanim, 2016 Nov 24, #1274)
|
||||
|
||||
@@ -1151,8 +1205,6 @@ Regexp problems:
|
||||
Another one: echom matchstr(" sdfsfsf\n sfdsdfsdf",'[^\n]*')
|
||||
(2017 May 15, #1252)
|
||||
|
||||
Patch to add "cmdline" completion to getcompletion(). (Shougo, Oct 1, #1140)
|
||||
|
||||
Feature request: Complete members of a dictionary. (Luc Hermitte, 2017 Jan 4,
|
||||
#1350)
|
||||
|
||||
@@ -1168,11 +1220,6 @@ Include the test.
|
||||
When 'keywordprg' starts with ":" the argument is still escaped as a shell
|
||||
command argument. (Romain Lafourcade, 2016 Oct 16, #1175)
|
||||
|
||||
Patch to support CamelCase for spell checking: See a lower-to-upper case
|
||||
change as a word boundary. (btucker-MPCData, 2016 Nov 6, #1235)
|
||||
patch for 'spellcamelcase' option: spellcheck each CamelCased word.
|
||||
(Ben Tucker, 2016 Dec 2)
|
||||
|
||||
Idea from Sven: record sequence of keys. Useful to show others what they are
|
||||
doing (look over the shoulder), and also to see what happened.
|
||||
Probably list of keystrokes, with some annotations for mode changes.
|
||||
@@ -1255,9 +1302,6 @@ Reject the value? #710.
|
||||
When doing "vi buf.md" a BufNew autocommand for *.md is not triggered.
|
||||
Because of using the initial buffer? (Dun Peal, 2016 May 12)
|
||||
|
||||
Patch to add the :bvimgrep command. (Christian Brabandt, 2014 Nov 12)
|
||||
Updated 2016 Jun 10, #858 Update 2017 Mar 28: use <buffer>
|
||||
|
||||
Add redrawtabline command. (Naruhiko Nishino, 2016 Jun 11)
|
||||
|
||||
Neovim patch for utfc_ptr2char_len() https://github.com/neovim/neovim/pull/4574
|
||||
@@ -1319,10 +1363,6 @@ Also need to run update-desktop-database (Kuriyama Kazunobu, 2015 Nov 4)
|
||||
Test object i{ and it do not behave the same. #1379
|
||||
Do not include the linebreak at the start?
|
||||
|
||||
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.
|
||||
|
||||
Feature request: add the "al" text object, to manipulate a screen line.
|
||||
Especially useful when using 'linebreak'
|
||||
|
||||
@@ -1338,9 +1378,6 @@ If ":bd" also closes a Tab page then the " mark is not set. (Harm te Hennepe,
|
||||
Patch to avoid redrawing tabline when the popup menu is visible.
|
||||
(Christian Brabandt, 2016 Jan 28)
|
||||
|
||||
Patch to add {skip} argument to search(). (Christian Brabandt, 2016 Feb 24)
|
||||
Update 2016 Jun 10, #861
|
||||
|
||||
Patch to show search statistics. (Christian Brabandt, 2016 Jul 22)
|
||||
|
||||
When the CursorMovedI event triggers, and CTRL-X was typed, a script cannot
|
||||
@@ -1459,18 +1496,6 @@ Patch to fix checking global option value when not using it.
|
||||
When 'showbreak' is set repeating a Visual operation counts the size of the
|
||||
'showbreak' text as part of the operation. (Axel Bender, 2015 Jul 20)
|
||||
|
||||
Patch for multi-byte characters in langmap and applying a mapping on them.
|
||||
(Christian Brabandt, 2015 Jun 12, update July 25)
|
||||
Is this the right solution? Need to cleanup langmap behavior:
|
||||
- in vgetorpeek() apply langmap to the typeahead buffer and put the result in
|
||||
a copy-buffer, only when langmap is appropriate for the current mode. Then
|
||||
check for mapping and let gotchars() work on the copy-buffer.
|
||||
- Remove LANGMAP_ADJUST() in other parts of the code. Make sure the mode is
|
||||
covered by the above change.
|
||||
So that replaying the register doesn't use keymap/langmap and still does the
|
||||
same thing. Remarks on issue 543 (Roland Puntaier).
|
||||
Also see #737: langmap not applied to replaying recording.
|
||||
|
||||
Patch to add grepfile(). (Scott Prager, 2015 May 26)
|
||||
Work in progress.
|
||||
|
||||
@@ -1887,9 +1912,6 @@ Syntax region with 'concealends' and a 'cchar' value, 'conceallevel' set to 2,
|
||||
only one of the two ends gets the cchar displayed. (Brett Stahlman, 2010 Aug
|
||||
21, Ben Fritz, 2010 Sep 14)
|
||||
|
||||
'cursorline' works on a text line only. Add 'cursorscreenline' for
|
||||
highlighting the screen line. (Christian Brabandt, 2012 Mar 31)
|
||||
|
||||
Win32: Patch to use task dialogs when available. (Sergiu Dotenco, 2011 Sep 17)
|
||||
New feature, requires testing. Made some remarks.
|
||||
|
||||
@@ -3288,9 +3310,6 @@ Win32 GUI known bugs:
|
||||
8 When the 'shell' cannot be executed, should give an appropriate error msg.
|
||||
Esp. for a filter command, currently it only complains the file could not
|
||||
be read.
|
||||
7 Add an option to add one pixel column to the character width? Lucida
|
||||
Console italic is wider than the normal font ("d" overlaps with next char).
|
||||
Opposite of 'linespace': 'columnspace'.
|
||||
7 At the hit-enter prompt scrolling now no longer works. Need to use the
|
||||
keyboard to get around this. Pretend <CR> was hit when the user tries to
|
||||
scroll?
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
*usr_41.txt* For Vim version 8.1. Last change: 2019 Jul 06
|
||||
*usr_41.txt* For Vim version 8.1. Last change: 2019 Sep 23
|
||||
|
||||
VIM USER MANUAL - by Bram Moolenaar
|
||||
|
||||
@@ -856,6 +856,7 @@ Insert mode completion: *completion-functions*
|
||||
complete_check() check if completion should be aborted
|
||||
complete_info() get current completion information
|
||||
pumvisible() check if the popup menu is displayed
|
||||
pum_getpos() position and size of popup menu if visible
|
||||
|
||||
Folding: *folding-functions*
|
||||
foldclosed() check for a closed fold at a specific line
|
||||
|
||||
@@ -480,9 +480,9 @@ probably contains your vimrc file and other runtime files that you created, so
|
||||
be careful.
|
||||
|
||||
Else, if you installed Vim with the zip archives, the preferred way is to use
|
||||
the "uninstal" program (note the missing l at the end). You can find it in
|
||||
the same directory as the "install" program, e.g., "c:\vim\vim61". This
|
||||
should also work from the usual "install/remove software" page.
|
||||
the "uninstall" program. You can find it in the same directory as the
|
||||
"install" program, e.g., "c:\vim\vim61". This should also work from the usual
|
||||
"install/remove software" page.
|
||||
However, this only removes the registry entries for Vim. You have to
|
||||
delete the files yourself. Simply select the directory "vim\vim61" and delete
|
||||
it recursively. There should be no files there that you changed, but you
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
*various.txt* For Vim version 8.1. Last change: 2019 Aug 21
|
||||
*various.txt* For Vim version 8.1. Last change: 2019 Sep 28
|
||||
|
||||
|
||||
VIM REFERENCE MANUAL by Bram Moolenaar
|
||||
@@ -337,7 +337,7 @@ N *+clientserver* Unix and Win32: Remote invocation |clientserver|
|
||||
T *+cmdline_compl* command line completion |cmdline-completion|
|
||||
S *+cmdline_hist* command line history |cmdline-history|
|
||||
N *+cmdline_info* |'showcmd'| and |'ruler'|
|
||||
N *+comments* |'comments'| support
|
||||
T *+comments* |'comments'| support
|
||||
B *+conceal* "conceal" support, see |conceal| |:syn-conceal| etc.
|
||||
N *+cryptv* encryption support |encryption|
|
||||
B *+cscope* |cscope| support
|
||||
@@ -388,7 +388,7 @@ m *+lua* |Lua| interface
|
||||
m *+lua/dyn* |Lua| interface |/dyn|
|
||||
N *+menu* |:menu|
|
||||
N *+mksession* |:mksession|
|
||||
N *+modify_fname* |filename-modifiers|
|
||||
T *+modify_fname* |filename-modifiers|
|
||||
N *+mouse* Mouse handling |mouse-using|
|
||||
N *+mouseshape* |'mouseshape'|
|
||||
B *+mouse_dec* Unix only: Dec terminal mouse handling |dec-mouse|
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
*vi_diff.txt* For Vim version 8.1. Last change: 2019 May 13
|
||||
*vi_diff.txt* For Vim version 8.1. Last change: 2019 Sep 27
|
||||
|
||||
|
||||
VIM REFERENCE MANUAL by Bram Moolenaar
|
||||
@@ -703,7 +703,7 @@ first character).
|
||||
|
||||
CTRL-A works like CTRL-@ but does not leave insert mode.
|
||||
|
||||
CTRL-R {0-9a-z..} can be used to insert the contents of a register.
|
||||
CTRL-R {register} can be used to insert the contents of a register.
|
||||
|
||||
When the 'smartindent' option is set, C programs will be better auto-indented.
|
||||
With 'cindent' even more.
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
" Vim support file to detect file types
|
||||
"
|
||||
" Maintainer: Bram Moolenaar <Bram@vim.org>
|
||||
" Last Change: 2019 Aug 26
|
||||
" Last Change: 2019 Sep 27
|
||||
|
||||
" Listen very carefully, I will say this only once
|
||||
if exists("did_load_filetypes")
|
||||
|
||||
@@ -11,21 +11,10 @@ if exists("b:did_ftplugin")
|
||||
finish
|
||||
endif
|
||||
|
||||
unlet! b:is_sh
|
||||
unlet! b:is_kornshell
|
||||
let b:is_bash = 1
|
||||
if exists("b:is_sh")
|
||||
unlet b:is_sh
|
||||
endif
|
||||
if exists("b:is_kornshell")
|
||||
unlet b:is_kornshell
|
||||
endif
|
||||
|
||||
" Setting 'filetype' here directly won't work, since we are being invoked
|
||||
" through an autocommand. Do it later, on the BufWinEnter event.
|
||||
augroup bash_filetype
|
||||
au BufWinEnter * call SetBashFt()
|
||||
augroup END
|
||||
runtime! ftplugin/sh.vim ftplugin/sh_*.vim ftplugin/sh/*.vim
|
||||
|
||||
func SetBashFt()
|
||||
au! bash_filetype
|
||||
set ft=sh
|
||||
endfunc
|
||||
" vim: ts=8
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
" Vim filetype plugin file
|
||||
" Language: man
|
||||
" Maintainer: SungHyun Nam <goweol@gmail.com>
|
||||
" Last Change: 2019 Jul 22
|
||||
" Last Change: 2019 Sep 26
|
||||
" (fix by Jason Franklin)
|
||||
|
||||
" To make the ":Man" command available before editing a manual page, source
|
||||
@@ -132,11 +132,17 @@ func <SID>GetPage(cmdmods, ...)
|
||||
let page = expand('<cword>')
|
||||
endif
|
||||
|
||||
if !exists('g:ft_man_no_sect_fallback') || (g:ft_man_no_sect_fallback == 0)
|
||||
if sect != "" && s:FindPage(sect, page) == 0
|
||||
let sect = ""
|
||||
endif
|
||||
endif
|
||||
if s:FindPage(sect, page) == 0
|
||||
echo "\nCannot find a '".page."'."
|
||||
let msg = "\nNo manual entry for ".page
|
||||
if sect != ""
|
||||
let msg .= " in section ".sect
|
||||
endif
|
||||
echo msg
|
||||
return
|
||||
endif
|
||||
exec "let s:man_tag_buf_".s:man_tag_depth." = ".bufnr("%")
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
" Vim filetype plugin file
|
||||
" Language: matlab
|
||||
" Maintainer: Jake Wasserman <jwasserman at gmail dot com>
|
||||
" Last Changed: 2014 Dec 30
|
||||
" Last Change: 2019 Sep 27
|
||||
|
||||
" Contributors:
|
||||
" Charles Campbell
|
||||
@@ -24,8 +24,9 @@ endif
|
||||
|
||||
setlocal suffixesadd=.m
|
||||
setlocal suffixes+=.asv
|
||||
setlocal commentstring=%\ %s
|
||||
|
||||
let b:undo_ftplugin = "setlocal suffixesadd< suffixes< "
|
||||
let b:undo_ftplugin = "setlocal suffixesadd< suffixes< commentstring< "
|
||||
\ . "| unlet! b:match_words"
|
||||
|
||||
let &cpo = s:save_cpo
|
||||
|
||||
@@ -20,6 +20,7 @@ Comment=Edit text files
|
||||
GenericName[da]=Teksteditor
|
||||
GenericName[fr]=Éditeur de texte
|
||||
GenericName[pl]=Edytor tekstu
|
||||
GenericName[sr]=Едитор текста
|
||||
GenericName[is]=Ritvinnsluforrit
|
||||
Comment[af]=Redigeer tekslêers
|
||||
Comment[am]=የጽሑፍ ፋይሎች ያስተካክሉ
|
||||
|
||||
18
runtime/indent/bash.vim
Normal file
18
runtime/indent/bash.vim
Normal file
@@ -0,0 +1,18 @@
|
||||
" Vim indent file
|
||||
" Language: bash
|
||||
" Maintainer: Bram
|
||||
" Last Change: 2019 Sep 27
|
||||
|
||||
" Only load this indent file when no other was loaded.
|
||||
if exists("b:did_indent")
|
||||
finish
|
||||
endif
|
||||
|
||||
" The actual indenting is in sh.vim and controlled by buffer-local variables.
|
||||
unlet! b:is_sh
|
||||
unlet! b:is_kornshell
|
||||
let b:is_bash = 1
|
||||
|
||||
runtime! indent/sh.vim
|
||||
|
||||
" vim: ts=8
|
||||
@@ -1,7 +1,7 @@
|
||||
" Vim indent file
|
||||
" Language: SystemVerilog
|
||||
" Maintainer: kocha <kocha.lsifrontend@gmail.com>
|
||||
" Last Change: 12-Aug-2013.
|
||||
" Last Change: 05-Feb-2017 by Bilal Wasim
|
||||
|
||||
" Only load this indent file when no other was loaded.
|
||||
if exists("b:did_indent")
|
||||
@@ -74,7 +74,7 @@ function SystemVerilogIndent()
|
||||
|
||||
" Indent after if/else/for/case/always/initial/specify/fork blocks
|
||||
elseif last_line =~ '`\@<!\<\(if\|else\)\>' ||
|
||||
\ last_line =~ '^\s*\<\(for\|case\%[[zx]]\|do\|foreach\|randcase\)\>' ||
|
||||
\ last_line =~ '^\s*\<\(for\|case\%[[zx]]\|do\|foreach\|forever\|randcase\)\>' ||
|
||||
\ last_line =~ '^\s*\<\(always\|always_comb\|always_ff\|always_latch\)\>' ||
|
||||
\ last_line =~ '^\s*\<\(initial\|specify\|fork\|final\)\>'
|
||||
if last_line !~ '\(;\|\<end\>\)\s*' . sv_comment . '*$' ||
|
||||
@@ -129,9 +129,9 @@ function SystemVerilogIndent()
|
||||
" De-indent for the end of one-line block
|
||||
elseif ( last_line !~ '\<begin\>' ||
|
||||
\ last_line =~ '\(//\|/\*\).*\<begin\>' ) &&
|
||||
\ last_line2 =~ '\<\(`\@<!if\|`\@<!else\|for\|always\|initial\|do\|foreach\|final\)\>.*' .
|
||||
\ last_line2 =~ '\<\(`\@<!if\|`\@<!else\|for\|always\|initial\|do\|foreach\|forever\|final\)\>.*' .
|
||||
\ sv_comment . '*$' &&
|
||||
\ last_line2 !~ '\(//\|/\*\).*\<\(`\@<!if\|`\@<!else\|for\|always\|initial\|do\|foreach\|final\)\>' &&
|
||||
\ last_line2 !~ '\(//\|/\*\).*\<\(`\@<!if\|`\@<!else\|for\|always\|initial\|do\|foreach\|forever\|final\)\>' &&
|
||||
\ last_line2 !~ sv_openstat . '\s*' . sv_comment . '*$' &&
|
||||
\ ( last_line2 !~ '\<begin\>' ||
|
||||
\ last_line2 =~ '\(//\|/\*\).*\<begin\>' )
|
||||
@@ -194,7 +194,7 @@ function SystemVerilogIndent()
|
||||
\ last_line !~ '^\s*\<\(property\|checker\|program\)\>' &&
|
||||
\ last_line !~ '^\s*\()*\s*;\|)\+\)\s*' . sv_comment . '*$' &&
|
||||
\ ( last_line =~
|
||||
\ '\<\(`\@<!if\|`\@<!else\|for\|case\%[[zx]]\|always\|initial\|do\|foreach\|randcase\|final\)\>' ||
|
||||
\ '\<\(`\@<!if\|`\@<!else\|for\|case\%[[zx]]\|always\|initial\|do\|foreach\|forever\|randcase\|final\)\>' ||
|
||||
\ last_line =~ ')\s*' . sv_comment . '*$' ||
|
||||
\ last_line =~ sv_openstat . '\s*' . sv_comment . '*$' )
|
||||
let ind = ind - offset
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
" Vim indent file
|
||||
" Language: Tcl
|
||||
" Previous Maintainer: Nikolai Weibull <now@bitwi.se>
|
||||
" Latest Update: Chris Heithoff <chrisheithoff@gmail.com>
|
||||
" Previous Maintainer: Nikolai Weibull <now@bitwi.se>
|
||||
" Latest Revision: 2018-12-05
|
||||
|
||||
if exists("b:did_indent")
|
||||
|
||||
@@ -20,6 +20,7 @@ func HandleSwapExists()
|
||||
endif
|
||||
endfunc
|
||||
|
||||
let failed_count = 0
|
||||
for fname in glob('testdir/*.in', 1, 1)
|
||||
let root = substitute(fname, '\.in', '', '')
|
||||
|
||||
@@ -110,6 +111,7 @@ for fname in glob('testdir/*.in', 1, 1)
|
||||
endif
|
||||
|
||||
if failed
|
||||
let failed_count += 1
|
||||
exe 'write ' . root . '.fail'
|
||||
echoerr 'Test ' . fname . ' FAILED!'
|
||||
else
|
||||
@@ -123,4 +125,8 @@ endfor
|
||||
" Matching "if 1" at the start.
|
||||
endif
|
||||
|
||||
if failed_count > 0
|
||||
" have make report an error
|
||||
cquit
|
||||
endif
|
||||
qall!
|
||||
|
||||
@@ -1,5 +1,6 @@
|
||||
" Vim Keymap file for russian characters, layout 'jcuken', MS Windows variant
|
||||
" (slightly incompatible with XFree86 'ru' keymap - makes use of NUMERO SIGN)
|
||||
" Vim Keymap file for russian characters, layout 'jcuken', MS Windows
|
||||
" Typewriter variant (slightly incompatible with XFree86 'ru' keymap -
|
||||
" makes use of NUMERO SIGN)
|
||||
" Useful mainly with utf-8 but may work with other encodings
|
||||
|
||||
" Derived from russian-jcuken.vim by Artem Chuprina <ran@ran.pp.ru>
|
||||
@@ -15,14 +16,13 @@ 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 IO
|
||||
: Ж CYRILLIC CAPITAL LETTER ZHE
|
||||
P З CYRILLIC CAPITAL LETTER ZE
|
||||
B И CYRILLIC CAPITAL LETTER I
|
||||
@@ -55,6 +55,7 @@ d в CYRILLIC SMALL LETTER VE
|
||||
u г CYRILLIC SMALL LETTER GHE
|
||||
l д CYRILLIC SMALL LETTER DE
|
||||
t е CYRILLIC SMALL LETTER IE
|
||||
/ ё CYRILLIC SMALL LETTER IO
|
||||
; ж CYRILLIC SMALL LETTER ZHE
|
||||
p з CYRILLIC SMALL LETTER ZE
|
||||
b и CYRILLIC SMALL LETTER I
|
||||
@@ -81,13 +82,7 @@ m ь CYRILLIC SMALL LETTER SOFT SIGN
|
||||
' э CYRILLIC SMALL LETTER E
|
||||
. ю CYRILLIC SMALL LETTER YU
|
||||
z я CYRILLIC SMALL LETTER YA
|
||||
@ "
|
||||
# № NUMERO SIGN
|
||||
$ ;
|
||||
^ :
|
||||
& ?
|
||||
/ ё
|
||||
? Ё
|
||||
` |
|
||||
1 №
|
||||
2 -
|
||||
3 /
|
||||
@@ -100,5 +95,18 @@ $ ;
|
||||
0 %
|
||||
- !
|
||||
= ;
|
||||
~ +
|
||||
! 1
|
||||
@ 2
|
||||
# 3
|
||||
$ 4
|
||||
% 5
|
||||
^ 6
|
||||
& 7
|
||||
* 8
|
||||
( 9
|
||||
) 0
|
||||
_ =
|
||||
+ \\
|
||||
\\ )
|
||||
\| (
|
||||
|
||||
@@ -1,53 +1,61 @@
|
||||
" Menu Translations: Simplified Chinese
|
||||
" Maintainer: Shun Bai <baishunde@gmail.com>
|
||||
" Previous Maintainer: Yuheng Xie <elephant@linux.net.cn>
|
||||
" Last Change: 2014 Oct 15
|
||||
|
||||
" vim: ts=8 sw=8 noet
|
||||
" Last Change: 2019-09-10
|
||||
|
||||
" Quit when menu translations have already been done.
|
||||
if exists("did_menu_trans")
|
||||
finish
|
||||
endif
|
||||
let did_menu_trans = 1
|
||||
let s:keepcpo= &cpo
|
||||
let s:keepcpo = &cpo
|
||||
set cpo&vim
|
||||
|
||||
scriptencoding cp936
|
||||
|
||||
" Help menu
|
||||
menutrans &Help <09><><EFBFBD><EFBFBD>(&H)
|
||||
menutrans &Overview<Tab><F1> <09><><EFBFBD><EFBFBD>(&O)<Tab><F1>
|
||||
" Help menuitems and dialog {{{1
|
||||
menutrans &Overview<Tab><F1> <09><><EFBFBD><EFBFBD>(&O)<Tab><F1>
|
||||
menutrans &User\ Manual <09>û<EFBFBD><EFBFBD>ֲ<EFBFBD>(&U)
|
||||
menutrans &How-to\ links How-to\ ָ<EFBFBD><EFBFBD>(&H)
|
||||
menutrans &How-to\ Links <09><><EFBFBD><EFBFBD>ʹ<EFBFBD><EFBFBD>(&H)
|
||||
menutrans &Find\.\.\. <09><><EFBFBD><EFBFBD>(&F)\.\.\.
|
||||
menutrans &Credits <09><>л(&C)
|
||||
menutrans Co&pying <09><>Ȩ(&P)
|
||||
menutrans &Sponsor/Register <09><><EFBFBD><EFBFBD>/ע<EFBFBD><EFBFBD>(&S)
|
||||
menutrans O&rphans <EFBFBD>¶<EFBFBD>(&R)
|
||||
menutrans O&rphans <09><><EFBFBD>ȹ¶<EFBFBD>(&R)
|
||||
menutrans &Version <09>汾(&V)
|
||||
menutrans &About <09><><EFBFBD><EFBFBD>(&A)
|
||||
|
||||
" fun! s:Helpfind()
|
||||
if !exists("g:menutrans_help_dialog")
|
||||
let g:menutrans_help_dialog = "<22><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><F2B5A5B4>Ի<EFBFBD><D4BB>ð<EFBFBD><C3B0><EFBFBD>:\n\nǰ i_ <20><>ʾ<EFBFBD><CABE><EFBFBD><EFBFBD>ģʽ<C4A3>µ<EFBFBD><C2B5><EFBFBD><EFBFBD><EFBFBD>(<28><>: i_CTRL-X)\nǰ c_ <20><>ʾ<EFBFBD><CABE><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>µı༭<C4B1><E0BCAD><EFBFBD><EFBFBD>(<28><>: c_<Del>)\nǰ ' <20><>ʾѡ<CABE><D1A1><EFBFBD><EFBFBD>(<28><>: 'shiftwidth')"
|
||||
endif
|
||||
" }}}
|
||||
|
||||
" File menu
|
||||
menutrans &File <09>ļ<EFBFBD>(&F)
|
||||
" File menuitems {{{1
|
||||
menutrans &Open\.\.\.<Tab>:e <09><><EFBFBD><EFBFBD>(&O)\.\.\.<Tab>:e
|
||||
menutrans Sp&lit-Open\.\.\.<Tab>:sp <09>ָ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>(&L)\.\.\.<Tab>:sp
|
||||
menutrans Open\ Tab\.\.\.<Tab>:tabnew <09><EFBFBD>ǩ\.\.\.<Tab>:tabnew
|
||||
menutrans Sp&lit-Open\.\.\.<Tab>:sp <09>ڲ<EFBFBD><EFBFBD>ִ<EFBFBD><EFBFBD>ڴ<EFBFBD><EFBFBD><EFBFBD>(&L)\.\.\.<Tab>:sp
|
||||
menutrans Open\ Tab\.\.\.<Tab>:tabnew <09>ڱ<EFBFBD>ǩҳ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>\.\.\.<Tab>:tabnew
|
||||
menutrans &New<Tab>:enew <09>½<EFBFBD>(&N)<Tab>:enew
|
||||
menutrans &Close<Tab>:close <09>ر<EFBFBD>(&C)<Tab>:close
|
||||
menutrans &Save<Tab>:w <09><><EFBFBD><EFBFBD>(&S)<Tab>:w
|
||||
menutrans Save\ &As\.\.\.<Tab>:sav <09><><EFBFBD><EFBFBD>Ϊ(&A)\.\.\.<Tab>:sav
|
||||
menutrans Split\ &Diff\ with\.\.\. <EFBFBD>ָ<EFBFBD><EFBFBD>Ƚ<EFBFBD>(Diff)(&D)\.\.\.
|
||||
menutrans Split\ Patched\ &By\.\.\. <09>ָ<EFBFBD><EFBFBD><EFBFBD>(Patch)(&B)\.\.\.
|
||||
menutrans Split\ &Diff\ With\.\.\. <09><><EFBFBD>ִ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ԶԱȲ<EFBFBD><EFBFBD><EFBFBD>(Diff)(&D)\.\.\.
|
||||
menutrans Split\ Patched\ &By\.\.\. <09><><EFBFBD>ִ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>Խ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>(Patch)(&B)\.\.\.
|
||||
menutrans &Print <09><>ӡ(&P)
|
||||
menutrans Sa&ve-Exit<Tab>:wqa <09><><EFBFBD>沢<EFBFBD>˳<EFBFBD>(&V)<Tab>:wqa
|
||||
menutrans E&xit<Tab>:qa <09>˳<EFBFBD>(&X)<Tab>:qa
|
||||
" }}}
|
||||
|
||||
" Edit menu
|
||||
menutrans &Edit <09>༭(&E)
|
||||
" Edit menuitems {{{1
|
||||
menutrans &Undo<Tab>u <09><><EFBFBD><EFBFBD>(&U)<Tab>u
|
||||
menutrans &Redo<Tab>^R <EFBFBD><EFBFBD><EFBFBD><EFBFBD>(&R)<Tab>^R
|
||||
menutrans Rep&eat<Tab>\. <09>ظ<EFBFBD><EFBFBD>ϴβ<EFBFBD><EFBFBD><EFBFBD>(&E)<Tab>\.
|
||||
menutrans &Redo<Tab>^R <09>ָ<EFBFBD>(&R)<Tab>^R
|
||||
menutrans Rep&eat<Tab>\. <09>ظ<EFBFBD>(&E)<Tab>\.
|
||||
menutrans Cu&t<Tab>"+x <09><><EFBFBD><EFBFBD>(&T)<Tab>"+x
|
||||
menutrans &Copy<Tab>"+y <09><><EFBFBD><EFBFBD>(&C)<Tab>"+y
|
||||
menutrans &Paste<Tab>"+gP ճ<><D5B3>(&P)<Tab>"+gP
|
||||
@@ -59,212 +67,386 @@ menutrans &Find\.\.\.
|
||||
menutrans Find\ and\ Rep&lace\.\.\. <09><><EFBFBD>Һ<EFBFBD><EFBFBD>滻(&L)\.\.\.
|
||||
menutrans &Find<Tab>/ <09><><EFBFBD><EFBFBD>(&F)<Tab>/
|
||||
menutrans Find\ and\ Rep&lace<Tab>:%s <09><><EFBFBD>Һ<EFBFBD><EFBFBD>滻(&L)<Tab>:%s
|
||||
menutrans Settings\ &Window <EFBFBD>趨<EFBFBD><EFBFBD><EFBFBD><EFBFBD>(&W)
|
||||
menutrans Startup\ &Settings <09><><EFBFBD><EFBFBD><EFBFBD>趨(&S)
|
||||
menutrans &Global\ Settings ȫ<EFBFBD><EFBFBD><EFBFBD>趨(&G)
|
||||
menutrans Settings\ &Window <09><><EFBFBD>ô<EFBFBD><EFBFBD><EFBFBD>(&W)
|
||||
menutrans Startup\ &Settings <09><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>(&S)
|
||||
|
||||
" Edit/Global Settings
|
||||
menutrans Toggle\ Pattern\ &Highlight<Tab>:set\ hls! <09><>/<2F><>ģʽ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>(&H)<Tab>:set\ hls!
|
||||
menutrans Toggle\ &Ignore-case<Tab>:set\ ic! <09><>/<2F>غ<EFBFBD><EFBFBD>Դ<EFBFBD>Сд(&I)<Tab>:set\ ic!
|
||||
menutrans Toggle\ &Showmatch<Tab>:set\ sm! <09><>/<2F><><EFBFBD><EFBFBD>ʾ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>(&S)<Tab>:set\ sm!
|
||||
menutrans &Context\ lines <09><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>(&C)
|
||||
|
||||
menutrans &Global\ Settings ȫ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>(&G)
|
||||
" Edit.Global Settings menuitems and dialogs {{{2
|
||||
menutrans Toggle\ Pattern\ &Highlight<Tab>:set\ hls! <09><>/<2F>ظ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>(&H)<Tab>:set\ hls!
|
||||
menutrans Toggle\ &Ignoring\ Case<Tab>:set\ ic! <09><>/<2F>غ<EFBFBD><EFBFBD>Դ<EFBFBD>Сд(&I)<Tab>:set\ ic!
|
||||
menutrans Toggle\ &Showing\ Matched\ Pairs<Tab>:set\ sm! <09><>/<2F><><EFBFBD><EFBFBD>ʾ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ƥ<EFBFBD><EFBFBD>(&S)<Tab>:set\ sm!
|
||||
menutrans &Context\ Lines <09><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>(&C)
|
||||
menutrans &Virtual\ Edit <09><><EFBFBD><EFBFBD><EFBFBD>༭(&V)
|
||||
" Edit.Global Settings.Virtual Edit menuitems {{{3
|
||||
menutrans Never <09>Ӳ<EFBFBD>
|
||||
menutrans Block\ Selection <EFBFBD><EFBFBD>ѡ<EFBFBD><EFBFBD>
|
||||
menutrans Insert\ mode <09><EFBFBD><EFBFBD><EFBFBD>ģʽ
|
||||
menutrans Block\ and\ Insert <09><>ѡ<EFBFBD><EFBFBD><EFBFBD>Ͳ<EFBFBD><EFBFBD><EFBFBD>ģʽ
|
||||
menutrans Always <EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||
|
||||
menutrans Block\ Selection ֻ<EFBFBD><EFBFBD>ѡ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ο<EFBFBD>ʱ
|
||||
menutrans Insert\ Mode ֻ<EFBFBD>ڲ<EFBFBD><EFBFBD><EFBFBD>ģʽʱ
|
||||
menutrans Block\ and\ Insert <09><>ѡ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ο<EFBFBD><EFBFBD>Ͳ<EFBFBD><EFBFBD><EFBFBD>ģʽʱ
|
||||
menutrans Always ʼ<EFBFBD><EFBFBD>
|
||||
" }}}
|
||||
menutrans Toggle\ Insert\ &Mode<Tab>:set\ im! <09><>/<2F>ز<EFBFBD><EFBFBD><EFBFBD>ģʽ(&M)<Tab>:set\ im!
|
||||
menutrans Toggle\ Vi\ C&ompatible<Tab>:set\ cp! <09><>/<2F><>\ Vi\ <20><><EFBFBD><EFBFBD><Tab>:set\ cp!
|
||||
menutrans Search\ &Path\.\.\. <09><><EFBFBD><EFBFBD>·<EFBFBD><C2B7>(&P)\.\.\.
|
||||
menutrans Ta&g\ Files\.\.\. Tag\ <20>ļ<EFBFBD>(&T)\.\.\.
|
||||
menutrans Toggle\ Vi\ C&ompatibility<Tab>:set\ cp! <09><>/<2F><>\ Vi\ <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>(&O)<Tab>:set\ cp!
|
||||
menutrans Search\ &Path\.\.\. <09><><EFBFBD><EFBFBD>·<EFBFBD><C2B7>(&P)\.\.\.
|
||||
menutrans Ta&g\ Files\.\.\. <09><><EFBFBD><EFBFBD><EFBFBD>ļ<EFBFBD>(Tags)(&G)\.\.\.
|
||||
|
||||
" GUI options
|
||||
menutrans Toggle\ &Toolbar <09><>/<2F>ع<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>(&T)
|
||||
menutrans Toggle\ &Bottom\ Scrollbar <09><>/<2F>صײ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>(&B)
|
||||
menutrans Toggle\ &Left\ Scrollbar <09><>/<2F><><EFBFBD><EFBFBD><EFBFBD>˹<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>(&L)
|
||||
menutrans Toggle\ &Right\ Scrollbar <09><>/<2F><><EFBFBD>Ҷ˹<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>(&R)
|
||||
menutrans Toggle\ &Left\ Scrollbar <09><>/<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>(&L)
|
||||
menutrans Toggle\ &Right\ Scrollbar <09><>/<2F><><EFBFBD>Ҳ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>(&R)
|
||||
|
||||
" fun! s:SearchP()
|
||||
if !exists("g:menutrans_path_dialog")
|
||||
let g:menutrans_path_dialog = "<22><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>·<EFBFBD><C2B7><EFBFBD><EFBFBD>\n<>ö<EFBFBD><C3B6>ŷָ<C5B7>Ŀ¼<C4BF><C2BC><EFBFBD><EFBFBD>"
|
||||
endif
|
||||
|
||||
" fun! s:TagFiles()
|
||||
if !exists("g:menutrans_tags_dialog")
|
||||
let g:menutrans_tags_dialog = "<22><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ļ<EFBFBD>(Tags)<29><><EFBFBD>ơ<EFBFBD>\n<>ö<EFBFBD><C3B6>ŷָ<C5B7><D6B8>ļ<EFBFBD><C4BC><EFBFBD><EFBFBD><EFBFBD>"
|
||||
endif
|
||||
" }}}
|
||||
|
||||
" Edit/File Settings
|
||||
menutrans F&ile\ Settings <09>ļ<EFBFBD><EFBFBD>趨(&I)
|
||||
|
||||
menutrans F&ile\ Settings <EFBFBD>ļ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>(&I)
|
||||
" Edit.File Settings menuitems and dialogs {{{2
|
||||
" Boolean options
|
||||
menutrans Toggle\ Line\ &Numbering<Tab>:set\ nu! <09><>/<2F><><EFBFBD><EFBFBD>ʾ<EFBFBD>к<EFBFBD>(&N)<Tab>:set\ nu!
|
||||
menutrans Toggle\ relati&ve\ Line\ Numbering<Tab>:set\ rnu! <09><>/<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>к<EFBFBD>(&V)<Tab>:set\ rnu!
|
||||
menutrans Toggle\ &List\ Mode<Tab>:set\ list! <09><>/<2F><>\ list\ ģʽ(&L)<Tab>:set\ list!
|
||||
menutrans Toggle\ Line\ &Wrap<Tab>:set\ wrap! <09><>/<2F><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>(&W)<Tab>:set\ wrap!
|
||||
menutrans Toggle\ W&rap\ at\ word<Tab>:set\ lbr! <09><>/<2F><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>(&R)<Tab>:set\ lbr!
|
||||
menutrans Toggle\ &expand-tab<Tab>:set\ et! <09><>/<2F><><EFBFBD><EFBFBD>չ\ tab(&E)<Tab>:set\ et!
|
||||
menutrans Toggle\ &auto-indent<Tab>:set\ ai! <09><>/<2F><><EFBFBD>Զ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>(&A)<Tab>:set\ ai!
|
||||
menutrans Toggle\ &C-indenting<Tab>:set\ cin! <EFBFBD><EFBFBD>/<2F><>\ C\ <20><><EFBFBD><EFBFBD>(&C)<Tab>:set\ cin!
|
||||
menutrans Toggle\ Line\ &Numbering<Tab>:set\ nu! <EFBFBD><EFBFBD>/<2F><><EFBFBD>к<EFBFBD>(&N)<Tab>:set\ nu!
|
||||
menutrans Toggle\ Relati&ve\ Line\ Numbering<Tab>:set\ rnu! <09><>/<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>к<EFBFBD>(&V)<Tab>:set\ rnu!
|
||||
menutrans Toggle\ &List\ Mode<Tab>:set\ list! <EFBFBD><EFBFBD>/<2F><><EFBFBD>б<EFBFBD>ģʽ(&L)<Tab>:set\ list!
|
||||
menutrans Toggle\ Line\ &Wrapping<Tab>:set\ wrap! <09><>/<2F>ػ<EFBFBD><EFBFBD><EFBFBD>(&W)<Tab>:set\ wrap!
|
||||
menutrans Toggle\ W&rapping\ at\ Word<Tab>:set\ lbr! <09><>/<2F>ش<EFBFBD>β<EFBFBD><EFBFBD><EFBFBD><EFBFBD>(&R)<Tab>:set\ lbr!
|
||||
menutrans Toggle\ Tab\ &Expanding<Tab>:set\ et! <EFBFBD><EFBFBD>/<2F><><EFBFBD>Ʊ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>չ(&E)<Tab>:set\ et!
|
||||
menutrans Toggle\ &Auto\ Indenting<Tab>:set\ ai! <09><>/<2F><><EFBFBD>Զ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>(&A)<Tab>:set\ ai!
|
||||
menutrans Toggle\ &C-Style\ Indenting<Tab>:set\ cin! <09><>/<2F><>\ C\ <EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʽ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>(&C)<Tab>:set\ cin!
|
||||
|
||||
" other options
|
||||
menutrans &Shiftwidth <09><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>(&S)
|
||||
menutrans Soft\ &Tabstop Soft\ Tab\ <20><><EFBFBD><EFBFBD>(&T)
|
||||
menutrans Soft\ &Tabstop <09><><EFBFBD>Ʊ<EFBFBD>λ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>(Soft Tabstop)(&T)
|
||||
menutrans Te&xt\ Width\.\.\. <09>ı<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>(&X)\.\.\.
|
||||
menutrans &File\ Format\.\.\. <09>ļ<EFBFBD><EFBFBD><EFBFBD>ʽ(&F)\.\.\.
|
||||
|
||||
" fun! s:TextWidth()
|
||||
if !exists("g:menutrans_textwidth_dialog")
|
||||
let g:menutrans_textwidth_dialog = "<22><><EFBFBD><EFBFBD><EFBFBD>ı<EFBFBD><C4B1><EFBFBD><EFBFBD><EFBFBD>(ÿ<><C3BF><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ַ<EFBFBD><D6B7><EFBFBD><EFBFBD><EFBFBD>0 <20><>ʾ<EFBFBD><CABE><EFBFBD><EFBFBD>):"
|
||||
endif
|
||||
|
||||
" fun! s:FileFormat()
|
||||
if !exists("g:menutrans_fileformat_dialog")
|
||||
let g:menutrans_fileformat_dialog = "ѡ<><D1A1><EFBFBD>ļ<EFBFBD><C4BC>ı<EFBFBD><C4B1><EFBFBD><EFBFBD><EFBFBD>ʽ:"
|
||||
endif
|
||||
if !exists("g:menutrans_fileformat_choices")
|
||||
let g:menutrans_fileformat_choices = "&Unix\n&Dos\n&Mac\nȡ<6E><C8A1>(&C)"
|
||||
endif
|
||||
" }}}
|
||||
menutrans Show\ C&olor\ Schemes\ in\ Menu <09>ڲ˵<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʾ<EFBFBD><EFBFBD>ɫ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>(&O)
|
||||
menutrans C&olor\ Scheme <09><>ɫ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>(&O)
|
||||
menutrans Select\ Fo&nt\.\.\. ѡ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>(&N)\.\.\.
|
||||
menutrans Show\ &Keymaps\ in\ Menu <09>ڲ˵<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʾ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ӳ<EFBFBD><EFBFBD>(&K)
|
||||
menutrans &Keymap <09><><EFBFBD><EFBFBD>ӳ<EFBFBD><EFBFBD>(&K)
|
||||
menutrans Select\ Fo&nt\.\.\. ѡ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>(&N)\.\.\.
|
||||
" }}}
|
||||
|
||||
" Programming menu
|
||||
menutrans &Tools <09><><EFBFBD><EFBFBD>(&T)
|
||||
menutrans &Jump\ to\ this\ tag<Tab>g^] <09><>ת<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>\ tag(&J)<Tab>g^]
|
||||
menutrans Jump\ &back<Tab>^T <09><>ת<EFBFBD><EFBFBD><EFBFBD><EFBFBD>(&B)<Tab>^T
|
||||
menutrans Build\ &Tags\ File <09><><EFBFBD><EFBFBD>\ Tags\ <20>ļ<EFBFBD>(&T)
|
||||
" Tools menuitems {{{1
|
||||
menutrans &Jump\ to\ This\ Tag<Tab>g^] <EFBFBD><EFBFBD>ת<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>(Tag)(&J)<Tab>g^]
|
||||
menutrans Jump\ &Back<Tab>^T <09><>ת<EFBFBD><EFBFBD>(&B)<Tab>^T
|
||||
menutrans Build\ &Tags\ File <09><><EFBFBD>ɱ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ļ<EFBFBD>(Tags)(&T)
|
||||
|
||||
" Tools.Spelling Menu
|
||||
menutrans &Spelling ƴд<EFBFBD><EFBFBD><EFBFBD><EFBFBD>(&S)
|
||||
" Tools.Spelling menuitems and dialog {{{2
|
||||
menutrans &Spell\ Check\ On <09><><EFBFBD><EFBFBD>ƴд<EFBFBD><EFBFBD><EFBFBD><EFBFBD>(&S)
|
||||
menutrans Spell\ Check\ &Off <09>ر<EFBFBD>ƴд<EFBFBD><EFBFBD><EFBFBD><EFBFBD>(&O)
|
||||
menutrans To\ &Next\ error<Tab>]s <09><>һ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>(&N)<Tab>]s
|
||||
menutrans To\ &Previous\ error<Tab>[s <09><>һ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>(&P)<Tab>[s
|
||||
menutrans Suggest\ &Corrections<Tab>z= <09><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>(&C)<Tab>z=
|
||||
menutrans &Repeat\ correction<Tab>:spellrepall <09>ظ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>(&R)<Tab>:spellrepall
|
||||
menutrans Set\ language\ to\ "en" <09>趨<EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϊ\ "en"
|
||||
menutrans Set\ language\ to\ "en_au" <09>趨<EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϊ\ "en_au"
|
||||
menutrans Set\ language\ to\ "en_ca" <09>趨<EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϊ\ "en_ca"
|
||||
menutrans Set\ language\ to\ "en_gb" <09>趨<EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϊ\ "en_gb"
|
||||
menutrans Set\ language\ to\ "en_nz" <09>趨<EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϊ\ "en_nz"
|
||||
menutrans Set\ language\ to\ "en_us" <09>趨<EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϊ\ "en_us"
|
||||
menutrans To\ &Next\ Error<Tab>]s <09><>һ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>(&N)<Tab>]s
|
||||
menutrans To\ &Previous\ Error<Tab>[s <09><>һ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>(&P)<Tab>[s
|
||||
menutrans Suggest\ &Corrections<Tab>z= <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>(&C)<Tab>z=
|
||||
menutrans &Repeat\ Correction<Tab>:spellrepall <09><EFBFBD><EFBFBD><EFBFBD>ȫ<EFBFBD><EFBFBD>ͬ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>(&R)<Tab>:spellrepall
|
||||
menutrans Set\ Language\ to\ "en" <09><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϊ\ "en"
|
||||
menutrans Set\ Language\ to\ "en_au" <09><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϊ\ "en_au"
|
||||
menutrans Set\ Language\ to\ "en_ca" <09><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϊ\ "en_ca"
|
||||
menutrans Set\ Language\ to\ "en_gb" <09><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϊ\ "en_gb"
|
||||
menutrans Set\ Language\ to\ "en_nz" <09><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϊ\ "en_nz"
|
||||
menutrans Set\ Language\ to\ "en_us" <09><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϊ\ "en_us"
|
||||
menutrans &Find\ More\ Languages <09><><EFBFBD>Ҹ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>(&F)
|
||||
|
||||
" func! s:SpellLang()
|
||||
if !exists("g:menutrans_set_lang_to")
|
||||
let g:menutrans_set_lang_to = "<22><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϊ"
|
||||
endif
|
||||
" }}}
|
||||
|
||||
" Tools.Fold Menu
|
||||
" open close folds
|
||||
menutrans &Folding <09>۵<EFBFBD>(&F)
|
||||
menutrans &Enable/Disable\ folds<Tab>zi <09><><EFBFBD><EFBFBD>/<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>۵<EFBFBD>(&E)<Tab>zi
|
||||
menutrans &View\ Cursor\ Line<Tab>zv <09>鿴<EFBFBD><EFBFBD><EFBFBD><EFBFBD>(&V)<Tab>zv
|
||||
menutrans Vie&w\ Cursor\ Line\ only<Tab>zMzx <09><><EFBFBD>鿴<EFBFBD><EFBFBD><EFBFBD><EFBFBD>(&W)<Tab>zMzx
|
||||
menutrans C&lose\ more\ folds<Tab>zm <09>رո<EFBFBD><EFBFBD><EFBFBD><EFBFBD>۵<EFBFBD>(&L)<Tab>zm
|
||||
menutrans &Close\ all\ folds<Tab>zM <09>ر<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>۵<EFBFBD>(&C)<Tab>zM
|
||||
menutrans O&pen\ more\ folds<Tab>zr <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>۵<EFBFBD>(&P)<Tab>zr
|
||||
menutrans &Open\ all\ folds<Tab>zR <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>۵<EFBFBD>(&O)<Tab>zR
|
||||
" Tools.Fold menuitems {{{2
|
||||
" open close folds
|
||||
menutrans &Enable/Disable\ Folds<Tab>zi <09><><EFBFBD><EFBFBD>/<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>۵<EFBFBD>(&E)<Tab>zi
|
||||
menutrans &View\ Cursor\ Line<Tab>zv չ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>(&V)<Tab>zv
|
||||
menutrans Vie&w\ Cursor\ Line\ Only<Tab>zMzx ֻչ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>(&W)<Tab>zMzx
|
||||
menutrans C&lose\ More\ Folds<Tab>zm <09>۵<EFBFBD>һ<EFBFBD><EFBFBD>(&L)<Tab>zm
|
||||
menutrans &Close\ All\ Folds<Tab>zM <09>۵<EFBFBD>ȫ<EFBFBD><EFBFBD>(&C)<Tab>zM
|
||||
menutrans O&pen\ More\ Folds<Tab>zr չ<EFBFBD><EFBFBD>һ<EFBFBD><EFBFBD>(&P)<Tab>zr
|
||||
menutrans &Open\ All\ Folds<Tab>zR չ<EFBFBD><EFBFBD>ȫ<EFBFBD><EFBFBD>(&O)<Tab>zR
|
||||
" fold method
|
||||
menutrans Fold\ Met&hod <09>۵<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>(&H)
|
||||
menutrans M&anual <09>ֹ<EFBFBD>(&A)
|
||||
menutrans Fold\ Met&hod <09>۵<EFBFBD><EFBFBD><EFBFBD>ʽ(&H)
|
||||
" Tools.Fold.Fold Method menuitems {{{3
|
||||
menutrans M&anual <09>ֶ<EFBFBD>(&A)
|
||||
menutrans I&ndent <09><><EFBFBD><EFBFBD>(&N)
|
||||
menutrans E&xpression <09><><EFBFBD><EFBFBD>ʽ(&X)
|
||||
menutrans S&yntax <09>(&Y)
|
||||
menutrans &Diff <09>Ƚ<EFBFBD>(Diff)(&D)
|
||||
menutrans Ma&rker <09><><EFBFBD><EFBFBD>(&R)
|
||||
menutrans &Diff <EFBFBD><EFBFBD><EFBFBD><EFBFBD>(Diff)(&D)
|
||||
menutrans Ma&rker <09>Ǻ<EFBFBD>(Marker)(&R)
|
||||
" }}}
|
||||
" create and delete folds
|
||||
menutrans Create\ &Fold<Tab>zf <09><><EFBFBD><EFBFBD><EFBFBD>۵<EFBFBD>(&F)<Tab>zf
|
||||
menutrans &Delete\ Fold<Tab>zd ɾ<EFBFBD><EFBFBD><EFBFBD>۵<EFBFBD>(&D)<Tab>zd
|
||||
menutrans Delete\ &All\ Folds<Tab>zD ɾ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>۵<EFBFBD>(&A)<Tab>zD
|
||||
menutrans Delete\ &All\ Folds<Tab>zD ɾ<EFBFBD><EFBFBD>ȫ<EFBFBD><EFBFBD><EFBFBD>۵<EFBFBD>(&A)<Tab>zD
|
||||
" moving around in folds
|
||||
menutrans Fold\ column\ &width <09>۵<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>(&W)
|
||||
menutrans Fold\ Col&umn\ Width <09>۵<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>(&W)
|
||||
" }}}
|
||||
|
||||
" Tools.Diff Menu
|
||||
menutrans &Diff <09>Ƚ<EFBFBD>(Diff)(&D)
|
||||
menutrans &Update <09><><EFBFBD><EFBFBD>(&U)
|
||||
menutrans &Get\ Block <09>õ<EFBFBD><EFBFBD><EFBFBD>(&G)
|
||||
menutrans &Put\ Block <09><><EFBFBD>ÿ<EFBFBD>(&P)
|
||||
menutrans &Diff <09><><EFBFBD><EFBFBD>(Diff)(&D)
|
||||
" Tools.Diff menuitems {{{2
|
||||
menutrans &Update ˢ<EFBFBD><EFBFBD>(&U)
|
||||
menutrans &Get\ Block <09><><EFBFBD>öԲ<EFBFBD><EFBFBD>ı<EFBFBD><EFBFBD><EFBFBD>(&G)
|
||||
menutrans &Put\ Block <09><><EFBFBD>ñ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ı<EFBFBD><EFBFBD><EFBFBD>(&P)
|
||||
" }}}
|
||||
|
||||
menutrans &Make<Tab>:make Make(&M)<Tab>:make
|
||||
menutrans &Make<Tab>:make <09><><EFBFBD><EFBFBD>(Make)(&M)<Tab>:make
|
||||
menutrans &List\ Errors<Tab>:cl <09>г<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>(&L)<Tab>:cl
|
||||
menutrans L&ist\ Messages<Tab>:cl! <09>г<EFBFBD><EFBFBD><EFBFBD>Ϣ(&I)<Tab>:cl!
|
||||
menutrans &Next\ Error<Tab>:cn <09><>һ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>(&N)<Tab>:cn
|
||||
menutrans &Previous\ Error<Tab>:cp <09><>һ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>(&P)<Tab>:cp
|
||||
menutrans &Older\ List<Tab>:cold <EFBFBD><EFBFBD><EFBFBD>ɵĴ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>б<EFBFBD>(&O)<Tab>:cold
|
||||
menutrans N&ewer\ List<Tab>:cnew <09><><EFBFBD>µĴ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>б<EFBFBD>(&E)<Tab>:cnew
|
||||
menutrans &Older\ List<Tab>:cold <EFBFBD>ϾɵĴ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>б<EFBFBD>(&O)<Tab>:cold
|
||||
menutrans N&ewer\ List<Tab>:cnew <09><><EFBFBD>µĴ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>б<EFBFBD>(&E)<Tab>:cnew
|
||||
menutrans Error\ &Window <09><><EFBFBD><EFBFBD>(&W)
|
||||
menutrans &Update<Tab>:cwin <09><><EFBFBD><EFBFBD>(&U)<Tab>:cwin
|
||||
" Tools.Error Window menuitems {{{2
|
||||
menutrans &Update<Tab>:cwin ˢ<EFBFBD><EFBFBD>(&U)<Tab>:cwin
|
||||
menutrans &Open<Tab>:copen <09><><EFBFBD><EFBFBD>(&O)<Tab>:copen
|
||||
menutrans &Close<Tab>:cclose <09>ر<EFBFBD>(&C)<Tab>:cclose
|
||||
menutrans &Convert\ to\ HEX<Tab>:%!xxd ת<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʮ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><Tab>:%!xxd
|
||||
menutrans Conve&rt\ back<Tab>:%!xxd\ -r ת<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><Tab>:%!xxd\ -r
|
||||
menutrans Se&T\ Compiler <EFBFBD>趨<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>(&T)
|
||||
" }}}
|
||||
menutrans Show\ Compiler\ Se&ttings\ in\ Menu <09>ڲ˵<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʾ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>(&T)
|
||||
menutrans Se&t\ Compiler <09><><EFBFBD>ñ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>(&T)
|
||||
menutrans &Convert\ to\ HEX<Tab>:%!xxd ת<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʮ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>(&C)<Tab>:%!xxd
|
||||
menutrans Conve&rt\ Back<Tab>:%!xxd\ -r ת<EFBFBD><EFBFBD><EFBFBD><EFBFBD>(&R)<Tab>:%!xxd\ -r
|
||||
" }}}
|
||||
|
||||
" Names for buffer menu.
|
||||
" Buffer menu
|
||||
menutrans &Buffers <09><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>(&B)
|
||||
menutrans &Refresh\ menu <09><><EFBFBD>²˵<C2B2>(&R)
|
||||
" Buffer menuitems and dialog {{{1
|
||||
menutrans &Refresh\ Menu ˢ<EFBFBD>±<EFBFBD><EFBFBD>˵<EFBFBD>(&R)
|
||||
menutrans &Delete ɾ<EFBFBD><EFBFBD>(&D)
|
||||
menutrans &Alternate <09><EFBFBD><EFBFBD><EFBFBD>(&A)
|
||||
menutrans &Alternate <09>л<EFBFBD>(&A)
|
||||
menutrans &Next <09><>һ<EFBFBD><EFBFBD>(&N)
|
||||
menutrans &Previous <09><>һ<EFBFBD><EFBFBD>(&P)
|
||||
|
||||
" func! s:BMMunge(fname, bnum)
|
||||
if !exists("g:menutrans_no_file")
|
||||
let g:menutrans_no_file = "[<5B><><EFBFBD>ļ<EFBFBD>]"
|
||||
endif
|
||||
" }}}
|
||||
|
||||
" Window menu
|
||||
menutrans &Window <09><><EFBFBD><EFBFBD>(&W)
|
||||
" Window menuitems {{{1
|
||||
menutrans &New<Tab>^Wn <09>½<EFBFBD>(&N)<Tab>^Wn
|
||||
menutrans S&plit<Tab>^Ws <09>ָ<EFBFBD>(&P)<Tab>^Ws
|
||||
menutrans Sp&lit\ To\ #<Tab>^W^^ <09>ָ\ #(&L)<Tab>^W^^
|
||||
menutrans Split\ &Vertically<Tab>^Wv <09><>ֱ<EFBFBD>ָ<EFBFBD>(&V)<Tab>^Wv
|
||||
menutrans Split\ File\ E&xplorer <09>ָ<EFBFBD><EFBFBD>ļ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>(&X)
|
||||
menutrans S&plit<Tab>^Ws <09><><EFBFBD><EFBFBD>(&P)<Tab>^Ws
|
||||
menutrans Sp&lit\ To\ #<Tab>^W^^ <09><><EFBFBD>ֲ<EFBFBD><EFBFBD><EFBFBD>ʾ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>\ #(&L)<Tab>^W^^
|
||||
menutrans Split\ &Vertically<Tab>^Wv <09><>ֱ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>(&V)<Tab>^Wv
|
||||
menutrans Split\ File\ E&xplorer <09><><EFBFBD>ֲ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ļ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>(&X)
|
||||
menutrans &Close<Tab>^Wc <09>ر<EFBFBD>(&C)<Tab>^Wc
|
||||
menutrans Close\ &Other(s)<Tab>^Wo <09>ر<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>(&O)<Tab>^Wo
|
||||
menutrans Close\ &Other(s)<Tab>^Wo <09><><EFBFBD><EFBFBD>֮<EFBFBD><EFBFBD>ȫ<EFBFBD><EFBFBD><EFBFBD>ر<EFBFBD>(&O)<Tab>^Wo
|
||||
menutrans Move\ &To <09>ƶ<EFBFBD><EFBFBD><EFBFBD>(&T)
|
||||
menutrans &Top<Tab>^WK <09><><EFBFBD><EFBFBD>(&T)<Tab>^WK
|
||||
menutrans &Bottom<Tab>^WJ <09><EFBFBD>(&B)<Tab>^WJ
|
||||
menutrans &Left\ side<Tab>^WH <09><><EFBFBD><EFBFBD>(&L)<Tab>^WH
|
||||
menutrans &Right\ side<Tab>^WL <09>ұ<EFBFBD>(&R)<Tab>^WL
|
||||
" menutrans Ne&xt<Tab>^Ww <09><>һ<EFBFBD><D2BB>(&X)<Tab>^Ww
|
||||
" menutrans P&revious<Tab>^WW <09><>һ<EFBFBD><D2BB>(&R)<Tab>^WW
|
||||
menutrans &Left\ Side<Tab>^WH <09><><EFBFBD><EFBFBD>(&L)<Tab>^WH
|
||||
menutrans &Right\ Side<Tab>^WL <09>ұ<EFBFBD>(&R)<Tab>^WL
|
||||
menutrans Rotate\ &Up<Tab>^WR <09><><EFBFBD><EFBFBD><EFBFBD>ֻ<EFBFBD>(&U)<Tab>^WR
|
||||
menutrans Rotate\ &Down<Tab>^Wr <09><><EFBFBD><EFBFBD><EFBFBD>ֻ<EFBFBD>(&D)<Tab>^Wr
|
||||
menutrans &Equal\ Size<Tab>^W= <09>ȴ<EFBFBD>(&E)<Tab>^W=
|
||||
menutrans &Equal\ Size<Tab>^W= ƽ<EFBFBD><EFBFBD><EFBFBD>ֲ<EFBFBD>(&E)<Tab>^W=
|
||||
menutrans &Max\ Height<Tab>^W_ <09><><EFBFBD><EFBFBD><EFBFBD>߶<EFBFBD>(&M)<Tab>^W
|
||||
menutrans M&in\ Height<Tab>^W1_ <09><>С<EFBFBD>߶<EFBFBD>(&I)<Tab>^W1_
|
||||
menutrans Max\ &Width<Tab>^W\| <09><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>(&W)<Tab>^W\|
|
||||
menutrans Min\ Widt&h<Tab>^W1\| <09><>С<EFBFBD><EFBFBD><EFBFBD><EFBFBD>(&H)<Tab>^W1\|
|
||||
"
|
||||
" The popup menu
|
||||
" }}}
|
||||
|
||||
" The popup menu {{{1
|
||||
menutrans &Undo <09><><EFBFBD><EFBFBD>(&U)
|
||||
menutrans Cu&t <09><><EFBFBD><EFBFBD>(&T)
|
||||
menutrans &Copy <09><><EFBFBD><EFBFBD>(&C)
|
||||
menutrans &Paste ճ<EFBFBD><EFBFBD>(&P)
|
||||
menutrans &Delete ɾ<EFBFBD><EFBFBD>(&D)
|
||||
menutrans Select\ Blockwise ѡ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||
menutrans Select\ &Word ѡ<EFBFBD><EFBFBD>(&W)
|
||||
menutrans Select\ &Sentence ѡ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>(&S)
|
||||
menutrans Select\ Pa&ragraph ѡ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>(&R)
|
||||
menutrans Select\ &Line ѡ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>(&L)
|
||||
menutrans Select\ &Block ѡ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>(&B)
|
||||
menutrans Select\ Blockwise <09><>Ϊѡ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ο<EFBFBD>
|
||||
menutrans Select\ &Word ѡ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>(&W)
|
||||
menutrans Select\ &Sentence ѡ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>(&S)
|
||||
menutrans Select\ Pa&ragraph ѡ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>(&R)
|
||||
menutrans Select\ &Line ѡ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>(&L)
|
||||
menutrans Select\ &Block ѡ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ο<EFBFBD>(&B)
|
||||
menutrans Select\ &All ȫѡ(&A)
|
||||
"
|
||||
" The GUI toolbar
|
||||
|
||||
" func! <SID>SpellPopup()
|
||||
if !exists("g:menutrans_spell_change_ARG_to")
|
||||
let g:menutrans_spell_change_ARG_to = '<27><>\ "%s"\ <20><><EFBFBD><EFBFBD>Ϊ'
|
||||
endif
|
||||
if !exists("g:menutrans_spell_add_ARG_to_word_list")
|
||||
let g:menutrans_spell_add_ARG_to_word_list = '<27><>\ "%s"\ <20><><EFBFBD>ӵ<EFBFBD><D3B5>ʵ<EFBFBD>'
|
||||
endif
|
||||
if !exists("g:menutrans_spell_ignore_ARG")
|
||||
let g:menutrans_spell_ignore_ARG = '<27><><EFBFBD><EFBFBD>\ "%s"'
|
||||
endif
|
||||
" }}}
|
||||
|
||||
" The GUI toolbar {{{1
|
||||
if has("toolbar")
|
||||
if exists("*Do_toolbar_tmenu")
|
||||
delfun Do_toolbar_tmenu
|
||||
endif
|
||||
fun Do_toolbar_tmenu()
|
||||
let did_toolbar_tmenu = 1
|
||||
tmenu ToolBar.Open <09><><EFBFBD><EFBFBD><EFBFBD>ļ<EFBFBD>
|
||||
tmenu ToolBar.Save <09><><EFBFBD>浱ǰ<EFBFBD>ļ<EFBFBD>
|
||||
tmenu ToolBar.SaveAll <EFBFBD><EFBFBD><EFBFBD><EFBFBD>ȫ<EFBFBD><EFBFBD><EFBFBD>ļ<EFBFBD>
|
||||
tmenu ToolBar.SaveAll ȫ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||
tmenu ToolBar.Print <09><>ӡ
|
||||
tmenu ToolBar.Undo <09><><EFBFBD><EFBFBD>
|
||||
tmenu ToolBar.Redo <EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||
tmenu ToolBar.Redo <09>ָ<EFBFBD>
|
||||
tmenu ToolBar.Cut <09><><EFBFBD>е<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||
tmenu ToolBar.Copy <09><><EFBFBD>Ƶ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||
tmenu ToolBar.Paste <09>Ӽ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ճ<EFBFBD><EFBFBD>
|
||||
tmenu ToolBar.Find <09><><EFBFBD><EFBFBD>...
|
||||
if !has("gui_athena")
|
||||
tmenu ToolBar.Replace <09><><EFBFBD>Һ<EFBFBD><EFBFBD>滻...
|
||||
tmenu ToolBar.FindNext <09><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>һ<EFBFBD><EFBFBD>
|
||||
tmenu ToolBar.FindPrev <09><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>һ<EFBFBD><EFBFBD>
|
||||
tmenu ToolBar.Replace <09><><EFBFBD>Һ<EFBFBD><EFBFBD>滻...
|
||||
endif
|
||||
tmenu ToolBar.LoadSesn <09><><EFBFBD>ػỰ
|
||||
tmenu ToolBar.SaveSesn <09><><EFBFBD>浱ǰ<EFBFBD>Ự
|
||||
tmenu ToolBar.RunScript <09><><EFBFBD><EFBFBD> Vim <20>ű<EFBFBD>
|
||||
tmenu ToolBar.Make ִ<EFBFBD><EFBFBD> Make (:make)
|
||||
tmenu ToolBar.RunCtags <09>ڵ<EFBFBD>ǰĿ¼<EFBFBD><EFBFBD><EFBFBD><EFBFBD> tags (!ctags -R .)
|
||||
tmenu ToolBar.TagJump <09><>ת<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>λ<EFBFBD>õ<EFBFBD> tag
|
||||
tmenu ToolBar.Make <09><><EFBFBD>ɵ<EFBFBD>ǰ<EFBFBD><EFBFBD>Ŀ (:make)
|
||||
tmenu ToolBar.RunCtags <09>ڵ<EFBFBD>ǰĿ¼<EFBFBD><EFBFBD><EFBFBD>ɱ<EFBFBD><EFBFBD><EFBFBD>(Tags) (!ctags -R .)
|
||||
tmenu ToolBar.TagJump <09><>ת<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ڱ<EFBFBD><EFBFBD><EFBFBD>(Tag)
|
||||
tmenu ToolBar.Help Vim <20><><EFBFBD><EFBFBD>
|
||||
tmenu ToolBar.FindHelp <EFBFBD><EFBFBD><EFBFBD><EFBFBD> Vim <20><><EFBFBD><EFBFBD>
|
||||
tmenu ToolBar.FindHelp <EFBFBD><EFBFBD> Vim <20><><EFBFBD><EFBFBD><EFBFBD>в<EFBFBD><EFBFBD><EFBFBD>
|
||||
endfun
|
||||
endif
|
||||
" }}}
|
||||
|
||||
" Syntax menu
|
||||
menutrans &Syntax <09>(&S)
|
||||
menutrans &Show\ filetypes\ in\ menu <09>ڲ˵<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʾ<EFBFBD>ļ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>(&S)
|
||||
" Syntax menuitems {{{1
|
||||
menutrans &Show\ File\ Types\ in\ Menu <09>ڲ˵<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʾ<EFBFBD>ļ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>(&S)
|
||||
menutrans &Off <09>ر<EFBFBD>(&O)
|
||||
menutrans &Manual <09>ֹ<EFBFBD>(&M)
|
||||
menutrans &Manual <09>ֶ<EFBFBD>(&M)
|
||||
menutrans A&utomatic <09>Զ<EFBFBD>(&U)
|
||||
menutrans on/off\ for\ &This\ file <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ļ<EFBFBD><EFBFBD><EFBFBD>/<EFBFBD><EFBFBD>(&T)
|
||||
menutrans Co&lor\ test ɫ<EFBFBD>ʲ<EFBFBD><EFBFBD><EFBFBD>(&L)
|
||||
menutrans &Highlight\ test <09><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>(&H)
|
||||
menutrans On/Off\ for\ &This\ File ֻ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ļ<EFBFBD><EFBFBD><EFBFBD>/<EFBFBD><EFBFBD>(&T)
|
||||
menutrans Co&lor\ Test ɫ<EFBFBD>ʲ<EFBFBD><EFBFBD><EFBFBD>(&L)
|
||||
menutrans &Highlight\ Test <09><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>(&H)
|
||||
menutrans &Convert\ to\ HTML ת<EFBFBD><EFBFBD><EFBFBD><EFBFBD>\ HTML(&C)
|
||||
menutrans Set\ '&syntax'\ only <09><><EFBFBD>趨\ 'syntax'(&S)
|
||||
menutrans Set\ '&filetype'\ too Ҳ<EFBFBD>趨\ 'filetype'(&F)
|
||||
" From synmenu.vim
|
||||
menutrans Set\ '&syntax'\ Only ֻ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>\ 'syntax'(&S)
|
||||
menutrans Set\ '&filetype'\ Too Ҳ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>\ 'filetype'(&F)
|
||||
" }}}
|
||||
|
||||
" Netrw menu {{{1
|
||||
" Plugin loading may be after menu translation
|
||||
" So giveup testing if Netrw Plugin is loaded
|
||||
" if exists("g:loaded_netrwPlugin")
|
||||
menutrans Help<tab><F1> <09><><EFBFBD><EFBFBD><tab><F1>
|
||||
menutrans Bookmarks <09><>ǩ
|
||||
menutrans History <09><>ʷ<EFBFBD><EFBFBD>¼
|
||||
menutrans Go\ Up\ Directory<tab>- <09><><EFBFBD><EFBFBD>һ<EFBFBD><EFBFBD><tab>-
|
||||
menutrans Apply\ Special\ Viewer<tab>x <09><>Ĭ<EFBFBD>ϳ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><tab>x
|
||||
menutrans Bookmarks\ and\ History <09><>ǩ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʷ<EFBFBD><EFBFBD>¼
|
||||
" Netrw.Bookmarks and History menuitems {{{2
|
||||
menutrans Bookmark\ Current\ Directory<tab>mb <09><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ǩ<tab>mb
|
||||
menutrans Bookmark\ Delete <09>Ƴ<EFBFBD><EFBFBD><EFBFBD>ǩ
|
||||
menutrans Goto\ Prev\ Dir\ (History)<tab>u <09><><EFBFBD><EFBFBD>(<EFBFBD><EFBFBD>ʷ<EFBFBD><EFBFBD>¼)<tab>u
|
||||
menutrans Goto\ Next\ Dir\ (History)<tab>U ǰ<EFBFBD><EFBFBD>(<EFBFBD><EFBFBD>ʷ<EFBFBD><EFBFBD>¼)<tab>U
|
||||
menutrans List<tab>qb <09><><EFBFBD><EFBFBD><EFBFBD>б<EFBFBD><tab>qb
|
||||
" }}}
|
||||
menutrans Browsing\ Control <09><><EFBFBD><EFBFBD>
|
||||
" Netrw.Browsing Control menuitems {{{2
|
||||
menutrans Horizontal\ Split<tab>o <09>ڲ<EFBFBD><EFBFBD>ִ<EFBFBD><EFBFBD>ڴ<EFBFBD><EFBFBD><EFBFBD><tab>o
|
||||
menutrans Vertical\ Split<tab>v <09>ڴ<EFBFBD>ֱ<EFBFBD><EFBFBD><EFBFBD>ִ<EFBFBD><EFBFBD>ڴ<EFBFBD><EFBFBD><EFBFBD><tab>v
|
||||
menutrans New\ Tab<tab>t <09>ڱ<EFBFBD>ǩҳ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><tab>t
|
||||
menutrans Preview<tab>p Ԥ<EFBFBD><EFBFBD><tab>p
|
||||
menutrans Edit\ File\ Hiding\ List<tab><ctrl-h> <09>༭<EFBFBD><E0BCAD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>(Hiding\ List)<tab><ctrl-h>
|
||||
menutrans Edit\ Sorting\ Sequence<tab>S <09>༭<EFBFBD><E0BCAD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>(Sorting\ Sequence)<tab>S
|
||||
menutrans Quick\ Hide/Unhide\ Dot\ Files<tab>gh <09><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>/<EFBFBD><EFBFBD>ʾ<EFBFBD><EFBFBD>\.<2E><>ͷ<EFBFBD><EFBFBD><EFBFBD>ļ<EFBFBD><tab>gh
|
||||
menutrans Refresh\ Listing<tab><ctrl-l> ˢ<EFBFBD><EFBFBD><tab><ctrl-l>
|
||||
menutrans Settings/Options<tab>:NetrwSettings <09><><EFBFBD><EFBFBD>/ѡ<EFBFBD><EFBFBD><tab>:NetrwSettings
|
||||
" }}}
|
||||
menutrans Delete\ File/Directory<tab>D ɾ<><C9BE><EFBFBD>ļ<EFBFBD>/Ŀ¼<tab>D
|
||||
menutrans Edit\ File/Dir <09>༭<EFBFBD>ļ<EFBFBD>/Ŀ¼
|
||||
" Netrw.Edit File menuitems {{{2
|
||||
menutrans Create\ New\ File<tab>% <09>½<EFBFBD><C2BD>ļ<EFBFBD><tab>%
|
||||
menutrans In\ Current\ Window<tab><cr> <09>ڵ<EFBFBD>ǰ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><tab><cr>
|
||||
menutrans Preview\ File/Directory<tab>p Ԥ<><D4A4><EFBFBD>ļ<EFBFBD>/Ŀ¼<tab>p
|
||||
menutrans In\ Previous\ Window<tab>P <09><><EFBFBD><EFBFBD>һ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><tab>P
|
||||
menutrans In\ New\ Window<tab>o <09><><EFBFBD>´<EFBFBD><C2B4><EFBFBD><tab>o
|
||||
menutrans In\ New\ Tab<tab>t <09><><EFBFBD>±<EFBFBD>ǩҳ<tab>t
|
||||
menutrans In\ New\ Vertical\ Window<tab>v <09><><EFBFBD>´<EFBFBD>ֱ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><tab>v
|
||||
" }}}
|
||||
menutrans Explore <09><><EFBFBD><EFBFBD>
|
||||
" Netrw.Explore menuitems {{{2
|
||||
menutrans Directory\ Name ָ<EFBFBD><EFBFBD>Ŀ¼<EFBFBD><EFBFBD>
|
||||
menutrans Filenames\ Matching\ Pattern\ (curdir\ only)<tab>:Explore\ */ ƥ<><C6A5>ָ<EFBFBD><D6B8><EFBFBD>ļ<EFBFBD><C4BC><EFBFBD>ģʽ(<28><>ǰĿ¼)<tab>:Explore\ */
|
||||
menutrans Filenames\ Matching\ Pattern\ (+subdirs)<tab>:Explore\ **/ ƥ<><C6A5>ָ<EFBFBD><D6B8><EFBFBD>ļ<EFBFBD><C4BC><EFBFBD>ģʽ(<28><><EFBFBD><EFBFBD>Ŀ¼)<tab>:Explore\ **/
|
||||
menutrans Files\ Containing\ String\ Pattern\ (curdir\ only)<tab>:Explore\ *// <09><><EFBFBD>ݰ<EFBFBD><EFBFBD><EFBFBD>ָ<EFBFBD><EFBFBD><EFBFBD>ַ<EFBFBD><EFBFBD><EFBFBD>ģʽ(<EFBFBD><EFBFBD>ǰĿ¼)<tab>:Explore\ *//
|
||||
menutrans Files\ Containing\ String\ Pattern\ (+subdirs)<tab>:Explore\ **// <09><><EFBFBD>ݰ<EFBFBD><EFBFBD><EFBFBD>ָ<EFBFBD><EFBFBD><EFBFBD>ַ<EFBFBD><EFBFBD><EFBFBD>ģʽ(<EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ŀ¼)<tab>:Explore\ **//
|
||||
menutrans Next\ Match<tab>:Nexplore <09><>һ<EFBFBD><EFBFBD>ƥ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><tab>:Nexplore
|
||||
menutrans Prev\ Match<tab>:Pexplore <09><>һ<EFBFBD><EFBFBD>ƥ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><tab>:Pexplore
|
||||
" }}}
|
||||
menutrans Make\ Subdirectory<tab>d <09>½<EFBFBD><C2BD><EFBFBD>Ŀ¼<tab>d
|
||||
menutrans Marked\ Files ѡ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>(Marked)<EFBFBD>ļ<EFBFBD>
|
||||
" Netrw.Marked Files menuitems {{{2
|
||||
menutrans Mark\ File<tab>mf ѡ<EFBFBD><EFBFBD>(Mark)/ȡ<EFBFBD><EFBFBD><tab>mf
|
||||
menutrans Mark\ Files\ by\ Regexp<tab>mr <09><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʽ(Regexp)ѡ<EFBFBD><EFBFBD><tab>mr
|
||||
menutrans Hide-Show-List\ Control<tab>a <09><><EFBFBD><EFBFBD>/<2F><>ʾ<tab>a
|
||||
menutrans Copy\ To\ Target<tab>mc <09><><EFBFBD>Ƶ<EFBFBD>Ŀ<EFBFBD><EFBFBD><tab>mc
|
||||
menutrans Delete<tab>D ɾ<EFBFBD><EFBFBD><tab>D
|
||||
menutrans Diff<tab>md <09><><EFBFBD><EFBFBD>(Diff)<tab>md
|
||||
menutrans Edit<tab>me <09>༭<tab>me
|
||||
menutrans Exe\ Cmd<tab>mx <09><>Ϊ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><tab>mx
|
||||
menutrans Move\ To\ Target<tab>mm <09>ƶ<EFBFBD><EFBFBD><EFBFBD>Ŀ<EFBFBD><EFBFBD><tab>mm
|
||||
menutrans Obtain<tab>O <09><>ȡ<tab>O
|
||||
menutrans Print<tab>mp <09><>ӡ<tab>mp
|
||||
menutrans Replace<tab>R <09>滻<tab>R
|
||||
menutrans Set\ Target<tab>mt <09><><EFBFBD><EFBFBD>Ŀ<EFBFBD><EFBFBD><tab>mt
|
||||
menutrans Tag<tab>mT <09><><EFBFBD>ɱ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ļ<EFBFBD>(Tags)<tab>mT
|
||||
menutrans Zip/Unzip/Compress/Uncompress<tab>mz ѹ<><D1B9>/<EFBFBD><EFBFBD>ѹ<EFBFBD><EFBFBD><tab>mz
|
||||
" }}}
|
||||
menutrans Obtain\ File<tab>O <09><>ȡ<EFBFBD>ļ<EFBFBD><tab>O
|
||||
menutrans Style <09><>ʾ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||
" Netrw.Style menuitems {{{2
|
||||
menutrans Listing <09>б<EFBFBD><EFBFBD><EFBFBD>ʽ
|
||||
" Netrw.Style.Listing menuitems {{{3
|
||||
menutrans thin<tab>i <09><><EFBFBD><EFBFBD><thin)<tab>i
|
||||
menutrans long<tab>i <09><>ϸ(long)<tab>i
|
||||
menutrans wide<tab>i <09><><EFBFBD><EFBFBD>(wide)<tab>i
|
||||
menutrans tree<tab>i <09><>״(tree)<tab>i
|
||||
" }}}
|
||||
menutrans Normal-Hide-Show <09><>ʾ/<2F><><EFBFBD><EFBFBD>
|
||||
" Netrw.Style.Normal-Hide_show menuitems {{{3
|
||||
menutrans Show\ All<tab>a <09><>ʾȫ<EFBFBD><EFBFBD>
|
||||
menutrans Normal<tab>a <09><><EFBFBD><EFBFBD>ʾ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ļ<EFBFBD>
|
||||
menutrans Hidden\ Only<tab>a ֻ<EFBFBD><EFBFBD>ʾ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ļ<EFBFBD>
|
||||
" }}}
|
||||
menutrans Reverse\ Sorting\ Order<tab>r <09><><EFBFBD><EFBFBD>/<2F><><EFBFBD><EFBFBD><tab>r
|
||||
menutrans Sorting\ Method <09><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʽ
|
||||
" Netrw.Style.Sorting Method menuitems {{{3
|
||||
menutrans Name<tab>s <09>ļ<EFBFBD><EFBFBD><EFBFBD><tab>s
|
||||
menutrans Time<tab>s <09><EFBFBD>ʱ<EFBFBD><EFBFBD><tab>s
|
||||
menutrans Size<tab>s <09><>С<tab>s
|
||||
menutrans Exten<tab>s <09><>չ<EFBFBD><EFBFBD><tab>s
|
||||
" }}}
|
||||
" }}}
|
||||
menutrans Rename\ File/Directory<tab>R <09><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ļ<EFBFBD>/Ŀ¼<tab>R
|
||||
menutrans Set\ Current\ Directory<tab>c <09><><EFBFBD><EFBFBD>\ Vim\ <20><><EFBFBD><EFBFBD>Ŀ¼<tab>c
|
||||
menutrans Targets Ŀ<EFBFBD><EFBFBD>
|
||||
" endif
|
||||
" }}}
|
||||
|
||||
let &cpo = s:keepcpo
|
||||
unlet s:keepcpo
|
||||
|
||||
" vim: set nu ts=4 sw=4 noet fdm=marker fdc=4 :
|
||||
|
||||
@@ -1,273 +1,13 @@
|
||||
" Menu Translations: Simplified Chinese
|
||||
" Maintainer: Shun Bai <baishunde@gmail.com>
|
||||
" Previous Maintainer: Yuheng Xie <elephant@linux.net.cn>
|
||||
" Last Change: 2014 Oct 15
|
||||
|
||||
" vim: ts=8 sw=8 noet
|
||||
|
||||
" Quit when menu translations have already been done.
|
||||
if exists("did_menu_trans")
|
||||
finish
|
||||
endif
|
||||
let did_menu_trans = 1
|
||||
let s:keepcpo= &cpo
|
||||
set cpo&vim
|
||||
" Last Change: 2019-09-09
|
||||
|
||||
" This causes trouble for a broken iconv (symptom: last character is always
|
||||
" ??). Without this it works fine anyway, because gbk/cp936 is a superset of
|
||||
" gb2312. (suggested by Edward L. Fox)
|
||||
" scriptencoding gb2312
|
||||
|
||||
" Help menu
|
||||
menutrans &Help <09><><EFBFBD><EFBFBD>(&H)
|
||||
menutrans &Overview<Tab><F1> <09><><EFBFBD><EFBFBD>(&O)<Tab><F1>
|
||||
menutrans &User\ Manual <09>û<EFBFBD><EFBFBD>ֲ<EFBFBD>(&U)
|
||||
menutrans &How-to\ links How-to\ ָ<EFBFBD><EFBFBD>(&H)
|
||||
menutrans &Find\.\.\. <09><><EFBFBD><EFBFBD>(&F)\.\.\.
|
||||
menutrans &Credits <09><>л(&C)
|
||||
menutrans Co&pying <09><>Ȩ(&P)
|
||||
menutrans &Sponsor/Register <09><><EFBFBD><EFBFBD>/ע<EFBFBD><EFBFBD>(&S)
|
||||
menutrans O&rphans <09>¶<EFBFBD>(&R)
|
||||
menutrans &Version <09>汾(&V)
|
||||
menutrans &About <09><><EFBFBD><EFBFBD>(&A)
|
||||
|
||||
" File menu
|
||||
menutrans &File <09>ļ<EFBFBD>(&F)
|
||||
menutrans &Open\.\.\.<Tab>:e <09><><EFBFBD><EFBFBD>(&O)\.\.\.<Tab>:e
|
||||
menutrans Sp&lit-Open\.\.\.<Tab>:sp <09>ָ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>(&L)\.\.\.<Tab>:sp
|
||||
menutrans Open\ Tab\.\.\.<Tab>:tabnew <09><EFBFBD>ǩ\.\.\.<Tab>:tabnew
|
||||
menutrans &New<Tab>:enew <09>½<EFBFBD>(&N)<Tab>:enew
|
||||
menutrans &Close<Tab>:close <09>ر<EFBFBD>(&C)<Tab>:close
|
||||
menutrans &Save<Tab>:w <09><><EFBFBD><EFBFBD>(&S)<Tab>:w
|
||||
menutrans Save\ &As\.\.\.<Tab>:sav <09><><EFBFBD><EFBFBD>Ϊ(&A)\.\.\.<Tab>:sav
|
||||
menutrans Split\ &Diff\ with\.\.\. <09>ָ<EFBFBD><EFBFBD>Ƚ<EFBFBD>(Diff)(&D)\.\.\.
|
||||
menutrans Split\ Patched\ &By\.\.\. <09>ָ<EFBFBD><EFBFBD><EFBFBD>(Patch)(&B)\.\.\.
|
||||
menutrans &Print <09><>ӡ(&P)
|
||||
menutrans Sa&ve-Exit<Tab>:wqa <09><><EFBFBD>沢<EFBFBD>˳<EFBFBD>(&V)<Tab>:wqa
|
||||
menutrans E&xit<Tab>:qa <09>˳<EFBFBD>(&X)<Tab>:qa
|
||||
|
||||
" Edit menu
|
||||
menutrans &Edit <09>༭(&E)
|
||||
menutrans &Undo<Tab>u <09><><EFBFBD><EFBFBD>(&U)<Tab>u
|
||||
menutrans &Redo<Tab>^R <09><><EFBFBD><EFBFBD>(&R)<Tab>^R
|
||||
menutrans Rep&eat<Tab>\. <09>ظ<EFBFBD><EFBFBD>ϴβ<EFBFBD><EFBFBD><EFBFBD>(&E)<Tab>\.
|
||||
menutrans Cu&t<Tab>"+x <09><><EFBFBD><EFBFBD>(&T)<Tab>"+x
|
||||
menutrans &Copy<Tab>"+y <09><><EFBFBD><EFBFBD>(&C)<Tab>"+y
|
||||
menutrans &Paste<Tab>"+gP ճ<><D5B3>(&P)<Tab>"+gP
|
||||
menutrans Put\ &Before<Tab>[p ճ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ǰ(&B)<Tab>[p
|
||||
menutrans Put\ &After<Tab>]p ճ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>(&A)<Tab>]p
|
||||
menutrans &Delete<Tab>x ɾ<EFBFBD><EFBFBD>(&D)<Tab>x
|
||||
menutrans &Select\ All<Tab>ggVG ȫѡ(&S)<Tab>ggVG
|
||||
menutrans &Find\.\.\. <09><><EFBFBD><EFBFBD>(&F)\.\.\.
|
||||
menutrans Find\ and\ Rep&lace\.\.\. <09><><EFBFBD>Һ<EFBFBD><EFBFBD>滻(&L)\.\.\.
|
||||
menutrans &Find<Tab>/ <09><><EFBFBD><EFBFBD>(&F)<Tab>/
|
||||
menutrans Find\ and\ Rep&lace<Tab>:%s <09><><EFBFBD>Һ<EFBFBD><EFBFBD>滻(&L)<Tab>:%s
|
||||
menutrans Settings\ &Window <09>趨<EFBFBD><EFBFBD><EFBFBD><EFBFBD>(&W)
|
||||
menutrans Startup\ &Settings <09><><EFBFBD><EFBFBD><EFBFBD>趨(&S)
|
||||
menutrans &Global\ Settings ȫ<EFBFBD><EFBFBD><EFBFBD>趨(&G)
|
||||
|
||||
" Edit/Global Settings
|
||||
menutrans Toggle\ Pattern\ &Highlight<Tab>:set\ hls! <09><>/<2F><>ģʽ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>(&H)<Tab>:set\ hls!
|
||||
menutrans Toggle\ &Ignore-case<Tab>:set\ ic! <09><>/<2F>غ<EFBFBD><EFBFBD>Դ<EFBFBD>Сд(&I)<Tab>:set\ ic!
|
||||
menutrans Toggle\ &Showmatch<Tab>:set\ sm! <09><>/<2F><><EFBFBD><EFBFBD>ʾ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>(&S)<Tab>:set\ sm!
|
||||
menutrans &Context\ lines <09><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>(&C)
|
||||
|
||||
menutrans &Virtual\ Edit <09><><EFBFBD><EFBFBD><EFBFBD>༭(&V)
|
||||
menutrans Never <09>Ӳ<EFBFBD>
|
||||
menutrans Block\ Selection <09><>ѡ<EFBFBD><EFBFBD>
|
||||
menutrans Insert\ mode <09><><EFBFBD><EFBFBD>ģʽ
|
||||
menutrans Block\ and\ Insert <09><>ѡ<EFBFBD><EFBFBD><EFBFBD>Ͳ<EFBFBD><EFBFBD><EFBFBD>ģʽ
|
||||
menutrans Always <09><><EFBFBD><EFBFBD>
|
||||
|
||||
menutrans Toggle\ Insert\ &Mode<Tab>:set\ im! <09><>/<2F>ز<EFBFBD><EFBFBD><EFBFBD>ģʽ(&M)<Tab>:set\ im!
|
||||
menutrans Toggle\ Vi\ C&ompatible<Tab>:set\ cp! <09><>/<2F><>\ Vi\ <20><><EFBFBD><EFBFBD><Tab>:set\ cp!
|
||||
menutrans Search\ &Path\.\.\. <09><><EFBFBD><EFBFBD>·<EFBFBD><C2B7>(&P)\.\.\.
|
||||
menutrans Ta&g\ Files\.\.\. Tag\ <20>ļ<EFBFBD>(&T)\.\.\.
|
||||
|
||||
" GUI options
|
||||
menutrans Toggle\ &Toolbar <09><>/<2F>ع<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>(&T)
|
||||
menutrans Toggle\ &Bottom\ Scrollbar <09><>/<2F>صײ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>(&B)
|
||||
menutrans Toggle\ &Left\ Scrollbar <09><>/<2F><><EFBFBD><EFBFBD><EFBFBD>˹<EFBFBD><CBB9><EFBFBD><EFBFBD><EFBFBD>(&L)
|
||||
menutrans Toggle\ &Right\ Scrollbar <09><>/<2F><><EFBFBD>Ҷ˹<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>(&R)
|
||||
|
||||
" Edit/File Settings
|
||||
menutrans F&ile\ Settings <09>ļ<EFBFBD><EFBFBD>趨(&I)
|
||||
|
||||
" Boolean options
|
||||
menutrans Toggle\ Line\ &Numbering<Tab>:set\ nu! <09><>/<2F><><EFBFBD><EFBFBD>ʾ<EFBFBD>к<EFBFBD>(&N)<Tab>:set\ nu!
|
||||
menutrans Toggle\ relati&ve\ Line\ Numbering<Tab>:set\ rnu! <20><>/<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>к<EFBFBD>(&V)<Tab>:set\ rnu!
|
||||
menutrans Toggle\ &List\ Mode<Tab>:set\ list! <09><>/<2F><>\ list\ ģʽ(&L)<Tab>:set\ list!
|
||||
menutrans Toggle\ Line\ &Wrap<Tab>:set\ wrap! <09><>/<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>(&W)<Tab>:set\ wrap!
|
||||
menutrans Toggle\ W&rap\ at\ word<Tab>:set\ lbr! <09><>/<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>(&R)<Tab>:set\ lbr!
|
||||
menutrans Toggle\ &expand-tab<Tab>:set\ et! <09><>/<2F><><EFBFBD><EFBFBD>չ\ tab(&E)<Tab>:set\ et!
|
||||
menutrans Toggle\ &auto-indent<Tab>:set\ ai! <09><>/<2F><><EFBFBD>Զ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>(&A)<Tab>:set\ ai!
|
||||
menutrans Toggle\ &C-indenting<Tab>:set\ cin! <09><>/<2F><>\ C\ <20><><EFBFBD><EFBFBD>(&C)<Tab>:set\ cin!
|
||||
|
||||
" other options
|
||||
menutrans &Shiftwidth <09><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>(&S)
|
||||
menutrans Soft\ &Tabstop Soft\ Tab\ <20><><EFBFBD><EFBFBD>(&T)
|
||||
menutrans Te&xt\ Width\.\.\. <09>ı<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>(&X)\.\.\.
|
||||
menutrans &File\ Format\.\.\. <09>ļ<EFBFBD><EFBFBD><EFBFBD>ʽ(&F)\.\.\.
|
||||
menutrans C&olor\ Scheme <09><>ɫ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>(&O)
|
||||
menutrans Select\ Fo&nt\.\.\. ѡ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>(&N)\.\.\.
|
||||
menutrans &Keymap <09><><EFBFBD><EFBFBD>ӳ<EFBFBD><EFBFBD>(&K)
|
||||
|
||||
" Programming menu
|
||||
menutrans &Tools <09><><EFBFBD><EFBFBD>(&T)
|
||||
menutrans &Jump\ to\ this\ tag<Tab>g^] <09><>ת<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>\ tag(&J)<Tab>g^]
|
||||
menutrans Jump\ &back<Tab>^T <09><>ת<EFBFBD><EFBFBD><EFBFBD><EFBFBD>(&B)<Tab>^T
|
||||
menutrans Build\ &Tags\ File <09><><EFBFBD><EFBFBD>\ Tags\ <20>ļ<EFBFBD>(&T)
|
||||
|
||||
" Tools.Spelling Menu
|
||||
menutrans &Spelling ƴд<EFBFBD><EFBFBD><EFBFBD><EFBFBD>(&S)
|
||||
menutrans &Spell\ Check\ On <09><><EFBFBD><EFBFBD>ƴд<EFBFBD><EFBFBD><EFBFBD><EFBFBD>(&S)
|
||||
menutrans Spell\ Check\ &Off <09>ر<EFBFBD>ƴд<EFBFBD><EFBFBD><EFBFBD><EFBFBD>(&O)
|
||||
menutrans To\ &Next\ error<Tab>]s <09><>һ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>(&N)<Tab>]s
|
||||
menutrans To\ &Previous\ error<Tab>[s <09><>һ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>(&P)<Tab>[s
|
||||
menutrans Suggest\ &Corrections<Tab>z= <09><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>(&C)<Tab>z=
|
||||
menutrans &Repeat\ correction<Tab>:spellrepall <09>ظ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>(&R)<Tab>:spellrepall
|
||||
menutrans Set\ language\ to\ "en" <09>趨<EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϊ\ "en"
|
||||
menutrans Set\ language\ to\ "en_au" <09>趨<EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϊ\ "en_au"
|
||||
menutrans Set\ language\ to\ "en_ca" <09>趨<EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϊ\ "en_ca"
|
||||
menutrans Set\ language\ to\ "en_gb" <09>趨<EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϊ\ "en_gb"
|
||||
menutrans Set\ language\ to\ "en_nz" <09>趨<EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϊ\ "en_nz"
|
||||
menutrans Set\ language\ to\ "en_us" <09>趨<EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϊ\ "en_us"
|
||||
menutrans &Find\ More\ Languages <09><><EFBFBD>Ҹ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>(&F)
|
||||
|
||||
" Tools.Fold Menu
|
||||
" open close folds
|
||||
menutrans &Folding <09>۵<EFBFBD>(&F)
|
||||
menutrans &Enable/Disable\ folds<Tab>zi <09><><EFBFBD><EFBFBD>/<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>۵<EFBFBD>(&E)<Tab>zi
|
||||
menutrans &View\ Cursor\ Line<Tab>zv <09>鿴<EFBFBD><EFBFBD><EFBFBD><EFBFBD>(&V)<Tab>zv
|
||||
menutrans Vie&w\ Cursor\ Line\ only<Tab>zMzx <09><><EFBFBD>鿴<EFBFBD><EFBFBD><EFBFBD><EFBFBD>(&W)<Tab>zMzx
|
||||
menutrans C&lose\ more\ folds<Tab>zm <09>رո<EFBFBD><EFBFBD><EFBFBD><EFBFBD>۵<EFBFBD>(&L)<Tab>zm
|
||||
menutrans &Close\ all\ folds<Tab>zM <09>ر<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>۵<EFBFBD>(&C)<Tab>zM
|
||||
menutrans O&pen\ more\ folds<Tab>zr <09><EFBFBD><F2BFAAB8><EFBFBD><EFBFBD>۵<EFBFBD>(&P)<Tab>zr
|
||||
menutrans &Open\ all\ folds<Tab>zR <09><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>۵<EFBFBD>(&O)<Tab>zR
|
||||
" fold method
|
||||
menutrans Fold\ Met&hod <09>۵<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>(&H)
|
||||
menutrans M&anual <09>ֹ<EFBFBD>(&A)
|
||||
menutrans I&ndent <09><><EFBFBD><EFBFBD>(&N)
|
||||
menutrans E&xpression <09><><EFBFBD><EFBFBD>ʽ(&X)
|
||||
menutrans S&yntax <09>(&Y)
|
||||
menutrans &Diff <09>Ƚ<EFBFBD>(Diff)(&D)
|
||||
menutrans Ma&rker <09><><EFBFBD><EFBFBD>(&R)
|
||||
" create and delete folds
|
||||
menutrans Create\ &Fold<Tab>zf <09><><EFBFBD><EFBFBD><EFBFBD>۵<EFBFBD>(&F)<Tab>zf
|
||||
menutrans &Delete\ Fold<Tab>zd ɾ<EFBFBD><EFBFBD><EFBFBD>۵<EFBFBD>(&D)<Tab>zd
|
||||
menutrans Delete\ &All\ Folds<Tab>zD ɾ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>۵<EFBFBD>(&A)<Tab>zD
|
||||
" moving around in folds
|
||||
menutrans Fold\ column\ &width <09>۵<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>(&W)
|
||||
|
||||
" Tools.Diff Menu
|
||||
menutrans &Diff <09>Ƚ<EFBFBD>(Diff)(&D)
|
||||
menutrans &Update <09><><EFBFBD><EFBFBD>(&U)
|
||||
menutrans &Get\ Block <09>õ<EFBFBD><EFBFBD><EFBFBD>(&G)
|
||||
menutrans &Put\ Block <09><><EFBFBD>ÿ<EFBFBD>(&P)
|
||||
|
||||
menutrans &Make<Tab>:make Make(&M)<Tab>:make
|
||||
menutrans &List\ Errors<Tab>:cl <09>г<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>(&L)<Tab>:cl
|
||||
menutrans L&ist\ Messages<Tab>:cl! <09>г<EFBFBD><EFBFBD><EFBFBD>Ϣ(&I)<Tab>:cl!
|
||||
menutrans &Next\ Error<Tab>:cn <09><>һ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>(&N)<Tab>:cn
|
||||
menutrans &Previous\ Error<Tab>:cp <09><>һ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>(&P)<Tab>:cp
|
||||
menutrans &Older\ List<Tab>:cold <09><><EFBFBD>ɵĴ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>б<EFBFBD>(&O)<Tab>:cold
|
||||
menutrans N&ewer\ List<Tab>:cnew <09><><EFBFBD>µĴ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>б<EFBFBD>(&E)<Tab>:cnew
|
||||
menutrans Error\ &Window <09><><EFBFBD><EFBFBD>(&W)
|
||||
menutrans &Update<Tab>:cwin <09><><EFBFBD><EFBFBD>(&U)<Tab>:cwin
|
||||
menutrans &Open<Tab>:copen <09><><EFBFBD><EFBFBD>(&O)<Tab>:copen
|
||||
menutrans &Close<Tab>:cclose <09>ر<EFBFBD>(&C)<Tab>:cclose
|
||||
menutrans &Convert\ to\ HEX<Tab>:%!xxd ת<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʮ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><Tab>:%!xxd
|
||||
menutrans Conve&rt\ back<Tab>:%!xxd\ -r ת<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><Tab>:%!xxd\ -r
|
||||
menutrans Se&T\ Compiler <09>趨<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>(&T)
|
||||
|
||||
" Names for buffer menu.
|
||||
menutrans &Buffers <09><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>(&B)
|
||||
menutrans &Refresh\ menu <09><><EFBFBD>²˵<C2B2>(&R)
|
||||
menutrans &Delete ɾ<EFBFBD><EFBFBD>(&D)
|
||||
menutrans &Alternate <09><><EFBFBD><EFBFBD>(&A)
|
||||
menutrans &Next <09><>һ<EFBFBD><EFBFBD>(&N)
|
||||
menutrans &Previous <09><>һ<EFBFBD><EFBFBD>(&P)
|
||||
|
||||
" Window menu
|
||||
menutrans &Window <09><><EFBFBD><EFBFBD>(&W)
|
||||
menutrans &New<Tab>^Wn <09>½<EFBFBD>(&N)<Tab>^Wn
|
||||
menutrans S&plit<Tab>^Ws <09>ָ<EFBFBD>(&P)<Tab>^Ws
|
||||
menutrans Sp&lit\ To\ #<Tab>^W^^ <09>ָ\ #(&L)<Tab>^W^^
|
||||
menutrans Split\ &Vertically<Tab>^Wv <09><>ֱ<EFBFBD>ָ<EFBFBD>(&V)<Tab>^Wv
|
||||
menutrans Split\ File\ E&xplorer <09>ָ<EFBFBD><EFBFBD>ļ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>(&X)
|
||||
menutrans &Close<Tab>^Wc <09>ر<EFBFBD>(&C)<Tab>^Wc
|
||||
menutrans Close\ &Other(s)<Tab>^Wo <09>ر<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>(&O)<Tab>^Wo
|
||||
menutrans Move\ &To <09>ƶ<EFBFBD><EFBFBD><EFBFBD>(&T)
|
||||
menutrans &Top<Tab>^WK <09><><EFBFBD><EFBFBD>(&T)<Tab>^WK
|
||||
menutrans &Bottom<Tab>^WJ <09><EFBFBD>(&B)<Tab>^WJ
|
||||
menutrans &Left\ side<Tab>^WH <09><><EFBFBD><EFBFBD>(&L)<Tab>^WH
|
||||
menutrans &Right\ side<Tab>^WL <09>ұ<EFBFBD>(&R)<Tab>^WL
|
||||
" menutrans Ne&xt<Tab>^Ww <09><>һ<EFBFBD><D2BB>(&X)<Tab>^Ww
|
||||
" menutrans P&revious<Tab>^WW <09><>һ<EFBFBD><D2BB>(&R)<Tab>^WW
|
||||
menutrans Rotate\ &Up<Tab>^WR <09><><EFBFBD><EFBFBD><EFBFBD>ֻ<EFBFBD>(&U)<Tab>^WR
|
||||
menutrans Rotate\ &Down<Tab>^Wr <09><><EFBFBD><EFBFBD><EFBFBD>ֻ<EFBFBD>(&D)<Tab>^Wr
|
||||
menutrans &Equal\ Size<Tab>^W= <09>ȴ<EFBFBD>(&E)<Tab>^W=
|
||||
menutrans &Max\ Height<Tab>^W_ <09><><EFBFBD><EFBFBD><EFBFBD>߶<EFBFBD>(&M)<Tab>^W
|
||||
menutrans M&in\ Height<Tab>^W1_ <09><>С<EFBFBD>߶<EFBFBD>(&I)<Tab>^W1_
|
||||
menutrans Max\ &Width<Tab>^W\| <09><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>(&W)<Tab>^W\|
|
||||
menutrans Min\ Widt&h<Tab>^W1\| <09><>С<EFBFBD><EFBFBD><EFBFBD><EFBFBD>(&H)<Tab>^W1\|
|
||||
"
|
||||
" The popup menu
|
||||
menutrans &Undo <09><><EFBFBD><EFBFBD>(&U)
|
||||
menutrans Cu&t <09><><EFBFBD><EFBFBD>(&T)
|
||||
menutrans &Copy <09><><EFBFBD><EFBFBD>(&C)
|
||||
menutrans &Paste ճ<EFBFBD><EFBFBD>(&P)
|
||||
menutrans &Delete ɾ<EFBFBD><EFBFBD>(&D)
|
||||
menutrans Select\ Blockwise ѡ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||
menutrans Select\ &Word ѡ<EFBFBD><EFBFBD>(&W)
|
||||
menutrans Select\ &Sentence ѡ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>(&S)
|
||||
menutrans Select\ Pa&ragraph ѡ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>(&R)
|
||||
menutrans Select\ &Line ѡ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>(&L)
|
||||
menutrans Select\ &Block ѡ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>(&B)
|
||||
menutrans Select\ &All ȫѡ(&A)
|
||||
"
|
||||
" The GUI toolbar
|
||||
if has("toolbar")
|
||||
if exists("*Do_toolbar_tmenu")
|
||||
delfun Do_toolbar_tmenu
|
||||
endif
|
||||
fun Do_toolbar_tmenu()
|
||||
tmenu ToolBar.Open <09><><EFBFBD><EFBFBD><EFBFBD>ļ<EFBFBD>
|
||||
tmenu ToolBar.Save <09><><EFBFBD>浱ǰ<EFBFBD>ļ<EFBFBD>
|
||||
tmenu ToolBar.SaveAll <09><><EFBFBD><EFBFBD>ȫ<EFBFBD><EFBFBD><EFBFBD>ļ<EFBFBD>
|
||||
tmenu ToolBar.Print <09><>ӡ
|
||||
tmenu ToolBar.Undo <09><><EFBFBD><EFBFBD>
|
||||
tmenu ToolBar.Redo <09><><EFBFBD><EFBFBD>
|
||||
tmenu ToolBar.Cut <09><><EFBFBD>е<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||
tmenu ToolBar.Copy <09><><EFBFBD>Ƶ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||
tmenu ToolBar.Paste <09>Ӽ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ճ<EFBFBD><EFBFBD>
|
||||
tmenu ToolBar.Find <09><><EFBFBD><EFBFBD>...
|
||||
tmenu ToolBar.FindNext <09><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>һ<EFBFBD><EFBFBD>
|
||||
tmenu ToolBar.FindPrev <09><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>һ<EFBFBD><EFBFBD>
|
||||
tmenu ToolBar.Replace <09><><EFBFBD>Һ<EFBFBD><EFBFBD>滻...
|
||||
tmenu ToolBar.LoadSesn <09><><EFBFBD>ػỰ
|
||||
tmenu ToolBar.SaveSesn <09><><EFBFBD>浱ǰ<EFBFBD>Ự
|
||||
tmenu ToolBar.RunScript <09><><EFBFBD><EFBFBD> Vim <20>ű<EFBFBD>
|
||||
tmenu ToolBar.Make ִ<EFBFBD><EFBFBD> Make (:make)
|
||||
tmenu ToolBar.RunCtags <09>ڵ<EFBFBD>ǰĿ¼<EFBFBD><EFBFBD><EFBFBD><EFBFBD> tags (!ctags -R .)
|
||||
tmenu ToolBar.TagJump <09><>ת<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>λ<EFBFBD>õ<EFBFBD> tag
|
||||
tmenu ToolBar.Help Vim <20><><EFBFBD><EFBFBD>
|
||||
tmenu ToolBar.FindHelp <09><><EFBFBD><EFBFBD> Vim <20><><EFBFBD><EFBFBD>
|
||||
endfun
|
||||
endif
|
||||
|
||||
" Syntax menu
|
||||
menutrans &Syntax <09>(&S)
|
||||
menutrans &Show\ filetypes\ in\ menu <09>ڲ˵<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʾ<EFBFBD>ļ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>(&S)
|
||||
menutrans &Off <09>ر<EFBFBD>(&O)
|
||||
menutrans &Manual <09>ֹ<EFBFBD>(&M)
|
||||
menutrans A&utomatic <09>Զ<EFBFBD>(&U)
|
||||
menutrans on/off\ for\ &This\ file <09><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ļ<EFBFBD><C4BC><EFBFBD>/<EFBFBD><EFBFBD>(&T)
|
||||
menutrans Co&lor\ test ɫ<EFBFBD>ʲ<EFBFBD><EFBFBD><EFBFBD>(&L)
|
||||
menutrans &Highlight\ test <09><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>(&H)
|
||||
menutrans &Convert\ to\ HTML ת<EFBFBD><EFBFBD><EFBFBD><EFBFBD>\ HTML(&C)
|
||||
menutrans Set\ '&syntax'\ only <09><><EFBFBD>趨\ 'syntax'(&S)
|
||||
menutrans Set\ '&filetype'\ too Ҳ<EFBFBD>趨\ 'filetype'(&F)
|
||||
|
||||
let &cpo = s:keepcpo
|
||||
unlet s:keepcpo
|
||||
" As mentioned above, gbk/cp936 is a superset of (and backward compatible with)
|
||||
" gb2312, then source the translation encoded in cp936 should be ok. -- Shun
|
||||
source <sfile>:p:h/menu_zh_cn.cp936.vim
|
||||
|
||||
@@ -1,53 +1,61 @@
|
||||
" Menu Translations: Simplified Chinese
|
||||
" Maintainer: Shun Bai <baishunde@gmail.com>
|
||||
" Previous Maintainer: Yuheng Xie <elephant@linux.net.cn>
|
||||
" Last Change: 2014 Oct 15
|
||||
|
||||
" vim: ts=8 sw=8 noet
|
||||
" Last Change: 2019 Sep 11
|
||||
|
||||
" Quit when menu translations have already been done.
|
||||
if exists("did_menu_trans")
|
||||
finish
|
||||
endif
|
||||
let did_menu_trans = 1
|
||||
let s:keepcpo= &cpo
|
||||
let s:keepcpo = &cpo
|
||||
set cpo&vim
|
||||
|
||||
scriptencoding utf-8
|
||||
|
||||
" Help menu
|
||||
menutrans &Help 帮助(&H)
|
||||
menutrans &Overview<Tab><F1> 纵览(&O)<Tab><F1>
|
||||
" Help menuitems and dialog {{{1
|
||||
menutrans &Overview<Tab><F1> 概述(&O)<Tab><F1>
|
||||
menutrans &User\ Manual 用户手册(&U)
|
||||
menutrans &How-to\ links How-to\ 指引(&H)
|
||||
menutrans &How-to\ Links 如何使用(&H)
|
||||
menutrans &Find\.\.\. 查找(&F)\.\.\.
|
||||
menutrans &Credits 致谢(&C)
|
||||
menutrans Co&pying 版权(&P)
|
||||
menutrans &Sponsor/Register 赞助/注册(&S)
|
||||
menutrans O&rphans 孤儿(&R)
|
||||
menutrans O&rphans 拯救孤儿(&R)
|
||||
menutrans &Version 版本(&V)
|
||||
menutrans &About 关于(&A)
|
||||
|
||||
" fun! s:Helpfind()
|
||||
if !exists("g:menutrans_help_dialog")
|
||||
let g:menutrans_help_dialog = "输入命令或单词以获得帮助:\n\n前缀 i_ 表示输入模式下的命令(如: i_CTRL-X)\n前缀 c_ 表示命令行下的编辑命令(如: c_<Del>)\n前缀 ' 表示选项名(如: 'shiftwidth')"
|
||||
endif
|
||||
" }}}
|
||||
|
||||
" File menu
|
||||
menutrans &File 文件(&F)
|
||||
" File menuitems {{{1
|
||||
menutrans &Open\.\.\.<Tab>:e 打开(&O)\.\.\.<Tab>:e
|
||||
menutrans Sp&lit-Open\.\.\.<Tab>:sp 分割并打开(&L)\.\.\.<Tab>:sp
|
||||
menutrans Open\ Tab\.\.\.<Tab>:tabnew 打开标签\.\.\.<Tab>:tabnew
|
||||
menutrans Sp&lit-Open\.\.\.<Tab>:sp 在拆分窗口打开(&L)\.\.\.<Tab>:sp
|
||||
menutrans Open\ Tab\.\.\.<Tab>:tabnew 在标签页打开\.\.\.<Tab>:tabnew
|
||||
menutrans &New<Tab>:enew 新建(&N)<Tab>:enew
|
||||
menutrans &Close<Tab>:close 关闭(&C)<Tab>:close
|
||||
menutrans &Save<Tab>:w 保存(&S)<Tab>:w
|
||||
menutrans Save\ &As\.\.\.<Tab>:sav 另存为(&A)\.\.\.<Tab>:sav
|
||||
menutrans Split\ &Diff\ with\.\.\. 分割比较(Diff)(&D)\.\.\.
|
||||
menutrans Split\ Patched\ &By\.\.\. 分割打补丁(Patch)(&B)\.\.\.
|
||||
menutrans Split\ &Diff\ With\.\.\. 拆分窗口以对比差异(Diff)(&D)\.\.\.
|
||||
menutrans Split\ Patched\ &By\.\.\. 拆分窗口以进行修补(Patch)(&B)\.\.\.
|
||||
menutrans &Print 打印(&P)
|
||||
menutrans Sa&ve-Exit<Tab>:wqa 保存并退出(&V)<Tab>:wqa
|
||||
menutrans E&xit<Tab>:qa 退出(&X)<Tab>:qa
|
||||
" }}}
|
||||
|
||||
" Edit menu
|
||||
menutrans &Edit 编辑(&E)
|
||||
" Edit menuitems {{{1
|
||||
menutrans &Undo<Tab>u 撤销(&U)<Tab>u
|
||||
menutrans &Redo<Tab>^R 重做(&R)<Tab>^R
|
||||
menutrans Rep&eat<Tab>\. 重复上次操作(&E)<Tab>\.
|
||||
menutrans &Redo<Tab>^R 恢复(&R)<Tab>^R
|
||||
menutrans Rep&eat<Tab>\. 重复(&E)<Tab>\.
|
||||
menutrans Cu&t<Tab>"+x 剪切(&T)<Tab>"+x
|
||||
menutrans &Copy<Tab>"+y 复制(&C)<Tab>"+y
|
||||
menutrans &Paste<Tab>"+gP 粘贴(&P)<Tab>"+gP
|
||||
@@ -59,212 +67,386 @@ menutrans &Find\.\.\. 查找(&F)\.\.\.
|
||||
menutrans Find\ and\ Rep&lace\.\.\. 查找和替换(&L)\.\.\.
|
||||
menutrans &Find<Tab>/ 查找(&F)<Tab>/
|
||||
menutrans Find\ and\ Rep&lace<Tab>:%s 查找和替换(&L)<Tab>:%s
|
||||
menutrans Settings\ &Window 设定窗口(&W)
|
||||
menutrans Startup\ &Settings 启动设定(&S)
|
||||
menutrans &Global\ Settings 全局设定(&G)
|
||||
menutrans Settings\ &Window 设置窗口(&W)
|
||||
menutrans Startup\ &Settings 启动设置(&S)
|
||||
|
||||
" Edit/Global Settings
|
||||
menutrans Toggle\ Pattern\ &Highlight<Tab>:set\ hls! 开/关模式高亮(&H)<Tab>:set\ hls!
|
||||
menutrans Toggle\ &Ignore-case<Tab>:set\ ic! 开/关忽略大小写(&I)<Tab>:set\ ic!
|
||||
menutrans Toggle\ &Showmatch<Tab>:set\ sm! 开/关显示配对(&S)<Tab>:set\ sm!
|
||||
menutrans &Context\ lines 上下文行数(&C)
|
||||
|
||||
menutrans &Global\ Settings 全局设置(&G)
|
||||
" Edit.Global Settings menuitems and dialogs {{{2
|
||||
menutrans Toggle\ Pattern\ &Highlight<Tab>:set\ hls! 开/关高亮查找内容(&H)<Tab>:set\ hls!
|
||||
menutrans Toggle\ &Ignoring\ Case<Tab>:set\ ic! 开/关忽略大小写(&I)<Tab>:set\ ic!
|
||||
menutrans Toggle\ &Showing\ Matched\ Pairs<Tab>:set\ sm! 开/关显示括号匹配(&S)<Tab>:set\ sm!
|
||||
menutrans &Context\ Lines 上下文行数(&C)
|
||||
menutrans &Virtual\ Edit 虚拟编辑(&V)
|
||||
" Edit.Global Settings.Virtual Edit menuitems {{{3
|
||||
menutrans Never 从不
|
||||
menutrans Block\ Selection 块选择
|
||||
menutrans Insert\ mode 插入模式
|
||||
menutrans Block\ and\ Insert 块选择和插入模式
|
||||
menutrans Always 总是
|
||||
|
||||
menutrans Block\ Selection 只在选定矩形块时
|
||||
menutrans Insert\ Mode 只在插入模式时
|
||||
menutrans Block\ and\ Insert 在选定矩形块和插入模式时
|
||||
menutrans Always 始终
|
||||
" }}}
|
||||
menutrans Toggle\ Insert\ &Mode<Tab>:set\ im! 开/关插入模式(&M)<Tab>:set\ im!
|
||||
menutrans Toggle\ Vi\ C&ompatible<Tab>:set\ cp! 开/关\ Vi\ 兼容<Tab>:set\ cp!
|
||||
menutrans Search\ &Path\.\.\. 查找路径(&P)\.\.\.
|
||||
menutrans Ta&g\ Files\.\.\. Tag\ 文件(&T)\.\.\.
|
||||
menutrans Toggle\ Vi\ C&ompatibility<Tab>:set\ cp! 开/关\ Vi\ 兼容性(&O)<Tab>:set\ cp!
|
||||
menutrans Search\ &Path\.\.\. 搜索路径(&P)\.\.\.
|
||||
menutrans Ta&g\ Files\.\.\. 标记文件(Tags)(&G)\.\.\.
|
||||
|
||||
" GUI options
|
||||
menutrans Toggle\ &Toolbar 开/关工具栏(&T)
|
||||
menutrans Toggle\ &Bottom\ Scrollbar 开/关底部滚动条(&B)
|
||||
menutrans Toggle\ &Left\ Scrollbar 开/关左端滚动条(&L)
|
||||
menutrans Toggle\ &Right\ Scrollbar 开/关右端滚动条(&R)
|
||||
menutrans Toggle\ &Left\ Scrollbar 开/关左侧滚动条(&L)
|
||||
menutrans Toggle\ &Right\ Scrollbar 开/关右侧滚动条(&R)
|
||||
|
||||
" fun! s:SearchP()
|
||||
if !exists("g:menutrans_path_dialog")
|
||||
let g:menutrans_path_dialog = "输入搜索路径。\n用逗号分隔目录名。"
|
||||
endif
|
||||
|
||||
" fun! s:TagFiles()
|
||||
if !exists("g:menutrans_tags_dialog")
|
||||
let g:menutrans_tags_dialog = "输入标记文件(Tags)名称。\n用逗号分隔文件名。"
|
||||
endif
|
||||
" }}}
|
||||
|
||||
" Edit/File Settings
|
||||
menutrans F&ile\ Settings 文件设定(&I)
|
||||
|
||||
menutrans F&ile\ Settings 文件设置(&I)
|
||||
" Edit.File Settings menuitems and dialogs {{{2
|
||||
" Boolean options
|
||||
menutrans Toggle\ Line\ &Numbering<Tab>:set\ nu! 开/关显示行号(&N)<Tab>:set\ nu!
|
||||
menutrans Toggle\ relati&ve\ Line\ Numbering<Tab>:set\ rnu! 开/关相对行号(&V)<Tab>:set\ rnu!
|
||||
menutrans Toggle\ &List\ Mode<Tab>:set\ list! 开/关\ list\ 模式(&L)<Tab>:set\ list!
|
||||
menutrans Toggle\ Line\ &Wrap<Tab>:set\ wrap! 开/关折行(&W)<Tab>:set\ wrap!
|
||||
menutrans Toggle\ W&rap\ at\ word<Tab>:set\ lbr! 开/关整词折行(&R)<Tab>:set\ lbr!
|
||||
menutrans Toggle\ &expand-tab<Tab>:set\ et! 开/关扩展\ tab(&E)<Tab>:set\ et!
|
||||
menutrans Toggle\ &auto-indent<Tab>:set\ ai! 开/关自动缩进(&A)<Tab>:set\ ai!
|
||||
menutrans Toggle\ &C-indenting<Tab>:set\ cin! 开/关\ C\ 缩进(&C)<Tab>:set\ cin!
|
||||
menutrans Toggle\ Line\ &Numbering<Tab>:set\ nu! 开/关行号(&N)<Tab>:set\ nu!
|
||||
menutrans Toggle\ Relati&ve\ Line\ Numbering<Tab>:set\ rnu! 开/关相对行号(&V)<Tab>:set\ rnu!
|
||||
menutrans Toggle\ &List\ Mode<Tab>:set\ list! 开/关列表模式(&L)<Tab>:set\ list!
|
||||
menutrans Toggle\ Line\ &Wrapping<Tab>:set\ wrap! 开/关换行(&W)<Tab>:set\ wrap!
|
||||
menutrans Toggle\ W&rapping\ at\ Word<Tab>:set\ lbr! 开/关词尾换行(&R)<Tab>:set\ lbr!
|
||||
menutrans Toggle\ Tab\ &Expanding<Tab>:set\ et! 开/关制表符扩展(&E)<Tab>:set\ et!
|
||||
menutrans Toggle\ &Auto\ Indenting<Tab>:set\ ai! 开/关自动缩进(&A)<Tab>:set\ ai!
|
||||
menutrans Toggle\ &C-Style\ Indenting<Tab>:set\ cin! 开/关\ C\ 语言式缩进(&C)<Tab>:set\ cin!
|
||||
|
||||
" other options
|
||||
menutrans &Shiftwidth 缩进宽度(&S)
|
||||
menutrans Soft\ &Tabstop Soft\ Tab\ 宽度(&T)
|
||||
menutrans Soft\ &Tabstop 软制表位宽度(Soft Tabstop)(&T)
|
||||
menutrans Te&xt\ Width\.\.\. 文本宽度(&X)\.\.\.
|
||||
menutrans &File\ Format\.\.\. 文件格式(&F)\.\.\.
|
||||
|
||||
" fun! s:TextWidth()
|
||||
if !exists("g:menutrans_textwidth_dialog")
|
||||
let g:menutrans_textwidth_dialog = "输入文本宽度(每行最大字符数,0 表示禁用):"
|
||||
endif
|
||||
|
||||
" fun! s:FileFormat()
|
||||
if !exists("g:menutrans_fileformat_dialog")
|
||||
let g:menutrans_fileformat_dialog = "选择文件的保存格式:"
|
||||
endif
|
||||
if !exists("g:menutrans_fileformat_choices")
|
||||
let g:menutrans_fileformat_choices = "&Unix\n&Dos\n&Mac\n取消(&C)"
|
||||
endif
|
||||
" }}}
|
||||
menutrans Show\ C&olor\ Schemes\ in\ Menu 在菜单中显示配色方案(&O)
|
||||
menutrans C&olor\ Scheme 配色方案(&O)
|
||||
menutrans Select\ Fo&nt\.\.\. 选择字体(&N)\.\.\.
|
||||
menutrans Show\ &Keymaps\ in\ Menu 在菜单中显示键盘映射(&K)
|
||||
menutrans &Keymap 键盘映射(&K)
|
||||
menutrans Select\ Fo&nt\.\.\. 选择字体(&N)\.\.\.
|
||||
" }}}
|
||||
|
||||
" Programming menu
|
||||
menutrans &Tools 工具(&T)
|
||||
menutrans &Jump\ to\ this\ tag<Tab>g^] 跳转到这个\ tag(&J)<Tab>g^]
|
||||
menutrans Jump\ &back<Tab>^T 跳转返回(&B)<Tab>^T
|
||||
menutrans Build\ &Tags\ File 建立\ Tags\ 文件(&T)
|
||||
" Tools menuitems {{{1
|
||||
menutrans &Jump\ to\ This\ Tag<Tab>g^] 跳转到这个标记(Tag)(&J)<Tab>g^]
|
||||
menutrans Jump\ &Back<Tab>^T 跳转回(&B)<Tab>^T
|
||||
menutrans Build\ &Tags\ File 生成标记文件(Tags)(&T)
|
||||
|
||||
" Tools.Spelling Menu
|
||||
menutrans &Spelling 拼写检查(&S)
|
||||
" Tools.Spelling menuitems and dialog {{{2
|
||||
menutrans &Spell\ Check\ On 打开拼写检查(&S)
|
||||
menutrans Spell\ Check\ &Off 关闭拼写检查(&O)
|
||||
menutrans To\ &Next\ error<Tab>]s 上一个错误(&N)<Tab>]s
|
||||
menutrans To\ &Previous\ error<Tab>[s 下一个错误(&P)<Tab>[s
|
||||
menutrans Suggest\ &Corrections<Tab>z= 修正建议(&C)<Tab>z=
|
||||
menutrans &Repeat\ correction<Tab>:spellrepall 重复修正(&R)<Tab>:spellrepall
|
||||
menutrans Set\ language\ to\ "en" 设定语言为\ "en"
|
||||
menutrans Set\ language\ to\ "en_au" 设定语言为\ "en_au"
|
||||
menutrans Set\ language\ to\ "en_ca" 设定语言为\ "en_ca"
|
||||
menutrans Set\ language\ to\ "en_gb" 设定语言为\ "en_gb"
|
||||
menutrans Set\ language\ to\ "en_nz" 设定语言为\ "en_nz"
|
||||
menutrans Set\ language\ to\ "en_us" 设定语言为\ "en_us"
|
||||
menutrans To\ &Next\ Error<Tab>]s 上一个错误(&N)<Tab>]s
|
||||
menutrans To\ &Previous\ Error<Tab>[s 下一个错误(&P)<Tab>[s
|
||||
menutrans Suggest\ &Corrections<Tab>z= 更正建议(&C)<Tab>z=
|
||||
menutrans &Repeat\ Correction<Tab>:spellrepall 更正全部同类错误(&R)<Tab>:spellrepall
|
||||
menutrans Set\ Language\ to\ "en" 设置语言为\ "en"
|
||||
menutrans Set\ Language\ to\ "en_au" 设置语言为\ "en_au"
|
||||
menutrans Set\ Language\ to\ "en_ca" 设置语言为\ "en_ca"
|
||||
menutrans Set\ Language\ to\ "en_gb" 设置语言为\ "en_gb"
|
||||
menutrans Set\ Language\ to\ "en_nz" 设置语言为\ "en_nz"
|
||||
menutrans Set\ Language\ to\ "en_us" 设置语言为\ "en_us"
|
||||
menutrans &Find\ More\ Languages 查找更多语言(&F)
|
||||
|
||||
" func! s:SpellLang()
|
||||
if !exists("g:menutrans_set_lang_to")
|
||||
let g:menutrans_set_lang_to = "设置语言为"
|
||||
endif
|
||||
" }}}
|
||||
|
||||
" Tools.Fold Menu
|
||||
" open close folds
|
||||
menutrans &Folding 折叠(&F)
|
||||
menutrans &Enable/Disable\ folds<Tab>zi 启用/禁用折叠(&E)<Tab>zi
|
||||
menutrans &View\ Cursor\ Line<Tab>zv 查看此行(&V)<Tab>zv
|
||||
menutrans Vie&w\ Cursor\ Line\ only<Tab>zMzx 仅查看此行(&W)<Tab>zMzx
|
||||
menutrans C&lose\ more\ folds<Tab>zm 关闭更多折叠(&L)<Tab>zm
|
||||
menutrans &Close\ all\ folds<Tab>zM 关闭所有折叠(&C)<Tab>zM
|
||||
menutrans O&pen\ more\ folds<Tab>zr 打开更多折叠(&P)<Tab>zr
|
||||
menutrans &Open\ all\ folds<Tab>zR 打开所有折叠(&O)<Tab>zR
|
||||
" Tools.Fold menuitems {{{2
|
||||
" open close folds
|
||||
menutrans &Enable/Disable\ Folds<Tab>zi 启用/禁用折叠(&E)<Tab>zi
|
||||
menutrans &View\ Cursor\ Line<Tab>zv 展开光标所在行(&V)<Tab>zv
|
||||
menutrans Vie&w\ Cursor\ Line\ Only<Tab>zMzx 只展开光标所在行(&W)<Tab>zMzx
|
||||
menutrans C&lose\ More\ Folds<Tab>zm 折叠一级(&L)<Tab>zm
|
||||
menutrans &Close\ All\ Folds<Tab>zM 折叠全部(&C)<Tab>zM
|
||||
menutrans O&pen\ More\ Folds<Tab>zr 展开一级(&P)<Tab>zr
|
||||
menutrans &Open\ All\ Folds<Tab>zR 展开全部(&O)<Tab>zR
|
||||
" fold method
|
||||
menutrans Fold\ Met&hod 折叠方法(&H)
|
||||
menutrans M&anual 手工(&A)
|
||||
menutrans Fold\ Met&hod 折叠方式(&H)
|
||||
" Tools.Fold.Fold Method menuitems {{{3
|
||||
menutrans M&anual 手动(&A)
|
||||
menutrans I&ndent 缩进(&N)
|
||||
menutrans E&xpression 表达式(&X)
|
||||
menutrans S&yntax 语法(&Y)
|
||||
menutrans &Diff 比较(Diff)(&D)
|
||||
menutrans Ma&rker 标记(&R)
|
||||
menutrans &Diff 差异(Diff)(&D)
|
||||
menutrans Ma&rker 记号(Marker)(&R)
|
||||
" }}}
|
||||
" create and delete folds
|
||||
menutrans Create\ &Fold<Tab>zf 创建折叠(&F)<Tab>zf
|
||||
menutrans &Delete\ Fold<Tab>zd 删除折叠(&D)<Tab>zd
|
||||
menutrans Delete\ &All\ Folds<Tab>zD 删除所有折叠(&A)<Tab>zD
|
||||
menutrans Delete\ &All\ Folds<Tab>zD 删除全部折叠(&A)<Tab>zD
|
||||
" moving around in folds
|
||||
menutrans Fold\ column\ &width 折叠栏宽度(&W)
|
||||
menutrans Fold\ Col&umn\ Width 折叠操作栏宽度(&W)
|
||||
" }}}
|
||||
|
||||
" Tools.Diff Menu
|
||||
menutrans &Diff 比较(Diff)(&D)
|
||||
menutrans &Update 更新(&U)
|
||||
menutrans &Get\ Block 得到块(&G)
|
||||
menutrans &Put\ Block 放置块(&P)
|
||||
menutrans &Diff 差异(Diff)(&D)
|
||||
" Tools.Diff menuitems {{{2
|
||||
menutrans &Update 刷新(&U)
|
||||
menutrans &Get\ Block 采用对侧文本块(&G)
|
||||
menutrans &Put\ Block 采用本侧文本块(&P)
|
||||
" }}}
|
||||
|
||||
menutrans &Make<Tab>:make Make(&M)<Tab>:make
|
||||
menutrans &Make<Tab>:make 生成(Make)(&M)<Tab>:make
|
||||
menutrans &List\ Errors<Tab>:cl 列出错误(&L)<Tab>:cl
|
||||
menutrans L&ist\ Messages<Tab>:cl! 列出消息(&I)<Tab>:cl!
|
||||
menutrans &Next\ Error<Tab>:cn 下一个错误(&N)<Tab>:cn
|
||||
menutrans &Previous\ Error<Tab>:cp 上一个错误(&P)<Tab>:cp
|
||||
menutrans &Older\ List<Tab>:cold 更旧的错误列表(&O)<Tab>:cold
|
||||
menutrans N&ewer\ List<Tab>:cnew 更新的错误列表(&E)<Tab>:cnew
|
||||
menutrans &Older\ List<Tab>:cold 较旧的错误列表(&O)<Tab>:cold
|
||||
menutrans N&ewer\ List<Tab>:cnew 较新的错误列表(&E)<Tab>:cnew
|
||||
menutrans Error\ &Window 错误窗口(&W)
|
||||
menutrans &Update<Tab>:cwin 更新(&U)<Tab>:cwin
|
||||
" Tools.Error Window menuitems {{{2
|
||||
menutrans &Update<Tab>:cwin 刷新(&U)<Tab>:cwin
|
||||
menutrans &Open<Tab>:copen 打开(&O)<Tab>:copen
|
||||
menutrans &Close<Tab>:cclose 关闭(&C)<Tab>:cclose
|
||||
menutrans &Convert\ to\ HEX<Tab>:%!xxd 转换成十六进制<Tab>:%!xxd
|
||||
menutrans Conve&rt\ back<Tab>:%!xxd\ -r 转换返回<Tab>:%!xxd\ -r
|
||||
menutrans Se&T\ Compiler 设定编译器(&T)
|
||||
" }}}
|
||||
menutrans Show\ Compiler\ Se&ttings\ in\ Menu 在菜单中显示编译器设置(&T)
|
||||
menutrans Se&t\ Compiler 设置编译器(&T)
|
||||
menutrans &Convert\ to\ HEX<Tab>:%!xxd 转换成十六进制(&C)<Tab>:%!xxd
|
||||
menutrans Conve&rt\ Back<Tab>:%!xxd\ -r 转换回(&R)<Tab>:%!xxd\ -r
|
||||
" }}}
|
||||
|
||||
" Names for buffer menu.
|
||||
" Buffer menu
|
||||
menutrans &Buffers 缓冲区(&B)
|
||||
menutrans &Refresh\ menu 更新菜单(&R)
|
||||
" Buffer menuitems and dialog {{{1
|
||||
menutrans &Refresh\ Menu 刷新本菜单(&R)
|
||||
menutrans &Delete 删除(&D)
|
||||
menutrans &Alternate 交替(&A)
|
||||
menutrans &Alternate 切换(&A)
|
||||
menutrans &Next 下一个(&N)
|
||||
menutrans &Previous 上一个(&P)
|
||||
|
||||
" func! s:BMMunge(fname, bnum)
|
||||
if !exists("g:menutrans_no_file")
|
||||
let g:menutrans_no_file = "[无文件]"
|
||||
endif
|
||||
" }}}
|
||||
|
||||
" Window menu
|
||||
menutrans &Window 窗口(&W)
|
||||
" Window menuitems {{{1
|
||||
menutrans &New<Tab>^Wn 新建(&N)<Tab>^Wn
|
||||
menutrans S&plit<Tab>^Ws 分割(&P)<Tab>^Ws
|
||||
menutrans Sp&lit\ To\ #<Tab>^W^^ 分割到\ #(&L)<Tab>^W^^
|
||||
menutrans Split\ &Vertically<Tab>^Wv 垂直分割(&V)<Tab>^Wv
|
||||
menutrans Split\ File\ E&xplorer 分割文件浏览器(&X)
|
||||
menutrans S&plit<Tab>^Ws 拆分(&P)<Tab>^Ws
|
||||
menutrans Sp&lit\ To\ #<Tab>^W^^ 拆分并显示缓冲区\ #(&L)<Tab>^W^^
|
||||
menutrans Split\ &Vertically<Tab>^Wv 垂直拆分(&V)<Tab>^Wv
|
||||
menutrans Split\ File\ E&xplorer 拆分并打开文件浏览器(&X)
|
||||
menutrans &Close<Tab>^Wc 关闭(&C)<Tab>^Wc
|
||||
menutrans Close\ &Other(s)<Tab>^Wo 关闭其它窗口(&O)<Tab>^Wo
|
||||
menutrans Close\ &Other(s)<Tab>^Wo 除此之外全部关闭(&O)<Tab>^Wo
|
||||
menutrans Move\ &To 移动到(&T)
|
||||
menutrans &Top<Tab>^WK 顶端(&T)<Tab>^WK
|
||||
menutrans &Bottom<Tab>^WJ 底端(&B)<Tab>^WJ
|
||||
menutrans &Left\ side<Tab>^WH 左边(&L)<Tab>^WH
|
||||
menutrans &Right\ side<Tab>^WL 右边(&R)<Tab>^WL
|
||||
" menutrans Ne&xt<Tab>^Ww 下一个(&X)<Tab>^Ww
|
||||
" menutrans P&revious<Tab>^WW 上一个(&R)<Tab>^WW
|
||||
menutrans &Left\ Side<Tab>^WH 左边(&L)<Tab>^WH
|
||||
menutrans &Right\ Side<Tab>^WL 右边(&R)<Tab>^WL
|
||||
menutrans Rotate\ &Up<Tab>^WR 向上轮换(&U)<Tab>^WR
|
||||
menutrans Rotate\ &Down<Tab>^Wr 向下轮换(&D)<Tab>^Wr
|
||||
menutrans &Equal\ Size<Tab>^W= 等大(&E)<Tab>^W=
|
||||
menutrans &Equal\ Size<Tab>^W= 平均分布(&E)<Tab>^W=
|
||||
menutrans &Max\ Height<Tab>^W_ 最大高度(&M)<Tab>^W
|
||||
menutrans M&in\ Height<Tab>^W1_ 最小高度(&I)<Tab>^W1_
|
||||
menutrans Max\ &Width<Tab>^W\| 最大宽度(&W)<Tab>^W\|
|
||||
menutrans Min\ Widt&h<Tab>^W1\| 最小宽度(&H)<Tab>^W1\|
|
||||
"
|
||||
" The popup menu
|
||||
" }}}
|
||||
|
||||
" The popup menu {{{1
|
||||
menutrans &Undo 撤销(&U)
|
||||
menutrans Cu&t 剪切(&T)
|
||||
menutrans &Copy 复制(&C)
|
||||
menutrans &Paste 粘贴(&P)
|
||||
menutrans &Delete 删除(&D)
|
||||
menutrans Select\ Blockwise 选择块
|
||||
menutrans Select\ &Word 选择单词(&W)
|
||||
menutrans Select\ &Sentence 选择句子(&S)
|
||||
menutrans Select\ Pa&ragraph 选择段落(&R)
|
||||
menutrans Select\ &Line 选择行(&L)
|
||||
menutrans Select\ &Block 选择块(&B)
|
||||
menutrans Select\ Blockwise 改为选定矩形块
|
||||
menutrans Select\ &Word 选定单词(&W)
|
||||
menutrans Select\ &Sentence 选定句(&S)
|
||||
menutrans Select\ Pa&ragraph 选定段落(&R)
|
||||
menutrans Select\ &Line 选定行(&L)
|
||||
menutrans Select\ &Block 选定矩形块(&B)
|
||||
menutrans Select\ &All 全选(&A)
|
||||
"
|
||||
" The GUI toolbar
|
||||
|
||||
" func! <SID>SpellPopup()
|
||||
if !exists("g:menutrans_spell_change_ARG_to")
|
||||
let g:menutrans_spell_change_ARG_to = '将\ "%s"\ 更改为'
|
||||
endif
|
||||
if !exists("g:menutrans_spell_add_ARG_to_word_list")
|
||||
let g:menutrans_spell_add_ARG_to_word_list = '将\ "%s"\ 添加到词典'
|
||||
endif
|
||||
if !exists("g:menutrans_spell_ignore_ARG")
|
||||
let g:menutrans_spell_ignore_ARG = '忽略\ "%s"'
|
||||
endif
|
||||
" }}}
|
||||
|
||||
" The GUI toolbar {{{1
|
||||
if has("toolbar")
|
||||
if exists("*Do_toolbar_tmenu")
|
||||
delfun Do_toolbar_tmenu
|
||||
endif
|
||||
fun Do_toolbar_tmenu()
|
||||
let did_toolbar_tmenu = 1
|
||||
tmenu ToolBar.Open 打开文件
|
||||
tmenu ToolBar.Save 保存当前文件
|
||||
tmenu ToolBar.SaveAll 保存全部文件
|
||||
tmenu ToolBar.SaveAll 全部保存
|
||||
tmenu ToolBar.Print 打印
|
||||
tmenu ToolBar.Undo 撤销
|
||||
tmenu ToolBar.Redo 重做
|
||||
tmenu ToolBar.Redo 恢复
|
||||
tmenu ToolBar.Cut 剪切到剪贴板
|
||||
tmenu ToolBar.Copy 复制到剪贴板
|
||||
tmenu ToolBar.Paste 从剪贴板粘贴
|
||||
tmenu ToolBar.Find 查找...
|
||||
if !has("gui_athena")
|
||||
tmenu ToolBar.Replace 查找和替换...
|
||||
tmenu ToolBar.FindNext 查找下一个
|
||||
tmenu ToolBar.FindPrev 查找上一个
|
||||
tmenu ToolBar.Replace 查找和替换...
|
||||
endif
|
||||
tmenu ToolBar.LoadSesn 加载会话
|
||||
tmenu ToolBar.SaveSesn 保存当前会话
|
||||
tmenu ToolBar.RunScript 运行 Vim 脚本
|
||||
tmenu ToolBar.Make 执行 Make (:make)
|
||||
tmenu ToolBar.RunCtags 在当前目录建立 tags (!ctags -R .)
|
||||
tmenu ToolBar.TagJump 跳转到光标位置的 tag
|
||||
tmenu ToolBar.Make 生成当前项目 (:make)
|
||||
tmenu ToolBar.RunCtags 在当前目录生成标记(Tags) (!ctags -R .)
|
||||
tmenu ToolBar.TagJump 跳转到光标所在标记(Tag)
|
||||
tmenu ToolBar.Help Vim 帮助
|
||||
tmenu ToolBar.FindHelp 查找 Vim 帮助
|
||||
tmenu ToolBar.FindHelp 在 Vim 帮助中查找
|
||||
endfun
|
||||
endif
|
||||
" }}}
|
||||
|
||||
" Syntax menu
|
||||
menutrans &Syntax 语法(&S)
|
||||
menutrans &Show\ filetypes\ in\ menu 在菜单中显示文件类型(&S)
|
||||
" Syntax menuitems {{{1
|
||||
menutrans &Show\ File\ Types\ in\ Menu 在菜单中显示文件类型(&S)
|
||||
menutrans &Off 关闭(&O)
|
||||
menutrans &Manual 手工(&M)
|
||||
menutrans &Manual 手动(&M)
|
||||
menutrans A&utomatic 自动(&U)
|
||||
menutrans on/off\ for\ &This\ file 仅对这个文件开/关(&T)
|
||||
menutrans Co&lor\ test 色彩测试(&L)
|
||||
menutrans &Highlight\ test 高亮测试(&H)
|
||||
menutrans On/Off\ for\ &This\ File 只对这个文件开/关(&T)
|
||||
menutrans Co&lor\ Test 色彩测试(&L)
|
||||
menutrans &Highlight\ Test 高亮测试(&H)
|
||||
menutrans &Convert\ to\ HTML 转换成\ HTML(&C)
|
||||
menutrans Set\ '&syntax'\ only 仅设定\ 'syntax'(&S)
|
||||
menutrans Set\ '&filetype'\ too 也设定\ 'filetype'(&F)
|
||||
" From synmenu.vim
|
||||
menutrans Set\ '&syntax'\ Only 只设置\ 'syntax'(&S)
|
||||
menutrans Set\ '&filetype'\ Too 也设置\ 'filetype'(&F)
|
||||
" }}}
|
||||
|
||||
" Netrw menu {{{1
|
||||
" Plugin loading may be after menu translation
|
||||
" So giveup testing if Netrw Plugin is loaded
|
||||
" if exists("g:loaded_netrwPlugin")
|
||||
menutrans Help<tab><F1> 帮助<tab><F1>
|
||||
menutrans Bookmarks 书签
|
||||
menutrans History 历史记录
|
||||
menutrans Go\ Up\ Directory<tab>- 向上一级<tab>-
|
||||
menutrans Apply\ Special\ Viewer<tab>x 用默认程序打开<tab>x
|
||||
menutrans Bookmarks\ and\ History 书签和历史记录
|
||||
" Netrw.Bookmarks and History menuitems {{{2
|
||||
menutrans Bookmark\ Current\ Directory<tab>mb 添加书签<tab>mb
|
||||
menutrans Bookmark\ Delete 移除书签
|
||||
menutrans Goto\ Prev\ Dir\ (History)<tab>u 后退(历史记录)<tab>u
|
||||
menutrans Goto\ Next\ Dir\ (History)<tab>U 前进(历史记录)<tab>U
|
||||
menutrans List<tab>qb 完整列表<tab>qb
|
||||
" }}}
|
||||
menutrans Browsing\ Control 控制
|
||||
" Netrw.Browsing Control menuitems {{{2
|
||||
menutrans Horizontal\ Split<tab>o 在拆分窗口打开<tab>o
|
||||
menutrans Vertical\ Split<tab>v 在垂直拆分窗口打开<tab>v
|
||||
menutrans New\ Tab<tab>t 在标签页打开<tab>t
|
||||
menutrans Preview<tab>p 预览<tab>p
|
||||
menutrans Edit\ File\ Hiding\ List<tab><ctrl-h> 编辑隐藏条件(Hiding\ List)<tab><ctrl-h>
|
||||
menutrans Edit\ Sorting\ Sequence<tab>S 编辑排序条件(Sorting\ Sequence)<tab>S
|
||||
menutrans Quick\ Hide/Unhide\ Dot\ Files<tab>gh 快速隐藏/显示以\.开头的文件<tab>gh
|
||||
menutrans Refresh\ Listing<tab><ctrl-l> 刷新<tab><ctrl-l>
|
||||
menutrans Settings/Options<tab>:NetrwSettings 设置/选项<tab>:NetrwSettings
|
||||
" }}}
|
||||
menutrans Delete\ File/Directory<tab>D 删除文件/目录<tab>D
|
||||
menutrans Edit\ File/Dir 编辑文件/目录
|
||||
" Netrw.Edit File menuitems {{{2
|
||||
menutrans Create\ New\ File<tab>% 新建文件<tab>%
|
||||
menutrans In\ Current\ Window<tab><cr> 在当前窗口<tab><cr>
|
||||
menutrans Preview\ File/Directory<tab>p 预览文件/目录<tab>p
|
||||
menutrans In\ Previous\ Window<tab>P 在上一个窗口<tab>P
|
||||
menutrans In\ New\ Window<tab>o 在新窗口<tab>o
|
||||
menutrans In\ New\ Tab<tab>t 在新标签页<tab>t
|
||||
menutrans In\ New\ Vertical\ Window<tab>v 在新垂直窗口<tab>v
|
||||
" }}}
|
||||
menutrans Explore 浏览
|
||||
" Netrw.Explore menuitems {{{2
|
||||
menutrans Directory\ Name 指定目录名
|
||||
menutrans Filenames\ Matching\ Pattern\ (curdir\ only)<tab>:Explore\ */ 匹配指定文件名模式(当前目录)<tab>:Explore\ */
|
||||
menutrans Filenames\ Matching\ Pattern\ (+subdirs)<tab>:Explore\ **/ 匹配指定文件名模式(含子目录)<tab>:Explore\ **/
|
||||
menutrans Files\ Containing\ String\ Pattern\ (curdir\ only)<tab>:Explore\ *// 内容包含指定字符串模式(当前目录)<tab>:Explore\ *//
|
||||
menutrans Files\ Containing\ String\ Pattern\ (+subdirs)<tab>:Explore\ **// 内容包含指定字符串模式(含子目录)<tab>:Explore\ **//
|
||||
menutrans Next\ Match<tab>:Nexplore 下一个匹配项<tab>:Nexplore
|
||||
menutrans Prev\ Match<tab>:Pexplore 上一个匹配项<tab>:Pexplore
|
||||
" }}}
|
||||
menutrans Make\ Subdirectory<tab>d 新建子目录<tab>d
|
||||
menutrans Marked\ Files 选定的(Marked)文件
|
||||
" Netrw.Marked Files menuitems {{{2
|
||||
menutrans Mark\ File<tab>mf 选定(Mark)/取消<tab>mf
|
||||
menutrans Mark\ Files\ by\ Regexp<tab>mr 用正则表达式(Regexp)选定<tab>mr
|
||||
menutrans Hide-Show-List\ Control<tab>a 隐藏/显示<tab>a
|
||||
menutrans Copy\ To\ Target<tab>mc 复制到目标<tab>mc
|
||||
menutrans Delete<tab>D 删除<tab>D
|
||||
menutrans Diff<tab>md 差异(Diff)<tab>md
|
||||
menutrans Edit<tab>me 编辑<tab>me
|
||||
menutrans Exe\ Cmd<tab>mx 作为参数运行命令<tab>mx
|
||||
menutrans Move\ To\ Target<tab>mm 移动到目标<tab>mm
|
||||
menutrans Obtain<tab>O 获取<tab>O
|
||||
menutrans Print<tab>mp 打印<tab>mp
|
||||
menutrans Replace<tab>R 替换<tab>R
|
||||
menutrans Set\ Target<tab>mt 设置目标<tab>mt
|
||||
menutrans Tag<tab>mT 生成标记文件(Tags)<tab>mT
|
||||
menutrans Zip/Unzip/Compress/Uncompress<tab>mz 压缩/解压缩<tab>mz
|
||||
" }}}
|
||||
menutrans Obtain\ File<tab>O 获取文件<tab>O
|
||||
menutrans Style 显示风格
|
||||
" Netrw.Style menuitems {{{2
|
||||
menutrans Listing 列表形式
|
||||
" Netrw.Style.Listing menuitems {{{3
|
||||
menutrans thin<tab>i 紧凑<thin)<tab>i
|
||||
menutrans long<tab>i 详细(long)<tab>i
|
||||
menutrans wide<tab>i 多列(wide)<tab>i
|
||||
menutrans tree<tab>i 树状(tree)<tab>i
|
||||
" }}}
|
||||
menutrans Normal-Hide-Show 显示/隐藏
|
||||
" Netrw.Style.Normal-Hide_show menuitems {{{3
|
||||
menutrans Show\ All<tab>a 显示全部
|
||||
menutrans Normal<tab>a 不显示隐藏文件
|
||||
menutrans Hidden\ Only<tab>a 只显示隐藏文件
|
||||
" }}}
|
||||
menutrans Reverse\ Sorting\ Order<tab>r 升序/降序<tab>r
|
||||
menutrans Sorting\ Method 排序方式
|
||||
" Netrw.Style.Sorting Method menuitems {{{3
|
||||
menutrans Name<tab>s 文件名<tab>s
|
||||
menutrans Time<tab>s 修改时间<tab>s
|
||||
menutrans Size<tab>s 大小<tab>s
|
||||
menutrans Exten<tab>s 扩展名<tab>s
|
||||
" }}}
|
||||
" }}}
|
||||
menutrans Rename\ File/Directory<tab>R 重命名文件/目录<tab>R
|
||||
menutrans Set\ Current\ Directory<tab>c 设置\ Vim\ 工作目录<tab>c
|
||||
menutrans Targets 目标
|
||||
" endif
|
||||
" }}}
|
||||
|
||||
let &cpo = s:keepcpo
|
||||
unlet s:keepcpo
|
||||
|
||||
" vim: set ts=4 sw=4 noet fdm=marker fdc=4 :
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
" You can also use this as a start for your own set of menus.
|
||||
"
|
||||
" Maintainer: Bram Moolenaar <Bram@vim.org>
|
||||
" Last Change: 2019 Jan 27
|
||||
" Last Change: 2019 Sep 26
|
||||
|
||||
" Note that ":an" (short for ":anoremenu") is often used to make a menu work
|
||||
" in all modes and avoid side effects from mappings defined by the user.
|
||||
@@ -29,7 +29,8 @@ if exists("v:lang") || &langmenu != ""
|
||||
let s:lang = v:lang
|
||||
endif
|
||||
" A language name must be at least two characters, don't accept "C"
|
||||
if strlen(s:lang) > 1
|
||||
" Also skip "en_US" to avoid picking up "en_gb" translations.
|
||||
if strlen(s:lang) > 1 && s:lang !~? '^en_us'
|
||||
" When the language does not include the charset add 'encoding'
|
||||
if s:lang =~ '^\a\a$\|^\a\a_\a\a$'
|
||||
let s:lang = s:lang . '.' . &enc
|
||||
@@ -359,8 +360,8 @@ func! s:SetupColorSchemes() abort
|
||||
let s:did_setup_color_schemes = 1
|
||||
|
||||
let n = globpath(&runtimepath, "colors/*.vim", 1, 1)
|
||||
let n += globpath(&runtimepath, "pack/*/start/*/colors/*.vim", 1, 1)
|
||||
let n += globpath(&runtimepath, "pack/*/opt/*/colors/*.vim", 1, 1)
|
||||
let n += globpath(&packpath, "pack/*/start/*/colors/*.vim", 1, 1)
|
||||
let n += globpath(&packpath, "pack/*/opt/*/colors/*.vim", 1, 1)
|
||||
|
||||
" Ignore case for VMS and windows, sort on name
|
||||
let names = sort(map(n, 'substitute(v:val, "\\c.*[/\\\\:\\]]\\([^/\\\\:]*\\)\\.vim", "\\1", "")'), 1)
|
||||
|
||||
@@ -429,6 +429,9 @@ if has("syntax")
|
||||
call append("$", "cursorline\thighlight the screen line of the cursor")
|
||||
call append("$", "\t(local to window)")
|
||||
call <SID>BinOptionL("cul")
|
||||
call append("$", "cursorlineopt\tspecifies which area 'cursorline' highlights")
|
||||
call append("$", "\t(local to window)")
|
||||
call <SID>OptionL("culopt")
|
||||
call append("$", "colorcolumn\tcolumns to highlight")
|
||||
call append("$", "\t(local to window)")
|
||||
call <SID>OptionL("cc")
|
||||
|
||||
@@ -65,8 +65,8 @@ command -nargs=* -complete=file -bang Termdebug call s:StartDebug(<bang>0, <f-ar
|
||||
command -nargs=+ -complete=file -bang TermdebugCommand call s:StartDebugCommand(<bang>0, <f-args>)
|
||||
|
||||
" Name of the gdb command, defaults to "gdb".
|
||||
if !exists('termdebugger')
|
||||
let termdebugger = 'gdb'
|
||||
if !exists('g:termdebugger')
|
||||
let g:termdebugger = 'gdb'
|
||||
endif
|
||||
|
||||
let s:pc_id = 12
|
||||
@@ -104,9 +104,14 @@ endfunc
|
||||
|
||||
func s:StartDebug_internal(dict)
|
||||
if exists('s:gdbwin')
|
||||
echoerr 'Terminal debugger already running'
|
||||
echoerr 'Terminal debugger already running, cannot run two'
|
||||
return
|
||||
endif
|
||||
if !executable(g:termdebugger)
|
||||
echoerr 'Cannot execute debugger program "' .. g:termdebugger .. '"'
|
||||
return
|
||||
endif
|
||||
|
||||
let s:ptywin = 0
|
||||
let s:pid = 0
|
||||
|
||||
@@ -511,6 +516,11 @@ func s:DecodeMessage(quotedText)
|
||||
" drop \n
|
||||
let i += 1
|
||||
continue
|
||||
elseif a:quotedText[i] == 't'
|
||||
" append \t
|
||||
let i += 1
|
||||
let result .= "\t"
|
||||
continue
|
||||
endif
|
||||
endif
|
||||
let result .= a:quotedText[i]
|
||||
@@ -610,12 +620,22 @@ func s:CommOutput(chan, msg)
|
||||
endfor
|
||||
endfunc
|
||||
|
||||
func s:GotoProgram()
|
||||
if has('win32')
|
||||
if executable('powershell')
|
||||
call system(printf('powershell -Command "add-type -AssemblyName microsoft.VisualBasic;[Microsoft.VisualBasic.Interaction]::AppActivate(%d);"', s:pid))
|
||||
endif
|
||||
else
|
||||
win_gotoid(s:ptywin)
|
||||
endif
|
||||
endfunc
|
||||
|
||||
" Install commands in the current window to control the debugger.
|
||||
func s:InstallCommands()
|
||||
let save_cpo = &cpo
|
||||
set cpo&vim
|
||||
|
||||
command Break call s:SetBreakpoint()
|
||||
command -nargs=? Break call s:SetBreakpoint(<q-args>)
|
||||
command Clear call s:ClearBreakpoint()
|
||||
command Step call s:SendCommand('-exec-step')
|
||||
command Over call s:SendCommand('-exec-next')
|
||||
@@ -633,7 +653,7 @@ func s:InstallCommands()
|
||||
|
||||
command -range -nargs=* Evaluate call s:Evaluate(<range>, <q-args>)
|
||||
command Gdb call win_gotoid(s:gdbwin)
|
||||
command Program call win_gotoid(s:ptywin)
|
||||
command Program call s:GotoProgram()
|
||||
command Source call s:GotoSourcewinOrCreateIt()
|
||||
command Winbar call s:InstallWinbar()
|
||||
|
||||
@@ -733,7 +753,7 @@ func s:DeleteCommands()
|
||||
endfunc
|
||||
|
||||
" :Break - Set a breakpoint at the cursor position.
|
||||
func s:SetBreakpoint()
|
||||
func s:SetBreakpoint(at)
|
||||
" Setting a breakpoint may not work while the program is running.
|
||||
" Interrupt to make it work.
|
||||
let do_continue = 0
|
||||
@@ -746,9 +766,11 @@ func s:SetBreakpoint()
|
||||
endif
|
||||
sleep 10m
|
||||
endif
|
||||
|
||||
" Use the fname:lnum format, older gdb can't handle --source.
|
||||
call s:SendCommand('-break-insert '
|
||||
\ . fnameescape(expand('%:p')) . ':' . line('.'))
|
||||
let at = empty(a:at) ?
|
||||
\ fnameescape(expand('%:p')) . ':' . line('.') : a:at
|
||||
call s:SendCommand('-break-insert ' . at)
|
||||
if do_continue
|
||||
call s:SendCommand('-exec-continue')
|
||||
endif
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
" netrwPlugin.vim: Handles file transfer and remote directory listing across a network
|
||||
" PLUGIN SECTION
|
||||
" Date: Feb 08, 2016
|
||||
" Date: Feb 08, 2016 (update for gx 2019 Sep 20)
|
||||
" Maintainer: Charles E Campbell <NdrOchip@ScampbellPfamily.AbizM-NOSPAM>
|
||||
" GetLatestVimScripts: 1075 1 :AutoInstall: netrw.vim
|
||||
" Copyright: Copyright (C) 1999-2013 Charles E. Campbell {{{1
|
||||
@@ -81,7 +81,7 @@ if !exists("g:netrw_nogx")
|
||||
if !hasmapto('<Plug>NetrwBrowseX')
|
||||
nmap <unique> gx <Plug>NetrwBrowseX
|
||||
endif
|
||||
nno <silent> <Plug>NetrwBrowseX :call netrw#BrowseX(netrw#GX(),netrw#CheckIfRemote(netrw#GX()))<cr>
|
||||
nno <silent> <Plug>NetrwBrowseX :call netrw#BrowseX(expand((exists("g:netrw_gx")? g:netrw_gx : '<cfile>')),netrw#CheckIfRemote())<cr>
|
||||
endif
|
||||
if maparg('gx','v') == ""
|
||||
if !hasmapto('<Plug>NetrwBrowseXVis')
|
||||
|
||||
20
runtime/syntax/bash.vim
Normal file
20
runtime/syntax/bash.vim
Normal file
@@ -0,0 +1,20 @@
|
||||
" Vim syntax file
|
||||
" Language: bash
|
||||
" Maintainer: Bram
|
||||
" Last Change: 2019 Sep 27
|
||||
|
||||
" quit when a syntax file was already loaded
|
||||
if exists("b:current_syntax")
|
||||
finish
|
||||
endif
|
||||
|
||||
" The actual syntax is in sh.vim and controlled by buffer-local variables.
|
||||
unlet! b:is_sh
|
||||
unlet! b:is_kornshell
|
||||
let b:is_bash = 1
|
||||
|
||||
runtime! syntax/sh.vim
|
||||
|
||||
let b:current_syntax = 'bash'
|
||||
|
||||
" vim: ts=8
|
||||
@@ -32,8 +32,8 @@ syn match zoneDomain contained /[^[:space:]!"#$%&'()*+,\/:;<=>?@[\]\
|
||||
|
||||
syn match zoneSpecial contained /^[@*.]\s/
|
||||
syn match zoneTTL contained /\s\@<=\d[0-9WwDdHhMmSs]*\(\s\|$\)\@=/ nextgroup=zoneClass,zoneRRType skipwhite
|
||||
syn keyword zoneClass contained IN CHAOS nextgroup=zoneRRType,zoneTTL skipwhite
|
||||
syn keyword zoneRRType contained A AAAA CNAME DNAME HINFO MX NS PTR SOA SRV TXT SPF nextgroup=zoneRData skipwhite
|
||||
syn keyword zoneClass contained IN CHAOS CH HS HESIOD nextgroup=zoneRRType,zoneTTL skipwhite
|
||||
syn keyword zoneRRType contained A AAAA CERT CNAME DNAME DNSKEY DS HINFO LOC MX NAPTR NS NSEC NSEC3 NSEC3PARAM PTR RP RRSIG SSHFP SOA SPF SRV TLSA TXT nextgroup=zoneRData skipwhite
|
||||
syn match zoneRData contained /[^;]*/ contains=zoneDomain,zoneIPAddr,zoneIP6Addr,zoneText,zoneNumber,zoneParen,zoneUnknown
|
||||
|
||||
syn match zoneIPAddr contained /\<[0-9]\{1,3}\(\.[0-9]\{1,3}\)\{,3}\>/
|
||||
|
||||
@@ -3,7 +3,7 @@
|
||||
" Maintainer: Debian Vim Maintainers
|
||||
" Former Maintainers: Gerfried Fuchs <alfie@ist.org>
|
||||
" Wichert Akkerman <wakkerma@debian.org>
|
||||
" Last Change: 2019 Apr 21
|
||||
" Last Change: 2019 Sep 07
|
||||
" URL: https://salsa.debian.org/vim-team/vim-debian/blob/master/syntax/debchangelog.vim
|
||||
|
||||
" Standard syntax initialization
|
||||
@@ -21,7 +21,7 @@ let s:binNMU='binary-only=yes'
|
||||
syn match debchangelogName contained "^[[:alnum:]][[:alnum:].+-]\+ "
|
||||
exe 'syn match debchangelogFirstKV contained "; \('.s:urgency.'\|'.s:binNMU.'\)"'
|
||||
exe 'syn match debchangelogOtherKV contained ", \('.s:urgency.'\|'.s:binNMU.'\)"'
|
||||
syn match debchangelogTarget contained "\v %(frozen|unstable|sid|%(testing|%(old)=stable)%(-proposed-updates|-security)=|experimental|%(squeeze|wheezy|jessie)-%(backports%(-sloppy)=|lts|security)|stretch%(-backports%(-sloppy)=|-security)=|buster%(-backports|-security)=|bullseye|%(devel|precise|trusty|vivid|wily|xenial|yakkety|zesty|artful|bionic|cosmic|disco|eoan)%(-%(security|proposed|updates|backports|commercial|partner))=)+"
|
||||
syn match debchangelogTarget contained "\v %(frozen|unstable|sid|%(testing|%(old)=stable)%(-proposed-updates|-security)=|experimental|%(squeeze|wheezy|jessie)-%(backports%(-sloppy)=|lts|security)|stretch%(-backports%(-sloppy)=|-security)=|buster%(-backports|-security)=|bullseye|bookworm|%(devel|precise|trusty|vivid|wily|xenial|yakkety|zesty|artful|bionic|cosmic|disco|eoan)%(-%(security|proposed|updates|backports|commercial|partner))=)+"
|
||||
syn match debchangelogVersion contained "(.\{-})"
|
||||
syn match debchangelogCloses contained "closes:\_s*\(bug\)\=#\=\_s\=\d\+\(,\_s*\(bug\)\=#\=\_s\=\d\+\)*"
|
||||
syn match debchangelogLP contained "\clp:\s\+#\d\+\(,\s*#\d\+\)*"
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
" Vim syntax file
|
||||
" Language: Debian copyright file
|
||||
" Maintainer: Debian Vim Maintainers
|
||||
" Last Change: 2018 Feb 05
|
||||
" Last Change: 2019 Sep 07
|
||||
" URL: https://salsa.debian.org/vim-team/vim-debian/blob/master/syntax/debcopyright.vim
|
||||
|
||||
" Standard syntax initialization
|
||||
@@ -15,7 +15,7 @@ set cpo&vim
|
||||
syn case match
|
||||
|
||||
syn match debcopyrightUrl "\vhttps?://[[:alnum:]][-[:alnum:]]*[[:alnum:]]?(\.[[:alnum:]][-[:alnum:]]*[[:alnum:]]?)*\.[[:alpha:]][-[:alnum:]]*[[:alpha:]]?(:\d+)?(/[^[:space:]]*)?$"
|
||||
syn match debcopyrightKey "^\%(Format\|Upstream-Name\|Upstream-Contact\|Disclaimer\|Source\|Comment\|Files\|Copyright\|License\): *"
|
||||
syn match debcopyrightKey "^\%(Format\|Upstream-Name\|Upstream-Contact\|Disclaimer\|Source\|Comment\|Files\|Copyright\|License\|Files-Excluded\%(-[-a-zA-Z0-9]\+\)\=\): *"
|
||||
syn match debcopyrightEmail "[_=[:alnum:]\.+-]\+@[[:alnum:]\./\-]\+"
|
||||
syn match debcopyrightEmail "<.\{-}>"
|
||||
syn match debcopyrightComment "^#.*$" contains=@Spell
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
" Language: Debian sources.list
|
||||
" Maintainer: Debian Vim Maintainers
|
||||
" Former Maintainer: Matthijs Mohlmann <matthijs@cacholong.nl>
|
||||
" Last Change: 2019 Apr 21
|
||||
" Last Change: 2019 Sep 07
|
||||
" URL: https://salsa.debian.org/vim-team/vim-debian/blob/master/syntax/debsources.vim
|
||||
|
||||
" Standard syntax initialization
|
||||
@@ -26,7 +26,7 @@ let s:supported = [
|
||||
\ 'wheezy', 'jessie', 'stretch', 'buster', 'bullseye', 'bookworm',
|
||||
\ 'sid', 'rc-buggy',
|
||||
\
|
||||
\ 'trusty', 'xenial', 'bionic', 'cosmic', 'disco', 'eoan', 'devel'
|
||||
\ 'trusty', 'xenial', 'bionic', 'disco', 'eoan', 'devel'
|
||||
\ ]
|
||||
let s:unsupported = [
|
||||
\ 'buzz', 'rex', 'bo', 'hamm', 'slink', 'potato',
|
||||
@@ -35,7 +35,7 @@ let s:unsupported = [
|
||||
\ 'warty', 'hoary', 'breezy', 'dapper', 'edgy', 'feisty',
|
||||
\ 'gutsy', 'hardy', 'intrepid', 'jaunty', 'karmic', 'lucid',
|
||||
\ 'maverick', 'natty', 'oneiric', 'precise', 'quantal', 'raring', 'saucy',
|
||||
\ 'utopic', 'vivid', 'wily', 'yakkety', 'zesty', 'artful'
|
||||
\ 'utopic', 'vivid', 'wily', 'yakkety', 'zesty', 'artful', 'cosmic'
|
||||
\ ]
|
||||
let &cpo=s:cpo
|
||||
|
||||
|
||||
@@ -1,12 +1,13 @@
|
||||
" Vim syntax file
|
||||
" Language: FreeBasic
|
||||
" Maintainer: Mark Manning <markem@airmail.net>
|
||||
" Updated: 10/22/2006
|
||||
" Maintainer: Mark Manning <markem@sim1.us>
|
||||
" Updated: 10/9/2019
|
||||
" Version: 7.0b
|
||||
"
|
||||
" Description:
|
||||
"
|
||||
" Based originally on the work done by Allan Kelly <Allan.Kelly@ed.ac.uk>
|
||||
" Updated by Mark Manning <markem@airmail.net>
|
||||
" Updated by Mark Manning <markem@sim1.us>
|
||||
" Applied FreeBasic support to the already excellent support
|
||||
" for standard basic syntax (like QB).
|
||||
"
|
||||
@@ -156,6 +157,10 @@ syn cluster freebasicParenGroup contains=freebasicParenError,freebasicSpecial,fr
|
||||
"
|
||||
syn region freebasicHex start="&h" end="\W"
|
||||
syn region freebasicHexError start="&h\x*[g-zG-Z]" end="\W"
|
||||
syn region freebasicOctal start="&o" end="\W"
|
||||
syn region freebasicOctalError start="&o[0-7]*[89a-zA-Z]" end="\W"
|
||||
syn region freebasicBinary start="&b" end="\W"
|
||||
syn region freebasicBinaryError start="&b[01]*[2-9a-zA-Z]" end="\W"
|
||||
syn match freebasicInteger "\<\d\+\(u\=l\=\|lu\|f\)\>"
|
||||
"
|
||||
" Floating point number, with dot, optional exponent
|
||||
@@ -170,11 +175,11 @@ syn match freebasicFloat "\.\d\+\(e[-+]\=\d\+\)\=[fl]\=\>"
|
||||
"
|
||||
syn match freebasicFloat "\<\d\+e[-+]\=\d\+[fl]\=\>"
|
||||
"
|
||||
" Hex number
|
||||
" Octal number
|
||||
"
|
||||
syn case match
|
||||
syn match freebasicOctal "\<0\o*\>"
|
||||
syn match freebasicOctalError "\<0\o*[89]"
|
||||
syn match freebasicOctal2 "\<0\o*\>"
|
||||
syn match freebasicOctal2Error "\<0\o*[89a-zA-Z]"
|
||||
"
|
||||
" String and Character contstants
|
||||
"
|
||||
@@ -183,7 +188,7 @@ syn region freebasicString start="'" end="'" contains=freebasicSpecial,freebasi
|
||||
"
|
||||
" Comments
|
||||
"
|
||||
syn match freebasicSpecial contained "\\."
|
||||
syn match freebasicSpecial contained "\\\\."
|
||||
syn region freebasicComment start="^rem" end="$" contains=freebasicSpecial,freebasicTodo
|
||||
syn region freebasicComment start=":\s*rem" end="$" contains=freebasicSpecial,freebasicTodo
|
||||
syn region freebasicComment start="\s*'" end="$" contains=freebasicSpecial,freebasicTodo
|
||||
@@ -197,8 +202,8 @@ syn region freebasicLineNumber start="^\d" end="\s"
|
||||
"
|
||||
" Create the clusters
|
||||
"
|
||||
syn cluster freebasicNumber contains=freebasicHex,freebasicOctal,freebasicInteger,freebasicFloat
|
||||
syn cluster freebasicError contains=freebasicHexError,freebasicOctalError
|
||||
syn cluster freebasicNumber contains=freebasicHex,freebasicOctal,freebasicOctal2,freebasicBinary,freebasicInteger,freebasicFloat
|
||||
syn cluster freebasicError contains=freebasicHexError,freebasicOctalError,freebasicOctal2,freebasicBinary
|
||||
"
|
||||
" Used with OPEN statement
|
||||
"
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
" Language: git config file
|
||||
" Maintainer: Tim Pope <vimNOSPAM@tpope.org>
|
||||
" Filenames: gitconfig, .gitconfig, *.git/config
|
||||
" Last Change: 2010 May 21
|
||||
" Last Change: 2019 Sep 27
|
||||
|
||||
if exists("b:current_syntax")
|
||||
finish
|
||||
@@ -13,7 +13,7 @@ setlocal iskeyword-=_
|
||||
syn case ignore
|
||||
syn sync minlines=10
|
||||
|
||||
syn match gitconfigComment "[#;].*"
|
||||
syn match gitconfigComment "[#;].*" contains=@Spell
|
||||
syn match gitconfigSection "\%(^\s*\)\@<=\[[a-z0-9.-]\+\]"
|
||||
syn match gitconfigSection '\%(^\s*\)\@<=\[[a-z0-9.-]\+ \+\"\%([^\\"]\|\\.\)*"\]'
|
||||
syn match gitconfigVariable "\%(^\s*\)\@<=\a\k*\%(\s*\%([=#;]\|$\)\)\@=" nextgroup=gitconfigAssignment skipwhite
|
||||
|
||||
@@ -1,8 +1,9 @@
|
||||
" Vim syntax file
|
||||
" Language: hog (Snort.conf + .rules)
|
||||
" Maintainer: Victor Roemer, <vroemer@badsec.org>.
|
||||
" Last Change: 2015 Oct 24 -> Rename syntax items from Snort -> Hog
|
||||
" Last Change: 2019 Sep 22
|
||||
" 2012 Oct 24 -> Originalish release
|
||||
" 2019 Sep 22 -> included PR 3069
|
||||
|
||||
" quit when a syntax file was already loaded
|
||||
if exists("b:current_syntax")
|
||||
@@ -91,7 +92,7 @@ syn match HogOpRange ":" contained
|
||||
|
||||
" Rules
|
||||
syn keyword HogRuleAction activate alert drop block dynamic log pass reject sdrop sblock skipwhite nextgroup=HogRuleProto,HogRuleBlock
|
||||
syn keyword HogRuleProto ip tcp udp icmp skipwhite contained nextgroup=HogRuleSrcIP
|
||||
syn keyword HogRuleProto ip tcp tcp-pkt tcp-stream udp icmp http ftp tls smb dns dcerpc ssh smtp imap msn modbus dnp3 enip nfs ikev2 ntp skipwhite contained nextgroup=HogRuleSrcIP
|
||||
syn match HogRuleSrcIP "\S\+" transparent skipwhite contained contains=HogIPVarList,HogIPAddr,HogVar,HogOpNot nextgroup=HogRuleSrcPort
|
||||
syn match HogRuleSrcPort "\S\+" transparent skipwhite contained contains=HogPortVarList,HogVar,HogPort,HogOpRange,HogOpNot nextgroup=HogRuleDir
|
||||
syn match HogRuleDir "->\|<>" skipwhite contained nextgroup=HogRuleDstIP
|
||||
@@ -100,13 +101,21 @@ syn match HogRuleDstPort "\S\+" transparent skipwhite contained contain
|
||||
syn region HogRuleBlock start="(" end=")" transparent skipwhite contained contains=HogRuleOption,HogComment fold
|
||||
",HogString,HogComment,HogVar,HogOptNot
|
||||
"syn region HogRuleOption start="\<gid\|sid\|rev\|depth\|offset\|distance\|within\>" end="\ze;" skipwhite contained contains=HogNumber
|
||||
syn keyword HogRuleOption skipwhite contained nextgroup=HogRuleSROP msg gid sid rev classtype priority metadata content nocase rawbytes
|
||||
syn keyword HogRuleOption skipwhite contained nextgroup=HogRuleSROP depth offset distance within http_client_body http_cookie http_raw_cookie http_header
|
||||
syn keyword HogRuleOption skipwhite contained nextgroup=HogRuleSROP http_raw_header http_method http_uri http_raw_uri http_stat_code http_stat_msg
|
||||
syn keyword HogRuleOption skipwhite contained nextgroup=HogRuleSROP fast_pattern uricontent urilen isdataat pcre pkt_data file_data base64_decode base64_data
|
||||
syn keyword HogRuleOption skipwhite contained nextgroup=HogRuleSROP byte_test byte_jump byte_extract ftpbounce asn1 cvs dce_iface dce_opnum dce_stub_data
|
||||
syn keyword HogRuleOption skipwhite contained nextgroup=HogRuleSROP msg gid sid rev classtype priority metadata target content nocase rawbytes
|
||||
syn keyword HogRuleOption skipwhite contained nextgroup=HogRuleSROP depth startswith offset distance within http_client_body http_cookie http_raw_cookie http_header
|
||||
syn keyword HogRuleOption skipwhite contained nextgroup=HogRuleSROP http_raw_header http_request_line http_method http_uri http_raw_uri http_protocol http_response_line http_stat_code http_stat_msg
|
||||
syn keyword HogRuleOption skipwhite contained nextgroup=HogRuleSROP http_user_agent http_accept http_accept_enc http_accept_lang http_connection http_content_type http_content_len
|
||||
syn keyword HogRuleOption skipwhite contained nextgroup=HogRuleSROP http_referer http_start http_header_names http_server_body http_host http_raw_host
|
||||
syn keyword HogRuleOption skipwhite contained nextgroup=HogRuleSROP filename fileext filemagic filestore filemd5 filesha1 filesha256 filesize
|
||||
syn keyword HogRuleOption skipwhite contained nextgroup=HogRuleSROP dns_query tls_cert_subject tls_cert_issuer tls_cert_serial tls_cert_fingerprint
|
||||
syn keyword HogRuleOption skipwhite contained nextgroup=HogRuleSROP tls_sni tls_cert_notbefore tls_cert_notafter tls_cert_expired tls_cert_valid
|
||||
syn keyword HogRuleOption skipwhite contained nextgroup=HogRuleSROP tls.version tls.subject tls.issuerdn tls.fingerprint tls.store ja3_hash ja3_string
|
||||
syn keyword HogRuleOption skipwhite contained nextgroup=HogRuleSROP modbus dnp3_func dnp3_ind dnp3_obj dnp3_data enip_command cip_service
|
||||
syn keyword HogRuleOption skipwhite contained nextgroup=HogRuleSROP app-layer-protocol app-layer-event xbits iprep lua luajit
|
||||
syn keyword HogRuleOption skipwhite contained nextgroup=HogRuleSROP fast_pattern prefilter uricontent urilen isdataat pcre pkt_data file_data base64_decode base64_data
|
||||
syn keyword HogRuleOption skipwhite contained nextgroup=HogRuleSROP byte_test byte_jump byte_extract ftpdata_command ftpbounce asn1 cvs dce_iface dce_opnum dce_stub_data
|
||||
syn keyword HogRuleOption skipwhite contained nextgroup=HogRuleSROP sip_method sip_stat_code sip_header sip_body gtp_type gtp_info gtp_version ssl_version
|
||||
syn keyword HogRuleOption skipwhite contained nextgroup=HogRuleSROP ssl_state fragoffset ttl tos id ipopts fragbits dsize flags flow flowbits seq ack window
|
||||
syn keyword HogRuleOption skipwhite contained nextgroup=HogRuleSROP ssl_state fragoffset ttl tos id ipopts geoip fragbits dsize flags flow flowbits flowint seq ack window
|
||||
syn keyword HogRuleOption skipwhite contained nextgroup=HogRuleSROP itype icode icmp_id icmp_seq rpc ip_proto sameip stream_reassemble stream_size
|
||||
syn keyword HogRuleOption skipwhite contained nextgroup=HogRuleSROP logto session resp react tag activates activated_by count replace detection_filter
|
||||
syn keyword HogRuleOption skipwhite contained nextgroup=HogRuleSROP threshold reference sd_pattern file_type file_group
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
" Language: Inno Setup File (iss file) and My InnoSetup extension
|
||||
" Maintainer: Jason Mills (jmills@cs.mun.ca)
|
||||
" Previous Maintainer: Dominique St<53>phan (dominique@mggen.com)
|
||||
" Last Change: 2004 Dec 14
|
||||
" Last Change: 2019 Sep 27
|
||||
"
|
||||
" Todo:
|
||||
" - The paramter String: is matched as flag string (because of case ignore).
|
||||
@@ -45,13 +45,13 @@ syn match issParam "Components:\|Description:\|GroupDescription:\|Types:\|Extra
|
||||
syn match issParam "StatusMsg:\|RunOnceId:\|Tasks:"
|
||||
syn match issParam "MessagesFile:\|LicenseFile:\|InfoBeforeFile:\|InfoAfterFile:"
|
||||
|
||||
syn match issComment "^\s*;.*$"
|
||||
syn match issComment "^\s*;.*$" contains=@Spell
|
||||
|
||||
" folder constant
|
||||
syn match issFolder "{[^{]*}"
|
||||
syn match issFolder "{[^{]*}" contains=@NoSpell
|
||||
|
||||
" string
|
||||
syn region issString start=+"+ end=+"+ contains=issFolder
|
||||
syn region issString start=+"+ end=+"+ contains=issFolder,@Spell
|
||||
|
||||
" [Dirs]
|
||||
syn keyword issDirsFlags deleteafterinstall uninsalwaysuninstall uninsneveruninstall
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
" Vim syntax file
|
||||
" Language: Jargon File
|
||||
" Maintainer: <rms@poczta.onet.pl>
|
||||
" Last Change: 2001 May 26
|
||||
" Maintainer: Dan Church (https://github.com/h3xx)
|
||||
" Last Change: 2019 Sep 27
|
||||
"
|
||||
" quit when a syntax file was already loaded
|
||||
if exists("b:current_syntax")
|
||||
@@ -11,7 +11,7 @@ endif
|
||||
syn match jargonChaptTitle /:[^:]*:/
|
||||
syn match jargonEmailAddr /[^<@ ^I]*@[^ ^I>]*/
|
||||
syn match jargonUrl +\(http\|ftp\)://[^\t )"]*+
|
||||
syn match jargonMark /{[^}]*}/
|
||||
syn region jargonMark start="{" end="}"
|
||||
|
||||
" Define the default highlighting.
|
||||
" Only when an item doesn't have highlighting yet
|
||||
|
||||
@@ -7,7 +7,7 @@
|
||||
" (ss) repaired several quoting and grouping glitches
|
||||
" (ss) fixed regex parsing issue with multiple qualifiers [gi]
|
||||
" (ss) additional factoring of keywords, globals, and members
|
||||
" Last Change: 2018 Jul 28
|
||||
" Last Change: 2019 Sep 27
|
||||
" 2013 Jun 12: adjusted javaScriptRegexpString (Kevin Locke)
|
||||
" 2018 Apr 14: adjusted javaScriptRegexpString (LongJohnCoder)
|
||||
|
||||
@@ -48,7 +48,7 @@ syn keyword javaScriptRepeat while for do in
|
||||
syn keyword javaScriptBranch break continue
|
||||
syn keyword javaScriptOperator new delete instanceof typeof
|
||||
syn keyword javaScriptType Array Boolean Date Function Number Object String RegExp
|
||||
syn keyword javaScriptStatement return with
|
||||
syn keyword javaScriptStatement return with await
|
||||
syn keyword javaScriptBoolean true false
|
||||
syn keyword javaScriptNull null undefined
|
||||
syn keyword javaScriptIdentifier arguments this var let
|
||||
@@ -58,7 +58,7 @@ syn keyword javaScriptMessage alert confirm prompt status
|
||||
syn keyword javaScriptGlobal self window top parent
|
||||
syn keyword javaScriptMember document event location
|
||||
syn keyword javaScriptDeprecated escape unescape
|
||||
syn keyword javaScriptReserved abstract boolean byte char class const debugger double enum export extends final float goto implements import int interface long native package private protected public short static super synchronized throws transient volatile
|
||||
syn keyword javaScriptReserved abstract boolean byte char class const debugger double enum export extends final float goto implements import int interface long native package private protected public short static super synchronized throws transient volatile async
|
||||
|
||||
syn cluster javaScriptEmbededExpr contains=javaScriptBoolean,javaScriptNull,javaScriptIdentifier,javaScriptStringD,javaScriptStringS,javaScriptStringT
|
||||
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
" Language: JSON
|
||||
" Maintainer: vacancy
|
||||
" Previous Maintainer: Eli Parra <eli@elzr.com>
|
||||
" Last Change: 2019 Jul 08
|
||||
" Last Change: 2019 Sep 17
|
||||
" Version: 0.12
|
||||
|
||||
if !exists("main_syntax")
|
||||
@@ -20,7 +20,7 @@ syntax match jsonNoise /\%(:\|,\)/
|
||||
" Syntax: JSON Keywords
|
||||
" Separated into a match and region because a region by itself is always greedy
|
||||
syn match jsonKeywordMatch /"\([^"]\|\\\"\)\+"[[:blank:]\r\n]*\:/ contains=jsonKeyword
|
||||
if has('conceal')
|
||||
if has('conceal') && (!exists("g:vim_json_conceal") || g:vim_json_conceal==1)
|
||||
syn region jsonKeyword matchgroup=jsonQuote start=/"/ end=/"\ze[[:blank:]\r\n]*\:/ concealends contained
|
||||
else
|
||||
syn region jsonKeyword matchgroup=jsonQuote start=/"/ end=/"\ze[[:blank:]\r\n]*\:/ contained
|
||||
@@ -31,7 +31,7 @@ endif
|
||||
" Needs to come after keywords or else a json encoded string will break the
|
||||
" syntax
|
||||
syn match jsonStringMatch /"\([^"]\|\\\"\)\+"\ze[[:blank:]\r\n]*[,}\]]/ contains=jsonString
|
||||
if has('conceal')
|
||||
if has('conceal') && (!exists("g:vim_json_conceal") || g:vim_json_conceal==1)
|
||||
syn region jsonString oneline matchgroup=jsonQuote start=/"/ skip=/\\\\\|\\"/ end=/"/ concealends contains=jsonEscape contained
|
||||
else
|
||||
syn region jsonString oneline matchgroup=jsonQuote start=/"/ skip=/\\\\\|\\"/ end=/"/ contains=jsonEscape contained
|
||||
|
||||
@@ -48,7 +48,7 @@ syn match ldSpecSections '\.\%(text\|data\|bss\|symver\)\>'
|
||||
|
||||
syn match ldNumber display '\<0[xX]\x\+\>'
|
||||
syn match ldNumber display '\d\+[KM]\>' contains=ldNumberMult
|
||||
syn match ldNumberMult display '[KM]\>'
|
||||
syn match ldNumberMult display '\(\d\+\)\@<=[KM]\>'
|
||||
syn match ldOctal contained display '\<0\o\+\>'
|
||||
\ contains=ldOctalZero
|
||||
syn match ldOctalZero contained display '\<0'
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
" Vim syntax file
|
||||
" Language: Reva Forth
|
||||
" Version: 2011.2
|
||||
" Last Change: 2012/02/13
|
||||
" Last Change: 2019 Sep 27
|
||||
" Maintainer: Ron Aaron <ron@ronware.org>
|
||||
" URL: http://ronware.org/reva/
|
||||
" Filetypes: *.rf *.frt
|
||||
@@ -150,7 +150,7 @@ syn match revaInclude '\<\(include\|needs\)\s\+\S\+'
|
||||
" Define the default highlighting.
|
||||
if !exists("did_reva_syntax_inits")
|
||||
let did_reva_syntax_inits=1
|
||||
" The default methods for highlighting. Can be overriden later.
|
||||
" The default methods for highlighting. Can be overridden later.
|
||||
hi def link revaEOF cIf0
|
||||
hi def link revaHelpStuff special
|
||||
hi def link revaHelpDesc Comment
|
||||
|
||||
@@ -3,7 +3,7 @@
|
||||
" Language: SPEC: Build/install scripts for Linux RPM packages
|
||||
" Maintainer: Igor Gnatenko i.gnatenko.brain@gmail.com
|
||||
" Former Maintainer: Donovan Rebbechi elflord@panix.com (until March 2014)
|
||||
" Last Change: 2019 May 07
|
||||
" Last Change: 2019 Sep 27
|
||||
|
||||
" quit when a syntax file was already loaded
|
||||
if exists("b:current_syntax")
|
||||
@@ -71,7 +71,7 @@ syn keyword specMacroNameOther contained buildroot buildsubdir distribution dist
|
||||
syn match specMacroNameOther contained '\<\(PATCH\|SOURCE\)\d*\>'
|
||||
|
||||
"valid _macro names from /usr/lib/rpm/macros
|
||||
syn keyword specMacroNameLocal contained _arch _binary_payload _bindir _build _build_alias _build_cpu _builddir _build_os _buildshell _buildsubdir _build_vendor _bzip2bin _datadir _dbpath _dbpath_rebuild _defaultdocdir _docdir _excludedocs _exec_prefix _fixgroup _fixowner _fixperms _ftpport _ftpproxy _gpg_path _gzipbin _host _host_alias _host_cpu _host_os _host_vendor _httpport _httpproxy _includedir _infodir _install_langs _install_script_path _instchangelog _langpatt _lib _libdir _libexecdir _localstatedir _mandir _netsharedpath _oldincludedir _os _pgpbin _pgp_path _prefix _preScriptEnvironment _provides _rpmdir _rpmfilename _sbindir _sharedstatedir _signature _sourcedir _source_payload _specdir _srcrpmdir _sysconfdir _target _target_alias _target_cpu _target_os _target_platform _target_vendor _timecheck _tmppath _topdir _usr _usrsrc _var _vendor
|
||||
syn keyword specMacroNameLocal contained _arch _binary_payload _bindir _build _build_alias _build_cpu _builddir _build_os _buildshell _buildsubdir _build_vendor _bzip2bin _datadir _dbpath _dbpath_rebuild _defaultdocdir _docdir _excludedocs _exec_prefix _fixgroup _fixowner _fixperms _ftpport _ftpproxy _gpg_path _gzipbin _host _host_alias _host_cpu _host_os _host_vendor _httpport _httpproxy _includedir _infodir _install_langs _install_script_path _instchangelog _langpatt _lib _libdir _libexecdir _localstatedir _mandir _netsharedpath _oldincludedir _os _pgpbin _pgp_path _prefix _preScriptEnvironment _provides _rpmdir _rpmfilename _sbindir _sharedstatedir _signature _sourcedir _source_payload _specdir _srcrpmdir _sysconfdir _target _target_alias _target_cpu _target_os _target_platform _target_vendor _timecheck _tmppath _topdir _usr _unitdir _usrsrc _var _vendor
|
||||
|
||||
|
||||
"------------------------------------------------------------------------------
|
||||
|
||||
@@ -5,7 +5,8 @@
|
||||
" Contributor: Leonard Ehrenfried <leonard.ehrenfried@web.de>
|
||||
" Contributor: Karsten Hopp <karsten@redhat.com>
|
||||
" Contributor: Dean, Adam Kenneth <adam.ken.dean@hpe.com>
|
||||
" Last Change: 2016 Dec 28
|
||||
" Last Change: 2019 Sep 09
|
||||
" Added RemoteCommand from pull request #4809
|
||||
" SSH Version: 7.4p1
|
||||
"
|
||||
|
||||
@@ -206,6 +207,7 @@ syn keyword sshconfigKeyword PubkeyAcceptedKeyTypes
|
||||
syn keyword sshconfigKeyword PubkeyAuthentication
|
||||
syn keyword sshconfigKeyword RSAAuthentication
|
||||
syn keyword sshconfigKeyword RekeyLimit
|
||||
syn keyword sshconfigKeyword RemoteCommand
|
||||
syn keyword sshconfigKeyword RemoteForward
|
||||
syn keyword sshconfigKeyword RequestTTY
|
||||
syn keyword sshconfigKeyword RhostsRSAAuthentication
|
||||
|
||||
@@ -28,6 +28,9 @@ syn keyword vimCommand contained al[l] argg[lobal] b[uffer] bl[ast] brea[k] buff
|
||||
syn match vimCommand contained "\<z[-+^.=]\=\>"
|
||||
syn keyword vimStdPlugin contained Arguments Break Cfilter Clear Continue DiffOrig Evaluate Finish Gdb Lfilter Man N[ext] Over P[rint] Program Run S Source Step Stop Termdebug TermdebugCommand TOhtml Winbar XMLent XMLns
|
||||
|
||||
" added later
|
||||
syn keyword vimCommand contained eval
|
||||
|
||||
" vimOptions are caught only when contained in a vimSet {{{2
|
||||
syn keyword vimOption contained acd ambw arshape background ballooneval bex bl brk buftype cf cinkeys cmdwinheight com conceallevel crb cscopeverbose cuc def diffexpr ea ei ep eventignore fdi fenc fileformat fkmap foldexpr foldopen fsync gfw guicursor guitabtooltip hidden hlg imactivatefunc imi inc inex isident keymap langnoremap linespace loadplugins ma matchtime mef mle modelineexpr mousehide mps nu opendevice paste pex pmbcs printdevice printoptions pw qe relativenumber rightleft rs runtimepath scr sect sft shellredir shiftwidth showmatch signcolumn smarttab sp spf srr startofline suffixes switchbuf ta tagfunc tbi term termwintype tgc titlelen toolbariconsize ttimeout ttymouse twt undofile varsofttabstop verbosefile viminfofile wak weirdinvert wig wildoptions winheight wm wrapscan
|
||||
syn keyword vimOption contained ai anti autochdir backspace balloonevalterm bexpr bo browsedir casemap cfu cino cmp comments confirm cryptmethod cspc cul define diffopt ead ek equalalways ex fdl fencs fileformats flp foldignore foldtext ft ghr guifont helpfile highlight hls imactivatekey iminsert include inf isk keymodel langremap lisp lpl macatsui maxcombine menc mls modelines mousem msm number operatorfunc pastetoggle pexpr pmbfn printencoding prompt pythondll quoteescape remap rightleftcmd rtp sb scroll sections sh shellslash shm showmode siso smc spc spl ss statusline suffixesadd sws tabline taglength tbidi termbidi terse tgst titleold top ttimeoutlen ttyscroll tx undolevels vartabstop vfile virtualedit warn wfh wildchar wim winminheight wmh write
|
||||
|
||||
@@ -3,6 +3,7 @@
|
||||
" Maintainer: Nikolai Pavlov <zyx.vim@gmail.com>
|
||||
" First author: Nikolai Weibull <now@bitwi.se>
|
||||
" Latest Revision: 2015-03-28
|
||||
" removed duplicate yamlKeyValueDelimiter (pull #4799)
|
||||
|
||||
if exists('b:current_syntax')
|
||||
finish
|
||||
@@ -149,7 +150,6 @@ execute 'syn match yamlBlockMappingKey /\%#=1\s*\zs'.s:ns_plain_out.'\%(\s\+'.s:
|
||||
syn match yamlBlockMappingMerge /^\s*\zs<<\ze:\%(\s\|$\)/ nextgroup=yamlKeyValueDelimiter
|
||||
syn match yamlBlockMappingMerge /<<\ze\s*:\%(\s\|$\)/ nextgroup=yamlKeyValueDelimiter contained
|
||||
|
||||
syn match yamlKeyValueDelimiter /\s*:/ contained
|
||||
syn match yamlKeyValueDelimiter /\s*:/ contained
|
||||
|
||||
syn cluster yamlScalarWithSpecials contains=yamlPlainScalar,yamlBlockMappingKey,yamlFlowMappingKey
|
||||
|
||||
@@ -2,12 +2,12 @@
|
||||
= Добре дошли в самоучителя на V I M - Версия 1.7 =
|
||||
===============================================================================
|
||||
|
||||
Vim е много мощен редактор с много команди, твърде много, за да бъдат
|
||||
Vim е много мощен редактор с много команди - твърде много, за да бъдат
|
||||
обяснени в ръководство като това. Този самоучител е създаден, за да обясни
|
||||
достатъчно от тях, така че да можете да използвате Vim за всякакви цели.
|
||||
|
||||
Приблизителното време, необходимо, за да направите уроците е 25-30 минути, в
|
||||
зависимост от това колко време използвате за да се упражнявате.
|
||||
Времето, необходимо за уроците, е около 25-30 минути, в зависимост от
|
||||
това, колко време ви трябва за упражненията.
|
||||
|
||||
ВНИМАНИЕ!
|
||||
Командите в уроците ще променят текста им. Запишете файла другаде, за да
|
||||
@@ -19,8 +19,8 @@
|
||||
правилно. Ако просто четете текста, ще забравите командите!
|
||||
|
||||
|
||||
Сега, уверете се, че клавишът CapsLock не е натиснат и натиснете клавиша
|
||||
j няколко пъти, така че Урок 1.1 да да се побере на екрана.
|
||||
И така, уверете се, че клавишът CapsLock не е натиснат, и натиснете клавиша
|
||||
j няколко пъти, така че Урок 1.1 да се побере на екрана.
|
||||
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
Урок 1.1: ПРИДВИЖВАНЕ НА ПОКАЗАЛЕЦА
|
||||
@@ -34,7 +34,7 @@
|
||||
v
|
||||
1. Движете показалеца насам-натам по екрана, докато свикнете.
|
||||
|
||||
2. Задръжте клавиша за преместване надолу(j), докато започне да повтаря
|
||||
2. Задръжте клавиша за преместване надолу (j), докато започне да повтаря
|
||||
действието си. Сега знаете как да се придвижите до следващия урок.
|
||||
|
||||
3. Използвайте клавиша за движение надолу, за да стигнете до Урок 1.2.
|
||||
@@ -43,7 +43,7 @@
|
||||
отидете в нормален режим. След това въведете желаната команда отново.
|
||||
|
||||
Важно! Клавишите със стрелки би трябвало също да работят, но ако използвате
|
||||
hjkl ще можете да се придвижвате по-бързо, като свикнете. Наистина!
|
||||
hjkl ще можете да се придвижвате по-бързо, след като свикнете. Наистина!
|
||||
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
Урок 1.2: Излизане от VIM (quit)
|
||||
@@ -80,13 +80,13 @@
|
||||
2. За да поправите грешките, придвижете показалеца върху буквата,
|
||||
която ще триете.
|
||||
|
||||
3. Натиснете клавиша x , за да изтриете нежеланата буква.
|
||||
3. Натиснете клавиша x, за да изтриете нежеланата буква.
|
||||
|
||||
4. Повтаряйте стъпки от 2 до 4 докато поправите изречението.
|
||||
4. Повтаряйте стъпки от 2 до 4, докато поправите изречението.
|
||||
|
||||
---> Кккравата сскоочии връъъъзз ллуннатааа.
|
||||
|
||||
5. След като горния ред е вече поправен, можем да отидем на Урок 1.4.
|
||||
5. След като горният ред е вече поправен, можем да отидем на Урок 1.4.
|
||||
|
||||
Важно! Като правите този урок, не се опитвайте да помните, учете се с правене.
|
||||
|
||||
@@ -104,26 +104,25 @@
|
||||
|
||||
Натиснете <ESC>, за да се уверите, че не сте в режим за въвеждане.
|
||||
|
||||
Въведете ":setlocal keymap=bulgarian-phonetic" или
|
||||
":setlocal keymap=bulgarian-bds", без кавичките, в зависимост от това коя
|
||||
подредба предпочитате. Забележете, че щом въведете : , те ще се появят в
|
||||
дъното на екрана. Вече можете да въвеждате български букви без да ползвате
|
||||
системната клавиатурна подредба.
|
||||
Въведете ":set keymap=bulgarian-phonetic" или ":set keymap=bulgarian-bds"
|
||||
(без кавичките!), в зависимост от това коя подредба предпочитате. Забележете,
|
||||
че щом въведете : , те ще се появят в дъното на екрана. Вече можете да
|
||||
въвеждате български букви, без да ползвате системната клавиатурна подредба.
|
||||
|
||||
За да превключвате между двете подредби, докато сте в режим за въвеждане
|
||||
За да превключвате между двете подредби, докато сте в режим за въвеждане,
|
||||
натискайте CTRL-^ (дръжте натиснати CTRL и SHIFT и натиснете ^).
|
||||
|
||||
|
||||
** Натиснете i за да въведете текст. **
|
||||
** Натиснете i, за да въведете текст. **
|
||||
|
||||
1. Придвижете показалеца до първия ред долу, означен със --->.
|
||||
|
||||
2. За да направите първия ред същия като втория, придвижете показалеца върху
|
||||
първата буква СЛЕД мястото, където трябва да бъде въведен текста.
|
||||
първата буква СЛЕД мястото, където трябва да бъде въведен текстът.
|
||||
|
||||
3. Натиснете i и напишете каквото трябва да се добави.
|
||||
|
||||
4. След поправяне на всяка грешка, натискайте <ESC>, за да се върнете към
|
||||
4. След поправяне на всяка грешка натискайте <ESC>, за да се върнете към
|
||||
Нормален режим. Повтаряйте стъпки от 2 до 4, докато поправите изречението.
|
||||
|
||||
---> Част текс липс н тзи .
|
||||
@@ -211,21 +210,22 @@
|
||||
|
||||
** Въведете dw , за да изтриете дума. **
|
||||
|
||||
1. Натиснете <ESC> , за да се уверите, че сте в Нормален режим.
|
||||
1. Натиснете <ESC>, за да се уверите, че сте в Нормален режим.
|
||||
|
||||
2. Придвижете показалеца до реда по-долу, означен със --->.
|
||||
|
||||
3. Придвижете показалеца до началото на думата, която трябва да бъде изтрита.
|
||||
|
||||
4. Натиснете последователно dw и думата ще изчезне.
|
||||
4. Натиснете последователно dw , и думата ще изчезне.
|
||||
|
||||
Забележка! Буквата d ще се появи на последния ред от екрана, когато я
|
||||
натиснете. Vim ви чака да натиснете w . Ако видите друга буква, значи сте
|
||||
натиснете. Vim ви чака да натиснете w. Ако видите друга буква, значи сте
|
||||
натиснали грешен клавиш. Натиснете <ESC> и започнете отначало.
|
||||
|
||||
---> Има някои думи хартия, които забава не са част от това изречение.
|
||||
|
||||
5. Повтаряйте стъпки 3 и 4, докато поправите изречението и преминете към Урок 2.2.
|
||||
5. Повтаряйте стъпки 3 и 4, докато поправите изречението, и преминете към
|
||||
Урок 2.2.
|
||||
|
||||
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
@@ -234,7 +234,7 @@
|
||||
|
||||
** Въведете d$ , за да изтриете всичко до края на реда. **
|
||||
|
||||
1. Натиснете <ESC> , за да се уверите, че сте в Нормален режим.
|
||||
1. Натиснете <ESC>, за да се уверите, че сте в Нормален режим.
|
||||
|
||||
2. Придвижете показалеца до реда по-долу, означен със --->.
|
||||
|
||||
@@ -255,7 +255,7 @@
|
||||
Урок 2.3: ЗА ОПЕРАТОРИТЕ И ДВИЖЕНИЯТА
|
||||
|
||||
|
||||
Много команди, които променят текст се състоят от оператор и движение.
|
||||
Много команди, които променят текст, се състоят от оператор и движение.
|
||||
Форматът за командата за изтриване с оператора d (delete) е както следва.
|
||||
|
||||
d движение
|
||||
@@ -265,11 +265,11 @@
|
||||
движение - върху какво ще се приложи операторът (списъкът долу).
|
||||
|
||||
Кратък списък с движения:
|
||||
w - (word) до началото на следващата дума като се ИЗКЛЮЧВА първата ѝ буква.
|
||||
w - (word) до началото на следващата дума, като се ИЗКЛЮЧВА първата ѝ буква.
|
||||
e - (end of word) до края на текущата дума, ВКЛЮЧИТЕЛНО последната буква.
|
||||
$ - До края на реда, ВКЛЮЧИТЕЛНО последния символ.
|
||||
|
||||
Така, като въведете de ще изтриете от мястото на показалеца до края на
|
||||
Така, като въведете de, ще изтриете от мястото на показалеца до края на
|
||||
думата.
|
||||
|
||||
Забележка! Като натиснете само клавиша за движение, ще преместите показалеца на
|
||||
@@ -330,7 +330,7 @@
|
||||
|
||||
** Въведете dd , за да изтриете цял ред. **
|
||||
|
||||
Понеже често се налага да се трие цял ред, създателите на Vi са решили, че ще
|
||||
Понеже често се налага да се трие цял ред, създателите на Vim са решили, че ще
|
||||
е по-лесно да се натисне два пъти d, за да се изтрие ред.
|
||||
|
||||
1. Придвижете показалеца на втория ред в абзаца долу.
|
||||
@@ -354,15 +354,15 @@
|
||||
** Натиснете u , за да отмените (undo) последната команда; U , за
|
||||
отмяна на всички команди на текущия ред. **
|
||||
|
||||
1. Придвижете показалеца до началото на реда долу , означен със ---> и го
|
||||
1. Придвижете показалеца до началото на реда долу, означен със --->, и го
|
||||
поставете на първата грешка.
|
||||
2. Въведете x , за да изтриете първата нежелана буква.
|
||||
3. Сега натиснете u , за да отмените последната изпълнена команда.
|
||||
4. Този път поправете всички грешки като използвате командата x .
|
||||
4. Този път поправете всички грешки, като използвате командата x.
|
||||
5. Сега въведете главно U (SHIFT+U), за да върнете реда в първоначалния му вид.
|
||||
6. Сега натиснете u няколко пъти, за да отмените предишното U и командите
|
||||
6. А сега натиснете u няколко пъти, за да отмените предишното U и командите
|
||||
преди него.
|
||||
7. Сега натиснете CTRL-R (redo) (дръжте клавиша CTRL натиснат, докато натискате R),
|
||||
7. Сега натиснете CTRL-R (redo) (дръжте клавиша CTRL натиснат, докато натискате R)
|
||||
неколкократно, за да изпълните отново командите (да отмените отмените).
|
||||
|
||||
---> Пооправеете грешшките нна този реди и ги заменете с отмянаа.
|
||||
@@ -473,18 +473,18 @@
|
||||
|
||||
** Операторът за промяна се използва със същите движения както при триене **
|
||||
|
||||
1. Операторът за промяна работи по същия начин като оператора за триене.
|
||||
1. Операторът за промяна работи по същия начин като операторът за триене.
|
||||
Форматът е:
|
||||
|
||||
c [число] движение
|
||||
|
||||
2. Движенията са същите, например: w (word) и $ (край на ред).
|
||||
|
||||
3. Отидете на първия ред долу, отбелязан с --->.
|
||||
3. Отидете на първия ред долу, отбелязан със --->.
|
||||
|
||||
4. Придвижете показалеца до първата грешка.
|
||||
|
||||
5. Въведете c$ и допишете остатъка от реда така, че да стане същия като
|
||||
5. Въведете c$ и допишете остатъка от реда така, че да стане същият като
|
||||
долния ред. След това натиснете <ESC>.
|
||||
|
||||
---> Краят на този ред трябва да изглежда като долния.
|
||||
@@ -524,9 +524,9 @@
|
||||
|
||||
Внимание! Прочетете целия урок, преди да изпълните стъпките в него!
|
||||
|
||||
1. Задръжте натиснат клавиша Ctrl и натиснете g . Това действие го наричаме
|
||||
1. Задръжте натиснат клавиша Ctrl и натиснете g. Това действие го наричаме
|
||||
CTRL-G. В дъното на екрана ще се появи съобщение с името на файла и
|
||||
мястото, където се намира показалеца. Запомнете номера на реда за стъпка 3.
|
||||
мястото, където се намира показалецът. Запомнете номера на реда за стъпка 3.
|
||||
|
||||
Забележка: Може би виждате мястото на показалеца в долния десен ъгъл на екрана.
|
||||
Това се случва, когато настройката 'ruler' е зададена (вижте :help 'ruler' )
|
||||
@@ -534,7 +534,7 @@
|
||||
2. Натиснете G , за да отидете в края на файла.
|
||||
Въведете gg , за да отидете в началото на файла.
|
||||
|
||||
3. Въведете номера на реда, на който бяхте и след това натиснете G . Това ще
|
||||
3. Въведете номера на реда, на който бяхте, и след това натиснете G. Това ще
|
||||
ви върне на мястото където бяхте, когато натиснахте CTRL-G.
|
||||
|
||||
4. Ако вече се чувствате уверени, изпълнете стъпките от 1 до 3.
|
||||
|
||||
@@ -19,6 +19,7 @@ Comment=Edit text files
|
||||
# be overwritten by the po file when generating the desktop.file.
|
||||
GenericName[da]=Teksteditor
|
||||
GenericName[pl]=Edytor tekstu
|
||||
GenericName[sr]=Едитор текста
|
||||
GenericName[is]=Ritvinnsluforrit
|
||||
Comment[af]=Redigeer tekslêers
|
||||
Comment[am]=የጽሑፍ ፋይሎች ያስተካክሉ
|
||||
|
||||
@@ -17,4 +17,4 @@ REGEDIT4
|
||||
|
||||
[HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\Uninstall\Vim 8.1]
|
||||
"DisplayName"="Vim 8.1: Edit with Vim popup menu entry"
|
||||
"UninstallString"="uninstal.exe"
|
||||
"UninstallString"="uninstall.exe"
|
||||
|
||||
@@ -11,7 +11,7 @@ registry entries.
|
||||
|
||||
In special situations you might want to make changes by hand. Check these
|
||||
items:
|
||||
- The gvimext.dll, gvim.exe and uninstal.exe either need to be in the search
|
||||
- The gvimext.dll, gvim.exe and uninstall.exe either need to be in the search
|
||||
path, or you have to set the full path in the registry entries. You could
|
||||
move the gvimext.dll to the "windows\system" or "windows\system32"
|
||||
directory, where the other DLL files are.
|
||||
|
||||
@@ -57,7 +57,6 @@
|
||||
#pragma data_seg(".text")
|
||||
#define INITGUID
|
||||
#include <initguid.h>
|
||||
#include <shlguid.h>
|
||||
|
||||
//
|
||||
// The class ID of this Shell extension class.
|
||||
|
||||
@@ -1023,7 +1023,7 @@ correct directory structure.
|
||||
Move the "vim81" subdirectory into the subdirectory where you want Vim
|
||||
to be installed. Typically, this subdirectory will be named "vim".
|
||||
If you already have a "vim81" subdirectory in "vim", delete it first
|
||||
by running its uninstal.exe program.
|
||||
by running its uninstall.exe program.
|
||||
|
||||
E. Install Vim
|
||||
---------------
|
||||
|
||||
@@ -709,6 +709,7 @@ OBJ = \
|
||||
$(OUTDIR)/blob.o \
|
||||
$(OUTDIR)/blowfish.o \
|
||||
$(OUTDIR)/buffer.o \
|
||||
$(OUTDIR)/bufwrite.o \
|
||||
$(OUTDIR)/change.o \
|
||||
$(OUTDIR)/charset.o \
|
||||
$(OUTDIR)/cmdexpand.o \
|
||||
@@ -719,10 +720,14 @@ OBJ = \
|
||||
$(OUTDIR)/dict.o \
|
||||
$(OUTDIR)/diff.o \
|
||||
$(OUTDIR)/digraph.o \
|
||||
$(OUTDIR)/drawline.o \
|
||||
$(OUTDIR)/drawscreen.o \
|
||||
$(OUTDIR)/edit.o \
|
||||
$(OUTDIR)/eval.o \
|
||||
$(OUTDIR)/evalbuffer.o \
|
||||
$(OUTDIR)/evalfunc.o \
|
||||
$(OUTDIR)/evalvars.o \
|
||||
$(OUTDIR)/evalwindow.o \
|
||||
$(OUTDIR)/ex_cmds.o \
|
||||
$(OUTDIR)/ex_cmds2.o \
|
||||
$(OUTDIR)/ex_docmd.o \
|
||||
@@ -750,19 +755,22 @@ OBJ = \
|
||||
$(OUTDIR)/message.o \
|
||||
$(OUTDIR)/misc1.o \
|
||||
$(OUTDIR)/misc2.o \
|
||||
$(OUTDIR)/mouse.o \
|
||||
$(OUTDIR)/move.o \
|
||||
$(OUTDIR)/mbyte.o \
|
||||
$(OUTDIR)/normal.o \
|
||||
$(OUTDIR)/ops.o \
|
||||
$(OUTDIR)/option.o \
|
||||
$(OUTDIR)/optionstr.o \
|
||||
$(OUTDIR)/os_mswin.o \
|
||||
$(OUTDIR)/os_win32.o \
|
||||
$(OUTDIR)/pathdef.o \
|
||||
$(OUTDIR)/popupmnu.o \
|
||||
$(OUTDIR)/popupmenu.o \
|
||||
$(OUTDIR)/popupwin.o \
|
||||
$(OUTDIR)/profiler.o \
|
||||
$(OUTDIR)/quickfix.o \
|
||||
$(OUTDIR)/regexp.o \
|
||||
$(OUTDIR)/register.o \
|
||||
$(OUTDIR)/scriptfile.o \
|
||||
$(OUTDIR)/screen.o \
|
||||
$(OUTDIR)/search.o \
|
||||
@@ -771,6 +779,7 @@ OBJ = \
|
||||
$(OUTDIR)/sign.o \
|
||||
$(OUTDIR)/spell.o \
|
||||
$(OUTDIR)/spellfile.o \
|
||||
$(OUTDIR)/spellsuggest.o \
|
||||
$(OUTDIR)/syntax.o \
|
||||
$(OUTDIR)/tag.o \
|
||||
$(OUTDIR)/term.o \
|
||||
@@ -861,7 +870,7 @@ ifeq ($(TERMINAL),yes)
|
||||
OBJ += $(OUTDIR)/terminal.o \
|
||||
$(OUTDIR)/encoding.o \
|
||||
$(OUTDIR)/keyboard.o \
|
||||
$(OUTDIR)/mouse.o \
|
||||
$(OUTDIR)/termmouse.o \
|
||||
$(OUTDIR)/parser.o \
|
||||
$(OUTDIR)/pen.o \
|
||||
$(OUTDIR)/termscreen.o \
|
||||
@@ -1007,7 +1016,7 @@ ifeq (yes, $(MAP))
|
||||
LFLAGS += -Wl,-Map=$(TARGET).map
|
||||
endif
|
||||
|
||||
all: $(MAIN_TARGET) vimrun.exe xxd/xxd.exe tee/tee.exe install.exe uninstal.exe GvimExt/gvimext.dll
|
||||
all: $(MAIN_TARGET) vimrun.exe xxd/xxd.exe tee/tee.exe install.exe uninstall.exe GvimExt/gvimext.dll
|
||||
|
||||
vimrun.exe: vimrun.c
|
||||
$(CC) $(CFLAGS) -o vimrun.exe vimrun.c $(LIB)
|
||||
@@ -1015,8 +1024,8 @@ vimrun.exe: vimrun.c
|
||||
install.exe: dosinst.c
|
||||
$(CC) $(CFLAGS) -o install.exe dosinst.c $(LIB) -lole32 -luuid
|
||||
|
||||
uninstal.exe: uninstal.c
|
||||
$(CC) $(CFLAGS) -o uninstal.exe uninstal.c $(LIB) -lole32
|
||||
uninstall.exe: uninstall.c
|
||||
$(CC) $(CFLAGS) -o uninstall.exe uninstall.c $(LIB) -lole32
|
||||
|
||||
ifeq ($(VIMDLL),yes)
|
||||
$(TARGET): $(OUTDIR) $(OBJ)
|
||||
@@ -1060,7 +1069,7 @@ clean:
|
||||
-$(DEL) $(OUTDIR)$(DIRSLASH)*.res
|
||||
-$(DEL) $(OUTDIR)$(DIRSLASH)pathdef.c
|
||||
-rmdir $(OUTDIR)
|
||||
-$(DEL) $(MAIN_TARGET) vimrun.exe install.exe uninstal.exe
|
||||
-$(DEL) $(MAIN_TARGET) vimrun.exe install.exe uninstall.exe
|
||||
ifdef PERL
|
||||
-$(DEL) if_perl.c
|
||||
-$(DEL) auto$(DIRSLASH)if_perl.c
|
||||
@@ -1177,9 +1186,12 @@ $(OUTDIR)/os_w32exeg.o: os_w32exe.c $(INCL)
|
||||
$(OUTDIR)/os_win32.o: os_win32.c $(INCL) $(MZSCHEME_INCL)
|
||||
$(CC) -c $(CFLAGS) os_win32.c -o $@
|
||||
|
||||
$(OUTDIR)/regexp.o: regexp.c regexp_nfa.c $(INCL)
|
||||
$(OUTDIR)/regexp.o: regexp.c regexp_bt.c regexp_nfa.c $(INCL)
|
||||
$(CC) -c $(CFLAGS) regexp.c -o $@
|
||||
|
||||
$(OUTDIR)/register.o: register.c $(INCL)
|
||||
$(CC) -c $(CFLAGS) register.c -o $@
|
||||
|
||||
$(OUTDIR)/terminal.o: terminal.c $(INCL) $(TERM_DEPS)
|
||||
$(CC) -c $(CFLAGS) terminal.c -o $@
|
||||
|
||||
@@ -1190,7 +1202,8 @@ $(OUTDIR)/pathdef.o: $(PATHDEF_SRC) $(INCL)
|
||||
CCCTERM = $(CC) -c $(CFLAGS) -Ilibvterm/include -DINLINE="" \
|
||||
-DVSNPRINTF=vim_vsnprintf \
|
||||
-DIS_COMBINING_FUNCTION=utf_iscomposing_uint \
|
||||
-DWCWIDTH_FUNCTION=utf_uint2cells
|
||||
-DWCWIDTH_FUNCTION=utf_uint2cells \
|
||||
-DGET_SPECIAL_PTY_TYPE_FUNCTION=get_special_pty_type
|
||||
|
||||
$(OUTDIR)/%.o : libvterm/src/%.c $(TERM_DEPS)
|
||||
$(CCCTERM) $< -o $@
|
||||
|
||||
@@ -29,6 +29,7 @@ SRC = arabic.c \
|
||||
autocmd.c \
|
||||
blowfish.c \
|
||||
buffer.c \
|
||||
bufwrite.c \
|
||||
change.c \
|
||||
charset.c \
|
||||
cmdexpand.c \
|
||||
@@ -39,10 +40,14 @@ SRC = arabic.c \
|
||||
dict.c \
|
||||
diff.c \
|
||||
digraph.c \
|
||||
drawline.c \
|
||||
drawscreen.c \
|
||||
edit.c \
|
||||
eval.c \
|
||||
evalbuffer.c \
|
||||
evalfunc.c \
|
||||
evalvars.c \
|
||||
evalwindow.c \
|
||||
ex_cmds.c \
|
||||
ex_cmds2.c \
|
||||
ex_docmd.c \
|
||||
@@ -70,15 +75,18 @@ SRC = arabic.c \
|
||||
message.c \
|
||||
misc1.c \
|
||||
misc2.c \
|
||||
mouse.c \
|
||||
move.c \
|
||||
normal.c \
|
||||
ops.c \
|
||||
option.c \
|
||||
optionstr.c \
|
||||
os_amiga.c \
|
||||
popupmnu.c \
|
||||
popupmenu.c \
|
||||
profiler.c \
|
||||
quickfix.c \
|
||||
regexp.c \
|
||||
register.c \
|
||||
scriptfile.c \
|
||||
screen.c \
|
||||
search.c \
|
||||
@@ -87,6 +95,7 @@ SRC = arabic.c \
|
||||
sign.c \
|
||||
spell.c \
|
||||
spellfile.c \
|
||||
spellsuggest.c \
|
||||
syntax.c \
|
||||
tag.c \
|
||||
term.c \
|
||||
|
||||
@@ -365,7 +365,7 @@ TERM_OBJ = \
|
||||
$(OBJDIR)/terminal.obj \
|
||||
$(OBJDIR)/encoding.obj \
|
||||
$(OBJDIR)/keyboard.obj \
|
||||
$(OBJDIR)/mouse.obj \
|
||||
$(OBJDIR)/termmouse.obj \
|
||||
$(OBJDIR)/parser.obj \
|
||||
$(OBJDIR)/pen.obj \
|
||||
$(OBJDIR)/termscreen.obj \
|
||||
@@ -716,6 +716,7 @@ OBJ = \
|
||||
$(OUTDIR)\blob.obj \
|
||||
$(OUTDIR)\blowfish.obj \
|
||||
$(OUTDIR)\buffer.obj \
|
||||
$(OUTDIR)\bufwrite.obj \
|
||||
$(OUTDIR)\change.obj \
|
||||
$(OUTDIR)\charset.obj \
|
||||
$(OUTDIR)\cmdexpand.obj \
|
||||
@@ -726,10 +727,14 @@ OBJ = \
|
||||
$(OUTDIR)\dict.obj \
|
||||
$(OUTDIR)\diff.obj \
|
||||
$(OUTDIR)\digraph.obj \
|
||||
$(OUTDIR)\drawline.obj \
|
||||
$(OUTDIR)\drawscreen.obj \
|
||||
$(OUTDIR)\edit.obj \
|
||||
$(OUTDIR)\eval.obj \
|
||||
$(OUTDIR)\evalbuffer.obj \
|
||||
$(OUTDIR)\evalfunc.obj \
|
||||
$(OUTDIR)\evalvars.obj \
|
||||
$(OUTDIR)\evalwindow.obj \
|
||||
$(OUTDIR)\ex_cmds.obj \
|
||||
$(OUTDIR)\ex_cmds2.obj \
|
||||
$(OUTDIR)\ex_docmd.obj \
|
||||
@@ -758,18 +763,21 @@ OBJ = \
|
||||
$(OUTDIR)\message.obj \
|
||||
$(OUTDIR)\misc1.obj \
|
||||
$(OUTDIR)\misc2.obj \
|
||||
$(OUTDIR)\mouse.obj \
|
||||
$(OUTDIR)\move.obj \
|
||||
$(OUTDIR)\normal.obj \
|
||||
$(OUTDIR)\ops.obj \
|
||||
$(OUTDIR)\option.obj \
|
||||
$(OUTDIR)\optionstr.obj \
|
||||
$(OUTDIR)\os_mswin.obj \
|
||||
$(OUTDIR)\os_win32.obj \
|
||||
$(OUTDIR)\pathdef.obj \
|
||||
$(OUTDIR)\popupmnu.obj \
|
||||
$(OUTDIR)\popupmenu.obj \
|
||||
$(OUTDIR)\popupwin.obj \
|
||||
$(OUTDIR)\profiler.obj \
|
||||
$(OUTDIR)\quickfix.obj \
|
||||
$(OUTDIR)\regexp.obj \
|
||||
$(OUTDIR)\register.obj \
|
||||
$(OUTDIR)\scriptfile.obj \
|
||||
$(OUTDIR)\screen.obj \
|
||||
$(OUTDIR)\search.obj \
|
||||
@@ -778,6 +786,7 @@ OBJ = \
|
||||
$(OUTDIR)\sign.obj \
|
||||
$(OUTDIR)\spell.obj \
|
||||
$(OUTDIR)\spellfile.obj \
|
||||
$(OUTDIR)\spellsuggest.obj \
|
||||
$(OUTDIR)\syntax.obj \
|
||||
$(OUTDIR)\tag.obj \
|
||||
$(OUTDIR)\term.obj \
|
||||
@@ -1272,7 +1281,7 @@ MAIN_TARGET = $(VIM).exe
|
||||
all: $(MAIN_TARGET) \
|
||||
vimrun.exe \
|
||||
install.exe \
|
||||
uninstal.exe \
|
||||
uninstall.exe \
|
||||
xxd/xxd.exe \
|
||||
tee/tee.exe \
|
||||
GvimExt/gvimext.dll
|
||||
@@ -1331,8 +1340,8 @@ install.exe: dosinst.c
|
||||
- if exist install.exe del install.exe
|
||||
ren dosinst.exe install.exe
|
||||
|
||||
uninstal.exe: uninstal.c
|
||||
$(CC) /nologo -DNDEBUG -DWIN32 uninstal.c shell32.lib advapi32.lib \
|
||||
uninstall.exe: uninstall.c
|
||||
$(CC) /nologo -DNDEBUG -DWIN32 uninstall.c shell32.lib advapi32.lib \
|
||||
-link -subsystem:$(SUBSYSTEM_TOOLS)
|
||||
|
||||
vimrun.exe: vimrun.c
|
||||
@@ -1379,7 +1388,7 @@ clean:
|
||||
!endif
|
||||
- if exist vimrun.exe del vimrun.exe
|
||||
- if exist install.exe del install.exe
|
||||
- if exist uninstal.exe del uninstal.exe
|
||||
- if exist uninstall.exe del uninstall.exe
|
||||
- if exist if_perl.c del if_perl.c
|
||||
- if exist auto\if_perl.c del auto\if_perl.c
|
||||
- if exist dimm.h del dimm.h
|
||||
@@ -1449,6 +1458,8 @@ $(OUTDIR)/blowfish.obj: $(OUTDIR) blowfish.c $(INCL)
|
||||
|
||||
$(OUTDIR)/buffer.obj: $(OUTDIR) buffer.c $(INCL)
|
||||
|
||||
$(OUTDIR)/bufwrite.obj: $(OUTDIR) bufwrite.c $(INCL)
|
||||
|
||||
$(OUTDIR)/change.obj: $(OUTDIR) change.c $(INCL)
|
||||
|
||||
$(OUTDIR)/charset.obj: $(OUTDIR) charset.c $(INCL)
|
||||
@@ -1481,14 +1492,22 @@ $(OUTDIR)/xpatience.obj: $(OUTDIR) xdiff/xpatience.c $(XDIFF_DEPS)
|
||||
|
||||
$(OUTDIR)/digraph.obj: $(OUTDIR) digraph.c $(INCL)
|
||||
|
||||
$(OUTDIR)/drawline.obj: $(OUTDIR) drawline.c $(INCL)
|
||||
|
||||
$(OUTDIR)/drawscreen.obj: $(OUTDIR) drawscreen.c $(INCL)
|
||||
|
||||
$(OUTDIR)/edit.obj: $(OUTDIR) edit.c $(INCL)
|
||||
|
||||
$(OUTDIR)/eval.obj: $(OUTDIR) eval.c $(INCL)
|
||||
|
||||
$(OUTDIR)/evalbuffer.obj: $(OUTDIR) evalbuffer.c $(INCL)
|
||||
|
||||
$(OUTDIR)/evalfunc.obj: $(OUTDIR) evalfunc.c $(INCL)
|
||||
|
||||
$(OUTDIR)/evalvars.obj: $(OUTDIR) evalvars.c $(INCL)
|
||||
|
||||
$(OUTDIR)/evalwindow.obj: $(OUTDIR) evalwindow.c $(INCL)
|
||||
|
||||
$(OUTDIR)/ex_cmds.obj: $(OUTDIR) ex_cmds.c $(INCL)
|
||||
|
||||
$(OUTDIR)/ex_cmds2.obj: $(OUTDIR) ex_cmds2.c $(INCL)
|
||||
@@ -1588,6 +1607,8 @@ $(OUTDIR)/misc1.obj: $(OUTDIR) misc1.c $(INCL)
|
||||
|
||||
$(OUTDIR)/misc2.obj: $(OUTDIR) misc2.c $(INCL)
|
||||
|
||||
$(OUTDIR)/mouse.obj: $(OUTDIR) mouse.c $(INCL)
|
||||
|
||||
$(OUTDIR)/move.obj: $(OUTDIR) move.c $(INCL)
|
||||
|
||||
$(OUTDIR)/mbyte.obj: $(OUTDIR) mbyte.c $(INCL)
|
||||
@@ -1598,7 +1619,9 @@ $(OUTDIR)/channel.obj: $(OUTDIR) channel.c $(INCL)
|
||||
|
||||
$(OUTDIR)/normal.obj: $(OUTDIR) normal.c $(INCL)
|
||||
|
||||
$(OUTDIR)/option.obj: $(OUTDIR) option.c $(INCL)
|
||||
$(OUTDIR)/option.obj: $(OUTDIR) option.c $(INCL) optiondefs.h
|
||||
|
||||
$(OUTDIR)/optionstr.obj: $(OUTDIR) optionstr.c $(INCL)
|
||||
|
||||
$(OUTDIR)/ops.obj: $(OUTDIR) ops.c $(INCL)
|
||||
|
||||
@@ -1623,7 +1646,7 @@ $(OUTDIR)/os_w32exeg.obj: $(OUTDIR) os_w32exe.c $(INCL)
|
||||
$(OUTDIR)/pathdef.obj: $(OUTDIR) $(PATHDEF_SRC) $(INCL)
|
||||
$(CC) $(CFLAGS_OUTDIR) $(PATHDEF_SRC)
|
||||
|
||||
$(OUTDIR)/popupmnu.obj: $(OUTDIR) popupmnu.c $(INCL)
|
||||
$(OUTDIR)/popupmenu.obj: $(OUTDIR) popupmenu.c $(INCL)
|
||||
|
||||
$(OUTDIR)/popupwin.obj: $(OUTDIR) popupwin.c $(INCL)
|
||||
|
||||
@@ -1631,7 +1654,9 @@ $(OUTDIR)/profiler.obj: $(OUTDIR) profiler.c $(INCL)
|
||||
|
||||
$(OUTDIR)/quickfix.obj: $(OUTDIR) quickfix.c $(INCL)
|
||||
|
||||
$(OUTDIR)/regexp.obj: $(OUTDIR) regexp.c regexp_nfa.c $(INCL)
|
||||
$(OUTDIR)/regexp.obj: $(OUTDIR) regexp.c regexp_bt.c regexp_nfa.c $(INCL)
|
||||
|
||||
$(OUTDIR)/register.obj: $(OUTDIR) register.c $(INCL)
|
||||
|
||||
$(OUTDIR)/scriptfile.obj: $(OUTDIR) scriptfile.c $(INCL)
|
||||
|
||||
@@ -1649,6 +1674,8 @@ $(OUTDIR)/spell.obj: $(OUTDIR) spell.c $(INCL)
|
||||
|
||||
$(OUTDIR)/spellfile.obj: $(OUTDIR) spellfile.c $(INCL)
|
||||
|
||||
$(OUTDIR)/spellsuggest.obj: $(OUTDIR) spellsuggest.c $(INCL)
|
||||
|
||||
$(OUTDIR)/syntax.obj: $(OUTDIR) syntax.c $(INCL)
|
||||
|
||||
$(OUTDIR)/tag.obj: $(OUTDIR) tag.c $(INCL)
|
||||
@@ -1710,6 +1737,7 @@ CCCTERM = $(CC) $(CFLAGS) -Ilibvterm/include -DINLINE="" \
|
||||
-DVSNPRINTF=vim_vsnprintf \
|
||||
-DIS_COMBINING_FUNCTION=utf_iscomposing_uint \
|
||||
-DWCWIDTH_FUNCTION=utf_uint2cells \
|
||||
-DGET_SPECIAL_PTY_TYPE_FUNCTION=get_special_pty_type \
|
||||
-D_CRT_SECURE_NO_WARNINGS
|
||||
|
||||
# Create a default rule for libvterm.
|
||||
@@ -1720,7 +1748,7 @@ $(OUTDIR)/encoding.obj: $(OUTDIR) libvterm/src/encoding.c $(TERM_DEPS)
|
||||
|
||||
$(OUTDIR)/keyboard.obj: $(OUTDIR) libvterm/src/keyboard.c $(TERM_DEPS)
|
||||
|
||||
$(OUTDIR)/mouse.obj: $(OUTDIR) libvterm/src/mouse.c $(TERM_DEPS)
|
||||
$(OUTDIR)/termmouse.obj: $(OUTDIR) libvterm/src/termmouse.c $(TERM_DEPS)
|
||||
|
||||
$(OUTDIR)/parser.obj: $(OUTDIR) libvterm/src/parser.c $(TERM_DEPS)
|
||||
|
||||
@@ -1763,6 +1791,7 @@ proto.h: \
|
||||
proto/blob.pro \
|
||||
proto/blowfish.pro \
|
||||
proto/buffer.pro \
|
||||
proto/bufwrite.pro \
|
||||
proto/change.pro \
|
||||
proto/charset.pro \
|
||||
proto/cmdexpand.pro \
|
||||
@@ -1773,10 +1802,14 @@ proto.h: \
|
||||
proto/dict.pro \
|
||||
proto/diff.pro \
|
||||
proto/digraph.pro \
|
||||
proto/drawline.pro \
|
||||
proto/drawscreen.pro \
|
||||
proto/edit.pro \
|
||||
proto/eval.pro \
|
||||
proto/evalbuffer.pro \
|
||||
proto/evalfunc.pro \
|
||||
proto/evalvars.pro \
|
||||
proto/evalwindow.pro \
|
||||
proto/ex_cmds.pro \
|
||||
proto/ex_cmds2.pro \
|
||||
proto/ex_docmd.pro \
|
||||
@@ -1802,19 +1835,22 @@ proto.h: \
|
||||
proto/message.pro \
|
||||
proto/misc1.pro \
|
||||
proto/misc2.pro \
|
||||
proto/mouse.pro \
|
||||
proto/move.pro \
|
||||
proto/mbyte.pro \
|
||||
proto/normal.pro \
|
||||
proto/ops.pro \
|
||||
proto/option.pro \
|
||||
proto/optionstr.pro \
|
||||
proto/os_mswin.pro \
|
||||
proto/winclip.pro \
|
||||
proto/os_win32.pro \
|
||||
proto/popupmnu.pro \
|
||||
proto/popupmenu.pro \
|
||||
proto/popupwin.pro \
|
||||
proto/profiler.pro \
|
||||
proto/quickfix.pro \
|
||||
proto/regexp.pro \
|
||||
proto/register.pro \
|
||||
proto/scriptfile.pro \
|
||||
proto/screen.pro \
|
||||
proto/search.pro \
|
||||
@@ -1823,6 +1859,7 @@ proto.h: \
|
||||
proto/sign.pro \
|
||||
proto/spell.pro \
|
||||
proto/spellfile.pro \
|
||||
proto/spellsuggest.pro \
|
||||
proto/syntax.pro \
|
||||
proto/tag.pro \
|
||||
proto/term.pro \
|
||||
|
||||
328
src/Make_vms.mms
328
src/Make_vms.mms
@@ -2,7 +2,7 @@
|
||||
# Makefile for Vim on OpenVMS
|
||||
#
|
||||
# Maintainer: Zoltan Arpadffy <arpadffy@polarhome.com>
|
||||
# Last change: 2019 Sep 04
|
||||
# Last change: 2019 Sep 28
|
||||
#
|
||||
# This has script been tested on VMS 6.2 to 8.2 on DEC Alpha, VAX and IA64
|
||||
# with MMS and MMK
|
||||
@@ -307,41 +307,210 @@ ALL_CFLAGS_VER = /def=($(MODEL_DEF)$(DEFS)$(DEBUG_DEF)$(PERL_DEF)$(PYTHON_DEF) -
|
||||
ALL_LIBS = $(LIBS) $(GUI_LIB_DIR) $(GUI_LIB) \
|
||||
$(PERL_LIB) $(PYTHON_LIB) $(TCL_LIB) $(RUBY_LIB)
|
||||
|
||||
SRC = arabic.c arglist.c autocmd.c beval.c blob.c blowfish.c buffer.c \
|
||||
change.c charset.c cmdexpand.c cmdhist.c crypt.c crypt_zip.c \
|
||||
debugger.c dict.c diff.c digraph.c edit.c eval.c evalfunc.c \
|
||||
evalvars.c ex_cmds.c ex_cmds2.c ex_docmd.c ex_eval.c ex_getln.c \
|
||||
if_cscope.c if_xcmdsrv.c fileio.c filepath.c, findfile.c fold.c \
|
||||
getchar.c hardcopy.c hashtab.c highlight.c \
|
||||
indent.c insexpand.c json.c list.c main.c map.c mark.c menu.c mbyte.c \
|
||||
memfile.c memline.c message.c misc1.c misc2.c move.c normal.c ops.c \
|
||||
option.c popupmnu.c popupwin.c profiler.c quickfix.c regexp.c \
|
||||
scriptfile.c \
|
||||
search.c session.c sha256.c sign.c spell.c spellfile.c syntax.c tag.c \
|
||||
term.c termlib.c testing.c textprop.c ui.c undo.c usercmd.c \
|
||||
userfunc.c version.c viminfo.c screen.c window.c os_unix.c os_vms.c \
|
||||
SRC = \
|
||||
arabic.c \
|
||||
arglist.c \
|
||||
autocmd.c \
|
||||
beval.c \
|
||||
blob.c \
|
||||
blowfish.c \
|
||||
buffer.c \
|
||||
bufwrite.c \
|
||||
change.c \
|
||||
charset.c \
|
||||
cmdexpand.c \
|
||||
cmdhist.c \
|
||||
crypt.c \
|
||||
crypt_zip.c \
|
||||
debugger.c \
|
||||
dict.c \
|
||||
diff.c \
|
||||
digraph.c \
|
||||
drawline.c \
|
||||
drawscreen.c \
|
||||
edit.c \
|
||||
eval.c \
|
||||
evalbuffer.c \
|
||||
evalfunc.c \
|
||||
evalvars.c \
|
||||
evalwindow.c \
|
||||
ex_cmds.c \
|
||||
ex_cmds2.c \
|
||||
ex_docmd.c \
|
||||
ex_eval.c \
|
||||
ex_getln.c \
|
||||
fileio.c \
|
||||
filepath.c, \
|
||||
findfile.c \
|
||||
fold.c \
|
||||
getchar.c \
|
||||
hardcopy.c \
|
||||
hashtab.c \
|
||||
highlight.c \
|
||||
if_cscope.c \
|
||||
if_xcmdsrv.c \
|
||||
indent.c \
|
||||
insexpand.c \
|
||||
json.c \
|
||||
list.c \
|
||||
main.c \
|
||||
map.c \
|
||||
mark.c \
|
||||
mbyte.c \
|
||||
memfile.c \
|
||||
memline.c \
|
||||
menu.c \
|
||||
message.c \
|
||||
misc1.c \
|
||||
misc2.c \
|
||||
mouse.c \
|
||||
move.c \
|
||||
normal.c \
|
||||
ops.c \
|
||||
option.c \
|
||||
optionstr.c \
|
||||
os_unix.c \
|
||||
os_vms.c \
|
||||
pathdef.c \
|
||||
$(GUI_SRC) $(PERL_SRC) $(PYTHON_SRC) $(TCL_SRC) \
|
||||
$(RUBY_SRC) $(HANGULIN_SRC) $(MZSCH_SRC) $(XDIFF_SRC)
|
||||
popupmenu.c \
|
||||
popupwin.c \
|
||||
profiler.c \
|
||||
quickfix.c \
|
||||
regexp.c \
|
||||
register.c \
|
||||
screen.c \
|
||||
scriptfile.c \
|
||||
search.c \
|
||||
session.c \
|
||||
sha256.c \
|
||||
sign.c \
|
||||
spell.c \
|
||||
spellfile.c \
|
||||
spellsuggest.c \
|
||||
syntax.c \
|
||||
tag.c \
|
||||
term.c \
|
||||
termlib.c \
|
||||
testing.c \
|
||||
textprop.c \
|
||||
ui.c \
|
||||
undo.c \
|
||||
usercmd.c \
|
||||
userfunc.c \
|
||||
version.c \
|
||||
viminfo.c \
|
||||
window.c \
|
||||
$(GUI_SRC) \
|
||||
$(PERL_SRC) \
|
||||
$(PYTHON_SRC) \
|
||||
$(TCL_SRC) \
|
||||
$(RUBY_SRC) \
|
||||
$(HANGULIN_SRC) \
|
||||
$(MZSCH_SRC) \
|
||||
$(XDIFF_SRC)
|
||||
|
||||
OBJ = arabic.obj arglist.obj autocmd.obj beval.obj blob.obj blowfish.obj \
|
||||
buffer.obj change.obj charset.obj cmdexpand.obj cmdhist.obj \
|
||||
crypt.obj crypt_zip.obj debugger.obj dict.obj diff.obj digraph.obj \
|
||||
edit.obj eval.obj evalfunc.obj evalvars.obj ex_cmds.obj ex_cmds2.obj \
|
||||
ex_docmd.obj ex_eval.obj ex_getln.obj if_cscope.obj if_xcmdsrv.obj \
|
||||
fileio.obj filepath.obj \
|
||||
findfile.obj fold.obj getchar.obj hardcopy.obj hashtab.obj \
|
||||
highlight.obj indent.obj insexpand.obj json.obj list.obj main.obj \
|
||||
map.obj mark.obj menu.obj memfile.obj memline.obj message.obj \
|
||||
misc1.obj misc2.obj move.obj mbyte.obj normal.obj ops.obj option.obj \
|
||||
popupmnu.obj popupwin.obj profiler.obj quickfix.obj regexp.obj \
|
||||
OBJ = \
|
||||
arabic.obj \
|
||||
arglist.obj \
|
||||
autocmd.obj \
|
||||
beval.obj \
|
||||
blob.obj \
|
||||
blowfish.obj \
|
||||
buffer.obj \
|
||||
bufwrite.obj \
|
||||
change.obj \
|
||||
charset.obj \
|
||||
cmdexpand.obj \
|
||||
cmdhist.obj \
|
||||
crypt.obj \
|
||||
crypt_zip.obj \
|
||||
debugger.obj \
|
||||
dict.obj \
|
||||
diff.obj \
|
||||
digraph.obj \
|
||||
drawline.obj \
|
||||
drawscreen.obj \
|
||||
edit.obj \
|
||||
eval.obj \
|
||||
evalbuffer.obj \
|
||||
evalfunc.obj \
|
||||
evalvars.obj \
|
||||
evalwindow.obj \
|
||||
ex_cmds.obj \
|
||||
ex_cmds2.obj \
|
||||
ex_docmd.obj \
|
||||
ex_eval.obj \
|
||||
ex_getln.obj \
|
||||
fileio.obj \
|
||||
filepath.obj \
|
||||
findfile.obj \
|
||||
fold.obj \
|
||||
getchar.obj \
|
||||
hardcopy.obj \
|
||||
hashtab.obj \
|
||||
highlight.obj \
|
||||
if_cscope.obj \
|
||||
if_mzsch.obj \
|
||||
if_xcmdsrv.obj \
|
||||
indent.obj \
|
||||
insexpand.obj \
|
||||
json.obj \
|
||||
list.obj \
|
||||
main.obj \
|
||||
map.obj \
|
||||
mark.obj \
|
||||
mbyte.obj \
|
||||
memfile.obj \
|
||||
memline.obj \
|
||||
menu.obj \
|
||||
message.obj \
|
||||
misc1.obj \
|
||||
misc2.obj \
|
||||
mouse.obj \
|
||||
move.obj \
|
||||
normal.obj \
|
||||
ops.obj \
|
||||
option.obj \
|
||||
optionstr.obj \
|
||||
os_unix.obj \
|
||||
os_vms.obj \
|
||||
pathdef.obj \
|
||||
popupmenu.obj \
|
||||
popupwin.obj \
|
||||
profiler.obj \
|
||||
quickfix.obj \
|
||||
regexp.obj \
|
||||
register.obj \
|
||||
screen.obj \
|
||||
scriptfile.obj \
|
||||
search.obj session.obj sha256.obj sign.obj spell.obj spellfile.obj \
|
||||
syntax.obj tag.obj term.obj termlib.obj testing.obj textprop.obj \
|
||||
ui.obj undo.obj usercmd.obj userfunc.obj screen.obj version.obj \
|
||||
viminfo.obj window.obj os_unix.obj os_vms.obj pathdef.obj if_mzsch.obj \
|
||||
$(GUI_OBJ) $(PERL_OBJ) $(PYTHON_OBJ) $(TCL_OBJ) \
|
||||
$(RUBY_OBJ) $(HANGULIN_OBJ) $(MZSCH_OBJ) $(XDIFF_OBJ)
|
||||
search.obj \
|
||||
session.obj \
|
||||
sha256.obj \
|
||||
sign.obj \
|
||||
spell.obj \
|
||||
spellfile.obj \
|
||||
spellsuggest.obj \
|
||||
syntax.obj \
|
||||
tag.obj \
|
||||
term.obj \
|
||||
termlib.obj \
|
||||
testing.obj \
|
||||
textprop.obj \
|
||||
ui.obj \
|
||||
undo.obj \
|
||||
usercmd.obj \
|
||||
userfunc.obj \
|
||||
version.obj \
|
||||
viminfo.obj \
|
||||
window.obj \
|
||||
$(GUI_OBJ) \
|
||||
$(PERL_OBJ) \
|
||||
$(PYTHON_OBJ) \
|
||||
$(TCL_OBJ) \
|
||||
$(RUBY_OBJ) \
|
||||
$(HANGULIN_OBJ) \
|
||||
$(MZSCH_OBJ) \
|
||||
$(XDIFF_OBJ)
|
||||
|
||||
# Default target is making the executable
|
||||
all : [.auto]config.h mmk_compat motif_env gtk_env perl_env python_env tcl_env ruby_env $(TARGET)
|
||||
@@ -519,6 +688,10 @@ buffer.obj : buffer.c vim.h [.auto]config.h feature.h os_unix.h \
|
||||
ascii.h keymap.h term.h macros.h structs.h regexp.h \
|
||||
gui.h beval.h [.proto]gui_beval.pro option.h ex_cmds.h proto.h \
|
||||
globals.h version.h
|
||||
bufwrite.obj : bufwrite.c vim.h [.auto]config.h feature.h os_unix.h \
|
||||
ascii.h keymap.h term.h macros.h structs.h regexp.h \
|
||||
gui.h beval.h [.proto]gui_beval.pro option.h ex_cmds.h proto.h \
|
||||
globals.h version.h
|
||||
change.obj : change.c vim.h [.auto]config.h feature.h os_unix.h \
|
||||
ascii.h keymap.h term.h macros.h structs.h regexp.h \
|
||||
gui.h beval.h [.proto]gui_beval.pro option.h ex_cmds.h proto.h \
|
||||
@@ -553,20 +726,30 @@ dict.obj : dict.c vim.h [.auto]config.h feature.h os_unix.h \
|
||||
globals.h
|
||||
diff.obj : diff.c vim.h [.auto]config.h feature.h os_unix.h \
|
||||
ascii.h keymap.h term.h macros.h structs.h regexp.h gui.h beval.h \
|
||||
[.proto]gui_beval.pro option.h ex_cmds.h proto.h globals.h \
|
||||
|
||||
[.proto]gui_beval.pro option.h ex_cmds.h proto.h globals.h
|
||||
digraph.obj : digraph.c vim.h [.auto]config.h feature.h os_unix.h \
|
||||
ascii.h keymap.h term.h macros.h structs.h regexp.h \
|
||||
gui.h beval.h [.proto]gui_beval.pro option.h ex_cmds.h proto.h \
|
||||
globals.h
|
||||
drawline.obj : drawline.c vim.h [.auto]config.h feature.h os_unix.h \
|
||||
ascii.h keymap.h term.h macros.h structs.h regexp.h \
|
||||
gui.h beval.h [.proto]gui_beval.pro option.h ex_cmds.h proto.h \
|
||||
globals.h
|
||||
drawscreen.obj : drawscreen.c vim.h [.auto]config.h feature.h os_unix.h \
|
||||
ascii.h keymap.h term.h macros.h structs.h regexp.h \
|
||||
gui.h beval.h [.proto]gui_beval.pro option.h ex_cmds.h proto.h \
|
||||
globals.h
|
||||
edit.obj : edit.c vim.h [.auto]config.h feature.h os_unix.h \
|
||||
ascii.h keymap.h term.h macros.h structs.h regexp.h gui.h beval.h \
|
||||
[.proto]gui_beval.pro option.h ex_cmds.h proto.h globals.h \
|
||||
|
||||
[.proto]gui_beval.pro option.h ex_cmds.h proto.h globals.h
|
||||
eval.obj : eval.c vim.h [.auto]config.h feature.h os_unix.h \
|
||||
ascii.h keymap.h term.h macros.h structs.h regexp.h gui.h beval.h \
|
||||
[.proto]gui_beval.pro option.h ex_cmds.h proto.h globals.h \
|
||||
version.h
|
||||
evalbuffer.obj : evalbuffer.c vim.h [.auto]config.h feature.h os_unix.h \
|
||||
ascii.h keymap.h term.h macros.h option.h structs.h \
|
||||
regexp.h gui.h beval.h [.proto]gui_beval.pro alloc.h ex_cmds.h spell.h \
|
||||
proto.h globals.h version.h
|
||||
evalfunc.obj : evalfunc.c vim.h [.auto]config.h feature.h os_unix.h \
|
||||
ascii.h keymap.h term.h macros.h option.h structs.h \
|
||||
regexp.h gui.h beval.h [.proto]gui_beval.pro alloc.h ex_cmds.h spell.h \
|
||||
@@ -575,6 +758,10 @@ evalvars.obj : evalvars.c vim.h [.auto]config.h feature.h os_unix.h \
|
||||
ascii.h keymap.h term.h macros.h option.h structs.h \
|
||||
regexp.h gui.h beval.h [.proto]gui_beval.pro alloc.h ex_cmds.h spell.h \
|
||||
proto.h globals.h version.h
|
||||
evalwindow.obj : evalwindow.c vim.h [.auto]config.h feature.h os_unix.h \
|
||||
ascii.h keymap.h term.h macros.h option.h structs.h \
|
||||
regexp.h gui.h beval.h [.proto]gui_beval.pro alloc.h ex_cmds.h spell.h \
|
||||
proto.h globals.h version.h
|
||||
ex_cmds.obj : ex_cmds.c vim.h [.auto]config.h feature.h os_unix.h \
|
||||
ascii.h keymap.h term.h macros.h structs.h regexp.h \
|
||||
gui.h beval.h [.proto]gui_beval.pro option.h ex_cmds.h proto.h \
|
||||
@@ -609,8 +796,7 @@ findfile.obj : findfile.c vim.h [.auto]config.h feature.h os_unix.h \
|
||||
globals.h
|
||||
fold.obj : fold.c vim.h [.auto]config.h feature.h os_unix.h \
|
||||
ascii.h keymap.h term.h macros.h structs.h regexp.h gui.h beval.h \
|
||||
[.proto]gui_beval.pro option.h ex_cmds.h proto.h globals.h \
|
||||
|
||||
[.proto]gui_beval.pro option.h ex_cmds.h proto.h globals.h
|
||||
getchar.obj : getchar.c vim.h [.auto]config.h feature.h os_unix.h \
|
||||
ascii.h keymap.h term.h macros.h structs.h regexp.h \
|
||||
gui.h beval.h [.proto]gui_beval.pro option.h ex_cmds.h proto.h \
|
||||
@@ -658,8 +844,7 @@ map.obj : map.c vim.h [.auto]config.h feature.h os_unix.h \
|
||||
[.proto]gui_beval.pro option.h ex_cmds.h proto.h globals.h \
|
||||
mark.obj : mark.c vim.h [.auto]config.h feature.h os_unix.h \
|
||||
ascii.h keymap.h term.h macros.h structs.h regexp.h gui.h beval.h \
|
||||
[.proto]gui_beval.pro option.h ex_cmds.h proto.h globals.h \
|
||||
|
||||
[.proto]gui_beval.pro option.h ex_cmds.h proto.h globals.h
|
||||
memfile.obj : memfile.c vim.h [.auto]config.h feature.h os_unix.h \
|
||||
ascii.h keymap.h term.h macros.h structs.h regexp.h \
|
||||
gui.h beval.h [.proto]gui_beval.pro option.h ex_cmds.h proto.h \
|
||||
@@ -670,8 +855,7 @@ memline.obj : memline.c vim.h [.auto]config.h feature.h os_unix.h \
|
||||
globals.h
|
||||
menu.obj : menu.c vim.h [.auto]config.h feature.h os_unix.h \
|
||||
ascii.h keymap.h term.h macros.h structs.h regexp.h gui.h beval.h \
|
||||
[.proto]gui_beval.pro option.h ex_cmds.h proto.h globals.h \
|
||||
|
||||
[.proto]gui_beval.pro option.h ex_cmds.h proto.h globals.h
|
||||
message.obj : message.c vim.h [.auto]config.h feature.h os_unix.h \
|
||||
ascii.h keymap.h term.h macros.h structs.h regexp.h \
|
||||
gui.h beval.h [.proto]gui_beval.pro option.h ex_cmds.h proto.h \
|
||||
@@ -682,25 +866,28 @@ misc1.obj : misc1.c vim.h [.auto]config.h feature.h os_unix.h \
|
||||
version.h
|
||||
misc2.obj : misc2.c vim.h [.auto]config.h feature.h os_unix.h \
|
||||
ascii.h keymap.h term.h macros.h structs.h regexp.h gui.h beval.h \
|
||||
[.proto]gui_beval.pro option.h ex_cmds.h proto.h globals.h \
|
||||
|
||||
[.proto]gui_beval.pro option.h ex_cmds.h proto.h globals.h
|
||||
mouse.obj : mouse.c vim.h [.auto]config.h feature.h os_unix.h \
|
||||
ascii.h keymap.h term.h macros.h structs.h regexp.h gui.h beval.h \
|
||||
[.proto]gui_beval.pro option.h ex_cmds.h proto.h globals.h
|
||||
move.obj : move.c vim.h [.auto]config.h feature.h os_unix.h \
|
||||
ascii.h keymap.h term.h macros.h structs.h regexp.h gui.h beval.h \
|
||||
[.proto]gui_beval.pro option.h ex_cmds.h proto.h globals.h \
|
||||
|
||||
[.proto]gui_beval.pro option.h ex_cmds.h proto.h globals.h
|
||||
mbyte.obj : mbyte.c vim.h [.auto]config.h feature.h os_unix.h \
|
||||
ascii.h keymap.h term.h macros.h structs.h regexp.h gui.h beval.h \
|
||||
[.proto]gui_beval.pro option.h ex_cmds.h proto.h globals.h \
|
||||
|
||||
[.proto]gui_beval.pro option.h ex_cmds.h proto.h globals.h
|
||||
normal.obj : normal.c vim.h [.auto]config.h feature.h os_unix.h \
|
||||
ascii.h keymap.h term.h macros.h structs.h regexp.h \
|
||||
gui.h beval.h [.proto]gui_beval.pro option.h ex_cmds.h proto.h \
|
||||
globals.h
|
||||
ops.obj : ops.c vim.h [.auto]config.h feature.h os_unix.h \
|
||||
ascii.h keymap.h term.h macros.h structs.h regexp.h gui.h beval.h \
|
||||
[.proto]gui_beval.pro option.h ex_cmds.h proto.h globals.h \
|
||||
|
||||
[.proto]gui_beval.pro option.h ex_cmds.h proto.h globals.h
|
||||
option.obj : option.c vim.h [.auto]config.h feature.h os_unix.h \
|
||||
ascii.h keymap.h term.h macros.h structs.h regexp.h \
|
||||
gui.h beval.h [.proto]gui_beval.pro option.h ex_cmds.h proto.h \
|
||||
globals.h optiondefs.h
|
||||
optionstr.obj : optionstr.c vim.h [.auto]config.h feature.h os_unix.h \
|
||||
ascii.h keymap.h term.h macros.h structs.h regexp.h \
|
||||
gui.h beval.h [.proto]gui_beval.pro option.h ex_cmds.h proto.h \
|
||||
globals.h
|
||||
@@ -716,7 +903,7 @@ pathdef.obj : pathdef.c vim.h [.auto]config.h feature.h os_unix.h \
|
||||
ascii.h keymap.h term.h macros.h structs.h regexp.h \
|
||||
gui.h beval.h [.proto]gui_beval.pro option.h ex_cmds.h proto.h \
|
||||
globals.h
|
||||
popupmnu.obj : popupmnu.c vim.h [.auto]config.h feature.h os_unix.h \
|
||||
popupmenu.obj : popupmenu.c vim.h [.auto]config.h feature.h os_unix.h \
|
||||
ascii.h keymap.h term.h macros.h structs.h regexp.h \
|
||||
gui.h beval.h [.proto]gui_beval.pro option.h ex_cmds.h proto.h \
|
||||
globals.h
|
||||
@@ -736,6 +923,10 @@ regexp.obj : regexp.c vim.h [.auto]config.h feature.h os_unix.h \
|
||||
ascii.h keymap.h term.h macros.h structs.h regexp.h \
|
||||
gui.h beval.h [.proto]gui_beval.pro option.h ex_cmds.h proto.h \
|
||||
globals.h
|
||||
register.obj : register.c vim.h [.auto]config.h feature.h os_unix.h \
|
||||
ascii.h keymap.h term.h macros.h structs.h regexp.h \
|
||||
gui.h beval.h [.proto]gui_beval.pro option.h ex_cmds.h proto.h \
|
||||
globals.h
|
||||
scriptfile.obj : scriptfile.c vim.h [.auto]config.h feature.h os_unix.h \
|
||||
ascii.h keymap.h term.h macros.h structs.h regexp.h \
|
||||
gui.h beval.h [.proto]gui_beval.pro option.h ex_cmds.h proto.h \
|
||||
@@ -768,48 +959,43 @@ spellfile.obj : spellfile.c vim.h [.auto]config.h feature.h os_unix.h \
|
||||
ascii.h keymap.h term.h macros.h option.h structs.h \
|
||||
regexp.h gui.h beval.h [.proto]gui_beval.pro alloc.h ex_cmds.h spell.h \
|
||||
proto.h globals.h
|
||||
spellsuggest.obj : spellsuggest.c vim.h [.auto]config.h feature.h os_unix.h \
|
||||
ascii.h keymap.h term.h macros.h option.h structs.h \
|
||||
regexp.h gui.h beval.h [.proto]gui_beval.pro alloc.h ex_cmds.h spell.h \
|
||||
proto.h globals.h
|
||||
syntax.obj : syntax.c vim.h [.auto]config.h feature.h os_unix.h \
|
||||
ascii.h keymap.h term.h macros.h structs.h regexp.h \
|
||||
gui.h beval.h [.proto]gui_beval.pro option.h ex_cmds.h proto.h \
|
||||
globals.h
|
||||
tag.obj : tag.c vim.h [.auto]config.h feature.h os_unix.h \
|
||||
ascii.h keymap.h term.h macros.h structs.h regexp.h gui.h beval.h \
|
||||
[.proto]gui_beval.pro option.h ex_cmds.h proto.h globals.h \
|
||||
|
||||
[.proto]gui_beval.pro option.h ex_cmds.h proto.h globals.h
|
||||
term.obj : term.c vim.h [.auto]config.h feature.h os_unix.h \
|
||||
ascii.h keymap.h term.h macros.h structs.h regexp.h gui.h beval.h \
|
||||
[.proto]gui_beval.pro option.h ex_cmds.h proto.h globals.h \
|
||||
|
||||
[.proto]gui_beval.pro option.h ex_cmds.h proto.h globals.h
|
||||
termlib.obj : termlib.c vim.h [.auto]config.h feature.h os_unix.h \
|
||||
ascii.h keymap.h term.h macros.h structs.h regexp.h gui.h beval.h \
|
||||
[.proto]gui_beval.pro option.h ex_cmds.h proto.h globals.h \
|
||||
|
||||
[.proto]gui_beval.pro option.h ex_cmds.h proto.h globals.h
|
||||
testing.obj : testing.c vim.h [.auto]config.h feature.h os_unix.h \
|
||||
ascii.h keymap.h term.h macros.h structs.h regexp.h gui.h beval.h \
|
||||
[.proto]gui_beval.pro option.h ex_cmds.h proto.h globals.h \
|
||||
|
||||
[.proto]gui_beval.pro option.h ex_cmds.h proto.h globals.h
|
||||
textprop.obj : textprop.c vim.h [.auto]config.h feature.h os_unix.h \
|
||||
ascii.h keymap.h term.h macros.h structs.h regexp.h gui.h beval.h \
|
||||
[.proto]gui_beval.pro option.h ex_cmds.h proto.h globals.h \
|
||||
|
||||
[.proto]gui_beval.pro option.h ex_cmds.h proto.h globals.h
|
||||
ui.obj : ui.c vim.h [.auto]config.h feature.h os_unix.h \
|
||||
ascii.h keymap.h term.h macros.h structs.h regexp.h gui.h beval.h \
|
||||
[.proto]gui_beval.pro option.h ex_cmds.h proto.h globals.h \
|
||||
|
||||
[.proto]gui_beval.pro option.h ex_cmds.h proto.h globals.h
|
||||
undo.obj : undo.c vim.h [.auto]config.h feature.h os_unix.h \
|
||||
ascii.h keymap.h term.h macros.h structs.h regexp.h gui.h beval.h \
|
||||
[.proto]gui_beval.pro option.h ex_cmds.h proto.h globals.h \
|
||||
|
||||
[.proto]gui_beval.pro option.h ex_cmds.h proto.h globals.h
|
||||
usercmd.obj : usercmd.c vim.h [.auto]config.h feature.h os_unix.h \
|
||||
ascii.h keymap.h term.h macros.h option.h structs.h \
|
||||
regexp.h gui.h beval.h [.proto]gui_beval.pro alloc.h ex_cmds.h spell.h \
|
||||
proto.h globals.h
|
||||
|
||||
userfunc.obj : userfunc.c vim.h [.auto]config.h feature.h os_unix.h \
|
||||
ascii.h keymap.h term.h macros.h option.h structs.h \
|
||||
regexp.h gui.h beval.h [.proto]gui_beval.pro alloc.h ex_cmds.h spell.h \
|
||||
proto.h globals.h
|
||||
|
||||
version.obj : version.c vim.h [.auto]config.h feature.h os_unix.h \
|
||||
ascii.h keymap.h term.h macros.h structs.h regexp.h \
|
||||
gui.h beval.h [.proto]gui_beval.pro option.h ex_cmds.h proto.h \
|
||||
@@ -824,8 +1010,7 @@ window.obj : window.c vim.h [.auto]config.h feature.h os_unix.h \
|
||||
globals.h
|
||||
gui.obj : gui.c vim.h [.auto]config.h feature.h os_unix.h \
|
||||
ascii.h keymap.h term.h macros.h structs.h regexp.h gui.h beval.h \
|
||||
[.proto]gui_beval.pro option.h ex_cmds.h proto.h globals.h \
|
||||
|
||||
[.proto]gui_beval.pro option.h ex_cmds.h proto.h globals.h
|
||||
gui_gtk.obj : gui_gtk.c gui_gtk_f.h vim.h [.auto]config.h feature.h \
|
||||
os_unix.h ascii.h keymap.h term.h macros.h structs.h \
|
||||
regexp.h gui.h beval.h [.proto]gui_beval.pro option.h ex_cmds.h \
|
||||
@@ -878,8 +1063,7 @@ gui_at_fs.obj : gui_at_fs.c vim.h [.auto]config.h feature.h os_unix.h \
|
||||
globals.h gui_at_sb.h
|
||||
pty.obj : pty.c vim.h [.auto]config.h feature.h os_unix.h \
|
||||
ascii.h keymap.h term.h macros.h structs.h regexp.h gui.h beval.h \
|
||||
[.proto]gui_beval.pro option.h ex_cmds.h proto.h globals.h \
|
||||
|
||||
[.proto]gui_beval.pro option.h ex_cmds.h proto.h globals.h
|
||||
hangulin.obj : hangulin.c vim.h [.auto]config.h feature.h os_unix.h \
|
||||
ascii.h keymap.h term.h macros.h structs.h regexp.h \
|
||||
gui.h beval.h [.proto]gui_beval.pro option.h ex_cmds.h proto.h \
|
||||
|
||||
118
src/Makefile
118
src/Makefile
@@ -1593,10 +1593,14 @@ BASIC_SRC = \
|
||||
dict.c \
|
||||
diff.c \
|
||||
digraph.c \
|
||||
drawline.c \
|
||||
drawscreen.c \
|
||||
edit.c \
|
||||
eval.c \
|
||||
evalbuffer.c \
|
||||
evalfunc.c \
|
||||
evalvars.c \
|
||||
evalwindow.c \
|
||||
ex_cmds.c \
|
||||
ex_cmds2.c \
|
||||
ex_docmd.c \
|
||||
@@ -1625,19 +1629,22 @@ BASIC_SRC = \
|
||||
message.c \
|
||||
misc1.c \
|
||||
misc2.c \
|
||||
mouse.c \
|
||||
move.c \
|
||||
mbyte.c \
|
||||
normal.c \
|
||||
ops.c \
|
||||
option.c \
|
||||
optionstr.c \
|
||||
os_unix.c \
|
||||
auto/pathdef.c \
|
||||
popupmnu.c \
|
||||
popupmenu.c \
|
||||
popupwin.c \
|
||||
profiler.c \
|
||||
pty.c \
|
||||
quickfix.c \
|
||||
regexp.c \
|
||||
register.c \
|
||||
scriptfile.c \
|
||||
screen.c \
|
||||
search.c \
|
||||
@@ -1647,6 +1654,7 @@ BASIC_SRC = \
|
||||
sound.c \
|
||||
spell.c \
|
||||
spellfile.c \
|
||||
spellsuggest.c \
|
||||
syntax.c \
|
||||
tag.c \
|
||||
term.c \
|
||||
@@ -1660,6 +1668,7 @@ BASIC_SRC = \
|
||||
version.c \
|
||||
viminfo.c \
|
||||
window.c \
|
||||
bufwrite.c \
|
||||
$(OS_EXTRA_SRC)
|
||||
|
||||
SRC = $(BASIC_SRC) \
|
||||
@@ -1724,10 +1733,14 @@ OBJ_COMMON = \
|
||||
objects/dict.o \
|
||||
objects/diff.o \
|
||||
objects/digraph.o \
|
||||
objects/drawline.o \
|
||||
objects/drawscreen.o \
|
||||
objects/edit.o \
|
||||
objects/eval.o \
|
||||
objects/evalbuffer.o \
|
||||
objects/evalfunc.o \
|
||||
objects/evalvars.o \
|
||||
objects/evalwindow.o \
|
||||
objects/ex_cmds.o \
|
||||
objects/ex_cmds2.o \
|
||||
objects/ex_docmd.o \
|
||||
@@ -1753,19 +1766,22 @@ OBJ_COMMON = \
|
||||
objects/menu.o \
|
||||
objects/misc1.o \
|
||||
objects/misc2.o \
|
||||
objects/mouse.o \
|
||||
objects/move.o \
|
||||
objects/mbyte.o \
|
||||
objects/normal.o \
|
||||
objects/ops.o \
|
||||
objects/option.o \
|
||||
objects/optionstr.o \
|
||||
objects/os_unix.o \
|
||||
objects/pathdef.o \
|
||||
objects/popupmnu.o \
|
||||
objects/popupmenu.o \
|
||||
objects/popupwin.o \
|
||||
objects/profiler.o \
|
||||
objects/pty.o \
|
||||
objects/quickfix.o \
|
||||
objects/regexp.o \
|
||||
objects/register.o \
|
||||
objects/scriptfile.o \
|
||||
objects/screen.o \
|
||||
objects/search.o \
|
||||
@@ -1775,6 +1791,7 @@ OBJ_COMMON = \
|
||||
objects/sound.o \
|
||||
objects/spell.o \
|
||||
objects/spellfile.o \
|
||||
objects/spellsuggest.o \
|
||||
objects/syntax.o \
|
||||
objects/tag.o \
|
||||
objects/term.o \
|
||||
@@ -1788,6 +1805,7 @@ OBJ_COMMON = \
|
||||
objects/version.o \
|
||||
objects/viminfo.o \
|
||||
objects/window.o \
|
||||
objects/bufwrite.o \
|
||||
$(GUI_OBJ) \
|
||||
$(TERM_OBJ) \
|
||||
$(LUA_OBJ) \
|
||||
@@ -1868,10 +1886,14 @@ PRO_AUTO = \
|
||||
dict.pro \
|
||||
diff.pro \
|
||||
digraph.pro \
|
||||
drawline.pro \
|
||||
drawscreen.pro \
|
||||
edit.pro \
|
||||
eval.pro \
|
||||
evalbuffer.pro \
|
||||
evalfunc.pro \
|
||||
evalvars.pro \
|
||||
evalwindow.pro \
|
||||
ex_cmds.pro \
|
||||
ex_cmds2.pro \
|
||||
ex_docmd.pro \
|
||||
@@ -1907,18 +1929,21 @@ PRO_AUTO = \
|
||||
message.pro \
|
||||
misc1.pro \
|
||||
misc2.pro \
|
||||
mouse.pro \
|
||||
move.pro \
|
||||
normal.pro \
|
||||
ops.pro \
|
||||
option.pro \
|
||||
optionstr.pro \
|
||||
os_mac_conv.pro \
|
||||
os_unix.pro \
|
||||
popupmnu.pro \
|
||||
popupmenu.pro \
|
||||
popupwin.pro \
|
||||
profiler.pro \
|
||||
pty.pro \
|
||||
quickfix.pro \
|
||||
regexp.pro \
|
||||
register.pro \
|
||||
scriptfile.pro \
|
||||
screen.pro \
|
||||
search.pro \
|
||||
@@ -1928,6 +1953,7 @@ PRO_AUTO = \
|
||||
sound.pro \
|
||||
spell.pro \
|
||||
spellfile.pro \
|
||||
spellsuggest.pro \
|
||||
syntax.pro \
|
||||
tag.pro \
|
||||
term.pro \
|
||||
@@ -1942,6 +1968,7 @@ PRO_AUTO = \
|
||||
version.pro \
|
||||
viminfo.pro \
|
||||
window.pro \
|
||||
bufwrite.pro \
|
||||
beval.pro \
|
||||
gui_beval.pro \
|
||||
netbeans.pro \
|
||||
@@ -2238,6 +2265,10 @@ test1 \
|
||||
|
||||
# Run individual NEW style test.
|
||||
# These do not depend on the executable, compile it when needed.
|
||||
# Set $TEST_FILTER to select what test function to invoke, e.g.:
|
||||
# export TEST_FILTER=Test_terminal_wipe_buffer
|
||||
# A partial match also works:
|
||||
# export TEST_FILTER=wipe_buffer
|
||||
$(NEW_TESTS):
|
||||
cd testdir; $(MAKE) $@ VIMPROG=../$(VIMTESTTARGET) $(GUI_TESTARG) SCRIPTSOURCE=../$(SCRIPTSOURCE)
|
||||
|
||||
@@ -3074,18 +3105,30 @@ objects/diff.o: diff.c $(XDIFF_INCL)
|
||||
objects/digraph.o: digraph.c
|
||||
$(CCC) -o $@ digraph.c
|
||||
|
||||
objects/drawline.o: drawline.c
|
||||
$(CCC) -o $@ drawline.c
|
||||
|
||||
objects/drawscreen.o: drawscreen.c
|
||||
$(CCC) -o $@ drawscreen.c
|
||||
|
||||
objects/edit.o: edit.c
|
||||
$(CCC) -o $@ edit.c
|
||||
|
||||
objects/eval.o: eval.c
|
||||
$(CCC) -o $@ eval.c
|
||||
|
||||
objects/evalbuffer.o: evalbuffer.c
|
||||
$(CCC) -o $@ evalbuffer.c
|
||||
|
||||
objects/evalfunc.o: evalfunc.c
|
||||
$(CCC) -o $@ evalfunc.c
|
||||
|
||||
objects/evalvars.o: evalvars.c
|
||||
$(CCC) -o $@ evalvars.c
|
||||
|
||||
objects/evalwindow.o: evalwindow.c
|
||||
$(CCC) -o $@ evalwindow.c
|
||||
|
||||
objects/ex_cmds.o: ex_cmds.c
|
||||
$(CCC) -o $@ ex_cmds.c
|
||||
|
||||
@@ -3260,6 +3303,9 @@ objects/misc1.o: misc1.c
|
||||
objects/misc2.o: misc2.c
|
||||
$(CCC) -o $@ misc2.c
|
||||
|
||||
objects/mouse.o: mouse.c
|
||||
$(CCC) -o $@ mouse.c
|
||||
|
||||
objects/move.o: move.c
|
||||
$(CCC) -o $@ move.c
|
||||
|
||||
@@ -3272,9 +3318,12 @@ objects/normal.o: normal.c
|
||||
objects/ops.o: ops.c
|
||||
$(CCC) -o $@ ops.c
|
||||
|
||||
objects/option.o: option.c
|
||||
objects/option.o: option.c optiondefs.h
|
||||
$(CCC_NF) $(LUA_CFLAGS) $(PERL_CFLAGS) $(PYTHON_CFLAGS) $(PYTHON3_CFLAGS) $(RUBY_CFLAGS) $(TCL_CFLAGS) $(ALL_CFLAGS) -o $@ option.c
|
||||
|
||||
objects/optionstr.o: optionstr.c
|
||||
$(CCC_NF) $(LUA_CFLAGS) $(PERL_CFLAGS) $(PYTHON_CFLAGS) $(PYTHON3_CFLAGS) $(RUBY_CFLAGS) $(TCL_CFLAGS) $(ALL_CFLAGS) -o $@ optionstr.c
|
||||
|
||||
objects/os_beos.o: os_beos.c
|
||||
$(CCC) -o $@ os_beos.c
|
||||
|
||||
@@ -3299,8 +3348,8 @@ objects/winclip.o: winclip.c
|
||||
objects/pathdef.o: auto/pathdef.c
|
||||
$(CCC) -o $@ auto/pathdef.c
|
||||
|
||||
objects/popupmnu.o: popupmnu.c
|
||||
$(CCC) -o $@ popupmnu.c
|
||||
objects/popupmenu.o: popupmenu.c
|
||||
$(CCC) -o $@ popupmenu.c
|
||||
|
||||
objects/popupwin.o: popupwin.c
|
||||
$(CCC) -o $@ popupwin.c
|
||||
@@ -3314,9 +3363,12 @@ objects/pty.o: pty.c
|
||||
objects/quickfix.o: quickfix.c
|
||||
$(CCC) -o $@ quickfix.c
|
||||
|
||||
objects/regexp.o: regexp.c regexp_nfa.c
|
||||
objects/regexp.o: regexp.c regexp_bt.c regexp_nfa.c
|
||||
$(CCC) -o $@ regexp.c
|
||||
|
||||
objects/register.o: register.c
|
||||
$(CCC) -o $@ register.c
|
||||
|
||||
objects/scriptfile.o: scriptfile.c
|
||||
$(CCC) -o $@ scriptfile.c
|
||||
|
||||
@@ -3344,6 +3396,9 @@ objects/spell.o: spell.c
|
||||
objects/spellfile.o: spellfile.c
|
||||
$(CCC) -o $@ spellfile.c
|
||||
|
||||
objects/spellsuggest.o: spellsuggest.c
|
||||
$(CCC) -o $@ spellsuggest.c
|
||||
|
||||
objects/syntax.o: syntax.c
|
||||
$(CCC) -o $@ syntax.c
|
||||
|
||||
@@ -3380,6 +3435,9 @@ objects/viminfo.o: viminfo.c
|
||||
objects/window.o: window.c
|
||||
$(CCC) -o $@ window.c
|
||||
|
||||
objects/bufwrite.o: bufwrite.c
|
||||
$(CCC) -o $@ bufwrite.c
|
||||
|
||||
objects/netbeans.o: netbeans.c
|
||||
$(CCC) -o $@ netbeans.c
|
||||
|
||||
@@ -3400,8 +3458,8 @@ objects/encoding.o: libvterm/src/encoding.c $(TERM_DEPS)
|
||||
objects/keyboard.o: libvterm/src/keyboard.c $(TERM_DEPS)
|
||||
$(CCCTERM) -o $@ libvterm/src/keyboard.c
|
||||
|
||||
objects/mouse.o: libvterm/src/mouse.c $(TERM_DEPS)
|
||||
$(CCCTERM) -o $@ libvterm/src/mouse.c
|
||||
objects/termmouse.o: libvterm/src/termmouse.c $(TERM_DEPS)
|
||||
$(CCCTERM) -o $@ libvterm/src/termmouse.c
|
||||
|
||||
objects/parser.o: libvterm/src/parser.c $(TERM_DEPS)
|
||||
$(CCCTERM) -o $@ libvterm/src/parser.c
|
||||
@@ -3595,6 +3653,14 @@ objects/digraph.o: digraph.c vim.h protodef.h auto/config.h feature.h os_unix.h
|
||||
auto/osdef.h ascii.h keymap.h term.h macros.h option.h beval.h \
|
||||
proto/gui_beval.pro structs.h regexp.h gui.h alloc.h ex_cmds.h spell.h \
|
||||
proto.h globals.h
|
||||
objects/drawline.o: drawline.c vim.h protodef.h auto/config.h feature.h os_unix.h \
|
||||
auto/osdef.h ascii.h keymap.h term.h macros.h option.h beval.h \
|
||||
proto/gui_beval.pro structs.h regexp.h gui.h alloc.h ex_cmds.h spell.h \
|
||||
proto.h globals.h
|
||||
objects/drawscreen.o: drawscreen.c vim.h protodef.h auto/config.h feature.h os_unix.h \
|
||||
auto/osdef.h ascii.h keymap.h term.h macros.h option.h beval.h \
|
||||
proto/gui_beval.pro structs.h regexp.h gui.h alloc.h ex_cmds.h spell.h \
|
||||
proto.h globals.h
|
||||
objects/edit.o: edit.c vim.h protodef.h auto/config.h feature.h os_unix.h \
|
||||
auto/osdef.h ascii.h keymap.h term.h macros.h option.h beval.h \
|
||||
proto/gui_beval.pro structs.h regexp.h gui.h alloc.h ex_cmds.h spell.h \
|
||||
@@ -3603,6 +3669,10 @@ objects/eval.o: eval.c vim.h protodef.h auto/config.h feature.h os_unix.h \
|
||||
auto/osdef.h ascii.h keymap.h term.h macros.h option.h beval.h \
|
||||
proto/gui_beval.pro structs.h regexp.h gui.h alloc.h ex_cmds.h spell.h \
|
||||
proto.h globals.h version.h
|
||||
objects/evalbuffer.o: evalbuffer.c vim.h protodef.h auto/config.h feature.h os_unix.h \
|
||||
auto/osdef.h ascii.h keymap.h term.h macros.h option.h beval.h \
|
||||
proto/gui_beval.pro structs.h regexp.h gui.h alloc.h ex_cmds.h spell.h \
|
||||
proto.h globals.h version.h
|
||||
objects/evalfunc.o: evalfunc.c vim.h protodef.h auto/config.h feature.h os_unix.h \
|
||||
auto/osdef.h ascii.h keymap.h term.h macros.h option.h beval.h \
|
||||
proto/gui_beval.pro structs.h regexp.h gui.h alloc.h ex_cmds.h spell.h \
|
||||
@@ -3611,6 +3681,10 @@ objects/evalvars.o: evalvars.c vim.h protodef.h auto/config.h feature.h \
|
||||
os_unix.h auto/osdef.h ascii.h keymap.h term.h macros.h option.h beval.h \
|
||||
proto/gui_beval.pro structs.h regexp.h gui.h alloc.h ex_cmds.h spell.h \
|
||||
proto.h globals.h
|
||||
objects/evalwindow.o: evalwindow.c vim.h protodef.h auto/config.h feature.h \
|
||||
os_unix.h auto/osdef.h ascii.h keymap.h term.h macros.h option.h beval.h \
|
||||
proto/gui_beval.pro structs.h regexp.h gui.h alloc.h ex_cmds.h spell.h \
|
||||
proto.h globals.h
|
||||
objects/ex_cmds.o: ex_cmds.c vim.h protodef.h auto/config.h feature.h os_unix.h \
|
||||
auto/osdef.h ascii.h keymap.h term.h macros.h option.h beval.h \
|
||||
proto/gui_beval.pro structs.h regexp.h gui.h alloc.h ex_cmds.h spell.h \
|
||||
@@ -3723,6 +3797,10 @@ objects/misc2.o: misc2.c vim.h protodef.h auto/config.h feature.h os_unix.h \
|
||||
auto/osdef.h ascii.h keymap.h term.h macros.h option.h beval.h \
|
||||
proto/gui_beval.pro structs.h regexp.h gui.h alloc.h ex_cmds.h spell.h \
|
||||
proto.h globals.h
|
||||
objects/mouse.o: mouse.c vim.h protodef.h auto/config.h feature.h os_unix.h \
|
||||
auto/osdef.h ascii.h keymap.h term.h macros.h option.h beval.h \
|
||||
proto/gui_beval.pro structs.h regexp.h gui.h alloc.h ex_cmds.h spell.h \
|
||||
proto.h globals.h
|
||||
objects/move.o: move.c vim.h protodef.h auto/config.h feature.h os_unix.h \
|
||||
auto/osdef.h ascii.h keymap.h term.h macros.h option.h beval.h \
|
||||
proto/gui_beval.pro structs.h regexp.h gui.h alloc.h ex_cmds.h spell.h \
|
||||
@@ -3740,6 +3818,10 @@ objects/ops.o: ops.c vim.h protodef.h auto/config.h feature.h os_unix.h \
|
||||
proto/gui_beval.pro structs.h regexp.h gui.h alloc.h ex_cmds.h spell.h \
|
||||
proto.h globals.h
|
||||
objects/option.o: option.c vim.h protodef.h auto/config.h feature.h os_unix.h \
|
||||
auto/osdef.h ascii.h keymap.h term.h macros.h option.h beval.h \
|
||||
proto/gui_beval.pro structs.h regexp.h gui.h alloc.h ex_cmds.h spell.h \
|
||||
proto.h globals.h optiondefs.h
|
||||
objects/optionstr.o: optionstr.c vim.h protodef.h auto/config.h feature.h os_unix.h \
|
||||
auto/osdef.h ascii.h keymap.h term.h macros.h option.h beval.h \
|
||||
proto/gui_beval.pro structs.h regexp.h gui.h alloc.h ex_cmds.h spell.h \
|
||||
proto.h globals.h
|
||||
@@ -3751,7 +3833,7 @@ objects/pathdef.o: auto/pathdef.c vim.h protodef.h auto/config.h feature.h \
|
||||
os_unix.h auto/osdef.h ascii.h keymap.h term.h macros.h option.h beval.h \
|
||||
proto/gui_beval.pro structs.h regexp.h gui.h alloc.h ex_cmds.h spell.h \
|
||||
proto.h globals.h
|
||||
objects/popupmnu.o: popupmnu.c vim.h protodef.h auto/config.h feature.h os_unix.h \
|
||||
objects/popupmenu.o: popupmenu.c vim.h protodef.h auto/config.h feature.h os_unix.h \
|
||||
auto/osdef.h ascii.h keymap.h term.h macros.h option.h beval.h \
|
||||
proto/gui_beval.pro structs.h regexp.h gui.h alloc.h ex_cmds.h spell.h \
|
||||
proto.h globals.h
|
||||
@@ -3774,7 +3856,11 @@ objects/quickfix.o: quickfix.c vim.h protodef.h auto/config.h feature.h os_unix.
|
||||
objects/regexp.o: regexp.c vim.h protodef.h auto/config.h feature.h os_unix.h \
|
||||
auto/osdef.h ascii.h keymap.h term.h macros.h option.h beval.h \
|
||||
proto/gui_beval.pro structs.h regexp.h gui.h alloc.h ex_cmds.h spell.h \
|
||||
proto.h globals.h regexp_nfa.c
|
||||
proto.h globals.h regexp_bt.c regexp_nfa.c
|
||||
objects/register.o: register.c vim.h protodef.h auto/config.h feature.h os_unix.h \
|
||||
auto/osdef.h ascii.h keymap.h term.h macros.h option.h beval.h \
|
||||
proto/gui_beval.pro structs.h regexp.h gui.h alloc.h ex_cmds.h spell.h \
|
||||
proto.h globals.h
|
||||
objects/scriptfile.o: scriptfile.c vim.h protodef.h auto/config.h feature.h os_unix.h \
|
||||
auto/osdef.h ascii.h keymap.h term.h macros.h option.h beval.h \
|
||||
proto/gui_beval.pro structs.h regexp.h gui.h alloc.h ex_cmds.h spell.h \
|
||||
@@ -3811,6 +3897,10 @@ objects/spellfile.o: spellfile.c vim.h protodef.h auto/config.h feature.h \
|
||||
os_unix.h auto/osdef.h ascii.h keymap.h term.h macros.h option.h beval.h \
|
||||
proto/gui_beval.pro structs.h regexp.h gui.h alloc.h ex_cmds.h spell.h \
|
||||
proto.h globals.h
|
||||
objects/spellsuggest.o: spellsuggest.c vim.h protodef.h auto/config.h feature.h \
|
||||
os_unix.h auto/osdef.h ascii.h keymap.h term.h macros.h option.h beval.h \
|
||||
proto/gui_beval.pro structs.h regexp.h gui.h alloc.h ex_cmds.h spell.h \
|
||||
proto.h globals.h
|
||||
objects/syntax.o: syntax.c vim.h protodef.h auto/config.h feature.h os_unix.h \
|
||||
auto/osdef.h ascii.h keymap.h term.h macros.h option.h beval.h \
|
||||
proto/gui_beval.pro structs.h regexp.h gui.h alloc.h ex_cmds.h spell.h \
|
||||
@@ -3865,6 +3955,10 @@ objects/window.o: window.c vim.h protodef.h auto/config.h feature.h os_unix.h \
|
||||
auto/osdef.h ascii.h keymap.h term.h macros.h option.h beval.h \
|
||||
proto/gui_beval.pro structs.h regexp.h gui.h alloc.h ex_cmds.h spell.h \
|
||||
proto.h globals.h
|
||||
objects/bufwrite.o: bufwrite.c vim.h protodef.h auto/config.h feature.h os_unix.h \
|
||||
auto/osdef.h ascii.h keymap.h term.h macros.h option.h beval.h \
|
||||
proto/gui_beval.pro structs.h regexp.h gui.h alloc.h ex_cmds.h spell.h \
|
||||
proto.h globals.h
|
||||
objects/gui.o: gui.c vim.h protodef.h auto/config.h feature.h os_unix.h \
|
||||
auto/osdef.h ascii.h keymap.h term.h macros.h option.h beval.h \
|
||||
proto/gui_beval.pro structs.h regexp.h gui.h alloc.h ex_cmds.h spell.h \
|
||||
@@ -4013,7 +4107,7 @@ objects/encoding.o: libvterm/src/encoding.c libvterm/src/vterm_internal.h \
|
||||
objects/keyboard.o: libvterm/src/keyboard.c libvterm/src/vterm_internal.h \
|
||||
libvterm/include/vterm.h libvterm/include/vterm_keycodes.h \
|
||||
libvterm/src/utf8.h
|
||||
objects/mouse.o: libvterm/src/mouse.c libvterm/src/vterm_internal.h \
|
||||
objects/termmouse.o: libvterm/src/termmouse.c libvterm/src/vterm_internal.h \
|
||||
libvterm/include/vterm.h libvterm/include/vterm_keycodes.h \
|
||||
libvterm/src/utf8.h
|
||||
objects/parser.o: libvterm/src/parser.c libvterm/src/vterm_internal.h \
|
||||
|
||||
@@ -27,14 +27,19 @@ arglist.c | handling argument list
|
||||
autocmd.c | autocommands
|
||||
blob.c | blob data type
|
||||
buffer.c | manipulating buffers (loaded files)
|
||||
bufwrite.c | writing a buffer to file
|
||||
change.c | handling changes to text
|
||||
cmdexpand.c | command-line completion
|
||||
cmdhist.c | command-line history
|
||||
debugger.c | vim script debugger
|
||||
diff.c | diff mode (vimdiff)
|
||||
drawline.c | drawing a window line
|
||||
drawscreen.c | drawing the windows
|
||||
eval.c | expression evaluation
|
||||
evalbuffer.c | buffer related built-in functions
|
||||
evalfunc.c | built-in functions
|
||||
evalvars.c | vim variables
|
||||
evalwindow.c | window related built-in functions
|
||||
fileio.c | reading and writing files
|
||||
filepath.c | dealing with file names and paths
|
||||
findfile.c | search for files in 'path'
|
||||
@@ -50,19 +55,24 @@ memfile.c | storing lines for buffers in a swapfile
|
||||
memline.c | storing lines for buffers in memory
|
||||
menu.c | menus
|
||||
message.c | (error) messages
|
||||
mouse.c | handling the mouse
|
||||
ops.c | handling operators ("d", "y", "p")
|
||||
option.c | options
|
||||
popupmnu.c | popup menu
|
||||
optionstr.c | handling string options
|
||||
popupmenu.c | popup menu
|
||||
popupwin.c | popup window
|
||||
profiler.c | vim script profiler
|
||||
quickfix.c | quickfix commands (":make", ":cn")
|
||||
regexp.c | pattern matching
|
||||
register.c | handling registers
|
||||
scriptfile.c | runtime directory handling and sourcing scripts
|
||||
screen.c | updating the windows
|
||||
screen.c | lower level screen functions
|
||||
search.c | pattern searching
|
||||
session.c | sessions and views
|
||||
sign.c | signs
|
||||
spell.c | spell checking
|
||||
spell.c | spell checking core
|
||||
spellfile.c | spell file handling
|
||||
spellsuggest.c | spell correction suggestions
|
||||
syntax.c | syntax and other highlighting
|
||||
tag.c | tags
|
||||
term.c | terminal handling, termcap codes
|
||||
|
||||
2
src/auto/configure
vendored
2
src/auto/configure
vendored
@@ -7909,7 +7909,7 @@ if test "$enable_terminal" = "yes" -a "$enable_channel" = "yes"; then
|
||||
|
||||
TERM_SRC="libvterm/src/encoding.c libvterm/src/keyboard.c libvterm/src/mouse.c libvterm/src/parser.c libvterm/src/pen.c libvterm/src/termscreen.c libvterm/src/state.c libvterm/src/unicode.c libvterm/src/vterm.c"
|
||||
|
||||
TERM_OBJ="objects/encoding.o objects/keyboard.o objects/mouse.o objects/parser.o objects/pen.o objects/termscreen.o objects/state.o objects/unicode.o objects/vterm.o"
|
||||
TERM_OBJ="objects/encoding.o objects/keyboard.o objects/termmouse.o objects/parser.o objects/pen.o objects/termscreen.o objects/state.o objects/unicode.o objects/vterm.o"
|
||||
|
||||
fi
|
||||
|
||||
|
||||
@@ -155,6 +155,8 @@ static struct event_name
|
||||
{"QuickFixCmdPre", EVENT_QUICKFIXCMDPRE},
|
||||
{"QuitPre", EVENT_QUITPRE},
|
||||
{"RemoteReply", EVENT_REMOTEREPLY},
|
||||
{"SafeState", EVENT_SAFESTATE},
|
||||
{"SafeStateAgain", EVENT_SAFESTATEAGAIN},
|
||||
{"SessionLoadPost", EVENT_SESSIONLOADPOST},
|
||||
{"ShellCmdPost", EVENT_SHELLCMDPOST},
|
||||
{"ShellFilterPost", EVENT_SHELLFILTERPOST},
|
||||
|
||||
129
src/buffer.c
129
src/buffer.c
@@ -880,6 +880,7 @@ free_buffer(buf_T *buf)
|
||||
/* b:changedtick uses an item in buf_T, remove it now */
|
||||
dictitem_remove(buf->b_vars, (dictitem_T *)&buf->b_ct_di);
|
||||
unref_var_dict(buf->b_vars);
|
||||
remove_listeners(buf);
|
||||
#endif
|
||||
#ifdef FEAT_LUA
|
||||
lua_buffer_free(buf);
|
||||
@@ -908,6 +909,7 @@ free_buffer(buf_T *buf)
|
||||
#ifdef FEAT_JOB_CHANNEL
|
||||
vim_free(buf->b_prompt_text);
|
||||
free_callback(&buf->b_prompt_callback);
|
||||
free_callback(&buf->b_prompt_interrupt);
|
||||
#endif
|
||||
|
||||
buf_hashtab_remove(buf);
|
||||
@@ -1738,22 +1740,22 @@ set_curbuf(buf_T *buf, int action)
|
||||
static void
|
||||
enter_buffer(buf_T *buf)
|
||||
{
|
||||
/* Copy buffer and window local option values. Not for a help buffer. */
|
||||
// Get the buffer in the current window.
|
||||
curwin->w_buffer = buf;
|
||||
curbuf = buf;
|
||||
++curbuf->b_nwindows;
|
||||
|
||||
// Copy buffer and window local option values. Not for a help buffer.
|
||||
buf_copy_options(buf, BCO_ENTER | BCO_NOHELP);
|
||||
if (!buf->b_help)
|
||||
get_winopts(buf);
|
||||
#ifdef FEAT_FOLDING
|
||||
else
|
||||
/* Remove all folds in the window. */
|
||||
// Remove all folds in the window.
|
||||
clearFolding(curwin);
|
||||
foldUpdateAll(curwin); /* update folds (later). */
|
||||
foldUpdateAll(curwin); // update folds (later).
|
||||
#endif
|
||||
|
||||
/* Get the buffer in the current window. */
|
||||
curwin->w_buffer = buf;
|
||||
curbuf = buf;
|
||||
++curbuf->b_nwindows;
|
||||
|
||||
#ifdef FEAT_DIFF
|
||||
if (curwin->w_p_diff)
|
||||
diff_buf_add(curbuf);
|
||||
@@ -2226,9 +2228,7 @@ free_buf_options(
|
||||
keymap_clear(&buf->b_kmap_ga);
|
||||
ga_clear(&buf->b_kmap_ga);
|
||||
#endif
|
||||
#ifdef FEAT_COMMENTS
|
||||
clear_string_option(&buf->b_p_com);
|
||||
#endif
|
||||
#ifdef FEAT_FOLDING
|
||||
clear_string_option(&buf->b_p_cms);
|
||||
#endif
|
||||
@@ -2980,9 +2980,7 @@ get_winopts(buf_T *buf)
|
||||
if (p_fdls >= 0)
|
||||
curwin->w_p_fdl = p_fdls;
|
||||
#endif
|
||||
#ifdef FEAT_SYN_HL
|
||||
check_colorcolumn(curwin);
|
||||
#endif
|
||||
after_copy_winopt(curwin);
|
||||
}
|
||||
|
||||
/*
|
||||
@@ -5450,66 +5448,6 @@ buf_spname(buf_T *buf)
|
||||
return NULL;
|
||||
}
|
||||
|
||||
#if defined(FEAT_JOB_CHANNEL) \
|
||||
|| defined(FEAT_PYTHON) || defined(FEAT_PYTHON3) \
|
||||
|| defined(PROTO)
|
||||
/*
|
||||
* Find a window for buffer "buf".
|
||||
* If found OK is returned and "wp" and "tp" are set to the window and tabpage.
|
||||
* If not found FAIL is returned.
|
||||
*/
|
||||
static int
|
||||
find_win_for_buf(
|
||||
buf_T *buf,
|
||||
win_T **wp,
|
||||
tabpage_T **tp)
|
||||
{
|
||||
FOR_ALL_TAB_WINDOWS(*tp, *wp)
|
||||
if ((*wp)->w_buffer == buf)
|
||||
goto win_found;
|
||||
return FAIL;
|
||||
win_found:
|
||||
return OK;
|
||||
}
|
||||
|
||||
/*
|
||||
* Find a window that contains "buf" and switch to it.
|
||||
* If there is no such window, use the current window and change "curbuf".
|
||||
* Caller must initialize save_curbuf to NULL.
|
||||
* restore_win_for_buf() MUST be called later!
|
||||
*/
|
||||
void
|
||||
switch_to_win_for_buf(
|
||||
buf_T *buf,
|
||||
win_T **save_curwinp,
|
||||
tabpage_T **save_curtabp,
|
||||
bufref_T *save_curbuf)
|
||||
{
|
||||
win_T *wp;
|
||||
tabpage_T *tp;
|
||||
|
||||
if (find_win_for_buf(buf, &wp, &tp) == FAIL)
|
||||
switch_buffer(save_curbuf, buf);
|
||||
else if (switch_win(save_curwinp, save_curtabp, wp, tp, TRUE) == FAIL)
|
||||
{
|
||||
restore_win(*save_curwinp, *save_curtabp, TRUE);
|
||||
switch_buffer(save_curbuf, buf);
|
||||
}
|
||||
}
|
||||
|
||||
void
|
||||
restore_win_for_buf(
|
||||
win_T *save_curwin,
|
||||
tabpage_T *save_curtab,
|
||||
bufref_T *save_curbuf)
|
||||
{
|
||||
if (save_curbuf->br_buf == NULL)
|
||||
restore_win(save_curwin, save_curtab, TRUE);
|
||||
else
|
||||
restore_buffer(save_curbuf);
|
||||
}
|
||||
#endif
|
||||
|
||||
/*
|
||||
* Set 'buflisted' for curbuf to "on" and trigger autocommands if it changed.
|
||||
*/
|
||||
@@ -5603,48 +5541,3 @@ wipe_buffer(
|
||||
if (!aucmd)
|
||||
unblock_autocmds();
|
||||
}
|
||||
|
||||
#if defined(FEAT_EVAL) || defined(PROTO)
|
||||
/*
|
||||
* Mark references in functions of buffers.
|
||||
*/
|
||||
int
|
||||
set_ref_in_buffers(int copyID)
|
||||
{
|
||||
int abort = FALSE;
|
||||
buf_T *bp;
|
||||
|
||||
FOR_ALL_BUFFERS(bp)
|
||||
{
|
||||
listener_T *lnr;
|
||||
typval_T tv;
|
||||
|
||||
for (lnr = bp->b_listener; !abort && lnr != NULL; lnr = lnr->lr_next)
|
||||
{
|
||||
if (lnr->lr_callback.cb_partial != NULL)
|
||||
{
|
||||
tv.v_type = VAR_PARTIAL;
|
||||
tv.vval.v_partial = lnr->lr_callback.cb_partial;
|
||||
abort = abort || set_ref_in_item(&tv, copyID, NULL, NULL);
|
||||
}
|
||||
}
|
||||
# ifdef FEAT_JOB_CHANNEL
|
||||
if (!abort && bp->b_prompt_callback.cb_partial != NULL)
|
||||
{
|
||||
tv.v_type = VAR_PARTIAL;
|
||||
tv.vval.v_partial = bp->b_prompt_callback.cb_partial;
|
||||
abort = abort || set_ref_in_item(&tv, copyID, NULL, NULL);
|
||||
}
|
||||
if (!abort && bp->b_prompt_interrupt.cb_partial != NULL)
|
||||
{
|
||||
tv.v_type = VAR_PARTIAL;
|
||||
tv.vval.v_partial = bp->b_prompt_interrupt.cb_partial;
|
||||
abort = abort || set_ref_in_item(&tv, copyID, NULL, NULL);
|
||||
}
|
||||
# endif
|
||||
if (abort)
|
||||
break;
|
||||
}
|
||||
return abort;
|
||||
}
|
||||
#endif
|
||||
|
||||
2559
src/bufwrite.c
Normal file
2559
src/bufwrite.c
Normal file
File diff suppressed because it is too large
Load Diff
55
src/change.c
55
src/change.c
@@ -300,7 +300,7 @@ f_listener_remove(typval_T *argvars, typval_T *rettv)
|
||||
int id = tv_get_number(argvars);
|
||||
buf_T *buf;
|
||||
|
||||
for (buf = firstbuf; buf != NULL; buf = buf->b_next)
|
||||
FOR_ALL_BUFFERS(buf)
|
||||
{
|
||||
prev = NULL;
|
||||
for (lnr = buf->b_listener; lnr != NULL; lnr = next)
|
||||
@@ -402,6 +402,24 @@ invoke_listeners(buf_T *buf)
|
||||
after_updating_screen(TRUE);
|
||||
recursive = FALSE;
|
||||
}
|
||||
|
||||
/*
|
||||
* Remove all listeners associated with "buf".
|
||||
*/
|
||||
void
|
||||
remove_listeners(buf_T *buf)
|
||||
{
|
||||
listener_T *lnr;
|
||||
listener_T *next;
|
||||
|
||||
for (lnr = buf->b_listener; lnr != NULL; lnr = next)
|
||||
{
|
||||
next = lnr->lr_next;
|
||||
free_callback(&lnr->lr_callback);
|
||||
vim_free(lnr);
|
||||
}
|
||||
buf->b_listener = NULL;
|
||||
}
|
||||
#endif
|
||||
|
||||
/*
|
||||
@@ -593,10 +611,11 @@ changed_common(
|
||||
#endif
|
||||
// Relative numbering may require updating more. Cursor line
|
||||
// highlighting probably needs to be updated if it's below the
|
||||
// change.
|
||||
// change (or is using screenline highlighting)
|
||||
if (wp->w_p_rnu
|
||||
#ifdef FEAT_SYN_HL
|
||||
|| (wp->w_p_cul && lnum <= wp->w_last_cursorline)
|
||||
|| ((wp->w_p_cul && lnum <= wp->w_last_cursorline)
|
||||
|| (wp->w_p_culopt_flags & CULOPT_SCRLINE))
|
||||
#endif
|
||||
)
|
||||
redraw_win_later(wp, SOME_VALID);
|
||||
@@ -1413,18 +1432,14 @@ open_line(
|
||||
int n;
|
||||
int trunc_line = FALSE; // truncate current line afterwards
|
||||
int retval = FAIL; // return value
|
||||
#ifdef FEAT_COMMENTS
|
||||
int extra_len = 0; // length of p_extra string
|
||||
int lead_len; // length of comment leader
|
||||
char_u *lead_flags; // position in 'comments' for comment leader
|
||||
char_u *leader = NULL; // copy of comment leader
|
||||
#endif
|
||||
char_u *allocated = NULL; // allocated memory
|
||||
char_u *p;
|
||||
int saved_char = NUL; // init for GCC
|
||||
#if defined(FEAT_SMARTINDENT) || defined(FEAT_COMMENTS)
|
||||
pos_T *pos;
|
||||
#endif
|
||||
#ifdef FEAT_SMARTINDENT
|
||||
int do_si = (!p_paste && curbuf->b_p_si
|
||||
# ifdef FEAT_CINDENT
|
||||
@@ -1492,9 +1507,7 @@ open_line(
|
||||
first_char = *p;
|
||||
}
|
||||
#endif
|
||||
#ifdef FEAT_COMMENTS
|
||||
extra_len = (int)STRLEN(p_extra);
|
||||
#endif
|
||||
saved_char = *p_extra;
|
||||
*p_extra = NUL;
|
||||
}
|
||||
@@ -1543,27 +1556,20 @@ open_line(
|
||||
|
||||
old_cursor = curwin->w_cursor;
|
||||
ptr = saved_line;
|
||||
# ifdef FEAT_COMMENTS
|
||||
if (flags & OPENLINE_DO_COM)
|
||||
lead_len = get_leader_len(ptr, NULL, FALSE, TRUE);
|
||||
else
|
||||
lead_len = 0;
|
||||
# endif
|
||||
if (dir == FORWARD)
|
||||
{
|
||||
// Skip preprocessor directives, unless they are
|
||||
// recognised as comments.
|
||||
if (
|
||||
# ifdef FEAT_COMMENTS
|
||||
lead_len == 0 &&
|
||||
# endif
|
||||
ptr[0] == '#')
|
||||
if ( lead_len == 0 && ptr[0] == '#')
|
||||
{
|
||||
while (ptr[0] == '#' && curwin->w_cursor.lnum > 1)
|
||||
ptr = ml_get(--curwin->w_cursor.lnum);
|
||||
newindent = get_indent();
|
||||
}
|
||||
# ifdef FEAT_COMMENTS
|
||||
if (flags & OPENLINE_DO_COM)
|
||||
lead_len = get_leader_len(ptr, NULL, FALSE, TRUE);
|
||||
else
|
||||
@@ -1599,7 +1605,6 @@ open_line(
|
||||
}
|
||||
}
|
||||
else // Not a comment line
|
||||
# endif
|
||||
{
|
||||
// Find last non-blank in line
|
||||
p = ptr + STRLEN(ptr) - 1;
|
||||
@@ -1650,11 +1655,7 @@ open_line(
|
||||
{
|
||||
// Skip preprocessor directives, unless they are
|
||||
// recognised as comments.
|
||||
if (
|
||||
# ifdef FEAT_COMMENTS
|
||||
lead_len == 0 &&
|
||||
# endif
|
||||
ptr[0] == '#')
|
||||
if (lead_len == 0 && ptr[0] == '#')
|
||||
{
|
||||
int was_backslashed = FALSE;
|
||||
|
||||
@@ -1687,7 +1688,6 @@ open_line(
|
||||
did_ai = TRUE;
|
||||
}
|
||||
|
||||
#ifdef FEAT_COMMENTS
|
||||
// Find out if the current line starts with a comment leader.
|
||||
// This may then be inserted in front of the new line.
|
||||
end_comment_pending = NUL;
|
||||
@@ -2085,7 +2085,6 @@ open_line(
|
||||
}
|
||||
}
|
||||
}
|
||||
#endif
|
||||
|
||||
// (State == INSERT || State == REPLACE), only when dir == FORWARD
|
||||
if (p_extra != NULL)
|
||||
@@ -2119,7 +2118,6 @@ open_line(
|
||||
if (p_extra == NULL)
|
||||
p_extra = (char_u *)""; // append empty line
|
||||
|
||||
#ifdef FEAT_COMMENTS
|
||||
// concatenate leader and p_extra, if there is a leader
|
||||
if (lead_len)
|
||||
{
|
||||
@@ -2146,7 +2144,6 @@ open_line(
|
||||
}
|
||||
else
|
||||
end_comment_pending = NUL; // turns out there was no leader
|
||||
#endif
|
||||
|
||||
old_cursor = curwin->w_cursor;
|
||||
if (dir == BACKWARD)
|
||||
@@ -2236,13 +2233,11 @@ open_line(
|
||||
#endif
|
||||
}
|
||||
|
||||
#ifdef FEAT_COMMENTS
|
||||
// In REPLACE mode, for each character in the extra leader, there must be
|
||||
// a NUL on the replace stack, for when it is deleted with BS.
|
||||
if (REPLACE_NORMAL(State))
|
||||
while (lead_len-- > 0)
|
||||
replace_push(NUL);
|
||||
#endif
|
||||
|
||||
curwin->w_cursor = old_cursor;
|
||||
|
||||
@@ -2298,9 +2293,7 @@ open_line(
|
||||
#ifdef FEAT_LISP
|
||||
// May do lisp indenting.
|
||||
if (!p_paste
|
||||
# ifdef FEAT_COMMENTS
|
||||
&& leader == NULL
|
||||
# endif
|
||||
&& curbuf->b_p_lisp
|
||||
&& curbuf->b_p_ai)
|
||||
{
|
||||
|
||||
@@ -141,7 +141,13 @@ ch_logfile(char_u *fname, char_u *opt)
|
||||
FILE *file = NULL;
|
||||
|
||||
if (log_fd != NULL)
|
||||
{
|
||||
if (*fname != NUL)
|
||||
ch_log(NULL, "closing, opening %s", fname);
|
||||
else
|
||||
ch_log(NULL, "closing");
|
||||
fclose(log_fd);
|
||||
}
|
||||
|
||||
if (*fname != NUL)
|
||||
{
|
||||
@@ -194,8 +200,6 @@ ch_log_lead(const char *what, channel_T *ch, ch_part_T part)
|
||||
}
|
||||
}
|
||||
|
||||
static int did_log_msg = TRUE;
|
||||
|
||||
#ifndef PROTO // prototype is in proto.h
|
||||
void
|
||||
ch_log(channel_T *ch, const char *fmt, ...)
|
||||
@@ -210,7 +214,7 @@ ch_log(channel_T *ch, const char *fmt, ...)
|
||||
va_end(ap);
|
||||
fputc('\n', log_fd);
|
||||
fflush(log_fd);
|
||||
did_log_msg = TRUE;
|
||||
did_repeated_msg = 0;
|
||||
}
|
||||
}
|
||||
#endif
|
||||
@@ -235,7 +239,7 @@ ch_error(channel_T *ch, const char *fmt, ...)
|
||||
va_end(ap);
|
||||
fputc('\n', log_fd);
|
||||
fflush(log_fd);
|
||||
did_log_msg = TRUE;
|
||||
did_repeated_msg = 0;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -577,7 +581,7 @@ messageFromServerGtk2(gpointer clientData,
|
||||
# endif
|
||||
|
||||
static void
|
||||
channel_gui_register_one(channel_T *channel, ch_part_T part)
|
||||
channel_gui_register_one(channel_T *channel, ch_part_T part UNUSED)
|
||||
{
|
||||
if (!CH_HAS_GUI)
|
||||
return;
|
||||
@@ -661,7 +665,7 @@ channel_gui_register_all(void)
|
||||
}
|
||||
|
||||
static void
|
||||
channel_gui_unregister_one(channel_T *channel, ch_part_T part)
|
||||
channel_gui_unregister_one(channel_T *channel UNUSED, ch_part_T part UNUSED)
|
||||
{
|
||||
# ifdef FEAT_GUI_X11
|
||||
if (channel->ch_part[part].ch_inputHandler != (XtInputId)NULL)
|
||||
@@ -1036,7 +1040,7 @@ prepare_buffer(buf_T *buf)
|
||||
* Returns NULL if there is something very wrong (error already reported).
|
||||
*/
|
||||
static buf_T *
|
||||
find_buffer(char_u *name, int err, int msg)
|
||||
channel_find_buffer(char_u *name, int err, int msg)
|
||||
{
|
||||
buf_T *buf = NULL;
|
||||
buf_T *save_curbuf = curbuf;
|
||||
@@ -1126,7 +1130,7 @@ channel_set_options(channel_T *channel, jobopt_T *opt)
|
||||
|
||||
if (opt->jo_set2 & JO2_OUT_MSG)
|
||||
msg = opt->jo_message[PART_OUT];
|
||||
buf = find_buffer(opt->jo_io_name[PART_OUT], FALSE, msg);
|
||||
buf = channel_find_buffer(opt->jo_io_name[PART_OUT], FALSE, msg);
|
||||
}
|
||||
if (buf != NULL)
|
||||
{
|
||||
@@ -1173,7 +1177,7 @@ channel_set_options(channel_T *channel, jobopt_T *opt)
|
||||
|
||||
if (opt->jo_set2 & JO2_ERR_MSG)
|
||||
msg = opt->jo_message[PART_ERR];
|
||||
buf = find_buffer(opt->jo_io_name[PART_ERR], TRUE, msg);
|
||||
buf = channel_find_buffer(opt->jo_io_name[PART_ERR], TRUE, msg);
|
||||
}
|
||||
if (buf != NULL)
|
||||
{
|
||||
@@ -3483,6 +3487,7 @@ channel_read(channel_T *channel, ch_part_T part, char *func)
|
||||
* Read from RAW or NL "channel"/"part". Blocks until there is something to
|
||||
* read or the timeout expires.
|
||||
* When "raw" is TRUE don't block waiting on a NL.
|
||||
* Does not trigger timers or handle messages.
|
||||
* Returns what was read in allocated memory.
|
||||
* Returns NULL in case of error or timeout.
|
||||
*/
|
||||
@@ -3569,6 +3574,17 @@ channel_read_block(
|
||||
return msg;
|
||||
}
|
||||
|
||||
static int channel_blocking_wait = 0;
|
||||
|
||||
/*
|
||||
* Return TRUE if in a blocking wait that might trigger callbacks.
|
||||
*/
|
||||
int
|
||||
channel_in_blocking_wait(void)
|
||||
{
|
||||
return channel_blocking_wait > 0;
|
||||
}
|
||||
|
||||
/*
|
||||
* Read one JSON message with ID "id" from "channel"/"part" and store the
|
||||
* result in "rettv".
|
||||
@@ -3589,10 +3605,14 @@ channel_read_json_block(
|
||||
sock_T fd;
|
||||
int timeout;
|
||||
chanpart_T *chanpart = &channel->ch_part[part];
|
||||
int retval = FAIL;
|
||||
|
||||
ch_log(channel, "Blocking read JSON for id %d", id);
|
||||
++channel_blocking_wait;
|
||||
|
||||
if (id >= 0)
|
||||
channel_add_block_id(chanpart, id);
|
||||
|
||||
for (;;)
|
||||
{
|
||||
more = channel_parse_json(channel, part);
|
||||
@@ -3600,10 +3620,9 @@ channel_read_json_block(
|
||||
// search for message "id"
|
||||
if (channel_get_json(channel, part, id, TRUE, rettv) == OK)
|
||||
{
|
||||
if (id >= 0)
|
||||
channel_remove_block_id(chanpart, id);
|
||||
ch_log(channel, "Received JSON for id %d", id);
|
||||
return OK;
|
||||
retval = OK;
|
||||
break;
|
||||
}
|
||||
|
||||
if (!more)
|
||||
@@ -3659,7 +3678,9 @@ channel_read_json_block(
|
||||
}
|
||||
if (id >= 0)
|
||||
channel_remove_block_id(chanpart, id);
|
||||
return FAIL;
|
||||
--channel_blocking_wait;
|
||||
|
||||
return retval;
|
||||
}
|
||||
|
||||
/*
|
||||
@@ -3901,7 +3922,7 @@ channel_send(
|
||||
vim_ignored = (int)fwrite(buf_arg, len_arg, 1, log_fd);
|
||||
fprintf(log_fd, "'\n");
|
||||
fflush(log_fd);
|
||||
did_log_msg = TRUE;
|
||||
did_repeated_msg = 0;
|
||||
}
|
||||
|
||||
for (;;)
|
||||
@@ -4195,9 +4216,9 @@ ch_raw_common(typval_T *argvars, typval_T *rettv, int eval)
|
||||
free_job_options(&opt);
|
||||
}
|
||||
|
||||
# define KEEP_OPEN_TIME 20 /* msec */
|
||||
#define KEEP_OPEN_TIME 20 /* msec */
|
||||
|
||||
# if (defined(UNIX) && !defined(HAVE_SELECT)) || defined(PROTO)
|
||||
#if (defined(UNIX) && !defined(HAVE_SELECT)) || defined(PROTO)
|
||||
/*
|
||||
* Add open channels to the poll struct.
|
||||
* Return the adjusted struct index.
|
||||
@@ -4288,9 +4309,9 @@ channel_poll_check(int ret_in, void *fds_in)
|
||||
|
||||
return ret;
|
||||
}
|
||||
# endif /* UNIX && !HAVE_SELECT */
|
||||
#endif /* UNIX && !HAVE_SELECT */
|
||||
|
||||
# if (!defined(MSWIN) && defined(HAVE_SELECT)) || defined(PROTO)
|
||||
#if (!defined(MSWIN) && defined(HAVE_SELECT)) || defined(PROTO)
|
||||
|
||||
/*
|
||||
* The "fd_set" type is hidden to avoid problems with the function proto.
|
||||
@@ -4381,7 +4402,7 @@ channel_select_check(int ret_in, void *rfds_in, void *wfds_in)
|
||||
if (ret > 0 && in_part->ch_fd != INVALID_FD
|
||||
&& FD_ISSET(in_part->ch_fd, wfds))
|
||||
{
|
||||
/* Clear the flag first, ch_fd may change in channel_write_input(). */
|
||||
// Clear the flag first, ch_fd may change in channel_write_input().
|
||||
FD_CLR(in_part->ch_fd, wfds);
|
||||
channel_write_input(channel);
|
||||
--ret;
|
||||
@@ -4390,11 +4411,12 @@ channel_select_check(int ret_in, void *rfds_in, void *wfds_in)
|
||||
|
||||
return ret;
|
||||
}
|
||||
# endif /* !MSWIN && HAVE_SELECT */
|
||||
#endif // !MSWIN && HAVE_SELECT
|
||||
|
||||
/*
|
||||
* Execute queued up commands.
|
||||
* Invoked from the main loop when it's safe to execute received commands.
|
||||
* Invoked from the main loop when it's safe to execute received commands,
|
||||
* and during a blocking wait for ch_evalexpr().
|
||||
* Return TRUE when something was done.
|
||||
*/
|
||||
int
|
||||
@@ -4414,10 +4436,11 @@ channel_parse_messages(void)
|
||||
|
||||
/* Only do this message when another message was given, otherwise we get
|
||||
* lots of them. */
|
||||
if (did_log_msg)
|
||||
if ((did_repeated_msg & REPEATED_MSG_LOOKING) == 0)
|
||||
{
|
||||
ch_log(NULL, "looking for messages on channels");
|
||||
did_log_msg = FALSE;
|
||||
// now we should also give the message for SafeState
|
||||
did_repeated_msg = REPEATED_MSG_LOOKING;
|
||||
}
|
||||
while (channel != NULL)
|
||||
{
|
||||
@@ -5127,6 +5150,14 @@ get_job_options(typval_T *tv, jobopt_T *opt, int supported, int supported2)
|
||||
memcpy(opt->jo_ansi_colors, rgb, sizeof(rgb));
|
||||
}
|
||||
# endif
|
||||
else if (STRCMP(hi->hi_key, "term_api") == 0)
|
||||
{
|
||||
if (!(supported2 & JO2_TERM_API))
|
||||
break;
|
||||
opt->jo_set2 |= JO2_TERM_API;
|
||||
opt->jo_term_api = tv_get_string_buf_chk(item,
|
||||
opt->jo_term_api_buf);
|
||||
}
|
||||
#endif
|
||||
else if (STRCMP(hi->hi_key, "env") == 0)
|
||||
{
|
||||
@@ -5782,7 +5813,7 @@ job_check_ended(void)
|
||||
job_T *
|
||||
job_start(
|
||||
typval_T *argvars,
|
||||
char **argv_arg,
|
||||
char **argv_arg UNUSED,
|
||||
jobopt_T *opt_arg,
|
||||
int is_terminal UNUSED)
|
||||
{
|
||||
|
||||
@@ -1773,6 +1773,7 @@ vim_isblankline(char_u *lbuf)
|
||||
* If "what" contains STR2NR_OCT recognize octal numbers
|
||||
* If "what" contains STR2NR_HEX recognize hex numbers
|
||||
* If "what" contains STR2NR_FORCE always assume bin/oct/hex.
|
||||
* If "what" contains STR2NR_QUOTE ignore embedded single quotes
|
||||
* If maxlen > 0, check at a maximum maxlen chars.
|
||||
* If strict is TRUE, check the number strictly. return *len = 0 if fail.
|
||||
*/
|
||||
@@ -1841,7 +1842,8 @@ vim_str2nr(
|
||||
|
||||
// Do the conversion manually to avoid sscanf() quirks.
|
||||
n = 1;
|
||||
if (pre == 'B' || pre == 'b' || what == STR2NR_BIN + STR2NR_FORCE)
|
||||
if (pre == 'B' || pre == 'b'
|
||||
|| ((what & STR2NR_BIN) && (what & STR2NR_FORCE)))
|
||||
{
|
||||
/* bin */
|
||||
if (pre != 0)
|
||||
@@ -1856,9 +1858,16 @@ vim_str2nr(
|
||||
++ptr;
|
||||
if (n++ == maxlen)
|
||||
break;
|
||||
if ((what & STR2NR_QUOTE) && *ptr == '\''
|
||||
&& '0' <= ptr[1] && ptr[1] <= '1')
|
||||
{
|
||||
++ptr;
|
||||
if (n++ == maxlen)
|
||||
break;
|
||||
}
|
||||
}
|
||||
else if (pre == '0' || what == STR2NR_OCT + STR2NR_FORCE)
|
||||
}
|
||||
else if (pre == '0' || ((what & STR2NR_OCT) && (what & STR2NR_FORCE)))
|
||||
{
|
||||
/* octal */
|
||||
while ('0' <= *ptr && *ptr <= '7')
|
||||
@@ -1871,9 +1880,16 @@ vim_str2nr(
|
||||
++ptr;
|
||||
if (n++ == maxlen)
|
||||
break;
|
||||
if ((what & STR2NR_QUOTE) && *ptr == '\''
|
||||
&& '0' <= ptr[1] && ptr[1] <= '7')
|
||||
{
|
||||
++ptr;
|
||||
if (n++ == maxlen)
|
||||
break;
|
||||
}
|
||||
}
|
||||
else if (pre != 0 || what == STR2NR_HEX + STR2NR_FORCE)
|
||||
}
|
||||
else if (pre != 0 || ((what & STR2NR_HEX) && (what & STR2NR_FORCE)))
|
||||
{
|
||||
/* hex */
|
||||
if (pre != 0)
|
||||
@@ -1888,6 +1904,12 @@ vim_str2nr(
|
||||
++ptr;
|
||||
if (n++ == maxlen)
|
||||
break;
|
||||
if ((what & STR2NR_QUOTE) && *ptr == '\'' && vim_isxdigit(ptr[1]))
|
||||
{
|
||||
++ptr;
|
||||
if (n++ == maxlen)
|
||||
break;
|
||||
}
|
||||
}
|
||||
}
|
||||
else
|
||||
@@ -1906,8 +1928,15 @@ vim_str2nr(
|
||||
++ptr;
|
||||
if (n++ == maxlen)
|
||||
break;
|
||||
if ((what & STR2NR_QUOTE) && *ptr == '\'' && VIM_ISDIGIT(ptr[1]))
|
||||
{
|
||||
++ptr;
|
||||
if (n++ == maxlen)
|
||||
break;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
// Check for an alpha-numeric character immediately following, that is
|
||||
// most likely a typo.
|
||||
if (strict && n - 1 != maxlen && ASCII_ISALNUM(*ptr))
|
||||
|
||||
@@ -2106,7 +2106,7 @@ if test "$enable_terminal" = "yes" -a "$enable_channel" = "yes"; then
|
||||
AC_DEFINE(FEAT_TERMINAL)
|
||||
TERM_SRC="libvterm/src/encoding.c libvterm/src/keyboard.c libvterm/src/mouse.c libvterm/src/parser.c libvterm/src/pen.c libvterm/src/termscreen.c libvterm/src/state.c libvterm/src/unicode.c libvterm/src/vterm.c"
|
||||
AC_SUBST(TERM_SRC)
|
||||
TERM_OBJ="objects/encoding.o objects/keyboard.o objects/mouse.o objects/parser.o objects/pen.o objects/termscreen.o objects/state.o objects/unicode.o objects/vterm.o"
|
||||
TERM_OBJ="objects/encoding.o objects/keyboard.o objects/termmouse.o objects/parser.o objects/pen.o objects/termscreen.o objects/state.o objects/unicode.o objects/vterm.o"
|
||||
AC_SUBST(TERM_OBJ)
|
||||
fi
|
||||
|
||||
|
||||
@@ -822,7 +822,6 @@ dict_get_tv(char_u **arg, typval_T *rettv, int evaluate, int literal)
|
||||
goto failret;
|
||||
}
|
||||
item = dictitem_alloc(key);
|
||||
clear_tv(&tvkey);
|
||||
if (item != NULL)
|
||||
{
|
||||
item->di_tv = tv;
|
||||
@@ -831,6 +830,7 @@ dict_get_tv(char_u **arg, typval_T *rettv, int evaluate, int literal)
|
||||
dictitem_free(item);
|
||||
}
|
||||
}
|
||||
clear_tv(&tvkey);
|
||||
|
||||
if (**arg == '}')
|
||||
break;
|
||||
|
||||
@@ -14,7 +14,7 @@
|
||||
*/
|
||||
|
||||
/*
|
||||
* Include common code for dosinst.c and uninstal.c.
|
||||
* Include common code for dosinst.c and uninstall.c.
|
||||
*/
|
||||
#define DOSINST
|
||||
#include "dosinst.h"
|
||||
@@ -1686,7 +1686,7 @@ install_registry(void)
|
||||
|
||||
/* For the NSIS installer use the generated uninstaller. */
|
||||
if (interactive)
|
||||
sprintf(uninstall_string, "%s\\uninstal.exe", installdir);
|
||||
sprintf(uninstall_string, "%s\\uninstall.exe", installdir);
|
||||
else
|
||||
sprintf(uninstall_string, "%s\\uninstall-gui.exe", installdir);
|
||||
|
||||
@@ -1962,7 +1962,7 @@ install_start_menu(int idx)
|
||||
return;
|
||||
}
|
||||
if (build_shortcut("Uninstall",
|
||||
interactive ? "uninstal.exe" : "uninstall-gui.exe", "",
|
||||
interactive ? "uninstall.exe" : "uninstall-gui.exe", "",
|
||||
VIM_STARTMENU, installdir) == FAIL)
|
||||
return;
|
||||
/* For Windows NT the working dir of the vimtutor.bat must be right,
|
||||
|
||||
@@ -7,7 +7,7 @@
|
||||
* See README.txt for an overview of the Vim source code.
|
||||
*/
|
||||
/*
|
||||
* dosinst.h: Common code for dosinst.c and uninstal.c
|
||||
* dosinst.h: Common code for dosinst.c and uninstall.c
|
||||
*/
|
||||
|
||||
/* Visual Studio 2005 has 'deprecated' many of the standard CRT functions */
|
||||
|
||||
3137
src/drawline.c
Normal file
3137
src/drawline.c
Normal file
File diff suppressed because it is too large
Load Diff
3112
src/drawscreen.c
Normal file
3112
src/drawscreen.c
Normal file
File diff suppressed because it is too large
Load Diff
215
src/edit.c
215
src/edit.c
@@ -27,7 +27,6 @@ static void ins_ctrl_v(void);
|
||||
#ifdef FEAT_JOB_CHANNEL
|
||||
static void init_prompt(int cmdchar_todo);
|
||||
#endif
|
||||
static void undisplay_dollar(void);
|
||||
static void insert_special(int, int, int);
|
||||
static void internal_format(int textwidth, int second_indent, int flags, int format_only, int c);
|
||||
static void check_auto_format(int);
|
||||
@@ -56,10 +55,6 @@ static void ins_ctrl_o(void);
|
||||
static void ins_shift(int c, int lastc);
|
||||
static void ins_del(void);
|
||||
static int ins_bs(int c, int mode, int *inserted_space_p);
|
||||
#ifdef FEAT_MOUSE
|
||||
static void ins_mouse(int c);
|
||||
static void ins_mousescroll(int dir);
|
||||
#endif
|
||||
#if defined(FEAT_GUI_TABLINE) || defined(PROTO)
|
||||
static void ins_tabline(int c);
|
||||
#endif
|
||||
@@ -322,9 +317,7 @@ edit(
|
||||
im_set_active(curbuf->b_p_iminsert == B_IMODE_IM);
|
||||
#endif
|
||||
|
||||
#ifdef FEAT_MOUSE
|
||||
setmouse();
|
||||
#endif
|
||||
#ifdef FEAT_CMDL_INFO
|
||||
clear_showcmd();
|
||||
#endif
|
||||
@@ -1509,6 +1502,11 @@ ins_redraw(int ready) // not busy with something
|
||||
(linenr_T)(curwin->w_cursor.lnum + 1));
|
||||
}
|
||||
|
||||
// Trigger SafeState if nothing is pending.
|
||||
may_trigger_safestate(ready
|
||||
&& !ins_compl_active()
|
||||
&& !pum_visible());
|
||||
|
||||
#if defined(FEAT_CONCEAL)
|
||||
if ((conceal_update_lines
|
||||
&& (conceal_old_cursor_line != conceal_new_cursor_line
|
||||
@@ -1754,7 +1752,7 @@ display_dollar(colnr_T col)
|
||||
* Call this function before moving the cursor from the normal insert position
|
||||
* in insert mode.
|
||||
*/
|
||||
static void
|
||||
void
|
||||
undisplay_dollar(void)
|
||||
{
|
||||
if (dollar_vcol >= 0)
|
||||
@@ -2274,9 +2272,7 @@ insertchar(
|
||||
int second_indent) /* indent for second line if >= 0 */
|
||||
{
|
||||
int textwidth;
|
||||
#ifdef FEAT_COMMENTS
|
||||
char_u *p;
|
||||
#endif
|
||||
int fo_ins_blank;
|
||||
int force_format = flags & INSCHAR_FORMAT;
|
||||
|
||||
@@ -2334,12 +2330,11 @@ insertchar(
|
||||
if (c == NUL) /* only formatting was wanted */
|
||||
return;
|
||||
|
||||
#ifdef FEAT_COMMENTS
|
||||
/* Check whether this character should end a comment. */
|
||||
// Check whether this character should end a comment.
|
||||
if (did_ai && (int)c == end_comment_pending)
|
||||
{
|
||||
char_u *line;
|
||||
char_u lead_end[COM_MAX_LEN]; /* end-comment string */
|
||||
char_u lead_end[COM_MAX_LEN]; // end-comment string
|
||||
int middle_len, end_len;
|
||||
int i;
|
||||
|
||||
@@ -2348,46 +2343,43 @@ insertchar(
|
||||
* comment leader. First, check what comment leader we can find.
|
||||
*/
|
||||
i = get_leader_len(line = ml_get_curline(), &p, FALSE, TRUE);
|
||||
if (i > 0 && vim_strchr(p, COM_MIDDLE) != NULL) /* Just checking */
|
||||
if (i > 0 && vim_strchr(p, COM_MIDDLE) != NULL) // Just checking
|
||||
{
|
||||
/* Skip middle-comment string */
|
||||
while (*p && p[-1] != ':') /* find end of middle flags */
|
||||
// Skip middle-comment string
|
||||
while (*p && p[-1] != ':') // find end of middle flags
|
||||
++p;
|
||||
middle_len = copy_option_part(&p, lead_end, COM_MAX_LEN, ",");
|
||||
/* Don't count trailing white space for middle_len */
|
||||
// Don't count trailing white space for middle_len
|
||||
while (middle_len > 0 && VIM_ISWHITE(lead_end[middle_len - 1]))
|
||||
--middle_len;
|
||||
|
||||
/* Find the end-comment string */
|
||||
while (*p && p[-1] != ':') /* find end of end flags */
|
||||
// Find the end-comment string
|
||||
while (*p && p[-1] != ':') // find end of end flags
|
||||
++p;
|
||||
end_len = copy_option_part(&p, lead_end, COM_MAX_LEN, ",");
|
||||
|
||||
/* Skip white space before the cursor */
|
||||
// Skip white space before the cursor
|
||||
i = curwin->w_cursor.col;
|
||||
while (--i >= 0 && VIM_ISWHITE(line[i]))
|
||||
;
|
||||
i++;
|
||||
|
||||
/* Skip to before the middle leader */
|
||||
// Skip to before the middle leader
|
||||
i -= middle_len;
|
||||
|
||||
/* Check some expected things before we go on */
|
||||
// Check some expected things before we go on
|
||||
if (i >= 0 && lead_end[end_len - 1] == end_comment_pending)
|
||||
{
|
||||
/* Backspace over all the stuff we want to replace */
|
||||
// Backspace over all the stuff we want to replace
|
||||
backspace_until_column(i);
|
||||
|
||||
/*
|
||||
* Insert the end-comment string, except for the last
|
||||
* character, which will get inserted as normal later.
|
||||
*/
|
||||
// Insert the end-comment string, except for the last
|
||||
// character, which will get inserted as normal later.
|
||||
ins_bytes_len(lead_end, end_len - 1);
|
||||
}
|
||||
}
|
||||
}
|
||||
end_comment_pending = NUL;
|
||||
#endif
|
||||
|
||||
did_ai = FALSE;
|
||||
#ifdef FEAT_SMARTINDENT
|
||||
@@ -2520,11 +2512,9 @@ internal_format(
|
||||
int fo_multibyte = has_format_option(FO_MBYTE_BREAK);
|
||||
int fo_white_par = has_format_option(FO_WHITE_PAR);
|
||||
int first_line = TRUE;
|
||||
#ifdef FEAT_COMMENTS
|
||||
colnr_T leader_len;
|
||||
int no_leader = FALSE;
|
||||
int do_comments = (flags & INSCHAR_DO_COM);
|
||||
#endif
|
||||
#ifdef FEAT_LINEBREAK
|
||||
int has_lbr = curwin->w_p_lbr;
|
||||
|
||||
@@ -2568,7 +2558,6 @@ internal_format(
|
||||
if (virtcol <= (colnr_T)textwidth)
|
||||
break;
|
||||
|
||||
#ifdef FEAT_COMMENTS
|
||||
if (no_leader)
|
||||
do_comments = FALSE;
|
||||
else if (!(flags & INSCHAR_FORMAT)
|
||||
@@ -2587,11 +2576,8 @@ internal_format(
|
||||
* to start with %. */
|
||||
if (leader_len == 0)
|
||||
no_leader = TRUE;
|
||||
#endif
|
||||
if (!(flags & INSCHAR_FORMAT)
|
||||
#ifdef FEAT_COMMENTS
|
||||
&& leader_len == 0
|
||||
#endif
|
||||
&& !has_format_option(FO_WRAP))
|
||||
|
||||
break;
|
||||
@@ -2643,21 +2629,17 @@ internal_format(
|
||||
if (has_format_option(FO_PERIOD_ABBR) && cc == '.' && wcc < 2)
|
||||
continue;
|
||||
|
||||
#ifdef FEAT_COMMENTS
|
||||
/* Don't break until after the comment leader */
|
||||
if (curwin->w_cursor.col < leader_len)
|
||||
break;
|
||||
#endif
|
||||
if (has_format_option(FO_ONE_LETTER))
|
||||
{
|
||||
/* do not break after one-letter words */
|
||||
if (curwin->w_cursor.col == 0)
|
||||
break; /* one-letter word at begin */
|
||||
#ifdef FEAT_COMMENTS
|
||||
/* do not break "#a b" when 'tw' is 2 */
|
||||
if (curwin->w_cursor.col <= leader_len)
|
||||
break;
|
||||
#endif
|
||||
col = curwin->w_cursor.col;
|
||||
dec_cursor();
|
||||
cc = gchar_cursor();
|
||||
@@ -2679,11 +2661,9 @@ internal_format(
|
||||
/* Break after or before a multi-byte character. */
|
||||
if (curwin->w_cursor.col != startcol)
|
||||
{
|
||||
#ifdef FEAT_COMMENTS
|
||||
/* Don't break until after the comment leader */
|
||||
if (curwin->w_cursor.col < leader_len)
|
||||
break;
|
||||
#endif
|
||||
col = curwin->w_cursor.col;
|
||||
inc_cursor();
|
||||
/* Don't change end_foundcol if already set. */
|
||||
@@ -2707,11 +2687,9 @@ internal_format(
|
||||
|
||||
if (WHITECHAR(cc))
|
||||
continue; /* break with space */
|
||||
#ifdef FEAT_COMMENTS
|
||||
/* Don't break until after the comment leader */
|
||||
if (curwin->w_cursor.col < leader_len)
|
||||
break;
|
||||
#endif
|
||||
|
||||
curwin->w_cursor.col = col;
|
||||
|
||||
@@ -2785,10 +2763,8 @@ internal_format(
|
||||
*/
|
||||
open_line(FORWARD, OPENLINE_DELSPACES + OPENLINE_MARKFIX
|
||||
+ (fo_white_par ? OPENLINE_KEEPTRAIL : 0)
|
||||
#ifdef FEAT_COMMENTS
|
||||
+ (do_comments ? OPENLINE_DO_COM : 0)
|
||||
+ ((flags & INSCHAR_COM_LIST) ? OPENLINE_COM_LIST : 0)
|
||||
#endif
|
||||
, ((flags & INSCHAR_COM_LIST) ? second_indent : old_indent));
|
||||
if (!(flags & INSCHAR_COM_LIST))
|
||||
old_indent = 0;
|
||||
@@ -2814,7 +2790,6 @@ internal_format(
|
||||
change_indent(INDENT_SET, second_indent,
|
||||
FALSE, NUL, TRUE);
|
||||
else
|
||||
#ifdef FEAT_COMMENTS
|
||||
if (leader_len > 0 && second_indent - leader_len > 0)
|
||||
{
|
||||
int i;
|
||||
@@ -2831,11 +2806,8 @@ internal_format(
|
||||
}
|
||||
else
|
||||
{
|
||||
#endif
|
||||
(void)set_indent(second_indent, SIN_CHANGED);
|
||||
#ifdef FEAT_COMMENTS
|
||||
}
|
||||
#endif
|
||||
}
|
||||
}
|
||||
first_line = FALSE;
|
||||
@@ -2939,13 +2911,11 @@ auto_format(
|
||||
curwin->w_cursor = pos;
|
||||
}
|
||||
|
||||
#ifdef FEAT_COMMENTS
|
||||
/* With the 'c' flag in 'formatoptions' and 't' missing: only format
|
||||
* comments. */
|
||||
if (has_format_option(FO_WRAP_COMS) && !has_format_option(FO_WRAP)
|
||||
&& get_leader_len(old, NULL, FALSE, TRUE) == 0)
|
||||
return;
|
||||
#endif
|
||||
|
||||
/*
|
||||
* May start formatting in a previous line, so that after "x" a word is
|
||||
@@ -4503,9 +4473,7 @@ ins_esc(
|
||||
/* need to position cursor again (e.g. when on a TAB ) */
|
||||
changed_cline_bef_curs();
|
||||
|
||||
#ifdef FEAT_MOUSE
|
||||
setmouse();
|
||||
#endif
|
||||
#ifdef CURSOR_SHAPE
|
||||
ui_cursor_shape(); /* may show different cursor shape */
|
||||
#endif
|
||||
@@ -4800,9 +4768,7 @@ ins_bs(
|
||||
if (in_indent)
|
||||
can_cindent = FALSE;
|
||||
#endif
|
||||
#ifdef FEAT_COMMENTS
|
||||
end_comment_pending = NUL; /* After BS, don't auto-end comment */
|
||||
#endif
|
||||
#ifdef FEAT_RIGHTLEFT
|
||||
if (revins_on) /* put cursor after last inserted char */
|
||||
inc_cursor();
|
||||
@@ -5152,134 +5118,6 @@ ins_bs(
|
||||
return did_backspace;
|
||||
}
|
||||
|
||||
#ifdef FEAT_MOUSE
|
||||
static void
|
||||
ins_mouse(int c)
|
||||
{
|
||||
pos_T tpos;
|
||||
win_T *old_curwin = curwin;
|
||||
|
||||
# ifdef FEAT_GUI
|
||||
/* When GUI is active, also move/paste when 'mouse' is empty */
|
||||
if (!gui.in_use)
|
||||
# endif
|
||||
if (!mouse_has(MOUSE_INSERT))
|
||||
return;
|
||||
|
||||
undisplay_dollar();
|
||||
tpos = curwin->w_cursor;
|
||||
if (do_mouse(NULL, c, BACKWARD, 1L, 0))
|
||||
{
|
||||
win_T *new_curwin = curwin;
|
||||
|
||||
if (curwin != old_curwin && win_valid(old_curwin))
|
||||
{
|
||||
/* Mouse took us to another window. We need to go back to the
|
||||
* previous one to stop insert there properly. */
|
||||
curwin = old_curwin;
|
||||
curbuf = curwin->w_buffer;
|
||||
#ifdef FEAT_JOB_CHANNEL
|
||||
if (bt_prompt(curbuf))
|
||||
// Restart Insert mode when re-entering the prompt buffer.
|
||||
curbuf->b_prompt_insert = 'A';
|
||||
#endif
|
||||
}
|
||||
start_arrow(curwin == old_curwin ? &tpos : NULL);
|
||||
if (curwin != new_curwin && win_valid(new_curwin))
|
||||
{
|
||||
curwin = new_curwin;
|
||||
curbuf = curwin->w_buffer;
|
||||
}
|
||||
# ifdef FEAT_CINDENT
|
||||
can_cindent = TRUE;
|
||||
# endif
|
||||
}
|
||||
|
||||
/* redraw status lines (in case another window became active) */
|
||||
redraw_statuslines();
|
||||
}
|
||||
|
||||
static void
|
||||
ins_mousescroll(int dir)
|
||||
{
|
||||
pos_T tpos;
|
||||
win_T *old_curwin = curwin, *wp;
|
||||
int did_scroll = FALSE;
|
||||
|
||||
tpos = curwin->w_cursor;
|
||||
|
||||
if (mouse_row >= 0 && mouse_col >= 0)
|
||||
{
|
||||
int row, col;
|
||||
|
||||
row = mouse_row;
|
||||
col = mouse_col;
|
||||
|
||||
/* find the window at the pointer coordinates */
|
||||
wp = mouse_find_win(&row, &col, FIND_POPUP);
|
||||
if (wp == NULL)
|
||||
return;
|
||||
curwin = wp;
|
||||
curbuf = curwin->w_buffer;
|
||||
}
|
||||
if (curwin == old_curwin)
|
||||
undisplay_dollar();
|
||||
|
||||
/* Don't scroll the window in which completion is being done. */
|
||||
if (!pum_visible() || curwin != old_curwin)
|
||||
{
|
||||
if (dir == MSCR_DOWN || dir == MSCR_UP)
|
||||
{
|
||||
if (mod_mask & (MOD_MASK_SHIFT | MOD_MASK_CTRL))
|
||||
scroll_redraw(dir,
|
||||
(long)(curwin->w_botline - curwin->w_topline));
|
||||
else
|
||||
scroll_redraw(dir, 3L);
|
||||
# ifdef FEAT_TEXT_PROP
|
||||
if (WIN_IS_POPUP(curwin))
|
||||
popup_set_firstline(curwin);
|
||||
# endif
|
||||
}
|
||||
#ifdef FEAT_GUI
|
||||
else
|
||||
{
|
||||
int val, step = 6;
|
||||
|
||||
if (mod_mask & (MOD_MASK_SHIFT | MOD_MASK_CTRL))
|
||||
step = curwin->w_width;
|
||||
val = curwin->w_leftcol + (dir == MSCR_RIGHT ? -step : step);
|
||||
if (val < 0)
|
||||
val = 0;
|
||||
gui_do_horiz_scroll(val, TRUE);
|
||||
}
|
||||
#endif
|
||||
did_scroll = TRUE;
|
||||
}
|
||||
|
||||
curwin->w_redr_status = TRUE;
|
||||
|
||||
curwin = old_curwin;
|
||||
curbuf = curwin->w_buffer;
|
||||
|
||||
/* The popup menu may overlay the window, need to redraw it.
|
||||
* TODO: Would be more efficient to only redraw the windows that are
|
||||
* overlapped by the popup menu. */
|
||||
if (pum_visible() && did_scroll)
|
||||
{
|
||||
redraw_all_later(NOT_VALID);
|
||||
ins_compl_show_pum();
|
||||
}
|
||||
|
||||
if (!EQUAL_POS(curwin->w_cursor, tpos))
|
||||
{
|
||||
start_arrow(&tpos);
|
||||
# ifdef FEAT_CINDENT
|
||||
can_cindent = TRUE;
|
||||
# endif
|
||||
}
|
||||
}
|
||||
#endif
|
||||
|
||||
/*
|
||||
* Handle receiving P_PS: start paste mode. Inserts the following text up to
|
||||
* P_PE literally.
|
||||
@@ -6044,10 +5882,7 @@ ins_eol(int c)
|
||||
|
||||
AppendToRedobuff(NL_STR);
|
||||
i = open_line(FORWARD,
|
||||
#ifdef FEAT_COMMENTS
|
||||
has_format_option(FO_RET_COMS) ? OPENLINE_DO_COM :
|
||||
#endif
|
||||
0, old_indent);
|
||||
has_format_option(FO_RET_COMS) ? OPENLINE_DO_COM : 0, old_indent);
|
||||
old_indent = 0;
|
||||
#ifdef FEAT_CINDENT
|
||||
can_cindent = TRUE;
|
||||
@@ -6396,10 +6231,16 @@ do_insert_char_pre(int c)
|
||||
|
||||
#if defined(FEAT_CINDENT) || defined(PROTO)
|
||||
int
|
||||
can_cindent_get(void)
|
||||
get_can_cindent(void)
|
||||
{
|
||||
return can_cindent;
|
||||
}
|
||||
|
||||
void
|
||||
set_can_cindent(int val)
|
||||
{
|
||||
can_cindent = val;
|
||||
}
|
||||
#endif
|
||||
|
||||
/*
|
||||
|
||||
16
src/eval.c
16
src/eval.c
@@ -2617,7 +2617,9 @@ eval7(
|
||||
else
|
||||
{
|
||||
// decimal, hex or octal number
|
||||
vim_str2nr(*arg, NULL, &len, STR2NR_ALL, &n, NULL, 0, TRUE);
|
||||
vim_str2nr(*arg, NULL, &len, current_sctx.sc_version >= 4
|
||||
? STR2NR_NO_OCT + STR2NR_QUOTE
|
||||
: STR2NR_ALL, &n, NULL, 0, TRUE);
|
||||
if (len == 0)
|
||||
{
|
||||
semsg(_(e_invexpr2), *arg);
|
||||
@@ -2912,9 +2914,17 @@ eval_lambda(
|
||||
semsg(_(e_missingparen), "lambda");
|
||||
}
|
||||
clear_tv(rettv);
|
||||
return FAIL;
|
||||
ret = FAIL;
|
||||
}
|
||||
return call_func_rettv(arg, rettv, evaluate, NULL, &base);
|
||||
else
|
||||
ret = call_func_rettv(arg, rettv, evaluate, NULL, &base);
|
||||
|
||||
// Clear the funcref afterwards, so that deleting it while
|
||||
// evaluating the arguments is possible (see test55).
|
||||
if (evaluate)
|
||||
clear_tv(&base);
|
||||
|
||||
return ret;
|
||||
}
|
||||
|
||||
/*
|
||||
|
||||
887
src/evalbuffer.c
Normal file
887
src/evalbuffer.c
Normal file
@@ -0,0 +1,887 @@
|
||||
/* vi:set ts=8 sts=4 sw=4 noet:
|
||||
*
|
||||
* VIM - Vi IMproved by Bram Moolenaar
|
||||
*
|
||||
* Do ":help uganda" in Vim to read copying and usage conditions.
|
||||
* Do ":help credits" in Vim to see a list of people who contributed.
|
||||
* See README.txt for an overview of the Vim source code.
|
||||
*/
|
||||
|
||||
/*
|
||||
* evalbuffer.c: Buffer related builtin functions
|
||||
*/
|
||||
|
||||
#include "vim.h"
|
||||
|
||||
#if defined(FEAT_EVAL) || defined(PROTO)
|
||||
/*
|
||||
* Mark references in functions of buffers.
|
||||
*/
|
||||
int
|
||||
set_ref_in_buffers(int copyID)
|
||||
{
|
||||
int abort = FALSE;
|
||||
buf_T *bp;
|
||||
|
||||
FOR_ALL_BUFFERS(bp)
|
||||
{
|
||||
listener_T *lnr;
|
||||
typval_T tv;
|
||||
|
||||
for (lnr = bp->b_listener; !abort && lnr != NULL; lnr = lnr->lr_next)
|
||||
{
|
||||
if (lnr->lr_callback.cb_partial != NULL)
|
||||
{
|
||||
tv.v_type = VAR_PARTIAL;
|
||||
tv.vval.v_partial = lnr->lr_callback.cb_partial;
|
||||
abort = abort || set_ref_in_item(&tv, copyID, NULL, NULL);
|
||||
}
|
||||
}
|
||||
# ifdef FEAT_JOB_CHANNEL
|
||||
if (!abort && bp->b_prompt_callback.cb_partial != NULL)
|
||||
{
|
||||
tv.v_type = VAR_PARTIAL;
|
||||
tv.vval.v_partial = bp->b_prompt_callback.cb_partial;
|
||||
abort = abort || set_ref_in_item(&tv, copyID, NULL, NULL);
|
||||
}
|
||||
if (!abort && bp->b_prompt_interrupt.cb_partial != NULL)
|
||||
{
|
||||
tv.v_type = VAR_PARTIAL;
|
||||
tv.vval.v_partial = bp->b_prompt_interrupt.cb_partial;
|
||||
abort = abort || set_ref_in_item(&tv, copyID, NULL, NULL);
|
||||
}
|
||||
# endif
|
||||
if (abort)
|
||||
break;
|
||||
}
|
||||
return abort;
|
||||
}
|
||||
|
||||
buf_T *
|
||||
buflist_find_by_name(char_u *name, int curtab_only)
|
||||
{
|
||||
int save_magic;
|
||||
char_u *save_cpo;
|
||||
buf_T *buf;
|
||||
|
||||
// Ignore 'magic' and 'cpoptions' here to make scripts portable
|
||||
save_magic = p_magic;
|
||||
p_magic = TRUE;
|
||||
save_cpo = p_cpo;
|
||||
p_cpo = (char_u *)"";
|
||||
|
||||
buf = buflist_findnr(buflist_findpat(name, name + STRLEN(name),
|
||||
TRUE, FALSE, curtab_only));
|
||||
|
||||
p_magic = save_magic;
|
||||
p_cpo = save_cpo;
|
||||
return buf;
|
||||
}
|
||||
|
||||
/*
|
||||
* Find a buffer by number or exact name.
|
||||
*/
|
||||
buf_T *
|
||||
find_buffer(typval_T *avar)
|
||||
{
|
||||
buf_T *buf = NULL;
|
||||
|
||||
if (avar->v_type == VAR_NUMBER)
|
||||
buf = buflist_findnr((int)avar->vval.v_number);
|
||||
else if (avar->v_type == VAR_STRING && avar->vval.v_string != NULL)
|
||||
{
|
||||
buf = buflist_findname_exp(avar->vval.v_string);
|
||||
if (buf == NULL)
|
||||
{
|
||||
// No full path name match, try a match with a URL or a "nofile"
|
||||
// buffer, these don't use the full path.
|
||||
FOR_ALL_BUFFERS(buf)
|
||||
if (buf->b_fname != NULL
|
||||
&& (path_with_url(buf->b_fname)
|
||||
#ifdef FEAT_QUICKFIX
|
||||
|| bt_nofilename(buf)
|
||||
#endif
|
||||
)
|
||||
&& STRCMP(buf->b_fname, avar->vval.v_string) == 0)
|
||||
break;
|
||||
}
|
||||
}
|
||||
return buf;
|
||||
}
|
||||
|
||||
/*
|
||||
* If there is a window for "curbuf", make it the current window.
|
||||
*/
|
||||
static void
|
||||
find_win_for_curbuf(void)
|
||||
{
|
||||
wininfo_T *wip;
|
||||
|
||||
for (wip = curbuf->b_wininfo; wip != NULL; wip = wip->wi_next)
|
||||
{
|
||||
if (wip->wi_win != NULL)
|
||||
{
|
||||
curwin = wip->wi_win;
|
||||
break;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
/*
|
||||
* Set line or list of lines in buffer "buf".
|
||||
*/
|
||||
static void
|
||||
set_buffer_lines(
|
||||
buf_T *buf,
|
||||
linenr_T lnum_arg,
|
||||
int append,
|
||||
typval_T *lines,
|
||||
typval_T *rettv)
|
||||
{
|
||||
linenr_T lnum = lnum_arg + (append ? 1 : 0);
|
||||
char_u *line = NULL;
|
||||
list_T *l = NULL;
|
||||
listitem_T *li = NULL;
|
||||
long added = 0;
|
||||
linenr_T append_lnum;
|
||||
buf_T *curbuf_save = NULL;
|
||||
win_T *curwin_save = NULL;
|
||||
int is_curbuf = buf == curbuf;
|
||||
|
||||
// When using the current buffer ml_mfp will be set if needed. Useful when
|
||||
// setline() is used on startup. For other buffers the buffer must be
|
||||
// loaded.
|
||||
if (buf == NULL || (!is_curbuf && buf->b_ml.ml_mfp == NULL) || lnum < 1)
|
||||
{
|
||||
rettv->vval.v_number = 1; // FAIL
|
||||
return;
|
||||
}
|
||||
|
||||
if (!is_curbuf)
|
||||
{
|
||||
curbuf_save = curbuf;
|
||||
curwin_save = curwin;
|
||||
curbuf = buf;
|
||||
find_win_for_curbuf();
|
||||
}
|
||||
|
||||
if (append)
|
||||
// appendbufline() uses the line number below which we insert
|
||||
append_lnum = lnum - 1;
|
||||
else
|
||||
// setbufline() uses the line number above which we insert, we only
|
||||
// append if it's below the last line
|
||||
append_lnum = curbuf->b_ml.ml_line_count;
|
||||
|
||||
if (lines->v_type == VAR_LIST)
|
||||
{
|
||||
l = lines->vval.v_list;
|
||||
li = l->lv_first;
|
||||
}
|
||||
else
|
||||
line = tv_get_string_chk(lines);
|
||||
|
||||
// default result is zero == OK
|
||||
for (;;)
|
||||
{
|
||||
if (l != NULL)
|
||||
{
|
||||
// list argument, get next string
|
||||
if (li == NULL)
|
||||
break;
|
||||
line = tv_get_string_chk(&li->li_tv);
|
||||
li = li->li_next;
|
||||
}
|
||||
|
||||
rettv->vval.v_number = 1; // FAIL
|
||||
if (line == NULL || lnum > curbuf->b_ml.ml_line_count + 1)
|
||||
break;
|
||||
|
||||
// When coming here from Insert mode, sync undo, so that this can be
|
||||
// undone separately from what was previously inserted.
|
||||
if (u_sync_once == 2)
|
||||
{
|
||||
u_sync_once = 1; // notify that u_sync() was called
|
||||
u_sync(TRUE);
|
||||
}
|
||||
|
||||
if (!append && lnum <= curbuf->b_ml.ml_line_count)
|
||||
{
|
||||
// Existing line, replace it.
|
||||
// Removes any existing text properties.
|
||||
if (u_savesub(lnum) == OK && ml_replace_len(
|
||||
lnum, line, (colnr_T)STRLEN(line) + 1, TRUE, TRUE) == OK)
|
||||
{
|
||||
changed_bytes(lnum, 0);
|
||||
if (is_curbuf && lnum == curwin->w_cursor.lnum)
|
||||
check_cursor_col();
|
||||
rettv->vval.v_number = 0; // OK
|
||||
}
|
||||
}
|
||||
else if (added > 0 || u_save(lnum - 1, lnum) == OK)
|
||||
{
|
||||
// append the line
|
||||
++added;
|
||||
if (ml_append(lnum - 1, line, (colnr_T)0, FALSE) == OK)
|
||||
rettv->vval.v_number = 0; // OK
|
||||
}
|
||||
|
||||
if (l == NULL) // only one string argument
|
||||
break;
|
||||
++lnum;
|
||||
}
|
||||
|
||||
if (added > 0)
|
||||
{
|
||||
win_T *wp;
|
||||
tabpage_T *tp;
|
||||
|
||||
appended_lines_mark(append_lnum, added);
|
||||
|
||||
// Only adjust the cursor for buffers other than the current, unless it
|
||||
// is the current window. For curbuf and other windows it has been
|
||||
// done in mark_adjust_internal().
|
||||
FOR_ALL_TAB_WINDOWS(tp, wp)
|
||||
if (wp->w_buffer == buf
|
||||
&& (wp->w_buffer != curbuf || wp == curwin)
|
||||
&& wp->w_cursor.lnum > append_lnum)
|
||||
wp->w_cursor.lnum += added;
|
||||
check_cursor_col();
|
||||
update_topline();
|
||||
}
|
||||
|
||||
if (!is_curbuf)
|
||||
{
|
||||
curbuf = curbuf_save;
|
||||
curwin = curwin_save;
|
||||
}
|
||||
}
|
||||
|
||||
/*
|
||||
* "append(lnum, string/list)" function
|
||||
*/
|
||||
void
|
||||
f_append(typval_T *argvars, typval_T *rettv)
|
||||
{
|
||||
linenr_T lnum = tv_get_lnum(&argvars[0]);
|
||||
|
||||
set_buffer_lines(curbuf, lnum, TRUE, &argvars[1], rettv);
|
||||
}
|
||||
|
||||
/*
|
||||
* "appendbufline(buf, lnum, string/list)" function
|
||||
*/
|
||||
void
|
||||
f_appendbufline(typval_T *argvars, typval_T *rettv)
|
||||
{
|
||||
linenr_T lnum;
|
||||
buf_T *buf;
|
||||
|
||||
buf = tv_get_buf(&argvars[0], FALSE);
|
||||
if (buf == NULL)
|
||||
rettv->vval.v_number = 1; // FAIL
|
||||
else
|
||||
{
|
||||
lnum = tv_get_lnum_buf(&argvars[1], buf);
|
||||
set_buffer_lines(buf, lnum, TRUE, &argvars[2], rettv);
|
||||
}
|
||||
}
|
||||
|
||||
/*
|
||||
* "bufadd(expr)" function
|
||||
*/
|
||||
void
|
||||
f_bufadd(typval_T *argvars, typval_T *rettv)
|
||||
{
|
||||
char_u *name = tv_get_string(&argvars[0]);
|
||||
|
||||
rettv->vval.v_number = buflist_add(*name == NUL ? NULL : name, 0);
|
||||
}
|
||||
|
||||
/*
|
||||
* "bufexists(expr)" function
|
||||
*/
|
||||
void
|
||||
f_bufexists(typval_T *argvars, typval_T *rettv)
|
||||
{
|
||||
rettv->vval.v_number = (find_buffer(&argvars[0]) != NULL);
|
||||
}
|
||||
|
||||
/*
|
||||
* "buflisted(expr)" function
|
||||
*/
|
||||
void
|
||||
f_buflisted(typval_T *argvars, typval_T *rettv)
|
||||
{
|
||||
buf_T *buf;
|
||||
|
||||
buf = find_buffer(&argvars[0]);
|
||||
rettv->vval.v_number = (buf != NULL && buf->b_p_bl);
|
||||
}
|
||||
|
||||
/*
|
||||
* "bufload(expr)" function
|
||||
*/
|
||||
void
|
||||
f_bufload(typval_T *argvars, typval_T *rettv UNUSED)
|
||||
{
|
||||
buf_T *buf = get_buf_arg(&argvars[0]);
|
||||
|
||||
if (buf != NULL)
|
||||
buffer_ensure_loaded(buf);
|
||||
}
|
||||
|
||||
/*
|
||||
* "bufloaded(expr)" function
|
||||
*/
|
||||
void
|
||||
f_bufloaded(typval_T *argvars, typval_T *rettv)
|
||||
{
|
||||
buf_T *buf;
|
||||
|
||||
buf = find_buffer(&argvars[0]);
|
||||
rettv->vval.v_number = (buf != NULL && buf->b_ml.ml_mfp != NULL);
|
||||
}
|
||||
|
||||
/*
|
||||
* "bufname(expr)" function
|
||||
*/
|
||||
void
|
||||
f_bufname(typval_T *argvars, typval_T *rettv)
|
||||
{
|
||||
buf_T *buf;
|
||||
|
||||
if (argvars[0].v_type == VAR_UNKNOWN)
|
||||
buf = curbuf;
|
||||
else
|
||||
{
|
||||
(void)tv_get_number(&argvars[0]); // issue errmsg if type error
|
||||
++emsg_off;
|
||||
buf = tv_get_buf(&argvars[0], FALSE);
|
||||
--emsg_off;
|
||||
}
|
||||
rettv->v_type = VAR_STRING;
|
||||
if (buf != NULL && buf->b_fname != NULL)
|
||||
rettv->vval.v_string = vim_strsave(buf->b_fname);
|
||||
else
|
||||
rettv->vval.v_string = NULL;
|
||||
}
|
||||
|
||||
/*
|
||||
* "bufnr(expr)" function
|
||||
*/
|
||||
void
|
||||
f_bufnr(typval_T *argvars, typval_T *rettv)
|
||||
{
|
||||
buf_T *buf;
|
||||
int error = FALSE;
|
||||
char_u *name;
|
||||
|
||||
if (argvars[0].v_type == VAR_UNKNOWN)
|
||||
buf = curbuf;
|
||||
else
|
||||
{
|
||||
(void)tv_get_number(&argvars[0]); // issue errmsg if type error
|
||||
++emsg_off;
|
||||
buf = tv_get_buf(&argvars[0], FALSE);
|
||||
--emsg_off;
|
||||
}
|
||||
|
||||
// If the buffer isn't found and the second argument is not zero create a
|
||||
// new buffer.
|
||||
if (buf == NULL
|
||||
&& argvars[1].v_type != VAR_UNKNOWN
|
||||
&& tv_get_number_chk(&argvars[1], &error) != 0
|
||||
&& !error
|
||||
&& (name = tv_get_string_chk(&argvars[0])) != NULL
|
||||
&& !error)
|
||||
buf = buflist_new(name, NULL, (linenr_T)1, 0);
|
||||
|
||||
if (buf != NULL)
|
||||
rettv->vval.v_number = buf->b_fnum;
|
||||
else
|
||||
rettv->vval.v_number = -1;
|
||||
}
|
||||
|
||||
static void
|
||||
buf_win_common(typval_T *argvars, typval_T *rettv, int get_nr)
|
||||
{
|
||||
win_T *wp;
|
||||
int winnr = 0;
|
||||
buf_T *buf;
|
||||
|
||||
(void)tv_get_number(&argvars[0]); // issue errmsg if type error
|
||||
++emsg_off;
|
||||
buf = tv_get_buf(&argvars[0], TRUE);
|
||||
FOR_ALL_WINDOWS(wp)
|
||||
{
|
||||
++winnr;
|
||||
if (wp->w_buffer == buf)
|
||||
break;
|
||||
}
|
||||
rettv->vval.v_number = (wp != NULL ? (get_nr ? winnr : wp->w_id) : -1);
|
||||
--emsg_off;
|
||||
}
|
||||
|
||||
/*
|
||||
* "bufwinid(nr)" function
|
||||
*/
|
||||
void
|
||||
f_bufwinid(typval_T *argvars, typval_T *rettv)
|
||||
{
|
||||
buf_win_common(argvars, rettv, FALSE);
|
||||
}
|
||||
|
||||
/*
|
||||
* "bufwinnr(nr)" function
|
||||
*/
|
||||
void
|
||||
f_bufwinnr(typval_T *argvars, typval_T *rettv)
|
||||
{
|
||||
buf_win_common(argvars, rettv, TRUE);
|
||||
}
|
||||
|
||||
/*
|
||||
* "deletebufline()" function
|
||||
*/
|
||||
void
|
||||
f_deletebufline(typval_T *argvars, typval_T *rettv)
|
||||
{
|
||||
buf_T *buf;
|
||||
linenr_T first, last;
|
||||
linenr_T lnum;
|
||||
long count;
|
||||
int is_curbuf;
|
||||
buf_T *curbuf_save = NULL;
|
||||
win_T *curwin_save = NULL;
|
||||
tabpage_T *tp;
|
||||
win_T *wp;
|
||||
|
||||
buf = tv_get_buf(&argvars[0], FALSE);
|
||||
if (buf == NULL)
|
||||
{
|
||||
rettv->vval.v_number = 1; // FAIL
|
||||
return;
|
||||
}
|
||||
is_curbuf = buf == curbuf;
|
||||
|
||||
first = tv_get_lnum_buf(&argvars[1], buf);
|
||||
if (argvars[2].v_type != VAR_UNKNOWN)
|
||||
last = tv_get_lnum_buf(&argvars[2], buf);
|
||||
else
|
||||
last = first;
|
||||
|
||||
if (buf->b_ml.ml_mfp == NULL || first < 1
|
||||
|| first > buf->b_ml.ml_line_count || last < first)
|
||||
{
|
||||
rettv->vval.v_number = 1; // FAIL
|
||||
return;
|
||||
}
|
||||
|
||||
if (!is_curbuf)
|
||||
{
|
||||
curbuf_save = curbuf;
|
||||
curwin_save = curwin;
|
||||
curbuf = buf;
|
||||
find_win_for_curbuf();
|
||||
}
|
||||
if (last > curbuf->b_ml.ml_line_count)
|
||||
last = curbuf->b_ml.ml_line_count;
|
||||
count = last - first + 1;
|
||||
|
||||
// When coming here from Insert mode, sync undo, so that this can be
|
||||
// undone separately from what was previously inserted.
|
||||
if (u_sync_once == 2)
|
||||
{
|
||||
u_sync_once = 1; // notify that u_sync() was called
|
||||
u_sync(TRUE);
|
||||
}
|
||||
|
||||
if (u_save(first - 1, last + 1) == FAIL)
|
||||
{
|
||||
rettv->vval.v_number = 1; // FAIL
|
||||
return;
|
||||
}
|
||||
|
||||
for (lnum = first; lnum <= last; ++lnum)
|
||||
ml_delete(first, TRUE);
|
||||
|
||||
FOR_ALL_TAB_WINDOWS(tp, wp)
|
||||
if (wp->w_buffer == buf)
|
||||
{
|
||||
if (wp->w_cursor.lnum > last)
|
||||
wp->w_cursor.lnum -= count;
|
||||
else if (wp->w_cursor.lnum> first)
|
||||
wp->w_cursor.lnum = first;
|
||||
if (wp->w_cursor.lnum > wp->w_buffer->b_ml.ml_line_count)
|
||||
wp->w_cursor.lnum = wp->w_buffer->b_ml.ml_line_count;
|
||||
}
|
||||
check_cursor_col();
|
||||
deleted_lines_mark(first, count);
|
||||
|
||||
if (!is_curbuf)
|
||||
{
|
||||
curbuf = curbuf_save;
|
||||
curwin = curwin_save;
|
||||
}
|
||||
}
|
||||
|
||||
/*
|
||||
* Returns buffer options, variables and other attributes in a dictionary.
|
||||
*/
|
||||
static dict_T *
|
||||
get_buffer_info(buf_T *buf)
|
||||
{
|
||||
dict_T *dict;
|
||||
tabpage_T *tp;
|
||||
win_T *wp;
|
||||
list_T *windows;
|
||||
|
||||
dict = dict_alloc();
|
||||
if (dict == NULL)
|
||||
return NULL;
|
||||
|
||||
dict_add_number(dict, "bufnr", buf->b_fnum);
|
||||
dict_add_string(dict, "name", buf->b_ffname);
|
||||
dict_add_number(dict, "lnum", buf == curbuf ? curwin->w_cursor.lnum
|
||||
: buflist_findlnum(buf));
|
||||
dict_add_number(dict, "loaded", buf->b_ml.ml_mfp != NULL);
|
||||
dict_add_number(dict, "listed", buf->b_p_bl);
|
||||
dict_add_number(dict, "changed", bufIsChanged(buf));
|
||||
dict_add_number(dict, "changedtick", CHANGEDTICK(buf));
|
||||
dict_add_number(dict, "hidden",
|
||||
buf->b_ml.ml_mfp != NULL && buf->b_nwindows == 0);
|
||||
|
||||
// Get a reference to buffer variables
|
||||
dict_add_dict(dict, "variables", buf->b_vars);
|
||||
|
||||
// List of windows displaying this buffer
|
||||
windows = list_alloc();
|
||||
if (windows != NULL)
|
||||
{
|
||||
FOR_ALL_TAB_WINDOWS(tp, wp)
|
||||
if (wp->w_buffer == buf)
|
||||
list_append_number(windows, (varnumber_T)wp->w_id);
|
||||
dict_add_list(dict, "windows", windows);
|
||||
}
|
||||
|
||||
#ifdef FEAT_TEXT_PROP
|
||||
// List of popup windows displaying this buffer
|
||||
windows = list_alloc();
|
||||
if (windows != NULL)
|
||||
{
|
||||
for (wp = first_popupwin; wp != NULL; wp = wp->w_next)
|
||||
if (wp->w_buffer == buf)
|
||||
list_append_number(windows, (varnumber_T)wp->w_id);
|
||||
FOR_ALL_TABPAGES(tp)
|
||||
for (wp = tp->tp_first_popupwin; wp != NULL; wp = wp->w_next)
|
||||
if (wp->w_buffer == buf)
|
||||
list_append_number(windows, (varnumber_T)wp->w_id);
|
||||
|
||||
dict_add_list(dict, "popups", windows);
|
||||
}
|
||||
#endif
|
||||
|
||||
#ifdef FEAT_SIGNS
|
||||
if (buf->b_signlist != NULL)
|
||||
{
|
||||
// List of signs placed in this buffer
|
||||
list_T *signs = list_alloc();
|
||||
if (signs != NULL)
|
||||
{
|
||||
get_buffer_signs(buf, signs);
|
||||
dict_add_list(dict, "signs", signs);
|
||||
}
|
||||
}
|
||||
#endif
|
||||
|
||||
return dict;
|
||||
}
|
||||
|
||||
/*
|
||||
* "getbufinfo()" function
|
||||
*/
|
||||
void
|
||||
f_getbufinfo(typval_T *argvars, typval_T *rettv)
|
||||
{
|
||||
buf_T *buf = NULL;
|
||||
buf_T *argbuf = NULL;
|
||||
dict_T *d;
|
||||
int filtered = FALSE;
|
||||
int sel_buflisted = FALSE;
|
||||
int sel_bufloaded = FALSE;
|
||||
int sel_bufmodified = FALSE;
|
||||
|
||||
if (rettv_list_alloc(rettv) != OK)
|
||||
return;
|
||||
|
||||
// List of all the buffers or selected buffers
|
||||
if (argvars[0].v_type == VAR_DICT)
|
||||
{
|
||||
dict_T *sel_d = argvars[0].vval.v_dict;
|
||||
|
||||
if (sel_d != NULL)
|
||||
{
|
||||
dictitem_T *di;
|
||||
|
||||
filtered = TRUE;
|
||||
|
||||
di = dict_find(sel_d, (char_u *)"buflisted", -1);
|
||||
if (di != NULL && tv_get_number(&di->di_tv))
|
||||
sel_buflisted = TRUE;
|
||||
|
||||
di = dict_find(sel_d, (char_u *)"bufloaded", -1);
|
||||
if (di != NULL && tv_get_number(&di->di_tv))
|
||||
sel_bufloaded = TRUE;
|
||||
|
||||
di = dict_find(sel_d, (char_u *)"bufmodified", -1);
|
||||
if (di != NULL && tv_get_number(&di->di_tv))
|
||||
sel_bufmodified = TRUE;
|
||||
}
|
||||
}
|
||||
else if (argvars[0].v_type != VAR_UNKNOWN)
|
||||
{
|
||||
// Information about one buffer. Argument specifies the buffer
|
||||
(void)tv_get_number(&argvars[0]); // issue errmsg if type error
|
||||
++emsg_off;
|
||||
argbuf = tv_get_buf(&argvars[0], FALSE);
|
||||
--emsg_off;
|
||||
if (argbuf == NULL)
|
||||
return;
|
||||
}
|
||||
|
||||
// Return information about all the buffers or a specified buffer
|
||||
FOR_ALL_BUFFERS(buf)
|
||||
{
|
||||
if (argbuf != NULL && argbuf != buf)
|
||||
continue;
|
||||
if (filtered && ((sel_bufloaded && buf->b_ml.ml_mfp == NULL)
|
||||
|| (sel_buflisted && !buf->b_p_bl)
|
||||
|| (sel_bufmodified && !buf->b_changed)))
|
||||
continue;
|
||||
|
||||
d = get_buffer_info(buf);
|
||||
if (d != NULL)
|
||||
list_append_dict(rettv->vval.v_list, d);
|
||||
if (argbuf != NULL)
|
||||
return;
|
||||
}
|
||||
}
|
||||
|
||||
/*
|
||||
* Get line or list of lines from buffer "buf" into "rettv".
|
||||
* Return a range (from start to end) of lines in rettv from the specified
|
||||
* buffer.
|
||||
* If 'retlist' is TRUE, then the lines are returned as a Vim List.
|
||||
*/
|
||||
static void
|
||||
get_buffer_lines(
|
||||
buf_T *buf,
|
||||
linenr_T start,
|
||||
linenr_T end,
|
||||
int retlist,
|
||||
typval_T *rettv)
|
||||
{
|
||||
char_u *p;
|
||||
|
||||
rettv->v_type = VAR_STRING;
|
||||
rettv->vval.v_string = NULL;
|
||||
if (retlist && rettv_list_alloc(rettv) == FAIL)
|
||||
return;
|
||||
|
||||
if (buf == NULL || buf->b_ml.ml_mfp == NULL || start < 0)
|
||||
return;
|
||||
|
||||
if (!retlist)
|
||||
{
|
||||
if (start >= 1 && start <= buf->b_ml.ml_line_count)
|
||||
p = ml_get_buf(buf, start, FALSE);
|
||||
else
|
||||
p = (char_u *)"";
|
||||
rettv->vval.v_string = vim_strsave(p);
|
||||
}
|
||||
else
|
||||
{
|
||||
if (end < start)
|
||||
return;
|
||||
|
||||
if (start < 1)
|
||||
start = 1;
|
||||
if (end > buf->b_ml.ml_line_count)
|
||||
end = buf->b_ml.ml_line_count;
|
||||
while (start <= end)
|
||||
if (list_append_string(rettv->vval.v_list,
|
||||
ml_get_buf(buf, start++, FALSE), -1) == FAIL)
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
/*
|
||||
* "getbufline()" function
|
||||
*/
|
||||
void
|
||||
f_getbufline(typval_T *argvars, typval_T *rettv)
|
||||
{
|
||||
linenr_T lnum;
|
||||
linenr_T end;
|
||||
buf_T *buf;
|
||||
|
||||
(void)tv_get_number(&argvars[0]); // issue errmsg if type error
|
||||
++emsg_off;
|
||||
buf = tv_get_buf(&argvars[0], FALSE);
|
||||
--emsg_off;
|
||||
|
||||
lnum = tv_get_lnum_buf(&argvars[1], buf);
|
||||
if (argvars[2].v_type == VAR_UNKNOWN)
|
||||
end = lnum;
|
||||
else
|
||||
end = tv_get_lnum_buf(&argvars[2], buf);
|
||||
|
||||
get_buffer_lines(buf, lnum, end, TRUE, rettv);
|
||||
}
|
||||
|
||||
/*
|
||||
* "getline(lnum, [end])" function
|
||||
*/
|
||||
void
|
||||
f_getline(typval_T *argvars, typval_T *rettv)
|
||||
{
|
||||
linenr_T lnum;
|
||||
linenr_T end;
|
||||
int retlist;
|
||||
|
||||
lnum = tv_get_lnum(argvars);
|
||||
if (argvars[1].v_type == VAR_UNKNOWN)
|
||||
{
|
||||
end = 0;
|
||||
retlist = FALSE;
|
||||
}
|
||||
else
|
||||
{
|
||||
end = tv_get_lnum(&argvars[1]);
|
||||
retlist = TRUE;
|
||||
}
|
||||
|
||||
get_buffer_lines(curbuf, lnum, end, retlist, rettv);
|
||||
}
|
||||
|
||||
/*
|
||||
* "setbufline()" function
|
||||
*/
|
||||
void
|
||||
f_setbufline(typval_T *argvars, typval_T *rettv)
|
||||
{
|
||||
linenr_T lnum;
|
||||
buf_T *buf;
|
||||
|
||||
buf = tv_get_buf(&argvars[0], FALSE);
|
||||
if (buf == NULL)
|
||||
rettv->vval.v_number = 1; // FAIL
|
||||
else
|
||||
{
|
||||
lnum = tv_get_lnum_buf(&argvars[1], buf);
|
||||
set_buffer_lines(buf, lnum, FALSE, &argvars[2], rettv);
|
||||
}
|
||||
}
|
||||
|
||||
/*
|
||||
* "setline()" function
|
||||
*/
|
||||
void
|
||||
f_setline(typval_T *argvars, typval_T *rettv)
|
||||
{
|
||||
linenr_T lnum = tv_get_lnum(&argvars[0]);
|
||||
|
||||
set_buffer_lines(curbuf, lnum, FALSE, &argvars[1], rettv);
|
||||
}
|
||||
#endif // FEAT_EVAL
|
||||
|
||||
#if defined(FEAT_JOB_CHANNEL) \
|
||||
|| defined(FEAT_PYTHON) || defined(FEAT_PYTHON3) \
|
||||
|| defined(PROTO)
|
||||
/*
|
||||
* Make "buf" the current buffer. restore_buffer() MUST be called to undo.
|
||||
* No autocommands will be executed. Use aucmd_prepbuf() if there are any.
|
||||
*/
|
||||
void
|
||||
switch_buffer(bufref_T *save_curbuf, buf_T *buf)
|
||||
{
|
||||
block_autocmds();
|
||||
set_bufref(save_curbuf, curbuf);
|
||||
--curbuf->b_nwindows;
|
||||
curbuf = buf;
|
||||
curwin->w_buffer = buf;
|
||||
++curbuf->b_nwindows;
|
||||
}
|
||||
|
||||
/*
|
||||
* Restore the current buffer after using switch_buffer().
|
||||
*/
|
||||
void
|
||||
restore_buffer(bufref_T *save_curbuf)
|
||||
{
|
||||
unblock_autocmds();
|
||||
/* Check for valid buffer, just in case. */
|
||||
if (bufref_valid(save_curbuf))
|
||||
{
|
||||
--curbuf->b_nwindows;
|
||||
curwin->w_buffer = save_curbuf->br_buf;
|
||||
curbuf = save_curbuf->br_buf;
|
||||
++curbuf->b_nwindows;
|
||||
}
|
||||
}
|
||||
|
||||
/*
|
||||
* Find a window for buffer "buf".
|
||||
* If found OK is returned and "wp" and "tp" are set to the window and tabpage.
|
||||
* If not found FAIL is returned.
|
||||
*/
|
||||
static int
|
||||
find_win_for_buf(
|
||||
buf_T *buf,
|
||||
win_T **wp,
|
||||
tabpage_T **tp)
|
||||
{
|
||||
FOR_ALL_TAB_WINDOWS(*tp, *wp)
|
||||
if ((*wp)->w_buffer == buf)
|
||||
return OK;
|
||||
return FAIL;
|
||||
}
|
||||
|
||||
/*
|
||||
* Find a window that contains "buf" and switch to it.
|
||||
* If there is no such window, use the current window and change "curbuf".
|
||||
* Caller must initialize save_curbuf to NULL.
|
||||
* restore_win_for_buf() MUST be called later!
|
||||
*/
|
||||
void
|
||||
switch_to_win_for_buf(
|
||||
buf_T *buf,
|
||||
win_T **save_curwinp,
|
||||
tabpage_T **save_curtabp,
|
||||
bufref_T *save_curbuf)
|
||||
{
|
||||
win_T *wp;
|
||||
tabpage_T *tp;
|
||||
|
||||
if (find_win_for_buf(buf, &wp, &tp) == FAIL)
|
||||
switch_buffer(save_curbuf, buf);
|
||||
else if (switch_win(save_curwinp, save_curtabp, wp, tp, TRUE) == FAIL)
|
||||
{
|
||||
restore_win(*save_curwinp, *save_curtabp, TRUE);
|
||||
switch_buffer(save_curbuf, buf);
|
||||
}
|
||||
}
|
||||
|
||||
void
|
||||
restore_win_for_buf(
|
||||
win_T *save_curwin,
|
||||
tabpage_T *save_curtab,
|
||||
bufref_T *save_curbuf)
|
||||
{
|
||||
if (save_curbuf->br_buf == NULL)
|
||||
restore_win(save_curwin, save_curtab, TRUE);
|
||||
else
|
||||
restore_buffer(save_curbuf);
|
||||
}
|
||||
#endif
|
||||
1794
src/evalfunc.c
1794
src/evalfunc.c
File diff suppressed because it is too large
Load Diff
1141
src/evalwindow.c
Normal file
1141
src/evalwindow.c
Normal file
File diff suppressed because it is too large
Load Diff
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user