mirror of
https://github.com/zoriya/vim.git
synced 2026-01-10 01:12:24 +00:00
Compare commits
62 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
cc984263d7 | ||
|
|
0ce33f34a4 | ||
|
|
8fa0445c4f | ||
|
|
5c2f050d91 | ||
|
|
f4cd3e8074 | ||
|
|
bb1004ee56 | ||
|
|
a9b1e74b5d | ||
|
|
195d6357b4 | ||
|
|
46b8015066 | ||
|
|
e3226be91a | ||
|
|
d35f9711d4 | ||
|
|
da1b1a7357 | ||
|
|
3b18181f28 | ||
|
|
acf534595b | ||
|
|
97d29a1ace | ||
|
|
146522e760 | ||
|
|
83c465c705 | ||
|
|
12033fb4bf | ||
|
|
bca84a12bd | ||
|
|
38f1825274 | ||
|
|
61da4986dd | ||
|
|
6496966ad1 | ||
|
|
b2c2efa53a | ||
|
|
c6d8db78b1 | ||
|
|
b0bf8580c3 | ||
|
|
900b4d77f0 | ||
|
|
2c7a29c7fd | ||
|
|
5b962cf71c | ||
|
|
63a121b750 | ||
|
|
b348038631 | ||
|
|
292ad19e92 | ||
|
|
cdbac1ee33 | ||
|
|
cc016f5410 | ||
|
|
e5180526fd | ||
|
|
24552beda0 | ||
|
|
43abc52195 | ||
|
|
ba930509b0 | ||
|
|
18f9a79673 | ||
|
|
77197e44d6 | ||
|
|
d5bc83f576 | ||
|
|
4e330bbf21 | ||
|
|
b815dac061 | ||
|
|
be79f90adc | ||
|
|
e64ac77a28 | ||
|
|
241a8aaa48 | ||
|
|
9372a11ca6 | ||
|
|
cef9dcc37e | ||
|
|
943d2b5b80 | ||
|
|
f4d1145328 | ||
|
|
c6039d8fcb | ||
|
|
bba577a242 | ||
|
|
36c31f71ad | ||
|
|
9835862c81 | ||
|
|
a39571032c | ||
|
|
c64d13ad5b | ||
|
|
16d8f87b45 | ||
|
|
5fe38612c9 | ||
|
|
3d2381ec09 | ||
|
|
b4d392824a | ||
|
|
12625caaa3 | ||
|
|
1afcace307 | ||
|
|
c20658076d |
26
Filelist
26
Filelist
@@ -2,7 +2,7 @@
|
||||
# Used by Makefile and upload.aap.
|
||||
|
||||
# source files for all source archives
|
||||
SRC_ALL1 = \
|
||||
SRC_ALL = \
|
||||
src/README.txt \
|
||||
src/arabic.c \
|
||||
src/arabic.h \
|
||||
@@ -72,8 +72,6 @@ SRC_ALL1 = \
|
||||
src/vim.h \
|
||||
src/window.c \
|
||||
src/xxd/xxd.c \
|
||||
|
||||
SRC_ALL2 = \
|
||||
src/main.aap \
|
||||
src/testdir/main.aap \
|
||||
src/testdir/*.in \
|
||||
@@ -138,7 +136,6 @@ SRC_UNIX = \
|
||||
pixmaps/gen-inline-pixbufs.sh \
|
||||
pixmaps/stock_icons.h \
|
||||
src/INSTALL \
|
||||
src/INSTALLkde.txt \
|
||||
src/Makefile \
|
||||
src/auto/configure \
|
||||
src/config.aap.in \
|
||||
@@ -155,11 +152,6 @@ SRC_UNIX = \
|
||||
src/gui_gtk_f.c \
|
||||
src/gui_gtk_f.h \
|
||||
src/gui_gtk_x11.c \
|
||||
src/gui_kde.cc \
|
||||
src/gui_kde_wid.cc \
|
||||
src/gui_kde_wid.h \
|
||||
src/gui_kde_x11.cc \
|
||||
src/kvim_iface.h \
|
||||
src/gui_motif.c \
|
||||
src/gui_xmdlg.c \
|
||||
src/gui_xmebw.c \
|
||||
@@ -185,8 +177,6 @@ SRC_UNIX = \
|
||||
src/proto/gui_athena.pro \
|
||||
src/proto/gui_gtk.pro \
|
||||
src/proto/gui_gtk_x11.pro \
|
||||
src/proto/gui_kde.pro \
|
||||
src/proto/gui_kde_x11.pro \
|
||||
src/proto/gui_motif.pro \
|
||||
src/proto/gui_xmdlg.pro \
|
||||
src/proto/gui_x11.pro \
|
||||
@@ -219,6 +209,7 @@ SRC_DOS_UNIX = \
|
||||
src/if_perlsfio.c \
|
||||
src/if_python.c \
|
||||
src/if_ruby.c \
|
||||
src/if_sniff.h \
|
||||
src/if_tcl.c \
|
||||
src/proto/if_cscope.pro \
|
||||
src/proto/if_mzsch.pro \
|
||||
@@ -364,21 +355,14 @@ SRC_AMI = \
|
||||
# source files for the Mac (also in the extra archive)
|
||||
SRC_MAC = \
|
||||
src/INSTALLmac.txt \
|
||||
src/Make_mpw.mak \
|
||||
src/dehqx.py \
|
||||
src/gui_mac.c \
|
||||
src/gui_mac.icns \
|
||||
src/gui_mac.r \
|
||||
src/os_mac.build \
|
||||
src/os_mac.c \
|
||||
src/os_mac.h \
|
||||
src/os_mac.rsr.hqx \
|
||||
src/os_mac.sit.hqx \
|
||||
src/os_mac_conv.c \
|
||||
src/os_macosx.c \
|
||||
src/os_mac.pbproj/project.pbxproj \
|
||||
src/proto/gui_mac.pro \
|
||||
src/proto/os_mac.pro \
|
||||
src/proto/os_mac_conv.pro \
|
||||
|
||||
# source files for VMS (in the extra archive)
|
||||
@@ -429,7 +413,6 @@ SRC_EXTRA = \
|
||||
src/gui_riscos.c \
|
||||
src/gui_riscos.h \
|
||||
src/if_sniff.c \
|
||||
src/if_sniff.h \
|
||||
src/infplist.xml \
|
||||
src/link.390 \
|
||||
src/os_beos.c \
|
||||
@@ -461,6 +444,7 @@ RT_ALL = \
|
||||
runtime/gvimrc_example.vim \
|
||||
runtime/macros/README.txt \
|
||||
runtime/macros/dvorak \
|
||||
runtime/macros/editexisting.vim \
|
||||
runtime/macros/hanoi/click.me \
|
||||
runtime/macros/hanoi/hanoi.vim \
|
||||
runtime/macros/hanoi/poster \
|
||||
@@ -535,10 +519,6 @@ RT_UNIX = \
|
||||
runtime/KVim.desktop \
|
||||
runtime/hi16-action-make.png \
|
||||
runtime/hi22-action-make.png \
|
||||
runtime/kde-tips \
|
||||
runtime/kvim32x32.png \
|
||||
runtime/kvim48x48.png \
|
||||
runtime/kvim64x64.png \
|
||||
runtime/vim16x16.png \
|
||||
runtime/vim16x16.xpm \
|
||||
runtime/vim32x32.png \
|
||||
|
||||
68
Makefile
68
Makefile
@@ -37,8 +37,6 @@ all install uninstall tools config configure proto depend lint tags types test t
|
||||
#
|
||||
# TARGET PRODUCES CONTAINS
|
||||
# unixall vim-#.#.tar.bz2 Runtime files and Sources for Unix
|
||||
# unixrt vim-#.#-rt[12].tar.gz Runtime files for Unix
|
||||
# unixsrc vim-#.#-src[12].tar.gz Sources for Unix
|
||||
#
|
||||
# extra vim-#.#-extra.tar.gz Extra source and runtime files
|
||||
# lang vim-#.#-lang.tar.gz multi-language files
|
||||
@@ -66,7 +64,7 @@ all install uninstall tools config configure proto depend lint tags types test t
|
||||
#
|
||||
# All output files are created in the "dist" directory. Existing files are
|
||||
# overwritten!
|
||||
# To do all this you need the unixrt, unixsrc, extra and lang archives, and
|
||||
# To do all this you need the unix, extra and lang archives, and
|
||||
# compiled binaries.
|
||||
# Before creating an archive first delete all backup files, *.orig, etc.
|
||||
|
||||
@@ -80,10 +78,11 @@ MINOR = 0aa
|
||||
#
|
||||
# - Update Vim version number. For a test version in: src/version.h, Contents,
|
||||
# MAJOR/MINOR above, VIMRTDIR and VERSION in src/Makefile, README*.txt,
|
||||
# runtime/doc/*.txt and nsis/gvim.nsi. For a minor/major version:
|
||||
# src/GvimExt/GvimExt.reg, src/vim16.def.
|
||||
# runtime/doc/*.txt and nsis/gvim.nsi. Other things in README_os2.txt. For a
|
||||
# minor/major version: src/GvimExt/GvimExt.reg, src/vim.def, src/vim16.def.
|
||||
# - Correct included_patches[] in src/version.c.
|
||||
# - Compile Vim with GTK, Perl, Python, TCL, Ruby, Cscope and "huge" features.
|
||||
# - Compile Vim with GTK, Perl, Python, TCL, Ruby, MZscheme, Cscope and "huge"
|
||||
# features. Exclude workshop and SNiFF.
|
||||
# - With these features: "make proto" (requires cproto and Motif installed;
|
||||
# ignore warnings for missing include files, fix problems for syntax errors).
|
||||
# - With these features: "make depend" (works best with gcc).
|
||||
@@ -125,7 +124,7 @@ MINOR = 0aa
|
||||
# "uninstald16.exe".
|
||||
# 32 bit DOS version:
|
||||
# - Set environment for compiling with DJGPP; "gmake -f Make_djg.mak".
|
||||
# - "rm testdir/*.out", "make -f Make_djg.mak test" and check the output.
|
||||
# - "rm testdir/*.out", "gmake -f Make_djg.mak test" and check the output.
|
||||
# - Rename the executables to "vimd32.exe", "xxdd32.exe", "installd32.exe" and
|
||||
# "uninstald32.exe".
|
||||
# Win32 console version:
|
||||
@@ -262,10 +261,8 @@ dist/$(COMMENT_FARSI): dist/comment
|
||||
dist/$(COMMENT_LANG): dist/comment
|
||||
echo "Vim - Vi IMproved - v$(VDOT) MS-Windows language files" > dist/$(COMMENT_LANG)
|
||||
|
||||
unixrt: dist prepare
|
||||
-rm -f dist/$(VIMVER)-rt1.tar.gz
|
||||
-rm -f dist/$(VIMVER)-rt2.tar.gz
|
||||
# first runtime file
|
||||
unixall: dist prepare
|
||||
-rm -f dist/$(VIMVER).tar.bz2
|
||||
-rm -rf dist/$(VIMRTDIR)
|
||||
mkdir dist/$(VIMRTDIR)
|
||||
tar cf - \
|
||||
@@ -273,36 +270,10 @@ unixrt: dist prepare
|
||||
$(RT_ALL_BIN) \
|
||||
$(RT_UNIX) \
|
||||
$(RT_UNIX_DOS_BIN) \
|
||||
| (cd dist/$(VIMRTDIR); tar xf -)
|
||||
cd dist && tar cf $(VIMVER)-rt1.tar $(VIMRTDIR)
|
||||
gzip -9 dist/$(VIMVER)-rt1.tar
|
||||
# second runtime file (script and language files)
|
||||
-rm -rf dist/$(VIMRTDIR)
|
||||
mkdir dist/$(VIMRTDIR)
|
||||
tar cf - \
|
||||
$(RT_SCRIPTS) \
|
||||
$(LANG_GEN) \
|
||||
$(LANG_GEN_BIN) \
|
||||
| (cd dist/$(VIMRTDIR); tar xf -)
|
||||
cd dist && tar cf $(VIMVER)-rt2.tar $(VIMRTDIR)
|
||||
gzip -9 dist/$(VIMVER)-rt2.tar
|
||||
|
||||
unixsrc: dist prepare
|
||||
-rm -f dist/$(VIMVER)-src1.tar.gz
|
||||
-rm -f dist/$(VIMVER)-src2.tar.gz
|
||||
# first source file
|
||||
-rm -rf dist/$(VIMRTDIR)
|
||||
mkdir dist/$(VIMRTDIR)
|
||||
tar cf - \
|
||||
$(SRC_ALL1) \
|
||||
| (cd dist/$(VIMRTDIR); tar xf -)
|
||||
cd dist && tar cf $(VIMVER)-src1.tar $(VIMRTDIR)
|
||||
gzip -9 dist/$(VIMVER)-src1.tar
|
||||
# second source file
|
||||
-rm -rf dist/$(VIMRTDIR)
|
||||
mkdir dist/$(VIMRTDIR)
|
||||
tar cf - \
|
||||
$(SRC_ALL2) \
|
||||
$(SRC_ALL) \
|
||||
$(SRC_UNIX) \
|
||||
$(SRC_DOS_UNIX) \
|
||||
| (cd dist/$(VIMRTDIR); tar xf -)
|
||||
@@ -310,21 +281,6 @@ unixsrc: dist prepare
|
||||
cp -f src/config.mk.dist dist/$(VIMRTDIR)/src/auto/config.mk
|
||||
# Create an empty config.h file, make dependencies require it
|
||||
touch dist/$(VIMRTDIR)/src/auto/config.h
|
||||
# Make sure configure is newer than config.mk to force it to be generated
|
||||
touch dist/$(VIMRTDIR)/src/configure
|
||||
cd dist && tar cf $(VIMVER)-src2.tar $(VIMRTDIR)
|
||||
gzip -9 dist/$(VIMVER)-src2.tar
|
||||
|
||||
unixall: dist unixsrc unixrt
|
||||
-rm -f dist/$(VIMVER).tar.bz2
|
||||
-rm -rf dist/$(VIMRTDIR)
|
||||
mkdir dist/$(VIMRTDIR)
|
||||
cd dist && tar xfz $(VIMVER)-src1.tar.gz
|
||||
cd dist && tar xfz $(VIMVER)-src2.tar.gz
|
||||
cd dist && tar xfz $(VIMVER)-rt1.tar.gz
|
||||
cd dist && tar xfz $(VIMVER)-rt2.tar.gz
|
||||
# Create an empty config.h file, make dependencies require it
|
||||
touch dist/$(VIMRTDIR)/src/auto/config.h
|
||||
# Make sure configure is newer than config.mk to force it to be generated
|
||||
touch dist/$(VIMRTDIR)/src/configure
|
||||
cd dist && tar cf $(VIMVER).tar $(VIMRTDIR)
|
||||
@@ -405,8 +361,7 @@ amisrc: dist prepare
|
||||
mkdir dist/Vim/$(VIMRTDIR)
|
||||
tar cf - \
|
||||
$(ROOT_AMI) \
|
||||
$(SRC_ALL1) \
|
||||
$(SRC_ALL2) \
|
||||
$(SRC_ALL) \
|
||||
$(SRC_AMI) \
|
||||
$(SRC_AMI_DOS) \
|
||||
| (cd dist/Vim/$(VIMRTDIR); tar xf -)
|
||||
@@ -593,8 +548,7 @@ dossrc: dist no_title.vim dist/$(COMMENT_SRC) runtime/doc/uganda.nsis.txt
|
||||
mkdir dist/vim
|
||||
mkdir dist/vim/$(VIMRTDIR)
|
||||
tar cf - \
|
||||
$(SRC_ALL1) \
|
||||
$(SRC_ALL2) \
|
||||
$(SRC_ALL) \
|
||||
$(SRC_DOS) \
|
||||
$(SRC_AMI_DOS) \
|
||||
$(SRC_DOS_UNIX) \
|
||||
|
||||
@@ -5,28 +5,28 @@ See "README.txt" for general information about Vim.
|
||||
|
||||
|
||||
NOTE: You will need two archives:
|
||||
vim62rt.zip contains the runtime files (same as for the PC version)
|
||||
vim62os2.zip contains the OS/2 executables
|
||||
vim70rt.zip contains the runtime files (same as for the PC version)
|
||||
vim70os2.zip contains the OS/2 executables
|
||||
|
||||
1. Go to the directory where you want to put the Vim files. Examples:
|
||||
cd C:\
|
||||
cd D:\editors
|
||||
|
||||
2. Unpack the zip archives. This will create a new directory "vim/vim62",
|
||||
2. Unpack the zip archives. This will create a new directory "vim/vim70",
|
||||
in which all the distributed Vim files are placed. Since the directory
|
||||
name includes the version number, it is unlikely that you overwrite
|
||||
existing files.
|
||||
Examples:
|
||||
pkunzip -d vim62os2.zip
|
||||
unzip vim62os2.zip
|
||||
pkunzip -d vim70os2.zip
|
||||
unzip vim70os2.zip
|
||||
|
||||
After you unpacked the files, you can still move the whole directory tree
|
||||
to another location.
|
||||
|
||||
3. Add the directory where vim.exe is to your path. The simplest is to add a
|
||||
line to your autoexec.bat. Examples:
|
||||
set path=%path%;C:\vim\vim62
|
||||
set path=%path%;D:\editors\vim\vim62
|
||||
set path=%path%;C:\vim\vim70
|
||||
set path=%path%;D:\editors\vim\vim70
|
||||
|
||||
That's it!
|
||||
|
||||
@@ -41,10 +41,10 @@ Extra remarks:
|
||||
C:\vim\_viminfo Dynamic info for 'viminfo'.
|
||||
C:\vim\... Other files you made.
|
||||
Distributed files:
|
||||
C:\vim\vim62\vim.exe The Vim version 6.2 executable.
|
||||
C:\vim\vim62\doc\*.txt The version 6.2 documentation files.
|
||||
C:\vim\vim62\bugreport.vim A Vim version 6.2 script.
|
||||
C:\vim\vim62\... Other version 6.2 distributed files.
|
||||
C:\vim\vim70\vim.exe The Vim version 7.0 executable.
|
||||
C:\vim\vim70\doc\*.txt The version 7.0 documentation files.
|
||||
C:\vim\vim70\bugreport.vim A Vim version 7.0 script.
|
||||
C:\vim\vim70\... Other version 7.0 distributed files.
|
||||
In this case the $VIM environment variable would be set like this:
|
||||
set VIM=C:\vim
|
||||
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
" Vim completion script
|
||||
" Language: C
|
||||
" Maintainer: Bram Moolenaar <Bram@vim.org>
|
||||
" Last Change: 2005 Oct 06
|
||||
" Last Change: 2005 Dec 18
|
||||
|
||||
|
||||
" This function is used for the 'omnifunc' option.
|
||||
@@ -87,7 +87,7 @@ function! ccomplete#Complete(findstart, base)
|
||||
if diclist[i]['kind'] == 'v'
|
||||
let line = diclist[i]['cmd']
|
||||
if line[0] == '/' && line[1] == '^'
|
||||
let col = match(line, items[0])
|
||||
let col = match(line, '\<' . items[0] . '\>')
|
||||
call extend(res, s:Nextitem(strpart(line, 2, col - 2), items[1:]))
|
||||
endif
|
||||
endif
|
||||
|
||||
@@ -463,7 +463,7 @@ function! htmlcomplete#CompleteTags(findstart, base)
|
||||
|
||||
let tags = g:xmldata_xhtml10s[opentag][0]
|
||||
|
||||
for m in tags
|
||||
for m in sort(tags)
|
||||
if m =~ '^'.context
|
||||
call add(res, m)
|
||||
elseif m =~ context
|
||||
|
||||
File diff suppressed because it is too large
Load Diff
@@ -1,7 +1,7 @@
|
||||
" tar.vim: Handles browsing tarfiles
|
||||
" AUTOLOAD PORTION
|
||||
" Date: Nov 18, 2005
|
||||
" Version: 4
|
||||
" Date: Nov 28, 2005
|
||||
" Version: 5
|
||||
" Maintainer: Charles E Campbell, Jr <drchipNOSPAM at campbellfamily dot biz>
|
||||
" License: Vim License (see vim's :help license)
|
||||
"
|
||||
@@ -24,7 +24,7 @@ set cpo&vim
|
||||
if exists("g:loaded_tar")
|
||||
finish
|
||||
endif
|
||||
let g:loaded_tar= "v4"
|
||||
let g:loaded_tar= "v5"
|
||||
|
||||
" ---------------------------------------------------------------------
|
||||
" Default Settings: {{{1
|
||||
@@ -46,11 +46,14 @@ endif
|
||||
" tar#Browse: {{{2
|
||||
fun! tar#Browse(tarfile)
|
||||
" call Dfunc("tar#Browse(tarfile<".a:tarfile.">)")
|
||||
let repkeep= &report
|
||||
set report=10
|
||||
|
||||
" sanity checks
|
||||
if !executable("tar")
|
||||
echohl Error | echo '***error*** (tar#Browse) "tar" not available on your system'
|
||||
call inputsave()|call input("Press <cr> to continue")|call inputrestore()
|
||||
let &report= repkeep
|
||||
" call Dret("tar#Browse")
|
||||
return
|
||||
endif
|
||||
@@ -60,6 +63,7 @@ fun! tar#Browse(tarfile)
|
||||
echohl Error | echo "***error*** (tar#Browse) File not readable<".a:tarfile.">" | echohl None
|
||||
call inputsave()|call input("Press <cr> to continue")|call inputrestore()
|
||||
endif
|
||||
let &report= repkeep
|
||||
" call Dret("tar#Browse : file<".a:tarfile."> not readable")
|
||||
return
|
||||
endif
|
||||
@@ -94,6 +98,7 @@ fun! tar#Browse(tarfile)
|
||||
setlocal noma nomod ro
|
||||
noremap <silent> <buffer> <cr> :call <SID>TarBrowseSelect()<cr>
|
||||
|
||||
let &report= repkeep
|
||||
" call Dret("tar#Browse : w:tarfile<".w:tarfile.">")
|
||||
endfun
|
||||
|
||||
@@ -101,11 +106,14 @@ endfun
|
||||
" TarBrowseSelect: {{{2
|
||||
fun! s:TarBrowseSelect()
|
||||
" call Dfunc("TarBrowseSelect() w:tarfile<".w:tarfile."> curfile<".expand("%").">")
|
||||
let repkeep= &report
|
||||
set report=10
|
||||
let fname= getline(".")
|
||||
" call Decho("fname<".fname.">")
|
||||
|
||||
" sanity check
|
||||
if fname =~ '^"'
|
||||
let &report= repkeep
|
||||
" call Dret("TarBrowseSelect")
|
||||
return
|
||||
endif
|
||||
@@ -121,6 +129,7 @@ fun! s:TarBrowseSelect()
|
||||
exe "e tarfile:".tarfile.':'.fname
|
||||
filetype detect
|
||||
|
||||
let &report= repkeep
|
||||
" call Dret("TarBrowseSelect : s:tblfile_".winnr()."<".s:tblfile_{winnr()}.">")
|
||||
endfun
|
||||
|
||||
@@ -128,6 +137,8 @@ endfun
|
||||
" tar#Read: {{{2
|
||||
fun! tar#Read(fname,mode)
|
||||
" call Dfunc("tar#Read(fname<".a:fname.">,mode=".a:mode.")")
|
||||
let repkeep= &report
|
||||
set report=10
|
||||
let tarfile = substitute(a:fname,'tarfile:\(.\{-}\):.*$','\1','')
|
||||
let fname = substitute(a:fname,'tarfile:.\{-}:\(.*\)$','\1','')
|
||||
" call Decho("tarfile<".tarfile."> fname<".fname.">")
|
||||
@@ -149,6 +160,7 @@ fun! tar#Read(fname,mode)
|
||||
0d
|
||||
set nomod
|
||||
|
||||
let &report= repkeep
|
||||
" call Dret("tar#Read : w:tarfile<".w:tarfile.">")
|
||||
endfun
|
||||
|
||||
@@ -156,17 +168,21 @@ endfun
|
||||
" tar#Write: {{{2
|
||||
fun! tar#Write(fname)
|
||||
" call Dfunc("tar#Write(fname<".a:fname.">) w:tarfile<".w:tarfile."> tblfile_".winnr()."<".s:tblfile_{winnr()}.">")
|
||||
let repkeep= &report
|
||||
set report=10
|
||||
|
||||
" sanity checks
|
||||
if !executable("tar")
|
||||
echohl Error | echo '***error*** (tar#Browse) "tar" not available on your system'
|
||||
call inputsave()|call input("Press <cr> to continue")|call inputrestore()
|
||||
let &report= repkeep
|
||||
" call Dret("tar#Write")
|
||||
return
|
||||
endif
|
||||
if !exists("*mkdir")
|
||||
echohl Error | echo "***error*** (tar#Write) sorry, mkdir() doesn't work on your system" | echohl None
|
||||
call inputsave()|call input("Press <cr> to continue")|call inputrestore()
|
||||
let &report= repkeep
|
||||
" call Dret("tar#Write")
|
||||
return
|
||||
endif
|
||||
@@ -186,6 +202,7 @@ fun! tar#Write(fname)
|
||||
catch /^Vim\%((\a\+)\)\=:E344/
|
||||
echohl Error | echo "***error*** (tar#Write) cannot cd to temporary directory" | Echohl None
|
||||
call inputsave()|call input("Press <cr> to continue")|call inputrestore()
|
||||
let &report= repkeep
|
||||
" call Dret("tar#Write")
|
||||
return
|
||||
endtry
|
||||
@@ -285,6 +302,7 @@ fun! tar#Write(fname)
|
||||
exe "cd ".escape(curdir,' \')
|
||||
setlocal nomod
|
||||
|
||||
let &report= repkeep
|
||||
" call Dret("tar#Write")
|
||||
endfun
|
||||
|
||||
|
||||
@@ -310,7 +310,7 @@ function! xmlcomplete#GetLastOpenTag(unaryTagsStack)
|
||||
let tagpat='</\='.b:xml_namespace.':\(\k\|[.-]\)\+\|/>'
|
||||
endif
|
||||
else
|
||||
let tagpat='</\=\(\k\|[.-:]\)\+\|/>'
|
||||
let tagpat='</\=\(\k\|[.-]\)\+\|/>'
|
||||
endif
|
||||
while (linenum>0)
|
||||
let line=getline(linenum)
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
" zip.vim: Handles browsing zipfiles
|
||||
" AUTOLOAD PORTION
|
||||
" Date: Nov 14, 2005
|
||||
" Version: 4
|
||||
" Date: Nov 28, 2005
|
||||
" Version: 5
|
||||
" Maintainer: Charles E Campbell, Jr <drchipNOSPAM at campbellfamily dot biz>
|
||||
" License: Vim License (see vim's :help license)
|
||||
" Copyright: Copyright (C) 2005 Charles E. Campbell, Jr. {{{1
|
||||
@@ -22,7 +22,7 @@ if exists("g:loaded_zip")
|
||||
finish
|
||||
endif
|
||||
|
||||
let g:loaded_zip= "v4"
|
||||
let g:loaded_zip= "v5"
|
||||
|
||||
" ----------------
|
||||
" Functions: {{{1
|
||||
@@ -32,11 +32,14 @@ let g:loaded_zip= "v4"
|
||||
" zip#Browse: {{{2
|
||||
fun! zip#Browse(zipfile)
|
||||
" call Dfunc("zip#Browse(zipfile<".a:zipfile.">)")
|
||||
let repkeep= &report
|
||||
set report=10
|
||||
|
||||
" sanity checks
|
||||
if !executable("unzip")
|
||||
echohl Error | echo "***error*** (zip#Browse) unzip not available on your system"
|
||||
call inputsave()|call input("Press <cr> to continue")|call inputrestore()
|
||||
let &report= repkeep
|
||||
" call Dret("zip#Browse")
|
||||
return
|
||||
endif
|
||||
@@ -46,6 +49,7 @@ fun! zip#Browse(zipfile)
|
||||
echohl Error | echo "***error*** (zip#Browse) File not readable<".a:zipfile.">" | echohl None
|
||||
call inputsave()|call input("Press <cr> to continue")|call inputrestore()
|
||||
endif
|
||||
let &report= repkeep
|
||||
" call Dret("zip#Browse : file<".a:zipfile."> not readable")
|
||||
return
|
||||
endif
|
||||
@@ -77,6 +81,7 @@ fun! zip#Browse(zipfile)
|
||||
setlocal noma nomod ro
|
||||
noremap <silent> <buffer> <cr> :call <SID>ZipBrowseSelect()<cr>
|
||||
|
||||
let &report= repkeep
|
||||
" call Dret("zip#Browse")
|
||||
endfun
|
||||
|
||||
@@ -84,16 +89,20 @@ endfun
|
||||
" ZipBrowseSelect: {{{2
|
||||
fun! s:ZipBrowseSelect()
|
||||
" call Dfunc("ZipBrowseSelect() zipfile<".w:zipfile."> curfile<".expand("%").">")
|
||||
let repkeep= &report
|
||||
set report=10
|
||||
let fname= getline(".")
|
||||
|
||||
" sanity check
|
||||
if fname =~ '^"'
|
||||
let &report= repkeep
|
||||
" call Dret("ZipBrowseSelect")
|
||||
return
|
||||
endif
|
||||
if fname =~ '/$'
|
||||
echohl Error | echo "***error*** (zip#Browse) Please specify a file, not a directory" | echohl None
|
||||
call inputsave()|call input("Press <cr> to continue")|call inputrestore()
|
||||
let &report= repkeep
|
||||
" call Dret("ZipBrowseSelect")
|
||||
return
|
||||
endif
|
||||
@@ -110,6 +119,7 @@ fun! s:ZipBrowseSelect()
|
||||
exe "e zipfile:".zipfile.':'.fname
|
||||
filetype detect
|
||||
|
||||
let &report= repkeep
|
||||
" call Dret("ZipBrowseSelect : s:zipfile_".winnr()."<".s:zipfile_{winnr()}.">")
|
||||
endfun
|
||||
|
||||
@@ -117,6 +127,9 @@ endfun
|
||||
" zip#Read: {{{2
|
||||
fun! zip#Read(fname,mode)
|
||||
" call Dfunc("zip#Read(fname<".a:fname.">,mode=".a:mode.")")
|
||||
let repkeep= &report
|
||||
set report=10
|
||||
|
||||
let zipfile = substitute(a:fname,'zipfile:\(.\{-}\):.*$','\1','')
|
||||
let fname = substitute(a:fname,'zipfile:.\{-}:\(.*\)$','\1','')
|
||||
" call Decho("zipfile<".zipfile."> fname<".fname.">")
|
||||
@@ -127,6 +140,7 @@ fun! zip#Read(fname,mode)
|
||||
0d
|
||||
set nomod
|
||||
|
||||
let &report= repkeep
|
||||
" call Dret("zip#Read")
|
||||
endfun
|
||||
|
||||
@@ -134,17 +148,21 @@ endfun
|
||||
" zip#Write: {{{2
|
||||
fun! zip#Write(fname)
|
||||
" call Dfunc("zip#Write(fname<".a:fname.") zipfile_".winnr()."<".s:zipfile_{winnr()}.">")
|
||||
let repkeep= &report
|
||||
set report=10
|
||||
|
||||
" sanity checks
|
||||
if !executable("zip")
|
||||
echohl Error | echo "***error*** (zip#Write) sorry, your system doesn't appear to have the zip pgm" | echohl None
|
||||
call inputsave()|call input("Press <cr> to continue")|call inputrestore()
|
||||
let &report= repkeep
|
||||
" call Dret("zip#Write")
|
||||
return
|
||||
endif
|
||||
if !exists("*mkdir")
|
||||
echohl Error | echo "***error*** (zip#Write) sorry, mkdir() doesn't work on your system" | echohl None
|
||||
call inputsave()|call input("Press <cr> to continue")|call inputrestore()
|
||||
let &report= repkeep
|
||||
" call Dret("zip#Write")
|
||||
return
|
||||
endif
|
||||
@@ -164,6 +182,7 @@ fun! zip#Write(fname)
|
||||
catch /^Vim\%((\a\+)\)\=:E344/
|
||||
echohl Error | echo "***error*** (zip#Write) cannot cd to temporary directory" | Echohl None
|
||||
call inputsave()|call input("Press <cr> to continue")|call inputrestore()
|
||||
let &report= repkeep
|
||||
" call Dret("zip#Write")
|
||||
return
|
||||
endtry
|
||||
@@ -220,6 +239,7 @@ fun! zip#Write(fname)
|
||||
exe "cd ".escape(curdir,' \')
|
||||
setlocal nomod
|
||||
|
||||
let &report= repkeep
|
||||
" call Dret("zip#Write")
|
||||
endfun
|
||||
|
||||
|
||||
@@ -11,9 +11,9 @@ let current_compiler = "bdf"
|
||||
let s:cpo_save = &cpo
|
||||
set cpo-=C
|
||||
|
||||
setlocal makeprg=bdftopcf\ $*
|
||||
CompilerSet makeprg=bdftopcf\ $*
|
||||
|
||||
setlocal errorformat=%ABDF\ %trror\ on\ line\ %l:\ %m,
|
||||
CompilerSet errorformat=%ABDF\ %trror\ on\ line\ %l:\ %m,
|
||||
\%-Z%p^,
|
||||
\%Cbdftopcf:\ bdf\ input\\,\ %f\\,\ corrupt,
|
||||
\%-G%.%#
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
" Vim compiler file
|
||||
" Compiler: Miscrosoft Visual C
|
||||
" Maintainer: Bram Moolenaar <Bram@vim.org>
|
||||
" Last Change: 2005 Jun 22
|
||||
" Last Change: 2005 Nov 30
|
||||
|
||||
if exists("current_compiler")
|
||||
finish
|
||||
@@ -9,5 +9,5 @@ endif
|
||||
let current_compiler = "msvc"
|
||||
|
||||
" The errorformat for MSVC is the default.
|
||||
setlocal errorformat&
|
||||
setlocal makeprg=nmake
|
||||
CompilerSet errorformat&
|
||||
CompilerSet makeprg=nmake
|
||||
|
||||
@@ -11,7 +11,7 @@ let current_compiler = "rst"
|
||||
let s:cpo_save = &cpo
|
||||
set cpo-=C
|
||||
|
||||
setlocal errorformat=
|
||||
CompilerSet errorformat=
|
||||
\%f:%l:\ (%tEBUG/0)\ %m,
|
||||
\%f:%l:\ (%tNFO/1)\ %m,
|
||||
\%f:%l:\ (%tARNING/2)\ %m,
|
||||
|
||||
@@ -72,6 +72,8 @@ DOCS = \
|
||||
pi_gzip.txt \
|
||||
pi_netrw.txt \
|
||||
pi_spec.txt \
|
||||
pi_tar.txt \
|
||||
pi_zip.txt \
|
||||
print.txt \
|
||||
quickfix.txt \
|
||||
quickref.txt \
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
*autocmd.txt* For Vim version 7.0aa. Last change: 2005 Nov 21
|
||||
*autocmd.txt* For Vim version 7.0aa. Last change: 2005 Dec 18
|
||||
|
||||
|
||||
VIM REFERENCE MANUAL by Bram Moolenaar
|
||||
@@ -18,6 +18,7 @@ For a basic explanation, see section |40.3| in the user manual.
|
||||
8. Groups |autocmd-groups|
|
||||
9. Executing autocommands |autocmd-execute|
|
||||
10. Using autocommands |autocmd-use|
|
||||
11. Disabling autocommands |autocmd-disable|
|
||||
|
||||
{Vi does not have any of these commands}
|
||||
{only when the |+autocmd| feature has not been disabled at compile time}
|
||||
@@ -169,18 +170,195 @@ See |:verbose-cmd| for more information.
|
||||
==============================================================================
|
||||
5. Events *autocmd-events* *E215* *E216*
|
||||
|
||||
You can specify a comma-separated list of event names. No white space can be
|
||||
used in this list. The command applies to all the events in the list.
|
||||
|
||||
For READING FILES there are four kinds of events possible:
|
||||
BufNewFile starting to edit a non-existent file
|
||||
BufReadPre BufReadPost starting to edit an existing file
|
||||
FilterReadPre FilterReadPost read the temp file with filter output
|
||||
FileReadPre FileReadPost any other file read
|
||||
Vim uses only one of these four kinds when reading a file. The "Pre" and
|
||||
"Post" events are both triggered, before and after reading the file.
|
||||
|
||||
Note that the autocommands for the *ReadPre events and all the Filter events
|
||||
are not allowed to change the current buffer (you will get an error message if
|
||||
this happens). This is to prevent the file to be read into the wrong buffer.
|
||||
|
||||
Note that the 'modified' flag is reset AFTER executing the BufReadPost
|
||||
and BufNewFile autocommands. But when the 'modified' option was set by the
|
||||
autocommands, this doesn't happen.
|
||||
|
||||
You can use the 'eventignore' option to ignore a number of events or all
|
||||
events.
|
||||
*autocommand-events* *{event}*
|
||||
Vim recognizes the following events. Vim ignores the case of event names
|
||||
(e.g., you can use "BUFread" or "bufread" instead of "BufRead").
|
||||
|
||||
First an overview by function with a short explanation. Then the list
|
||||
alpabetically with full explanations |autocmd-events-abc|.
|
||||
|
||||
Name triggered by ~
|
||||
|
||||
Reading
|
||||
|BufNewFile| starting to edit a file that doesn't exist
|
||||
|BufReadPre| starting to edit a new buffer, before reading the file
|
||||
|BufRead| starting to edit a new buffer, after reading the file
|
||||
|BufReadPost| starting to edit a new buffer, after reading the file
|
||||
|BufReadCmd| before starting to edit a new buffer |Cmd-event|
|
||||
|
||||
|FileReadPre| before reading a file with a ":read" command
|
||||
|FileReadPost| after reading a file with a ":read" command
|
||||
|FileReadCmd| before reading a file with a ":read" comman |Cmd-event|
|
||||
|
||||
|FilterReadPre| before reading a file from a filter command
|
||||
|FilterReadPost| after reading a file from a filter command
|
||||
|
||||
|StdinReadPre| before reading from stdin into the buffer
|
||||
|StdinReadPost| After reading from the stdin into the buffer
|
||||
|
||||
Writing
|
||||
|BufWrite| starting to write the whole buffer to a file
|
||||
|BufWritePre| starting to write the whole buffer to a file
|
||||
|BufWritePost| after writing the whole buffer to a file
|
||||
|BufWriteCmd| before writing the whole buffer to a file |Cmd-event|
|
||||
|
||||
|FileWritePre| starting to write part of a buffer to a file
|
||||
|FileWritePost| after writing part of a buffer to a file
|
||||
|FileWriteCmd| before writing part of a buffer to a file |Cmd-event|
|
||||
|
||||
|FileAppendPre| starting to append to a file
|
||||
|FileAppendPost| after appending to a file
|
||||
|FileAppendCmd| before appending to a file |Cmd-event|
|
||||
|
||||
|FilterWritePre| starting to write a file for a filter command or diff
|
||||
|FilterWritePost| after writing a file for a filter command or diff
|
||||
|
||||
Buffers
|
||||
|BufAdd| just after adding a buffer to the buffer list
|
||||
|BufCreate| just after adding a buffer to the buffer list
|
||||
|BufDelete| before deleting a buffer from the buffer list
|
||||
|BufWipeout| before completely deleting a buffer
|
||||
|
||||
|BufFilePre| before changing the name of the current buffer
|
||||
|BufFilePost| after changing the name of the current buffer
|
||||
|
||||
|BufEnter| after entering a buffer
|
||||
|BufLeave| before leaving to another buffer
|
||||
|BufWinEnter| after a buffer is displayed in a window
|
||||
|BufWinLeave| before a buffer is removed from a window
|
||||
|
||||
|BufUnload| before unloading a buffer
|
||||
|BufHidden| just after a buffer has become hidden
|
||||
|BufNew| just after creating a new buffer
|
||||
|
||||
|SwapExists| detected an existing swap file
|
||||
|
||||
Options
|
||||
|FileType| when the 'filetype' option has been set
|
||||
|Syntax| when the 'syntax' option has been set
|
||||
|EncodingChanged| after the 'encoding' option has been changed
|
||||
|TermChanged| after the value of 'term' has changed
|
||||
|
||||
Startup and exit
|
||||
|VimEnter| after doing all the startup stuff
|
||||
|GUIEnter| after starting the GUI successfully
|
||||
|TermResponse| after the termainal response to |t_RV| is received
|
||||
|
||||
|VimLeavePre| before exiting Vim, before writing the viminfo file
|
||||
|VimLeave| before exiting Vim, after writing the viminfo file
|
||||
|
||||
Various
|
||||
|FileChangedShell| Vim notices that a file changed since editing started
|
||||
|FileChangedRO| before making the first change to a read-only file
|
||||
|
||||
|FuncUndefined| a user function is used but it isn't defined
|
||||
|
||||
|FocusGained| Vim got input focus
|
||||
|FocusLost| Vim lost input focus
|
||||
|CursorHold| the user doesn't press a key for a while
|
||||
|
||||
|WinEnter| after entering another window
|
||||
|WinLeave| before leaving a window
|
||||
|CmdwinEnter| after entering the command-line window
|
||||
|CmdwinLeave| before leaving the command-line window
|
||||
|
||||
|InsertEnter| starting Insert mode
|
||||
|InsertChange| when typing <Insert> while in Insert or Replace mode
|
||||
|InsertLeave| when leaving Insert mode
|
||||
|
||||
|ColorScheme| after loading a color scheme
|
||||
|
||||
|RemoteReply| a reply from a server Vim was received
|
||||
|
||||
|QuickFixCmdPre| before a quickfix command is run
|
||||
|QuickFixCmdPost| after a quickfix command is run
|
||||
|
||||
|SessionLoadPost| after loading a session file
|
||||
|
||||
|MenuPopup| just before showing the popup menu
|
||||
|
||||
|User| to be used in combination with ":doautocmd"
|
||||
|
||||
|
||||
The alphabetical list of autocommand events: *autocmd-events-abc*
|
||||
|
||||
*BufCreate* *BufAdd*
|
||||
BufAdd or BufCreate Just after creating a new buffer which is
|
||||
added to the buffer list, or adding a buffer
|
||||
to the buffer list.
|
||||
Also used just after a buffer in the buffer
|
||||
list has been renamed.
|
||||
The BufCreate event is for historic reasons.
|
||||
NOTE: When this autocommand is executed, the
|
||||
current buffer "%" may be different from the
|
||||
buffer being created "<afile>".
|
||||
*BufDelete*
|
||||
BufDelete Before deleting a buffer from the buffer list.
|
||||
The BufUnload may be called first (if the
|
||||
buffer was loaded).
|
||||
Also used just before a buffer in the buffer
|
||||
list is renamed.
|
||||
NOTE: When this autocommand is executed, the
|
||||
current buffer "%" may be different from the
|
||||
buffer being deleted "<afile>".
|
||||
*BufEnter*
|
||||
BufEnter After entering a buffer. Useful for setting
|
||||
options for a file type. Also executed when
|
||||
starting to edit a buffer, after the
|
||||
BufReadPost autocommands.
|
||||
*BufFilePost*
|
||||
BufFilePost After changing the name of the current buffer
|
||||
with the ":file" or ":saveas" command.
|
||||
*BufReadCmd*
|
||||
BufFilePre Before changing the name of the current buffer
|
||||
with the ":file" or ":saveas" command.
|
||||
*BufHidden*
|
||||
BufHidden Just after a buffer has become hidden. That
|
||||
is, when there are no longer windows that show
|
||||
the buffer, but the buffer is not unloaded or
|
||||
deleted. Not used for ":qa" or ":q" when
|
||||
exiting Vim.
|
||||
NOTE: When this autocommand is executed, the
|
||||
current buffer "%" may be different from the
|
||||
buffer being unloaded "<afile>".
|
||||
*BufLeave*
|
||||
BufLeave Before leaving to another buffer. Also when
|
||||
leaving or closing the current window and the
|
||||
new current window is not for the same buffer.
|
||||
Not used for ":qa" or ":q" when exiting Vim.
|
||||
*BufNew*
|
||||
BufNew Just after creating a new buffer. Also used
|
||||
just after a buffer has been renamed. When
|
||||
the buffer is added to the buffer list BufAdd
|
||||
will be triggered too.
|
||||
NOTE: When this autocommand is executed, the
|
||||
current buffer "%" may be different from the
|
||||
buffer being created "<afile>".
|
||||
*BufNewFile*
|
||||
BufNewFile When starting to edit a file that doesn't
|
||||
exist. Can be used to read in a skeleton
|
||||
file.
|
||||
*BufReadPre* *E200* *E201*
|
||||
BufReadPre When starting to edit a new buffer, before
|
||||
reading the file into the buffer. Not used
|
||||
if the file doesn't exist.
|
||||
*BufRead* *BufReadPost*
|
||||
BufRead or BufReadPost When starting to edit a new buffer, after
|
||||
reading the file into the buffer, before
|
||||
@@ -190,63 +368,49 @@ BufRead or BufReadPost When starting to edit a new buffer, after
|
||||
This does NOT work for ":r file". Not used
|
||||
when the file doesn't exist. Also used after
|
||||
successfully recovering a file.
|
||||
*BufReadCmd*
|
||||
*BufReadPre* *E200* *E201*
|
||||
BufReadCmd Before starting to edit a new buffer. Should
|
||||
read the file into the buffer. |Cmd-event|
|
||||
*BufFilePre*
|
||||
BufFilePre Before changing the name of the current buffer
|
||||
with the ":file" or ":saveas" command.
|
||||
*BufFilePost*
|
||||
BufFilePost After changing the name of the current buffer
|
||||
with the ":file" or ":saveas" command.
|
||||
*FileReadPre*
|
||||
FileReadPre Before reading a file with a ":read" command.
|
||||
*FileReadPost*
|
||||
FileReadPost After reading a file with a ":read" command.
|
||||
Note that Vim sets the '[ and '] marks to the
|
||||
first and last line of the read. This can be
|
||||
used to operate on the lines just read.
|
||||
*FileReadCmd*
|
||||
FileReadCmd Before reading a file with a ":read" command.
|
||||
Should do the reading of the file. |Cmd-event|
|
||||
*FilterReadPre* *E135*
|
||||
FilterReadPre Before reading a file from a filter command.
|
||||
Vim checks the pattern against the name of
|
||||
the current buffer, not the name of the
|
||||
temporary file that is the output of the
|
||||
filter command.
|
||||
Not triggered when 'shelltemp' is off.
|
||||
*FilterReadPost*
|
||||
FilterReadPost After reading a file from a filter command.
|
||||
Vim checks the pattern against the name of
|
||||
the current buffer as with FilterReadPre.
|
||||
Not triggered when 'shelltemp' is off.
|
||||
*FileType*
|
||||
FileType When the 'filetype' option has been set.
|
||||
<afile> can be used for the name of the file
|
||||
where this option was set, and <amatch> for
|
||||
the new value of 'filetype'.
|
||||
See |filetypes|.
|
||||
*Syntax*
|
||||
Syntax When the 'syntax' option has been set.
|
||||
<afile> can be used for the name of the file
|
||||
where this option was set, and <amatch> for
|
||||
the new value of 'syntax'.
|
||||
See |:syn-on|.
|
||||
*StdinReadPre*
|
||||
StdinReadPre Before reading from stdin into the buffer.
|
||||
Only used when the "-" argument was used when
|
||||
Vim was started |--|.
|
||||
*StdinReadPost*
|
||||
StdinReadPost After reading from the stdin into the buffer,
|
||||
before executing the modelines. Only used
|
||||
when the "-" argument was used when Vim was
|
||||
started |--|.
|
||||
BufReadPre When starting to edit a new buffer, before
|
||||
reading the file into the buffer. Not used
|
||||
if the file doesn't exist.
|
||||
*BufUnload*
|
||||
BufUnload Before unloading a buffer. This is when the
|
||||
text in the buffer is going to be freed. This
|
||||
may be after a BufWritePost and before a
|
||||
BufDelete. Also used for all buffers that are
|
||||
loaded when Vim is going to exit.
|
||||
NOTE: When this autocommand is executed, the
|
||||
current buffer "%" may be different from the
|
||||
buffer being unloaded "<afile>".
|
||||
*BufWinEnter*
|
||||
BufWinEnter After a buffer is displayed in a window. This
|
||||
can be when the buffer is loaded (after
|
||||
processing the modelines), when a hidden
|
||||
buffer is displayed in a window (and is no
|
||||
longer hidden) or a buffer already visible in
|
||||
a window is also displayed in another window.
|
||||
*BufWinLeave*
|
||||
BufWinLeave Before a buffer is removed from a window.
|
||||
Not when it's still visible in another window.
|
||||
Also triggered when exiting. It's triggered
|
||||
before BufUnload or BufHidden.
|
||||
NOTE: When this autocommand is executed, the
|
||||
current buffer "%" may be different from the
|
||||
buffer being unloaded "<afile>".
|
||||
*BufWipeout*
|
||||
BufWipeout Before completely deleting a buffer. The
|
||||
BufUnload and BufDelete events may be called
|
||||
first (if the buffer was loaded and was in the
|
||||
buffer list). Also used just before a buffer
|
||||
is renamed (also when it's not in the buffer
|
||||
list).
|
||||
NOTE: When this autocommand is executed, the
|
||||
current buffer "%" may be different from the
|
||||
buffer being deleted "<afile>".
|
||||
*BufWrite* *BufWritePre*
|
||||
BufWrite or BufWritePre Before writing the whole buffer to a file.
|
||||
*BufWritePost*
|
||||
BufWritePost After writing the whole buffer to a file
|
||||
(should undo the commands for BufWritePre).
|
||||
*BufWriteCmd*
|
||||
BufWriteCmd Before writing the whole buffer to a file.
|
||||
Should do the writing of the file and reset
|
||||
@@ -254,42 +418,70 @@ BufWriteCmd Before writing the whole buffer to a file.
|
||||
'cpo' and writing to another file |cpo-+|.
|
||||
The buffer contents should not be changed.
|
||||
|Cmd-event|
|
||||
*FileWritePre*
|
||||
FileWritePre Before writing to a file, when not writing the
|
||||
whole buffer. Use the '[ and '] marks for the
|
||||
range of lines.
|
||||
*FileWritePost*
|
||||
FileWritePost After writing to a file, when not writing the
|
||||
whole buffer.
|
||||
*FileWriteCmd*
|
||||
FileWriteCmd Before writing to a file, when not writing the
|
||||
whole buffer. Should do the writing to the
|
||||
file. Should not change the buffer. Use the
|
||||
'[ and '] marks for the range of lines.
|
||||
|Cmd-event|
|
||||
*FileAppendPre*
|
||||
FileAppendPre Before appending to a file. Use the '[ and ']
|
||||
marks for the range of lines.
|
||||
*FileAppendPost*
|
||||
FileAppendPost After appending to a file.
|
||||
*BufWritePost*
|
||||
BufWritePost After writing the whole buffer to a file
|
||||
(should undo the commands for BufWritePre).
|
||||
*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.
|
||||
<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.
|
||||
<afile> is set to a single character,
|
||||
indicating the type of command-line.
|
||||
|cmdwin-char|
|
||||
*ColorScheme*
|
||||
ColorScheme After loading a color scheme. |:colorscheme|
|
||||
*CursorHold*
|
||||
CursorHold When the user doesn't press a key for the time
|
||||
specified with 'updatetime'. Not re-triggered
|
||||
until the user has pressed a key (i.e. doesn't
|
||||
fire every 'updatetime' ms if you leave Vim to
|
||||
make some coffee. :) See |CursorHold-example|
|
||||
for previewing tags.
|
||||
This event is only triggered in Normal mode.
|
||||
While recording the CursorHold event is not
|
||||
triggered. |q|
|
||||
Note: Interactive commands cannot be used for
|
||||
this event. There is no hit-enter prompt,
|
||||
the screen is updated directly (when needed).
|
||||
Note: In the future there will probably be
|
||||
another option to set the time.
|
||||
Hint: to force an update of the status lines
|
||||
use: >
|
||||
:let &ro = &ro
|
||||
< {only on Amiga, Unix, Win32, MSDOS and all GUI
|
||||
versions}
|
||||
*EncodingChanged*
|
||||
EncodingChanged Fires off after the 'encoding' option has been
|
||||
changed. Useful to set up fonts, for example.
|
||||
*FileAppendCmd*
|
||||
FileAppendCmd Before appending to a file. Should do the
|
||||
appending to the file. Use the '[ and ']
|
||||
marks for the range of lines.|Cmd-event|
|
||||
*FilterWritePre*
|
||||
FilterWritePre Before writing a file for a filter command or
|
||||
making a diff.
|
||||
Vim checks the pattern against the name of
|
||||
the current buffer, not the name of the
|
||||
temporary file that is the output of the
|
||||
filter command.
|
||||
Not triggered when 'shelltemp' is off.
|
||||
*FilterWritePost*
|
||||
FilterWritePost After writing a file for a filter command or
|
||||
making a diff.
|
||||
Vim checks the pattern against the name of
|
||||
the current buffer as with FilterWritePre.
|
||||
Not triggered when 'shelltemp' is off.
|
||||
*FileAppendPost*
|
||||
FileAppendPost After appending to a file.
|
||||
*FileAppendPre*
|
||||
FileAppendPre Before appending to a file. Use the '[ and ']
|
||||
marks for the range of lines.
|
||||
*FileChangedRO*
|
||||
FileChangedRO Before making the first change to a read-only
|
||||
file. Can be used to check-out the file from
|
||||
a source control system. Not triggered when
|
||||
the change was caused by an autocommand.
|
||||
This event is triggered when making the first
|
||||
change in a buffer or the first change after
|
||||
'readonly' was set,
|
||||
just before the change is applied to the text.
|
||||
WARNING: If the autocommand moves the cursor
|
||||
the effect of the change is undefined.
|
||||
*FileChangedShell*
|
||||
FileChangedShell When Vim notices that the modification time of
|
||||
a file has changed since editing started.
|
||||
@@ -319,17 +511,64 @@ FileChangedShell When Vim notices that the modification time of
|
||||
commands for the FileChangedShell event no
|
||||
other FileChangedShell event will be
|
||||
triggered.
|
||||
*FileChangedRO*
|
||||
FileChangedRO Before making the first change to a read-only
|
||||
file. Can be used to check-out the file from
|
||||
a source control system. Not triggered when
|
||||
the change was caused by an autocommand.
|
||||
This event is triggered when making the first
|
||||
change in a buffer or the first change after
|
||||
'readonly' was set,
|
||||
just before the change is applied to the text.
|
||||
WARNING: If the autocommand moves the cursor
|
||||
the effect of the change is undefined.
|
||||
*FileEncoding*
|
||||
FileEncoding Obsolete. It still works and is equivalent
|
||||
to |EncodingChanged|.
|
||||
*FileReadCmd*
|
||||
FileReadCmd Before reading a file with a ":read" command.
|
||||
Should do the reading of the file. |Cmd-event|
|
||||
*FileReadPost*
|
||||
FileReadPost After reading a file with a ":read" command.
|
||||
Note that Vim sets the '[ and '] marks to the
|
||||
first and last line of the read. This can be
|
||||
used to operate on the lines just read.
|
||||
*FileReadPre*
|
||||
FileReadPre Before reading a file with a ":read" command.
|
||||
*FileType*
|
||||
FileType When the 'filetype' option has been set.
|
||||
<afile> can be used for the name of the file
|
||||
where this option was set, and <amatch> for
|
||||
the new value of 'filetype'.
|
||||
See |filetypes|.
|
||||
*FileWriteCmd*
|
||||
FileWriteCmd Before writing to a file, when not writing the
|
||||
whole buffer. Should do the writing to the
|
||||
file. Should not change the buffer. Use the
|
||||
'[ and '] marks for the range of lines.
|
||||
|Cmd-event|
|
||||
*FileWritePost*
|
||||
FileWritePost After writing to a file, when not writing the
|
||||
whole buffer.
|
||||
*FileWritePre*
|
||||
FileWritePre Before writing to a file, when not writing the
|
||||
whole buffer. Use the '[ and '] marks for the
|
||||
range of lines.
|
||||
*FilterReadPost*
|
||||
FilterReadPost After reading a file from a filter command.
|
||||
Vim checks the pattern against the name of
|
||||
the current buffer as with FilterReadPre.
|
||||
Not triggered when 'shelltemp' is off.
|
||||
*FilterReadPre* *E135*
|
||||
FilterReadPre Before reading a file from a filter command.
|
||||
Vim checks the pattern against the name of
|
||||
the current buffer, not the name of the
|
||||
temporary file that is the output of the
|
||||
filter command.
|
||||
Not triggered when 'shelltemp' is off.
|
||||
*FilterWritePost*
|
||||
FilterWritePost After writing a file for a filter command or
|
||||
making a diff.
|
||||
Vim checks the pattern against the name of
|
||||
the current buffer as with FilterWritePre.
|
||||
Not triggered when 'shelltemp' is off.
|
||||
*FilterWritePre*
|
||||
FilterWritePre Before writing a file for a filter command or
|
||||
making a diff.
|
||||
Vim checks the pattern against the name of
|
||||
the current buffer, not the name of the
|
||||
temporary file that is the output of the
|
||||
filter command.
|
||||
Not triggered when 'shelltemp' is off.
|
||||
*FocusGained*
|
||||
FocusGained When Vim got input focus. Only for the GUI
|
||||
version and a few console versions where this
|
||||
@@ -345,104 +584,136 @@ FuncUndefined When a user function is used but it isn't
|
||||
when it's used. Both <amatch> and <afile> are
|
||||
set to the name of the function.
|
||||
See |autoload-functions|.
|
||||
*CursorHold*
|
||||
CursorHold When the user doesn't press a key for the time
|
||||
specified with 'updatetime'. Not re-triggered
|
||||
until the user has pressed a key (i.e. doesn't
|
||||
fire every 'updatetime' ms if you leave Vim to
|
||||
make some coffee. :) See |CursorHold-example|
|
||||
for previewing tags.
|
||||
This event is only triggered in Normal mode.
|
||||
Note: Interactive commands cannot be used for
|
||||
this event. There is no hit-enter prompt,
|
||||
the screen is updated directly (when needed).
|
||||
Note: In the future there will probably be
|
||||
another option to set the time.
|
||||
Hint: to force an update of the status lines
|
||||
use: >
|
||||
:let &ro = &ro
|
||||
< {only on Amiga, Unix, Win32, MSDOS and all GUI
|
||||
versions}
|
||||
*BufEnter*
|
||||
BufEnter After entering a buffer. Useful for setting
|
||||
options for a file type. Also executed when
|
||||
starting to edit a buffer, after the
|
||||
BufReadPost autocommands.
|
||||
*BufLeave*
|
||||
BufLeave Before leaving to another buffer. Also when
|
||||
leaving or closing the current window and the
|
||||
new current window is not for the same buffer.
|
||||
Not used for ":qa" or ":q" when exiting Vim.
|
||||
*BufWinEnter*
|
||||
BufWinEnter After a buffer is displayed in a window. This
|
||||
can be when the buffer is loaded (after
|
||||
processing the modelines), when a hidden
|
||||
buffer is displayed in a window (and is no
|
||||
longer hidden) or a buffer already visible in
|
||||
a window is also displayed in another window.
|
||||
*BufWinLeave*
|
||||
BufWinLeave Before a buffer is removed from a window.
|
||||
Not when it's still visible in another window.
|
||||
Also triggered when exiting. It's triggered
|
||||
before BufUnload or BufHidden.
|
||||
NOTE: When this autocommand is executed, the
|
||||
current buffer "%" may be different from the
|
||||
buffer being unloaded "<afile>".
|
||||
*BufUnload*
|
||||
BufUnload Before unloading a buffer. This is when the
|
||||
text in the buffer is going to be freed. This
|
||||
may be after a BufWritePost and before a
|
||||
BufDelete. Also used for all buffers that are
|
||||
loaded when Vim is going to exit.
|
||||
NOTE: When this autocommand is executed, the
|
||||
current buffer "%" may be different from the
|
||||
buffer being unloaded "<afile>".
|
||||
*BufHidden*
|
||||
BufHidden Just after a buffer has become hidden. That
|
||||
is, when there are no longer windows that show
|
||||
the buffer, but the buffer is not unloaded or
|
||||
deleted. Not used for ":qa" or ":q" when
|
||||
exiting Vim.
|
||||
NOTE: When this autocommand is executed, the
|
||||
current buffer "%" may be different from the
|
||||
buffer being unloaded "<afile>".
|
||||
*BufNew*
|
||||
BufNew Just after creating a new buffer. Also used
|
||||
just after a buffer has been renamed. When
|
||||
the buffer is added to the buffer list BufAdd
|
||||
will be triggered too.
|
||||
NOTE: When this autocommand is executed, the
|
||||
current buffer "%" may be different from the
|
||||
buffer being created "<afile>".
|
||||
*BufCreate* *BufAdd*
|
||||
BufAdd or BufCreate Just after creating a new buffer which is
|
||||
added to the buffer list, or adding a buffer
|
||||
to the buffer list.
|
||||
Also used just after a buffer in the buffer
|
||||
list has been renamed.
|
||||
The BufCreate event is for historic reasons.
|
||||
NOTE: When this autocommand is executed, the
|
||||
current buffer "%" may be different from the
|
||||
buffer being created "<afile>".
|
||||
*BufDelete*
|
||||
BufDelete Before deleting a buffer from the buffer list.
|
||||
The BufUnload may be called first (if the
|
||||
buffer was loaded).
|
||||
Also used just before a buffer in the buffer
|
||||
list is renamed.
|
||||
NOTE: When this autocommand is executed, the
|
||||
current buffer "%" may be different from the
|
||||
buffer being deleted "<afile>".
|
||||
*BufWipeout*
|
||||
BufWipeout Before completely deleting a buffer. The
|
||||
BufUnload and BufDelete events may be called
|
||||
first (if the buffer was loaded and was in the
|
||||
buffer list). Also used just before a buffer
|
||||
is renamed (also when it's not in the buffer
|
||||
list).
|
||||
NOTE: When this autocommand is executed, the
|
||||
current buffer "%" may be different from the
|
||||
buffer being deleted "<afile>".
|
||||
*GUIEnter*
|
||||
GUIEnter After starting the GUI successfully, and after
|
||||
opening the window. It is triggered before
|
||||
VimEnter when using gvim. Can be used to
|
||||
position the window from a .gvimrc file: >
|
||||
:autocmd GUIEnter * winpos 100 50
|
||||
< *InsertChange*
|
||||
InsertChange When typing <Insert> while in Insert or
|
||||
Replace mode. The |v:insertmode| variable
|
||||
indicates the new mode.
|
||||
Be careful not to move the cursor or do
|
||||
anything else that the user does not expect.
|
||||
*InsertEnter*
|
||||
InsertEnter When starting Insert mode. Also for Replace
|
||||
mode and Virtual Replace mode. The
|
||||
|v:insertmode| variable indicates the mode.
|
||||
Be careful not to move the cursor or do
|
||||
anything else that the user does not expect.
|
||||
*InsertLeave*
|
||||
InsertLeave When leaving Insert mode. Also when using
|
||||
CTRL-O |i_CTRL-O|. But not for |i_CTRL-C|.
|
||||
*MenuPopup*
|
||||
MenuPopup Just before showing the popup menu (under the
|
||||
right mouse button). Useful for adjusting the
|
||||
menu for what is under the cursor or mouse
|
||||
pointer.
|
||||
The pattern is matched against a single
|
||||
character representing the mode:
|
||||
n Normal
|
||||
v Visual
|
||||
o Operator-pending
|
||||
i Insert
|
||||
c Commmand line
|
||||
*QuickFixCmdPre*
|
||||
QuickFixCmdPre Before a quickfix command is run (|:make|,
|
||||
|:grep|, |:grepadd|, |:vimgrep|,
|
||||
|:vimgrepadd|). The pattern is matched against
|
||||
the command being run. When |:grep| is used
|
||||
but 'grepprg' is set to "internal" it still
|
||||
matches "grep".
|
||||
This command cannot be used to set the
|
||||
'makeprg' and 'grepprg' variables.
|
||||
If this command causes an error, the quickfix
|
||||
command is not executed.
|
||||
*QuickFixCmdPost*
|
||||
QuickFixCmdPost Like QuickFixCmdPre, but after a quickfix
|
||||
command is run.
|
||||
*RemoteReply*
|
||||
RemoteReply When a reply from a Vim that functions as
|
||||
server was received |server2client()|.
|
||||
<amatch> is equal to the {serverid} from which
|
||||
the reply was sent, and <afile> is the actual
|
||||
reply string.
|
||||
Note that even if an autocommand is defined,
|
||||
the reply should be read with |remote_read()|
|
||||
to consume it.
|
||||
*SessionLoadPost*
|
||||
SessionLoadPost After loading the session file created using
|
||||
the |:mksession| command.
|
||||
*StdinReadPost*
|
||||
StdinReadPost After reading from the stdin into the buffer,
|
||||
before executing the modelines. Only used
|
||||
when the "-" argument was used when Vim was
|
||||
started |--|.
|
||||
*StdinReadPre*
|
||||
StdinReadPre Before reading from stdin into the buffer.
|
||||
Only used when the "-" argument was used when
|
||||
Vim was started |--|.
|
||||
*SwapExists*
|
||||
SwapExists Detected an existing swap file when starting
|
||||
to edit a file. Only when it is possible to
|
||||
select a way to handle the situation, when Vim
|
||||
would ask the user what to do.
|
||||
The |v:swapname| variable holds the name of
|
||||
the swap file found, <afile> the file being
|
||||
edited. |v:swapcommand| may contain a command
|
||||
to be executed in the opened file.
|
||||
The commands should set the |v:swapchoice|
|
||||
variable to a string with one character to
|
||||
tell Vim what should be done next:
|
||||
'o' open read-only
|
||||
'e' edit the file anyway
|
||||
'r' recover
|
||||
'd' delete the swap file
|
||||
'q' quit, don't edit the file
|
||||
'a' abort, like hitting CTRL-C
|
||||
When set to an empty string the user will be
|
||||
asked, as if there was no SwapExists autocmd.
|
||||
Note: Do not try to change the buffer, the
|
||||
results are unpredictable.
|
||||
*Syntax*
|
||||
Syntax When the 'syntax' option has been set.
|
||||
<afile> can be used for the name of the file
|
||||
where this option was set, and <amatch> for
|
||||
the new value of 'syntax'.
|
||||
See |:syn-on|.
|
||||
*TermChanged*
|
||||
TermChanged After the value of 'term' has changed. Useful
|
||||
for re-loading the syntax file to update the
|
||||
colors, fonts and other terminal-dependent
|
||||
settings. Executed for all loaded buffers.
|
||||
*TermResponse*
|
||||
TermResponse After the response to |t_RV| is received from
|
||||
the terminal. The value of |v:termresponse|
|
||||
can be used to do things depending on the
|
||||
terminal version.
|
||||
*User*
|
||||
User Never executed automatically. To be used for
|
||||
autocommands that are only executed with
|
||||
":doautocmd".
|
||||
*UserGettingBored*
|
||||
UserGettingBored When the user hits CTRL-C. Just kidding! :-)
|
||||
*VimEnter*
|
||||
VimEnter After doing all the startup stuff, including
|
||||
loading .vimrc files, executing the "-c cmd"
|
||||
arguments, creating all windows and loading
|
||||
the buffers in them.
|
||||
*VimLeave*
|
||||
VimLeave Before exiting Vim, just after writing the
|
||||
.viminfo file. Executed only once, like
|
||||
VimLeavePre.
|
||||
To detect an abnormal exit use |v:dying|.
|
||||
*VimLeavePre*
|
||||
VimLeavePre Before exiting Vim, just before writing the
|
||||
.viminfo file. This is executed only once,
|
||||
if there is a match with the name of what
|
||||
happens to be the current buffer when exiting.
|
||||
Mostly useful with a "*" pattern. >
|
||||
:autocmd VimLeavePre * call CleanupStuff()
|
||||
< To detect an abnormal exit use |v:dying|.
|
||||
*WinEnter*
|
||||
WinEnter After entering another window. Not done for
|
||||
the first window, when Vim has just started.
|
||||
@@ -459,142 +730,6 @@ WinLeave Before leaving a window. If the window to be
|
||||
executes the BufLeave autocommands before the
|
||||
WinLeave autocommands (but not for ":new").
|
||||
Not used for ":qa" or ":q" when exiting Vim.
|
||||
*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.
|
||||
<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.
|
||||
<afile> is set to a single character,
|
||||
indicating the type of command-line.
|
||||
|cmdwin-char|
|
||||
*GUIEnter*
|
||||
GUIEnter After starting the GUI successfully, and after
|
||||
opening the window. It is triggered before
|
||||
VimEnter when using gvim. Can be used to
|
||||
position the window from a .gvimrc file: >
|
||||
:autocmd GUIEnter * winpos 100 50
|
||||
< *VimEnter*
|
||||
VimEnter After doing all the startup stuff, including
|
||||
loading .vimrc files, executing the "-c cmd"
|
||||
arguments, creating all windows and loading
|
||||
the buffers in them.
|
||||
*VimLeavePre*
|
||||
VimLeavePre Before exiting Vim, just before writing the
|
||||
.viminfo file. This is executed only once,
|
||||
if there is a match with the name of what
|
||||
happens to be the current buffer when exiting.
|
||||
Mostly useful with a "*" pattern. >
|
||||
:autocmd VimLeavePre * call CleanupStuff()
|
||||
< To detect an abnormal exit use |v:dying|.
|
||||
*VimLeave*
|
||||
VimLeave Before exiting Vim, just after writing the
|
||||
.viminfo file. Executed only once, like
|
||||
VimLeavePre.
|
||||
To detect an abnormal exit use |v:dying|.
|
||||
*EncodingChanged*
|
||||
EncodingChanged Fires off after the 'encoding' option has been
|
||||
changed. Useful to set up fonts, for example.
|
||||
*InsertEnter*
|
||||
InsertEnter When starting Insert mode. Also for Replace
|
||||
mode and Virtual Replace mode. The
|
||||
|v:insertmode| variable indicates the mode.
|
||||
Be careful not to move the cursor or do
|
||||
anything else that the user does not expect.
|
||||
*InsertChange*
|
||||
InsertChange When typing <Insert> while in Insert or
|
||||
Replace mode. The |v:insertmode| variable
|
||||
indicates the new mode.
|
||||
Be careful not to move the cursor or do
|
||||
anything else that the user does not expect.
|
||||
*InsertLeave*
|
||||
InsertLeave When leaving Insert mode. Also when using
|
||||
CTRL-O |i_CTRL-O|. But not for |i_CTRL-C|.
|
||||
*FileEncoding*
|
||||
FileEncoding Obsolete. It still works and is equivalent
|
||||
to |EncodingChanged|.
|
||||
*ColorScheme*
|
||||
ColorScheme After loading a color scheme. |:colorscheme|
|
||||
*RemoteReply*
|
||||
RemoteReply When a reply from a Vim that functions as
|
||||
server was received |server2client()|.
|
||||
<amatch> is equal to the {serverid} from which
|
||||
the reply was sent, and <afile> is the actual
|
||||
reply string.
|
||||
Note that even if an autocommand is defined,
|
||||
the reply should be read with |remote_read()|
|
||||
to consume it.
|
||||
*TermChanged*
|
||||
TermChanged After the value of 'term' has changed. Useful
|
||||
for re-loading the syntax file to update the
|
||||
colors, fonts and other terminal-dependent
|
||||
settings. Executed for all loaded buffers.
|
||||
*TermResponse*
|
||||
TermResponse After the response to |t_RV| is received from
|
||||
the terminal. The value of |v:termresponse|
|
||||
can be used to do things depending on the
|
||||
terminal version.
|
||||
QuickFixCmdPre *QuickFixCmdPre*
|
||||
Before a quickfix command is run (|:make|,
|
||||
|:grep|, |:grepadd|, |:vimgrep|,
|
||||
|:vimgrepadd|). The pattern is matched against
|
||||
the command being run. When |:grep| is used
|
||||
but 'grepprg' is set to "internal" it still
|
||||
matches "grep".
|
||||
This command cannot be used to set the
|
||||
'makeprg' and 'grepprg' variables.
|
||||
If this command causes an error, the quickfix
|
||||
command is not executed.
|
||||
QuickFixCmdPost *QuickFixCmdPost*
|
||||
like QuickFixCmdPre, but after a quickfix
|
||||
command is run.
|
||||
*MenuPopup*
|
||||
MenuPopup Just before showing the popup menu (under the
|
||||
right mouse button). Useful for adjusting the
|
||||
menu for what is under the cursor or mouse
|
||||
pointer.
|
||||
The pattern is matched against a single
|
||||
character representing the mode:
|
||||
n Normal
|
||||
v Visual
|
||||
o Operator-pending
|
||||
i Insert
|
||||
c Commmand line
|
||||
*UserGettingBored*
|
||||
UserGettingBored When the user hits CTRL-C. Just kidding! :-)
|
||||
*User*
|
||||
User Never executed automatically. To be used for
|
||||
autocommands that are only executed with
|
||||
":doautocmd".
|
||||
|
||||
You can specify a comma-separated list of event names. No white space can be
|
||||
used in this list. The command applies to all the events in the list.
|
||||
|
||||
For READING FILES there are four kinds of events possible:
|
||||
BufNewFile starting to edit a non-existent file
|
||||
BufReadPre BufReadPost starting to edit an existing file
|
||||
FilterReadPre FilterReadPost read the temp file with filter output
|
||||
FileReadPre FileReadPost any other file read
|
||||
Vim uses only one of these four kinds when reading a file. The "Pre" and
|
||||
"Post" events are both triggered, before and after reading the file.
|
||||
|
||||
Note that the autocommands for the *ReadPre events and all the Filter events
|
||||
are not allowed to change the current buffer (you will get an error message if
|
||||
this happens). This is to prevent the file to be read into the wrong buffer.
|
||||
|
||||
Note that the 'modified' flag is reset AFTER executing the BufReadPost
|
||||
and BufNewFile autocommands. But when the 'modified' option was set by the
|
||||
autocommands, this doesn't happen.
|
||||
|
||||
You can use the 'eventignore' option to ignore a number of events or all
|
||||
events.
|
||||
|
||||
==============================================================================
|
||||
6. Patterns *autocmd-patterns* *{pat}*
|
||||
@@ -922,10 +1057,8 @@ It's possible to use the ":au" command in an autocommand. This can be a
|
||||
self-modifying command! This can be useful for an autocommand that should
|
||||
execute only once.
|
||||
|
||||
There is currently no way to disable the autocommands. If you want to write a
|
||||
file without executing the autocommands for that type of file, write it under
|
||||
another name and rename it with a shell command. In some situations you can
|
||||
use the 'eventignore' option.
|
||||
If you want to skip autocommands for one command, use the |:noautocmd| command
|
||||
modifier or the 'eventignore' option.
|
||||
|
||||
Note: When reading a file (with ":read file" or with a filter command) and the
|
||||
last line in the file does not have an <EOL>, Vim remembers this. At the next
|
||||
@@ -1042,5 +1175,22 @@ The |v:cmdbang| variable is one when "!" was used, zero otherwise.
|
||||
|
||||
See the $VIMRUNTIME/plugin/netrw.vim for examples.
|
||||
|
||||
==============================================================================
|
||||
11. Disabling autocommands *autocmd-disable*
|
||||
|
||||
To disable autocommands for some time use the 'eventignore' option. Note that
|
||||
this may cause unexpected behavior, make sure you restore 'eventignore'
|
||||
afterwards, using a |:try| block with |:finally|.
|
||||
|
||||
*:noautocmd* *:noa*
|
||||
To disable autocommands for just one command use the ":noautocmd" command
|
||||
modifier. This will set 'eventignore' to "all" for the duration of the
|
||||
following command. Example: >
|
||||
|
||||
:noautocmd w fname.gz
|
||||
|
||||
This will write the file without triggering the autocommands defined by the
|
||||
gzip plugin.
|
||||
|
||||
|
||||
vim:tw=78:ts=8:ft=help:norl:
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
*change.txt* For Vim version 7.0aa. Last change: 2005 Aug 14
|
||||
*change.txt* For Vim version 7.0aa. Last change: 2005 Dec 16
|
||||
|
||||
|
||||
VIM REFERENCE MANUAL by Bram Moolenaar
|
||||
@@ -503,6 +503,8 @@ comment (starting with '"') after the ":!" command.
|
||||
temporary file and then reads the file into the
|
||||
buffer. Vim uses the 'shellredir' option to redirect
|
||||
the filter output to the temporary file.
|
||||
However, if the 'shelltemp' option is off then pipes
|
||||
are used when possible (on Unix).
|
||||
When the 'R' flag is included in 'cpoptions' marks in
|
||||
the filtered lines are deleted, unless the
|
||||
|:keepmarks| command is used. Example: >
|
||||
@@ -1087,7 +1089,8 @@ register. {not in Vi}
|
||||
7. Selection and drop registers "*, "+ and "~
|
||||
Use these register for storing and retrieving the selected text for the GUI.
|
||||
See |quotestar| and |quoteplus|. When the clipboard is not available or not
|
||||
working, the unnamed register is used instead. {not in Vi}
|
||||
working, the unnamed register is used instead. For Unix systems the clipboard
|
||||
is only available when the |+xterm_clipboard| feature is present. {not in Vi}
|
||||
|
||||
Note that there is only a distinction between "* and "+ for X11 systems. For
|
||||
an explanation of the difference, see |x11-selection|. Under MS-Windows, use
|
||||
@@ -1493,8 +1496,9 @@ Vim has a sorting function and a sorting command. The sorting function can be
|
||||
found here: |sort()|.
|
||||
|
||||
*:sor* *:sort*
|
||||
:[range]sor[t][!] [i] [u] [/{pattern}/]
|
||||
Sort lines in [range].
|
||||
:[range]sor[t][!] [i][u][n][x][o] [/{pattern}/]
|
||||
Sort lines in [range]. When no range is given all
|
||||
lines are sorted.
|
||||
|
||||
With [!] the order is reversed.
|
||||
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
*cmdline.txt* For Vim version 7.0aa. Last change: 2005 Nov 21
|
||||
*cmdline.txt* For Vim version 7.0aa. Last change: 2005 Dec 23
|
||||
|
||||
|
||||
VIM REFERENCE MANUAL by Bram Moolenaar
|
||||
@@ -692,6 +692,12 @@ output.
|
||||
==============================================================================
|
||||
6. Ex special characters *cmdline-special*
|
||||
|
||||
Note: These are special characters in the executed command line. If you want
|
||||
to insert special things while typing you can use the CTRL-R command. For
|
||||
example, "%" stands for the current file name, while CTRL-R % inserts the
|
||||
current file name right away. See |c_CTRL-R|.
|
||||
|
||||
|
||||
In Ex commands, at places where a file name can be used, the following
|
||||
characters have a special meaning. These can also be used in the expression
|
||||
function expand() |expand()|.
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
*debug.txt* For Vim version 7.0aa. Last change: 2005 Sep 01
|
||||
*debug.txt* For Vim version 7.0aa. Last change: 2005 Dec 17
|
||||
|
||||
|
||||
VIM REFERENCE MANUAL by Bram Moolenaar
|
||||
@@ -7,6 +7,7 @@
|
||||
Debugging Vim *debug-vim*
|
||||
|
||||
This is for debugging Vim itself, when it doesn't work properly.
|
||||
For debugging Vim scripts, functions, etc. see |debug-scripts|
|
||||
|
||||
1. Location of a crash, using gcc and gdb |debug-gcc|
|
||||
2. Windows Bug Reporting |debug-win32|
|
||||
@@ -61,9 +62,9 @@ This includes the WinDbg debugger.
|
||||
If you have Visual Studio, use that instead of the VC Toolkit
|
||||
and WinDbg.
|
||||
|
||||
|
||||
(No idea what to do if your binary was built with the Borland or Cygwin
|
||||
compilers. Sorry.)
|
||||
For other compilers, you should always use the corresponding debugger: TD for
|
||||
a Vim executable compiled with the Borland compiler; gdb (see above
|
||||
|debug-gcc|) for the Cygwin and MinGW compilers.
|
||||
|
||||
=========================================================================
|
||||
vim:tw=78:ts=8:ft=help:norl:
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
*editing.txt* For Vim version 7.0aa. Last change: 2005 Jul 25
|
||||
*editing.txt* For Vim version 7.0aa. Last change: 2005 Dec 13
|
||||
|
||||
|
||||
VIM REFERENCE MANUAL by Bram Moolenaar
|
||||
@@ -398,8 +398,9 @@ The expression can contain just about anything, thus this can also be used to
|
||||
avoid the special meaning of '"', '|', '%' and '#'.
|
||||
|
||||
*++opt* *[++opt]*
|
||||
The [++opt] argument can be used to force the value of 'fileformat' or
|
||||
'fileencoding' to a value for one command. The form is: >
|
||||
The [++opt] argument can be used to force the value of 'fileformat',
|
||||
'fileencoding' or 'binary' to a value for one command, and to specify the
|
||||
behavior for bad characters. The form is: >
|
||||
++{optname}={value}
|
||||
|
||||
Where {optname} is one of: *++ff* *++enc* *++bin* *++nobin*
|
||||
@@ -407,6 +408,7 @@ Where {optname} is one of: *++ff* *++enc* *++bin* *++nobin*
|
||||
enc or encoding overrides 'fileencoding'
|
||||
bin or binary sets 'binary'
|
||||
nobin or nobinary resets 'binary'
|
||||
bad specifies behavior for bad characters
|
||||
|
||||
{value} cannot contain white space. It can be any valid value for these
|
||||
options. Examples: >
|
||||
@@ -416,12 +418,24 @@ This edits the same file again with 'fileformat' set to "unix". >
|
||||
:w ++enc=latin1 newfile
|
||||
This writes the current buffer to "newfile" in latin1 format.
|
||||
|
||||
There may be several ++opt arguments, separated by white space. They must all
|
||||
appear before any |+cmd| argument.
|
||||
|
||||
*++bad*
|
||||
The argument of "++bad=" specifies what happens with characters that can't be
|
||||
converted and illegal bytes. It can be one of three things:
|
||||
++bad=X A single-byte character that replaces each bad character.
|
||||
++bad=keep Keep bad characters without conversion. Note that this may
|
||||
result in illegal bytes in your text!
|
||||
++bad=drop Remove the bad characters.
|
||||
|
||||
The default is like "++bad=?": Replace each bad character with a question
|
||||
mark.
|
||||
|
||||
Note that when reading, the 'fileformat' and 'fileencoding' options will be
|
||||
set to the used format. When writing this doesn't happen, thus a next write
|
||||
will use the old value of the option. Same for the 'binary' option.
|
||||
|
||||
There may be several ++opt arguments, separated by white space. They must all
|
||||
appear before any |+cmd| argument.
|
||||
|
||||
*+cmd* *[+cmd]*
|
||||
The [+cmd] argument can be used to position the cursor in the newly opened
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
*eval.txt* For Vim version 7.0aa. Last change: 2005 Nov 20
|
||||
*eval.txt* For Vim version 7.0aa. Last change: 2005 Dec 19
|
||||
|
||||
|
||||
VIM REFERENCE MANUAL by Bram Moolenaar
|
||||
@@ -1272,12 +1272,13 @@ v:fcs_choice What should happen after a |FileChangedShell| event was
|
||||
Vim behaves like it is empty, there is no warning message.
|
||||
|
||||
*v:fname_in* *fname_in-variable*
|
||||
v:fname_in The name of the input file. Only valid while evaluating:
|
||||
v:fname_in The name of the input file. Valid while evaluating:
|
||||
option used for ~
|
||||
'charconvert' file to be converted
|
||||
'diffexpr' original file
|
||||
'patchexpr' original file
|
||||
'printexpr' file to be printed
|
||||
And set to the swap file name for |SwapExists|.
|
||||
|
||||
*v:fname_out* *fname_out-variable*
|
||||
v:fname_out The name of the output file. Only valid while
|
||||
@@ -1400,6 +1401,29 @@ v:shell_error Result of the last shell command. When non-zero, the last
|
||||
*v:statusmsg* *statusmsg-variable*
|
||||
v:statusmsg Last given status message. It's allowed to set this variable.
|
||||
|
||||
*v:swapname* *swapname-variable*
|
||||
v:swapname Only valid when executing |SwapExists| autocommands: Name of
|
||||
the swap file found. Read-only.
|
||||
|
||||
*v:swapchoice* *swapchoice-variable*
|
||||
v:swapchoice |SwapExists| autocommands can set this to the selected choice
|
||||
for handling an existing swap file:
|
||||
'o' Open read-only
|
||||
'e' Edit anyway
|
||||
'r' Recover
|
||||
'd' Delete swapfile
|
||||
'q' Quit
|
||||
'a' Abort
|
||||
The value should be a single-character string. An empty value
|
||||
results in the user being asked, as would happen when there is
|
||||
no SwapExists autocommand. The default is empty.
|
||||
|
||||
*v:swapcommand* *swapcommand-variable*
|
||||
v:swapcommand Normal mode ommand to be executed after a file has been
|
||||
opened. Can be used for a |SwapExists| autocommand to have
|
||||
another Vim open the file and jump to the right place. For
|
||||
example, when jumping to a tag the value is ":tag tagname\r".
|
||||
|
||||
*v:termresponse* *termresponse-variable*
|
||||
v:termresponse The escape sequence returned by the terminal for the |t_RV|
|
||||
termcap entry. It is set when Vim receives an escape sequence
|
||||
@@ -2176,6 +2200,14 @@ exists({expr}) The result is a Number, which is non-zero if {expr} is
|
||||
literally and compared to the
|
||||
autocommand patterns character by
|
||||
character)
|
||||
#group autocommand group exists
|
||||
#group#event autocommand defined for this group and
|
||||
event.
|
||||
#group#event#pattern
|
||||
autocommand defined for this group,
|
||||
event and pattern.
|
||||
##event autocommand for this event is
|
||||
supported.
|
||||
For checking for a supported feature use |has()|.
|
||||
|
||||
Examples: >
|
||||
@@ -2185,8 +2217,12 @@ exists({expr}) The result is a Number, which is non-zero if {expr} is
|
||||
exists("*s:MyFunc")
|
||||
exists("bufcount")
|
||||
exists(":Make")
|
||||
exists("#CursorHold");
|
||||
exists("#CursorHold")
|
||||
exists("#BufReadPre#*.gz")
|
||||
exists("#filetypeindent")
|
||||
exists("#filetypeindent#FileType")
|
||||
exists("#filetypeindent#FileType#*")
|
||||
exists("##ColorScheme")
|
||||
< There must be no space between the symbol (&/$/*/#) and the
|
||||
name.
|
||||
Note that the argument must be a string, not the name of the
|
||||
@@ -3624,6 +3660,8 @@ remote_foreground({server}) *remote_foreground()*
|
||||
< Except that on Win32 systems the client does the work, to work
|
||||
around the problem that the OS doesn't always allow the server
|
||||
to bring itself to the foreground.
|
||||
Note: This does not restore the window if it was minimized,
|
||||
like foreground() does.
|
||||
This function is not available in the |sandbox|.
|
||||
{only in the Win32, Athena, Motif and GTK GUI versions and the
|
||||
Win32 console version}
|
||||
@@ -4194,7 +4232,7 @@ strlen({expr}) The result is a Number, which is the length of the String
|
||||
|
||||
strpart({src}, {start}[, {len}]) *strpart()*
|
||||
The result is a String, which is part of {src}, starting from
|
||||
byte {start}, with the length {len}.
|
||||
byte {start}, with the byte length {len}.
|
||||
When non-existing bytes are included, this doesn't result in
|
||||
an error, the bytes are simply omitted.
|
||||
If {len} is missing, the copy continues from {start} till the
|
||||
@@ -4584,7 +4622,7 @@ all_builtin_terms Compiled with all builtin terminals enabled.
|
||||
amiga Amiga version of Vim.
|
||||
arabic Compiled with Arabic support |Arabic|.
|
||||
arp Compiled with ARP support (Amiga).
|
||||
autocmd Compiled with autocommands support.
|
||||
autocmd Compiled with autocommand support. |autocommand|
|
||||
balloon_eval Compiled with |balloon-eval| support.
|
||||
balloon_multiline GUI supports multiline balloons.
|
||||
beos BeOS version of Vim.
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
*gui_x11.txt* For Vim version 7.0aa. Last change: 2005 Mar 29
|
||||
*gui_x11.txt* For Vim version 7.0aa. Last change: 2005 Dec 06
|
||||
|
||||
|
||||
VIM REFERENCE MANUAL by Bram Moolenaar
|
||||
@@ -437,59 +437,9 @@ command line argument).
|
||||
==============================================================================
|
||||
7. KDE version *gui-kde* *kde* *KDE* *KVim*
|
||||
|
||||
NOTE: The KDE version is still under development. It is not recommended for
|
||||
daily work.
|
||||
|
||||
The KDE version of Vim works with KDE 2.x and KDE 3.x.
|
||||
KVim (name code for gui-kde) does not use traditional X settings for its
|
||||
configuration.
|
||||
Most important difference is the font handling, KVim uses QFont to display the
|
||||
text. To set your font use the following syntax :
|
||||
>
|
||||
:set guifont=Fixed\ [Misc]/10/-1/5/50/0/0/0/1/0
|
||||
<
|
||||
the '10' value is the font size, other settings concerns more specific Qt
|
||||
options which you should not need to care with.
|
||||
The suggested way to choose your font is through the font selection dialog
|
||||
available with the command :
|
||||
:set guifont=*
|
||||
|
||||
Note: X Font names are not supported any more, so if you use GVim too, you'll
|
||||
have to set something like this in your ~/.gvimrc : >
|
||||
|
||||
if has("gui_kde")
|
||||
:set guifont=Fixed\ [Misc]/10/-1/5/50/0/0/0/1/0
|
||||
else if has("gui_gtk")
|
||||
:set guifont=-misc-fixed-medium-r-normal-*-*-100-*-*-c-*-iso10646-1
|
||||
endif
|
||||
<
|
||||
*antialias*
|
||||
KVim uses antialias for its font, so that the text looks better, to disable
|
||||
this you have to refer to Qt's documentation (export QT_XFT=0 for QT 2.x).
|
||||
|
||||
KDE provides some other features, like being able to move the menubar and the
|
||||
toolbar wherever you want around the text area.
|
||||
|
||||
*kde-toolbar*
|
||||
KVim can be used with a KDE-look toolbar instead of Vim's default toolbar. To
|
||||
enable this feature you have to run the configure script with the
|
||||
--enable-kde-toolbar switch. It may be moved to a runtime option in the
|
||||
future.
|
||||
|
||||
*DCOP*
|
||||
Since Vim 6.0, the new ClientServer feature has been added, it works fine in
|
||||
KVim too. KVim also provides its own communication scheme based on DCOP. This
|
||||
is mainly used by the |vimpart| but can freely be used by other applications
|
||||
or manually through KDE's DCOP tools. The DCOP servername is synchronized with
|
||||
the X11 servername so that it's easier to identify the same KVim through the
|
||||
two communication systems.
|
||||
|
||||
*vimpart* *vim-kpart*
|
||||
KVim developers are also working on a component to allow embedding of Vim into
|
||||
KDE's applications. As of this writing, the component is working and can be
|
||||
used in different KDE applications. New KDE applications should support it
|
||||
soon. To get more information about this component, refer to
|
||||
http://freehackers.org/kvim or to the KDE project.
|
||||
There is no KDE version of Vim. There has been some work on a port using the
|
||||
Qt toolkit, but it never worked properly and it has been abandoned. Work
|
||||
continues on Yzis: www.yzis.org.
|
||||
|
||||
==============================================================================
|
||||
8. Compiling *gui-x11-compiling*
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
*help.txt* For Vim version 7.0aa. Last change: 2005 Sep 01
|
||||
*help.txt* For Vim version 7.0aa. Last change: 2005 Nov 30
|
||||
|
||||
VIM - main help file
|
||||
k
|
||||
@@ -17,13 +17,13 @@ Get specific help: It is possible to go directly to whatever you want help
|
||||
It is possible to further specify the context:
|
||||
*help-context*
|
||||
WHAT PREPEND EXAMPLE ~
|
||||
Normal mode commands (nothing) :help x
|
||||
Visual mode commands v_ :help v_u
|
||||
Insert mode commands i_ :help i_<Esc>
|
||||
Command-line commands : :help :quit
|
||||
Normal mode command (nothing) :help x
|
||||
Visual mode command v_ :help v_u
|
||||
Insert mode command i_ :help i_<Esc>
|
||||
Command-line command : :help :quit
|
||||
Command-line editing c_ :help c_<Del>
|
||||
Vim command arguments - :help -r
|
||||
Options ' :help 'textwidth'
|
||||
Vim command argument - :help -r
|
||||
Option ' :help 'textwidth'
|
||||
Search for help: Type ":help word", then hit CTRL-D to see matching
|
||||
help entries for "word".
|
||||
|
||||
@@ -191,6 +191,13 @@ Standard plugins ~
|
||||
|pi_expl.txt| File explorer
|
||||
|
||||
LOCAL ADDITIONS: *local-additions*
|
||||
|cecutil.txt| DrChip's Utilities Jun 11, 2004
|
||||
|engspchk.txt| English Spelling Checker (v61) Mar 14, 2005
|
||||
|example.txt| Example for a locally added help file
|
||||
|matchit.txt| Extended "%" matching
|
||||
|test.txt| Testing the h<>lp c<>mm<6D>nd n<>w
|
||||
|typecorr.txt| Plugin for correcting typing mistakes
|
||||
|helpp.txt| Dummy line to avoid an error message
|
||||
|
||||
------------------------------------------------------------------------------
|
||||
*bars* Bars example
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
*index.txt* For Vim version 7.0aa. Last change: 2005 Sep 13
|
||||
*index.txt* For Vim version 7.0aa. Last change: 2005 Dec 23
|
||||
|
||||
|
||||
VIM REFERENCE MANUAL by Bram Moolenaar
|
||||
@@ -343,9 +343,9 @@ tag char note action in Normal mode ~
|
||||
"yy"
|
||||
|ZZ| ZZ store current file if modified, and exit
|
||||
|ZQ| ZQ exit current file always
|
||||
|[| [{char} square bracket command (see below)
|
||||
|[| [{char} square bracket command (see |[| below)
|
||||
\ not used
|
||||
|]| ]{char} square bracket command (see below)
|
||||
|]| ]{char} square bracket command (see |]| below)
|
||||
|^| ^ 1 cursor to the first CHAR of the line
|
||||
|_| _ 1 cursor to the first CHAR N - 1 lines lower
|
||||
|`| `{a-zA-Z0-9} 1 cursor to the mark {a-zA-Z0-9}
|
||||
@@ -373,7 +373,7 @@ tag char note action in Normal mode ~
|
||||
|e| e 1 cursor forward to the end of word N
|
||||
|f| f{char} 1 cursor to Nth occurrence of {char} to the
|
||||
right
|
||||
|g| g{char} extended commands, see below
|
||||
|g| g{char} extended commands, see |g| below
|
||||
|h| h 1 cursor N chars to the left
|
||||
|i| i 2 insert text before the cursor N times
|
||||
|j| j 1 cursor N lines downward
|
||||
@@ -403,7 +403,7 @@ tag char note action in Normal mode ~
|
||||
cursor [into buffer x]
|
||||
|y| ["x]y{motion} yank Nmove text [into buffer x]
|
||||
|yy| ["x]yy yank N lines [into buffer x]
|
||||
|z| z{char} commands starting with 'z', see below
|
||||
|z| z{char} commands starting with 'z', see |z| below
|
||||
|{| { 1 cursor N paragraphs backward
|
||||
|bar| | 1 cursor to column N
|
||||
|}| } 1 cursor N paragraphs forward
|
||||
@@ -736,6 +736,7 @@ tag char note action in Normal mode ~
|
||||
|gu| gu{motion} 2 make Nmove text lowercase
|
||||
|gv| gv reselect the previous Visual area
|
||||
|gw| gw{motion} 2 format Nmove text and keep cursor
|
||||
|g@| g@{motion} call 'operatorfunc'
|
||||
|g~| g~{motion} 2 swap case for Nmove text
|
||||
|g<Down>| g<Down> 1 same as "gj"
|
||||
|g<End>| g<End> 1 same as "g$"
|
||||
@@ -759,16 +760,19 @@ tag char note action in Normal mode ~
|
||||
cursor on first non-blank
|
||||
|z.| z. redraw, cursor line to center of window,
|
||||
cursor on first non-blank
|
||||
|z=| z= give spelling suggestions
|
||||
|zA| zA open a closed fold or close an open fold
|
||||
recursively
|
||||
|zC| zC close folds recursively
|
||||
|zD| zD delete folds recursively
|
||||
|zE| zE eliminate all folds
|
||||
|zF| zF create a fold for N lines
|
||||
|zG| zG mark word as good spelled word
|
||||
|zM| zM set 'foldlevel' to zero
|
||||
|zN| zN set 'foldenable'
|
||||
|zO| zO open folds recursively
|
||||
|zR| zR set 'foldlevel' to the deepest fold
|
||||
|zW| zW mark word as wrong (bad) spelled word
|
||||
|zX| zX re-apply 'foldlevel'
|
||||
|z^| z^ cursor on line N (default line above
|
||||
window), otherwise like "z-"
|
||||
@@ -780,6 +784,7 @@ tag char note action in Normal mode ~
|
||||
position the cursor at the end (right side)
|
||||
of the screen
|
||||
|zf| zf{motion} create a fold for Nmove text
|
||||
|zg| zg mark word as good spelled word
|
||||
|zh| zh when 'wrap' off scroll screen N characters
|
||||
to the right
|
||||
|zi| zi toggle 'foldenable'
|
||||
@@ -796,6 +801,7 @@ tag char note action in Normal mode ~
|
||||
side) of the screen
|
||||
|zt| zt redraw, cursor line at top of window
|
||||
|zv| zv open enough folds to view the cursor line
|
||||
|zw| zw mark word as wrong (bad) spelled word
|
||||
|zx| zx re-apply 'foldlevel' and do "zv"
|
||||
|zz| zz redraw, cursor line at center of window
|
||||
|z<Left>| z<Left> same as "zh"
|
||||
@@ -1250,6 +1256,7 @@ The commands are sorted on the non-optional part of their name.
|
||||
|:nmenu| :nme[nu] add menu for Normal mode
|
||||
|:nnoremap| :nn[oremap] like ":noremap" but for Normal mode
|
||||
|:nnoremenu| :nnoreme[nu] like ":noremenu" but for Normal mode
|
||||
|:noautocmd| :noa[utocmd] following command don't trigger autocommands
|
||||
|:noremap| :no[remap] enter a mapping that will not be remapped
|
||||
|:nohlsearch| :noh[lsearch] suspend 'hlsearch' highlighting
|
||||
|:noreabbrev| :norea[bbrev] enter an abbreviation that will not be
|
||||
@@ -1347,7 +1354,7 @@ The commands are sorted on the non-optional part of their name.
|
||||
buffer list
|
||||
|:scriptnames| :scrip[tnames] list names of all sourced Vim scripts
|
||||
|:scriptencoding| :scripte[ncoding] encoding used in sourced Vim script
|
||||
|:scscope| :scs[cope] split window and execute cscope command
|
||||
|:scscope| :scs[cope] split window and execute cscope command
|
||||
|:set| :se[t] show or set options
|
||||
|:setfiletype| :setf[iletype] set 'filetype', unless it was set already
|
||||
|:setglobal| :setg[lobal] show global values of options
|
||||
@@ -1371,7 +1378,7 @@ The commands are sorted on the non-optional part of their name.
|
||||
|:source| :so[urce] read Vim or Ex commands from a file
|
||||
|:spelldump| :spelld[ump] split window and fill with all correct words
|
||||
|:spellgood| :spe[llgood] add good word for spelling
|
||||
|:spellrepall| :spellr[epall] replace all bad words like last |z?|
|
||||
|:spellrepall| :spellr[epall] replace all bad words like last |z=|
|
||||
|:spellwrong| :spellw[rong] add spelling mistake
|
||||
|:split| :sp[lit] split current window
|
||||
|:sprevious| :spr[evious] split window and go to previous file in the
|
||||
@@ -1381,6 +1388,7 @@ The commands are sorted on the non-optional part of their name.
|
||||
|:stop| :st[op] suspend the editor or escape to a shell
|
||||
|:stag| :sta[g] split window and jump to a tag
|
||||
|:startinsert| :star[tinsert] start Insert mode
|
||||
|:startgreplace| :startg[replace] start Virtual Replace mode
|
||||
|:startreplace| :startr[eplace] start Replace mode
|
||||
|:stopinsert|| :stopi[nsert] stop Insert mode
|
||||
|:stjump| :stj[ump] do ":tjump" and split window
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
*insert.txt* For Vim version 7.0aa. Last change: 2005 Nov 22
|
||||
*insert.txt* For Vim version 7.0aa. Last change: 2005 Dec 18
|
||||
|
||||
|
||||
VIM REFERENCE MANUAL by Bram Moolenaar
|
||||
@@ -965,6 +965,8 @@ While the menu is displayed these keys have a special meaning:
|
||||
<CR> and <Enter>: Accept the currently selected match
|
||||
<Up>: Select the previous match, as if CTRL-P was used
|
||||
<Down>: Select the next match, as if CTRL-N was used
|
||||
<PageUp>: Select a match several entries back
|
||||
<PageDown>: Select a match several entries further
|
||||
|
||||
The colors of the menu can be changed with these highlight groups:
|
||||
Pmenu normal item |hl-Pmenu|
|
||||
@@ -1040,9 +1042,9 @@ Note: When used first time completion menu will be shown with little delay
|
||||
|
||||
XML *ft-xml-omni*
|
||||
|
||||
Vim 7 provides mechanism to context aware completion of XML files. It depends
|
||||
on special |xml-data-file| and two commands: |:XMLns| and |:XMLent|. Features
|
||||
are:
|
||||
Vim 7 provides mechanism to context aware completion of XML files. It depends
|
||||
on special |xml-omni-datafile| and two commands: |:XMLns| and |:XMLent|.
|
||||
Features are:
|
||||
|
||||
- after "<" complete tag name depending on context (no div suggest
|
||||
inside of an a tag)
|
||||
@@ -1050,7 +1052,7 @@ are:
|
||||
a tag)
|
||||
- when attribute has limited number of possible values help to complete
|
||||
them
|
||||
- complete names of entities (defined in |xml-data-file| and in current file
|
||||
- complete names of entities (defined in |xml-omni-datafile| and in current file
|
||||
with "<!ENTITY" declarations
|
||||
- when used after "</" CTRL-X CTRL-O will close the last opened tag
|
||||
|
||||
@@ -1273,6 +1275,13 @@ NOTE: ":append" and ":insert" don't work properly in between ":if" and
|
||||
the function or script is finished.
|
||||
{not in Vi}
|
||||
{not available when compiled without the +ex_extra
|
||||
feature}
|
||||
|
||||
*:startgreplace*
|
||||
:startg[replace][!] Just like |:startreplace|, but use Virtual Replace
|
||||
mode, like with |gR|.
|
||||
{not in Vi}
|
||||
{not available when compiled without the +ex_extra
|
||||
feature}
|
||||
|
||||
==============================================================================
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
*map.txt* For Vim version 7.0aa. Last change: 2005 Oct 14
|
||||
*map.txt* For Vim version 7.0aa. Last change: 2005 Dec 17
|
||||
|
||||
|
||||
VIM REFERENCE MANUAL by Bram Moolenaar
|
||||
@@ -10,6 +10,17 @@ This subject is introduced in sections |05.3|, |24.7| and |40.1| of the user
|
||||
manual.
|
||||
|
||||
1. Key mapping |key-mapping|
|
||||
1.1 MAP COMMANDS |:map-commands|
|
||||
1.2 Special arguments |:map-arguments|
|
||||
1.3 Mapping and modes |:map-modes|
|
||||
1.4 Listing mappings |map-listing|
|
||||
1.5 Mapping special keys |:map-special-keys|
|
||||
1.6 Special characters |:map-special-chars|
|
||||
1.7 What keys to map |map-which-keys|
|
||||
1.8 Examples |map-examples|
|
||||
1.9 Using mappings |map-typing|
|
||||
1.10 Mapping alt-keys |:map-alt-keys|
|
||||
1.11 Mapping an operator |:map-operator|
|
||||
2. Abbreviations |abbreviations|
|
||||
3. Local mappings and functions |script-local|
|
||||
4. User-defined commands |user-commands|
|
||||
@@ -24,6 +35,9 @@ is to define a sequence commands for a function key. Example: >
|
||||
|
||||
This appends the current date and time after the cursor (in <> notation |<>|).
|
||||
|
||||
|
||||
1.1 MAP COMMANDS *:map-commands*
|
||||
|
||||
There are commands to enter new mappings, remove mappings and list mappings.
|
||||
See |map-overview| for the various forms of "map" and their relationships with
|
||||
modes.
|
||||
@@ -116,6 +130,21 @@ characters. You can use this to put command sequences under function keys,
|
||||
translate one key into another, etc. See |:mkexrc| for how to save and
|
||||
restore the current mappings.
|
||||
|
||||
*map-ambiguous*
|
||||
When two mappings start with the same sequence of characters, they are
|
||||
ambiguous. Example: >
|
||||
:imap aa foo
|
||||
:imap aaa bar
|
||||
When Vim has read "aa", it will need to get another character to be able to
|
||||
decide if "aa" or "aaa" should be mapped. This means that after typing "aa"
|
||||
that mapping won't get expanded yet, Vim is waiting for another character.
|
||||
If you type a space, then "foo" will get inserted, plus the space. If you
|
||||
type "a", then "bar" will get inserted.
|
||||
{Vi does not allow ambiguous mappings}
|
||||
|
||||
|
||||
1.2 SPECIAL ARGUMENTS *:map-arguments*
|
||||
|
||||
*:map-local* *:map-<buffer>* *E224* *E225*
|
||||
If the first argument to one of these commands is "<buffer>" it will apply to
|
||||
mappings locally to the current buffer only. Example: >
|
||||
@@ -167,7 +196,7 @@ Example of what will fail: >
|
||||
They must appear right after the command, before any other arguments.
|
||||
|
||||
|
||||
MAPPING AND MODES
|
||||
1.3 MAPPING AND MODES *:map-modes*
|
||||
|
||||
There are five sets of mappings
|
||||
- For Normal mode: When typing commands.
|
||||
@@ -236,19 +265,9 @@ character as an argument to command like "f" or "t".
|
||||
are only used for typed characters. This assumes that the language mapping
|
||||
was already done when typing the mapping.
|
||||
|
||||
*map-multibyte*
|
||||
It is possible to map multibyte characters, but only the whole character. You
|
||||
cannot map the first byte only. This was done to prevent problems in this
|
||||
scenario: >
|
||||
:set encoding=latin1
|
||||
:imap <M-C> foo
|
||||
:set encoding=utf-8
|
||||
The mapping for <M-C> is defined with the latin1 encoding, resulting in a 0xc3
|
||||
byte. If you type the character <20> (0xea <M-a>) in UTF-8 encoding this is the
|
||||
two bytes 0xc3 0xa1. You don't want the 0xc3 byte to be mapped then,
|
||||
otherwise it would be impossible to type the <20> character.
|
||||
|
||||
*map-listing*
|
||||
1.4 LISTING MAPPINGS *map-listing*
|
||||
|
||||
When listing mappings the characters in the first two columns are:
|
||||
|
||||
CHAR MODE ~
|
||||
@@ -283,6 +302,48 @@ last defined. Example: >
|
||||
|
||||
See |:verbose-cmd| for more information.
|
||||
|
||||
|
||||
1.5 MAPPING SPECIAL KEYS *:map-special-keys*
|
||||
|
||||
There are three ways to map a special key:
|
||||
1. The Vi-compatible method: Map the key code. Often this is a sequence that
|
||||
starts with <Esc>. To enter a mapping like this you type ":map " and then
|
||||
you have to type CTRL-V before hitting the function key. Note that when
|
||||
the key code for the key is in the termcap (the t_ options), it will
|
||||
automatically be translated into the internal code and become the second
|
||||
way of mapping (unless the 'k' flag is included in 'cpoptions').
|
||||
2. The second method is to use the internal code for the function key. To
|
||||
enter such a mapping type CTRL-K and then hit the function key, or use
|
||||
the form "#1", "#2", .. "#9", "#0", "<Up>", "<S-Down>", "<S-F7>", etc.
|
||||
(see table of keys |key-notation|, all keys from <Up> can be used). The
|
||||
first ten function keys can be defined in two ways: Just the number, like
|
||||
"#2", and with "<F>", like "<F2>". Both stand for function key 2. "#0"
|
||||
refers to function key 10, defined with option 't_f10', which may be
|
||||
function key zero on some keyboards. The <> form cannot be used when
|
||||
'cpoptions' includes the '<' flag.
|
||||
3. Use the termcap entry, with the form <t_xx>, where "xx" is the name of the
|
||||
termcap entry. Any string entry can be used. For example: >
|
||||
:map <t_F3> G
|
||||
< Maps function key 13 to "G". This does not work if 'cpoptions' includes
|
||||
the '<' flag.
|
||||
|
||||
The advantage of the second and third method is that the mapping will work on
|
||||
different terminals without modification (the function key will be
|
||||
translated into the same internal code or the actual key code, no matter what
|
||||
terminal you are using. The termcap must be correct for this to work, and you
|
||||
must use the same mappings).
|
||||
|
||||
DETAIL: Vim first checks if a sequence from the keyboard is mapped. If it
|
||||
isn't the terminal key codes are tried (see |terminal-options|). If a
|
||||
terminal code is found it is replaced with the internal code. Then the check
|
||||
for a mapping is done again (so you can map an internal code to something
|
||||
else). What is written into the script file depends on what is recognized.
|
||||
If the terminal key code was recognized as a mapping the key code itself is
|
||||
written to the script file. If it was recognized as a terminal code the
|
||||
internal code is written to the script file.
|
||||
|
||||
|
||||
1.6 SPECIAL CHARACTERS *:map-special-chars*
|
||||
*map_backslash*
|
||||
Note that only CTRL-V is mentioned here as a special character for mappings
|
||||
and abbreviations. When 'cpoptions' does not contain 'B', a backslash can
|
||||
@@ -294,18 +355,6 @@ To map a backslash, or use a backslash literally in the {rhs}, the special
|
||||
sequence "<Bslash>" can be used. This avoids the need to double backslashes
|
||||
when using nested mappings.
|
||||
|
||||
*map-ambiguous*
|
||||
When two mappings start with the same sequence of characters, they are
|
||||
ambiguous. Example: >
|
||||
:imap aa foo
|
||||
:imap aaa bar
|
||||
When Vim has read "aa", it will need to get another character to be able to
|
||||
decide if "aa" or "aaa" should be mapped. This means that after typing "aa"
|
||||
that mapping won't get expanded yet, Vim is waiting for another character.
|
||||
If you type a space, then "foo" will get inserted, plus the space. If you
|
||||
type "a", then "bar" will get inserted.
|
||||
{Vi does not allow ambiguous mappings}
|
||||
|
||||
*map_CTRL-C*
|
||||
Using CTRL-C in the {lhs} is possible, but it will only work when Vim is
|
||||
waiting for a key, not when Vim is busy with something. When Vim is busy
|
||||
@@ -331,6 +380,18 @@ example, to make sure that function key 8 does nothing at all: >
|
||||
:map <F8> <Nop>
|
||||
:map! <F8> <Nop>
|
||||
<
|
||||
*map-multibyte*
|
||||
It is possible to map multibyte characters, but only the whole character. You
|
||||
cannot map the first byte only. This was done to prevent problems in this
|
||||
scenario: >
|
||||
:set encoding=latin1
|
||||
:imap <M-C> foo
|
||||
:set encoding=utf-8
|
||||
The mapping for <M-C> is defined with the latin1 encoding, resulting in a 0xc3
|
||||
byte. If you type the character <20> (0xea <M-a>) in UTF-8 encoding this is the
|
||||
two bytes 0xc3 0xa1. You don't want the 0xc3 byte to be mapped then,
|
||||
otherwise it would be impossible to type the <20> character.
|
||||
|
||||
*<Leader>* *mapleader*
|
||||
To define a mapping which uses the "mapleader" variable, the special string
|
||||
"<Leader>" can be used. It is replaced with the string value of "mapleader".
|
||||
@@ -418,14 +479,16 @@ and CTRL-X is not mapped. This was done to be able to use all the named
|
||||
registers and marks, even when the command with the same name has been
|
||||
mapped.
|
||||
|
||||
*map-which-keys*
|
||||
|
||||
1.7 WHAT KEYS TO MAP *map-which-keys*
|
||||
|
||||
If you are going to map something, you will need to choose which key(s) to use
|
||||
for the {lhs}. You will have to avoid keys that are used for Vim commands,
|
||||
otherwise you would not be able to use those commands anymore. Here are a few
|
||||
suggestions:
|
||||
- Function keys <F2>, <F3>, etc.. Also the shifted function keys <S-F1>,
|
||||
<S-F2>, etc. Note that <F1> is already used for the help command.
|
||||
- Meta-keys (with the ALT key pressed).
|
||||
- Meta-keys (with the ALT key pressed). |:map-alt-keys|
|
||||
- Use the '_' or ',' character and then any other character. The "_" and ","
|
||||
commands do exist in Vim (see |_| and |,|), but you probably never use them.
|
||||
- Use a key that is a synonym for another command. For example: CTRL-P and
|
||||
@@ -436,7 +499,9 @@ losing any builtin function. You can also use ":help {key}^D" to find out if
|
||||
a key is used for some command. ({key} is the specific key you want to find
|
||||
out about, ^D is CTRL-D).
|
||||
|
||||
*map-examples*
|
||||
|
||||
1.8 EXAMPLES *map-examples*
|
||||
|
||||
A few examples (given as you type them, for "<CR>" you type four characters;
|
||||
the '<' flag must not be present in 'cpoptions' for this to work). >
|
||||
|
||||
@@ -445,7 +510,9 @@ the '<' flag must not be present in 'cpoptions' for this to work). >
|
||||
:map _x d/END/e<CR>
|
||||
:map! qq quadrillion questions
|
||||
<
|
||||
*map-typing*
|
||||
|
||||
1.9 USING MAPPINGS *map-typing*
|
||||
|
||||
Vim will compare what you type with the start of a mapped sequence. If there
|
||||
is an incomplete match, it will get more characters until there either is a
|
||||
complete match or until there is no match at all. Example: If you map! "qq",
|
||||
@@ -458,14 +525,15 @@ you type slowly, or your system is slow, reset the 'timeout' option. Then you
|
||||
might want to set the 'ttimeout' option.
|
||||
|
||||
*map-keys-fails*
|
||||
There is one situation where key codes might not be recognized:
|
||||
There are situations where key codes might not be recognized:
|
||||
- Vim can only read part of the key code. Mostly this is only the first
|
||||
character. This happens on some Unix versions in an xterm.
|
||||
- The key code is after character(s) that are mapped. E.g., "<F1><F1>" or
|
||||
"g<F1>".
|
||||
|
||||
The result is that the key code is not recognized in this situation, and the
|
||||
mapping fails.
|
||||
There are two actions needed to avoid this problem:
|
||||
mapping fails. There are two actions needed to avoid this problem:
|
||||
|
||||
- Remove the 'K' flag from 'cpoptions'. This will make Vim wait for the rest
|
||||
of the characters of the function key.
|
||||
- When using <F1> to <F4> the actual key code generated may correspond to
|
||||
@@ -481,6 +549,9 @@ special key: >
|
||||
Don't type a real <Esc>, Vim will recognize the key code and replace it with
|
||||
<F1> anyway.
|
||||
|
||||
Another problem may be that when keeping ALT or Meta pressed the terminal
|
||||
prepends ESC instead of setting the 8th bit. See |:map-alt-keys|.
|
||||
|
||||
*recursive_mapping*
|
||||
If you include the {lhs} in the {rhs} you have a recursive mapping. When
|
||||
{lhs} is typed, it will be replaced with {rhs}. When the {lhs} which is
|
||||
@@ -517,43 +588,104 @@ the original Vi, as long as there is only one undo command in the mapped
|
||||
sequence (having two undo commands in a mapped sequence did not make sense
|
||||
in the original Vi, you would get back the text before the first undo).
|
||||
|
||||
*:map-special-keys*
|
||||
There are three ways to map a special key:
|
||||
1. The Vi-compatible method: Map the key code. Often this is a sequence that
|
||||
starts with <Esc>. To enter a mapping like this you type ":map " and then
|
||||
you have to type CTRL-V before hitting the function key. Note that when
|
||||
the key code for the key is in the termcap (the t_ options), it will
|
||||
automatically be translated into the internal code and become the second
|
||||
way of mapping (unless the 'k' flag is included in 'cpoptions').
|
||||
2. The second method is to use the internal code for the function key. To
|
||||
enter such a mapping type CTRL-K and then hit the function key, or use
|
||||
the form "#1", "#2", .. "#9", "#0", "<Up>", "<S-Down>", "<S-F7>", etc.
|
||||
(see table of keys |key-notation|, all keys from <Up> can be used). The
|
||||
first ten function keys can be defined in two ways: Just the number, like
|
||||
"#2", and with "<F>", like "<F2>". Both stand for function key 2. "#0"
|
||||
refers to function key 10, defined with option 't_f10', which may be
|
||||
function key zero on some keyboards. The <> form cannot be used when
|
||||
'cpoptions' includes the '<' flag.
|
||||
3. Use the termcap entry, with the form <t_xx>, where "xx" is the name of the
|
||||
termcap entry. Any string entry can be used. For example: >
|
||||
:map <t_F3> G
|
||||
< Maps function key 13 to "G". This does not work if 'cpoptions' includes
|
||||
the '<' flag.
|
||||
|
||||
The advantage of the second and third method is that the mapping will work on
|
||||
different terminals without modification (the function key will be
|
||||
translated into the same internal code or the actual key code, no matter what
|
||||
terminal you are using. The termcap must be correct for this to work, and you
|
||||
must use the same mappings).
|
||||
1.10 MAPPING ALT-KEYS *:map-alt-keys*
|
||||
|
||||
DETAIL: Vim first checks if a sequence from the keyboard is mapped. If it
|
||||
isn't the terminal key codes are tried (see |terminal-options|). If a
|
||||
terminal code is found it is replaced with the internal code. Then the check
|
||||
for a mapping is done again (so you can map an internal code to something
|
||||
else). What is written into the script file depends on what is recognized.
|
||||
If the terminal key code was recognized as a mapping the key code itself is
|
||||
written to the script file. If it was recognized as a terminal code the
|
||||
internal code is written to the script file.
|
||||
In the GUI Vim handles the Alt key itself, thus mapping keys with ALT should
|
||||
always work. But in a terminal Vim gets a sequence of bytes and has to figure
|
||||
out whether ALT was pressed or not.
|
||||
|
||||
By default Vim assumes that pressing the ALT key sets the 8th bit of a typed
|
||||
character. Most decent terminals can work that way, such as xterm, aterm and
|
||||
rxvt. If your <A-k> mappings don't work it might be that the terminal is
|
||||
prefixing the character with an ESC character. But you can just as well type
|
||||
ESC before a character, thus Vim doesn't know what happened (except for
|
||||
checking the delay between characters, which is not reliable).
|
||||
|
||||
As of this writing, some mainstream terminals like gnome-terminal and konsole
|
||||
use the ESC prefix. There doesn't appear a way to have them use the 8th bit
|
||||
instead. Xterm should work well by default. Aterm and rxvt should work well
|
||||
when started with the "--meta8" argument. You can also tweak resources like
|
||||
"metaSendsEscape", "eightBitInput" and "eightBitOutput".
|
||||
|
||||
On the Linux console, this behavior can be toggled with the "setmetamode"
|
||||
command. Bear in mind that not using an ESC prefix could get you in trouble
|
||||
with other programs. You should make sure that bash has the "convert-meta"
|
||||
option set to "on" in order for your Meta keybindings to still work on it
|
||||
(it's the default readline behavior, unless changed by specific system
|
||||
configuration). For that, you can add the line: >
|
||||
|
||||
set convert-meta on
|
||||
|
||||
to your ~/.inputrc file. If you're creating the file, you might want to use: >
|
||||
|
||||
$include /etc/inputrc
|
||||
|
||||
as the first line, if that file exists on your system, to keep global options.
|
||||
This may cause a problem for entering special characters, such as the umlaut.
|
||||
Then you should use CTRL-V before that character.
|
||||
|
||||
Bear in mind that convert-meta has been reported to have troubles when used in
|
||||
UTF-8 locales. On terminals like xterm, the "metaSendsEscape" resource can be
|
||||
toggled on the fly through the "Main Options" menu, by pressing Ctrl-LeftClick
|
||||
on the terminal; that's a good last resource in case you want to send ESC when
|
||||
using other applications but not when inside VIM.
|
||||
|
||||
|
||||
1.11 MAPPING AN OPERATOR *:map-operator*
|
||||
|
||||
An operator is used before a {motion} command. To define your own operator
|
||||
you must create mapping that first sets the 'operatorfunc' option and then
|
||||
invoke the |g@| operator. After the user types the {motion} command the
|
||||
specified function will be called.
|
||||
|
||||
*g@*
|
||||
g@{motion} Call the function set by the 'operatorfunc' option.
|
||||
The '[ mark is positioned at the start of the text
|
||||
moved over by {motion}, the '] mark on the last
|
||||
character of the text.
|
||||
The function is called with one String argument:
|
||||
"line" {motion} was |linewise|
|
||||
"char" {motion} was |characterwise|
|
||||
"block" {motion} was |blockwise-visual||
|
||||
Although "block" would rarely appear, since it can
|
||||
only result from Visual mode where "g@" is not useful.
|
||||
{not available when compiled without the +eval
|
||||
feature}
|
||||
|
||||
Here is an example that counts the number of spaces with <F4>: >
|
||||
|
||||
nmap <silent> <F4> :set opfunc=CountSpaces<CR>g@
|
||||
vmap <silent> <F4> :<C-U>call CountSpaces(visualmode(), 1)<CR>
|
||||
|
||||
function! CountSpaces(type, ...)
|
||||
let sel_save = &selection
|
||||
let &selection = "inclusive"
|
||||
let reg_save = @@
|
||||
|
||||
if a:0 " Invoked from Visual mode, use '< and '> marks.
|
||||
silent exe "normal! `<" . a:type . "`>y"
|
||||
elseif a:type == 'line'
|
||||
silent exe "normal! '[V']y"
|
||||
elseif a:type == 'block'
|
||||
silent exe "normal! `[\<C-V>`]y"
|
||||
else
|
||||
silent exe "normal! `[v`]y"
|
||||
endif
|
||||
|
||||
echomsg strlen(substitute(@@, '[^ ]', '', 'g'))
|
||||
|
||||
let &selection = sel_save
|
||||
let @@ = reg_save
|
||||
endfunction
|
||||
|
||||
Note that the 'selection' option is temporarily set to "inclusive" to be able
|
||||
to yank exactly the right text by using Visual mode from the '[ to the ']
|
||||
mark.
|
||||
|
||||
Also note that there is a separate mapping for Visual mode. It removes the
|
||||
"'<,'>" range that ":" inserts in Visual mode and invokes the function with
|
||||
visualmode() and an extra argument.
|
||||
|
||||
==============================================================================
|
||||
2. Abbreviations *abbreviations* *Abbreviations*
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
*motion.txt* For Vim version 7.0aa. Last change: 2005 Sep 14
|
||||
*motion.txt* For Vim version 7.0aa. Last change: 2005 Dec 12
|
||||
|
||||
|
||||
VIM REFERENCE MANUAL by Bram Moolenaar
|
||||
@@ -57,6 +57,7 @@ or change text. The following operators are available:
|
||||
|>| > shift right
|
||||
|<| < shift left
|
||||
|zf| zf define a fold
|
||||
|g@| g@ call function set with the 'operatorfunc' option
|
||||
|
||||
If the motion includes a count and the operator also had a count before it,
|
||||
the two counts are multiplied. For example: "2d3w" deletes six words.
|
||||
@@ -973,7 +974,7 @@ These commands are not marks themselves, but jump to a mark:
|
||||
position. E.g., when updating a "Last change"
|
||||
timestamp in the first line: >
|
||||
|
||||
:let lnum = getline(".")
|
||||
:let lnum = line(".")
|
||||
:keepjumps normal gg
|
||||
:call SetLastChange()
|
||||
:keepjumps exe "normal " . lnum . "G"
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
*options.txt* For Vim version 7.0aa. Last change: 2005 Nov 23
|
||||
*options.txt* For Vim version 7.0aa. Last change: 2005 Dec 13
|
||||
|
||||
|
||||
VIM REFERENCE MANUAL by Bram Moolenaar
|
||||
@@ -1436,6 +1436,7 @@ A jump table for the options with a short description can be found at |Q_op|.
|
||||
to use the size for the GUI, put the command in your |gvimrc| file.
|
||||
When you set this option and Vim is unable to change the physical
|
||||
number of columns of the display, the display may be messed up.
|
||||
Mimimum value is 12, maximum value is 10000.
|
||||
|
||||
*'comments'* *'com'* *E524* *E525*
|
||||
'comments' 'com' string (default
|
||||
@@ -1818,7 +1819,7 @@ A jump table for the options with a short description can be found at |Q_op|.
|
||||
F When included, a ":write" command with a file name
|
||||
argument will set the file name for the current
|
||||
buffer, if the current buffer doesn't have a file name
|
||||
yet.
|
||||
yet. Also see |cpo-P|.
|
||||
*cpo-g*
|
||||
g Goto line 1 when using ":edit" without argument.
|
||||
*cpo-H*
|
||||
@@ -1887,6 +1888,11 @@ A jump table for the options with a short description can be found at |Q_op|.
|
||||
*cpo-p*
|
||||
p Vi compatible Lisp indenting. When not present, a
|
||||
slightly better algorithm is used.
|
||||
*cpo-P*
|
||||
P When included, a ":write" command that appends to a
|
||||
file will set the file name for the current buffer, if
|
||||
the current buffer doesn't have a file name yet and
|
||||
the 'F' flag is also included |cpo-F|.
|
||||
*cpo-q*
|
||||
q When joining multiple lines leave the cursor at the
|
||||
position where it would be when joining two lines.
|
||||
@@ -2539,7 +2545,9 @@ A jump table for the options with a short description can be found at |Q_op|.
|
||||
'encoding' is "utf-8" (or one of the other Unicode variants)
|
||||
conversion is most likely done in a way that the reverse
|
||||
conversion results in the same text. When 'encoding' is not
|
||||
"utf-8" special characters may be lost!
|
||||
"utf-8" some non-ASCII characters may be lost! You can use
|
||||
the |++bad| argument to specify what is done with characters
|
||||
that can't be converted.
|
||||
For an empty file or a file with only ASCII characters most encodings
|
||||
will work and the first entry of 'fileencodings' will be used (except
|
||||
"ucs-bom", which requires the BOM to be present). If you prefer
|
||||
@@ -2549,7 +2557,9 @@ A jump table for the options with a short description can be found at |Q_op|.
|
||||
\ set fenc=iso-2022-jp | endif
|
||||
< This sets 'fileencoding' to "iso-2022-jp" if the file does not contain
|
||||
non-blank characters.
|
||||
Note that 'fileencodings' is not used for an new file, 'fileencoding'
|
||||
When the |++enc| argument is used then the value of 'fileencodings' is
|
||||
not used.
|
||||
Note that 'fileencodings' is not used for a new file, 'fileencoding'
|
||||
is always empty then. This means that a non-existing file may get a
|
||||
different encoding than an empty file.
|
||||
The special value "ucs-bom" can be used to check for a Unicode BOM
|
||||
@@ -4091,7 +4101,8 @@ A jump table for the options with a short description can be found at |Q_op|.
|
||||
Vim limits the number of lines to what fits on the screen. You can
|
||||
use this command to get the tallest window possible: >
|
||||
:set lines=999
|
||||
< If you get less lines than expected, check the 'guiheadroom' option.
|
||||
< Minimum value is 2, maximum value is 1000.
|
||||
If you get less lines than expected, check the 'guiheadroom' option.
|
||||
When you set this option and Vim is unable to change the physical
|
||||
number of lines of the display, the display may be messed up.
|
||||
|
||||
@@ -4639,6 +4650,17 @@ A jump table for the options with a short description can be found at |Q_op|.
|
||||
For the use of the function see 'completefunc'.
|
||||
|
||||
|
||||
*'operatorfunc'* *'opfunc'*
|
||||
'operatorfunc' 'opfunc' string (default: empty)
|
||||
global
|
||||
{not in Vi}
|
||||
This option specifies a function to be called by the |g@| operator.
|
||||
See |:map-operator| for more info and an example.
|
||||
|
||||
This option cannot be set from a |modeline| or in the |sandbox|, for
|
||||
security reasons.
|
||||
|
||||
|
||||
*'osfiletype'* *'oft'* *E366*
|
||||
'osfiletype' 'oft' string (RISC-OS default: "Text",
|
||||
others default: "")
|
||||
@@ -5866,7 +5888,7 @@ A jump table for the options with a short description can be found at |Q_op|.
|
||||
{not in Vi}
|
||||
{not available when compiled without the |+syntax|
|
||||
feature}
|
||||
Methods used for spelling suggestions. Both for the |z?| command and
|
||||
Methods used for spelling suggestions. Both for the |z=| command and
|
||||
the |spellsuggest()| function. This is a comma-separated list of
|
||||
items:
|
||||
|
||||
@@ -5885,7 +5907,7 @@ A jump table for the options with a short description can be found at |Q_op|.
|
||||
character inserts/deletes/swaps. Works well for
|
||||
simple typing mistakes.
|
||||
|
||||
{number} The maximum number of suggestions listed for |z?|.
|
||||
{number} The maximum number of suggestions listed for |z=|.
|
||||
Not used for |spellsuggest()|. The number of
|
||||
suggestions is never more than the value of 'lines'
|
||||
minus two.
|
||||
@@ -5907,7 +5929,7 @@ A jump table for the options with a short description can be found at |Q_op|.
|
||||
Lists, each with a suggestion and a score.
|
||||
Example:
|
||||
[['the', 33], ['that', 44]]
|
||||
Set 'verbose' and use |z?| to see the scores that the
|
||||
Set 'verbose' and use |z=| to see the scores that the
|
||||
internal methods use. A lower score is better.
|
||||
This may invoke |spellsuggest()| if you temporarily
|
||||
set 'spellsuggest' to exclude the "expr:" part.
|
||||
|
||||
@@ -1,8 +1,8 @@
|
||||
*pi_netrw.txt* For Vim version 7.0. Last change: Aug 31, 2005
|
||||
|
||||
*pi_netrw.txt* For Vim version 7.0. Last change: Nov 28, 2005
|
||||
|
||||
VIM REFERENCE MANUAL by Charles E. Campbell, Jr.
|
||||
|
||||
|
||||
*dav* *http* *network* *rcp* *scp*
|
||||
*fetch* *netrw* *Nread* *rsync* *sftp*
|
||||
*ftp* *netrw.vim* *Nwrite* *netrw-file*
|
||||
@@ -25,7 +25,7 @@
|
||||
4. Transparent File Transfer............................|netrw-transparent|
|
||||
5. Ex Commands..........................................|netrw-ex|
|
||||
6. Variables and Options................................|netrw-var|
|
||||
7. Directory Browser....................................|netrw-browse| {{{1
|
||||
7. Directory Browsing...................................|netrw-browse| {{{1
|
||||
Maps...............................................|netrw-maps|
|
||||
Exploring..........................................|netrw-explore-cmds|
|
||||
Quick Reference Commands Table.....................|netrw-browse-cmds|
|
||||
@@ -194,8 +194,8 @@ file using root-relative paths, use the full path:
|
||||
2. Network-Oriented File Transfer *netrw-xfer*
|
||||
|
||||
Network-oriented file transfer under Vim is implemented by a VimL-based script
|
||||
(<netrw.vim>) using plugin techniques. It currently supports both reading
|
||||
and writing across networks using rcp, scp, ftp or ftp+<.netrc>, scp, fetch,
|
||||
(<netrw.vim>) using plugin techniques. It currently supports both reading and
|
||||
writing across networks using rcp, scp, ftp or ftp+<.netrc>, scp, fetch,
|
||||
dav/cadaver, rsync, or sftp.
|
||||
|
||||
http is currently supported read-only via use of wget or fetch.
|
||||
@@ -206,24 +206,23 @@ FileReadCmd, BufWriteCmd) to intercept reads/writes with url-like filenames. >
|
||||
|
||||
ex. vim ftp://hostname/path/to/file
|
||||
<
|
||||
The characters preceding the colon specify the protocol to use;
|
||||
in the example, its ftp. The <netrw.vim> script then formulates
|
||||
a command or a series of commands (typically ftp) which it issues
|
||||
to an external program (ftp, scp, etc) which does the actual file
|
||||
transfer/protocol. Files are read from/written to a temporary file
|
||||
(under Unix/Linux, /tmp/...) which the <netrw.vim> script will
|
||||
clean up.
|
||||
The characters preceding the colon specify the protocol to use; in the
|
||||
example, its ftp. The <netrw.vim> script then formulates a command or a
|
||||
series of commands (typically ftp) which it issues to an external program
|
||||
(ftp, scp, etc) which does the actual file transfer/protocol. Files are read
|
||||
from/written to a temporary file (under Unix/Linux, /tmp/...) which the
|
||||
<netrw.vim> script will clean up.
|
||||
|
||||
One may modify any protocol's implementing external application
|
||||
by setting a variable (ex. scp uses the variable g:netrw_scp_cmd,
|
||||
which is defaulted to "scp -q").
|
||||
One may modify any protocol's implementing external application by setting a
|
||||
variable (ex. scp uses the variable g:netrw_scp_cmd, which is defaulted to
|
||||
"scp -q").
|
||||
|
||||
Ftp, an old protocol, seems to be blessed by numerous implementations.
|
||||
Unfortunately, some implementations are noisy (ie., add junk to the end
|
||||
of the file). Thus, concerned users may decide to write a NetReadFixup()
|
||||
function that will clean up after reading with their ftp. Some Unix systems
|
||||
(ie., FreeBSD) provide a utility called "fetch" which uses the ftp protocol
|
||||
but is not noisy and more convenient, actually, for <netrw.vim> to use.
|
||||
Unfortunately, some implementations are noisy (ie., add junk to the end of the
|
||||
file). Thus, concerned users may decide to write a NetReadFixup() function
|
||||
that will clean up after reading with their ftp. Some Unix systems (ie.,
|
||||
FreeBSD) provide a utility called "fetch" which uses the ftp protocol but is
|
||||
not noisy and more convenient, actually, for <netrw.vim> to use.
|
||||
Consequently, if "fetch" is executable, it will be used to do reads for
|
||||
ftp://... (and http://...) . See |netrw-var| for more about this.
|
||||
|
||||
@@ -332,8 +331,9 @@ The script attempts to get passwords for ftp invisibly using |inputsecret()|,
|
||||
a built-in Vim function. See |netrw-uidpass| for how to change the password
|
||||
after one has set it.
|
||||
|
||||
Unfortunately there doesn't appear to be a way for netrw to feed a password
|
||||
to scp. Thus every transfer via scp will require re-entry of the password.
|
||||
Unfortunately there doesn't appear to be a way for netrw to feed a password to
|
||||
scp. Thus every transfer via scp will require re-entry of the password.
|
||||
However, |netrw-listhack| can help with this problem.
|
||||
|
||||
|
||||
==============================================================================
|
||||
@@ -341,21 +341,28 @@ to scp. Thus every transfer via scp will require re-entry of the password.
|
||||
|
||||
Network-oriented file transfers are available by default whenever
|
||||
|'nocompatible'| mode is enabled. The <netrw.vim> file resides in your
|
||||
system's vim-plugin directory and is sourced automatically whenever you
|
||||
bring up vim.
|
||||
|
||||
system's vim-plugin directory and is sourced automatically whenever you bring
|
||||
up vim. I suggest that, at a minimum, you have at least the following in your
|
||||
<.vimrc> customization file: >
|
||||
set nocp
|
||||
if version >= 600
|
||||
filetype plugin indent on
|
||||
endif
|
||||
<
|
||||
|
||||
==============================================================================
|
||||
4. Transparent File Transfer *netrw-transparent*
|
||||
|
||||
Transparent file transfers occur whenever a regular file read or write
|
||||
(invoked via an |:autocmd| for |BufReadCmd| or |BufWriteCmd| events) is made.
|
||||
Thus one may use files across networks as if they were local. >
|
||||
Thus one may use files across networks just as simply as if they were local. >
|
||||
|
||||
vim ftp://[user@]machine/path
|
||||
...
|
||||
:wq
|
||||
|
||||
See |netrw-activate| for more on how to encourage your vim to use plugins
|
||||
such as netrw.
|
||||
|
||||
==============================================================================
|
||||
5. Ex Commands *netrw-ex*
|
||||
@@ -369,8 +376,7 @@ additional commands available.
|
||||
:[range]Nw {netfile} [{netfile}]...
|
||||
Write the specified lines to the {netfile}.
|
||||
|
||||
:Nread
|
||||
Read the specified lines into the current
|
||||
:Nread Read the specified lines into the current
|
||||
buffer from the file specified in
|
||||
b:netrw_lastfile.
|
||||
|
||||
@@ -401,10 +407,11 @@ additional commands available.
|
||||
|
||||
The script <netrw.vim> uses several variables which can affect <netrw.vim>'s
|
||||
behavior. These variables typically may be set in the user's <.vimrc> file:
|
||||
>
|
||||
-------------
|
||||
Netrw Options
|
||||
-------------
|
||||
(also see |netrw-settings|) >
|
||||
|
||||
-------------
|
||||
Netrw Options
|
||||
-------------
|
||||
Option Meaning
|
||||
-------------- -----------------------------------------------
|
||||
<
|
||||
@@ -481,12 +488,12 @@ variables listed below, and may be modified by the user.
|
||||
-------------------------------------------------------------------------
|
||||
<
|
||||
*netrw-ftp*
|
||||
The first two options both help with certain ftp's that give trouble otherwise.
|
||||
In order to best understand how to use these options if ftp is giving you
|
||||
troubles, a bit of discussion follows on how netrw does ftp reads.
|
||||
The first two options both help with certain ftp's that give trouble
|
||||
otherwise. In order to best understand how to use these options if ftp is
|
||||
giving you troubles, a bit of discussion follows on how netrw does ftp reads.
|
||||
|
||||
The g:netrw_..._cmd variables specify the external program to use handle
|
||||
the associated protocol (rcp, ftp, etc), plus any options.
|
||||
The g:netrw_..._cmd variables specify the external program to use handle the
|
||||
associated protocol (rcp, ftp, etc), plus any options.
|
||||
|
||||
The g:netrw_list_cmd's HOSTNAME entry will be changed via substitution with
|
||||
whatever the current request is for a hostname.
|
||||
@@ -519,8 +526,8 @@ userid and password. The transferred file is put into a temporary file.
|
||||
The temporary file is then read into the main editing session window that
|
||||
requested it and the temporary file deleted.
|
||||
|
||||
If your ftp doesn't accept the "user" command and immediately just demands
|
||||
a userid, then try putting "let netrw_ftp=1" in your <.vimrc>.
|
||||
If your ftp doesn't accept the "user" command and immediately just demands a
|
||||
userid, then try putting "let netrw_ftp=1" in your <.vimrc>.
|
||||
|
||||
*netrw-cadaver*
|
||||
To handle the SSL certificate dialog for untrusted servers, one may pull
|
||||
@@ -547,12 +554,12 @@ messages) you may write a NetReadFixup(tmpfile) function:
|
||||
endif
|
||||
endfunction
|
||||
>
|
||||
The NetReadFixup() function will be called if it exists and thus allows
|
||||
you to customize your reading process. As a further example, <netrw.vim>
|
||||
contains just such a function to handle Windows 95 ftp. For whatever
|
||||
reason, Windows 95's ftp dumps four blank lines at the end of a transfer,
|
||||
and so it is desirable to automate their removal. Here's some code taken
|
||||
from <netrw.vim> itself:
|
||||
The NetReadFixup() function will be called if it exists and thus allows you to
|
||||
customize your reading process. As a further example, <netrw.vim> contains
|
||||
just such a function to handle Windows 95 ftp. For whatever reason, Windows
|
||||
95's ftp dumps four blank lines at the end of a transfer, and so it is
|
||||
desirable to automate their removal. Here's some code taken from <netrw.vim>
|
||||
itself:
|
||||
>
|
||||
if has("win95") && g:netrw_win95ftp
|
||||
fun! NetReadFixup(method, line1, line2)
|
||||
@@ -565,7 +572,7 @@ from <netrw.vim> itself:
|
||||
>
|
||||
|
||||
==============================================================================
|
||||
7. Directory Browser *netrw-browse* *netrw-dir* *netrw-list* *netrw-help*
|
||||
7. Directory Browsing *netrw-browse* *netrw-dir* *netrw-list* *netrw-help*
|
||||
|
||||
MAPS *netrw-maps*
|
||||
?................Help.......................................|netrw-help|
|
||||
@@ -656,12 +663,13 @@ NETRW BROWSER VARIABLES *netrw-browse-var*
|
||||
: connect to address [0-9a-fA-F:]*
|
||||
: No route to host$'
|
||||
|
||||
*g:netrw_ssh_browse_reject* ssh can sometimes produce unwanted lines,
|
||||
messages, banners, and whatnot that one doesn't
|
||||
want masquerading as "directories" and "files".
|
||||
Use this pattern to remove such embedded
|
||||
messages. By default its value is:
|
||||
'^total\s\+\d\+$'
|
||||
*g:netrw_ftp_list_cmd* options for passing along to ftp for directory
|
||||
listing. Defaults:
|
||||
unix or g:netrw_cygwin set: : "ls -lF"
|
||||
otherwise "dir"
|
||||
|
||||
*g:netrw_hide* if true, the hiding list is used
|
||||
default: =0
|
||||
|
||||
*g:netrw_keepdir* =1 (default) keep current directory immune from
|
||||
the browsing directory.
|
||||
@@ -676,16 +684,11 @@ NETRW BROWSER VARIABLES *netrw-browse-var*
|
||||
|
||||
*g:netrw_longlist* if =1, then long listing will be default
|
||||
|
||||
*g:netrw_ftp_list_cmd* options for passing along to ftp for directory
|
||||
listing. Defaults:
|
||||
unix or g:netrw_cygwin set: : "ls -lF"
|
||||
otherwise "dir"
|
||||
|
||||
*g:netrw_list_hide* comma separated pattern list for hiding files
|
||||
default: ""
|
||||
|
||||
*g:netrw_local_mkdir* command for making a local directory
|
||||
default: "ssh HOSTNAME mkdir"
|
||||
default: "mkdir"
|
||||
|
||||
*g:netrw_local_rmdir* remove directory command (rmdir)
|
||||
default: "rmdir"
|
||||
@@ -709,9 +712,6 @@ NETRW BROWSER VARIABLES *netrw-browse-var*
|
||||
*g:netrw_rmf_cmd* command for removing softlinks
|
||||
default: "ssh HOSTNAME rm -f"
|
||||
|
||||
*g:netrw_hide* if true, the hiding list is used
|
||||
default: =0
|
||||
|
||||
*g:netrw_sort_by* sort by "name", "time", or "size"
|
||||
default: "name"
|
||||
|
||||
@@ -723,6 +723,18 @@ NETRW BROWSER VARIABLES *netrw-browse-var*
|
||||
default: '[\/]$,*,\.bak$,\.o$,\.h$,
|
||||
\.info$,\.swp$,\.obj$'
|
||||
|
||||
*g:netrw_ssh_cmd* One may specify an executable command
|
||||
to use instead of ssh for remote actions
|
||||
such as listing, file removal, etc.
|
||||
default: ssh
|
||||
|
||||
*g:netrw_ssh_browse_reject* ssh can sometimes produce unwanted lines,
|
||||
messages, banners, and whatnot that one doesn't
|
||||
want masquerading as "directories" and "files".
|
||||
Use this pattern to remove such embedded
|
||||
messages. By default its value is:
|
||||
'^total\s\+\d\+$'
|
||||
|
||||
*g:netrw_timefmt* specify format string to strftime() (%c)
|
||||
default: "%c"
|
||||
|
||||
@@ -732,7 +744,7 @@ NETRW BROWSER VARIABLES *netrw-browse-var*
|
||||
INTRODUCTION TO DIRECTORY BROWSING *netrw-browse-intro*
|
||||
|
||||
Netrw supports the browsing of directories on the local system and on remote
|
||||
hosts, including generating listing directories, entering directories, editing
|
||||
hosts, including listing files and directories, entering directories, editing
|
||||
files therein, deleting files/directories, making new directories, and moving
|
||||
(renaming) files and directories. The Netrw browser generally implements the
|
||||
previous explorer maps and commands for remote directories, although details
|
||||
@@ -743,13 +755,15 @@ ftp. The protocol in the url, if it is ftp, will cause netrw to use ftp
|
||||
in its remote browsing. Any other protocol will be used for file transfers,
|
||||
but otherwise the ssh protocol will be used to do remote directory browsing.
|
||||
|
||||
To enter the netrw directory browser, simply attempt to read a "file" with a
|
||||
To use Netrw's remote directory browser, simply attempt to read a "file" with a
|
||||
trailing slash and it will be interpreted as a request to list a directory:
|
||||
|
||||
vim [protocol]://[user@]hostname/path/
|
||||
|
||||
If you'd like to avoid entering the password in for directory listings, scp,
|
||||
ssh interaction, etc, see |netrw-listhack|.
|
||||
For local directories, the trailing slash is not required.
|
||||
|
||||
If you'd like to avoid entering the password in for remote directory listings
|
||||
with ssh or scp, see |netrw-listhack|.
|
||||
|
||||
*netrw-explore* *netrw-pexplore*
|
||||
*netrw-hexplore* *netrw-sexplore*
|
||||
@@ -783,7 +797,8 @@ By default, these commands use the current file's directory. However, one
|
||||
may explicitly provide a directory (path) to use.
|
||||
|
||||
(Following needs v7.0 or later) *netrw-starstar*
|
||||
When Explore, Sexplore, Hexplore, or Vexplore are used like
|
||||
When Explore, Sexplore, Hexplore, or Vexplore are used with a **,
|
||||
such as:
|
||||
>
|
||||
:Explore **/filename_pattern
|
||||
<
|
||||
@@ -797,7 +812,8 @@ The directory display is updated to show the subdirectory containing a
|
||||
matching file. One may then proceed to the next (or previous) matching files'
|
||||
directories by using Nexplore or Pexplore, respectively. If your console or
|
||||
gui produces recognizable shift-up or shift-down sequences, then you'll likely
|
||||
find the following mappings convenient:
|
||||
find using shift-downarrow and shift-uparrow convenient. They're mapped by
|
||||
netrw:
|
||||
|
||||
<s-down> == Nexplore, and
|
||||
<s-up> == Pexplore.
|
||||
@@ -822,11 +838,12 @@ refresh a local directory by using ":e .".
|
||||
|
||||
GOING UP *netrw--*
|
||||
|
||||
To go up a directory, press - or his the <cr> when atop the ../ directory
|
||||
To go up a directory, press "-" or press the <cr> when atop the ../ directory
|
||||
entry in the listing.
|
||||
|
||||
Netrw will modify the command in |g:netrw_list_cmd| to perform the directory
|
||||
listing operation. By default the command is:
|
||||
Netrw will use the command in |g:netrw_list_cmd| to perform the directory
|
||||
listing operation after changing HOSTNAME to the host specified by the
|
||||
user-provided url. By default netrw provides the command as:
|
||||
|
||||
ssh HOSTNAME ls -FLa
|
||||
|
||||
@@ -841,7 +858,13 @@ BROWSING *netrw-cr*
|
||||
Browsing is simple: move the cursor onto a file or directory of interest.
|
||||
Hitting the <cr> (the return key) will select the file or directory.
|
||||
Directories will themselves be listed, and files will be opened using the
|
||||
protocol given in the original read request.
|
||||
protocol given in the original read request.
|
||||
|
||||
CAVEAT: There are three forms of listing (see |netrw-i|). Netrw assumes
|
||||
that two or more spaces delimit filenames and directory names for the long
|
||||
and wide listing formats. Thus, if your filename or directory name has two
|
||||
or more spaces embedded in it, or any trailing spaces, then you'll need to
|
||||
use the "thin" format to select it.
|
||||
|
||||
|
||||
OBTAINING A FILE *netrw-O*
|
||||
@@ -849,7 +872,21 @@ OBTAINING A FILE *netrw-O*
|
||||
When browsing a remote directory, one may obtain a file under the cursor (ie.
|
||||
get a copy on your local machine, but not edit it) by pressing the O key.
|
||||
Only ftp and scp are supported for this operation (but since these two are
|
||||
available for browsing, that shouldn't be a problem).
|
||||
available for browsing, that shouldn't be a problem). The status bar
|
||||
will then show, on its right hand side, a message like "Obtaining filename".
|
||||
The statusline will be restored after the transfer is complete.
|
||||
|
||||
Netrw can also "obtain" a file using the local browser. Netrw's display
|
||||
of a directory is not necessarily the same as Vim's "current directory",
|
||||
unless |g:netrw_keepdir| is set to 0 in the user's <.vimrc>. One may select
|
||||
a file using the local browser (by putting the cursor on it) and pressing
|
||||
"O" will then "obtain" the file; ie. copy it to Vim's current directory.
|
||||
|
||||
Related topics:
|
||||
* To see what the current directory is, use |:pwd|
|
||||
* To make the currently browsed directory the current directory, see |netrw-c|
|
||||
* To automatically make the currently browsed directory the current
|
||||
directory, see |g:netrw_keepdir|.
|
||||
|
||||
|
||||
THIN, LONG, AND WIDE LISTINGS *netrw-i*
|
||||
@@ -859,21 +896,27 @@ The "i" map cycles between the thin, long, and wide listing formats.
|
||||
The short listing format gives just the files' and directories' names.
|
||||
|
||||
The long listing is either based on the "ls" command via ssh for remote
|
||||
directories or displays the filename, file size (in bytes), and the
|
||||
time and date of last modification for local directories.
|
||||
directories or displays the filename, file size (in bytes), and the time and
|
||||
date of last modification for local directories. With the long listing
|
||||
format, netrw is not able to recognize filenames which have trailing spaces.
|
||||
Use the thin listing format for such files.
|
||||
|
||||
The wide listing format has a multi-column display of the various
|
||||
files in the netrw current directory, rather like the Unix "ls" presents.
|
||||
In this mode the "b" and "B" maps are not available; instead, use
|
||||
Nb (|netrw-Nb|) and NB (|netrw-NB|).
|
||||
The wide listing format has a multi-column display of the various files in the
|
||||
netrw current directory, rather like the Unix "ls" presents. In this mode the
|
||||
"b" and "B" maps are not available; instead, use Nb (|netrw-Nb|) and NB
|
||||
(|netrw-NB|). The wide listing format uses two or more contiguous spaces to
|
||||
delineate filenames; when using that format, netrw won't be able to recognize
|
||||
or use filenames which have two or more contiguous spaces embedded in the name
|
||||
or any trailing spaces. The thin listing format will, however, work with such
|
||||
files.
|
||||
|
||||
|
||||
MAKING A NEW DIRECTORY *netrw-d*
|
||||
|
||||
With the "d" map one may make a new directory either remotely (which
|
||||
depends on the global variable g:netrw_mkdir_cmd) or locally (which depends on
|
||||
the global variable g:netrw_local_mkdir). Netrw will issue a request for the
|
||||
new directory's name. A bare <CR> at that point will abort the making of the
|
||||
With the "d" map one may make a new directory either remotely (which depends
|
||||
on the global variable g:netrw_mkdir_cmd) or locally (which depends on the
|
||||
global variable g:netrw_local_mkdir). Netrw will issue a request for the new
|
||||
directory's name. A bare <CR> at that point will abort the making of the
|
||||
directory. Attempts to make a local directory that already exists (as either
|
||||
a file or a directory) will be detected, reported on, and ignored.
|
||||
|
||||
@@ -881,12 +924,12 @@ a file or a directory) will be detected, reported on, and ignored.
|
||||
DELETING FILES OR DIRECTORIES *netrw-delete* *netrw-D*
|
||||
|
||||
Deleting/removing files and directories involves moving the cursor to the
|
||||
file/directory to be deleted and pressing "D". Directories must be empty first
|
||||
before they can be successfully removed. If the directory is a softlink to a
|
||||
directory, then netrw will make two requests to remove the directory before
|
||||
succeeding. Netrw will ask for confirmation before doing the removal(s).
|
||||
You may select a range of lines with the "V" command (visual selection),
|
||||
and then pressing "D".
|
||||
file/directory to be deleted and pressing "D". Directories must be empty
|
||||
first before they can be successfully removed. If the directory is a softlink
|
||||
to a directory, then netrw will make two requests to remove the directory
|
||||
before succeeding. Netrw will ask for confirmation before doing the
|
||||
removal(s). You may select a range of lines with the "V" command (visual
|
||||
selection), and then pressing "D".
|
||||
|
||||
The g:netrw_rm_cmd, g:netrw_rmf_cmd, and g:netrw_rmdir_cmd variables are used
|
||||
to control the attempts to remove files and directories. The g:netrw_rm_cmd
|
||||
@@ -923,17 +966,17 @@ the V (|linewise-visual|).
|
||||
|
||||
HIDING FILES OR DIRECTORIES *netrw-a*
|
||||
|
||||
Netrw's browsing facility allows one to use the hiding list in one of
|
||||
three ways: ignore it, hide files which match, and show only those files
|
||||
which match. The "a" map allows the user to cycle about these three ways.
|
||||
Netrw's browsing facility allows one to use the hiding list in one of three
|
||||
ways: ignore it, hide files which match, and show only those files which
|
||||
match. The "a" map allows the user to cycle about these three ways.
|
||||
|
||||
The g:netrw_list_hide variable holds a comma delimited list of patterns
|
||||
(ex. \.obj) which specify the hiding list. (also see |netrw-h|) To
|
||||
set the hiding list, use the <c-h> map. As an example, to hide files
|
||||
which begin with a ".", one may use the <c-h> map to set the hiding
|
||||
list to '^\..*' (or one may put let g:netrw_list_hide= '^\..*' in
|
||||
one's <.vimrc>). One may then use the "a" key to show all files,
|
||||
hide matching files, or to show only the matching files.
|
||||
The g:netrw_list_hide variable holds a comma delimited list of patterns (ex.
|
||||
\.obj) which specify the hiding list. (also see |netrw-h|) To set the hiding
|
||||
list, use the <c-h> map. As an example, to hide files which begin with a ".",
|
||||
one may use the <c-h> map to set the hiding list to '^\..*' (or one may put
|
||||
let g:netrw_list_hide= '^\..*' in one's <.vimrc>). One may then use the "a"
|
||||
key to show all files, hide matching files, or to show only the matching
|
||||
files.
|
||||
|
||||
|
||||
EDIT FILE OR DIRECTORY HIDING LIST *netrw-h* *netrw-edithide*
|
||||
@@ -941,7 +984,8 @@ EDIT FILE OR DIRECTORY HIDING LIST *netrw-h* *netrw-edithide*
|
||||
The "<ctrl-h>" map brings up a requestor allowing the user to change the
|
||||
file/directory hiding list. The hiding list consists of one or more patterns
|
||||
delimited by commas. Files and/or directories satisfying these patterns will
|
||||
either be hidden (ie. not shown) or be the only ones displayed (see |netrw-a|).
|
||||
either be hidden (ie. not shown) or be the only ones displayed (see
|
||||
|netrw-a|).
|
||||
|
||||
|
||||
BROWSING WITH A HORIZONTALLY SPLIT WINDOW *netrw-o* *netrw-horiz*
|
||||
@@ -950,9 +994,9 @@ Normally one enters a file or directory using the <cr>. However, the "o" map
|
||||
allows one to open a new window to hold the new directory listing or file. A
|
||||
horizontal split is used. (for vertical splitting, see |netrw-v|)
|
||||
|
||||
Normally, the o key splits the window horizontally with the new window
|
||||
and cursor at the top. To change to splitting the window horizontally
|
||||
with the new window and cursor at the bottom, have
|
||||
Normally, the o key splits the window horizontally with the new window and
|
||||
cursor at the top. To change to splitting the window horizontally with the
|
||||
new window and cursor at the bottom, have
|
||||
|
||||
let g:netrw_alto = 1
|
||||
|
||||
@@ -961,30 +1005,30 @@ in your <.vimrc>.
|
||||
|
||||
PREVIEW WINDOW *netrw-p* *netrw-preview*
|
||||
|
||||
One may use a preview window (currently only for local browsing) by using
|
||||
the "p" key when the cursor is atop the desired filename to be previewed.
|
||||
One may use a preview window (currently only for local browsing) by using the
|
||||
"p" key when the cursor is atop the desired filename to be previewed.
|
||||
|
||||
|
||||
SELECTING SORTING STYLE *netrw-s* *netrw-sort*
|
||||
|
||||
One may select the sorting style by name, time, or (file) size. The
|
||||
"s" map allows one to circulate amongst the three choices; the directory
|
||||
listing will automatically be refreshed to reflect the selected style.
|
||||
One may select the sorting style by name, time, or (file) size. The "s" map
|
||||
allows one to circulate amongst the three choices; the directory listing will
|
||||
automatically be refreshed to reflect the selected style.
|
||||
|
||||
|
||||
EDITING THE SORTING SEQUENCE *netrw-S* *netrw-sortsequence*
|
||||
|
||||
When "Sorted by" is name, one may specify priority via the sorting
|
||||
sequence (g:netrw_sort_sequence). The sorting sequence typically
|
||||
prioritizes the name-listing by suffix, although any pattern will do.
|
||||
Patterns are delimited by commas. The default sorting sequence is:
|
||||
When "Sorted by" is name, one may specify priority via the sorting sequence
|
||||
(g:netrw_sort_sequence). The sorting sequence typically prioritizes the
|
||||
name-listing by suffix, although any pattern will do. Patterns are delimited
|
||||
by commas. The default sorting sequence is:
|
||||
>
|
||||
[\/]$,*,\.bak$,\.o$,\.h$,\.info$,\.swp$,\.obj$
|
||||
<
|
||||
The lone * is where all filenames not covered by one of the other
|
||||
patterns will end up. One may change the sorting sequence by modifying
|
||||
the g:netrw_sort_sequence variable (either manually or in your <.vimrc>)
|
||||
or by using the "S" map.
|
||||
The lone * is where all filenames not covered by one of the other patterns
|
||||
will end up. One may change the sorting sequence by modifying the
|
||||
g:netrw_sort_sequence variable (either manually or in your <.vimrc>) or by
|
||||
using the "S" map.
|
||||
|
||||
|
||||
REVERSING SORTING ORDER *netrw-r* *netrw-reverse*
|
||||
@@ -1011,13 +1055,13 @@ q map to list both the bookmarks and history. (see |netrw-q|)
|
||||
|
||||
BROWSING WITH A VERTICALLY SPLIT WINDOW *netrw-v*
|
||||
|
||||
Normally one enters a file or directory using the <cr>. However, the "v"
|
||||
map allows one to open a new window to hold the new directory listing or
|
||||
file. A vertical split is used. (for horizontal splitting, see |netrw-o|)
|
||||
Normally one enters a file or directory using the <cr>. However, the "v" map
|
||||
allows one to open a new window to hold the new directory listing or file. A
|
||||
vertical split is used. (for horizontal splitting, see |netrw-o|)
|
||||
|
||||
Normally, the v key splits the window vertically with the new window
|
||||
and cursor at the left. To change to splitting the window vertically
|
||||
with the new window and cursor at the right, have
|
||||
Normally, the v key splits the window vertically with the new window and
|
||||
cursor at the left. To change to splitting the window vertically with the new
|
||||
window and cursor at the right, have
|
||||
|
||||
let g:netrw_altv = 1
|
||||
|
||||
@@ -1033,24 +1077,24 @@ handler varies:
|
||||
* for Windows 32 or 64, the url and FileProtocolHandler dlls are used.
|
||||
* for KDE (with kfmclient): kfmclient is used.
|
||||
* for Gnome (with gnome-open): gnome-open is used.
|
||||
* otherwise the NetrwFileHandler plugin is used.
|
||||
* otherwise the netrwFileHandler plugin is used.
|
||||
|
||||
The file's suffix is used by these various approaches to determine an
|
||||
appropriate application to use to "handle" these files. Such things
|
||||
as OpenOffice (*.sfx), visualization (*.jpg, *.gif, etc), and PostScript
|
||||
(*.ps, *.eps) can be handled.
|
||||
appropriate application to use to "handle" these files. Such things as
|
||||
OpenOffice (*.sfx), visualization (*.jpg, *.gif, etc), and PostScript (*.ps,
|
||||
*.eps) can be handled.
|
||||
|
||||
The NetrwFileHandler applies a user-defined function to a file, based on its
|
||||
The netrwFileHandler applies a user-defined function to a file, based on its
|
||||
extension. Of course, the handler function must exist for it to be called!
|
||||
>
|
||||
Ex. mypgm.html x ->
|
||||
NetrwFileHandler_html("scp://user@host/some/path/mypgm.html")
|
||||
netrwFileHandler_html("scp://user@host/some/path/mypgm.html")
|
||||
<
|
||||
See the <plugin/NetrwFileHandlers.vim> for an example of how to handle an html
|
||||
See the <plugin/netrwFileHandlers.vim> for an example of how to handle an html
|
||||
file with mozilla.
|
||||
|
||||
One may write custom NetrwFileHandlers; please look at the
|
||||
plugin/NetrwFileHandlers.vim script for examples. If its likely to be
|
||||
One may write custom netrwFileHandlers; please look at the
|
||||
plugin/netrwFileHandlers.vim script for examples. If its likely to be
|
||||
generally useful, please feel free to forward a copy to me for future
|
||||
inclusion in the distribution.
|
||||
|
||||
@@ -1063,8 +1107,8 @@ g:netrw_keepdir to 0 (say, in your <.vimrc>) will tell netrw to have the
|
||||
currently browsed directory be the current directory.
|
||||
|
||||
With the default setting for g:netrw_keepdir, in order to make the two
|
||||
directories the same, use the "c" map (just type c). That map will set
|
||||
the current directory to the current browsing directory.
|
||||
directories the same, use the "c" map (just type c). That map will set the
|
||||
current directory to the current browsing directory.
|
||||
|
||||
|
||||
BOOKMARKING A DIRECTORY *netrw-b* *netrw-bookmark* *netrw-bookmarks*
|
||||
@@ -1087,8 +1131,8 @@ To change directory back to a bookmarked directory, use
|
||||
|
||||
{cnt}B
|
||||
|
||||
Any count may be used to reference any of the bookmarks. See |netrw-b|
|
||||
for how to bookmark a directory and |netrw-q| for how to list them.
|
||||
Any count may be used to reference any of the bookmarks. See |netrw-b| on
|
||||
how to bookmark a directory and |netrw-q| on how to list bookmarks.
|
||||
|
||||
When wide listing is in use (see |netrw-i|), then the B map is not available;
|
||||
instead, use {cnt}NB.
|
||||
@@ -1118,9 +1162,9 @@ NETRW SETTINGS *netrw-settings*
|
||||
With the NetrwSettings.vim plugin, >
|
||||
:NetrwSettings
|
||||
will bring up a window with the many variables that netrw uses for its
|
||||
settings. You may change any of their values; when you save the file,
|
||||
the settings therein will be used. One may also press "?" on any of
|
||||
the lines for help on what each of the variables do.
|
||||
settings. You may change any of their values; when you save the file, the
|
||||
settings therein will be used. One may also press "?" on any of the lines for
|
||||
help on what each of the variables do.
|
||||
|
||||
|
||||
==============================================================================
|
||||
@@ -1240,6 +1284,44 @@ which is loaded automatically at startup (assuming :set nocp).
|
||||
==============================================================================
|
||||
10. History *netrw-history*
|
||||
|
||||
v76: * "directory is missing" error message now restores echo
|
||||
highlighting
|
||||
v75: * file://... now conforms to RFC2396 (thanks to S. Zacchiroli)
|
||||
* if the binary option is set, then NetWrite() will only write
|
||||
the whole file (line numbers don't make sense with this).
|
||||
Supports writing of tar and zip files.
|
||||
v74: * bugfix (vim, then :Explore) now works
|
||||
* ctrl-L keeps cursor at same screen location (both local and
|
||||
remote browsing)
|
||||
* netrw now can read remote zip and tar files
|
||||
* Obtain now uses WinXP ftp+.netrc successfully
|
||||
v73: * bugfix -- scp://host/path/file was getting named incorrectly
|
||||
* netrw detects use of earlier-than-7.0 version of vim and issues
|
||||
a pertinent error message.
|
||||
* netrwSettings.vim is now uses autoloading. Only
|
||||
<netrwPlugin.vim> is needed as a pure plugin
|
||||
(ie. always loaded).
|
||||
v72: * bugfix -- formerly, one could prevent the loading of netrw
|
||||
by "let g:loaded_netrw=1"; when autoloading became supported,
|
||||
this feature was lost. It is now restored.
|
||||
v71: * bugfix -- made some "set nomodifiable"s into setlocal variants
|
||||
(allows :e somenewfile to be modifiable as usual)
|
||||
* NetrwSettings calls a netrw function, thereby assuring that
|
||||
netrw has loaded. However, if netrw does not load for whatever
|
||||
reason, then NetrwSettings will now issue a warning message.
|
||||
* For what reason I don't recall, when wget and fetch are both
|
||||
not present, and an attempt to read a http://... url is made,
|
||||
netrw exited. It now only returns.
|
||||
* When ch=1, on the second and subsequent uses of browsing Netrw
|
||||
would issue a blank line to clear the echo'd messages. This
|
||||
caused an annoying "Hit-Enter" prompt; now a blank line message
|
||||
is echo'd only if &ch>1.
|
||||
v70: * when using |netrw-O|, the "Obtaining filename" message is now
|
||||
shown using |hl-User9|. If User9 has not been defined, netrw
|
||||
will define it.
|
||||
v69: * Bugfix: win95/98 machines were experiencing a
|
||||
"E121: Undefined variable: g:netrw_win95ftp" message
|
||||
v68: * double-click-leftmouse selects word under mouse
|
||||
v67: * Passwords which contain blanks will now be surrounded by
|
||||
double-quotes automatically (Yongwei)
|
||||
v66: * Netrw now seems to work with a few more Windows situations
|
||||
@@ -1355,7 +1437,7 @@ which is loaded automatically at startup (assuming :set nocp).
|
||||
* special file viewing with:
|
||||
(windows) rundll32 url.dll (gnome) gnome-open (kde)
|
||||
kfmclient If none of these are on the executable path, then
|
||||
NetrwFileHandlers.vim is used.
|
||||
netrwFileHandlers.vim is used.
|
||||
* directory bookmarking during both local and remote browsing
|
||||
implemented
|
||||
* one may view all, use the hiding list to suppress, or use the
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
*tar.txt* Tar File Interface Nov 03, 2005
|
||||
*tar.txt* Tar File Interface Nov 22, 2005
|
||||
|
||||
Author: Charles E. Campbell, Jr. <NdrOchip@ScampbellPfamily.AbizM>
|
||||
(remove NOSPAM from Campbell's email first)
|
||||
@@ -23,15 +23,16 @@ Copyright: The GPL (gnu public license) applies to *tar-copyright*
|
||||
|
||||
==============================================================================
|
||||
3. History *tar-history*
|
||||
v3 Sep 16, 2005 * handles writing files in an archive back to the
|
||||
archive
|
||||
Oct 18, 2005 * <amatch> used instead of <afile> in autocmds
|
||||
Oct 18, 2005 * handles writing to compressed archives
|
||||
Nov 03, 2005 * handles writing tarfiles across a network using
|
||||
netrw#NetWrite()
|
||||
v2 * converted to use Vim7's new autoload feature by
|
||||
Bram Moolenaar
|
||||
v1 (original release) * Michael Toren (see http://michael.toren.net/code/)
|
||||
v5 Nov 22, 2005 * report option workaround installed
|
||||
v3 Sep 16, 2005 * handles writing files in an archive back to the
|
||||
archive
|
||||
Oct 18, 2005 * <amatch> used instead of <afile> in autocmds
|
||||
Oct 18, 2005 * handles writing to compressed archives
|
||||
Nov 03, 2005 * handles writing tarfiles across a network using
|
||||
netrw#NetWrite()
|
||||
v2 * converted to use Vim7's new autoload feature by
|
||||
Bram Moolenaar
|
||||
v1 (original) * Michael Toren (see http://michael.toren.net/code/)
|
||||
|
||||
==============================================================================
|
||||
vim:tw=78:ts=8:ft=help
|
||||
@@ -1,4 +1,4 @@
|
||||
*zip.txt* Zip File Interface Nov 03, 2005
|
||||
*zip.txt* Zip File Interface Nov 22, 2005
|
||||
|
||||
Author: Charles E. Campbell, Jr. <NdrOchip@ScampbellPfamily.AbizM>
|
||||
(remove NOSPAM from Campbell's email first)
|
||||
@@ -28,6 +28,7 @@ Copyright: Copyright (C) 2005 Charles E. Campbell, Jr. {{{1 *zip-copyright*
|
||||
|
||||
==============================================================================
|
||||
3. History *zip-history*
|
||||
v5 Nov 22, 2005 * report option workaround installed
|
||||
v3 Oct 18, 2005 * <amatch> used instead of <afile> in autocmds
|
||||
v2 Sep 16, 2005 * silenced some commands (avoiding hit-enter prompt)
|
||||
* began testing under Windows; works thus far
|
||||
@@ -1,4 +1,4 @@
|
||||
*quickref.txt* For Vim version 7.0aa. Last change: 2005 Sep 13
|
||||
*quickref.txt* For Vim version 7.0aa. Last change: 2005 Dec 12
|
||||
|
||||
|
||||
VIM REFERENCE MANUAL by Bram Moolenaar
|
||||
@@ -633,6 +633,7 @@ Short explanation of each option: *option-list*
|
||||
|'compatible'| |'cp'| behave Vi-compatible as much as possible
|
||||
|'complete'| |'cpt'| specify how Insert mode completion works
|
||||
|'completefunc'| |'cfu'| function to be used for Insert mode completion
|
||||
|'completeopt'| |'cot'| options for Insert mode completion
|
||||
|'confirm'| |'cf'| ask what to do about unsaved/read-only files
|
||||
|'conskey'| |'consk'| get keys directly from console (MS-DOS only)
|
||||
|'copyindent'| |'ci'| make 'autoindent' use existing indent structure
|
||||
@@ -773,6 +774,7 @@ Short explanation of each option: *option-list*
|
||||
|'number'| |'nu'| print the line number in front of each line
|
||||
|'numberwidth'| |'nuw'| number of columns used for the line number
|
||||
|'omnifunc'| |'ofu'| function for filetype-specific completion
|
||||
|'operatorfunc'| |'opfunc'| funtion to be called for |g@| operator
|
||||
|'osfiletype'| |'oft'| operating system-specific filetype information
|
||||
|'paragraphs'| |'para'| nroff macros that separate paragraphs
|
||||
|'paste'| allow pasting text
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
*recover.txt* For Vim version 7.0aa. Last change: 2005 Feb 10
|
||||
*recover.txt* For Vim version 7.0aa. Last change: 2005 Dec 12
|
||||
|
||||
|
||||
VIM REFERENCE MANUAL by Bram Moolenaar
|
||||
@@ -126,6 +126,28 @@ command:
|
||||
A Vim swap file can be recognized by the first six characters: "b0VIM ".
|
||||
After that comes the version number, e.g., "3.0".
|
||||
|
||||
|
||||
Links and symbolic links ~
|
||||
|
||||
On Unix it is possible to have two names for the same file. This can be done
|
||||
with hard links and with symbolic links (symlinks).
|
||||
|
||||
For hard links Vim does not know the other name of the file. Therefore, the
|
||||
name of the swapfile will be based on the name you used to edit the file.
|
||||
There is no check for editing the same file by the other name too, because Vim
|
||||
cannot find the other swapfile (except for searching all of your harddisk,
|
||||
which would be very slow).
|
||||
|
||||
For symbolic links Vim resolves the links to find the name of the actual file.
|
||||
The swap file name is based on that name. Thus it doesn't matter by what name
|
||||
you edit the file, the swap file name will normally be the same. However,
|
||||
there are exceptions:
|
||||
- When the directory of the actual file is not writable the swapfile is put
|
||||
elsewhere.
|
||||
- When the symbolic links somehow create a loop you get an *E773* error
|
||||
message and the unmodified file name will be used. You won't be able to
|
||||
save your file normally.
|
||||
|
||||
==============================================================================
|
||||
2. Recovery *recovery* *E308* *E311*
|
||||
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
*scroll.txt* For Vim version 7.0aa. Last change: 2005 Apr 01
|
||||
*scroll.txt* For Vim version 7.0aa. Last change: 2005 Dec 16
|
||||
|
||||
|
||||
VIM REFERENCE MANUAL by Bram Moolenaar
|
||||
@@ -153,31 +153,39 @@ to the closest character that is on the screen. The value of 'sidescroll' is
|
||||
not used.
|
||||
|
||||
z<Right> or *zl* *z<Right>*
|
||||
zl Scroll the screen [count] characters to the left.
|
||||
This only works when 'wrap' is off. {not in Vi}
|
||||
zl Move the view on the text [count] characters to the
|
||||
right, thus scroll the text [count] characters to the
|
||||
left. This only works when 'wrap' is off. {not in
|
||||
Vi}
|
||||
|
||||
z<Left> or *zh* *z<Left>*
|
||||
zh Scroll the screen [count] characters to the right.
|
||||
This only works when 'wrap' is off. {not in Vi}
|
||||
zh Move the view on the text [count] characters to the
|
||||
left, thus scroll the text [count] characters to the
|
||||
right. This only works when 'wrap' is off. {not in
|
||||
Vi}
|
||||
|
||||
*zL*
|
||||
zL Scroll the screen half a screenwidth to the left.
|
||||
This only works when 'wrap' is off. {not in Vi}
|
||||
zL Move the view on the text half a screenwidth to the
|
||||
right, thus scroll the text half a screenwidth to the
|
||||
left. This only works when 'wrap' is off. {not in
|
||||
Vi}
|
||||
|
||||
*zH*
|
||||
zH Scroll the screen half a screenwidth to the right.
|
||||
This only works when 'wrap' is off. {not in Vi}
|
||||
zH Move the view on the text half a screenwidth to the
|
||||
left, thus scroll the text half a screenwidth to the
|
||||
right. This only works when 'wrap' is off. {not in
|
||||
Vi}
|
||||
|
||||
For the following two commands the cursor is not moved in the text, only the
|
||||
text scrolls on the screen.
|
||||
|
||||
*zs*
|
||||
zs Scroll the screen horizontally to position the cursor
|
||||
zs Scroll the text horizontally to position the cursor
|
||||
at the start (left side) of the screen. This only
|
||||
works when 'wrap' is off. {not in Vi}
|
||||
|
||||
*ze*
|
||||
ze Scroll the screen horizontally to position the cursor
|
||||
ze Scroll the text horizontally to position the cursor
|
||||
at the end (right side) of the screen. This only
|
||||
works when 'wrap' is off. {not in Vi}
|
||||
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
*spell.txt* For Vim version 7.0aa. Last change: 2005 Sep 25
|
||||
*spell.txt* For Vim version 7.0aa. Last change: 2005 Dec 09
|
||||
|
||||
|
||||
VIM REFERENCE MANUAL by Bram Moolenaar
|
||||
@@ -35,7 +35,7 @@ Vim only checks words for spelling, there is no grammar check.
|
||||
|
||||
If the 'mousemodel' option is set to "popup" and the cursor is on a badly
|
||||
spelled word or it is "popup_setpos" and the mouse pointer is on a badly
|
||||
spelled word, then the popup menu will contain an submenu to replace the bad
|
||||
spelled word, then the popup menu will contain a submenu to replace the bad
|
||||
word. Note: this slows down the appearance of the popup menu.
|
||||
|
||||
To search for the next misspelled word:
|
||||
@@ -124,8 +124,8 @@ is set.
|
||||
|
||||
|
||||
Finding suggestions for bad words:
|
||||
*z?*
|
||||
z? For the word under/after the cursor suggest correctly
|
||||
*z=*
|
||||
z= For the word under/after the cursor suggest correctly
|
||||
spelled words. This also works to find alternatives
|
||||
for a word that is not highlighted as a bad word,
|
||||
e.g., when the word after it is bad.
|
||||
@@ -143,7 +143,7 @@ z? For the word under/after the cursor suggest correctly
|
||||
first line (the header) to cancel.
|
||||
|
||||
If a count is used that suggestion is used, without
|
||||
prompting. For example, "1z?" always takes the first
|
||||
prompting. For example, "1z=" always takes the first
|
||||
suggestion.
|
||||
|
||||
If 'verbose' is non-zero a score will be displayed
|
||||
@@ -156,7 +156,7 @@ z? For the word under/after the cursor suggest correctly
|
||||
and other languages without spaces between words.
|
||||
|
||||
*:spellr* *:spellrepall* *E752* *E753*
|
||||
:spellr[epall] Repeat the replacement done by |z?| for all matches
|
||||
:spellr[epall] Repeat the replacement done by |z=| for all matches
|
||||
with the replaced word in the current window.
|
||||
|
||||
In Insert mode, when the cursor is after a badly spelled word, you can use
|
||||
@@ -206,7 +206,7 @@ Always use lowercase letters for the language and region names.
|
||||
When adding a word with |zg| or another command it's always added for all
|
||||
regions. You can change that by manually editing the 'spellfile'. See
|
||||
|spell-wordlist-format|. Note that the regions as specified in the files in
|
||||
'spellfile' are only used when all entries in "spelllang" specify the same
|
||||
'spellfile' are only used when all entries in 'spelllang' specify the same
|
||||
region (not counting files specified by their .spl name).
|
||||
|
||||
*spell-german*
|
||||
@@ -421,7 +421,7 @@ then Vim will try to guess.
|
||||
|
||||
*:mksp* *:mkspell*
|
||||
:mksp[ell][!] [-ascii] {outname} {inname} ...
|
||||
Generate a Vim spell file word lists. Example: >
|
||||
Generate a Vim spell file from word lists. Example: >
|
||||
:mkspell /tmp/nl nl_NL.words
|
||||
< *E751*
|
||||
When {outname} ends in ".spl" it is used as the output
|
||||
@@ -550,10 +550,10 @@ maintains a word list.
|
||||
|
||||
Note that we avoid the word "dictionary" here. That is because the goal of
|
||||
spell checking differs from writing a dictionary (as in the book). For
|
||||
spelling we need a list of words that are OK, thus should not to be
|
||||
highlighted. Person and company names will not appear in a dictionary, but do
|
||||
appear in a word list. And some old words are rarely used while they are
|
||||
common misspellings. These do appear in a dictionary but not in a word list.
|
||||
spelling we need a list of words that are OK, thus should not be highlighted.
|
||||
Person and company names will not appear in a dictionary, but do appear in a
|
||||
word list. And some old words are rarely used while they are common
|
||||
misspellings. These do appear in a dictionary but not in a word list.
|
||||
|
||||
There are two formats: A straight list of words and a list using affix
|
||||
compression. The files with affix compression are used by Myspell (Mozilla
|
||||
@@ -1194,7 +1194,7 @@ white space is replaced by one space. Sequences of the same character in
|
||||
SOFOFROM are replaced by one.
|
||||
|
||||
You can use the |soundfold()| function to try out the results. Or set the
|
||||
'verbose' option to see the score in the output of the |z?| command.
|
||||
'verbose' option to see the score in the output of the |z=| command.
|
||||
|
||||
|
||||
vim:tw=78:sw=4:ts=8:ft=help:norl:
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
*starting.txt* For Vim version 7.0aa. Last change: 2005 Oct 02
|
||||
*starting.txt* For Vim version 7.0aa. Last change: 2005 Dec 04
|
||||
|
||||
|
||||
VIM REFERENCE MANUAL by Bram Moolenaar
|
||||
@@ -1201,6 +1201,13 @@ An example mapping: >
|
||||
:nmap <F2> :wa<Bar>exe "mksession! " . v:this_session<CR>:so ~/sessions/
|
||||
This saves the current Session, and starts off the command to load another.
|
||||
|
||||
The |SessionLoadPost| autocmd event is triggered after a session file is
|
||||
loaded/sourced.
|
||||
*SessionLoad-variable*
|
||||
While the session file is loading the SessionLoad global variable is set to 1.
|
||||
Plugins can use this to postpone some work until the SessionLoadPost event is
|
||||
triggered.
|
||||
|
||||
*:mkvie* *:mkview*
|
||||
:mkvie[w][!] [file] Write a Vim script that restores the contents of the
|
||||
current window.
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
*syntax.txt* For Vim version 7.0aa. Last change: 2005 Oct 12
|
||||
*syntax.txt* For Vim version 7.0aa. Last change: 2005 Nov 30
|
||||
|
||||
|
||||
VIM REFERENCE MANUAL by Bram Moolenaar
|
||||
@@ -2135,29 +2135,58 @@ number is that redrawing can become slow.
|
||||
|
||||
RUBY *ruby.vim* *ft-ruby-syntax*
|
||||
|
||||
There are a few options to the Ruby syntax highlighting.
|
||||
There are a number of options to the Ruby syntax highlighting.
|
||||
|
||||
By default, the "end" keyword is colorized according to the opening statement
|
||||
of the block it closes. While useful, this feature can be expensive: if you
|
||||
of the block it closes. While useful, this feature can be expensive; if you
|
||||
experience slow redrawing (or you are on a terminal with poor color support)
|
||||
you may want to turn it off by defining the "ruby_no_expensive" variable: >
|
||||
|
||||
:let ruby_no_expensive = 1
|
||||
|
||||
In this case the same color will be used for all control keywords.
|
||||
|
||||
If you do want this feature enabled, but notice highlighting errors while
|
||||
scrolling backwards, which are fixed when redrawing with CTRL-L, try setting
|
||||
the "ruby_minlines" variable to a value larger than 50: >
|
||||
|
||||
:let ruby_minlines = 100
|
||||
|
||||
Ideally, this value should be a number of lines large enough to embrace your
|
||||
largest class or module.
|
||||
|
||||
Finally, if you do not like to see too many color items around, you can define
|
||||
Highlighting of special identifiers can be disabled by defining
|
||||
"ruby_no_identifiers": >
|
||||
|
||||
:let ruby_no_identifiers = 1
|
||||
|
||||
This will prevent highlighting of special identifiers like "ConstantName",
|
||||
"$global_var", "@instance_var", "| iterator |", and ":symbol".
|
||||
"$global_var", "@@class_var", "@instance_var", "| block_param |", and
|
||||
":symbol".
|
||||
|
||||
Significant methods of Kernel, Module and Object are highlighted by default.
|
||||
This can be disabled by defining "ruby_no_special_methods": >
|
||||
|
||||
:let ruby_no_special_methods = 1
|
||||
|
||||
This will prevent highlighting of important methods such as "require", "attr",
|
||||
"private", "raise" and "proc".
|
||||
|
||||
Whitespace errors can be highlighted by defining "ruby_space_errors": >
|
||||
|
||||
:let ruby_space_errors = 1
|
||||
|
||||
This will highlight trailing whitespace and tabs preceded by a space character
|
||||
as errors. This can be refined by defining "ruby_no_trail_space_error" and
|
||||
"ruby_no_tab_space_error" which will ignore trailing whitespace and tabs after
|
||||
spaces respectively.
|
||||
|
||||
Folding can be enabled by defining "ruby_fold": >
|
||||
|
||||
:let ruby_fold = 1
|
||||
|
||||
This will set the 'foldmethod' option to "syntax" and allow folding of
|
||||
classes, modules, methods, code blocks, heredocs and comments.
|
||||
SCHEME *scheme.vim* *ft-scheme-syntax*
|
||||
|
||||
By default only R5RS keywords are highlighted and properly indented.
|
||||
|
||||
@@ -614,6 +614,8 @@ $VIMRUNTIME starting.txt /*$VIMRUNTIME*
|
||||
'omnifunc' options.txt /*'omnifunc'*
|
||||
'op' vi_diff.txt /*'op'*
|
||||
'open' vi_diff.txt /*'open'*
|
||||
'operatorfunc' options.txt /*'operatorfunc'*
|
||||
'opfunc' options.txt /*'opfunc'*
|
||||
'optimize' vi_diff.txt /*'optimize'*
|
||||
'option' intro.txt /*'option'*
|
||||
'osfiletype' options.txt /*'osfiletype'*
|
||||
@@ -1011,6 +1013,7 @@ $VIMRUNTIME starting.txt /*$VIMRUNTIME*
|
||||
( motion.txt /*(*
|
||||
) motion.txt /*)*
|
||||
+ motion.txt /*+*
|
||||
++bad editing.txt /*++bad*
|
||||
++bin editing.txt /*++bin*
|
||||
++builtin_terms various.txt /*++builtin_terms*
|
||||
++enc editing.txt /*++enc*
|
||||
@@ -1655,6 +1658,7 @@ $VIMRUNTIME starting.txt /*$VIMRUNTIME*
|
||||
:@ repeat.txt /*:@*
|
||||
:@: repeat.txt /*:@:*
|
||||
:@@ repeat.txt /*:@@*
|
||||
:CompilerSet usr_41.txt /*:CompilerSet*
|
||||
:Explore pi_netrw.txt /*:Explore*
|
||||
:Hexplore pi_netrw.txt /*:Hexplore*
|
||||
:Man filetype.txt /*:Man*
|
||||
@@ -2142,9 +2146,15 @@ $VIMRUNTIME starting.txt /*$VIMRUNTIME*
|
||||
:map-<script> map.txt /*:map-<script>*
|
||||
:map-<silent> map.txt /*:map-<silent>*
|
||||
:map-<unique> map.txt /*:map-<unique>*
|
||||
:map-alt-keys map.txt /*:map-alt-keys*
|
||||
:map-arguments map.txt /*:map-arguments*
|
||||
:map-commands map.txt /*:map-commands*
|
||||
:map-local map.txt /*:map-local*
|
||||
:map-modes map.txt /*:map-modes*
|
||||
:map-operator map.txt /*:map-operator*
|
||||
:map-script map.txt /*:map-script*
|
||||
:map-silent map.txt /*:map-silent*
|
||||
:map-special-chars map.txt /*:map-special-chars*
|
||||
:map-special-keys map.txt /*:map-special-keys*
|
||||
:map-undo map.txt /*:map-undo*
|
||||
:map-verbose map.txt /*:map-verbose*
|
||||
@@ -2208,6 +2218,8 @@ $VIMRUNTIME starting.txt /*$VIMRUNTIME*
|
||||
:nnoremenu gui.txt /*:nnoremenu*
|
||||
:no map.txt /*:no*
|
||||
:no! map.txt /*:no!*
|
||||
:noa autocmd.txt /*:noa*
|
||||
:noautocmd autocmd.txt /*:noautocmd*
|
||||
:noh pattern.txt /*:noh*
|
||||
:nohlsearch pattern.txt /*:nohlsearch*
|
||||
:norea map.txt /*:norea*
|
||||
@@ -2468,6 +2480,7 @@ $VIMRUNTIME starting.txt /*$VIMRUNTIME*
|
||||
:stag windows.txt /*:stag*
|
||||
:star repeat.txt /*:star*
|
||||
:start insert.txt /*:start*
|
||||
:startgreplace insert.txt /*:startgreplace*
|
||||
:startinsert insert.txt /*:startinsert*
|
||||
:startreplace insert.txt /*:startreplace*
|
||||
:stj tagsrch.txt /*:stj*
|
||||
@@ -2695,6 +2708,8 @@ $VIMRUNTIME starting.txt /*$VIMRUNTIME*
|
||||
<< change.txt /*<<*
|
||||
<> intro.txt /*<>*
|
||||
<A- intro.txt /*<A-*
|
||||
<A-LeftMouse> term.txt /*<A-LeftMouse>*
|
||||
<A-RightMouse> term.txt /*<A-RightMouse>*
|
||||
<BS> motion.txt /*<BS>*
|
||||
<Bar> intro.txt /*<Bar>*
|
||||
<Bslash> intro.txt /*<Bslash>*
|
||||
@@ -3033,7 +3048,6 @@ CursorHold autocmd.txt /*CursorHold*
|
||||
CursorHold-example windows.txt /*CursorHold-example*
|
||||
CursorIM mbyte.txt /*CursorIM*
|
||||
D change.txt /*D*
|
||||
DCOP gui_x11.txt /*DCOP*
|
||||
DOS os_dos.txt /*DOS*
|
||||
DOS-format editing.txt /*DOS-format*
|
||||
DOS-format-write editing.txt /*DOS-format-write*
|
||||
@@ -3774,6 +3788,7 @@ E77 message.txt /*E77*
|
||||
E770 spell.txt /*E770*
|
||||
E771 spell.txt /*E771*
|
||||
E772 spell.txt /*E772*
|
||||
E773 recover.txt /*E773*
|
||||
E78 motion.txt /*E78*
|
||||
E79 message.txt /*E79*
|
||||
E80 message.txt /*E80*
|
||||
@@ -3974,8 +3989,11 @@ Select visual.txt /*Select*
|
||||
Select-mode visual.txt /*Select-mode*
|
||||
Select-mode-mapping visual.txt /*Select-mode-mapping*
|
||||
Session starting.txt /*Session*
|
||||
SessionLoad-variable starting.txt /*SessionLoad-variable*
|
||||
SessionLoadPost autocmd.txt /*SessionLoadPost*
|
||||
StdinReadPost autocmd.txt /*StdinReadPost*
|
||||
StdinReadPre autocmd.txt /*StdinReadPre*
|
||||
SwapExists autocmd.txt /*SwapExists*
|
||||
Syntax autocmd.txt /*Syntax*
|
||||
T motion.txt /*T*
|
||||
TCL if_tcl.txt /*TCL*
|
||||
@@ -4194,7 +4212,6 @@ alt-input debugger.txt /*alt-input*
|
||||
alternate-file editing.txt /*alternate-file*
|
||||
amiga-window starting.txt /*amiga-window*
|
||||
ant.vim syntax.txt /*ant.vim*
|
||||
antialias gui_x11.txt /*antialias*
|
||||
ap motion.txt /*ap*
|
||||
apache.vim syntax.txt /*apache.vim*
|
||||
append() eval.txt /*append()*
|
||||
@@ -4225,7 +4242,9 @@ autocmd-buffer-local autocmd.txt /*autocmd-buffer-local*
|
||||
autocmd-buflocal autocmd.txt /*autocmd-buflocal*
|
||||
autocmd-changes autocmd.txt /*autocmd-changes*
|
||||
autocmd-define autocmd.txt /*autocmd-define*
|
||||
autocmd-disable autocmd.txt /*autocmd-disable*
|
||||
autocmd-events autocmd.txt /*autocmd-events*
|
||||
autocmd-events-abc autocmd.txt /*autocmd-events-abc*
|
||||
autocmd-execute autocmd.txt /*autocmd-execute*
|
||||
autocmd-groups autocmd.txt /*autocmd-groups*
|
||||
autocmd-intro autocmd.txt /*autocmd-intro*
|
||||
@@ -4529,6 +4548,7 @@ cpo-K options.txt /*cpo-K*
|
||||
cpo-L options.txt /*cpo-L*
|
||||
cpo-M options.txt /*cpo-M*
|
||||
cpo-O options.txt /*cpo-O*
|
||||
cpo-P options.txt /*cpo-P*
|
||||
cpo-R options.txt /*cpo-R*
|
||||
cpo-S options.txt /*cpo-S*
|
||||
cpo-W options.txt /*cpo-W*
|
||||
@@ -5132,6 +5152,7 @@ g:netrw_sort_by pi_netrw.txt /*g:netrw_sort_by*
|
||||
g:netrw_sort_direction pi_netrw.txt /*g:netrw_sort_direction*
|
||||
g:netrw_sort_sequence pi_netrw.txt /*g:netrw_sort_sequence*
|
||||
g:netrw_ssh_browse_reject pi_netrw.txt /*g:netrw_ssh_browse_reject*
|
||||
g:netrw_ssh_cmd pi_netrw.txt /*g:netrw_ssh_cmd*
|
||||
g:netrw_timefmt pi_netrw.txt /*g:netrw_timefmt*
|
||||
g:netrw_uid pi_netrw.txt /*g:netrw_uid*
|
||||
g:netrw_use_nt_rcp pi_netrw.txt /*g:netrw_use_nt_rcp*
|
||||
@@ -5149,6 +5170,7 @@ g<Up> motion.txt /*g<Up>*
|
||||
g? change.txt /*g?*
|
||||
g?? change.txt /*g??*
|
||||
g?g? change.txt /*g?g?*
|
||||
g@ map.txt /*g@*
|
||||
gD pattern.txt /*gD*
|
||||
gE motion.txt /*gE*
|
||||
gH visual.txt /*gH*
|
||||
@@ -5620,7 +5642,6 @@ jumpto-diffs diff.txt /*jumpto-diffs*
|
||||
k motion.txt /*k*
|
||||
kcc uganda.txt /*kcc*
|
||||
kde gui_x11.txt /*kde*
|
||||
kde-toolbar gui_x11.txt /*kde-toolbar*
|
||||
key-codes intro.txt /*key-codes*
|
||||
key-codes-changed version4.txt /*key-codes-changed*
|
||||
key-mapping map.txt /*key-mapping*
|
||||
@@ -5971,7 +5992,6 @@ new-5 version5.txt /*new-5*
|
||||
new-6 version6.txt /*new-6*
|
||||
new-7 version7.txt /*new-7*
|
||||
new-GTK-GUI version5.txt /*new-GTK-GUI*
|
||||
new-KDE version7.txt /*new-KDE*
|
||||
new-MzScheme version7.txt /*new-MzScheme*
|
||||
new-Select-mode version5.txt /*new-Select-mode*
|
||||
new-View version6.txt /*new-View*
|
||||
@@ -5984,6 +6004,7 @@ new-commands-5.4 version5.txt /*new-commands-5.4*
|
||||
new-debug-itf version6.txt /*new-debug-itf*
|
||||
new-debug-mode version6.txt /*new-debug-mode*
|
||||
new-debug-support version7.txt /*new-debug-support*
|
||||
new-define-operator version7.txt /*new-define-operator*
|
||||
new-diff-mode version6.txt /*new-diff-mode*
|
||||
new-encryption version5.txt /*new-encryption*
|
||||
new-evim version6.txt /*new-evim*
|
||||
@@ -6566,7 +6587,10 @@ substitute-CR version6.txt /*substitute-CR*
|
||||
suffixes cmdline.txt /*suffixes*
|
||||
suspend starting.txt /*suspend*
|
||||
swap-file recover.txt /*swap-file*
|
||||
swapchoice-variable eval.txt /*swapchoice-variable*
|
||||
swapcommand-variable eval.txt /*swapcommand-variable*
|
||||
swapfile-changed version4.txt /*swapfile-changed*
|
||||
swapname-variable eval.txt /*swapname-variable*
|
||||
syn-sync-grouphere syntax.txt /*syn-sync-grouphere*
|
||||
syn-sync-groupthere syntax.txt /*syn-sync-groupthere*
|
||||
syn-sync-linecont syntax.txt /*syn-sync-linecont*
|
||||
@@ -6771,6 +6795,13 @@ tags-file-format tagsrch.txt /*tags-file-format*
|
||||
tags-option tagsrch.txt /*tags-option*
|
||||
tagsrch.txt tagsrch.txt /*tagsrch.txt*
|
||||
tagstack tagsrch.txt /*tagstack*
|
||||
tar pi_tar.txt /*tar*
|
||||
tar-contents pi_tar.txt /*tar-contents*
|
||||
tar-copyright pi_tar.txt /*tar-copyright*
|
||||
tar-history pi_tar.txt /*tar-history*
|
||||
tar-manual pi_tar.txt /*tar-manual*
|
||||
tar-usage pi_tar.txt /*tar-usage*
|
||||
tar.txt pi_tar.txt /*tar.txt*
|
||||
tcl if_tcl.txt /*tcl*
|
||||
tcl-beep if_tcl.txt /*tcl-beep*
|
||||
tcl-buffer if_tcl.txt /*tcl-buffer*
|
||||
@@ -6981,6 +7012,9 @@ v:scrollstart eval.txt /*v:scrollstart*
|
||||
v:servername eval.txt /*v:servername*
|
||||
v:shell_error eval.txt /*v:shell_error*
|
||||
v:statusmsg eval.txt /*v:statusmsg*
|
||||
v:swapchoice eval.txt /*v:swapchoice*
|
||||
v:swapcommand eval.txt /*v:swapcommand*
|
||||
v:swapname eval.txt /*v:swapname*
|
||||
v:termresponse eval.txt /*v:termresponse*
|
||||
v:this_session eval.txt /*v:this_session*
|
||||
v:throwpoint eval.txt /*v:throwpoint*
|
||||
@@ -7129,7 +7163,6 @@ vim-announce intro.txt /*vim-announce*
|
||||
vim-arguments starting.txt /*vim-arguments*
|
||||
vim-default-editor gui_w32.txt /*vim-default-editor*
|
||||
vim-dev intro.txt /*vim-dev*
|
||||
vim-kpart gui_x11.txt /*vim-kpart*
|
||||
vim-mac intro.txt /*vim-mac*
|
||||
vim-modes intro.txt /*vim-modes*
|
||||
vim-modes-intro intro.txt /*vim-modes-intro*
|
||||
@@ -7149,7 +7182,6 @@ viminfo-file-marks starting.txt /*viminfo-file-marks*
|
||||
viminfo-file-name starting.txt /*viminfo-file-name*
|
||||
viminfo-read starting.txt /*viminfo-read*
|
||||
viminfo-write starting.txt /*viminfo-write*
|
||||
vimpart gui_x11.txt /*vimpart*
|
||||
vimrc starting.txt /*vimrc*
|
||||
vimrc-filetype usr_05.txt /*vimrc-filetype*
|
||||
vimrc-intro usr_05.txt /*vimrc-intro*
|
||||
@@ -7320,7 +7352,7 @@ z/OS os_390.txt /*z\/OS*
|
||||
z<CR> scroll.txt /*z<CR>*
|
||||
z<Left> scroll.txt /*z<Left>*
|
||||
z<Right> scroll.txt /*z<Right>*
|
||||
z? spell.txt /*z?*
|
||||
z= spell.txt /*z=*
|
||||
zA fold.txt /*zA*
|
||||
zC fold.txt /*zC*
|
||||
zD fold.txt /*zD*
|
||||
@@ -7356,6 +7388,13 @@ zf fold.txt /*zf*
|
||||
zg spell.txt /*zg*
|
||||
zh scroll.txt /*zh*
|
||||
zi fold.txt /*zi*
|
||||
zip pi_zip.txt /*zip*
|
||||
zip-contents pi_zip.txt /*zip-contents*
|
||||
zip-copyright pi_zip.txt /*zip-copyright*
|
||||
zip-history pi_zip.txt /*zip-history*
|
||||
zip-manual pi_zip.txt /*zip-manual*
|
||||
zip-usage pi_zip.txt /*zip-usage*
|
||||
zip.txt pi_zip.txt /*zip.txt*
|
||||
zj fold.txt /*zj*
|
||||
zk fold.txt /*zk*
|
||||
zl scroll.txt /*zl*
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
*term.txt* For Vim version 7.0aa. Last change: 2005 Aug 27
|
||||
*term.txt* For Vim version 7.0aa. Last change: 2005 Dec 14
|
||||
|
||||
|
||||
VIM REFERENCE MANUAL by Bram Moolenaar
|
||||
@@ -684,6 +684,7 @@ event position selection change action ~
|
||||
<MiddleMouse> yes if not active no put
|
||||
<MiddleMouse> yes if active no yank and put
|
||||
<RightMouse> yes start or extend yes
|
||||
<A-RightMouse> yes start or extend blockw. yes *<A-RightMouse>*
|
||||
<S-RightMouse> yes no change yes "#" (2) *<S-RightMouse>*
|
||||
<C-RightMouse> no no change no "CTRL-T"
|
||||
<RightDrag> yes extend no *<RightDrag>*
|
||||
@@ -699,6 +700,7 @@ event position selection change action ~
|
||||
<LeftRelease> yes start or extend (1) no like CTRL-O (1)
|
||||
<MiddleMouse> no (cannot be active) no put register
|
||||
<RightMouse> yes start or extend yes like CTRL-O
|
||||
<A-RightMouse> yes start or extend blockw. yes
|
||||
<S-RightMouse> yes (cannot be active) yes "CTRL-O#" (2)
|
||||
<C-RightMouse> no (cannot be active) no "CTRL-O CTRL-T"
|
||||
|
||||
@@ -713,12 +715,14 @@ Normal Mode:
|
||||
event position selection change action ~
|
||||
cursor window ~
|
||||
<S-LeftMouse> yes start or extend (1) no
|
||||
<A-LeftMouse> yes start or extend blockw. no *<A-LeftMouse>*
|
||||
<RightMouse> no popup menu no
|
||||
|
||||
Insert or Replace Mode:
|
||||
event position selection change action ~
|
||||
cursor window ~
|
||||
<S-LeftMouse> yes start or extend (1) no like CTRL-O (1)
|
||||
<A-LeftMouse> yes start or extend blockw. no
|
||||
<RightMouse> no popup menu no
|
||||
|
||||
(1) only if mouse pointer moved since press
|
||||
@@ -744,6 +748,12 @@ Visual area to be extended. When 'mousemodel' is "popup", the left button has
|
||||
to be used while keeping the shift key pressed. When clicking in a window
|
||||
which is editing another buffer, the Visual or Select mode is stopped.
|
||||
|
||||
In Normal, Visual and Select mode clicking the right mouse button with the alt
|
||||
key pressed causes the Visual area to become blockwise. When 'mousemodel is
|
||||
"popup" the left button has to be used with the alt key. Note that this won't
|
||||
work on systems where the window manager uses the mouse when the alt key is
|
||||
pressed (it may move the window).
|
||||
|
||||
*double-click*
|
||||
Double, triple and quadruple clicks are supported when the GUI is active,
|
||||
for MS-DOS and Win32, and for an xterm (if the gettimeofday() function is
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
*todo.txt* For Vim version 7.0aa. Last change: 2005 Nov 23
|
||||
*todo.txt* For Vim version 7.0aa. Last change: 2005 Dec 23
|
||||
|
||||
|
||||
VIM REFERENCE MANUAL by Bram Moolenaar
|
||||
@@ -30,40 +30,20 @@ be worked on, but only if you sponsor Vim development. See |sponsor|.
|
||||
*known-bugs*
|
||||
-------------------- Known bugs and current work -----------------------
|
||||
|
||||
Using chown() is unsafe. (Jinpeng Wei)
|
||||
ex_cmds.c: viminfo tempfile: use mch_open(O_EXCL) and fdopen()
|
||||
fileio.c: use fchown() instead of chown()
|
||||
vim.h: define O_NOFOLLOW if needed. Not in Vim 6.4?
|
||||
|
||||
Go over all changes between 6.3 and 6.4 and make sure they are included in 7.
|
||||
|
||||
'statusline' is drawn over the Omni menu.
|
||||
|
||||
Cygwin and Mac OS/X may preserve case for file names but ignore case
|
||||
differences. Use Amiga code?
|
||||
|
||||
"make unixall": remove split in floppy-size archives.
|
||||
|
||||
To support mapping <F4> to be used as <F4>{motion}: Add operator that
|
||||
executes a user defined function. '[ and '] marks are at start and end of
|
||||
text. ":map <F4> :set opfunc=MyOp<CR>gy".
|
||||
|
||||
Patch from Yasuhiro Matsumoto: ":e ++enc=xxx" keeps encoding for conversion
|
||||
errors and illegal bytes. How about replacing bytes with '?' or not?
|
||||
|
||||
ccomplete:
|
||||
- When an option is set: In completion mode and the user types (identifier)
|
||||
characters, advance to the first match instead of removing the popup menu.
|
||||
If there is no match remove the selection. (Yegappan Lakshmanan)
|
||||
- Complete the longest common match instead of the first match?
|
||||
For all kinds of completions? Configurable?
|
||||
- !_TAG_FILE_FORMAT and it's ilk are listed in the global completions
|
||||
- When completing something that is a structure, add the "." or "->".
|
||||
- When a typedef or struct is local to a file only use it in that file?
|
||||
Can't reproduce it right now...
|
||||
- Window resize when poup is displayed
|
||||
- page-up / page-down
|
||||
- When completing something that is a structure, add the "." or "->" right
|
||||
away. How to figure out if it's a pointer or not?
|
||||
- When a typedef or struct is local to a file only use it in that file?
|
||||
|
||||
spelling:
|
||||
- When a recognized word ends in a . don't have 'spellcapcheck" match it.
|
||||
- Use KEEPCASE instead of "KEP". It applies to the word including affixes
|
||||
Hunspell also uses it.
|
||||
- Hunspell has NOSUGGEST flag (use for obscene words?)
|
||||
@@ -71,15 +51,22 @@ spelling:
|
||||
- Look into hungarian dictionary:
|
||||
http://magyarispell.sourceforge.net/rc3-beta2.zip
|
||||
- Support breakpoint character <20> 0xb7 and ignore it?
|
||||
- Dutch word list should be available here: http://www.woordenlijst.org/
|
||||
8 Alternate Dutch word list at www.nederlandsewoorden.nl (use script to
|
||||
obtain). But new Myspell wordlist will come (Hagen)
|
||||
- Finding suggestions with sound folding is slow. Somehow store the
|
||||
sound-folded words and link to the words it comes from?
|
||||
- Also use the spelling dictionary for dictionary completion.
|
||||
- Have "zg" and "zw" report the file that was modified. (Marvin Renich)
|
||||
- Add a command like "zg" that selects one of the files 'spellfile'.
|
||||
|
||||
When editing a file "a" that is a symbolic link to "b", while another Vim is
|
||||
editing "b", there is no warning. Follow symlink to make swap file name?
|
||||
Patch from Stefano Zacchiroli.
|
||||
GTK: get an X error while exiting quickly after starting (running the tests).
|
||||
Caused by new GTK library?
|
||||
X Error: BadWindow (invalid Window parameter) 3
|
||||
|
||||
Support saving and restoring session for X windows? It should work to do
|
||||
":mksession" and use "-S fname" for the restart command. The
|
||||
gui_x11_wm_protocol_handler() already takes care of the rest.
|
||||
global_event_filter() for GTK.
|
||||
|
||||
In diff mode deleting lines is very slow. E.g., when diffing two .po files
|
||||
and then sourcing po/cleaup.vim.
|
||||
@@ -100,15 +87,22 @@ Mac unicode patch (Da Woon Jung):
|
||||
- With 'nopaste' pasting is wrong, with 'paste' Command-V doesn't work.
|
||||
(Alan Schmitt)
|
||||
|
||||
Patch to add a few flags to search(). (Benji Fisher, Nov 22)
|
||||
Patch to add a few flags to search(). (Benji Fisher, Nov 29, doc update Dec 1)
|
||||
Also add search???() function that returns list with lnum and col.
|
||||
|
||||
Win32: Use the free downloadable compiler 7.1. Figure out how to do debugging
|
||||
(with Agide?) and describe it. (George Reilly)
|
||||
Try out using the free MS compiler and debugger, using Make_mvc.mak.
|
||||
Try using Visual C++ Express 2005. (Ilya Bobir Dec 20)
|
||||
Disadvantage: Annoying warning messages, requires ..._NO_DEPRECATE, this
|
||||
is not a standard compiler.
|
||||
|
||||
Win32: Check that installer puts menu items in "all users" dir when possible,
|
||||
not administrator dir.
|
||||
|
||||
CTRL-X CTRL-L only completes from loaded buffers. Make it work for unloaded
|
||||
buffers too?
|
||||
|
||||
Autoload:
|
||||
- Add a Vim script in $VIMRUNTIME/tools that takes a file with a list of
|
||||
script names and a help file and produces a script that can be sourced to
|
||||
@@ -123,6 +117,14 @@ Autoload:
|
||||
Add ":smap", Select mode mapping? Otherwise: ":sunmap", so that Visual mode
|
||||
mappings for normal keys can be removed from Select mode.
|
||||
|
||||
When expanding on the command line, recognize shell commands, such as ":!cmd".
|
||||
Complete command names by searching in $PATH. When completing file names
|
||||
escape special characters ";&<>(){}". (Adri Verhoef)
|
||||
|
||||
Are there more commands where v:swapcommand can be set to something useful?
|
||||
|
||||
Put autocommand event names in a hashtable for faster lookup?
|
||||
|
||||
Awaiting response:
|
||||
- Win32: tearoff menu window should have a scrollbar when it's taller than
|
||||
the screen.
|
||||
@@ -223,6 +225,8 @@ PLANNED FOR VERSION 7.0:
|
||||
Only difficult thing: When going back in time, how to find the previous
|
||||
text state in the tree?
|
||||
Show the list of changes in a window to be able to select a version?
|
||||
Also: See ":e" as a change operation, find the changes and add them to the
|
||||
undo info. Needed for when an external tool changes the file.
|
||||
- PERSISTENT UNDO: store undo in a file.
|
||||
Use timestamps, so that a version a certain time ago can be found and info
|
||||
before some time/date can be flushed. 'undopersist' gives maximum time to
|
||||
@@ -266,6 +270,7 @@ PLANNED FOR VERSION 7.0:
|
||||
Roman, 2004 Dec 15. Should then also work with Oracle Jdeveloper, see JSR
|
||||
198 standard http://www.jcp.org/en/jsr/detail?id=198.
|
||||
Eclim does it: http://eclim.sourceforge.net/ (Eric Van Dewoestine)
|
||||
Plugin that uses a terminal emulator: http://vimplugin.sf.net
|
||||
- STICKY CURSOR: Add a way of scrolling that leaves the cursor where it is.
|
||||
Especially when using the scrollbar. Typing a cursor-movement command
|
||||
scrolls back to where the cursor is.
|
||||
@@ -289,7 +294,7 @@ PLANNED FOR VERSION 7.0:
|
||||
- Running a shell command from the GUI still has limitations. Look into how
|
||||
the Vim shell project can help: http://vimshell.wana.at
|
||||
- Displaying size of Visual area: use 24-33 column display.
|
||||
When selecting multiple lines, up to about a screenfull, also count the
|
||||
When selecting multiple lines, up to about a screenful, also count the
|
||||
characters.
|
||||
- Mac: Unicode input and display (Eckehard Berns, 2004 June 27)
|
||||
Other patch from Da Woon Jung, 2005 Jan 16.
|
||||
@@ -360,7 +365,7 @@ Win32: In the generated batch files, use $VIMRUNTIME if it's set. Examples by
|
||||
Mathias Michaelis (2004 Sep 6)
|
||||
Also place vimtutor.bat in %windir%?
|
||||
|
||||
Add gui_mch_browsedir() for Motif, KDE and Mac OS/X.
|
||||
Add gui_mch_browsedir() for Motif, Mac OS/X.
|
||||
|
||||
Add extra list of file locations. A bit like the quickfix list, but there is
|
||||
one per window. Can be used with:
|
||||
@@ -575,14 +580,6 @@ GTK+ GUI known bugs:
|
||||
when it is longer than 4000 characters. Works OK from gvim to gvim and
|
||||
vim to vim. Pasting through xterm (using the shift key) also works.
|
||||
It starts working after GTK gvim loses the selection and gains it again.
|
||||
7 DND doesn't work with KDE (also with GTK 1).
|
||||
|
||||
KDE GUI known bugs:
|
||||
- There is no active maintenance and "yzis" is supposed to replace it.
|
||||
- With the default 'guifont' value bold text differs in size from normal
|
||||
text, causing the display to be messed up.
|
||||
- Error messages when starting up. The "tip of the day" box is empty.
|
||||
- Encoding of menu items needs to be converted. (Yasuhiro Matsumoto)
|
||||
|
||||
Win32 GUI known bugs:
|
||||
8 On Windows 98 the unicows library is needed to support functions with UCS2
|
||||
@@ -873,8 +870,6 @@ MSDOS, OS/2 and Win32:
|
||||
8 When editing a file on a Samba server, case might matter. ":e file"
|
||||
followed by ":e FILE" will edit "file" again, even though "FILE" might be
|
||||
another one. Set last used name in buflist_new()? Fix do_ecmd(), etc.
|
||||
8 ":mksession" generates a "cd" command where "aa\#bb" means directory "#bb"
|
||||
in "aa", but it's used as "aa#bb". (Ronald Hoellwarth)
|
||||
8 When a buffer is editing a file like "ftp://mach/file", which is not going
|
||||
to be used like a normal file name, don't change the slashes to
|
||||
backslashes. (Ronald Hoellwarth)
|
||||
@@ -926,7 +921,6 @@ Amiga:
|
||||
|
||||
|
||||
Macintosh:
|
||||
7 Implement "undercurl".
|
||||
7 Patch to add 'transparency' option. Disadvantage: it's slow. (Eckehard
|
||||
Berns, 2004 May 9) http://ecki.to/vim/TransBack-2004-05-09.diff
|
||||
Needs more work. Add when someone really wants it.
|
||||
@@ -1066,8 +1060,6 @@ Macintosh:
|
||||
one.
|
||||
7 When 'showbreak' is set, the amount of space a Tab occupies changes.
|
||||
Should work like 'showbreak' is inserted without changing the Tabs.
|
||||
7 When there is a "help.txt" window in a session file, restoring that
|
||||
session will not get the "LOCAL ADDITIONS" back.
|
||||
7 When 'mousefocus' is set and switching to another window with a typed
|
||||
command, the mouse pointer may be moved to a part of the window that's
|
||||
covered by another window and we lose focus. Only move in the y
|
||||
@@ -1471,8 +1463,8 @@ Diff mode:
|
||||
|
||||
|
||||
Folding:
|
||||
(commands still available: zg zG zI zJ zK zp zP zq zQ zV zw zW zy zY;
|
||||
secondary: zB zS zT zZ)
|
||||
(commands still available: zI zJ zK zp zP zq zQ zV zy zY;
|
||||
secondary: zB zS zT zZ, z=)
|
||||
8 Add "z/" and "z?" for searching in not folded text only.
|
||||
8 Add different highlighting for a fold line depending on the fold level.
|
||||
(Noel Henson)
|
||||
@@ -1853,7 +1845,6 @@ Built-in script language:
|
||||
7 Add function to generate unique number (date in milliseconds).
|
||||
7 Automatically load a function from a file when it is called. Need an
|
||||
option for the search path. (Sekera)
|
||||
7 Persistent variables: "p:var"; stored in viminfo file and sessions files.
|
||||
|
||||
|
||||
Robustness:
|
||||
@@ -1939,7 +1930,7 @@ Performance:
|
||||
- highlighting "~/vim/test/longline.tex", "~/vim/test/scwoop.tcl" and
|
||||
"~/vim/test/lockup.pl".
|
||||
- loading a syntax file to highlight all words not from a dictionary.
|
||||
- editing a vim script with syntax highlighting on (loading vim.vim).
|
||||
- editing a Vim script with syntax highlighting on (loading vim.vim).
|
||||
7 Screen updating can be further improved by only redrawing lines that were
|
||||
changed (and lines after them, when syntax highlighting was used, and it
|
||||
changed).
|
||||
@@ -2000,7 +1991,7 @@ Messages:
|
||||
typing, error messages must be switched back on.
|
||||
Also a flag to ignore error messages for shell commands (for mappings).
|
||||
- Option to set time for emsg() sleep. Interrupt sleep when key is typed?
|
||||
sleep before second message?
|
||||
Sleep before second message?
|
||||
8 In Ex silent mode or when reading commands from a file, what exactly is
|
||||
not printed and what is? Check ":print", ":set all", ":args", ":vers",
|
||||
etc. At least there should be no prompt. (Smulders) And don't clear the
|
||||
@@ -2594,7 +2585,7 @@ Insert mode:
|
||||
continuation lines. Allows changing 'tabstop' without messing up the
|
||||
indents.
|
||||
And/or: Add option to copy indent as-is, without changing spaces to tabs.
|
||||
also for 'autoindent'. 'keeptabs': when set don't change the tabs and
|
||||
Also for 'autoindent'. 'keeptabs': when set don't change the tabs and
|
||||
spaces used for indent, when the indent remains the same or increases.
|
||||
|
||||
|
||||
@@ -2677,7 +2668,7 @@ Visual mode:
|
||||
behave like 'scrolloff' is one, so that the text scrolls when the pointer
|
||||
is in the top line.
|
||||
8 When using "I" or "A" in Visual block mode, short lines do not get the new
|
||||
text. make it possible to add the text to short lines too, with padding
|
||||
text. Make it possible to add the text to short lines too, with padding
|
||||
where needed.
|
||||
7 With a Visual block selected, "2x" deletes a block of double the width,
|
||||
"3y" yanks a block of triple width, etc.
|
||||
@@ -3069,20 +3060,27 @@ Modelines:
|
||||
or not. Same for .exrc in local dir.
|
||||
|
||||
|
||||
Options:
|
||||
8 Make ":mksession" store buffer-specific options for the specific buffer.
|
||||
Sessions:
|
||||
8 DOS/Windows: ":mksession" generates a "cd" command where "aa\#bb" means
|
||||
directory "#bb" in "aa", but it's used as "aa#bb". (Ronald Hoellwarth)
|
||||
7 When there is a "help.txt" window in a session file, restoring that
|
||||
session will not get the "LOCAL ADDITIONS" back.
|
||||
8 With ":mksession" always store the 'sessionoptions' option, even when
|
||||
"options" isn't in it. (St-Amant)
|
||||
7 ":with option=value | command": temporarily set an option value and
|
||||
restore it after the command has executed.
|
||||
7 Setting an option always sets "w_set_curswant", while this is only
|
||||
required for a few options. Only do it for those options to avoid the
|
||||
side effect.
|
||||
8 When using ":mksession", also store a command to reset all options to
|
||||
their default value, before setting the options that are not at their
|
||||
default value.
|
||||
7 With ":mksession" also store the tag stack and jump history. (Michal
|
||||
Malecki)
|
||||
7 Persistent variables: "p:var"; stored in viminfo file and sessions files.
|
||||
|
||||
|
||||
Options:
|
||||
7 ":with option=value | command": temporarily set an option value and
|
||||
restore it after the command has executed.
|
||||
7 Setting an option always sets "w_set_curswant", while this is only
|
||||
required for a few options. Only do it for those options to avoid the
|
||||
side effect.
|
||||
8 Make "old" number options that really give a number of effects into string
|
||||
options that are a comma separated list. The old number values should
|
||||
also be supported.
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
*usr_41.txt* For Vim version 7.0aa. Last change: 2005 Jun 09
|
||||
*usr_41.txt* For Vim version 7.0aa. Last change: 2005 Nov 30
|
||||
|
||||
VIM USER MANUAL - by Bram Moolenaar
|
||||
|
||||
@@ -2114,7 +2114,7 @@ a user to overrule or add to the default file. The default files start with: >
|
||||
When you write a compiler file and put it in your personal runtime directory
|
||||
(e.g., ~/.vim/compiler for Unix), you set the "current_compiler" variable to
|
||||
make the default file skip the settings.
|
||||
|
||||
*:CompilerSet*
|
||||
The second mechanism is to use ":set" for ":compiler!" and ":setlocal" for
|
||||
":compiler". Vim defines the ":CompilerSet" user command for this. However,
|
||||
older Vim versions don't, thus your plugin should define it then. This is an
|
||||
@@ -2139,7 +2139,7 @@ that could be ~/.vim/after/compiler.
|
||||
*41.14* Writing a plugin that loads quickly *write-plugin-quickload*
|
||||
|
||||
A plugin may grow and become quite long. The startup delay may become
|
||||
noticable, while you hardly every use the plugin. Then it's time for a
|
||||
noticeable, while you hardly every use the plugin. Then it's time for a
|
||||
quickload plugin.
|
||||
|
||||
The basic idea is that the plugin is loaded twice. The first time user
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
*version7.txt* For Vim version 7.0aa. Last change: 2005 Nov 23
|
||||
*version7.txt* For Vim version 7.0aa. Last change: 2005 Dec 23
|
||||
|
||||
|
||||
VIM REFERENCE MANUAL by Bram Moolenaar
|
||||
@@ -21,7 +21,6 @@ NEW FEATURES |new-7|
|
||||
Vim script enhancements |new-vim-script|
|
||||
Spell checking |new-spell|
|
||||
Omni completion |new-omni-completion|
|
||||
KDE support |new-KDE|
|
||||
MzScheme interface |new-MzScheme|
|
||||
Printing multi-byte text |new-print-multi-byte|
|
||||
Translated manual pages |new-manpage-trans|
|
||||
@@ -30,6 +29,7 @@ Scroll back in messages |new-scroll-back|
|
||||
POSIX compatibility |new-posix|
|
||||
Debugger support |new-debug-support|
|
||||
Remote file explorer |new-netrw-explore|
|
||||
Define an operator |new-define-operator|
|
||||
Various new items |new-items-7|
|
||||
|
||||
IMPROVEMENTS |improvements-7|
|
||||
@@ -67,6 +67,8 @@ results in "a'b".
|
||||
When overwriting a file with ":w! fname" there was no warning for when "fname"
|
||||
was being edited by another Vim. Vim now gives an error message |E768|.
|
||||
|
||||
The support for Mac OS 9 has been removed.
|
||||
|
||||
|
||||
Minor incompatibilities:
|
||||
|
||||
@@ -166,7 +168,7 @@ The 'spellsuggest' option specifies the methods used for making suggestions
|
||||
|
||||
The |[s| and |]s| commands can be used to move to the next or previous error.
|
||||
The |zg| and |zw| commands can be used to add good and wrong words.
|
||||
The |z?| command can be used to correct the word.
|
||||
The |z=| command can be used to correct the word.
|
||||
The |:mkspell| command is used to generate a Vim spell file from word lists.
|
||||
|
||||
The "undercurl" highlighting attribute was added to nicely point out spelling
|
||||
@@ -202,13 +204,6 @@ When the 'completeopt' option contains "menu" then matches for Insert mode
|
||||
completion are displayed in a popup menu.
|
||||
|
||||
|
||||
KDE support *new-KDE*
|
||||
-----------
|
||||
|
||||
Kvim is the KDE version of Vim. It uses the Qt toolkit. See |KVim|.
|
||||
(Thomas Capricelli, Philippe Fremy, Mickael Marchand, Mark Westcott, et al.)
|
||||
|
||||
|
||||
MzScheme interface *new-MzScheme*
|
||||
------------------
|
||||
|
||||
@@ -347,6 +342,18 @@ and a GUI dialog is not possible.
|
||||
The netrw plugin is maintained by Charles Campbell.
|
||||
|
||||
|
||||
Define an operator *new-define-operator*
|
||||
------------------
|
||||
|
||||
Previously it was not possible to define your own operator; a command that is
|
||||
followed by a {motion}. Vim 7 introduces the 'operatorfunc' option and the
|
||||
|g@| operator. This makes it possible to define a mapping that works like an
|
||||
operator. The actual work is then done by a function, which is invoked
|
||||
through the |g@| operator.
|
||||
|
||||
See |:map-operator| for the explanation and an example.
|
||||
|
||||
|
||||
Various new items *new-items-7*
|
||||
-----------------
|
||||
|
||||
@@ -360,6 +367,9 @@ CTRL-W <Enter> In the quickfix window: opens a new window to show the
|
||||
|
||||
|at| and |it| text objects select a block of text between HTML or XML tags.
|
||||
|
||||
<A-LeftMouse> ('mousemodel' "popup" or "popup-setpos")
|
||||
<A-RightMouse> ('mousemodel' "extend")
|
||||
Make a blockwise selection. |<A-LeftMouse>|
|
||||
|
||||
Insert mode commands: ~
|
||||
|
||||
@@ -400,18 +410,15 @@ Ex commands: ~
|
||||
Win32: The ":winpos" command now also works in the console. (Vipin Aravind)
|
||||
|
||||
|:startreplace| Start Replace mode. (Charles Campbell)
|
||||
|:startgreplace| Start Virtual Replace mode.
|
||||
|
||||
|:0file| Removes the name of the buffer. (Charles Campbell)
|
||||
|
||||
|:diffoff| Switch off diff mode in the current window or in all
|
||||
windows.
|
||||
|
||||
|:keepalt| Do not change the alternate file.
|
||||
|
||||
|:delmarks| Delete marks.
|
||||
|
||||
|:sandbox| Command modifier: execute the argument in the sandbox.
|
||||
|
||||
|:exusage| Help for Ex commands (Nvi command).
|
||||
|
||||
|:viusage| Help for Vi commands (Nvi command).
|
||||
@@ -429,6 +436,25 @@ Win32: The ":winpos" command now also works in the console. (Vipin Aravind)
|
||||
Lakshmanan).
|
||||
|
||||
|
||||
Ex command modifiers: ~
|
||||
|
||||
|:keepalt| Do not change the alternate file.
|
||||
|
||||
|:noautocmd| Do not trigger autocommand events.
|
||||
|
||||
|:sandbox| Execute a command in the sandbox.
|
||||
|
||||
|
||||
Ex command arguments: ~
|
||||
|
||||
|++bad| Specify what happens with characters that can't be
|
||||
converted and illegal bytes. (code example by Yasuhiro
|
||||
Matsumoto)
|
||||
Also, when a conversion error occurs or illegal bytes
|
||||
are found include the line number in the error
|
||||
message.
|
||||
|
||||
|
||||
New and extended functions: ~
|
||||
|
||||
|add()| append an item to a List
|
||||
@@ -503,6 +529,7 @@ New autocommand events: ~
|
||||
|ColorScheme| after loading a color scheme
|
||||
|QuickFixCmdPre| before :make, :grep et al. (Ciaran McCreesh)
|
||||
|QuickFixCmdPost| after :make, :grep et al. (Ciaran McCreesh)
|
||||
|SessionLoadPost| after loading a session file. (Yegappan Lakshmanan)
|
||||
|
||||
|
||||
New items in search patterns: ~
|
||||
@@ -574,17 +601,19 @@ Mac: GUI font selector. (Peter Cucka)
|
||||
|
||||
Mac: support for multi-byte characters. (Da Woon Jung)
|
||||
|
||||
GUI font selector for Motif. (Marcin Dalecki)
|
||||
|
||||
Nicer toolbar buttons for Motif. (Marcin Dalecki)
|
||||
|
||||
Mnemonics for the Motif find/replace dialog. (Marcin Dalecki)
|
||||
Mac: Support the xterm mouse in the non-GUI version.
|
||||
|
||||
Mac: better integration with Xcode. Post a fake mouse-up event after the odoc
|
||||
event and the drag receive handler to work around a stall after Vim loads a
|
||||
file. Fixed an off-by-one line number error. (Da Woon Jung)
|
||||
|
||||
Added the t_SI and t_EI escape sequences for starting and ending Insert mode.
|
||||
GUI font selector for Motif. (Marcin Dalecki)
|
||||
|
||||
Nicer toolbar buttons for Motif. (Marcin Dalecki)
|
||||
|
||||
Mnemonics for the Motif find/replace dialog. (Marcin Dalecki)
|
||||
|
||||
To be used to set the cursor shape to a bar or a block. No default values,
|
||||
they are not supported by termcap/terminfo.
|
||||
|
||||
@@ -612,6 +641,14 @@ window height.
|
||||
The |v:scrollstart| variable has been added to help finding the location in
|
||||
your script that causes the hit-enter prompt.
|
||||
|
||||
To make it possible to handle the situation that a file is being edited that
|
||||
is already being edited by another Vim instance, the |SwapExists| event has
|
||||
been added. The |v:swapname|, |v:swapchoice| and |v:swapcommand| variables
|
||||
can be used, for example to use the |client-server| functionality to bring the
|
||||
other Vim to the foreground.
|
||||
When starting Vim with a "-t tag" argument, there is an existing swapfile and
|
||||
the user selects "quit" or "abort" then exit Vim.
|
||||
|
||||
==============================================================================
|
||||
IMPROVEMENTS *improvements-7*
|
||||
|
||||
@@ -636,6 +673,10 @@ few more important commands. Used ideas from Gabriel Zachmann.
|
||||
Unix: When libcall() fails obtain an error message with dlerror() and display
|
||||
it. (Johannes Zellner)
|
||||
|
||||
Mac and Cygwin: When editing an existing file make the file name the same case
|
||||
of the edited file. Thus when typing ":e os_UNIX.c" the file name becomes
|
||||
"os_unix.c".
|
||||
|
||||
Added "nbsp" in 'listchars'. (David Blanchet)
|
||||
|
||||
Added the "acwrite" value for the 'buftype' option. This is for a buffer that
|
||||
@@ -698,6 +739,10 @@ the swap file to indicate it is in the same directory as the edited file. The
|
||||
used path then doesn't matter and the check for editing the same file is much
|
||||
more reliable.
|
||||
|
||||
Unix: When editing a file through a symlink the swap file would use the name
|
||||
of the symlink. Now use the name of the actual file, so that editing the same
|
||||
file twice is detected. (suggestions by Stefano Zacchiroli and James Vega)
|
||||
|
||||
Client-server communication now supports 'encoding'. When setting 'encoding'
|
||||
in a Vim server to "utf-8", and using "vim --remote fname" in a console,
|
||||
"fname" is converted from the console encoding to utf-8. Also allows Vims
|
||||
@@ -849,6 +894,31 @@ in the FileChangedRO autocommand when checking out the file fails.
|
||||
|
||||
Unix: When open() returns EFBIG give an appropriate message.
|
||||
|
||||
":mksession" sets the SessionLoad variable to notify plugins. A modeline is
|
||||
added to the session file to set 'filetype' to "vim".
|
||||
|
||||
In the ATTENTION prompt put the "Delete it" choice before "Quit" to make it
|
||||
more logical. (Robert Webb)
|
||||
|
||||
When appending to a file while the buffer has no name the name of the appended
|
||||
file would be used for the current buffer. But the buffer contents is
|
||||
actually different from the file content. Don't set the file name, unless the
|
||||
'P' flag is present in 'cpoptions'.
|
||||
|
||||
When starting to edit a new file and the directory for the file doesn't exist
|
||||
then Vim will report "[New DIRECTORY]" instead of "[New File] to give the user
|
||||
a hint that something might be wrong.
|
||||
|
||||
Win32: Preserve the hidden attribute of the viminfo file.
|
||||
|
||||
In Insert mode CTRL-A didn't keep the last inserted text when using CTRL-O and
|
||||
then a cursor key. Now keep the previously inserted text if nothing is
|
||||
inserted after the CTRL-O. Allows using CTRL-O commands to move the cursor
|
||||
without losing the last inserted text.
|
||||
|
||||
The exists() function now supports checking for autocmd group definition
|
||||
and for supported autocommand events. (Yegappan Lakshmanan)
|
||||
|
||||
==============================================================================
|
||||
COMPILE TIME CHANGES *compile-changes-7*
|
||||
|
||||
@@ -1345,7 +1415,7 @@ When reporting a conversion error the line number of the last error could be
|
||||
given. Now report the first encountered error.
|
||||
|
||||
When using ":e ++enc=name file" and iconv() was used for conversion an error
|
||||
caused a fallback to no conversion. Now replace a character with '?' and
|
||||
caused a fall-back to no conversion. Now replace a character with '?' and
|
||||
continue.
|
||||
|
||||
When opening a new buffer the local value of 'bomb' was not initialized from
|
||||
@@ -1407,4 +1477,44 @@ available.
|
||||
In an empty line "ix<CTRL-O>0" moved the cursor to after the line instead of
|
||||
sticking to the first column.
|
||||
|
||||
When using ":wq" and a BufWriteCmd autocmd uses inputsecret() the text was
|
||||
echoed anyway. Set terminal to raw mode in getcmdline().
|
||||
|
||||
Unix: ":w a;b~c" caused an error in expanding wildcards.
|
||||
|
||||
When appending to a file with ":w >>fname" in a buffer without a name, causing
|
||||
the buffer to use "fname", the modified flag was reset.
|
||||
|
||||
When appending to to current file the "not edited" flag would be reset.
|
||||
":w" would overwrite the file accidentally.
|
||||
|
||||
Unix: When filtering text with an external command Vim would still read input,
|
||||
causing text typed for the command (e.g., a password) to be eaten and echoed.
|
||||
Don't read input when the terminal is in cooked mode.
|
||||
|
||||
The Cygwin version of xxd used CR/LF line separators. (Corinna Vinschen)
|
||||
|
||||
Unix: When filtering text through a shell command some resulting text may be
|
||||
dropped. Now after detecting that the child has exited try reading some more
|
||||
of its output.
|
||||
|
||||
When inside input(), using "CTRL-R =" and the expression throws an exception
|
||||
the command line was not abandoned but it wasn't used either. Now abandon
|
||||
typing the command line.
|
||||
|
||||
'delcombine' was also used in Visual and Select mode and for commands like
|
||||
"cl". That was illogical and has been disabled.
|
||||
|
||||
When recording while a CursorHold autocommand was defined special keys would
|
||||
appear in the register. Now the CursorHold event is not triggered while
|
||||
recording.
|
||||
|
||||
Unix: the src/configure script used ${srcdir-.}, not all shells understand
|
||||
that. Use ${srcdir:-.} instead.
|
||||
|
||||
When editing file "a" which is a symlink to file "b" that doesn't exist,
|
||||
writing file "a" to create "b" and then ":split b" resulted in two buffers on
|
||||
the same file with two different swapfile names. Now set the inode in the
|
||||
buffer when creating a new file.
|
||||
|
||||
vim:tw=78:ts=8:ft=help:norl:
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
" Vim filetype plugin file
|
||||
" Language: Perl
|
||||
" Maintainer: Dan Sharp <dwsharp at hotmail dot com>
|
||||
" Last Change: 2004 Dec 06
|
||||
" Last Change: 2005 Dec 16
|
||||
" URL: http://mywebpage.netscape.com/sharppeople/vim/ftplugin
|
||||
|
||||
if exists("b:did_ftplugin") | finish | endif
|
||||
@@ -27,7 +27,7 @@ endif
|
||||
|
||||
" Provided by Ned Konz <ned at bike-nomad dot com>
|
||||
"---------------------------------------------
|
||||
setlocal include=\\<\\(use\\|require\\)\\>
|
||||
setlocal include=\\<\\(use\\\|require\\)\\>
|
||||
setlocal includeexpr=substitute(substitute(v:fname,'::','/','g'),'$','.pm','')
|
||||
setlocal define=[^A-Za-z_]
|
||||
|
||||
|
||||
9314
runtime/kde-tips
9314
runtime/kde-tips
File diff suppressed because it is too large
Load Diff
@@ -1,10 +1,8 @@
|
||||
" Vim Keymap file for Persian Standard Keyboard Layout
|
||||
" Maintainers: Behnam Esfahbod <behnam@bamdad.org>,
|
||||
" Amir Hedayaty <amir@bamdad.org>
|
||||
" Last Change: 2004 May 16
|
||||
" Maintainers: Behnam 'ZWNJ' Esfahbod <behnam@zwnj.org>,
|
||||
" Amir Hedayaty <hedayaty@gmail.com>
|
||||
" Last Change: 2005 Nov 30
|
||||
|
||||
" All characters are given literally, conversion to another encoding (e.g.,
|
||||
" UTF-8) should work.
|
||||
scriptencoding utf-8
|
||||
|
||||
" Use this short name in the status line.
|
||||
|
||||
File diff suppressed because it is too large
Load Diff
Binary file not shown.
|
Before Width: | Height: | Size: 2.4 KiB |
Binary file not shown.
|
Before Width: | Height: | Size: 4.5 KiB |
Binary file not shown.
|
Before Width: | Height: | Size: 6.9 KiB |
@@ -88,6 +88,23 @@ menutrans &Jump\ to\ this\ tag<Tab>g^] &Sko
|
||||
menutrans Jump\ &back<Tab>^T Sko<EFBFBD>it\ &zp<EFBFBD>t<Tab>^T
|
||||
menutrans Build\ &Tags\ File &Vytvo<EFBFBD>it\ soubor\ tag<EFBFBD>
|
||||
|
||||
menutrans &Spelling &Kontrola\ pravopisu
|
||||
menutrans &Spell\ Check\ On Kontrola\ pravopisu\ &zapnuta
|
||||
menutrans Spell\ Check\ &Off Kontrola\ pravopisu\ &vypnuta
|
||||
menutrans To\ Next\ error<Tab>]s &Dal<EFBFBD><EFBFBD>\ chyba<Tab>]s
|
||||
menutrans To\ Previous\ error<Tab>[s &P<EFBFBD>edchoz<EFBFBD>\ chyba<Tab>[s
|
||||
menutrans Suggest\ Corrections<Tab>z? &N<EFBFBD>vrh\ oprav<Tab>z?
|
||||
menutrans Repeat\ correction<Tab>:spellrepall Zopakovat\ &opravu<Tab>:spellrepall
|
||||
menutrans Set\ language\ to\ "en" Nastav\ jazyk\ na\ "en"
|
||||
menutrans Set\ language\ to\ "en_au" Nastav\ jazyk\ na\ "en_au"
|
||||
menutrans Set\ language\ to\ "en_ca" Nastav\ jazyk\ na\ "en_ca"
|
||||
menutrans Set\ language\ to\ "en_gb" Nastav\ jazyk\ na\ "en_gb"
|
||||
menutrans Set\ language\ to\ "en_nz" Nastav\ jazyk\ na\ "en_nz"
|
||||
menutrans Set\ language\ to\ "en_us" Nastav\ jazyk\ na\ "en_us"
|
||||
menutrans Set\ language\ to\ "cz" Nastav\ jazyk\ na\ "cz"
|
||||
menutrans Set\ language\ to\ "cs_cz" Nastav\ jazyk\ na\ "cs_cz"
|
||||
menutrans &Find\ More\ Languages Nal<EFBFBD>zt\ dal<EFBFBD><EFBFBD>\ &jazyky
|
||||
|
||||
menutrans &Folding &Foldy
|
||||
menutrans &Enable/Disable\ folds<Tab>zi &Ano/Ne<Tab>zi
|
||||
menutrans &View\ Cursor\ Line<Tab>zv &Zobrazit\ <20><>dek\ kurzoru<Tab>zv
|
||||
@@ -119,6 +136,7 @@ menutrans &Previous\ Error<Tab>:cp &P
|
||||
menutrans &Older\ List<Tab>:cold Sta&r<EFBFBD><EFBFBD>\ seznam<Tab>:cold
|
||||
menutrans N&ewer\ List<Tab>:cnew N&ov<EFBFBD>j<EFBFBD><EFBFBD>\ seznam<Tab>:cnew
|
||||
menutrans Error\ &Window Chybov<EFBFBD>\ o&kno
|
||||
menutrans SeT\ Compiler Nas&taven<EFBFBD>\ kompil<EFBFBD>toru
|
||||
menutrans &Update<Tab>:cwin O&bnovit<Tab>:cwin
|
||||
menutrans &Open<Tab>:copen &Otev<EFBFBD><EFBFBD>t<Tab>:copen
|
||||
menutrans &Close<Tab>:cclose &Zav<EFBFBD><EFBFBD>t<Tab>:cclose
|
||||
|
||||
@@ -88,6 +88,23 @@ menutrans &Jump\ to\ this\ tag<Tab>g^] &Sko
|
||||
menutrans Jump\ &back<Tab>^T Sko<EFBFBD>it\ &zp<EFBFBD>t<Tab>^T
|
||||
menutrans Build\ &Tags\ File &Vytvo<EFBFBD>it\ soubor\ tag<EFBFBD>
|
||||
|
||||
menutrans &Spelling &Kontrola\ pravopisu
|
||||
menutrans &Spell\ Check\ On Kontrola\ pravopisu\ &zapnuta
|
||||
menutrans Spell\ Check\ &Off Kontrola\ pravopisu\ &vypnuta
|
||||
menutrans To\ Next\ error<Tab>]s &Dal<EFBFBD><EFBFBD>\ chyba<Tab>]s
|
||||
menutrans To\ Previous\ error<Tab>[s &P<EFBFBD>edchoz<EFBFBD>\ chyba<Tab>[s
|
||||
menutrans Suggest\ Corrections<Tab>z? &N<EFBFBD>vrh\ oprav<Tab>z?
|
||||
menutrans Repeat\ correction<Tab>:spellrepall Zopakovat\ &opravu<Tab>:spellrepall
|
||||
menutrans Set\ language\ to\ "en" Nastav\ jazyk\ na\ "en"
|
||||
menutrans Set\ language\ to\ "en_au" Nastav\ jazyk\ na\ "en_au"
|
||||
menutrans Set\ language\ to\ "en_ca" Nastav\ jazyk\ na\ "en_ca"
|
||||
menutrans Set\ language\ to\ "en_gb" Nastav\ jazyk\ na\ "en_gb"
|
||||
menutrans Set\ language\ to\ "en_nz" Nastav\ jazyk\ na\ "en_nz"
|
||||
menutrans Set\ language\ to\ "en_us" Nastav\ jazyk\ na\ "en_us"
|
||||
menutrans Set\ language\ to\ "cz" Nastav\ jazyk\ na\ "cz"
|
||||
menutrans Set\ language\ to\ "cs_cz" Nastav\ jazyk\ na\ "cs_cz"
|
||||
menutrans &Find\ More\ Languages Nal<EFBFBD>zt\ dal<EFBFBD><EFBFBD>\ &jazyky
|
||||
|
||||
menutrans &Folding &Foldy
|
||||
menutrans &Enable/Disable\ folds<Tab>zi &Ano/Ne<Tab>zi
|
||||
menutrans &View\ Cursor\ Line<Tab>zv &Zobrazit\ <20><>dek\ kurzoru<Tab>zv
|
||||
@@ -119,6 +136,7 @@ menutrans &Previous\ Error<Tab>:cp &P
|
||||
menutrans &Older\ List<Tab>:cold Sta&r<EFBFBD><EFBFBD>\ seznam<Tab>:cold
|
||||
menutrans N&ewer\ List<Tab>:cnew N&ov<EFBFBD>j<EFBFBD><EFBFBD>\ seznam<Tab>:cnew
|
||||
menutrans Error\ &Window Chybov<EFBFBD>\ o&kno
|
||||
menutrans SeT\ Compiler Nas&taven<EFBFBD>\ kompil<EFBFBD>toru
|
||||
menutrans &Update<Tab>:cwin O&bnovit<Tab>:cwin
|
||||
menutrans &Open<Tab>:copen &Otev<EFBFBD><EFBFBD>t<Tab>:copen
|
||||
menutrans &Close<Tab>:cclose &Zav<EFBFBD><EFBFBD>t<Tab>:cclose
|
||||
|
||||
@@ -88,6 +88,23 @@ menutrans &Jump\ to\ this\ tag<Tab>g^] &Skocit\ na\ tag<Tab>g^]
|
||||
menutrans Jump\ &back<Tab>^T Skocit\ &zpet<Tab>^T
|
||||
menutrans Build\ &Tags\ File &Vytvorit\ soubor\ tagu
|
||||
|
||||
menutrans &Spelling &Kontrola\ pravopisu
|
||||
menutrans &Spell\ Check\ On Kontrola\ pravopisu\ &zapnuta
|
||||
menutrans Spell\ Check\ &Off Kontrola\ pravopisu\ &vypnuta
|
||||
menutrans To\ Next\ error<Tab>]s &Dalsi\ chyba<Tab>]s
|
||||
menutrans To\ Previous\ error<Tab>[s &Predchozi\ chyba<Tab>[s
|
||||
menutrans Suggest\ Corrections<Tab>z? &Navrh\ oprav<Tab>z?
|
||||
menutrans Repeat\ correction<Tab>:spellrepall Zopakovat\ &opravu<Tab>:spellrepall
|
||||
menutrans Set\ language\ to\ "en" Nastav\ jazyk\ na\ "en"
|
||||
menutrans Set\ language\ to\ "en_au" Nastav\ jazyk\ na\ "en_au"
|
||||
menutrans Set\ language\ to\ "en_ca" Nastav\ jazyk\ na\ "en_ca"
|
||||
menutrans Set\ language\ to\ "en_gb" Nastav\ jazyk\ na\ "en_gb"
|
||||
menutrans Set\ language\ to\ "en_nz" Nastav\ jazyk\ na\ "en_nz"
|
||||
menutrans Set\ language\ to\ "en_us" Nastav\ jazyk\ na\ "en_us"
|
||||
menutrans Set\ language\ to\ "cz" Nastav\ jazyk\ na\ "cz"
|
||||
menutrans Set\ language\ to\ "cs_cz" Nastav\ jazyk\ na\ "cs_cz"
|
||||
menutrans &Find\ More\ Languages Nalezt\ dalsi\ &jazyky
|
||||
|
||||
menutrans &Folding &Foldy
|
||||
menutrans &Enable/Disable\ folds<Tab>zi &Ano/Ne<Tab>zi
|
||||
menutrans &View\ Cursor\ Line<Tab>zv &Zobrazit\ radek\ kurzoru<Tab>zv
|
||||
@@ -119,6 +136,7 @@ menutrans &Previous\ Error<Tab>:cp &Predchozi\ chyba<Tab>:cp
|
||||
menutrans &Older\ List<Tab>:cold Sta&rsi\ seznam<Tab>:cold
|
||||
menutrans N&ewer\ List<Tab>:cnew N&ovejsi\ seznam<Tab>:cnew
|
||||
menutrans Error\ &Window Chybove\ o&kno
|
||||
menutrans SeT\ Compiler Nas&taveni\ kompilatoru
|
||||
menutrans &Update<Tab>:cwin O&bnovit<Tab>:cwin
|
||||
menutrans &Open<Tab>:copen &Otevrit<Tab>:copen
|
||||
menutrans &Close<Tab>:cclose &Zavrit<Tab>:cclose
|
||||
|
||||
@@ -1,6 +1,7 @@
|
||||
" Menu Translations: Espa<70>ol
|
||||
" Maintainer: Alejandro L<>pez-Valencia <dradul@yahoo.com>
|
||||
" Last Change: 2004 May 12
|
||||
" Maintainer: Alejandro L<>pez-Valencia <dradul@users.sourceforge.net>
|
||||
" Version: 6.4.p0-1
|
||||
" Last Change: 2005 Dec 01
|
||||
"
|
||||
|
||||
" Quit when menu translations have already been done.
|
||||
@@ -86,7 +87,7 @@ menutrans Toggle\ Vi\ C&ompatible<Tab>:set\ cp! Activar/Desactivar\ compatiblida
|
||||
|
||||
menutrans Search\ &Path\.\.\. Ruta\ de\ &b<EFBFBD>squeda\.\.\.
|
||||
|
||||
menutrans Ta&g\ Files\.\.\. Ficheros\ de\ <EFBFBD>ta&gs<EFBFBD>\.\.\.
|
||||
menutrans Ta&g\ Files\.\.\. Ficheros\ de\ &etiquetas\.\.\.
|
||||
|
||||
" GUI options
|
||||
menutrans Toggle\ &Toolbar Ocultar/Mostrar\ barra\ de\ &herramientas
|
||||
@@ -102,7 +103,7 @@ menutrans F&ile\ Settings Opciones\ del\ &fichero
|
||||
|
||||
" Boolean options
|
||||
menutrans Toggle\ Line\ &Numbering<Tab>:set\ nu! Activar/Desactivar\ &numeraci<EFBFBD>n\ de\ l<EFBFBD>neas<Tab>:set\ nu!
|
||||
menutrans Toggle\ &List\ Mode<Tab>:set\ list! Activar/Desactivar\ modo\ <EFBFBD>&list<EFBFBD><Tab>:set\ list!
|
||||
menutrans Toggle\ &List\ Mode<Tab>:set\ list! Activar/Desactivar\ modo\ de\ lista<Tab>:set\ list!
|
||||
menutrans Toggle\ Line\ &Wrap<Tab>:set\ wrap! Activar/Desactivar\ &quiebre\ de\ l<EFBFBD>neas<Tab>:set\ wrap!
|
||||
menutrans Toggle\ W&rap\ at\ word<Tab>:set\ lbr! Activar/Desactivar\ quiebre\ entre\ &palabras<Tab>:set\ lbr!
|
||||
menutrans Toggle\ &expand-tab<Tab>:set\ et! Activar/Desactivar\ &expansi<EFBFBD>n\ de\ marcas\ de\ \tabulado<Tab>:set\ et!
|
||||
@@ -151,9 +152,9 @@ menutrans slovak eslovaco
|
||||
|
||||
" Programming menu
|
||||
menutrans &Tools &Herramientas
|
||||
menutrans &Jump\ to\ this\ tag<Tab>g^] &Saltar\ a\ este\ <EFBFBD>tag<EFBFBD><Tab>g^]
|
||||
menutrans &Jump\ to\ this\ tag<Tab>g^] &Saltar\ a\ este\ etiqueta<Tab>g^]
|
||||
menutrans Jump\ &back<Tab>^T Saltar\ &atr<EFBFBD>s<Tab>^T
|
||||
menutrans Build\ &Tags\ File Crear\ fichero\ de\ <EFBFBD>&tags<EFBFBD>\
|
||||
menutrans Build\ &Tags\ File Crear\ fichero\ de\ &etiquetas\
|
||||
menutrans &Diff Modo\ de\ &diferencias
|
||||
menutrans &Folding &Plegado
|
||||
menutrans &Make<Tab>:make Ejecutar\ <20>&Make<EFBFBD><Tab>:make
|
||||
@@ -260,8 +261,8 @@ if has("toolbar")
|
||||
if 0 " disabled; These are in the Windows menu
|
||||
tmenu ToolBar.New Ventana nueva
|
||||
tmenu ToolBar.WinSplit Dividir ventana
|
||||
tmenu ToolBar.WinMax Ventana m<EFBFBD>xima
|
||||
tmenu ToolBar.WinMin Ventana m<EFBFBD>nima
|
||||
tmenu ToolBar.WinMax Altura m<EFBFBD>xima
|
||||
tmenu ToolBar.WinMin Altura m<EFBFBD>nima
|
||||
tmenu ToolBar.WinVSplit Dividir verticalmente
|
||||
tmenu ToolBar.WinMaxWidth Anchura m<EFBFBD>xima
|
||||
tmenu ToolBar.WinMinWidth Anchura m<EFBFBD>nima
|
||||
@@ -269,11 +270,11 @@ if has("toolbar")
|
||||
endif
|
||||
tmenu ToolBar.LoadSesn Cargar sesi<EFBFBD>n
|
||||
tmenu ToolBar.SaveSesn Guardar sesi<EFBFBD>n
|
||||
tmenu ToolBar.RunScript Ejecutar un <EFBFBD>script<EFBFBD>
|
||||
tmenu ToolBar.RunScript Ejecutar un archivo de <20>rdenes
|
||||
tmenu ToolBar.Make Ejecutar <20>Make<EFBFBD>
|
||||
tmenu ToolBar.Shell Abrir una <EFBFBD>Shell<EFBFBD>
|
||||
tmenu ToolBar.RunCtags Generar un fichero de <EFBFBD>tags<EFBFBD>
|
||||
tmenu ToolBar.TagJump Saltar a un <EFBFBD>tag<EFBFBD>
|
||||
tmenu ToolBar.Shell Abrir un int<EFBFBD>rprete de comandos
|
||||
tmenu ToolBar.RunCtags Generar un fichero de etiquetas
|
||||
tmenu ToolBar.TagJump Saltar a una etiqueta
|
||||
tmenu ToolBar.Help Ayuda
|
||||
tmenu ToolBar.FindHelp Buscar en la ayuda...
|
||||
endfun
|
||||
@@ -282,15 +283,15 @@ endif
|
||||
" Syntax menu
|
||||
menutrans &Syntax &Sintaxis
|
||||
menutrans &Show\ filetypes\ in\ menu &Mostrar\ listas\ de\ <20>tipo\ de\ fichero<EFBFBD>
|
||||
menutrans Set\ '&syntax'\ only Activar\ s<EFBFBD>lo\ <EFBFBD>sintaxis<EFBFBD>
|
||||
menutrans Set\ '&syntax'\ only Activar\ s<EFBFBD>lo\ sintaxis
|
||||
menutrans Set\ '&filetype'\ too Activar\ tambi<EFBFBD>n\ <20>tipo\ de\ fichero<EFBFBD>
|
||||
menutrans &Off &Desactivar\ <EFBFBD>sintaxis<EFBFBD>
|
||||
menutrans &Manual <EFBFBD>sintaxis<EFBFBD>\ &manual
|
||||
menutrans A&utomatic <EFBFBD>sintaxis<EFBFBD>\ a&utom<EFBFBD>tica
|
||||
menutrans &Off &Desactivar\ sintaxis
|
||||
menutrans &Manual sintaxis\ &manual
|
||||
menutrans A&utomatic sintaxis\ a&utom<EFBFBD>tica
|
||||
menutrans on/off\ for\ &This\ file Activar/Desactivar\ en\ es&te\ fichero
|
||||
menutrans Co&lor\ test &Prueba\ de\ colores
|
||||
menutrans &Highlight\ test Prueba\ de\ &realzado
|
||||
menutrans &Convert\ to\ HTML &Convertir\ en\ HTML
|
||||
menutrans &Convert\ to\ HTML &Convertir\ a\ HTML
|
||||
|
||||
" Find Help dialog text
|
||||
let g:menutrans_help_dialog = "Introduzca un nombre de comando o palabra para obtener ayuda;\n\nAnteponga i_ para comandos de entrada (e.g.: i_CTRL-X)\nAnteponga c_ para comandos de la l<>nea de comandos (e.g.: c_<Del>)\nAnteponga ` para un nombre de opci<63>n (e.g.: `shiftwidth`)"
|
||||
|
||||
@@ -12,11 +12,19 @@ The other files contain some handy utilities. They also serve as examples for
|
||||
how to use Vi and Vim functionality.
|
||||
|
||||
dvorak for when you use a Dvorak keyboard
|
||||
|
||||
justify.vim user function for justifying text
|
||||
|
||||
matchit.vim + matchit.txt make % match if-fi, HTML tags, and much more
|
||||
|
||||
less.sh + less.vim make Vim work like less (or more)
|
||||
|
||||
shellmenu.vim menus for editing shell scripts in the GUI version
|
||||
|
||||
swapmous.vim swap left and right mouse buttons
|
||||
|
||||
editexisting.vim when editing a file that is already edited with
|
||||
another Vim instance
|
||||
|
||||
This one is only for Unix. It can be found in the extra archive:
|
||||
file_select.vim macros that make a handy file selector
|
||||
|
||||
100
runtime/macros/editexisting.vim
Normal file
100
runtime/macros/editexisting.vim
Normal file
@@ -0,0 +1,100 @@
|
||||
" Vim Plugin: Edit the file with an existing Vim if possible
|
||||
" Maintainer: Bram Moolenaar
|
||||
" Last Change: 2005 Dec 15
|
||||
|
||||
" This is a plugin, drop it in your (Unix) ~/.vim/plugin or (Win32)
|
||||
" $VIM/vimfiles/plugin directory. Or make a symbolic link, so that you
|
||||
" automatically use the latest version.
|
||||
|
||||
" This plugin serves two purposes:
|
||||
" 1. On startup, if we were invoked with one file name argument and the file
|
||||
" is not modified then try to find another Vim instance that is editing
|
||||
" this file. If there is one then bring it to the foreground and exit.
|
||||
" 2. When a file is edited and a swap file exists for it, try finding that
|
||||
" other Vim and bring it to the foreground. Requires Vim 7, because it
|
||||
" uses the SwapExists autocommand event.
|
||||
|
||||
" Function that finds the Vim instance that is editing "filename" and brings
|
||||
" it to the foreground.
|
||||
func s:EditElsewhere(filename)
|
||||
let fname_esc = substitute(a:filename, "'", "''", "g")
|
||||
|
||||
let servers = serverlist()
|
||||
while servers != ''
|
||||
" Get next server name in "servername"; remove it from "servers".
|
||||
let i = match(servers, "\n")
|
||||
if i == -1
|
||||
let servername = servers
|
||||
let servers = ''
|
||||
else
|
||||
let servername = strpart(servers, 0, i)
|
||||
let servers = strpart(servers, i + 1)
|
||||
endif
|
||||
|
||||
" Skip ourselves.
|
||||
if servername ==? v:servername
|
||||
continue
|
||||
endif
|
||||
|
||||
" Check if this server is editing our file.
|
||||
if remote_expr(servername, "bufloaded('" . fname_esc . "')")
|
||||
" Yes, bring it to the foreground.
|
||||
if has("win32")
|
||||
call remote_foreground(servername)
|
||||
endif
|
||||
call remote_expr(servername, "foreground()")
|
||||
|
||||
if remote_expr(servername, "exists('*EditExisting')")
|
||||
" Make sure the file is visible in a window (not hidden).
|
||||
" If v:swapcommand exists and is set, send it to the server.
|
||||
if exists("v:swapcommand")
|
||||
let c = substitute(v:swapcommand, "'", "''", "g")
|
||||
call remote_expr(servername, "EditExisting('" . fname_esc . "', '" . c . "')")
|
||||
else
|
||||
call remote_expr(servername, "EditExisting('" . fname_esc . "', '')")
|
||||
endif
|
||||
endif
|
||||
|
||||
if !(has('vim_starting') && has('gui_running') && has('gui_win32'))
|
||||
" Tell the user what is happening. Not when the GUI is starting
|
||||
" though, it would result in a message box.
|
||||
echomsg "File is being edited by " . servername
|
||||
sleep 2
|
||||
endif
|
||||
return 'q'
|
||||
endif
|
||||
endwhile
|
||||
return ''
|
||||
endfunc
|
||||
|
||||
" When the plugin is loaded and there is one file name argument: Find another
|
||||
" Vim server that is editing this file right now.
|
||||
if argc() == 1 && !&modified
|
||||
if s:EditElsewhere(expand("%:p")) == 'q'
|
||||
quit
|
||||
endif
|
||||
endif
|
||||
|
||||
" Setup for handling the situation that an existing swap file is found.
|
||||
try
|
||||
au! SwapExists * let v:swapchoice = s:EditElsewhere(expand("<afile>:p"))
|
||||
catch
|
||||
" Without SwapExists we don't do anything for ":edit" commands
|
||||
endtry
|
||||
|
||||
" Function used on the server to make the file visible and possibly execute a
|
||||
" command.
|
||||
func! EditExisting(fname, command)
|
||||
let n = bufwinnr(a:fname)
|
||||
if n > 0
|
||||
exe n . "wincmd w"
|
||||
else
|
||||
exe "split " . escape(a:fname, ' #%"|')
|
||||
endif
|
||||
|
||||
if a:command != ''
|
||||
exe "normal " . a:command
|
||||
endif
|
||||
|
||||
redraw
|
||||
endfunc
|
||||
@@ -1,6 +1,6 @@
|
||||
" Script to define the syntax menu in synmenu.vim
|
||||
" Maintainer: Bram Moolenaar <Bram@vim.org>
|
||||
" Last Change: 2004 Dec 17
|
||||
" Last Change: 2005 Dec 01
|
||||
|
||||
" This is used by "make menu" in the src directory.
|
||||
edit <sfile>:p:h/synmenu.vim
|
||||
@@ -155,7 +155,10 @@ SynMenu DE.Elinks\ config:elinks
|
||||
SynMenu DE.Elm\ filter\ rules:elmfilt
|
||||
SynMenu DE.Embedix\ Component\ Description:ecd
|
||||
SynMenu DE.ERicsson\ LANGuage:erlang
|
||||
SynMenu DE.ESMTP\ rc:esmtprc
|
||||
SynMenu DE.ESQL-C:esqlc
|
||||
SynMenu DE.Essbase\ script:csc
|
||||
SynMenu DE.Esterel:esterel
|
||||
SynMenu DE.Eterm\ config:eterm
|
||||
SynMenu DE.Exim\ conf:exim
|
||||
SynMenu DE.Expect:expect
|
||||
@@ -194,6 +197,7 @@ SynMenu HIJK.Hex\ dump.XXD:xxd
|
||||
SynMenu HIJK.Hex\ dump.Intel\ MCS51:hex
|
||||
SynMenu HIJK.HTML.HTML:html
|
||||
SynMenu HIJK.HTML.HTML\ with\ M4:htmlm4
|
||||
SynMenu HIJK.HTML.HTML\ with\ Ruby\ (eRuby):eruby
|
||||
SynMenu HIJK.HTML.Cheetah\ HTML\ template:htmlcheetah
|
||||
SynMenu HIJK.HTML.HTML/OS:htmlos
|
||||
SynMenu HIJK.HTML.XHTML:xhtml
|
||||
@@ -279,6 +283,7 @@ SynMenu Me-NO.MUSHcode:mush
|
||||
SynMenu Me-NO.Muttrc:muttrc
|
||||
SynMenu Me-NO.Nastran\ input/DMAP:nastran
|
||||
SynMenu Me-NO.Natural:natural
|
||||
SynMenu Me-NO.Netrc:netrc
|
||||
SynMenu Me-NO.Novell\ NCF\ batch:ncf
|
||||
SynMenu Me-NO.Not\ Quite\ C\ (LEGO):nqc
|
||||
SynMenu Me-NO.Nroff:nroff
|
||||
@@ -307,6 +312,7 @@ SynMenu PQ.Pike:pike
|
||||
SynMenu PQ.Pine\ RC:pine
|
||||
SynMenu PQ.Pinfo\ RC:pinfo
|
||||
SynMenu PQ.PL/M:plm
|
||||
SynMenu PQ.PL/SQL:plsql
|
||||
SynMenu PQ.PLP:plp
|
||||
SynMenu PQ.PO\ (GNU\ gettext):po
|
||||
SynMenu PQ.Postfix\ main\ config:pfmain
|
||||
@@ -314,6 +320,7 @@ SynMenu PQ.PostScript.PostScript:postscr
|
||||
SynMenu PQ.PostScript.PostScript\ Printer\ Description:ppd
|
||||
SynMenu PQ.Povray.Povray\ scene\ descr:pov
|
||||
SynMenu PQ.Povray.Povray\ configuration:povini
|
||||
SynMenu PQ.Prescribe\ (Kyocera):prescribe
|
||||
SynMenu PQ.Printcap:pcap
|
||||
SynMenu PQ.Procmail:procmail
|
||||
SynMenu PQ.Product\ Spec\ File:psf
|
||||
@@ -433,6 +440,7 @@ SynMenu TUV.TSS.Optics:tssop
|
||||
SynMenu TUV.UIT/UIL:uil
|
||||
SynMenu TUV.UnrealScript:uc
|
||||
SynMenu TUV.Valgrind:valgrind
|
||||
SynMenu TUV.Verilog-AMS\ HDL:verilogams
|
||||
SynMenu TUV.Verilog\ HDL:verilog
|
||||
SynMenu TUV.Vgrindefs:vgrindefs
|
||||
SynMenu TUV.VHDL:vhdl
|
||||
|
||||
@@ -1,312 +0,0 @@
|
||||
" NetrwFileHandlers: contains various extension-based file handlers for
|
||||
" netrw's browsers' x command ("eXecute launcher")
|
||||
" Author: Charles E. Campbell, Jr.
|
||||
" Date: Aug 15, 2005
|
||||
" Version: 6
|
||||
" Copyright: Copyright (C) 1999-2005 Charles E. Campbell, Jr. {{{1
|
||||
" Permission is hereby granted to use and distribute this code,
|
||||
" with or without modifications, provided that this copyright
|
||||
" notice is copied with it. Like anything else that's free,
|
||||
" NetrwFileHandlers.vim is provided *as is* and comes with no
|
||||
" warranty of any kind, either expressed or implied. In no
|
||||
" event will the copyright holder be liable for any damages
|
||||
" resulting from the use of this software.
|
||||
"
|
||||
" Rom 6:23 (WEB) For the wages of sin is death, but the free gift of God {{{1
|
||||
" is eternal life in Christ Jesus our Lord.
|
||||
|
||||
" ---------------------------------------------------------------------
|
||||
" Load Once: {{{1
|
||||
if exists("g:loaded_NetrwFileHandlers") || &cp
|
||||
finish
|
||||
endif
|
||||
let s:keepcpo= &cpo
|
||||
set cpo&vim
|
||||
let g:loaded_NetrwFileHandlers= "v6"
|
||||
|
||||
" ---------------------------------------------------------------------
|
||||
" NetrwFileHandler_html: handles html when the user hits "x" when the {{{1
|
||||
" cursor is atop a *.html file
|
||||
fun! NetrwFileHandler_html(pagefile)
|
||||
" call Dfunc("NetrwFileHandler_html(".a:pagefile.")")
|
||||
|
||||
let page= substitute(a:pagefile,'^','file://','')
|
||||
|
||||
if executable("mozilla")
|
||||
" call Decho("executing !mozilla ".page)
|
||||
exe "!mozilla \"".page.'"'
|
||||
elseif executable("netscape")
|
||||
" call Decho("executing !netscape ".page)
|
||||
exe "!netscape \"".page.'"'
|
||||
else
|
||||
" call Dret("NetrwFileHandler_html 0")
|
||||
return 0
|
||||
endif
|
||||
|
||||
" call Dret("NetrwFileHandler_html 1")
|
||||
return 1
|
||||
endfun
|
||||
|
||||
" ---------------------------------------------------------------------
|
||||
" NetrwFileHandler_htm: handles html when the user hits "x" when the {{{1
|
||||
" cursor is atop a *.htm file
|
||||
fun! NetrwFileHandler_htm(pagefile)
|
||||
" call Dfunc("NetrwFileHandler_htm(".a:pagefile.")")
|
||||
|
||||
let page= substitute(a:pagefile,'^','file://','')
|
||||
|
||||
if executable("mozilla")
|
||||
" call Decho("executing !mozilla ".page)
|
||||
exe "!mozilla \"".page.'"'
|
||||
elseif executable("netscape")
|
||||
" call Decho("executing !netscape ".page)
|
||||
exe "!netscape \"".page.'"'
|
||||
else
|
||||
" call Dret("NetrwFileHandler_htm 0")
|
||||
return 0
|
||||
endif
|
||||
|
||||
" call Dret("NetrwFileHandler_htm 1")
|
||||
return 1
|
||||
endfun
|
||||
|
||||
" ---------------------------------------------------------------------
|
||||
" NetrwFileHandler_jpg: {{{1
|
||||
fun! NetrwFileHandler_jpg(jpgfile)
|
||||
" call Dfunc("NetrwFileHandler_jpg(jpgfile<".a:jpgfile.">)")
|
||||
|
||||
if executable("gimp")
|
||||
exe "silent! !gimp -s ".a:jpgfile
|
||||
elseif executable(expand("$SystemRoot")."/SYSTEM32/MSPAINT.EXE")
|
||||
" call Decho("silent! !".expand("$SystemRoot")."/SYSTEM32/MSPAINT ".escape(a:jpgfile," []|'"))
|
||||
exe "!".expand("$SystemRoot")."/SYSTEM32/MSPAINT \"".a:jpgfile.'"'
|
||||
else
|
||||
" call Dret("NetrwFileHandler_jpg 0")
|
||||
return 0
|
||||
endif
|
||||
|
||||
" call Dret("NetrwFileHandler_jpg 1")
|
||||
return 1
|
||||
endfun
|
||||
|
||||
" ---------------------------------------------------------------------
|
||||
" NetrwFileHandler_gif: {{{1
|
||||
fun! NetrwFileHandler_gif(giffile)
|
||||
" call Dfunc("NetrwFileHandler_gif(giffile<".a:giffile.">)")
|
||||
|
||||
if executable("gimp")
|
||||
exe "silent! !gimp -s ".a:giffile
|
||||
elseif executable(expand("$SystemRoot")."/SYSTEM32/MSPAINT.EXE")
|
||||
exe "silent! !".expand("$SystemRoot")."/SYSTEM32/MSPAINT \"".a:giffile.'"'
|
||||
else
|
||||
" call Dret("NetrwFileHandler_gif 0")
|
||||
return 0
|
||||
endif
|
||||
|
||||
" call Dret("NetrwFileHandler_gif 1")
|
||||
return 1
|
||||
endfun
|
||||
|
||||
" ---------------------------------------------------------------------
|
||||
" NetrwFileHandler_png: {{{1
|
||||
fun! NetrwFileHandler_png(pngfile)
|
||||
" call Dfunc("NetrwFileHandler_png(pngfile<".a:pngfile.">)")
|
||||
|
||||
if executable("gimp")
|
||||
exe "silent! !gimp -s ".a:pngfile
|
||||
elseif executable(expand("$SystemRoot")."/SYSTEM32/MSPAINT.EXE")
|
||||
exe "silent! !".expand("$SystemRoot")."/SYSTEM32/MSPAINT \"".a:pngfile.'"'
|
||||
else
|
||||
" call Dret("NetrwFileHandler_png 0")
|
||||
return 0
|
||||
endif
|
||||
|
||||
" call Dret("NetrwFileHandler_png 1")
|
||||
return 1
|
||||
endfun
|
||||
|
||||
" ---------------------------------------------------------------------
|
||||
" NetrwFileHandler_pnm: {{{1
|
||||
fun! NetrwFileHandler_pnm(pnmfile)
|
||||
" call Dfunc("NetrwFileHandler_pnm(pnmfile<".a:pnmfile.">)")
|
||||
|
||||
if executable("gimp")
|
||||
exe "silent! !gimp -s ".a:pnmfile
|
||||
elseif executable(expand("$SystemRoot")."/SYSTEM32/MSPAINT.EXE")
|
||||
exe "silent! !".expand("$SystemRoot")."/SYSTEM32/MSPAINT \"".a:pnmfile.'"'
|
||||
else
|
||||
" call Dret("NetrwFileHandler_pnm 0")
|
||||
return 0
|
||||
endif
|
||||
|
||||
" call Dret("NetrwFileHandler_pnm 1")
|
||||
return 1
|
||||
endfun
|
||||
|
||||
" ---------------------------------------------------------------------
|
||||
" NetrwFileHandler_bmp: visualize bmp files {{{1
|
||||
fun! NetrwFileHandler_bmp(bmpfile)
|
||||
" call Dfunc("NetrwFileHandler_bmp(bmpfile<".a:bmpfile.">)")
|
||||
|
||||
if executable("gimp")
|
||||
exe "silent! !gimp -s ".a:bmpfile
|
||||
elseif executable(expand("$SystemRoot")."/SYSTEM32/MSPAINT.EXE")
|
||||
exe "silent! !".expand("$SystemRoot")."/SYSTEM32/MSPAINT \"".a:bmpfile.'"'
|
||||
else
|
||||
" call Dret("NetrwFileHandler_bmp 0")
|
||||
return 0
|
||||
endif
|
||||
|
||||
" call Dret("NetrwFileHandler_bmp 1")
|
||||
return 1
|
||||
endfun
|
||||
|
||||
" ---------------------------------------------------------------------
|
||||
" NetrwFileHandler_pdf: visualize pdf files {{{1
|
||||
fun! NetrwFileHandler_pdf(pdf)
|
||||
" " call Dfunc("NetrwFileHandler_pdf(pdf<".a:pdf.">)")
|
||||
if executable("gs")
|
||||
exe 'silent! !gs "'.a:pdf.'"'
|
||||
else
|
||||
" " call Dret("NetrwFileHandler_pdf 0")
|
||||
return 0
|
||||
endif
|
||||
|
||||
" " call Dret("NetrwFileHandler_pdf 1")
|
||||
return 1
|
||||
endfun
|
||||
|
||||
" ---------------------------------------------------------------------
|
||||
" NetrwFileHandler_doc: visualize doc files {{{1
|
||||
fun! NetrwFileHandler_doc(doc)
|
||||
" " call Dfunc("NetrwFileHandler_doc(doc<".a:doc.">)")
|
||||
|
||||
if executable("oowriter")
|
||||
exe 'silent! !oowriter "'.a:doc.'"'
|
||||
redraw!
|
||||
else
|
||||
" " call Dret("NetrwFileHandler_doc 0")
|
||||
return 0
|
||||
endif
|
||||
|
||||
" " call Dret("NetrwFileHandler_doc 1")
|
||||
return 1
|
||||
endfun
|
||||
|
||||
" ---------------------------------------------------------------------
|
||||
" NetrwFileHandler_sxw: visualize sxw files {{{1
|
||||
fun! NetrwFileHandler_sxw(sxw)
|
||||
" " call Dfunc("NetrwFileHandler_sxw(sxw<".a:sxw.">)")
|
||||
|
||||
if executable("oowriter")
|
||||
exe 'silent! !oowriter "'.a:sxw.'"'
|
||||
redraw!
|
||||
else
|
||||
" " call Dret("NetrwFileHandler_sxw 0")
|
||||
return 0
|
||||
endif
|
||||
|
||||
" " call Dret("NetrwFileHandler_sxw 1")
|
||||
return 1
|
||||
endfun
|
||||
|
||||
" ---------------------------------------------------------------------
|
||||
" NetrwFileHandler_xls: visualize xls files {{{1
|
||||
fun! NetrwFileHandler_xls(xls)
|
||||
" " call Dfunc("NetrwFileHandler_xls(xls<".a:xls.">)")
|
||||
|
||||
if executable("oocalc")
|
||||
exe 'silent! !oocalc "'.a:xls.'"'
|
||||
redraw!
|
||||
else
|
||||
" " call Dret("NetrwFileHandler_xls 0")
|
||||
return 0
|
||||
endif
|
||||
|
||||
" " call Dret("NetrwFileHandler_xls 1")
|
||||
return 1
|
||||
endfun
|
||||
|
||||
" ---------------------------------------------------------------------
|
||||
" NetrwFileHandler_ps: handles PostScript files {{{1
|
||||
fun! NetrwFileHandler_ps(ps)
|
||||
" call Dfunc("NetrwFileHandler_ps()")
|
||||
if executable("gs")
|
||||
exe "silent! !gs ".a:ps
|
||||
redraw!
|
||||
elseif executable("ghostscript")
|
||||
exe "silent! !ghostscript ".a:ps
|
||||
redraw!
|
||||
elseif executable("ghostscript")
|
||||
exe "silent! !ghostscript ".a:ps
|
||||
redraw!
|
||||
elseif executable("gswin32")
|
||||
exe "silent! !gswin32 \"".a:ps.'"'
|
||||
redraw!
|
||||
else
|
||||
" call Dret("NetrwFileHandler_ps 0")
|
||||
return 0
|
||||
endif
|
||||
|
||||
" call Dret("NetrwFileHandler_ps 1")
|
||||
return 1
|
||||
endfun
|
||||
|
||||
" ---------------------------------------------------------------------
|
||||
" NetrwFileHandler_eps: handles encapsulated PostScript files {{{1
|
||||
fun! NetrwFileHandler_eps(eps)
|
||||
" call Dfunc("NetrwFileHandler_ps()")
|
||||
if executable("gs")
|
||||
exe "silent! !gs ".a:eps
|
||||
redraw!
|
||||
elseif executable("ghostscript")
|
||||
exe "silent! !ghostscript ".a:eps
|
||||
redraw!
|
||||
elseif executable("ghostscript")
|
||||
exe "silent! !ghostscript ".a:eps
|
||||
redraw!
|
||||
elseif executable("gswin32")
|
||||
exe "silent! !gswin32 \"".a:eps.'"'
|
||||
redraw!
|
||||
else
|
||||
" call Dret("NetrwFileHandler_ps 0")
|
||||
return 0
|
||||
endif
|
||||
endfun
|
||||
|
||||
" ---------------------------------------------------------------------
|
||||
" NetrwFileHandler_fig: handles xfig files {{{1
|
||||
fun! NetrwFileHandler_fig(fig)
|
||||
" call Dfunc("NetrwFileHandler_fig()")
|
||||
if executable("xfig")
|
||||
exe "silent! !xfig ".a:fig
|
||||
redraw!
|
||||
else
|
||||
" call Dret("NetrwFileHandler_fig 0")
|
||||
return 0
|
||||
endif
|
||||
|
||||
" call Dret("NetrwFileHandler_fig 1")
|
||||
return 1
|
||||
endfun
|
||||
|
||||
" ---------------------------------------------------------------------
|
||||
" NetrwFileHandler_obj: handles tgif's obj files {{{1
|
||||
fun! NetrwFileHandler_obj(obj)
|
||||
" call Dfunc("NetrwFileHandler_obj()")
|
||||
if has("unix") && executable("tgif")
|
||||
exe "silent! !tgif ".a:obj
|
||||
redraw!
|
||||
else
|
||||
" call Dret("NetrwFileHandler_obj 0")
|
||||
return 0
|
||||
endif
|
||||
|
||||
" call Dret("NetrwFileHandler_obj 1")
|
||||
return 1
|
||||
endfun
|
||||
|
||||
let &cpo= s:keepcpo
|
||||
" ---------------------------------------------------------------------
|
||||
" Modelines: {{{1
|
||||
" vim: ts=4 fdm=marker
|
||||
@@ -1,156 +0,0 @@
|
||||
" netrw.vim: Handles file transfer and remote directory listing across a network
|
||||
" PLUGIN PORTION
|
||||
" Last Change: Aug 31, 2005
|
||||
" Maintainer: Charles E Campbell, Jr <drchipNOSPAM at campbellfamily dot biz>
|
||||
" Version: 67
|
||||
" License: Vim License (see vim's :help license)
|
||||
" GetLatestVimScripts: 1075 1 :AutoInstall: netrw.vim
|
||||
" Copyright: Copyright (C) 1999-2005 Charles E. Campbell, Jr. {{{1
|
||||
" Permission is hereby granted to use and distribute this code,
|
||||
" with or without modifications, provided that this copyright
|
||||
" notice is copied with it. Like anything else that's free,
|
||||
" netrw.vim is provided *as is* and comes with no warranty
|
||||
" of any kind, either expressed or implied. By using this
|
||||
" plugin, you agree that in no event will the copyright
|
||||
" holder be liable for any damages resulting from the use
|
||||
" of this software.
|
||||
"
|
||||
" But be doers of the Word, and not only hearers, deluding your own selves {{{1
|
||||
" (James 1:22 RSV)
|
||||
" =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
|
||||
|
||||
" ---------------------------------------------------------------------
|
||||
" Load Once: {{{1
|
||||
if exists("g:loaded_netrw") || &cp
|
||||
finish
|
||||
endif
|
||||
if v:version < 600
|
||||
echoerr "***netrw*** doesn't support Vim version ".v:version
|
||||
finish
|
||||
endif
|
||||
let g:loaded_netrw = "v67"
|
||||
if v:version < 700
|
||||
let loaded_explorer = 1
|
||||
endif
|
||||
let s:keepcpo= &cpo
|
||||
set cpo&vim
|
||||
|
||||
" ---------------------------------------------------------------------
|
||||
" Public Interface: {{{1
|
||||
|
||||
" Local Browsing: {{{2
|
||||
augroup FileExplorer
|
||||
au!
|
||||
au BufEnter * call s:LocalBrowse(expand("<amatch>"))
|
||||
augroup END
|
||||
|
||||
" Network Browsing Reading Writing: {{{2
|
||||
augroup Network
|
||||
au!
|
||||
if has("win32") || has("win95") || has("win64") || has("win16")
|
||||
au BufReadCmd file://* exe "silent doau BufReadPre ".expand("<amatch>")|exe 'e '.substitute(expand("<amatch>"),"file:/*","","")|exe "silent doau BufReadPost ".expand("<amatch>")
|
||||
else
|
||||
au BufReadCmd file:///* exe "silent doau BufReadPre ".expand("<amatch>")|exe 'e /'.substitute(expand("<amatch>"),"file:/*","","")|exe "silent doau BufReadPost ".expand("<amatch>")
|
||||
au BufReadCmd file://localhost/* exe "silent doau BufReadPre ".expand("<amatch>")|exe 'e /'.substitute(expand("<amatch>"),"file:/*","","")|exe "silent doau BufReadPost ".expand("<amatch>")
|
||||
endif
|
||||
au BufReadCmd ftp://*,rcp://*,scp://*,http://*,dav://*,rsync://*,sftp://* exe "silent doau BufReadPre ".expand("<amatch>")|exe "Nread 0r ".expand("<amatch>")|exe "silent doau BufReadPost ".expand("<amatch>")
|
||||
au FileReadCmd ftp://*,rcp://*,scp://*,http://*,dav://*,rsync://*,sftp://* exe "silent doau BufReadPre ".expand("<amatch>")|exe "Nread " .expand("<amatch>")|exe "silent doau FileReadPost ".expand("<amatch>")
|
||||
au BufWriteCmd ftp://*,rcp://*,scp://*,dav://*,rsync://*,sftp://* exe "silent doau BufWritePre ".expand("<amatch>")|exe "Nwrite " .expand("<amatch>")|exe "silent doau BufWritePost ".expand("<amatch>")
|
||||
au FileWriteCmd ftp://*,rcp://*,scp://*,dav://*,rsync://*,sftp://* exe "silent doau BufWritePre ".expand("<amatch>")|exe "'[,']Nwrite " .expand("<amatch>")|exe "silent doau FileWritePost ".expand("<amatch>")
|
||||
augroup END
|
||||
|
||||
" Commands: :Nread, :Nwrite, :NetUserPass {{{2
|
||||
com! -nargs=* Nread call netrw#NetSavePosn()<bar>call netrw#NetRead(<f-args>)<bar>call netrw#NetRestorePosn()
|
||||
com! -range=% -nargs=* Nwrite call netrw#NetSavePosn()<bar><line1>,<line2>call netrw#NetWrite(<f-args>)<bar>call netrw#NetRestorePosn()
|
||||
com! -nargs=* NetUserPass call NetUserPass(<f-args>)
|
||||
|
||||
" Commands: :Explore, :Sexplore, Hexplore, Vexplore {{{2
|
||||
com! -nargs=? -bar -bang -count=0 Explore call netrw#Explore(<count>,0,0+<bang>0,<q-args>)
|
||||
com! -nargs=? -bar -bang -count=0 Sexplore call netrw#Explore(<count>,1,0+<bang>0,<q-args>)
|
||||
com! -nargs=? -bar -bang -count=0 Hexplore call netrw#Explore(<count>,1,2+<bang>0,<q-args>)
|
||||
com! -nargs=? -bar -bang -count=0 Vexplore call netrw#Explore(<count>,1,4+<bang>0,<q-args>)
|
||||
com! -nargs=? -bar -bang Nexplore call netrw#Explore(-1,0,0,<q-args>)
|
||||
com! -nargs=? -bar -bang Pexplore call netrw#Explore(-2,0,0,<q-args>)
|
||||
|
||||
" Commands: NetrwSettings {{{2
|
||||
com! -nargs=0 NetrwSettings :call NetrwSettings#NetrwSettings()
|
||||
|
||||
" ---------------------------------------------------------------------
|
||||
" LocalBrowse: {{{2
|
||||
fun! s:LocalBrowse(dirname)
|
||||
" unfortunate interaction -- debugging calls can't be used here;
|
||||
" the BufEnter event causes triggering when attempts to write to
|
||||
" the DBG buffer are made.
|
||||
if isdirectory(a:dirname)
|
||||
call netrw#DirBrowse(a:dirname)
|
||||
endif
|
||||
" not a directory, ignore it
|
||||
endfun
|
||||
|
||||
" ---------------------------------------------------------------------
|
||||
" NetrwStatusLine: {{{1
|
||||
fun! NetrwStatusLine()
|
||||
" let g:stlmsg= "Xbufnr=".w:netrw_explore_bufnr." bufnr=".bufnr(".")." Xline#".w:netrw_explore_line." line#".line(".")
|
||||
if !exists("w:netrw_explore_bufnr") || w:netrw_explore_bufnr != bufnr(".") || !exists("w:netrw_explore_line") || w:netrw_explore_line != line(".") || !exists("w:netrw_explore_list")
|
||||
let &stl= s:netrw_explore_stl
|
||||
if exists("w:netrw_explore_bufnr")|unlet w:netrw_explore_bufnr|endif
|
||||
if exists("w:netrw_explore_line")|unlet w:netrw_explore_line|endif
|
||||
return ""
|
||||
else
|
||||
return "Match ".w:netrw_explore_mtchcnt." of ".w:netrw_explore_listlen
|
||||
endif
|
||||
endfun
|
||||
|
||||
" ------------------------------------------------------------------------
|
||||
" NetUserPass: set username and password for subsequent ftp transfer {{{1
|
||||
" Usage: :call NetUserPass() -- will prompt for userid and password
|
||||
" :call NetUserPass("uid") -- will prompt for password
|
||||
" :call NetUserPass("uid","password") -- sets global userid and password
|
||||
fun! NetUserPass(...)
|
||||
|
||||
" get/set userid
|
||||
if a:0 == 0
|
||||
" call Dfunc("NetUserPass(a:0<".a:0.">)")
|
||||
if !exists("g:netrw_uid") || g:netrw_uid == ""
|
||||
" via prompt
|
||||
let g:netrw_uid= input('Enter username: ')
|
||||
endif
|
||||
else " from command line
|
||||
" call Dfunc("NetUserPass(a:1<".a:1.">) {")
|
||||
let g:netrw_uid= a:1
|
||||
endif
|
||||
|
||||
" get password
|
||||
if a:0 <= 1 " via prompt
|
||||
" call Decho("a:0=".a:0." case <=1:")
|
||||
let g:netrw_passwd= inputsecret("Enter Password: ")
|
||||
else " from command line
|
||||
" call Decho("a:0=".a:0." case >1: a:2<".a:2.">")
|
||||
let g:netrw_passwd=a:2
|
||||
endif
|
||||
" call Dret("NetUserPass")
|
||||
endfun
|
||||
|
||||
" ------------------------------------------------------------------------
|
||||
" NetReadFixup: this sort of function is typically written by the user {{{1
|
||||
" to handle extra junk that their system's ftp dumps
|
||||
" into the transfer. This function is provided as an
|
||||
" example and as a fix for a Windows 95 problem: in my
|
||||
" experience, win95's ftp always dumped four blank lines
|
||||
" at the end of the transfer.
|
||||
if has("win95") && g:netrw_win95ftp
|
||||
fun! NetReadFixup(method, line1, line2)
|
||||
" call Dfunc("NetReadFixup(method<".a:method."> line1=".a:line1." line2=".a:line2.")")
|
||||
if method == 3 " ftp (no <.netrc>)
|
||||
let fourblanklines= line2 - 3
|
||||
silent fourblanklines.",".line2."g/^\s*/d"
|
||||
endif
|
||||
" call Dret("NetReadFixup")
|
||||
endfun
|
||||
endif
|
||||
|
||||
let &cpo= s:keepcpo
|
||||
unlet s:keepcpo
|
||||
" ------------------------------------------------------------------------
|
||||
" Modelines: {{{1
|
||||
" vim:ts=8 fdm=marker
|
||||
@@ -1,157 +0,0 @@
|
||||
" NetrwSettings.vim: makes netrw settings simpler
|
||||
" Last Change: Aug 16, 2005
|
||||
" Maintainer: Charles E Campbell, Jr <drchipNOSPAM at campbellfamily dot biz>
|
||||
" Version: 3
|
||||
" Copyright: Copyright (C) 1999-2005 Charles E. Campbell, Jr. {{{1
|
||||
" Permission is hereby granted to use and distribute this code,
|
||||
" with or without modifications, provided that this copyright
|
||||
" notice is copied with it. Like anything else that's free,
|
||||
" NetrwSettings.vim is provided *as is* and comes with no
|
||||
" warranty of any kind, either expressed or implied. By using
|
||||
" this plugin, you agree that in no event will the copyright
|
||||
" holder be liable for any damages resulting from the use
|
||||
" of this software.
|
||||
"
|
||||
" Mat 4:23 (WEB) Jesus went about in all Galilee, teaching in their {{{1
|
||||
" synagogues, preaching the gospel of the kingdom, and healing
|
||||
" every disease and every sickness among the people.
|
||||
" Load Once: {{{1
|
||||
if exists("g:loaded_NetrwSettings") || &cp
|
||||
finish
|
||||
endif
|
||||
let g:loaded_NetrwSettings = "v3"
|
||||
|
||||
" ---------------------------------------------------------------------
|
||||
" NetrwSettings: {{{1
|
||||
fun! NetrwSettings#NetrwSettings()
|
||||
" this call is here largely just to insure that netrw has been loaded
|
||||
call netrw#NetSavePosn()
|
||||
|
||||
above wincmd s
|
||||
enew
|
||||
setlocal noswapfile bh=wipe
|
||||
set ft=vim
|
||||
file Netrw\ Settings
|
||||
|
||||
" these variables have the following default effects when they don't
|
||||
" exist (ie. have not been set by the user in his/her .vimrc)
|
||||
if !exists("g:netrw_longlist")
|
||||
let g:netrw_longlist= 0
|
||||
let g:netrw_list_cmd= "ssh HOSTNAME ls -FLa"
|
||||
endif
|
||||
if !exists("g:netrw_silent")
|
||||
let g:netrw_silent= 0
|
||||
endif
|
||||
if !exists("g:netrw_use_nt_rcp")
|
||||
let g:netrw_use_nt_rcp= 0
|
||||
endif
|
||||
if !exists("g:netrw_ftp")
|
||||
let g:netrw_ftp= 0
|
||||
endif
|
||||
if !exists("g:netrw_ignorenetrc")
|
||||
let g:netrw_ignorenetrc= 0
|
||||
endif
|
||||
|
||||
put ='+ ---------------------------------------------'
|
||||
put ='+ NetrwSettings: (by Charles E. Campbell, Jr.)'
|
||||
put ='+ Press ? with cursor atop any line for help '
|
||||
put ='+ ---------------------------------------------'
|
||||
let s:netrw_settings_stop= line(".")
|
||||
|
||||
put =''
|
||||
put ='+ Netrw Protocol Commands'
|
||||
put = 'let g:netrw_dav_cmd = '.g:netrw_dav_cmd
|
||||
put = 'let g:netrw_fetch_cmd = '.g:netrw_fetch_cmd
|
||||
put = 'let g:netrw_ftp_cmd = '.g:netrw_ftp_cmd
|
||||
put = 'let g:netrw_http_cmd = '.g:netrw_http_cmd
|
||||
put = 'let g:netrw_rcp_cmd = '.g:netrw_rcp_cmd
|
||||
put = 'let g:netrw_rsync_cmd = '.g:netrw_rsync_cmd
|
||||
put = 'let g:netrw_scp_cmd = '.g:netrw_scp_cmd
|
||||
put = 'let g:netrw_sftp_cmd = '.g:netrw_sftp_cmd
|
||||
let s:netrw_protocol_stop= line(".")
|
||||
put = ''
|
||||
|
||||
put ='+Netrw Transfer Control'
|
||||
put = 'let g:netrw_cygwin = '.g:netrw_cygwin
|
||||
put = 'let g:netrw_ftp = '.g:netrw_ftp
|
||||
put = 'let g:netrw_ftpmode = '.g:netrw_ftpmode
|
||||
put = 'let g:netrw_ignorenetrc = '.g:netrw_ignorenetrc
|
||||
put = 'let g:netrw_use_nt_rcp = '.g:netrw_use_nt_rcp
|
||||
put = 'let g:netrw_win95ftp = '.g:netrw_win95ftp
|
||||
let s:netrw_xfer_stop= line(".")
|
||||
|
||||
put = ''
|
||||
put ='+ Netrw Browser Control'
|
||||
put = 'let g:netrw_alto = '.g:netrw_alto
|
||||
put = 'let g:netrw_altv = '.g:netrw_altv
|
||||
put = 'let g:netrw_dirhistmax = '.g:netrw_dirhistmax
|
||||
put = 'let g:netrw_ftp_browse_reject = '.g:netrw_ftp_browse_reject
|
||||
put = 'let g:netrw_ftp_list_cmd = '.g:netrw_ftp_list_cmd
|
||||
put = 'let g:netrw_hide = '.g:netrw_hide
|
||||
put = 'let g:netrw_keepdir = '.g:netrw_keepdir
|
||||
put = 'let g:netrw_list_cmd = '.g:netrw_list_cmd
|
||||
put = 'let g:netrw_list_cmd = '.g:netrw_list_cmd
|
||||
put = 'let g:netrw_list_hide = '.g:netrw_list_hide
|
||||
put = 'let g:netrw_local_mkdir = '.g:netrw_local_mkdir
|
||||
put = 'let g:netrw_local_rmdir = '.g:netrw_local_rmdir
|
||||
put = 'let g:netrw_longlist = '.g:netrw_longlist
|
||||
put = 'let g:netrw_maxfilenamelen = '.g:netrw_maxfilenamelen
|
||||
put = 'let g:netrw_mkdir_cmd = '.g:netrw_mkdir_cmd
|
||||
put = 'let g:netrw_rename_cmd = '.g:netrw_rename_cmd
|
||||
put = 'let g:netrw_rm_cmd = '.g:netrw_rm_cmd
|
||||
put = 'let g:netrw_rmdir_cmd = '.g:netrw_rmdir_cmd
|
||||
put = 'let g:netrw_rmf_cmd = '.g:netrw_rmf_cmd
|
||||
put = 'let g:netrw_silent = '.g:netrw_silent
|
||||
put = 'let g:netrw_sort_by = '.g:netrw_sort_by
|
||||
put = 'let g:netrw_sort_direction = '.g:netrw_sort_direction
|
||||
put = 'let g:netrw_sort_sequence = '.g:netrw_sort_sequence
|
||||
put = 'let g:netrw_ssh_browse_reject = '.g:netrw_ssh_browse_reject
|
||||
put = 'let g:netrw_timefmt = '.g:netrw_timefmt
|
||||
put = 'let g:netrw_winsize = '.g:netrw_winsize
|
||||
|
||||
put =''
|
||||
put ='+ For help, place cursor on line and press ?'
|
||||
|
||||
1d
|
||||
silent %s/^+/"/e
|
||||
res 99
|
||||
silent %s/= \([^0-9].*\)$/= '\1'/e
|
||||
silent %s/= $/= ''/e
|
||||
1
|
||||
|
||||
set nomod
|
||||
|
||||
map <buffer> <silent> ? :call NetrwSettingHelp()<cr>
|
||||
let tmpfile= tempname()
|
||||
exe 'au BufWriteCmd Netrw\ Settings silent w! '.tmpfile.'|so '.tmpfile.'|call delete("'.tmpfile.'")|set nomod'
|
||||
endfun
|
||||
|
||||
" ---------------------------------------------------------------------
|
||||
" NetrwSettingHelp: {{{2
|
||||
fun! NetrwSettingHelp()
|
||||
" call Dfunc("NetrwSettingHelp()")
|
||||
let curline = getline(".")
|
||||
if curline =~ '='
|
||||
let varhelp = substitute(curline,'^\s*let ','','e')
|
||||
let varhelp = substitute(varhelp,'\s*=.*$','','e')
|
||||
" call Decho("trying help ".varhelp)
|
||||
try
|
||||
exe "he ".varhelp
|
||||
catch /^Vim\%((\a\+)\)\=:E149/
|
||||
echo "***sorry*** no help available for <".varhelp.">"
|
||||
endtry
|
||||
elseif line(".") < s:netrw_settings_stop
|
||||
he netrw-settings
|
||||
elseif line(".") < s:netrw_protocol_stop
|
||||
he netrw-externapp
|
||||
elseif line(".") < s:netrw_xfer_stop
|
||||
he netrw-variables
|
||||
else
|
||||
he netrw-browse-var
|
||||
endif
|
||||
" call Dret("NetrwSettingHelp")
|
||||
endfun
|
||||
|
||||
" ---------------------------------------------------------------------
|
||||
" Modelines: {{{1
|
||||
" vim:ts=8 fdm=marker
|
||||
@@ -1,5 +1,5 @@
|
||||
*** de_20.orig.aff Thu Aug 25 11:22:14 2005
|
||||
--- de_20.aff Thu Sep 29 11:44:41 2005
|
||||
*** de_20.orig.aff Sat Nov 26 19:59:52 2005
|
||||
--- de_20.aff Sat Nov 26 20:13:50 2005
|
||||
***************
|
||||
*** 2,3 ****
|
||||
--- 2,21 ----
|
||||
@@ -24,8 +24,28 @@
|
||||
+
|
||||
#
|
||||
***************
|
||||
*** 1225 ****
|
||||
--- 1243,1719 ----
|
||||
*** 28,31 ****
|
||||
PFX V Y 1
|
||||
! PFX V 0 ver .
|
||||
!
|
||||
|
||||
--- 46,49 ----
|
||||
PFX V Y 1
|
||||
! PFX V 0 ver .
|
||||
!
|
||||
|
||||
***************
|
||||
*** 235,237 ****
|
||||
SFX F arzt <20>rztin arzt
|
||||
! SFX F arzt <20>rztinnen arzt
|
||||
SFX F Arzt <20>rztin Arzt
|
||||
--- 253,255 ----
|
||||
SFX F arzt <20>rztin arzt
|
||||
! SFX F arzt <20>rztinnen arzt
|
||||
SFX F Arzt <20>rztin Arzt
|
||||
***************
|
||||
*** 1410 ****
|
||||
--- 1428,1904 ----
|
||||
REP <20> <20>e
|
||||
+
|
||||
+ # German phonetic transformation rules from Aspell
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
*** de_AT.orig.aff Thu Aug 25 11:22:16 2005
|
||||
--- de_AT.aff Thu Sep 29 11:44:45 2005
|
||||
*** de_AT.orig.aff Sat Nov 26 19:59:53 2005
|
||||
--- de_AT.aff Sat Nov 26 20:19:21 2005
|
||||
***************
|
||||
*** 3,4 ****
|
||||
--- 3,21 ----
|
||||
@@ -23,8 +23,8 @@
|
||||
+
|
||||
|
||||
***************
|
||||
*** 504 ****
|
||||
--- 521,997 ----
|
||||
*** 501 ****
|
||||
--- 518,994 ----
|
||||
|
||||
+
|
||||
+ # German phonetic transformation rules from Aspell
|
||||
@@ -502,8 +502,8 @@
|
||||
+ SAL ZUR<55>CK^^ ZURIK
|
||||
+ SAL ZUVER^^ ZUFA # x
|
||||
+ SAL Z Z
|
||||
*** de_AT.orig.dic Thu Aug 25 11:22:16 2005
|
||||
--- de_AT.dic Thu Aug 25 11:24:01 2005
|
||||
*** de_AT.orig.dic Sat Nov 26 19:59:54 2005
|
||||
--- de_AT.dic Sat Nov 26 20:21:22 2005
|
||||
***************
|
||||
*** 18,20 ****
|
||||
Fleischb<68>nke/N
|
||||
@@ -511,20 +511,14 @@
|
||||
Fleischhauer/NS
|
||||
--- 18,19 ----
|
||||
***************
|
||||
*** 151,153 ****
|
||||
zulieb
|
||||
- 77857
|
||||
<20>bte/N
|
||||
--- 150,151 ----
|
||||
***************
|
||||
*** 18792,18794 ****
|
||||
*** 19748,19750 ****
|
||||
Geschwulstherde
|
||||
- Geselchte/N
|
||||
Geselle/N
|
||||
--- 18790,18791 ----
|
||||
Gesellenbrief
|
||||
--- 19747,19748 ----
|
||||
***************
|
||||
*** 20472,20474 ****
|
||||
*** 21437,21439 ****
|
||||
HTML
|
||||
- H<>fen
|
||||
H<>ftling/EPS
|
||||
--- 20469,20470 ----
|
||||
--- 21435,21436 ----
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
*** de_CH.orig.aff Thu Aug 25 11:22:18 2005
|
||||
--- de_CH.aff Thu Sep 29 11:44:50 2005
|
||||
*** de_CH.orig.aff Sat Nov 26 19:38:16 2005
|
||||
--- de_CH.aff Sat Nov 26 19:38:08 2005
|
||||
***************
|
||||
*** 3,4 ****
|
||||
--- 3,21 ----
|
||||
@@ -23,8 +23,8 @@
|
||||
+
|
||||
|
||||
***************
|
||||
*** 501 ****
|
||||
--- 518,994 ----
|
||||
*** 503 ****
|
||||
--- 520,996 ----
|
||||
REP eh e
|
||||
+
|
||||
+ # German phonetic transformation rules from Aspell
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
*** de_DE.orig.aff Thu Aug 25 11:22:06 2005
|
||||
--- de_DE.aff Thu Sep 29 11:44:57 2005
|
||||
*** de_DE.orig.aff Sat Nov 26 19:59:50 2005
|
||||
--- de_DE.aff Sat Nov 26 20:25:08 2005
|
||||
***************
|
||||
*** 2,3 ****
|
||||
--- 2,21 ----
|
||||
@@ -24,8 +24,28 @@
|
||||
+
|
||||
#
|
||||
***************
|
||||
*** 1225 ****
|
||||
--- 1243,1719 ----
|
||||
*** 28,31 ****
|
||||
PFX V Y 1
|
||||
! PFX V 0 ver .
|
||||
!
|
||||
|
||||
--- 46,49 ----
|
||||
PFX V Y 1
|
||||
! PFX V 0 ver .
|
||||
!
|
||||
|
||||
***************
|
||||
*** 235,237 ****
|
||||
SFX F arzt <20>rztin arzt
|
||||
! SFX F arzt <20>rztinnen arzt
|
||||
SFX F Arzt <20>rztin Arzt
|
||||
--- 253,255 ----
|
||||
SFX F arzt <20>rztin arzt
|
||||
! SFX F arzt <20>rztinnen arzt
|
||||
SFX F Arzt <20>rztin Arzt
|
||||
***************
|
||||
*** 1410 ****
|
||||
--- 1428,1904 ----
|
||||
REP <20> <20>e
|
||||
+
|
||||
+ # German phonetic transformation rules from Aspell
|
||||
|
||||
@@ -132,6 +132,8 @@ de_AT.aff de_AT.dic: {buildcheck=}
|
||||
:delete $ZIPFILE_AT
|
||||
|
||||
:print >>de_AT.dic
|
||||
# delete the first line, the word count
|
||||
:sys $VIM de_DE.dic -e -c 1delete -c wq
|
||||
:cat de_DE.dic >>de_AT.dic
|
||||
:delete de_DE.dic
|
||||
:move de_DE.aff de_AT.aff
|
||||
@@ -184,7 +186,51 @@ diff:
|
||||
# ".new.aff" and ".new.dic" files are left behind for manual inspection.
|
||||
|
||||
check:
|
||||
:print TODO!!!!
|
||||
:assertpkg unzip patch
|
||||
:fetch $ZIPFILES
|
||||
:mkdir tmp
|
||||
:cd tmp
|
||||
@try:
|
||||
# Do the _AT one first, it overwrites the _DE files.
|
||||
:sys $UNZIP ../$ZIPFILE_AT
|
||||
:print >>de_AT.dic
|
||||
# delete the first line, the word count
|
||||
:sys ../$VIM de_DE.dic -e -c 1delete -c wq
|
||||
:cat de_DE.dic >>de_AT.dic
|
||||
:delete de_DE.dic
|
||||
:move de_DE.aff de_AT.aff
|
||||
:move README_de_DE.txt README_de_AT.txt
|
||||
|
||||
:sys $UNZIP ../$ZIPFILE_DE
|
||||
:move de_DE_comb.aff de_DE.aff
|
||||
:move de_DE_comb.dic de_DE.dic
|
||||
:move README_de_DE_comb.txt README_de_DE.txt
|
||||
|
||||
:sys $UNZIP ../$ZIPFILE_19
|
||||
:move de_OLDSPELL.aff de_19.aff
|
||||
:move de_OLDSPELL.dic de_19.dic
|
||||
# there is no README file
|
||||
:print There is no README file for the old spelling >!README_de_19.txt
|
||||
:sys $UNZIP ../$ZIPFILE_20
|
||||
:move de_DE_neu.aff de_20.aff
|
||||
:move de_DE_neu.dic de_20.dic
|
||||
:move README_de_DE_neu.txt README_de_20.txt
|
||||
|
||||
:sys $UNZIP ../$ZIPFILE_CH
|
||||
|
||||
@import stat
|
||||
@for nm in ['de_DE', 'de_19', 'de_20', 'de_AT', 'de_CH']:
|
||||
@for ext in ['aff', 'dic']:
|
||||
:sys {force} diff ../$(nm).orig.$ext $(nm).$ext >d
|
||||
@if os.stat('d')[stat.ST_SIZE] > 0:
|
||||
:copy $(nm).$ext ../$(nm).new.$ext
|
||||
:sys {force} diff ../README_$(nm).txt README_$(nm).txt >d
|
||||
@if os.stat('d')[stat.ST_SIZE] > 0:
|
||||
:copy README_$(nm).txt ../README_$(nm).new.txt
|
||||
@finally:
|
||||
:cd ..
|
||||
:delete {r}{f}{q} tmp
|
||||
:delete $ZIPFILES
|
||||
|
||||
|
||||
# vim: set sts=4 sw=4 :
|
||||
|
||||
@@ -16,8 +16,7 @@ $SPELLDIR/fo.latin1.spl : $FILES
|
||||
$VIM -u NONE -e -c "mkspell! $SPELLDIR/fo fo_FO" -c q
|
||||
|
||||
$SPELLDIR/fo.utf-8.spl : $FILES
|
||||
:sys env LANG=fo_FO.UTF-8
|
||||
$VIM -u NONE -e -c "mkspell! $SPELLDIR/fo fo_FO" -c q
|
||||
:sys $VIM -u NONE -e -c "set enc=utf-8" -c "mkspell! $SPELLDIR/fo fo_FO" -c q
|
||||
|
||||
../README_fo.txt : README_fo_FO.txt Copyright
|
||||
:cat $source >! $target
|
||||
|
||||
@@ -16,8 +16,7 @@ $SPELLDIR/gd.latin1.spl : $FILES
|
||||
$VIM -u NONE -e -c "mkspell! $SPELLDIR/gd gd_GB" -c q
|
||||
|
||||
$SPELLDIR/gd.utf-8.spl : $FILES
|
||||
:sys env LANG=gd_GB.UTF-8
|
||||
$VIM -u NONE -e -c "mkspell! $SPELLDIR/gd gd_GB" -c q
|
||||
:sys $VIM -u NONE -e -c "set enc=utf-8" -c "mkspell! $SPELLDIR/gd gd_GB" -c q
|
||||
|
||||
../README_gd.txt : README_gd_GB.txt
|
||||
:copy $source $target
|
||||
|
||||
@@ -12,11 +12,11 @@ FILES = gl_ES.aff gl_ES.dic
|
||||
all: $SPELLDIR/gl.latin1.spl $SPELLDIR/gl.utf-8.spl ../README_gl.txt
|
||||
|
||||
$SPELLDIR/gl.latin1.spl : $FILES
|
||||
:sys env LANG=gl_ES.ISO8859-1
|
||||
:sys env LANG=es_ES.ISO8859-1
|
||||
$VIM -u NONE -e -c "mkspell! $SPELLDIR/gl gl_ES" -c q
|
||||
|
||||
$SPELLDIR/gl.utf-8.spl : $FILES
|
||||
:sys env LANG=gl_ES.UTF-8
|
||||
:sys env LANG=es_ES.UTF-8
|
||||
$VIM -u NONE -e -c "mkspell! $SPELLDIR/gl gl_ES" -c q
|
||||
|
||||
../README_gl.txt : README_gl_ES.txt
|
||||
|
||||
File diff suppressed because it is too large
Load Diff
@@ -16,8 +16,7 @@ $SPELLDIR/tl.latin1.spl : $FILES
|
||||
$VIM -u NONE -e -c "mkspell! $SPELLDIR/tl tl_PH" -c q
|
||||
|
||||
$SPELLDIR/tl.utf-8.spl : $FILES
|
||||
:sys env LANG=tl_PH.UTF-8
|
||||
$VIM -u NONE -e -c "mkspell! $SPELLDIR/tl tl_PH" -c q
|
||||
:sys $VIM -u NONE -e -c "set enc=utf-8" -c "mkspell! $SPELLDIR/tl tl_PH" -c q
|
||||
|
||||
../README_tl.txt : README_tl_PH.txt
|
||||
:copy $source $target
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
" Vim syntax support file
|
||||
" Maintainer: Bram Moolenaar <Bram@vim.org>
|
||||
" Last Change: 2005 Feb 26
|
||||
" Last Change: 2005 Dec 04
|
||||
" (modified by David Ne\v{c}as (Yeti) <yeti@physics.muni.cz>)
|
||||
" (XHTML support by Panagiotis Issaris <takis@lumumba.luc.ac.be>)
|
||||
|
||||
@@ -164,6 +164,8 @@ else
|
||||
let s:html_encoding = substitute(s:vim_encoding, 'cp', 'windows-', '')
|
||||
elseif s:vim_encoding == 'sjis'
|
||||
let s:html_encoding = 'Shift_JIS'
|
||||
elseif s:vim_encoding == 'big5'
|
||||
let s:html_encoding = "Big5"
|
||||
elseif s:vim_encoding == 'euc-cn'
|
||||
let s:html_encoding = 'GB_2312-80'
|
||||
elseif s:vim_encoding == 'euc-tw'
|
||||
|
||||
@@ -1,251 +1,251 @@
|
||||
" Vim syntax file
|
||||
" Language: ColdFusion
|
||||
" Maintainer: Toby Woodwark (toby.woodwark+vim@gmail.com)
|
||||
" Last Change: 2005-11-02
|
||||
" Filenames: *.cfc *.cfm
|
||||
" Version: Macromedia ColdFusion MX 7
|
||||
" Usage: Note that ColdFusion has its own comment syntax
|
||||
" i.e. <!--- --->
|
||||
|
||||
" For version 5.x, clear all syntax items.
|
||||
" For version 6.x+, quit if a syntax file is already loaded.
|
||||
if version < 600
|
||||
syntax clear
|
||||
elseif exists("b:current_syntax")
|
||||
finish
|
||||
endif
|
||||
|
||||
" Use all the stuff from the HTML syntax file.
|
||||
" TODO remove this; CFML is not a superset of HTML
|
||||
if version < 600
|
||||
source <sfile>:p:h/html.vim
|
||||
else
|
||||
runtime! syntax/html.vim
|
||||
endif
|
||||
|
||||
syn sync fromstart
|
||||
syn sync maxlines=200
|
||||
syn case ignore
|
||||
|
||||
" Scopes and keywords.
|
||||
syn keyword cfScope contained cgi cffile request caller this thistag cfcatch variables application server session client form url attributes arguments
|
||||
syn keyword cfBool contained yes no true false
|
||||
|
||||
" Operator strings.
|
||||
" Not exhaustive, since there are longhand equivalents.
|
||||
syn keyword cfOperator contained xor eqv and or lt le lte gt ge gte eq neq not is mod contains
|
||||
syn match cfOperatorMatch contained "[\+\-\*\/\\\^\&][\+\-\*\/\\\^\&]\@!"
|
||||
syn cluster cfOperatorCluster contains=cfOperator,cfOperatorMatch
|
||||
|
||||
" Tag names.
|
||||
syn keyword cfTagName contained cfabort cfapplet cfapplication cfargument cfassociate cfbreak cfcache
|
||||
syn keyword cfTagName contained cfcalendar cfcase cfcatch cfchart cfchartdata cfchartseries cfcol cfcollection
|
||||
syn keyword cfTagName contained cfcomponent cfcontent cfcookie cfdefaultcase cfdirectory cfdocument
|
||||
syn keyword cfTagName contained cfdocumentitem cfdocumentsection cfdump cfelse cfelseif cferror cfexecute
|
||||
syn keyword cfTagName contained cfexit cffile cfflush cfform cfformgroup cfformitem cfftp cffunction cfgrid
|
||||
syn keyword cfTagName contained cfgridcolumn cfgridrow cfgridupdate cfheader cfhtmlhead cfhttp cfhttpparam cfif
|
||||
syn keyword cfTagName contained cfimport cfinclude cfindex cfinput cfinsert cfinvoke cfinvokeargument
|
||||
syn keyword cfTagName contained cfldap cflocation cflock cflog cflogin cfloginuser cflogout cfloop cfmail
|
||||
syn keyword cfTagName contained cfmailparam cfmailpart cfmodule cfNTauthenticate cfobject cfobjectcache
|
||||
syn keyword cfTagName contained cfoutput cfparam cfpop cfprocessingdirective cfprocparam cfprocresult
|
||||
syn keyword cfTagName contained cfproperty cfquery cfqueryparam cfregistry cfreport cfreportparam cfrethrow
|
||||
syn keyword cfTagName contained cfreturn cfsavecontent cfschedule cfscript cfsearch cfselect cfset cfsetting
|
||||
syn keyword cfTagName contained cfsilent cfslider cfstoredproc cfswitch cftable cftextarea cfthrow cftimer
|
||||
syn keyword cfTagName contained cftrace cftransaction cftree cftreeitem cftry cfupdate cfwddx cfxml
|
||||
|
||||
" Tag parameters.
|
||||
syn keyword cfArg contained abort accept access accessible action addnewline addtoken addtoken agentname
|
||||
syn keyword cfArg contained align appendkey appletsource application applicationtimeout applicationtoken
|
||||
syn keyword cfArg contained archive argumentcollection arguments asciiextensionlist attachmentpath
|
||||
syn keyword cfArg contained attributecollection attributes attributes autowidth backgroundcolor
|
||||
syn keyword cfArg contained backgroundvisible basetag bcc bgcolor bind bindingname blockfactor body bold
|
||||
syn keyword cfArg contained border branch cachedafter cachedwithin casesensitive categories category
|
||||
syn keyword cfArg contained categorytree cc cfsqltype charset chartheight chartwidth checked class
|
||||
syn keyword cfArg contained clientmanagement clientstorage codebase colheaderalign colheaderbold
|
||||
syn keyword cfArg contained colheaderfont colheaderfontsize colheaderitalic colheaders colheadertextcolor
|
||||
syn keyword cfArg contained collection colorlist colspacing columns completepath component condition
|
||||
syn keyword cfArg contained connection contentid context contextbytes contexthighlightbegin
|
||||
syn keyword cfArg contained contexthighlightend contextpassages cookiedomain criteria custom1 custom2
|
||||
syn keyword cfArg contained custom3 custom4 data dataalign databackgroundcolor datacollection
|
||||
syn keyword cfArg contained datalabelstyle datasource date daynames dbname dbserver dbtype dbvarname debug
|
||||
syn keyword cfArg contained default delete deletebutton deletefile delimiter delimiters description
|
||||
syn keyword cfArg contained destination detail directory disabled display displayname disposition dn domain
|
||||
syn keyword cfArg contained enablecab enablecfoutputonly enabled encoded encryption enctype enddate
|
||||
syn keyword cfArg contained endrange endrow endtime entry errorcode exception existing expand expires
|
||||
syn keyword cfArg contained expireurl expression extendedinfo extends extensions external failifexists
|
||||
syn keyword cfArg contained failto file filefield filename filter firstdayofweek firstrowasheaders font
|
||||
syn keyword cfArg contained fontbold fontembed fontitalic fontsize foregroundcolor format formfields
|
||||
syn keyword cfArg contained formula from generateuniquefilenames getasbinary grid griddataalign gridlines
|
||||
syn keyword cfArg contained groovecolor group groupcasesensitive header headeralign headerbold headerfont
|
||||
syn keyword cfArg contained headerfontsize headeritalic headerlines headertextcolor height highlighthref
|
||||
syn keyword cfArg contained hint href hrefkey hscroll hspace htmltable id idletimeout img imgopen imgstyle
|
||||
syn keyword cfArg contained index inline input insert insertbutton interval isolation italic item
|
||||
syn keyword cfArg contained itemcolumn key keyonly label labelformat language list listgroups locale
|
||||
syn keyword cfArg contained localfile log loginstorage lookandfeel mailerid mailto marginbottom marginleft
|
||||
syn keyword cfArg contained marginright marginright margintop markersize markerstyle mask maxlength maxrows
|
||||
syn keyword cfArg contained message messagenumber method mimeattach mimetype mode modifytype monthnames
|
||||
syn keyword cfArg contained multipart multiple name namecomplict nameconflict namespace new newdirectory
|
||||
syn keyword cfArg contained notsupported null numberformat object omit onchange onclick onerror onkeydown
|
||||
syn keyword cfArg contained onkeyup onload onmousedown onmouseup onreset onsubmit onvalidate operation
|
||||
syn keyword cfArg contained orderby orientation output outputfile overwrite ownerpassword pageencoding
|
||||
syn keyword cfArg contained pageheight pagetype pagewidth paintstyle param_1 param_2 param_3 param_4
|
||||
syn keyword cfArg contained param_5 parent passive passthrough password path pattern permissions picturebar
|
||||
syn keyword cfArg contained pieslicestyle port porttypename prefix preloader preservedata previouscriteria
|
||||
syn keyword cfArg contained procedure protocol provider providerdsn proxybypass proxypassword proxyport
|
||||
syn keyword cfArg contained proxyserver proxyuser publish query queryasroot queryposition range rebind
|
||||
syn keyword cfArg contained recurse redirect referral refreshlabel remotefile replyto report requesttimeout
|
||||
syn keyword cfArg contained required reset resolveurl result resultset retrycount returnasbinary returncode
|
||||
syn keyword cfArg contained returntype returnvariable roles rowheaderalign rowheaderbold rowheaderfont
|
||||
syn keyword cfArg contained rowheaderfontsize rowheaderitalic rowheaders rowheadertextcolor rowheaderwidth
|
||||
syn keyword cfArg contained rowheight scale scalefrom scaleto scope scriptprotect scriptsrc secure
|
||||
syn keyword cfArg contained securitycontext select selectcolor selected selecteddate selectedindex
|
||||
syn keyword cfArg contained selectmode separator seriescolor serieslabel seriesplacement server serviceport
|
||||
syn keyword cfArg contained serviceportname sessionmanagement sessiontimeout setclientcookies setcookie
|
||||
syn keyword cfArg contained setdomaincookies show3d showborder showdebugoutput showerror showlegend
|
||||
syn keyword cfArg contained showmarkers showxgridlines showygridlines size skin sort sortascendingbutton
|
||||
syn keyword cfArg contained sortcontrol sortdescendingbutton sortxaxis source spoolenable sql src start
|
||||
syn keyword cfArg contained startdate startrange startrow starttime status statuscode statustext step
|
||||
syn keyword cfArg contained stoponerror style subject suggestions suppresswhitespace tablename tableowner
|
||||
syn keyword cfArg contained tablequalifier taglib target task template text textcolor textqualifier
|
||||
syn keyword cfArg contained thread throwonerror throwonfailure throwontimeout time timeout timespan tipbgcolor tipstyle
|
||||
syn keyword cfArg contained title to tooltip top toplevelvariable transfermode type uid unit url urlpath
|
||||
syn keyword cfArg contained useragent username userpassword usetimezoneinfo validate validateat value
|
||||
syn keyword cfArg contained valuecolumn values valuesdelimiter valuesdisplay var variable vertical visible
|
||||
syn keyword cfArg contained vscroll vspace webservice width wmode wraptext wsdlfile xaxistitle xaxistype
|
||||
syn keyword cfArg contained xoffset yaxistitle yaxistype yoffset
|
||||
|
||||
" ColdFusion Functions.
|
||||
syn keyword cfFunctionName contained Abs GetFunctionList Max ACos GetGatewayHelper Mid AddSOAPRequestHeader
|
||||
syn keyword cfFunctionName contained GetHttpRequestData Min AddSOAPResponseHeader GetHttpTimeString Minute
|
||||
syn keyword cfFunctionName contained ArrayAppend GetLocale Month ArrayAvg GetLocaleDisplayName MonthAsString
|
||||
syn keyword cfFunctionName contained ArrayClear GetMetaData Now ArrayDeleteAt GetMetricData NumberFormat
|
||||
syn keyword cfFunctionName contained ArrayInsertAt GetPageContext ParagraphFormat ArrayIsEmpty GetProfileSections
|
||||
syn keyword cfFunctionName contained ParseDateTime ArrayLen GetProfileString Pi ArrayMax GetSOAPRequest
|
||||
syn keyword cfFunctionName contained PreserveSingleQuotes ArrayMin GetSOAPRequestHeader Quarter ArrayNew
|
||||
syn keyword cfFunctionName contained GetSOAPResponse QueryAddColumn ArrayPrepend GetSOAPResponseHeader QueryAddRow
|
||||
syn keyword cfFunctionName contained ArrayResize GetTempDirectory QueryNew ArraySet GetTempFile QuerySetCell
|
||||
syn keyword cfFunctionName contained ArraySort GetTickCount QuotedValueList ArraySum GetTimeZoneInfo Rand ArraySwap
|
||||
syn keyword cfFunctionName contained GetToken Randomize ArrayToList Hash RandRange Asc Hour REFind ASin
|
||||
syn keyword cfFunctionName contained HTMLCodeFormat REFindNoCase Atn HTMLEditFormat ReleaseComObject BinaryDecode
|
||||
syn keyword cfFunctionName contained IIf RemoveChars BinaryEncode IncrementValue RepeatString BitAnd InputBaseN
|
||||
syn keyword cfFunctionName contained Replace BitMaskClear Insert ReplaceList BitMaskRead Int ReplaceNoCase
|
||||
syn keyword cfFunctionName contained BitMaskSet IsArray REReplace BitNot IsBinary REReplaceNoCase BitOr IsBoolean
|
||||
syn keyword cfFunctionName contained Reverse BitSHLN IsCustomFunction Right BitSHRN IsDate RJustify BitXor
|
||||
syn keyword cfFunctionName contained IsDebugMode Round Ceiling IsDefined RTrim CharsetDecode IsLeapYear Second
|
||||
syn keyword cfFunctionName contained CharsetEncode IsNumeric SendGatewayMessage Chr IsNumericDate SetEncoding
|
||||
syn keyword cfFunctionName contained CJustify IsObject SetLocale Compare IsQuery SetProfileString CompareNoCase
|
||||
syn keyword cfFunctionName contained IsSimpleValue SetVariable Cos IsSOAPRequest Sgn CreateDate IsStruct Sin
|
||||
syn keyword cfFunctionName contained CreateDateTime IsUserInRole SpanExcluding CreateObject IsValid SpanIncluding
|
||||
syn keyword cfFunctionName contained CreateODBCDate IsWDDX Sqr CreateODBCDateTime IsXML StripCR CreateODBCTime
|
||||
syn keyword cfFunctionName contained IsXmlAttribute StructAppend CreateTime IsXmlDoc StructClear CreateTimeSpan
|
||||
syn keyword cfFunctionName contained IsXmlElem StructCopy CreateUUID IsXmlNode StructCount DateAdd IsXmlRoot
|
||||
syn keyword cfFunctionName contained StructDelete DateCompare JavaCast StructFind DateConvert JSStringFormat
|
||||
syn keyword cfFunctionName contained StructFindKey DateDiff LCase StructFindValue DateFormat Left StructGet
|
||||
syn keyword cfFunctionName contained DatePart Len StructInsert Day ListAppend StructIsEmpty DayOfWeek
|
||||
syn keyword cfFunctionName contained ListChangeDelims StructKeyArray DayOfWeekAsString ListContains StructKeyExists
|
||||
syn keyword cfFunctionName contained DayOfYear ListContainsNoCase StructKeyList DaysInMonth ListDeleteAt StructNew
|
||||
syn keyword cfFunctionName contained DaysInYear ListFind StructSort DE ListFindNoCase StructUpdate DecimalFormat
|
||||
syn keyword cfFunctionName contained ListFirst Tan DecrementValue ListGetAt TimeFormat Decrypt ListInsertAt
|
||||
syn keyword cfFunctionName contained ToBase64 DeleteClientVariable ListLast ToBinary DirectoryExists ListLen
|
||||
syn keyword cfFunctionName contained ToScript DollarFormat ListPrepend ToString Duplicate ListQualify Trim Encrypt
|
||||
syn keyword cfFunctionName contained ListRest UCase Evaluate ListSetAt URLDecode Exp ListSort URLEncodedFormat
|
||||
syn keyword cfFunctionName contained ExpandPath ListToArray URLSessionFormat FileExists ListValueCount Val Find
|
||||
syn keyword cfFunctionName contained ListValueCountNoCase ValueList FindNoCase LJustify Week FindOneOf Log Wrap
|
||||
syn keyword cfFunctionName contained FirstDayOfMonth Log10 WriteOutput Fix LSCurrencyFormat XmlChildPos FormatBaseN
|
||||
syn keyword cfFunctionName contained LSDateFormat XmlElemNew GetTempDirectory LSEuroCurrencyFormat XmlFormat
|
||||
syn keyword cfFunctionName contained GetAuthUser LSIsCurrency XmlGetNodeType GetBaseTagData LSIsDate XmlNew
|
||||
syn keyword cfFunctionName contained GetBaseTagList LSIsNumeric XmlParse GetBaseTemplatePath LSNumberFormat
|
||||
syn keyword cfFunctionName contained XmlSearch GetClientVariablesList LSParseCurrency XmlTransform
|
||||
syn keyword cfFunctionName contained GetCurrentTemplatePath LSParseDateTime XmlValidate GetDirectoryFromPath
|
||||
syn keyword cfFunctionName contained LSParseEuroCurrency Year GetEncoding LSParseNumber YesNoFormat GetException
|
||||
syn keyword cfFunctionName contained LSTimeFormat GetFileFromPath LTrim
|
||||
|
||||
syn cluster htmlTagNameCluster add=cfTagName
|
||||
syn cluster htmlArgCluster add=cfArg,cfHashRegion,cfScope
|
||||
syn cluster htmlPreproc add=cfHashRegion
|
||||
|
||||
syn cluster cfExpressionCluster contains=cfFunctionName,cfScope,@cfOperatorCluster,cfScriptStringD,cfScriptStringS,cfScriptNumber,cfBool
|
||||
|
||||
" Evaluation; skip strings ( this helps with cases like nested IIf() )
|
||||
syn region cfHashRegion start=+#+ skip=+"[^"]*"\|'[^']*'+ end=+#+ contains=@cfExpressionCluster,cfScriptParenError
|
||||
|
||||
" <cfset>, <cfif>, <cfelseif>, <cfreturn> are analogous to hashmarks (implicit evaluation) and has 'var'
|
||||
syn region cfSetRegion start="<cfset " start="<cfreturn " start="<cfelseif " start="<cfif " end='>' keepend contains=@cfExpressionCluster,cfSetLHSRegion,cfSetTagEnd,cfScriptType
|
||||
syn region cfSetLHSRegion contained start="<cfreturn" start="<cfelseif" start="<cfif" start="<cfset" end=" " keepend contains=cfTagName,htmlTag
|
||||
syn match cfSetTagEnd contained '>'
|
||||
|
||||
" CF comments: similar to SGML comments
|
||||
syn region cfComment start='<!---' end='--->' keepend contains=cfCommentTodo
|
||||
syn keyword cfCommentTodo contained TODO FIXME XXX TBD WTF
|
||||
|
||||
" CFscript
|
||||
syn match cfScriptLineComment contained "\/\/.*$" contains=cfCommentTodo
|
||||
syn region cfScriptComment contained start="/\*" end="\*/" contains=cfCommentTodo
|
||||
" in CF, quotes are escaped by doubling
|
||||
syn region cfScriptStringD contained start=+"+ skip=+\\\\\|""+ end=+"+ extend contains=@htmlPreproc,cfHashRegion
|
||||
syn region cfScriptStringS contained start=+'+ skip=+\\\\\|''+ end=+'+ extend contains=@htmlPreproc,cfHashRegion
|
||||
syn match cfScriptNumber contained "-\=\<\d\+L\=\>"
|
||||
syn keyword cfScriptConditional contained if else
|
||||
syn keyword cfScriptRepeat contained while for in
|
||||
syn keyword cfScriptBranch contained break switch case try catch continue
|
||||
syn keyword cfScriptFunction contained function
|
||||
syn keyword cfScriptType contained var
|
||||
syn match cfScriptBraces contained "[{}]"
|
||||
syn keyword cfScriptStatement contained return
|
||||
|
||||
syn cluster cfScriptCluster contains=cfScriptParen,cfScriptLineComment,cfScriptComment,cfScriptStringD,cfScriptStringS,cfScriptFunction,cfScriptNumber,cfScriptRegexpString,cfScriptBoolean,cfScriptBraces,cfHashRegion,cfFunctionName,cfScope,@cfOperatorCluster,cfScriptConditional,cfScriptRepeat,cfScriptBranch,cfScriptType,@cfExpressionCluster,cfScriptStatement
|
||||
|
||||
" Errors caused by wrong parenthesis; skip strings
|
||||
syn region cfScriptParen contained transparent skip=+"[^"]*"\|'[^']*'+ start=+(+ end=+)+ contains=@cfScriptCluster
|
||||
syn match cfScrParenError contained +)+
|
||||
|
||||
syn region cfscriptBlock matchgroup=NONE start="<cfscript>" end="<\/cfscript>"me=s-1 keepend contains=@cfScriptCluster,cfscriptTag,cfScrParenError
|
||||
syn region cfscriptTag contained start='<cfscript' end='>' keepend contains=cfTagName,htmlTag
|
||||
|
||||
" Define the default highlighting.
|
||||
if version >= 508 || !exists("did_cf_syn_inits")
|
||||
if version < 508
|
||||
let did_cf_syn_inits = 1
|
||||
command -nargs=+ HiLink hi link <args>
|
||||
else
|
||||
command -nargs=+ HiLink hi def link <args>
|
||||
endif
|
||||
|
||||
HiLink cfTagName Statement
|
||||
HiLink cfArg Type
|
||||
HiLink cfFunctionName Function
|
||||
HiLink cfHashRegion PreProc
|
||||
HiLink cfComment Comment
|
||||
HiLink cfCommentTodo Todo
|
||||
HiLink cfOperator Operator
|
||||
HiLink cfOperatorMatch Operator
|
||||
HiLink cfScope Title
|
||||
HiLink cfBool Constant
|
||||
|
||||
HiLink cfscriptBlock Special
|
||||
HiLink cfscriptTag htmlTag
|
||||
HiLink cfSetRegion PreProc
|
||||
HiLink cfSetLHSRegion htmlTag
|
||||
HiLink cfSetTagEnd htmlTag
|
||||
|
||||
HiLink cfScriptLineComment Comment
|
||||
HiLink cfScriptComment Comment
|
||||
HiLink cfScriptStringS String
|
||||
HiLink cfScriptStringD String
|
||||
HiLink cfScriptNumber cfScriptValue
|
||||
HiLink cfScriptConditional Conditional
|
||||
HiLink cfScriptRepeat Repeat
|
||||
HiLink cfScriptBranch Conditional
|
||||
HiLink cfScriptType Type
|
||||
HiLink cfScriptStatement Statement
|
||||
HiLink cfScriptBraces Function
|
||||
HiLink cfScriptFunction Function
|
||||
HiLink cfScriptError Error
|
||||
HiLink cfScrParenError cfScriptError
|
||||
|
||||
delcommand HiLink
|
||||
endif
|
||||
|
||||
let b:current_syntax = "cf"
|
||||
|
||||
" vim: ts=8 sw=2
|
||||
" Vim syntax file
|
||||
" Language: ColdFusion
|
||||
" Maintainer: Toby Woodwark (toby.woodwark+vim@gmail.com)
|
||||
" Last Change: 2005 Nov 25
|
||||
" Filenames: *.cfc *.cfm
|
||||
" Version: Macromedia ColdFusion MX 7
|
||||
" Usage: Note that ColdFusion has its own comment syntax
|
||||
" i.e. <!--- --->
|
||||
|
||||
" For version 5.x, clear all syntax items.
|
||||
" For version 6.x+, quit if a syntax file is already loaded.
|
||||
if version < 600
|
||||
syntax clear
|
||||
elseif exists("b:current_syntax")
|
||||
finish
|
||||
endif
|
||||
|
||||
" Use all the stuff from the HTML syntax file.
|
||||
" TODO remove this; CFML is not a superset of HTML
|
||||
if version < 600
|
||||
source <sfile>:p:h/html.vim
|
||||
else
|
||||
runtime! syntax/html.vim
|
||||
endif
|
||||
|
||||
syn sync fromstart
|
||||
syn sync maxlines=200
|
||||
syn case ignore
|
||||
|
||||
" Scopes and keywords.
|
||||
syn keyword cfScope contained cgi cffile request caller this thistag cfcatch variables application server session client form url attributes arguments
|
||||
syn keyword cfBool contained yes no true false
|
||||
|
||||
" Operator strings.
|
||||
" Not exhaustive, since there are longhand equivalents.
|
||||
syn keyword cfOperator contained xor eqv and or lt le lte gt ge gte eq neq not is mod contains
|
||||
syn match cfOperatorMatch contained "[\+\-\*\/\\\^\&][\+\-\*\/\\\^\&]\@!"
|
||||
syn cluster cfOperatorCluster contains=cfOperator,cfOperatorMatch
|
||||
|
||||
" Tag names.
|
||||
syn keyword cfTagName contained cfabort cfapplet cfapplication cfargument cfassociate cfbreak cfcache
|
||||
syn keyword cfTagName contained cfcalendar cfcase cfcatch cfchart cfchartdata cfchartseries cfcol cfcollection
|
||||
syn keyword cfTagName contained cfcomponent cfcontent cfcookie cfdefaultcase cfdirectory cfdocument
|
||||
syn keyword cfTagName contained cfdocumentitem cfdocumentsection cfdump cfelse cfelseif cferror cfexecute
|
||||
syn keyword cfTagName contained cfexit cffile cfflush cfform cfformgroup cfformitem cfftp cffunction cfgrid
|
||||
syn keyword cfTagName contained cfgridcolumn cfgridrow cfgridupdate cfheader cfhtmlhead cfhttp cfhttpparam cfif
|
||||
syn keyword cfTagName contained cfimport cfinclude cfindex cfinput cfinsert cfinvoke cfinvokeargument
|
||||
syn keyword cfTagName contained cfldap cflocation cflock cflog cflogin cfloginuser cflogout cfloop cfmail
|
||||
syn keyword cfTagName contained cfmailparam cfmailpart cfmodule cfNTauthenticate cfobject cfobjectcache
|
||||
syn keyword cfTagName contained cfoutput cfparam cfpop cfprocessingdirective cfprocparam cfprocresult
|
||||
syn keyword cfTagName contained cfproperty cfquery cfqueryparam cfregistry cfreport cfreportparam cfrethrow
|
||||
syn keyword cfTagName contained cfreturn cfsavecontent cfschedule cfscript cfsearch cfselect cfset cfsetting
|
||||
syn keyword cfTagName contained cfsilent cfslider cfstoredproc cfswitch cftable cftextarea cfthrow cftimer
|
||||
syn keyword cfTagName contained cftrace cftransaction cftree cftreeitem cftry cfupdate cfwddx cfxml
|
||||
|
||||
" Tag parameters.
|
||||
syn keyword cfArg contained abort accept access accessible action addnewline addtoken addtoken agentname
|
||||
syn keyword cfArg contained align appendkey appletsource application applicationtimeout applicationtoken
|
||||
syn keyword cfArg contained archive argumentcollection arguments asciiextensionlist attachmentpath
|
||||
syn keyword cfArg contained attributecollection attributes attributes autowidth backgroundcolor
|
||||
syn keyword cfArg contained backgroundvisible basetag bcc bgcolor bind bindingname blockfactor body bold
|
||||
syn keyword cfArg contained border branch cachedafter cachedwithin casesensitive categories category
|
||||
syn keyword cfArg contained categorytree cc cfsqltype charset chartheight chartwidth checked class
|
||||
syn keyword cfArg contained clientmanagement clientstorage codebase colheaderalign colheaderbold
|
||||
syn keyword cfArg contained colheaderfont colheaderfontsize colheaderitalic colheaders colheadertextcolor
|
||||
syn keyword cfArg contained collection colorlist colspacing columns completepath component condition
|
||||
syn keyword cfArg contained connection contentid context contextbytes contexthighlightbegin
|
||||
syn keyword cfArg contained contexthighlightend contextpassages cookiedomain criteria custom1 custom2
|
||||
syn keyword cfArg contained custom3 custom4 data dataalign databackgroundcolor datacollection
|
||||
syn keyword cfArg contained datalabelstyle datasource date daynames dbname dbserver dbtype dbvarname debug
|
||||
syn keyword cfArg contained default delete deletebutton deletefile delimiter delimiters description
|
||||
syn keyword cfArg contained destination detail directory disabled display displayname disposition dn domain
|
||||
syn keyword cfArg contained enablecab enablecfoutputonly enabled encoded encryption enctype enddate
|
||||
syn keyword cfArg contained endrange endrow endtime entry errorcode exception existing expand expires
|
||||
syn keyword cfArg contained expireurl expression extendedinfo extends extensions external failifexists
|
||||
syn keyword cfArg contained failto file filefield filename filter firstdayofweek firstrowasheaders font
|
||||
syn keyword cfArg contained fontbold fontembed fontitalic fontsize foregroundcolor format formfields
|
||||
syn keyword cfArg contained formula from generateuniquefilenames getasbinary grid griddataalign gridlines
|
||||
syn keyword cfArg contained groovecolor group groupcasesensitive header headeralign headerbold headerfont
|
||||
syn keyword cfArg contained headerfontsize headeritalic headerlines headertextcolor height highlighthref
|
||||
syn keyword cfArg contained hint href hrefkey hscroll hspace htmltable id idletimeout img imgopen imgstyle
|
||||
syn keyword cfArg contained index inline input insert insertbutton interval isolation italic item
|
||||
syn keyword cfArg contained itemcolumn key keyonly label labelformat language list listgroups locale
|
||||
syn keyword cfArg contained localfile log loginstorage lookandfeel mailerid mailto marginbottom marginleft
|
||||
syn keyword cfArg contained marginright marginright margintop markersize markerstyle mask maxlength maxrows
|
||||
syn keyword cfArg contained message messagenumber method mimeattach mimetype mode modifytype monthnames
|
||||
syn keyword cfArg contained multipart multiple name namecomplict nameconflict namespace new newdirectory
|
||||
syn keyword cfArg contained notsupported null numberformat object omit onchange onclick onerror onkeydown
|
||||
syn keyword cfArg contained onkeyup onload onmousedown onmouseup onreset onsubmit onvalidate operation
|
||||
syn keyword cfArg contained orderby orientation output outputfile overwrite ownerpassword pageencoding
|
||||
syn keyword cfArg contained pageheight pagetype pagewidth paintstyle param_1 param_2 param_3 param_4
|
||||
syn keyword cfArg contained param_5 parent passive passthrough password path pattern permissions picturebar
|
||||
syn keyword cfArg contained pieslicestyle port porttypename prefix preloader preservedata previouscriteria
|
||||
syn keyword cfArg contained procedure protocol provider providerdsn proxybypass proxypassword proxyport
|
||||
syn keyword cfArg contained proxyserver proxyuser publish query queryasroot queryposition range rebind
|
||||
syn keyword cfArg contained recurse redirect referral refreshlabel remotefile replyto report requesttimeout
|
||||
syn keyword cfArg contained required reset resolveurl result resultset retrycount returnasbinary returncode
|
||||
syn keyword cfArg contained returntype returnvariable roles rowheaderalign rowheaderbold rowheaderfont
|
||||
syn keyword cfArg contained rowheaderfontsize rowheaderitalic rowheaders rowheadertextcolor rowheaderwidth
|
||||
syn keyword cfArg contained rowheight scale scalefrom scaleto scope scriptprotect scriptsrc secure
|
||||
syn keyword cfArg contained securitycontext select selectcolor selected selecteddate selectedindex
|
||||
syn keyword cfArg contained selectmode separator seriescolor serieslabel seriesplacement server serviceport
|
||||
syn keyword cfArg contained serviceportname sessionmanagement sessiontimeout setclientcookies setcookie
|
||||
syn keyword cfArg contained setdomaincookies show3d showborder showdebugoutput showerror showlegend
|
||||
syn keyword cfArg contained showmarkers showxgridlines showygridlines size skin sort sortascendingbutton
|
||||
syn keyword cfArg contained sortcontrol sortdescendingbutton sortxaxis source spoolenable sql src start
|
||||
syn keyword cfArg contained startdate startrange startrow starttime status statuscode statustext step
|
||||
syn keyword cfArg contained stoponerror style subject suggestions suppresswhitespace tablename tableowner
|
||||
syn keyword cfArg contained tablequalifier taglib target task template text textcolor textqualifier
|
||||
syn keyword cfArg contained thread throwonerror throwonfailure throwontimeout time timeout timespan tipbgcolor tipstyle
|
||||
syn keyword cfArg contained title to tooltip top toplevelvariable transfermode type uid unit url urlpath
|
||||
syn keyword cfArg contained useragent username userpassword usetimezoneinfo validate validateat value
|
||||
syn keyword cfArg contained valuecolumn values valuesdelimiter valuesdisplay var variable vertical visible
|
||||
syn keyword cfArg contained vscroll vspace webservice width wmode wraptext wsdlfile xaxistitle xaxistype
|
||||
syn keyword cfArg contained xoffset yaxistitle yaxistype yoffset
|
||||
|
||||
" ColdFusion Functions.
|
||||
syn keyword cfFunctionName contained Abs GetFunctionList Max ACos GetGatewayHelper Mid AddSOAPRequestHeader
|
||||
syn keyword cfFunctionName contained GetHttpRequestData Min AddSOAPResponseHeader GetHttpTimeString Minute
|
||||
syn keyword cfFunctionName contained ArrayAppend GetLocale Month ArrayAvg GetLocaleDisplayName MonthAsString
|
||||
syn keyword cfFunctionName contained ArrayClear GetMetaData Now ArrayDeleteAt GetMetricData NumberFormat
|
||||
syn keyword cfFunctionName contained ArrayInsertAt GetPageContext ParagraphFormat ArrayIsEmpty GetProfileSections
|
||||
syn keyword cfFunctionName contained ParseDateTime ArrayLen GetProfileString Pi ArrayMax GetSOAPRequest
|
||||
syn keyword cfFunctionName contained PreserveSingleQuotes ArrayMin GetSOAPRequestHeader Quarter ArrayNew
|
||||
syn keyword cfFunctionName contained GetSOAPResponse QueryAddColumn ArrayPrepend GetSOAPResponseHeader QueryAddRow
|
||||
syn keyword cfFunctionName contained ArrayResize GetTempDirectory QueryNew ArraySet GetTempFile QuerySetCell
|
||||
syn keyword cfFunctionName contained ArraySort GetTickCount QuotedValueList ArraySum GetTimeZoneInfo Rand ArraySwap
|
||||
syn keyword cfFunctionName contained GetToken Randomize ArrayToList Hash RandRange Asc Hour REFind ASin
|
||||
syn keyword cfFunctionName contained HTMLCodeFormat REFindNoCase Atn HTMLEditFormat ReleaseComObject BinaryDecode
|
||||
syn keyword cfFunctionName contained IIf RemoveChars BinaryEncode IncrementValue RepeatString BitAnd InputBaseN
|
||||
syn keyword cfFunctionName contained Replace BitMaskClear Insert ReplaceList BitMaskRead Int ReplaceNoCase
|
||||
syn keyword cfFunctionName contained BitMaskSet IsArray REReplace BitNot IsBinary REReplaceNoCase BitOr IsBoolean
|
||||
syn keyword cfFunctionName contained Reverse BitSHLN IsCustomFunction Right BitSHRN IsDate RJustify BitXor
|
||||
syn keyword cfFunctionName contained IsDebugMode Round Ceiling IsDefined RTrim CharsetDecode IsLeapYear Second
|
||||
syn keyword cfFunctionName contained CharsetEncode IsNumeric SendGatewayMessage Chr IsNumericDate SetEncoding
|
||||
syn keyword cfFunctionName contained CJustify IsObject SetLocale Compare IsQuery SetProfileString CompareNoCase
|
||||
syn keyword cfFunctionName contained IsSimpleValue SetVariable Cos IsSOAPRequest Sgn CreateDate IsStruct Sin
|
||||
syn keyword cfFunctionName contained CreateDateTime IsUserInRole SpanExcluding CreateObject IsValid SpanIncluding
|
||||
syn keyword cfFunctionName contained CreateODBCDate IsWDDX Sqr CreateODBCDateTime IsXML StripCR CreateODBCTime
|
||||
syn keyword cfFunctionName contained IsXmlAttribute StructAppend CreateTime IsXmlDoc StructClear CreateTimeSpan
|
||||
syn keyword cfFunctionName contained IsXmlElem StructCopy CreateUUID IsXmlNode StructCount DateAdd IsXmlRoot
|
||||
syn keyword cfFunctionName contained StructDelete DateCompare JavaCast StructFind DateConvert JSStringFormat
|
||||
syn keyword cfFunctionName contained StructFindKey DateDiff LCase StructFindValue DateFormat Left StructGet
|
||||
syn keyword cfFunctionName contained DatePart Len StructInsert Day ListAppend StructIsEmpty DayOfWeek
|
||||
syn keyword cfFunctionName contained ListChangeDelims StructKeyArray DayOfWeekAsString ListContains StructKeyExists
|
||||
syn keyword cfFunctionName contained DayOfYear ListContainsNoCase StructKeyList DaysInMonth ListDeleteAt StructNew
|
||||
syn keyword cfFunctionName contained DaysInYear ListFind StructSort DE ListFindNoCase StructUpdate DecimalFormat
|
||||
syn keyword cfFunctionName contained ListFirst Tan DecrementValue ListGetAt TimeFormat Decrypt ListInsertAt
|
||||
syn keyword cfFunctionName contained ToBase64 DeleteClientVariable ListLast ToBinary DirectoryExists ListLen
|
||||
syn keyword cfFunctionName contained ToScript DollarFormat ListPrepend ToString Duplicate ListQualify Trim Encrypt
|
||||
syn keyword cfFunctionName contained ListRest UCase Evaluate ListSetAt URLDecode Exp ListSort URLEncodedFormat
|
||||
syn keyword cfFunctionName contained ExpandPath ListToArray URLSessionFormat FileExists ListValueCount Val Find
|
||||
syn keyword cfFunctionName contained ListValueCountNoCase ValueList FindNoCase LJustify Week FindOneOf Log Wrap
|
||||
syn keyword cfFunctionName contained FirstDayOfMonth Log10 WriteOutput Fix LSCurrencyFormat XmlChildPos FormatBaseN
|
||||
syn keyword cfFunctionName contained LSDateFormat XmlElemNew GetTempDirectory LSEuroCurrencyFormat XmlFormat
|
||||
syn keyword cfFunctionName contained GetAuthUser LSIsCurrency XmlGetNodeType GetBaseTagData LSIsDate XmlNew
|
||||
syn keyword cfFunctionName contained GetBaseTagList LSIsNumeric XmlParse GetBaseTemplatePath LSNumberFormat
|
||||
syn keyword cfFunctionName contained XmlSearch GetClientVariablesList LSParseCurrency XmlTransform
|
||||
syn keyword cfFunctionName contained GetCurrentTemplatePath LSParseDateTime XmlValidate GetDirectoryFromPath
|
||||
syn keyword cfFunctionName contained LSParseEuroCurrency Year GetEncoding LSParseNumber YesNoFormat GetException
|
||||
syn keyword cfFunctionName contained LSTimeFormat GetFileFromPath LTrim
|
||||
|
||||
syn cluster htmlTagNameCluster add=cfTagName
|
||||
syn cluster htmlArgCluster add=cfArg,cfHashRegion,cfScope
|
||||
syn cluster htmlPreproc add=cfHashRegion
|
||||
|
||||
syn cluster cfExpressionCluster contains=cfFunctionName,cfScope,@cfOperatorCluster,cfScriptStringD,cfScriptStringS,cfScriptNumber,cfBool
|
||||
|
||||
" Evaluation; skip strings ( this helps with cases like nested IIf() )
|
||||
syn region cfHashRegion start=+#+ skip=+"[^"]*"\|'[^']*'+ end=+#+ contains=@cfExpressionCluster,cfScriptParenError
|
||||
|
||||
" <cfset>, <cfif>, <cfelseif>, <cfreturn> are analogous to hashmarks (implicit evaluation) and has 'var'
|
||||
syn region cfSetRegion start="<cfset " start="<cfreturn " start="<cfelseif " start="<cfif " end='>' keepend contains=@cfExpressionCluster,cfSetLHSRegion,cfSetTagEnd,cfScriptType
|
||||
syn region cfSetLHSRegion contained start="<cfreturn" start="<cfelseif" start="<cfif" start="<cfset" end=" " keepend contains=cfTagName,htmlTag
|
||||
syn match cfSetTagEnd contained '>'
|
||||
|
||||
" CF comments: similar to SGML comments
|
||||
syn region cfComment start='<!---' end='--->' keepend contains=cfCommentTodo
|
||||
syn keyword cfCommentTodo contained TODO FIXME XXX TBD WTF
|
||||
|
||||
" CFscript
|
||||
syn match cfScriptLineComment contained "\/\/.*$" contains=cfCommentTodo
|
||||
syn region cfScriptComment contained start="/\*" end="\*/" contains=cfCommentTodo
|
||||
" in CF, quotes are escaped by doubling
|
||||
syn region cfScriptStringD contained start=+"+ skip=+\\\\\|""+ end=+"+ extend contains=@htmlPreproc,cfHashRegion
|
||||
syn region cfScriptStringS contained start=+'+ skip=+\\\\\|''+ end=+'+ extend contains=@htmlPreproc,cfHashRegion
|
||||
syn match cfScriptNumber contained "-\=\<\d\+L\=\>"
|
||||
syn keyword cfScriptConditional contained if else
|
||||
syn keyword cfScriptRepeat contained while for in
|
||||
syn keyword cfScriptBranch contained break switch case try catch continue
|
||||
syn keyword cfScriptFunction contained function
|
||||
syn keyword cfScriptType contained var
|
||||
syn match cfScriptBraces contained "[{}]"
|
||||
syn keyword cfScriptStatement contained return
|
||||
|
||||
syn cluster cfScriptCluster contains=cfScriptParen,cfScriptLineComment,cfScriptComment,cfScriptStringD,cfScriptStringS,cfScriptFunction,cfScriptNumber,cfScriptRegexpString,cfScriptBoolean,cfScriptBraces,cfHashRegion,cfFunctionName,cfScope,@cfOperatorCluster,cfScriptConditional,cfScriptRepeat,cfScriptBranch,cfScriptType,@cfExpressionCluster,cfScriptStatement
|
||||
|
||||
" Errors caused by wrong parenthesis; skip strings
|
||||
syn region cfScriptParen contained transparent skip=+"[^"]*"\|'[^']*'+ start=+(+ end=+)+ contains=@cfScriptCluster
|
||||
syn match cfScrParenError contained +)+
|
||||
|
||||
syn region cfscriptBlock matchgroup=NONE start="<cfscript>" end="<\/cfscript>"me=s-1 keepend contains=@cfScriptCluster,cfscriptTag,cfScrParenError
|
||||
syn region cfscriptTag contained start='<cfscript' end='>' keepend contains=cfTagName,htmlTag
|
||||
|
||||
" Define the default highlighting.
|
||||
if version >= 508 || !exists("did_cf_syn_inits")
|
||||
if version < 508
|
||||
let did_cf_syn_inits = 1
|
||||
command -nargs=+ HiLink hi link <args>
|
||||
else
|
||||
command -nargs=+ HiLink hi def link <args>
|
||||
endif
|
||||
|
||||
HiLink cfTagName Statement
|
||||
HiLink cfArg Type
|
||||
HiLink cfFunctionName Function
|
||||
HiLink cfHashRegion PreProc
|
||||
HiLink cfComment Comment
|
||||
HiLink cfCommentTodo Todo
|
||||
HiLink cfOperator Operator
|
||||
HiLink cfOperatorMatch Operator
|
||||
HiLink cfScope Title
|
||||
HiLink cfBool Constant
|
||||
|
||||
HiLink cfscriptBlock Special
|
||||
HiLink cfscriptTag htmlTag
|
||||
HiLink cfSetRegion PreProc
|
||||
HiLink cfSetLHSRegion htmlTag
|
||||
HiLink cfSetTagEnd htmlTag
|
||||
|
||||
HiLink cfScriptLineComment Comment
|
||||
HiLink cfScriptComment Comment
|
||||
HiLink cfScriptStringS String
|
||||
HiLink cfScriptStringD String
|
||||
HiLink cfScriptNumber cfScriptValue
|
||||
HiLink cfScriptConditional Conditional
|
||||
HiLink cfScriptRepeat Repeat
|
||||
HiLink cfScriptBranch Conditional
|
||||
HiLink cfScriptType Type
|
||||
HiLink cfScriptStatement Statement
|
||||
HiLink cfScriptBraces Function
|
||||
HiLink cfScriptFunction Function
|
||||
HiLink cfScriptError Error
|
||||
HiLink cfScrParenError cfScriptError
|
||||
|
||||
delcommand HiLink
|
||||
endif
|
||||
|
||||
let b:current_syntax = "cf"
|
||||
|
||||
" vim: ts=8 sw=2
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
" Language: sed
|
||||
" Maintainer: Haakon Riiser <hakonrk@fys.uio.no>
|
||||
" URL: http://folk.uio.no/hakonrk/vim/syntax/sed.vim
|
||||
" Last Change: 2003 May 11
|
||||
" Last Change: 2005 Dec 15
|
||||
|
||||
" For version 5.x: Clear all syntax items
|
||||
" For version 6.x: Quit when a syntax file was already loaded
|
||||
@@ -21,7 +21,7 @@ syn match sedAddress "\d\+\~\d\+"
|
||||
syn region sedAddress matchgroup=Special start="[{,;]\s*/\(\\/\)\="lc=1 skip="[^\\]\(\\\\\)*\\/" end="/I\=" contains=sedTab,sedRegexpMeta
|
||||
syn region sedAddress matchgroup=Special start="^\s*/\(\\/\)\=" skip="[^\\]\(\\\\\)*\\/" end="/I\=" contains=sedTab,sedRegexpMeta
|
||||
syn match sedComment "^\s*#.*$"
|
||||
syn match sedFunction "[dDgGhHlnNpPqx=]\s*\($\|;\)" contains=sedSemicolon,sedWhitespace
|
||||
syn match sedFunction "[dDgGhHlnNpPqQx=]\s*\($\|;\)" contains=sedSemicolon,sedWhitespace
|
||||
syn match sedLabel ":[^;]*"
|
||||
syn match sedLineCont "^\(\\\\\)*\\$" contained
|
||||
syn match sedLineCont "[^\\]\(\\\\\)*\\$"ms=e contained
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
" Vim syntax file
|
||||
" Language: Slice (ZeroC's Specification Language for Ice)
|
||||
" Maintainer: Morel Bodin <bodin@tuxfamily.net>
|
||||
" Last Change: 2003 Sep 24
|
||||
" Maintainer: Morel Bodin <slice06@nym.hush.com>
|
||||
" Last Change: 2005 Dec 03
|
||||
|
||||
" For version 5.x: Clear all syntax items
|
||||
" For version 6.x: Quit when a syntax file was already loaded
|
||||
@@ -15,7 +15,7 @@ endif
|
||||
|
||||
syn keyword sliceType bool byte double float int long short string void
|
||||
syn keyword sliceQualifier const extends idempotent implements local nonmutating out throws
|
||||
syn keyword sliceConstruct class enum exception dictionnary interface module LocalObject Object sequence struct
|
||||
syn keyword sliceConstruct class enum exception dictionary interface module LocalObject Object sequence struct
|
||||
syn keyword sliceQualifier const extends idempotent implements local nonmutating out throws
|
||||
syn keyword sliceBoolean false true
|
||||
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
" Vim syntax file
|
||||
" Language: SQL, PL/SQL (Oracle 8i)
|
||||
" Maintainer: Paul Moore <pf_moore AT yahoo.co.uk>
|
||||
" Last Change: 2004 Jul 19
|
||||
" Last Change: 2005 Dec 23
|
||||
|
||||
" For version 5.x: Clear all syntax items
|
||||
" For version 6.x: Quit when a syntax file was already loaded
|
||||
@@ -58,7 +58,7 @@ syn match sqlComment "--.*$" contains=sqlTodo
|
||||
syn sync ccomment sqlComment
|
||||
|
||||
" Todo.
|
||||
syn keyword sqlTodo TODO FIXME XXX DEBUG NOTE
|
||||
syn keyword sqlTodo contained TODO FIXME XXX DEBUG NOTE
|
||||
|
||||
" Define the default highlighting.
|
||||
" For version 5.7 and earlier: only when not done already
|
||||
|
||||
@@ -1,8 +1,8 @@
|
||||
" Vim syntax file
|
||||
" Language: TeX
|
||||
" Maintainer: Dr. Charles E. Campbell, Jr. <NdrchipO@ScampbellPfamily.AbizM>
|
||||
" Last Change: Sep 14, 2005
|
||||
" Version: 30
|
||||
" Last Change: Dec 07, 2005
|
||||
" Version: 31
|
||||
" URL: http://mysite.verizon.net/astronaut/vim/index.html#vimlinks_syntax
|
||||
"
|
||||
" Notes: {{{1
|
||||
@@ -394,10 +394,12 @@ endif
|
||||
syn region texZone matchgroup=texStatement start="@samp{" end="}\|%stopzone\>" contains=@texRefGroup
|
||||
syn region texRefZone matchgroup=texStatement start="\\nocite{" end="}\|%stopzone\>" contains=@texRefGroup
|
||||
syn region texRefZone matchgroup=texStatement start="\\bibliography{" end="}\|%stopzone\>" contains=@texRefGroup
|
||||
syn region texRefZone matchgroup=texStatement start="\\cite\([tp]\*\=\)\={" end="}\|%stopzone\>" contains=@texRefGroup
|
||||
syn region texRefZone matchgroup=texStatement start="\\label{" end="}\|%stopzone\>" contains=@texRefGroup
|
||||
syn region texRefZone matchgroup=texStatement start="\\\(page\|eq\)ref{" end="}\|%stopzone\>" contains=@texRefGroup
|
||||
syn region texRefZone matchgroup=texStatement start="\\v\=ref{" end="}\|%stopzone\>" contains=@texRefGroup
|
||||
syn match texRefZone '\\cite\%([tp]\*\=\)\=' nextgroup=texRefOption,texCite
|
||||
syn region texRefOption contained matchgroup=Delimiter start='\[' end=']' contains=@texRefGroup nextgroup=texRefOption,texCite
|
||||
syn region texCite contained matchgroup=Delimiter start='{' end='}' contains=@texRefGroup
|
||||
|
||||
" Handle newcommand, newenvironment : {{{1
|
||||
syn match texNewCmd "\\newcommand\>" nextgroup=texCmdName skipwhite skipnl
|
||||
@@ -465,6 +467,7 @@ if did_tex_syntax_inits == 1
|
||||
HiLink texError Error
|
||||
endif
|
||||
|
||||
HiLink texCite texRefZone
|
||||
HiLink texDefCmd texDef
|
||||
HiLink texDefName texDef
|
||||
HiLink texDocType texCmdName
|
||||
|
||||
@@ -1,8 +1,8 @@
|
||||
" Vim syntax file
|
||||
" Language: Vim 7.0 script
|
||||
" Maintainer: Dr. Charles E. Campbell, Jr. <NdrOchipS@PcampbellAfamily.Mbiz>
|
||||
" Last Change: Nov 18, 2005
|
||||
" Version: 7.0-20
|
||||
" Last Change: December 09, 2005
|
||||
" Version: 7.0-21
|
||||
" Automatically generated keyword lists: {{{1
|
||||
|
||||
" Quit when a syntax file was already loaded {{{2
|
||||
@@ -16,7 +16,7 @@ syn keyword vimTodo contained COMBAK NOT RELEASED TODO WIP
|
||||
syn cluster vimCommentGroup contains=vimTodo,@Spell
|
||||
|
||||
" regular vim commands {{{2
|
||||
syn keyword vimCommand contained ab[breviate] abc[lear] abo[veleft] al[l] arga[dd] argd[elete] argdo arge[dit] argg[lobal] argl[ocal] ar[gs] argu[ment] as[cii] bad[d] ba[ll] bd[elete] be bel[owright] bf[irst] bl[ast] bm[odified] bn[ext] bN[ext] bo[tright] bp[revious] brea[k] breaka[dd] breakd[el] breakl[ist] br[ewind] bro[wse] bufdo b[uffer] buffers bun[load] bw[ipeout] ca[bbrev] cabc[lear] cad[dfile] cal[l] cat[ch] cb[uffer] cc ccl[ose] cd ce[nter] cex[pr] cf[ile] cfir[st] cg[etfile] c[hange] changes chd[ir] che[ckpath] checkt[ime] cla[st] cl[ist] clo[se] cmapc[lear] cnew[er] cn[ext] cN[ext] cnf[ile] cNf[ile] cnorea[bbrev] col[der] colo[rscheme] comc[lear] comp[iler] conf[irm] con[tinue] cope[n] co[py] cpf[ile] cp[revious] cq[uit] cr[ewind] cuna[bbrev] cu[nmap] cw[indow] debugg[reedy] delc[ommand] d[elete] DeleteFirst delf[unction] delm[arks] diffg[et] diffoff diffpatch diffpu[t] diffsplit diffthis diffu[pdate] dig[raphs] di[splay] dj[ump] dl[ist] dr[op] ds[earch] dsp[lit] echoe[rr] echom[sg] echon e[dit] el[se] elsei[f] em[enu] emenu* endfo[r] endf[unction] en[dif] endt[ry] endw[hile] ene[w] ex exi[t] Explore exu[sage] f[ile] files filetype fina[lly] fin[d] fini[sh] fir[st] fix[del] fo[ld] foldc[lose] folddoc[losed] foldd[oopen] foldo[pen] for fu[nction] g[lobal] go[to] gr[ep] grepa[dd] ha[rdcopy] h[elp] helpf[ind] helpg[rep] helpt[ags] Hexplore hid[e] his[tory] I ia[bbrev] iabc[lear] if ij[ump] il[ist] imapc[lear] inorea[bbrev] is[earch] isp[lit] iuna[bbrev] iu[nmap] j[oin] ju[mps] k keepalt keepj[umps] kee[pmarks] lan[guage] la[st] lc[d] lch[dir] le[ft] lefta[bove] l[ist] lm[ap] lmapc[lear] ln[oremap] lo[adview] loc[kmarks] lockv[ar] ls lu[nmap] mak[e] ma[rk] marks mat[ch] menut[ranslate] mk[exrc] mks[ession] mksp[ell] mkvie[w] mkv[imrc] mod[e] m[ove] mzf[ile] mz[scheme] nbkey NetrwSettings new n[ext] N[ext] nmapc[lear] noh[lsearch] norea[bbrev] Nread nu[mber] nun[map] Nw omapc[lear] on[ly] o[pen] opt[ions] ou[nmap] pc[lose] ped[it] pe[rl] perld[o] po[p] popu popu[p] pp[op] pre[serve] prev[ious] p[rint] P[rint] profd[el] prof[ile] prompt promptf[ind] promptr[epl] ps[earch] pta[g] ptf[irst] ptj[ump] ptl[ast] ptn[ext] ptN[ext] ptp[revious] ptr[ewind] pts[elect] pu[t] pw[d] pyf[ile] py[thon] qa[ll] q[uit] quita[ll] r[ead] rec[over] redi[r] red[o] redr[aw] redraws[tatus] reg[isters] res[ize] ret[ab] retu[rn] rew[ind] ri[ght] rightb[elow] rub[y] rubyd[o] rubyf[ile] ru[ntime] rv[iminfo] sal[l] san[dbox] sa[rgument] sav[eas] sba[ll] sbf[irst] sbl[ast] sbm[odified] sbn[ext] sbN[ext] sbp[revious] sbr[ewind] sb[uffer] scripte[ncoding] scrip[tnames] se[t] setf[iletype] setg[lobal] setl[ocal] Sexplore sf[ind] sfir[st] sh[ell] sign sil[ent] sim[alt] sla[st] sl[eep] sm[agic] sn[ext] sN[ext] sni[ff] sno[magic] sor[t] so[urce] spelld[ump] spe[llgood] spellr[epall] spellw[rong] sp[lit] spr[evious] sre[wind] sta[g] star[tinsert] startr[eplace] stj[ump] st[op] stopi[nsert] sts[elect] sun[hide] sus[pend] sv[iew] syncbind t ta[g] tags tc[l] tcld[o] tclf[ile] te[aroff] tf[irst] the th[row] tj[ump] tl[ast] tm tm[enu] tn[ext] tN[ext] to[pleft] tp[revious] tr[ewind] try ts[elect] tu tu[nmenu] una[bbreviate] u[ndo] unh[ide] unlo[ckvar] unm[ap] up[date] verb[ose] ve[rsion] vert[ical] Vexplore v[global] vie[w] vim[grep] vimgrepa[dd] vi[sual] viu[sage] vmapc[lear] vne[w] vs[plit] vu[nmap] wa[ll] wh[ile] winc[md] windo winp[os] win[size] wn[ext] wN[ext] wp[revious] wq wqa[ll] w[rite] ws[verb] wv[iminfo] X xa[ll] x[it] y[ank]
|
||||
syn keyword vimCommand contained ab[breviate] abc[lear] abo[veleft] al[l] arga[dd] argd[elete] argdo arge[dit] argg[lobal] argl[ocal] ar[gs] argu[ment] as[cii] bad[d] ba[ll] bd[elete] be bel[owright] bf[irst] bl[ast] bm[odified] bn[ext] bN[ext] bo[tright] bp[revious] brea[k] breaka[dd] breakd[el] breakl[ist] br[ewind] bro[wse] bufdo b[uffer] buffers bun[load] bw[ipeout] ca[bbrev] cabc[lear] cad[dfile] cal[l] cat[ch] cb[uffer] cc ccl[ose] cd ce[nter] cex[pr] cf[ile] cfir[st] cg[etfile] c[hange] changes chd[ir] che[ckpath] checkt[ime] cla[st] cl[ist] clo[se] cmapc[lear] cnew[er] cn[ext] cN[ext] cnf[ile] cNf[ile] cnorea[bbrev] col[der] colo[rscheme] comc[lear] comp[iler] conf[irm] con[tinue] cope[n] co[py] cpf[ile] cp[revious] cq[uit] cr[ewind] cuna[bbrev] cu[nmap] cw[indow] debugg[reedy] delc[ommand] d[elete] DeleteFirst delf[unction] delm[arks] diffg[et] diffoff diffpatch diffpu[t] diffsplit diffthis diffu[pdate] dig[raphs] di[splay] dj[ump] dl[ist] dr[op] ds[earch] dsp[lit] echoe[rr] echom[sg] echon e[dit] el[se] elsei[f] em[enu] emenu* endfo[r] endf[unction] en[dif] endt[ry] endw[hile] ene[w] ex exi[t] Explore exu[sage] f[ile] files filetype fina[lly] fin[d] fini[sh] fir[st] fix[del] fo[ld] foldc[lose] folddoc[losed] foldd[oopen] foldo[pen] for fu[nction] g[lobal] go[to] gr[ep] grepa[dd] ha[rdcopy] h[elp] helpf[ind] helpg[rep] helpt[ags] Hexplore hid[e] his[tory] I ia[bbrev] iabc[lear] if ij[ump] il[ist] imapc[lear] inorea[bbrev] is[earch] isp[lit] iuna[bbrev] iu[nmap] j[oin] ju[mps] k keepalt keepj[umps] kee[pmarks] lan[guage] la[st] lc[d] lch[dir] le[ft] lefta[bove] l[ist] lm[ap] lmapc[lear] ln[oremap] lo[adview] loc[kmarks] lockv[ar] ls lu[nmap] mak[e] ma[rk] marks mat[ch] menut[ranslate] mk[exrc] mks[ession] mksp[ell] mkvie[w] mkv[imrc] mod[e] m[ove] mzf[ile] mz[scheme] nbkey NetrwSettings new n[ext] N[ext] nmapc[lear] noh[lsearch] norea[bbrev] Nread nu[mber] nun[map] Nw omapc[lear] on[ly] o[pen] opt[ions] ou[nmap] pc[lose] ped[it] pe[rl] perld[o] po[p] popu popu[p] pp[op] pre[serve] prev[ious] p[rint] P[rint] profd[el] prof[ile] prompt promptf[ind] promptr[epl] ps[earch] pta[g] ptf[irst] ptj[ump] ptl[ast] ptn[ext] ptN[ext] ptp[revious] ptr[ewind] pts[elect] pu[t] pw[d] pyf[ile] py[thon] qa[ll] q[uit] quita[ll] r[ead] rec[over] redi[r] red[o] redr[aw] redraws[tatus] reg[isters] res[ize] ret[ab] retu[rn] rew[ind] ri[ght] rightb[elow] rub[y] rubyd[o] rubyf[ile] ru[ntime] rv[iminfo] sal[l] san[dbox] sa[rgument] sav[eas] sba[ll] sbf[irst] sbl[ast] sbm[odified] sbn[ext] sbN[ext] sbp[revious] sbr[ewind] sb[uffer] scripte[ncoding] scrip[tnames] se[t] setf[iletype] setg[lobal] setl[ocal] Sexplore sf[ind] sfir[st] sh[ell] sign sil[ent] sim[alt] sla[st] sl[eep] sm[agic] sn[ext] sN[ext] sni[ff] sno[magic] sor[t] so[urce] spelld[ump] spe[llgood] spellr[epall] spellw[rong] sp[lit] spr[evious] sre[wind] sta[g] star[tinsert] startr[eplace] stj[ump] st[op] stopi[nsert] sts[elect] sun[hide] sus[pend] sv[iew] syncbind t ta[g] tags tc[l] tcld[o] tclf[ile] te[aroff] tf[irst] the th[row] tj[ump] tl[ast] tm tm[enu] tn[ext] tN[ext] to[pleft] tp[revious] tr[ewind] try ts[elect] tu tu[nmenu] una[bbreviate] u[ndo] unh[ide] unlo[ckvar] unm[ap] up[date] verb[ose] ve[rsion] vert[ical] Vexplore v[global] vie[w] vim[grep] vimgrepa[dd] vi[sual] viu[sage] vmapc[lear] vne[w] vs[plit] vu[nmap] wa[ll] wh[ile] winc[md] windo winp[os] win[size] wn[ext] wN[ext] wp[revious] wq wqa[ll] w[rite] ws[verb] wv[iminfo] X xa[ll] x[it] XMLent XMLns y[ank]
|
||||
syn match vimCommand contained "\<z[-+^.=]"
|
||||
|
||||
" vimOptions are caught only when contained in a vimSet {{{2
|
||||
@@ -44,7 +44,7 @@ syn keyword vimErrSetting contained hardtabs ht w1200 w300 w9600
|
||||
|
||||
" AutoBuf Events {{{2
|
||||
syn case ignore
|
||||
syn keyword vimAutoEvent contained BufAdd BufCreate BufDelete BufEnter BufFilePost BufFilePre BufHidden BufLeave BufNew BufNewFile BufRead BufReadCmd BufReadPost BufReadPre BufUnload BufWinEnter BufWinLeave BufWipeout BufWrite BufWriteCmd BufWritePost BufWritePre Cmd-event CmdwinEnter CmdwinLeave ColorScheme CursorHold E135 E143 E200 E201 E203 E204 EncodingChanged FileAppendCmd FileAppendPost FileAppendPre FileChangedRO FileChangedShell FileEncoding FileReadCmd FileReadPost FileReadPre FileType FileWriteCmd FileWritePost FileWritePre FilterReadPost FilterReadPre FilterWritePost FilterWritePre FocusGained FocusLost FuncUndefined GUIEnter InsertChange InsertEnter InsertLeave MenuPopup QuickFixCmdPost QuickFixCmdPre RemoteReply StdinReadPost StdinReadPre Syntax TermChanged TermResponse User UserGettingBored VimEnter VimLeave VimLeavePre WinEnter WinLeave
|
||||
syn keyword vimAutoEvent contained BufAdd BufCreate BufDelete BufEnter BufFilePost BufFilePre BufHidden BufLeave BufNew BufNewFile BufRead BufReadCmd BufReadPost BufReadPre BufUnload BufWinEnter BufWinLeave BufWipeout BufWrite BufWriteCmd BufWritePost BufWritePre Cmd-event CmdwinEnter CmdwinLeave ColorScheme CursorHold E135 E143 E200 E201 E203 E204 EncodingChanged FileAppendCmd FileAppendPost FileAppendPre FileChangedRO FileChangedShell FileEncoding FileReadCmd FileReadPost FileReadPre FileType FileWriteCmd FileWritePost FileWritePre FilterReadPost FilterReadPre FilterWritePost FilterWritePre FocusGained FocusLost FuncUndefined GUIEnter InsertChange InsertEnter InsertLeave MenuPopup QuickFixCmdPost QuickFixCmdPre RemoteReply SessionLoadPost StdinReadPost StdinReadPre SwapExists Syntax TermChanged TermResponse User UserGettingBored VimEnter VimLeave VimLeavePre WinEnter WinLeave
|
||||
|
||||
" Highlight commonly used Groupnames {{{2
|
||||
syn keyword vimGroup contained Comment Constant String Character Number Boolean Float Identifier Function Statement Conditional Repeat Label Operator Keyword Exception PreProc Include Define Macro PreCondit Type StorageClass Structure Typedef Special SpecialChar Tag Delimiter SpecialComment Debug Underlined Ignore Error Todo
|
||||
|
||||
@@ -18,8 +18,6 @@ ref: Shell script for the K command.
|
||||
|
||||
shtags.*: Perl script to create a tags file from a shell script.
|
||||
|
||||
tcltags: Shell + Awk script to create a tags file from a TCL file.
|
||||
|
||||
vim132: Shell script to edit in 132 column mode on vt100 compatible
|
||||
terminals.
|
||||
|
||||
|
||||
@@ -1,101 +0,0 @@
|
||||
Vim with KDE: kvim
|
||||
|
||||
ON THE INTERNET
|
||||
===============
|
||||
|
||||
The homepage is http://www.freehackers.org/kvim/
|
||||
The core is build around the official vim-6.x releases and patches
|
||||
|
||||
KVim CVS is full and does not need extra package. Just download and compile it.
|
||||
|
||||
INSTALL :
|
||||
=========
|
||||
We now use Vim's configure to configure, compile and install KVim.
|
||||
|
||||
Don't forget, that you need to have QT and KDE headers and tools installed, otherwise it won't
|
||||
work ! (these can commonly be found in kde-devel/qt-devel packages)
|
||||
|
||||
Enter the 'src' directory and configure it your way (you need to add at least these flags to the configure command line : --enable-gui=kde --with-qt-dir=$QTDIR ) then make and make install as root.
|
||||
We added to configure some options for KDE / QT detection, it will for example, find whether you use KDE 2.x or KDE 3.x automatically. For now, QT is _not_ autodetected. I hope to fix this soon.
|
||||
From KVim 6.1, you can now use a KDE toolbar instead of Vim's Toolbar, to enable it, use the --enable-kde-toolbar configure flag.
|
||||
|
||||
|
||||
=> If it fails : (yes it still can, the configure script i wrote is still experimental and probably not
|
||||
perfect ;p)
|
||||
or 'how to make a bug report' :
|
||||
|
||||
In some cases, I can imagine it will fail, if this happens then send to marchand@kde.org :
|
||||
->auto/config.mk (important one)
|
||||
->your configure command line with your options
|
||||
->your paths : where KDE is (which version ?), where QT is (version ?), and find where your
|
||||
libs are (your kdelibs, your QT libs and QT headers)
|
||||
->the output of 'kde-config --version'
|
||||
->your OS / Linux Distribution version
|
||||
->in case of a compilation error : the full error output.
|
||||
->the compiler used (gcc 2.95, 2.96, 3.1 ...)
|
||||
->any stuff you think could be usefull to me :)
|
||||
|
||||
Thanks for giving KVim a try, we hope you'll enjoy it !
|
||||
|
||||
|
||||
DEVELOPMENT STATE AND KNOWN BUGS:
|
||||
=================================
|
||||
Most Vim GUI features are now implemented, only multibyte support is incomplete.
|
||||
We are working on this and this is our primary goal after KVim 6.1 release.
|
||||
We hope to get it to work before we include KVim into the core Vim which we want to
|
||||
do before the end of the year 2002 if possible.
|
||||
|
||||
We would be happy to hear from you if you've tried kvim. Tell us
|
||||
what is missing, what you like and don't like, and what you want.
|
||||
|
||||
As people have wished it for a while, Philippe developped a component for Vim.
|
||||
The component is now fully usable with GVim and KVim and can be found on KDE's CVS
|
||||
in the kdeextragear-1 module.
|
||||
|
||||
SOURCE ACCESS:
|
||||
==============
|
||||
Releases and maybe snapshots are/will be found on http://freehackers.org/kvim/
|
||||
The CVS is CVSROOT=:pserver:anonymous@cvs.tuxfamily.org:/cvsroot/kvim
|
||||
(with no password)
|
||||
You'll find there a full vim 6.x package (with runtime files included).
|
||||
|
||||
MAILING LIST:
|
||||
=============
|
||||
As we released KVim 6.0, we created a public mailing list, for feedback,
|
||||
user help and development related discussions : "kvim-dev@freenux.org",
|
||||
to subscribe send a mail to "kvim-dev-subscribe@freenux.org" with
|
||||
"subscribe" as the subject and just reply to the mail you will receive.
|
||||
(sorry the admin messages are in french, but the list discussions are in
|
||||
english)
|
||||
|
||||
THANKS :
|
||||
========
|
||||
To all the guys on #kde@opn (Neil, Malte and many other) and to all the people who
|
||||
tried, debugged, compiled and recompiled again KVim to bring now a much more robust KVim
|
||||
and of course to all of you who send patchs and comments :)
|
||||
And of course to Vim Authors :)
|
||||
|
||||
CURRENT MAINTAINER:
|
||||
===================
|
||||
Mickael Marchand <marchand@kde.org>
|
||||
|
||||
DEVELOPERS (CVS accounts):
|
||||
==========
|
||||
Mickael Marchand <marchand@kde.org> (marchand)
|
||||
Mark Westcott <mark@houseoffish.org> Qtopia GUI (mark)
|
||||
Thomas Capricelli <orzel@kde.org> Initial KVim author (orzel)
|
||||
Philippe Fremy <pfremy@chez.com> Initial KVim author (pfremy)
|
||||
|
||||
AUTHORS
|
||||
=========
|
||||
Thomas Capricelli <orzel@kde.org> Initial KVim author
|
||||
Philippe Fremy <pfremy@chez.com> Initial KVim author
|
||||
|
||||
CONTRIBUTORS
|
||||
============
|
||||
David Spencer Tyree <celer@scrypt.net>
|
||||
Vince Negri <vince@bulbous.freeserve.co.uk> AntiAliasing support
|
||||
Kailash Sethuraman (hsaliak, #netbsd@opn) NetBSD configuration/compilation fixes
|
||||
Some other, see the About KVim dialog box in KVim...
|
||||
|
||||
|
||||
@@ -15,12 +15,7 @@ Summary
|
||||
1.1. Carbon interface
|
||||
1.2. X (Athena, GTK, Motif) or plain text.
|
||||
|
||||
2 MacOS Classic
|
||||
2.1. CodeWarrior
|
||||
2.2. MPW
|
||||
|
||||
NOTE: The Carbon version can only be compiled properly under
|
||||
MacOS X.
|
||||
MacOS Classic is no longer supported. If you really want it use Vim 6.4.
|
||||
|
||||
----------------------------------------------------------------------------
|
||||
1 MacOS X
|
||||
@@ -57,108 +52,4 @@ NOTE: The Carbon version can only be compiled properly under
|
||||
NOTE: You need to first install XFree86 and XDarwin.
|
||||
Please visit http://www.XDarwin.org
|
||||
|
||||
----------------------------------------------------------------------------
|
||||
MacOS 9
|
||||
----------------------------------------------------------------------------
|
||||
|
||||
Both ':' and '/' supported as path separator.
|
||||
|
||||
2.1: Compiling with CodeWarior
|
||||
|
||||
1. Expand the resource file:
|
||||
open ../src/os_mac.rsr.hqx to produce ../src/gui_mac.rsrc:
|
||||
% cd vim62/src
|
||||
% open -a StuffIt\ Expander os_mac.rsr.hqx
|
||||
|
||||
2. Expand the project file:
|
||||
- ../src/os_mac.sit.hqx (to produce ../src/vim.mcp)
|
||||
|
||||
3. Open vim.mcp with CodeWarior
|
||||
|
||||
This is a CodeWarior 9 project file. When using a newer version,
|
||||
you need to convert the file. you may also need to change some
|
||||
access path.
|
||||
|
||||
NOTE: the current project file is old, you need to add a few files:
|
||||
(ex_cmds2.c, fold.c, mbyte.c, move.c)
|
||||
|
||||
4. Select the target PPC, 68k FAT (with/without debugger)
|
||||
|
||||
5. Compile
|
||||
|
||||
2.2: Compiling with MPW.
|
||||
|
||||
0. You will need a recent version of the MPW and the Universal Interfaces.
|
||||
You can get both at:
|
||||
ftp://ftp.apple.com/developer/Tool_Chest/Interfaces-Libraries/
|
||||
ftp://ftp.apple.com/developer/Tool_Chest/Core_Mac_OS_Tools/
|
||||
For a Carbon version you will need a recent Carbon SDK as well.
|
||||
(When you have an older version already installed you not be able to
|
||||
compile a carbon version. Update "CreateMake" which is available at
|
||||
Apple.
|
||||
|
||||
1. Expand the resource file:
|
||||
open ../src/os_mac.rsr.hqx to produce ../src/gui_mac.rsrc:
|
||||
% cd vim62/src
|
||||
% open -a StuffIt\ Expander os_mac.rsr.hqx
|
||||
|
||||
3. Double click on os_make.make, the MPW will now open in the correct
|
||||
folder and load the CreateVimMake script. Change to the Worksheet
|
||||
window. Type "os_mac.build" and hit Enter (not Return). A dialog box
|
||||
will appear. Select the target you want. (Vim-68k, Vim-ppc, Vim-carbon)
|
||||
|
||||
4. Select "Build" from the menu (or type command-B). Type the program name
|
||||
into the dialog box.
|
||||
|
||||
------------------------------------------------------
|
||||
|
||||
OLD FILE: SOME INFO MAY STILL BE USEFUL
|
||||
|
||||
NOTE: Users of more recent CodeWarrior version may have to reset the library
|
||||
path, and change the mch_delay in os_mac.c so the finalTick is unsigned.
|
||||
|
||||
Compilation instructions:
|
||||
|
||||
1. Visit the Vim ftp site (see ftp://ftp.vim.org/pub/vim/MIRRORS)
|
||||
and obtain the following five files:
|
||||
|
||||
unix/vim-X.X-src1.tar.gz
|
||||
unix/vim-X.X-src2.tar.gz
|
||||
unix/vim-X.X-rt1.tar.gz
|
||||
unix/vim-X.X-rt2.tar.gz
|
||||
extra/vim-X.X-extra.tar.gz
|
||||
|
||||
where X.X is the version number.
|
||||
|
||||
NOTE: the language support is not yet supported
|
||||
|
||||
2. Expand the archives.
|
||||
|
||||
3. Apply patches if they exist. (Patch files are found in the ftp
|
||||
site in the "patches" directory.)
|
||||
|
||||
4. Edit vim-X.X/src/feature.h for your preference. (You can skip
|
||||
this, then you will get the default behavior as is documented,
|
||||
which should be fine for most people.)
|
||||
|
||||
For example, if you want to add the FEAT_MBYTE feature, turn on
|
||||
#define FEAT_MBYTE
|
||||
|
||||
5. Expand the resource file:
|
||||
|
||||
- vim-X.X/src/os_mac.rsr.hqx (to produce vim-X.X/src/gui_mac.rsrc)
|
||||
|
||||
6. If using CodeWarrior, expand the project file:
|
||||
|
||||
- vim-X.X/src/os_mac.sit.hqx (to produce vim-X.X/src/vim.mcp)
|
||||
|
||||
The latter file is the CodeWarrior project file to be used.
|
||||
|
||||
7. Launch CodeWarrior by double clicking vim.mcp.
|
||||
|
||||
8. Check additional files if you include non-standard features.
|
||||
|
||||
For example, if you added the MULTI_BYTE feature, check
|
||||
Extras/mbyte.c in the project window.
|
||||
|
||||
9. Compile and you will obtain binaries: vimPPC, Vim 68k, and/or vimFAT.
|
||||
|
||||
@@ -14,7 +14,7 @@ be fine for most people.
|
||||
|
||||
Contents:
|
||||
1. MS-DOS
|
||||
2. Win32 (Windows NT and Windows 95)
|
||||
2. Win32 (Windows XP/NT and Windows 95/98)
|
||||
3. Windows NT with OpenNT
|
||||
4. Windows 3.1
|
||||
5. Using Mingw
|
||||
@@ -66,7 +66,7 @@ If you get all kinds of strange error messages when compiling, try adding
|
||||
changing the file format from "unix" to "dos".
|
||||
|
||||
|
||||
2. Win32 (Windows NT and Windows 95)
|
||||
2. Win32 (Windows NT/XP and Windows 95/98)
|
||||
====================================
|
||||
|
||||
Summary:
|
||||
|
||||
4369
src/Make_mpw.mak
4369
src/Make_mpw.mak
File diff suppressed because it is too large
Load Diff
99
src/Makefile
99
src/Makefile
@@ -34,7 +34,7 @@
|
||||
# X11 Session Management Protocol (XSMP) library (libSM) but do not
|
||||
# want to use it.
|
||||
# This can speedup Vim startup but Vim loses the ability to catch the
|
||||
# user logging out from session-managers like GNOME & KDE and work
|
||||
# user logging out from session-managers like GNOME and work
|
||||
# could be lost.
|
||||
# - Uncomment one or more of these lines to include an interface;
|
||||
# each makes Vim quite a bit bigger:
|
||||
@@ -338,8 +338,6 @@ CClink = $(CC)
|
||||
# automatically be used if it is found. If you have GNOME, but do not want to
|
||||
# use it (e.g., want a GTK-only version), then use --enable-gui=gtk.
|
||||
#
|
||||
# KDE doesn't fully work, unfortunately. See the todo list.
|
||||
#
|
||||
# If the selected GUI isn't found, the GUI is disabled automatically
|
||||
#CONF_OPT_GUI = --enable-gui=gtk
|
||||
#CONF_OPT_GUI = --enable-gui=gtk --disable-gtktest
|
||||
@@ -348,7 +346,6 @@ CClink = $(CC)
|
||||
#CONF_OPT_GUI = --enable-gui=gnome
|
||||
#CONF_OPT_GUI = --enable-gui=gnome2
|
||||
#CONF_OPT_GUI = --enable-gui=gnome2 --disable-gtktest
|
||||
#CONF_OPT_GUI = --enable-gui=kde
|
||||
#CONF_OPT_GUI = --enable-gui=motif
|
||||
#CONF_OPT_GUI = --enable-gui=motif --with-motif-lib="-static -lXm -shared"
|
||||
#CONF_OPT_GUI = --enable-gui=athena
|
||||
@@ -1087,23 +1084,6 @@ LINKIT = @echo >/dev/null
|
||||
# Without a GUI install the normal way.
|
||||
NONE_INSTALL = install_normal
|
||||
|
||||
### KDE GUI interface.
|
||||
KDE_SRC = gui.c pty.c gui_kde.cc gui_kde_x11.cc gui_kde_wid.cc gui_kde_wid_moc.cc kvim_iface_skel.cc
|
||||
KDE_OBJ = objects/gui.o objects/pty.o objects/gui_kde.o objects/gui_kde_x11.o \
|
||||
objects/gui_kde_wid.o objects/gui_kde_wid_moc.o \
|
||||
objects/kvim_iface_skel.o
|
||||
KDE_DEFS = -DFEAT_GUI_KDE $(NARROW_PROTO)
|
||||
KDE_IPATH = $(GUI_INC_LOC)
|
||||
KDE_LIBS_DIR = $(GUI_LIB_LOC) # Includes the libraries themselves
|
||||
KDE_DIR = $(KDE_PREFIX)
|
||||
KDE_LIBS1 =
|
||||
KDE_LIBS2 =
|
||||
KDE_INSTALL = install_normal
|
||||
KDE_TARGETS = installglinks installkdeicons
|
||||
KDE_MAN_TARGETS = yes
|
||||
KDE_TESTTARGET = gui
|
||||
KDE_BUNDLE =
|
||||
|
||||
### GTK GUI
|
||||
GTK_SRC = gui.c gui_gtk.c gui_gtk_x11.c pty.c gui_gtk_f.c \
|
||||
gui_beval.c
|
||||
@@ -1230,7 +1210,7 @@ APPDIR = $(VIMNAME).app
|
||||
CARBONGUI_TESTARG = VIMPROG=../$(APPDIR)/Contents/MacOS/$(VIMTARGET)
|
||||
|
||||
# All GUI files
|
||||
ALL_GUI_SRC = gui.c gui_gtk.c gui_gtk_f.c gui_motif.c gui_xmdlg.c gui_xmebw.c gui_athena.c gui_gtk_x11.c gui_x11.c gui_at_sb.c gui_at_fs.c pty.c gui_kde.cc gui_kde_wid.cc gui_kde_x11.cc gui_kde_wid_moc.cc
|
||||
ALL_GUI_SRC = gui.c gui_gtk.c gui_gtk_f.c gui_motif.c gui_xmdlg.c gui_xmebw.c gui_athena.c gui_gtk_x11.c gui_x11.c gui_at_sb.c gui_at_fs.c pty.c
|
||||
ALL_GUI_PRO = gui.pro gui_gtk.pro gui_motif.pro gui_xmdlg.pro gui_athena.pro gui_gtk_x11.pro gui_x11.pro gui_w16.pro gui_w32.pro gui_photon.pro
|
||||
|
||||
# }}}
|
||||
@@ -1277,7 +1257,7 @@ PROTO_FLAGS = -m -M__ARGS -d -E"$(CPP)" $(NO_ATTR)
|
||||
SHELL = /bin/sh
|
||||
|
||||
.SUFFIXES:
|
||||
.SUFFIXES: .cc .c .o .pro
|
||||
.SUFFIXES: .c .o .pro
|
||||
|
||||
PRE_DEFS = -Iproto $(DEFS) $(GUI_DEFS) $(GUI_IPATH) $(CPPFLAGS) $(EXTRA_IPATHS)
|
||||
POST_DEFS = $(X_CFLAGS) $(MZSCHEME_CFLAGS) $(PERL_CFLAGS) $(PYTHON_CFLAGS) $(TCL_CFLAGS) $(RUBY_CFLAGS) $(EXTRA_DEFS)
|
||||
@@ -1395,7 +1375,7 @@ SRC = $(BASIC_SRC) $(GUI_SRC) $(HANGULIN_SRC) $(MZSCHEME_SRC) \
|
||||
$(PERL_SRC) $(PYTHON_SRC) $(TCL_SRC) $(RUBY_SRC) \
|
||||
$(SNIFF_SRC) $(WORKSHOP_SRC) $(WSDEBUG_SRC)
|
||||
|
||||
TAGS_SRC = *.c *.cpp *.cc if_perl.xs
|
||||
TAGS_SRC = *.c *.cpp if_perl.xs
|
||||
|
||||
EXTRA_SRC = hangulin.c if_mzsch.c auto/if_perl.c if_perlsfio.c \
|
||||
if_python.c if_tcl.c if_ruby.c if_sniff.c gui_beval.c \
|
||||
@@ -1947,23 +1927,6 @@ install-languages: languages $(DEST_LANG) $(DEST_KMAP)
|
||||
chmod $(FILEMOD) $(DEST_KMAP)/README.txt $(DEST_KMAP)/*.vim; \
|
||||
fi
|
||||
|
||||
# Install the icons for the KDE GUI. This differs from the KDE icons for
|
||||
# other GUIs.
|
||||
installkdeicons:
|
||||
mkdir -p $(DESTDIR)$(KDE_DIR)/share/applnk/Editors/
|
||||
mkdir -p $(DESTDIR)$(KDE_DIR)/share/icons/hicolor/32x32/apps/
|
||||
mkdir -p $(DESTDIR)$(KDE_DIR)/share/icons/hicolor/48x48/apps/
|
||||
mkdir -p $(DESTDIR)$(KDE_DIR)/share/icons/hicolor/22x22/actions/
|
||||
mkdir -p $(DESTDIR)$(KDE_DIR)/share/icons/hicolor/16x16/actions/
|
||||
mkdir -p $(DESTDIR)$(KDE_DIR)/share/apps/kvim
|
||||
|
||||
cp ../runtime/KVim.desktop $(DESTDIR)$(KDE_DIR)/share/applnk/Editors/ && chmod 644 $(DESTDIR)$(KDE_DIR)/share/applnk/Editors/KVim.desktop
|
||||
cp ../runtime/kvim32x32.png $(DESTDIR)$(KDE_DIR)/share/icons/hicolor/32x32/apps/kvim.png && chmod 644 $(DESTDIR)$(KDE_DIR)/share/icons/hicolor/32x32/apps/kvim.png
|
||||
cp ../runtime/kvim48x48.png $(DESTDIR)$(KDE_DIR)/share/icons/hicolor/48x48/apps/kvim.png && chmod 644 $(DESTDIR)$(KDE_DIR)/share/icons/hicolor/48x48/apps/kvim.png
|
||||
cp ../runtime/hi16-action-make.png $(DESTDIR)$(KDE_DIR)/share/icons/hicolor/16x16/actions/hi16-action-make.png
|
||||
cp ../runtime/hi22-action-make.png $(DESTDIR)$(KDE_DIR)/share/icons/hicolor/22x22/actions/hi22-action-make.png
|
||||
cp ../runtime/kde-tips $(DESTDIR)$(KDE_DIR)/share/apps/kvim/tips && chmod 644 $(DESTDIR)$(KDE_DIR)/share/apps/kvim/tips
|
||||
|
||||
# install the icons for KDE, if the directory exists and the icon doesn't.
|
||||
ICON48PATH = $(DESTDIR)$(DATADIR)/icons/hicolor/48x48/apps
|
||||
ICON32PATH = $(DESTDIR)$(DATADIR)/icons/locolor/32x32/apps
|
||||
@@ -2145,7 +2108,6 @@ clean celan: testclean
|
||||
-rm -f $(TOOLS) auto/osdef.h auto/pathdef.c auto/if_perl.c
|
||||
-rm -f conftest* *~ auto/link.sed
|
||||
-rm -rf $(APPDIR)
|
||||
-rm -f gui_kde_wid_moc.cc kvim_iface_skel.cc *.kidl
|
||||
if test -d $(PODIR); then \
|
||||
cd $(PODIR); $(MAKE) prefix=$(DESTDIR)$(prefix) clean; \
|
||||
fi
|
||||
@@ -2239,9 +2201,6 @@ lintinstall:
|
||||
.c.o:
|
||||
$(CCC) $<
|
||||
|
||||
.cc.o:
|
||||
$(CCC) $<
|
||||
|
||||
auto/if_perl.c: if_perl.xs
|
||||
$(PERL) -e 'unless ( $$] >= 5.005 ) { for (qw(na defgv errgv)) { print "#define PL_$$_ $$_\n" }}' > $@
|
||||
$(PERL) $(PERLLIB)/ExtUtils/xsubpp -prototypes -typemap \
|
||||
@@ -2512,26 +2471,6 @@ objects/workshop.o: workshop.c
|
||||
objects/wsdebug.o: wsdebug.c
|
||||
$(CCC) -o $@ wsdebug.c
|
||||
|
||||
objects/gui_kde.o: gui_kde.cc
|
||||
$(CCC) -o $@ gui_kde.cc
|
||||
|
||||
objects/gui_kde_x11.o: gui_kde_x11.cc
|
||||
$(CCC) -o $@ gui_kde_x11.cc
|
||||
|
||||
objects/gui_kde_wid.o: gui_kde_wid.cc
|
||||
$(MOC) -o gui_kde_wid_moc.cc gui_kde_wid.h
|
||||
$(KDE_DIR)/bin/dcopidl kvim_iface.h > kvim_iface.kidl || ( rm -f kvim_iface.kidl ; /bin/false )
|
||||
$(KDE_DIR)/bin/dcopidl2cpp --c++-suffix cc --no-stub kvim_iface.kidl
|
||||
$(CCC) -o $@ gui_kde_wid.cc
|
||||
|
||||
gui_kde_wid_moc.cc: objects/gui_kde_wid.o
|
||||
objects/gui_kde_wid_moc.o: gui_kde_wid_moc.cc
|
||||
$(CCC) -o $@ gui_kde_wid_moc.cc
|
||||
|
||||
kvim_iface_skel.cc: objects/gui_kde_wid.o
|
||||
objects/kvim_iface_skel.o: kvim_iface_skel.cc
|
||||
$(CCC) -o $@ kvim_iface_skel.cc
|
||||
|
||||
objects/netbeans.o: netbeans.c
|
||||
$(CCC) -o $@ netbeans.c
|
||||
|
||||
@@ -2897,36 +2836,6 @@ objects/pty.o: pty.c vim.h auto/config.h feature.h os_unix.h auto/osdef.h ascii.
|
||||
keymap.h term.h macros.h structs.h regexp.h gui.h gui_beval.h \
|
||||
proto/gui_beval.pro option.h ex_cmds.h proto.h globals.h farsi.h \
|
||||
arabic.h if_sniff.h
|
||||
objects/gui_kde.o: gui_kde.cc gui_kde_wid.h kvim_iface.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 gui_beval.h proto/gui_beval.pro option.h ex_cmds.h proto.h \
|
||||
globals.h farsi.h arabic.h if_sniff.h ../pixmaps/tb_new.xpm \
|
||||
../pixmaps/tb_open.xpm ../pixmaps/tb_close.xpm ../pixmaps/tb_save.xpm \
|
||||
../pixmaps/tb_print.xpm ../pixmaps/tb_cut.xpm ../pixmaps/tb_copy.xpm \
|
||||
../pixmaps/tb_paste.xpm ../pixmaps/tb_find.xpm \
|
||||
../pixmaps/tb_find_next.xpm ../pixmaps/tb_find_prev.xpm \
|
||||
../pixmaps/tb_find_help.xpm ../pixmaps/tb_exit.xpm \
|
||||
../pixmaps/tb_undo.xpm ../pixmaps/tb_redo.xpm ../pixmaps/tb_help.xpm \
|
||||
../pixmaps/tb_macro.xpm ../pixmaps/tb_make.xpm \
|
||||
../pixmaps/tb_save_all.xpm ../pixmaps/tb_jump.xpm \
|
||||
../pixmaps/tb_ctags.xpm ../pixmaps/tb_load_session.xpm \
|
||||
../pixmaps/tb_save_session.xpm ../pixmaps/tb_new_session.xpm \
|
||||
../pixmaps/tb_blank.xpm ../pixmaps/tb_maximize.xpm \
|
||||
../pixmaps/tb_split.xpm ../pixmaps/tb_minimize.xpm \
|
||||
../pixmaps/tb_shell.xpm ../pixmaps/tb_replace.xpm \
|
||||
../pixmaps/tb_vsplit.xpm ../pixmaps/tb_maxwidth.xpm \
|
||||
../pixmaps/tb_minwidth.xpm
|
||||
objects/gui_kde_wid.o: gui_kde_wid.cc gui_kde_wid.h kvim_iface.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 gui_beval.h proto/gui_beval.pro option.h \
|
||||
ex_cmds.h proto.h globals.h farsi.h arabic.h if_sniff.h version.h \
|
||||
proto/../../pixmaps/alert.xpm proto/../../pixmaps/error.xpm \
|
||||
proto/../../pixmaps/generic.xpm proto/../../pixmaps/info.xpm \
|
||||
proto/../../pixmaps/quest.xpm
|
||||
objects/gui_kde_x11.o: gui_kde_x11.cc gui_kde_wid.h kvim_iface.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 gui_beval.h proto/gui_beval.pro option.h \
|
||||
ex_cmds.h proto.h globals.h farsi.h arabic.h if_sniff.h version.h
|
||||
objects/hangulin.o: hangulin.c vim.h auto/config.h feature.h os_unix.h \
|
||||
auto/osdef.h ascii.h keymap.h term.h macros.h structs.h regexp.h gui.h \
|
||||
gui_beval.h proto/gui_beval.pro option.h ex_cmds.h proto.h globals.h \
|
||||
|
||||
1002
src/auto/configure
vendored
1002
src/auto/configure
vendored
File diff suppressed because it is too large
Load Diff
@@ -1,3 +1,3 @@
|
||||
:: command to build big Vim with OLE, Perl, Python, Ruby and Tcl
|
||||
nmake -f Make_mvc.mak GUI=yes OLE=yes PERL=E:\perl58 DYNAMIC_PERL=yes PERL_VER=58 PYTHON=e:\python23 DYNAMIC_PYTHON=yes PYTHON_VER=23 RUBY=e:\ruby18 DYNAMIC_RUBY=yes RUBY_VER=18 RUBY_VER_LONG=1.8 TCL=e:\tcl DYNAMIC_TCL=yes %1 IME=yes CSCOPE=yes XPM=e:\xpm
|
||||
nmake -f Make_mvc.mak GUI=yes OLE=yes PERL=E:\perl58 DYNAMIC_PERL=yes PERL_VER=58 PYTHON=e:\python24 DYNAMIC_PYTHON=yes PYTHON_VER=24 RUBY=e:\ruby18 DYNAMIC_RUBY=yes RUBY_VER=18 RUBY_VER_LONG=1.8 TCL=e:\tcl DYNAMIC_TCL=yes %1 IME=yes CSCOPE=yes XPM=e:\xpm
|
||||
|
||||
|
||||
17
src/buffer.c
17
src/buffer.c
@@ -660,16 +660,14 @@ goto_buffer(eap, start, dir, count)
|
||||
int dir;
|
||||
int count;
|
||||
{
|
||||
# if defined(FEAT_WINDOWS) \
|
||||
&& (defined(FEAT_GUI_DIALOG) || defined(FEAT_CON_DIALOG))
|
||||
# if defined(FEAT_WINDOWS) && defined(HAS_SWAP_EXISTS_ACTION)
|
||||
buf_T *old_curbuf = curbuf;
|
||||
|
||||
swap_exists_action = SEA_DIALOG;
|
||||
# endif
|
||||
(void)do_buffer(*eap->cmd == 's' ? DOBUF_SPLIT : DOBUF_GOTO,
|
||||
start, dir, count, eap->forceit);
|
||||
# if defined(FEAT_WINDOWS) \
|
||||
&& (defined(FEAT_GUI_DIALOG) || defined(FEAT_CON_DIALOG))
|
||||
# if defined(FEAT_WINDOWS) && defined(HAS_SWAP_EXISTS_ACTION)
|
||||
if (swap_exists_action == SEA_QUIT && *eap->cmd == 's')
|
||||
{
|
||||
# if defined(FEAT_AUTOCMD) && defined(FEAT_EVAL)
|
||||
@@ -683,6 +681,7 @@ goto_buffer(eap, start, dir, count)
|
||||
/* Quitting means closing the split window, nothing else. */
|
||||
win_close(curwin, TRUE);
|
||||
swap_exists_action = SEA_NONE;
|
||||
swap_exists_did_quit = TRUE;
|
||||
|
||||
# if defined(FEAT_AUTOCMD) && defined(FEAT_EVAL)
|
||||
/* Restore the error/interrupt/exception state if not discarded by a
|
||||
@@ -696,7 +695,7 @@ goto_buffer(eap, start, dir, count)
|
||||
}
|
||||
#endif
|
||||
|
||||
#if defined(FEAT_GUI_DIALOG) || defined(FEAT_CON_DIALOG) || defined(PROTO)
|
||||
#if defined(HAS_SWAP_EXISTS_ACTION) || defined(PROTO)
|
||||
/*
|
||||
* Handle the situation of swap_exists_action being set.
|
||||
* It is allowed for "old_curbuf" to be NULL or invalid.
|
||||
@@ -721,6 +720,7 @@ handle_swap_exists(old_curbuf)
|
||||
* buffer. If that buffer is gone or the same as the current one,
|
||||
* open a new, empty buffer. */
|
||||
swap_exists_action = SEA_NONE; /* don't want it again */
|
||||
swap_exists_did_quit = TRUE;
|
||||
close_buffer(curwin, curbuf, DOBUF_UNLOAD);
|
||||
if (!buf_valid(old_curbuf) || old_curbuf == curbuf)
|
||||
old_curbuf = buflist_new(NULL, NULL, 1L, BLN_CURBUF | BLN_LISTED);
|
||||
@@ -4376,20 +4376,20 @@ ex_buffer_all(eap)
|
||||
continue;
|
||||
|
||||
/* Open the buffer in this window. */
|
||||
#if defined(FEAT_GUI_DIALOG) || defined(FEAT_CON_DIALOG)
|
||||
#if defined(HAS_SWAP_EXISTS_ACTION)
|
||||
swap_exists_action = SEA_DIALOG;
|
||||
#endif
|
||||
set_curbuf(buf, DOBUF_GOTO);
|
||||
#ifdef FEAT_AUTOCMD
|
||||
if (!buf_valid(buf)) /* autocommands deleted the buffer!!! */
|
||||
{
|
||||
# if defined(FEAT_GUI_DIALOG) || defined(FEAT_CON_DIALOG)
|
||||
#if defined(HAS_SWAP_EXISTS_ACTION)
|
||||
swap_exists_action = SEA_NONE;
|
||||
# endif
|
||||
break;
|
||||
}
|
||||
#endif
|
||||
#if defined(FEAT_GUI_DIALOG) || defined(FEAT_CON_DIALOG)
|
||||
#if defined(HAS_SWAP_EXISTS_ACTION)
|
||||
if (swap_exists_action == SEA_QUIT)
|
||||
{
|
||||
# if defined(FEAT_AUTOCMD) && defined(FEAT_EVAL)
|
||||
@@ -4404,6 +4404,7 @@ ex_buffer_all(eap)
|
||||
win_close(curwin, TRUE);
|
||||
--open_wins;
|
||||
swap_exists_action = SEA_NONE;
|
||||
swap_exists_did_quit = TRUE;
|
||||
|
||||
# if defined(FEAT_AUTOCMD) && defined(FEAT_EVAL)
|
||||
/* Restore the error/interrupt/exception state if not
|
||||
|
||||
2
src/configure
vendored
2
src/configure
vendored
@@ -1,6 +1,6 @@
|
||||
#! /bin/sh
|
||||
# run the automatically generated configure script
|
||||
CONFIG_STATUS=auto/config.status \
|
||||
auto/configure "$@" --srcdir="${srcdir-.}" --cache-file=auto/config.cache
|
||||
auto/configure "$@" --srcdir="${srcdir:-.}" --cache-file=auto/config.cache
|
||||
# Stupid autoconf 2.5x causes this file to be left behind.
|
||||
if test -f configure.lineno; then rm -f configure.lineno; fi
|
||||
|
||||
331
src/configure.in
331
src/configure.in
@@ -468,7 +468,7 @@ if test "$enable_perlinterp" = "yes"; then
|
||||
fi
|
||||
|
||||
if test "x$MACOSX" = "xyes"; then
|
||||
dnl Mac OS X 10.2 or 10.3
|
||||
dnl Mac OS X 10.2 or later
|
||||
dir=/System/Library/Perl
|
||||
darwindir=$dir/darwin
|
||||
if test -d $darwindir; then
|
||||
@@ -749,7 +749,7 @@ if test "$enable_tclinterp" = "yes"; then
|
||||
TCL_LIBS=`eval echo "$TCL_LIB_SPEC $TCL_LIBS"`
|
||||
dnl Use $TCL_DEFS for -D_THREAD_SAFE et al. But only use the
|
||||
dnl "-D_ABC" items. Watch out for -DFOO=long\ long.
|
||||
TCL_DEFS=`echo $TCL_DEFS | sed -e 's/\\ /\\X/' | tr ' ' '\012' | sed -e '/^-[[^D]]/d' -e '/-D[[^_]]/d' -e 's/-D_/ -D_/' | tr -d '\012'`
|
||||
TCL_DEFS=`echo $TCL_DEFS | sed -e 's/\\\\ /\\\\X/g' | tr ' ' '\012' | sed -e '/^-[[^D]]/d' -e '/-D[[^_]]/d' -e 's/-D_/ -D_/' | tr '\012' ' ' | sed -e 's/\\\\X/\\\\ /g'`
|
||||
break
|
||||
fi
|
||||
done
|
||||
@@ -1079,7 +1079,7 @@ test "x$with_x" = xno -a "x$MACOSX" != "xyes" -a "x$QNX" != "xyes" && enable_gui
|
||||
|
||||
AC_MSG_CHECKING(--enable-gui argument)
|
||||
AC_ARG_ENABLE(gui,
|
||||
[ --enable-gui[=OPTS] X11 GUI [default=auto] [OPTS=auto/no/gtk/gtk2/gnome/gnome2/kde/motif/athena/neXtaw/photon/carbon]], , enable_gui="auto")
|
||||
[ --enable-gui[=OPTS] X11 GUI [default=auto] [OPTS=auto/no/gtk/gtk2/gnome/gnome2/motif/athena/neXtaw/photon/carbon]], , enable_gui="auto")
|
||||
|
||||
dnl Canonicalize the --enable-gui= argument so that it can be easily compared.
|
||||
dnl Do not use character classes for portability with old tools.
|
||||
@@ -1090,7 +1090,6 @@ dnl Skip everything by default.
|
||||
SKIP_GTK=YES
|
||||
SKIP_GTK2=YES
|
||||
SKIP_GNOME=YES
|
||||
SKIP_KDE=YES
|
||||
SKIP_MOTIF=YES
|
||||
SKIP_ATHENA=YES
|
||||
SKIP_NEXTAW=YES
|
||||
@@ -1134,8 +1133,6 @@ else
|
||||
SKIP_ATHENA=
|
||||
SKIP_NEXTAW=
|
||||
SKIP_CARBON=;;
|
||||
kde|Kde|KDE) AC_MSG_RESULT(KDE 2.x or 3.x GUI support)
|
||||
SKIP_KDE=;;
|
||||
gtk) AC_MSG_RESULT(GTK+ 1.x GUI support)
|
||||
SKIP_GTK=;;
|
||||
gtk2) AC_MSG_RESULT(GTK+ 2.x GUI support)
|
||||
@@ -1159,17 +1156,6 @@ else
|
||||
|
||||
fi
|
||||
|
||||
if test "x$SKIP_KDE" != "xYES" -a "$enable_gui_canon" != "kde"; then
|
||||
AC_MSG_CHECKING(whether or not to look for KDE)
|
||||
AC_ARG_ENABLE(kde-check,
|
||||
[ --enable-kde-check If auto-select GUI, check for KDE [default=no]],
|
||||
,enable_kde_check="no")
|
||||
AC_MSG_RESULT($enable_kde_check);
|
||||
if test "x$enable_kde_check" = "xno"; then
|
||||
SKIP_KDE=YES
|
||||
fi
|
||||
fi
|
||||
|
||||
if test "x$SKIP_GTK" != "xYES" -a "$enable_gui_canon" != "gtk" -a "$enable_gui_canon" != "gtk2"; then
|
||||
AC_MSG_CHECKING(whether or not to look for GTK)
|
||||
AC_ARG_ENABLE(gtk-check,
|
||||
@@ -1250,308 +1236,6 @@ if test "x$SKIP_CARBON" != "xYES" -a "$enable_gui_canon" != "carbon"; then
|
||||
fi
|
||||
fi
|
||||
|
||||
dnl ---------------------------------------------------------------------------
|
||||
dnl we use the kde-config script included in KDE since 2.x to check which
|
||||
dnl version of KDE, we'll use. We'll use additional args in configure to
|
||||
dnl obtain the QT directory (includes and libs) as qt does not give any
|
||||
dnl config script ! (shame on the trolls ! ;p)
|
||||
dnl ---------------------------------------------------------------------------
|
||||
|
||||
if test -z "$SKIP_KDE"; then
|
||||
dnl ------------------
|
||||
dnl now, take care of QT
|
||||
dnl -----------------
|
||||
AC_ARG_WITH(qt-dir,
|
||||
[ --with-qt-dir=DIR Specify prefix of QT files],
|
||||
[
|
||||
ROOTQT="$withval"
|
||||
MOC="$withval"/bin/moc
|
||||
QT_INCLUDES="$withval"/include
|
||||
QT_LIBS="$withval"/lib
|
||||
])
|
||||
|
||||
if test "x$ROOTQT" = "x"; then
|
||||
if test -z "$QTDIR"; then
|
||||
dnl Find the Qt directory by looking for the "moc" program.
|
||||
dnl It's better than nothing.
|
||||
AC_PATH_PROG(MOC, moc, no)
|
||||
if test "x$MOC" = "xno"; then
|
||||
AC_MSG_ERROR(could not find Qt directory)
|
||||
else
|
||||
ROOTQT=`echo $MOC | sed 's+/bin/moc++'`
|
||||
fi
|
||||
else
|
||||
ROOTQT="$QTDIR"
|
||||
fi
|
||||
fi
|
||||
MOC="$ROOTQT"/bin/moc
|
||||
QT_INCLUDES="$ROOTQT"/include
|
||||
QT_LIBS="$ROOTQT"/lib
|
||||
|
||||
AC_ARG_WITH(qt-includes,
|
||||
[ --with-qt-includes=DIR Specify location of Qt headers],
|
||||
[QT_INCLUDES="$withval"]
|
||||
)
|
||||
|
||||
AC_ARG_WITH(qt-libraries,
|
||||
[ --with-qt-libs=DIR Specify location of Qt libraries],
|
||||
[QT_LIBS="$withval"]
|
||||
)
|
||||
|
||||
if test "x$QT_LIBS" = "x" ; then
|
||||
QT_LIBS="$ROOTQT"/lib
|
||||
fi
|
||||
if test "x$QT_INCLUDES" = "x" ; then
|
||||
QT_INCLUDES="$ROOTQT"/include
|
||||
fi
|
||||
dnl we should get QT's version from here and compare with what kde-config
|
||||
dnl says
|
||||
|
||||
AC_MSG_CHECKING(whether or not to use a KDE Toolbar in KVim)
|
||||
AC_ARG_ENABLE(kde-toolbar,
|
||||
[ --enable-kde-toolbar if KDE GUI is selected, enable a KDE-look toolbar [default=no]],
|
||||
, enable_kde_toolbar="no")
|
||||
if test "x$enable_kde_toolbar" != "xno"; then
|
||||
AC_DEFINE(FEAT_KDETOOLBAR)
|
||||
fi
|
||||
AC_MSG_RESULT($enable_kde_toolbar);
|
||||
fi
|
||||
|
||||
dnl -------------------
|
||||
dnl so, first, look up at the kde-config script
|
||||
dnl ------------------
|
||||
|
||||
if test -z "$SKIP_KDE"; then
|
||||
AC_DEFUN([AC_FIND_FILE],
|
||||
[
|
||||
$3=NO
|
||||
for i in $2;
|
||||
do
|
||||
for j in $1;
|
||||
do
|
||||
echo "configure: __oline__: $i/$j" >&AC_FD_CC
|
||||
if test -r "$i/$j"; then
|
||||
echo "taking that" >&AC_FD_CC
|
||||
$3=$i
|
||||
break 2
|
||||
fi
|
||||
done
|
||||
done
|
||||
])
|
||||
|
||||
AC_DEFUN(AM_PATH_KDE,
|
||||
[
|
||||
if test "X$KDE_CONFIG" != "X"; then
|
||||
min_kde_version=ifelse([$1], ,2.0,[$1])
|
||||
AC_MSG_CHECKING(for KDE version >= $min_kde_version)
|
||||
no_kde=""
|
||||
if test "$KDE_CONFIG" = "no" ; then
|
||||
no_kde=yes
|
||||
else
|
||||
KDE_PREFIX=`$KDE_CONFIG --prefix`
|
||||
if test "x$KDE_LIBS" = "x"; then
|
||||
KDE_LIBS="$KDE_PREFIX/lib"
|
||||
fi
|
||||
if test "x$KDE_INCLUDES" = "x"; then
|
||||
KDE_INCLUDES="$KDE_PREFIX/include"
|
||||
if test -d "$KDE_INCLUDES/kde"; then
|
||||
KDE_INCLUDES="$KDE_INCLUDES/kde"
|
||||
fi
|
||||
fi
|
||||
kde_major_version=`$KDE_CONFIG --version | grep KDE | \
|
||||
sed 's/KDE:\ //' | sed 's/\([[0-9]]*\).\([[0-9]]*.*\)/\1/'`
|
||||
kde_minor_version=`$KDE_CONFIG --version | grep KDE | \
|
||||
sed 's/KDE:\ //' | sed 's/\([[0-9]]*\).\([[0-9]]*.*\)/\2/'`
|
||||
|
||||
qt_major_version=`$KDE_CONFIG --version | grep Qt | sed -e \
|
||||
's/Qt:\ //' | sed 's/\([[0-9]]*\).\([[0-9]]*.*\)/\1/'`
|
||||
qt_minor_version=`$KDE_CONFIG --version | grep Qt | sed -e \
|
||||
's/Qt:\ //' | sed 's/\([[0-9]]*\).\([[0-9]]*.*\)/\2/'`
|
||||
|
||||
dnl maybe in a near future we'll get these ones : QT_PREFIX, QT_LIBS,
|
||||
dnl QT_INCLUDES
|
||||
dnl but for now we need configure options to get them ...
|
||||
if test "x$enable-kdetest" = "xyes" ; then
|
||||
ac_save_LIBS="$LIBS"
|
||||
LIBS="$LIBS $KDE_LIBS"
|
||||
|
||||
dnl fake test
|
||||
AC_TRY_RUN([
|
||||
#include <stdio.h>
|
||||
int
|
||||
main()
|
||||
{ return 0; }
|
||||
],, no_kde=yes,[echo $ac_n "cross compiling KDE ? ? how can i remove that ? :)"])
|
||||
LIBS="$ac_save_LIBS"
|
||||
fi
|
||||
fi
|
||||
if test "x$no_kde" = x ; then
|
||||
AC_MSG_RESULT(found KDE $kde_major_version.$kde_minor_version)
|
||||
ifelse([$2], , :, [$2])
|
||||
else
|
||||
AC_MSG_RESULT(no)
|
||||
KDE_LIBS=""
|
||||
ifelse([$3], , :, [$3])
|
||||
fi
|
||||
else
|
||||
AC_MSG_RESULT(no)
|
||||
KDE_LIBS=""
|
||||
ifelse([$3], , :, [$3])
|
||||
fi
|
||||
|
||||
AC_SUBST(KDE_LIBS)
|
||||
AC_SUBST(KDE_INCLUDES)
|
||||
AC_SUBST(KDE_PREFIX)
|
||||
])
|
||||
|
||||
dnl Check all the KDE stuff
|
||||
AC_MSG_CHECKING(--disable-rpath argument)
|
||||
AC_ARG_ENABLE(rpath,
|
||||
[ --disable-rpath Disable rpath.],
|
||||
, enable_rpath="yes")
|
||||
if test "$enable_rpath" = "yes"; then
|
||||
AC_MSG_RESULT(no)
|
||||
else
|
||||
AC_MSG_RESULT(yes)
|
||||
fi
|
||||
|
||||
AC_MSG_CHECKING(--with-kde-prefix argument)
|
||||
AC_ARG_WITH(kde-prefix,[ --with-kde-prefix=PFX Prefix where KDE is installed (optional)],kde_config_prefix="$withval";
|
||||
AC_MSG_RESULT($kde_config_prefix), kde_config_prefix="";AC_MSG_RESULT(no))
|
||||
|
||||
AC_ARG_WITH(kde-includes,
|
||||
[ --with-kde-includes=DIR Specify location of KDE headers],
|
||||
[KDE_INCLUDES="$withval"]
|
||||
)
|
||||
|
||||
AC_ARG_WITH(kde-libraries,
|
||||
[ --with-kde-libs=DIR Specify location of KDE libraries],
|
||||
[KDE_LIBS="$withval"]
|
||||
)
|
||||
|
||||
AC_MSG_CHECKING(--disable-kdetest argument)
|
||||
AC_ARG_ENABLE(kdetest,
|
||||
[ --disable-kdetest Do not try to compile and run a test KDE program],
|
||||
enable_kdetest=yes)
|
||||
|
||||
if test "x$enable_kdetest" = "xyes" ; then
|
||||
AC_MSG_RESULT(kde test enabled)
|
||||
else
|
||||
AC_MSG_RESULT(kde test disabled)
|
||||
fi
|
||||
|
||||
if test "x$kde_config_prefix" != "x" ; then
|
||||
KDE_CONFIG=$kde_config_prefix/bin/kde-config
|
||||
fi
|
||||
|
||||
if test "X$KDE_CONFIG" = "X"; then
|
||||
AC_PATH_PROG(KDE_CONFIG, kde-config, no)
|
||||
else
|
||||
AC_MSG_RESULT(Using KDE configuration program $KDE_CONFIG)
|
||||
fi
|
||||
|
||||
if test "X$KDE_CONFIG" != "X" ; then
|
||||
AM_PATH_KDE(2.0.0,
|
||||
[GUI_LIB_LOC="-L$KDE_LIBS -lkdeui -lkdecore -lDCOP"
|
||||
GUI_INC_LOC="-I$KDE_INCLUDES"
|
||||
KDEDIR="$KDE_PREFIX"], )
|
||||
if test "x$KDE_PREFIX" != "x"; then
|
||||
AC_MSG_CHECKING(for QT version $qt_major_version.x)
|
||||
if test "x$ROOTQT" != "x" ; then
|
||||
GUI_INC_LOC="-I$QT_INCLUDES $GUI_INC_LOC"
|
||||
if test $qt_major_version -lt 2; then
|
||||
AC_MSG_ERROR(Your QT version is prior to 2.0; KDE 2.x and 3.x require at least QT 2)
|
||||
fi
|
||||
dnl hack for FreeBSD
|
||||
if test "`(uname) 2>/dev/null`" = "FreeBSD"; then
|
||||
CFLAGS="$CFLAGS -D_THREAD_SAFE"
|
||||
CXXFLAGS="$CXXFLAGS -D_THREAD_SAFE"
|
||||
GUI_LIB_LOC="$GUI_LIB_LOC -pthread"
|
||||
LIBS="$LIBS -pthread"
|
||||
fi
|
||||
|
||||
dnl check the version
|
||||
if test "x$enable_rpath" = "xyes"; then
|
||||
if test $qt_major_version = 2; then
|
||||
GUI_LIB_LOC="-L$KDE_LIBS -lkfile -L$QT_LIBS -lqt $GUI_LIB_LOC \
|
||||
-Wl,--rpath -Wl,$KDE_LIBS -Wl,--rpath -Wl,$QT_LIBS"
|
||||
else
|
||||
GUI_LIB_LOC="-L$KDE_LIBS -lkio -L$QT_LIBS -lqt-mt $GUI_LIB_LOC \
|
||||
-Wl,--rpath -Wl,$KDE_LIBS -Wl,--rpath -Wl,$QT_LIBS"
|
||||
fi
|
||||
else
|
||||
if test $qt_major_version = 2; then
|
||||
GUI_LIB_LOC="-L$KDE_LIBS -lkfile -L$QT_LIBS -lqt $GUI_LIB_LOC"
|
||||
else
|
||||
GUI_LIB_LOC="-L$KDE_LIBS -lkio -L$QT_LIBS -lqt-mt $GUI_LIB_LOC"
|
||||
fi
|
||||
fi
|
||||
|
||||
dnl Remove "-I/usr/include " from GUI_*
|
||||
GUI_INC_LOC="`echo $GUI_INC_LOC\ | sed 's%-I/usr/include %%'`"
|
||||
dnl GUI_LIB_LOC="`echo $GUI_LIB_LOC\ | sed 's% -L/usr/lib%%'`"
|
||||
|
||||
AC_MSG_RESULT(found $qt_major_version.$qt_minor_version in $ROOTQT)
|
||||
|
||||
dnl now check the results ...
|
||||
dnl find the Qt's headers ?
|
||||
AC_FIND_FILE(qstyle.h,$QT_INCLUDES,qt_incdir)
|
||||
if test "x$qt_incdir" = "xNO"; then
|
||||
AC_MSG_ERROR(Could not find Qt headers in $QT_INCLUDES)
|
||||
fi
|
||||
AC_FIND_FILE(kapplication.h,$KDE_INCLUDES,kde_incdir)
|
||||
if test "x$kde_incdir" = "xNO"; then
|
||||
AC_MSG_ERROR(Could not find KDE headers in $KDE_INCLUDES)
|
||||
fi
|
||||
|
||||
AC_LANG_SAVE
|
||||
AC_LANG_CPLUSPLUS
|
||||
AC_PROG_CXX
|
||||
ac_save_LIBS="$LIBS"
|
||||
LIBS="$GUI_LIB_LOC"
|
||||
ac_save_CXXFLAGS="$CXXFLAGS"
|
||||
CXXFLAGS="$CXXFLAGS $GUI_INC_LOC"
|
||||
AC_MSG_CHECKING(whether Qt libraries are usable)
|
||||
AC_TRY_LINK(
|
||||
[#include <qapplication.h>],
|
||||
[
|
||||
int argc;
|
||||
char** argv;
|
||||
QApplication app(argc, argv);]
|
||||
,AC_MSG_RESULT(yes),AC_MSG_RESULT(no);AC_MSG_ERROR(Qt fails to link a simple application, check your installation and settings))
|
||||
|
||||
AC_MSG_CHECKING(whether KDE libraries are usable)
|
||||
AC_TRY_LINK(
|
||||
[#include <kapplication.h>],
|
||||
[
|
||||
int argc;
|
||||
char** argv;
|
||||
KApplication app(argc, argv);]
|
||||
,AC_MSG_RESULT(yes),AC_MSG_RESULT(no);AC_MSG_ERROR(KDE fails to link a simple application, check your installation and settings))
|
||||
|
||||
LIBS="$ac_save_LIBS"
|
||||
CXXFLAGS="$ac_save_CXXFLAGS"
|
||||
AC_LANG_RESTORE
|
||||
|
||||
|
||||
SKIP_GTK=YES
|
||||
SKIP_ATHENA=YES
|
||||
SKIP_MOTIF=YES
|
||||
GUITYPE=KDE
|
||||
AC_SUBST(KDE_PREFIX)
|
||||
AC_SUBST(QT_LIBS)
|
||||
AC_SUBST(QT_INCLUDES)
|
||||
AC_SUBST(ROOTQT)
|
||||
AC_SUBST(MOC)
|
||||
AC_DEFINE(FEAT_GUI_KDE)
|
||||
else
|
||||
AC_MSG_ERROR(Detected QT version mismatched)
|
||||
fi
|
||||
else
|
||||
AC_MSG_ERROR(Could not find KDE installation prefix)
|
||||
fi
|
||||
fi
|
||||
fi
|
||||
|
||||
if test "x$MACOSX" = "xyes" -a -z "$SKIP_CARBON" -a "x$CARBON" = "xyes"; then
|
||||
AC_MSG_CHECKING(for Carbon GUI)
|
||||
@@ -2156,10 +1840,6 @@ if test "x$GUITYPE:$enable_fontset" = "xGTK:yes" -a "0$gtk_major_version" -ge 2;
|
||||
AC_MSG_RESULT(GTK+ 2 GUI selected; fontset has been disabled)
|
||||
enable_fontset="no"
|
||||
fi
|
||||
if test "x$GUITYPE:$enable_fontset" = "xKDE:yes"; then
|
||||
AC_MSG_RESULT(KDE GUI selected; fontset has been disabled)
|
||||
enable_fontset="no"
|
||||
fi
|
||||
|
||||
if test -z "$SKIP_PHOTON"; then
|
||||
GUITYPE=PHOTONGUI
|
||||
@@ -2261,6 +1941,10 @@ AC_TRY_COMPILE([
|
||||
AC_MSG_RESULT(no))
|
||||
|
||||
AC_CHECK_HEADERS(strings.h)
|
||||
if test "x$MACOSX" = "xyes"; then
|
||||
dnl The strings.h file on OS/X contains a warning and nothing useful.
|
||||
AC_DEFINE(NO_STRINGS_WITH_STRING_H)
|
||||
else
|
||||
|
||||
dnl Check if strings.h and string.h can both be included when defined.
|
||||
AC_MSG_CHECKING([if strings.h can be included after string.h])
|
||||
@@ -2285,6 +1969,7 @@ AC_TRY_COMPILE([
|
||||
AC_DEFINE(NO_STRINGS_WITH_STRING_H)
|
||||
AC_MSG_RESULT(no))
|
||||
CPPFLAGS=$cppflags_save
|
||||
fi
|
||||
|
||||
dnl Checks for typedefs, structures, and compiler characteristics.
|
||||
AC_PROG_GCC_TRADITIONAL
|
||||
|
||||
170
src/edit.c
170
src/edit.c
@@ -121,7 +121,9 @@ static buf_T *ins_compl_next_buf __ARGS((buf_T *buf, int flag));
|
||||
static int ins_compl_get_exp __ARGS((pos_T *ini, int dir));
|
||||
static void ins_compl_delete __ARGS((void));
|
||||
static void ins_compl_insert __ARGS((void));
|
||||
static int ins_compl_next __ARGS((int allow_get_expansion));
|
||||
static int ins_compl_next __ARGS((int allow_get_expansion, int count));
|
||||
static int ins_compl_key2dir __ARGS((int c));
|
||||
static int ins_compl_key2count __ARGS((int c));
|
||||
static int ins_complete __ARGS((int c));
|
||||
static int quote_meta __ARGS((char_u *dest, char_u *str, int len));
|
||||
#endif /* FEAT_INS_EXPAND */
|
||||
@@ -208,6 +210,7 @@ static char_u *last_insert = NULL; /* the text of the previous insert,
|
||||
K_SPECIAL and CSI are escaped */
|
||||
static int last_insert_skip; /* nr of chars in front of previous insert */
|
||||
static int new_insert_skip; /* nr of chars in front of current insert */
|
||||
static int did_restart_edit; /* "restart_edit" when calling edit() */
|
||||
|
||||
#ifdef FEAT_CINDENT
|
||||
static int can_cindent; /* may do cindenting on this line */
|
||||
@@ -222,10 +225,6 @@ static int revins_legal; /* was the last char 'legal'? */
|
||||
static int revins_scol; /* start column of revins session */
|
||||
#endif
|
||||
|
||||
#if defined(FEAT_MBYTE) && defined(MACOS_CLASSIC)
|
||||
static short previous_script = smRoman;
|
||||
#endif
|
||||
|
||||
static int ins_need_undo; /* call u_save() before inserting a
|
||||
char. Set when edit() is called.
|
||||
after that arrow_used is used. */
|
||||
@@ -273,9 +272,11 @@ edit(cmdchar, startln, count)
|
||||
#endif
|
||||
int inserted_space = FALSE; /* just inserted a space */
|
||||
int replaceState = REPLACE;
|
||||
int did_restart_edit = restart_edit;
|
||||
int nomove = FALSE; /* don't move cursor on return */
|
||||
|
||||
/* Remember whether editing was restarted after CTRL-O. */
|
||||
did_restart_edit = restart_edit;
|
||||
|
||||
/* sleep before redrawing, needed for "CTRL-O :" that results in an
|
||||
* error message */
|
||||
check_for_delay(TRUE);
|
||||
@@ -398,10 +399,6 @@ edit(cmdchar, startln, count)
|
||||
im_set_active(curbuf->b_p_iminsert == B_IMODE_IM);
|
||||
#endif
|
||||
|
||||
#if defined(FEAT_MBYTE) && defined(MACOS_CLASSIC)
|
||||
KeyScript(previous_script);
|
||||
#endif
|
||||
|
||||
#ifdef FEAT_MOUSE
|
||||
setmouse();
|
||||
#endif
|
||||
@@ -504,10 +501,10 @@ edit(cmdchar, startln, count)
|
||||
do_digraph(-1); /* clear digraphs */
|
||||
#endif
|
||||
|
||||
/*
|
||||
* Get the current length of the redo buffer, those characters have to be
|
||||
* skipped if we want to get to the inserted characters.
|
||||
*/
|
||||
/*
|
||||
* Get the current length of the redo buffer, those characters have to be
|
||||
* skipped if we want to get to the inserted characters.
|
||||
*/
|
||||
ptr = get_inserted();
|
||||
if (ptr == NULL)
|
||||
new_insert_skip = 0;
|
||||
@@ -1048,6 +1045,10 @@ doESCkey:
|
||||
case K_S_UP: /* <S-Up> */
|
||||
case K_PAGEUP:
|
||||
case K_KPAGEUP:
|
||||
#ifdef FEAT_INS_EXPAND
|
||||
if (pum_visible())
|
||||
goto docomplete;
|
||||
#endif
|
||||
ins_pageup();
|
||||
break;
|
||||
|
||||
@@ -1061,6 +1062,10 @@ doESCkey:
|
||||
case K_S_DOWN: /* <S-Down> */
|
||||
case K_PAGEDOWN:
|
||||
case K_KPAGEDOWN:
|
||||
#ifdef FEAT_INS_EXPAND
|
||||
if (pum_visible())
|
||||
goto docomplete;
|
||||
#endif
|
||||
ins_pagedown();
|
||||
break;
|
||||
|
||||
@@ -1824,6 +1829,11 @@ vim_is_ctrl_x_key(c)
|
||||
if (c == Ctrl_R)
|
||||
return TRUE;
|
||||
|
||||
/* Accept <PageUp> and <PageDown> if the popup menu is visible. */
|
||||
if (pum_visible() && (c == K_PAGEUP || c == K_KPAGEUP || c == K_S_UP
|
||||
|| c == K_PAGEDOWN || c == K_KPAGEDOWN || c == K_S_DOWN))
|
||||
return TRUE;
|
||||
|
||||
switch (ctrl_x_mode)
|
||||
{
|
||||
case 0: /* Not in any CTRL-X mode */
|
||||
@@ -2089,6 +2099,8 @@ ins_compl_make_cyclic()
|
||||
return count;
|
||||
}
|
||||
|
||||
/* "compl_match_array" points the currently displayed list of entries in the
|
||||
* popup menu. It is NULL when there is no popup menu. */
|
||||
static char_u **compl_match_array = NULL;
|
||||
static int compl_match_arraysize;
|
||||
|
||||
@@ -3275,11 +3287,14 @@ ins_compl_insert()
|
||||
* calls this function with "allow_get_expansion" FALSE.
|
||||
*/
|
||||
static int
|
||||
ins_compl_next(allow_get_expansion)
|
||||
ins_compl_next(allow_get_expansion, count)
|
||||
int allow_get_expansion;
|
||||
int count; /* repeat completion this many times; should
|
||||
be at least 1 */
|
||||
{
|
||||
int num_matches = -1;
|
||||
int i;
|
||||
int todo = count;
|
||||
|
||||
if (allow_get_expansion)
|
||||
{
|
||||
@@ -3287,24 +3302,41 @@ ins_compl_next(allow_get_expansion)
|
||||
ins_compl_delete();
|
||||
}
|
||||
compl_pending = FALSE;
|
||||
if (compl_shows_dir == FORWARD && compl_shown_match->cp_next != NULL)
|
||||
compl_shown_match = compl_shown_match->cp_next;
|
||||
else if (compl_shows_dir == BACKWARD && compl_shown_match->cp_prev != NULL)
|
||||
compl_shown_match = compl_shown_match->cp_prev;
|
||||
else
|
||||
|
||||
/* Repeat this for when <PageUp> or <PageDown> is typed. But don't wrap
|
||||
* around. */
|
||||
while (--todo >= 0)
|
||||
{
|
||||
compl_pending = TRUE;
|
||||
if (allow_get_expansion)
|
||||
if (compl_shows_dir == FORWARD && compl_shown_match->cp_next != NULL)
|
||||
{
|
||||
num_matches = ins_compl_get_exp(&compl_startpos, compl_direction);
|
||||
if (compl_pending)
|
||||
{
|
||||
if (compl_direction == compl_shows_dir)
|
||||
compl_shown_match = compl_curr_match;
|
||||
}
|
||||
compl_shown_match = compl_shown_match->cp_next;
|
||||
if (compl_shown_match->cp_next != NULL
|
||||
&& compl_shown_match->cp_next == compl_first_match)
|
||||
break;
|
||||
}
|
||||
else if (compl_shows_dir == BACKWARD
|
||||
&& compl_shown_match->cp_prev != NULL)
|
||||
{
|
||||
compl_shown_match = compl_shown_match->cp_prev;
|
||||
if (compl_shown_match == compl_first_match)
|
||||
break;
|
||||
}
|
||||
else
|
||||
return -1;
|
||||
{
|
||||
compl_pending = TRUE;
|
||||
if (allow_get_expansion)
|
||||
{
|
||||
num_matches = ins_compl_get_exp(&compl_startpos,
|
||||
compl_direction);
|
||||
if (compl_pending)
|
||||
{
|
||||
if (compl_direction == compl_shows_dir)
|
||||
compl_shown_match = compl_curr_match;
|
||||
}
|
||||
}
|
||||
else
|
||||
return -1;
|
||||
}
|
||||
}
|
||||
|
||||
/* Insert the text of the new completion */
|
||||
@@ -3379,17 +3411,49 @@ ins_compl_check_keys(frequency)
|
||||
if (vim_is_ctrl_x_key(c) && c != Ctrl_X && c != Ctrl_R)
|
||||
{
|
||||
c = safe_vgetc(); /* Eat the character */
|
||||
if (c == Ctrl_P || c == Ctrl_L)
|
||||
compl_shows_dir = BACKWARD;
|
||||
else
|
||||
compl_shows_dir = FORWARD;
|
||||
(void)ins_compl_next(FALSE);
|
||||
compl_shows_dir = ins_compl_key2dir(c);
|
||||
(void)ins_compl_next(FALSE, ins_compl_key2count(c));
|
||||
}
|
||||
else if (c != Ctrl_R)
|
||||
compl_interrupted = TRUE;
|
||||
}
|
||||
if (compl_pending && !got_int)
|
||||
(void)ins_compl_next(FALSE);
|
||||
(void)ins_compl_next(FALSE, 1);
|
||||
}
|
||||
|
||||
/*
|
||||
* Decide the direction of Insert mode complete from the key typed.
|
||||
* Returns BACKWARD or FORWARD.
|
||||
*/
|
||||
static int
|
||||
ins_compl_key2dir(c)
|
||||
int c;
|
||||
{
|
||||
if (c == Ctrl_P || c == Ctrl_L || (pum_visible()
|
||||
&& (c == K_PAGEUP || c == K_KPAGEUP || c == K_S_UP)))
|
||||
return BACKWARD;
|
||||
return FORWARD;
|
||||
}
|
||||
|
||||
/*
|
||||
* Decide the number of completions to move forward.
|
||||
* Returns 1 for most keys, height of the popup menu for page-up/down keys.
|
||||
*/
|
||||
static int
|
||||
ins_compl_key2count(c)
|
||||
int c;
|
||||
{
|
||||
int h;
|
||||
|
||||
if (pum_visible() && (c == K_PAGEUP || c == K_KPAGEUP || c == K_S_UP
|
||||
|| c == K_PAGEDOWN || c == K_KPAGEDOWN || c == K_S_DOWN))
|
||||
{
|
||||
h = pum_get_height();
|
||||
if (h > 3)
|
||||
h -= 2; /* keep some context */
|
||||
return h;
|
||||
}
|
||||
return 1;
|
||||
}
|
||||
|
||||
/*
|
||||
@@ -3406,10 +3470,7 @@ ins_complete(c)
|
||||
colnr_T curs_col; /* cursor column */
|
||||
int n;
|
||||
|
||||
if (c == Ctrl_P || c == Ctrl_L)
|
||||
compl_direction = BACKWARD;
|
||||
else
|
||||
compl_direction = FORWARD;
|
||||
compl_direction = ins_compl_key2dir(c);
|
||||
if (!compl_started)
|
||||
{
|
||||
/* First time we hit ^N or ^P (in a row, I mean) */
|
||||
@@ -3786,7 +3847,7 @@ ins_complete(c)
|
||||
/*
|
||||
* Find next match.
|
||||
*/
|
||||
n = ins_compl_next(TRUE);
|
||||
n = ins_compl_next(TRUE, ins_compl_key2count(c));
|
||||
|
||||
/* may undisplay the popup menu */
|
||||
ins_compl_upd_pum();
|
||||
@@ -5016,6 +5077,7 @@ stop_arrow()
|
||||
#endif
|
||||
ResetRedobuff();
|
||||
AppendToRedobuff((char_u *)"1i"); /* pretend we start an insertion */
|
||||
new_insert_skip = 2;
|
||||
}
|
||||
else if (ins_need_undo)
|
||||
{
|
||||
@@ -5036,20 +5098,30 @@ stop_arrow()
|
||||
*/
|
||||
static void
|
||||
stop_insert(end_insert_pos, esc)
|
||||
pos_T *end_insert_pos; /* where insert ended */
|
||||
int esc; /* called by ins_esc() */
|
||||
pos_T *end_insert_pos; /* where insert ended */
|
||||
int esc; /* called by ins_esc() */
|
||||
{
|
||||
int cc;
|
||||
int cc;
|
||||
char_u *ptr;
|
||||
|
||||
stop_redo_ins();
|
||||
replace_flush(); /* abandon replace stack */
|
||||
|
||||
/*
|
||||
* save the inserted text for later redo with ^@
|
||||
* Save the inserted text for later redo with ^@ and CTRL-A.
|
||||
* Don't do it when "restart_edit" was set and nothing was inserted,
|
||||
* otherwise CTRL-O w and then <Left> will clear "last_insert".
|
||||
*/
|
||||
vim_free(last_insert);
|
||||
last_insert = get_inserted();
|
||||
last_insert_skip = new_insert_skip;
|
||||
ptr = get_inserted();
|
||||
if (did_restart_edit == 0 || (ptr != NULL
|
||||
&& (int)STRLEN(ptr) > new_insert_skip))
|
||||
{
|
||||
vim_free(last_insert);
|
||||
last_insert = ptr;
|
||||
last_insert_skip = new_insert_skip;
|
||||
}
|
||||
else
|
||||
vim_free(ptr);
|
||||
|
||||
if (!arrow_used)
|
||||
{
|
||||
@@ -6533,10 +6605,6 @@ ins_esc(count, cmdchar, nomove)
|
||||
composing_hangul = 0;
|
||||
}
|
||||
#endif
|
||||
#if defined(FEAT_MBYTE) && defined(MACOS_CLASSIC)
|
||||
previous_script = GetScriptManagerVariable(smKeyScript);
|
||||
KeyScript(smKeyRoman); /* or smKeySysScript */
|
||||
#endif
|
||||
|
||||
temp = curwin->w_cursor.col;
|
||||
if (disabled_redraw)
|
||||
|
||||
24
src/eval.c
24
src/eval.c
@@ -338,6 +338,9 @@ static struct vimvar
|
||||
{VV_NAME("beval_col", VAR_NUMBER), VV_RO},
|
||||
{VV_NAME("beval_text", VAR_STRING), VV_RO},
|
||||
{VV_NAME("scrollstart", VAR_STRING), 0},
|
||||
{VV_NAME("swapname", VAR_STRING), VV_RO},
|
||||
{VV_NAME("swapchoice", VAR_STRING), 0},
|
||||
{VV_NAME("swapcommand", VAR_STRING), VV_RO},
|
||||
};
|
||||
|
||||
/* shorthand */
|
||||
@@ -8456,12 +8459,10 @@ f_exists(argvars, rettv)
|
||||
else if (*p == '#')
|
||||
{
|
||||
#ifdef FEAT_AUTOCMD
|
||||
name = p + 1;
|
||||
p = vim_strchr(name, '#');
|
||||
if (p != NULL)
|
||||
n = au_exists(name, p, p + 1);
|
||||
if (p[1] == '#')
|
||||
n = autocmd_supported(p + 2);
|
||||
else
|
||||
n = au_exists(name, name + STRLEN(name), NULL);
|
||||
n = au_exists(p + 1);
|
||||
#endif
|
||||
}
|
||||
else /* internal variable */
|
||||
@@ -10024,7 +10025,7 @@ f_has(argvars, rettv)
|
||||
"dos16",
|
||||
# endif
|
||||
#endif
|
||||
#ifdef MACOS /* TODO: Should we add MACOS_CLASSIC, MACOS_X? (Dany) */
|
||||
#ifdef MACOS
|
||||
"mac",
|
||||
#endif
|
||||
#if defined(MACOS_X_UNIX)
|
||||
@@ -10173,9 +10174,6 @@ f_has(argvars, rettv)
|
||||
"gui_athena",
|
||||
# endif
|
||||
#endif
|
||||
#ifdef FEAT_GUI_KDE
|
||||
"gui_kde",
|
||||
#endif
|
||||
#ifdef FEAT_GUI_GTK
|
||||
"gui_gtk",
|
||||
# ifdef HAVE_GTK2
|
||||
@@ -12836,10 +12834,9 @@ f_resolve(argvars, rettv)
|
||||
remain = vim_strsave(q - 1);
|
||||
else
|
||||
{
|
||||
cpy = vim_strnsave(q-1, STRLEN(q-1) + STRLEN(remain));
|
||||
cpy = concat_str(q - 1, remain);
|
||||
if (cpy != NULL)
|
||||
{
|
||||
STRCAT(cpy, remain);
|
||||
vim_free(remain);
|
||||
remain = cpy;
|
||||
}
|
||||
@@ -15713,6 +15710,8 @@ set_cmdarg(eap, oldarg)
|
||||
# ifdef FEAT_MBYTE
|
||||
if (eap->force_enc != 0)
|
||||
len += (unsigned)STRLEN(eap->cmd + eap->force_enc) + 7;
|
||||
if (eap->bad_char != 0)
|
||||
len += (unsigned)STRLEN(eap->cmd + eap->bad_char) + 7;
|
||||
# endif
|
||||
|
||||
newval = alloc(len + 1);
|
||||
@@ -15732,6 +15731,9 @@ set_cmdarg(eap, oldarg)
|
||||
if (eap->force_enc != 0)
|
||||
sprintf((char *)newval + STRLEN(newval), " ++enc=%s",
|
||||
eap->cmd + eap->force_enc);
|
||||
if (eap->bad_char != 0)
|
||||
sprintf((char *)newval + STRLEN(newval), " ++bad=%s",
|
||||
eap->cmd + eap->bad_char);
|
||||
# endif
|
||||
vimvars[VV_CMDARG].vv_str = newval;
|
||||
return oldval;
|
||||
|
||||
@@ -1656,6 +1656,9 @@ write_viminfo(file, forceit)
|
||||
int shortname = FALSE; /* use 8.3 file name */
|
||||
struct stat st_old; /* mch_stat() of existing viminfo file */
|
||||
#endif
|
||||
#ifdef WIN3264
|
||||
long perm = -1;
|
||||
#endif
|
||||
|
||||
if (no_viminfo())
|
||||
return;
|
||||
@@ -1697,8 +1700,8 @@ write_viminfo(file, forceit)
|
||||
*/
|
||||
st_old.st_dev = st_old.st_ino = 0;
|
||||
st_old.st_mode = 0600;
|
||||
if (mch_stat((char *)fname, &st_old) == 0 && getuid() &&
|
||||
!(st_old.st_uid == getuid()
|
||||
if (mch_stat((char *)fname, &st_old) == 0 && getuid()
|
||||
&& !(st_old.st_uid == getuid()
|
||||
? (st_old.st_mode & 0200)
|
||||
: (st_old.st_gid == getgid()
|
||||
? (st_old.st_mode & 0020)
|
||||
@@ -1713,6 +1716,10 @@ write_viminfo(file, forceit)
|
||||
goto end;
|
||||
}
|
||||
#endif
|
||||
#ifdef WIN3264
|
||||
/* Get the file attributes of the existing viminfo file. */
|
||||
perm = mch_getperm(fname);
|
||||
#endif
|
||||
|
||||
/*
|
||||
* Make tempname.
|
||||
@@ -1762,8 +1769,8 @@ write_viminfo(file, forceit)
|
||||
* link, or file name-length reached. Try again with
|
||||
* shortname set.
|
||||
*/
|
||||
if (!shortname && st_new.st_dev == st_old.st_dev &&
|
||||
st_new.st_ino == st_old.st_ino)
|
||||
if (!shortname && st_new.st_dev == st_old.st_dev
|
||||
&& st_new.st_ino == st_old.st_ino)
|
||||
{
|
||||
vim_free(tempname);
|
||||
tempname = NULL;
|
||||
@@ -1803,10 +1810,17 @@ write_viminfo(file, forceit)
|
||||
int fd;
|
||||
|
||||
/* Use mch_open() to be able to use O_NOFOLLOW and set file
|
||||
* protection same as original file, but strip s-bit. */
|
||||
* protection:
|
||||
* Unix: same as original file, but strip s-bit.
|
||||
* Others: r&w for user only. */
|
||||
#ifdef UNIX
|
||||
fd = mch_open((char *)tempname,
|
||||
O_CREAT|O_EXTRA|O_EXCL|O_WRONLY|O_NOFOLLOW,
|
||||
(int)((st_old.st_mode & 0777) | 0600));
|
||||
#else
|
||||
fd = mch_open((char *)tempname,
|
||||
O_CREAT|O_EXTRA|O_EXCL|O_WRONLY|O_NOFOLLOW, 0600);
|
||||
#endif
|
||||
if (fd < 0)
|
||||
fp_out = NULL;
|
||||
else
|
||||
@@ -1860,12 +1874,21 @@ write_viminfo(file, forceit)
|
||||
if (fp_in != NULL)
|
||||
{
|
||||
fclose(fp_in);
|
||||
|
||||
/*
|
||||
* In case of an error, don't overwrite the original viminfo file.
|
||||
* In case of an error keep the original viminfo file.
|
||||
* Otherwise rename the newly written file.
|
||||
*/
|
||||
if (viminfo_errcnt || vim_rename(tempname, fname) == -1)
|
||||
mch_remove(tempname);
|
||||
|
||||
#ifdef WIN3264
|
||||
/* If the viminfo file was hidden then also hide the new file. */
|
||||
if (perm > 0 && (perm & FILE_ATTRIBUTE_HIDDEN))
|
||||
mch_hide(fname);
|
||||
#endif
|
||||
}
|
||||
|
||||
end:
|
||||
vim_free(fname);
|
||||
vim_free(tempname);
|
||||
@@ -3414,7 +3437,7 @@ do_ecmd(fnum, ffname, sfname, eap, newlnum, flags)
|
||||
topline = curwin->w_topline;
|
||||
if (!oldbuf) /* need to read the file */
|
||||
{
|
||||
#if defined(FEAT_GUI_DIALOG) || defined(FEAT_CON_DIALOG)
|
||||
#if defined(HAS_SWAP_EXISTS_ACTION)
|
||||
swap_exists_action = SEA_DIALOG;
|
||||
#endif
|
||||
curbuf->b_flags |= BF_CHECK_RO; /* set/reset 'ro' flag */
|
||||
@@ -3429,7 +3452,7 @@ do_ecmd(fnum, ffname, sfname, eap, newlnum, flags)
|
||||
(void)open_buffer(FALSE, eap);
|
||||
#endif
|
||||
|
||||
#if defined(FEAT_GUI_DIALOG) || defined(FEAT_CON_DIALOG)
|
||||
#if defined(HAS_SWAP_EXISTS_ACTION)
|
||||
if (swap_exists_action == SEA_QUIT)
|
||||
retval = FAIL;
|
||||
handle_swap_exists(old_curbuf);
|
||||
@@ -4117,6 +4140,7 @@ do_sub(eap)
|
||||
}
|
||||
do_error = TRUE;
|
||||
do_print = FALSE;
|
||||
do_count = FALSE;
|
||||
do_ic = 0;
|
||||
}
|
||||
while (*cmd)
|
||||
|
||||
@@ -781,6 +781,8 @@ EX(CMD_stag, "stag", ex_stag,
|
||||
RANGE|NOTADR|BANG|WORD1|TRLBAR|ZEROR),
|
||||
EX(CMD_startinsert, "startinsert", ex_startinsert,
|
||||
BANG|TRLBAR|CMDWIN),
|
||||
EX(CMD_startgreplace, "startgreplace", ex_startinsert,
|
||||
BANG|TRLBAR|CMDWIN),
|
||||
EX(CMD_startreplace, "startreplace", ex_startinsert,
|
||||
BANG|TRLBAR|CMDWIN),
|
||||
EX(CMD_stopinsert, "stopinsert", ex_stopinsert,
|
||||
@@ -996,9 +998,10 @@ struct exarg
|
||||
int amount; /* number of '>' or '<' for shift command */
|
||||
int regname; /* register name (NUL if none) */
|
||||
int force_bin; /* 0, FORCE_BIN or FORCE_NOBIN */
|
||||
int force_ff; /* forced 'fileformat' (index in cmd[]) */
|
||||
int force_ff; /* ++ff= argument (index in cmd[]) */
|
||||
#ifdef FEAT_MBYTE
|
||||
int force_enc; /* forced 'encoding' (index in cmd[]) */
|
||||
int force_enc; /* ++enc= argument (index in cmd[]) */
|
||||
int bad_char; /* ++bad= argument (index in cmd[]) */
|
||||
#endif
|
||||
#ifdef FEAT_USR_CMDS
|
||||
int useridx; /* user command index */
|
||||
|
||||
@@ -520,10 +520,6 @@ dbg_parsearg(arg, gap)
|
||||
}
|
||||
else
|
||||
bp->dbg_name = p;
|
||||
#ifdef MACOS_CLASSIC
|
||||
if (bp->dbg_name != NULL)
|
||||
slash_n_colon_adjust(bp->dbg_name);
|
||||
#endif
|
||||
}
|
||||
|
||||
if (bp->dbg_name == NULL)
|
||||
@@ -2754,9 +2750,6 @@ do_source(fname, check_other, is_vimrc)
|
||||
vim_free(p);
|
||||
if (fname_exp == NULL)
|
||||
return retval;
|
||||
#ifdef MACOS_CLASSIC
|
||||
slash_n_colon_adjust(fname_exp);
|
||||
#endif
|
||||
if (mch_isdir(fname_exp))
|
||||
{
|
||||
smsg((char_u *)_("Cannot source a directory: \"%s\""), fname);
|
||||
|
||||
101
src/ex_docmd.c
101
src/ex_docmd.c
@@ -205,7 +205,7 @@ static void ex_tearoff __ARGS((exarg_T *eap));
|
||||
#else
|
||||
# define ex_tearoff ex_ni
|
||||
#endif
|
||||
#if (defined(FEAT_GUI_MSWIN) || defined(FEAT_GUI_KDE) || defined(FEAT_GUI_GTK)) && defined(FEAT_MENU)
|
||||
#if (defined(FEAT_GUI_MSWIN) || defined(FEAT_GUI_GTK)) && defined(FEAT_MENU)
|
||||
static void ex_popup __ARGS((exarg_T *eap));
|
||||
#else
|
||||
# define ex_popup ex_ni
|
||||
@@ -213,11 +213,11 @@ static void ex_popup __ARGS((exarg_T *eap));
|
||||
#ifndef FEAT_GUI_MSWIN
|
||||
# define ex_simalt ex_ni
|
||||
#endif
|
||||
#if !defined(FEAT_GUI_MSWIN) && !defined(FEAT_GUI_GTK) && !defined(FEAT_GUI_MOTIF) && !defined(FEAT_GUI_KDE)
|
||||
#if !defined(FEAT_GUI_MSWIN) && !defined(FEAT_GUI_GTK) && !defined(FEAT_GUI_MOTIF)
|
||||
# define gui_mch_find_dialog ex_ni
|
||||
# define gui_mch_replace_dialog ex_ni
|
||||
#endif
|
||||
#if !defined(FEAT_GUI_GTK) && !defined(FEAT_GUI_KDE)
|
||||
#if !defined(FEAT_GUI_GTK)
|
||||
# define ex_helpfind ex_ni
|
||||
#endif
|
||||
#ifndef FEAT_CSCOPE
|
||||
@@ -1806,6 +1806,20 @@ do_one_cmd(cmdlinep, sourcing,
|
||||
#endif
|
||||
continue;
|
||||
|
||||
case 'n': if (!checkforcmd(&ea.cmd, "noautocmd", 3))
|
||||
break;
|
||||
#ifdef FEAT_AUTOCMD
|
||||
if (cmdmod.save_ei == NULL)
|
||||
{
|
||||
/* Set 'eventignore' to "all". Don't free the
|
||||
* existing option value, we restore it later. */
|
||||
cmdmod.save_ei = vim_strsave(p_ei);
|
||||
set_string_option_direct((char_u *)"ei", -1,
|
||||
(char_u *)"all", OPT_FREE);
|
||||
}
|
||||
#endif
|
||||
continue;
|
||||
|
||||
case 'r': if (!checkforcmd(&ea.cmd, "rightbelow", 6))
|
||||
break;
|
||||
#ifdef FEAT_WINDOWS
|
||||
@@ -2595,6 +2609,14 @@ doend:
|
||||
|
||||
if (verbose_save >= 0)
|
||||
p_verbose = verbose_save;
|
||||
#ifdef FEAT_AUTOCMD
|
||||
if (cmdmod.save_ei != NULL)
|
||||
{
|
||||
/* Restore 'eventignore' to the value before ":noautocmd". */
|
||||
set_string_option_direct((char_u *)"ei", -1, cmdmod.save_ei, OPT_FREE);
|
||||
free_string_option(cmdmod.save_ei);
|
||||
}
|
||||
#endif
|
||||
|
||||
cmdmod = save_cmdmod;
|
||||
|
||||
@@ -4244,12 +4266,6 @@ expand_filename(eap, cmdlinep, errormsgp)
|
||||
if (!has_wildcards)
|
||||
#endif
|
||||
backslash_halve(eap->arg);
|
||||
#ifdef MACOS_CLASSIC
|
||||
/*
|
||||
* translate unix-like path components
|
||||
*/
|
||||
slash_n_colon_adjust(eap->arg);
|
||||
#endif
|
||||
}
|
||||
|
||||
if (has_wildcards)
|
||||
@@ -4533,6 +4549,11 @@ getargopt(eap)
|
||||
arg += 8;
|
||||
pp = &eap->force_enc;
|
||||
}
|
||||
else if (STRNCMP(arg, "bad", 3) == 0)
|
||||
{
|
||||
arg += 3;
|
||||
pp = &eap->bad_char;
|
||||
}
|
||||
#endif
|
||||
|
||||
if (pp == NULL || *arg != '=')
|
||||
@@ -4552,12 +4573,26 @@ getargopt(eap)
|
||||
return FAIL;
|
||||
#ifdef FEAT_MBYTE
|
||||
}
|
||||
else
|
||||
else if (pp == &eap->force_enc)
|
||||
{
|
||||
/* Make 'fileencoding' lower case. */
|
||||
for (p = eap->cmd + eap->force_enc; *p != NUL; ++p)
|
||||
*p = TOLOWER_ASC(*p);
|
||||
}
|
||||
else
|
||||
{
|
||||
/* Check ++bad= argument. Must be a single-byte character, "keep" or
|
||||
* "drop". */
|
||||
p = eap->cmd + eap->bad_char;
|
||||
if (STRICMP(p, "keep") == 0)
|
||||
eap->bad_char = BAD_KEEP;
|
||||
else if (STRICMP(p, "drop") == 0)
|
||||
eap->bad_char = BAD_DROP;
|
||||
else if (MB_BYTE2LEN(*p) == 1 && p[1] == NUL)
|
||||
eap->bad_char = *p;
|
||||
else
|
||||
return FAIL;
|
||||
}
|
||||
#endif
|
||||
|
||||
return OK;
|
||||
@@ -7088,7 +7123,7 @@ ex_tearoff(eap)
|
||||
}
|
||||
#endif
|
||||
|
||||
#if (defined(FEAT_GUI_MSWIN) || defined(FEAT_GUI_KDE) || defined(FEAT_GUI_GTK)) && defined(FEAT_MENU)
|
||||
#if (defined(FEAT_GUI_MSWIN) || defined(FEAT_GUI_GTK)) && defined(FEAT_MENU)
|
||||
static void
|
||||
ex_popup(eap)
|
||||
exarg_T *eap;
|
||||
@@ -7254,11 +7289,12 @@ ex_read(eap)
|
||||
lnum = curbuf->b_ml.ml_line_count;
|
||||
else
|
||||
lnum = 1;
|
||||
if (*ml_get(lnum) == NUL)
|
||||
if (*ml_get(lnum) == NUL && u_savedel(lnum, 1L) == OK)
|
||||
{
|
||||
ml_delete(lnum, FALSE);
|
||||
deleted_lines_mark(lnum, 1L);
|
||||
if (curwin->w_cursor.lnum >= lnum)
|
||||
if (curwin->w_cursor.lnum > 1
|
||||
&& curwin->w_cursor.lnum >= lnum)
|
||||
--curwin->w_cursor.lnum;
|
||||
}
|
||||
}
|
||||
@@ -8126,6 +8162,12 @@ ex_mkrc(eap)
|
||||
(void)put_line(fd, "version 6.0");
|
||||
|
||||
#ifdef FEAT_SESSION
|
||||
if (eap->cmdidx == CMD_mksession)
|
||||
{
|
||||
if (put_line(fd, "let SessionLoad = 1") == FAIL)
|
||||
failed = TRUE;
|
||||
}
|
||||
|
||||
if (eap->cmdidx != CMD_mkview)
|
||||
#endif
|
||||
{
|
||||
@@ -8190,8 +8232,15 @@ ex_mkrc(eap)
|
||||
if (put_line(fd, "let &so = s:so_save | let &siso = s:siso_save")
|
||||
== FAIL)
|
||||
failed = TRUE;
|
||||
if (put_line(fd, "doautoall SessionLoadPost") == FAIL)
|
||||
failed = TRUE;
|
||||
if (put_line(fd, "unlet SessionLoad") == FAIL)
|
||||
failed = TRUE;
|
||||
}
|
||||
#endif
|
||||
if (put_line(fd, "\" vim: set ft=vim :") == FAIL)
|
||||
failed = TRUE;
|
||||
|
||||
failed |= fclose(fd);
|
||||
|
||||
if (failed)
|
||||
@@ -8454,7 +8503,7 @@ ex_normal(eap)
|
||||
}
|
||||
|
||||
/*
|
||||
* ":startinsert" and ":startreplace"
|
||||
* ":startinsert", ":startreplace" and ":startgreplace"
|
||||
*/
|
||||
static void
|
||||
ex_startinsert(eap)
|
||||
@@ -8472,19 +8521,17 @@ ex_startinsert(eap)
|
||||
if (State & INSERT)
|
||||
return;
|
||||
|
||||
if (eap->forceit)
|
||||
{
|
||||
if (eap->cmdidx == CMD_startinsert)
|
||||
restart_edit = 'a';
|
||||
else
|
||||
restart_edit = 'R';
|
||||
}
|
||||
if (eap->cmdidx == CMD_startinsert)
|
||||
restart_edit = 'a';
|
||||
else if (eap->cmdidx == CMD_startreplace)
|
||||
restart_edit = 'R';
|
||||
else
|
||||
restart_edit = 'V';
|
||||
|
||||
if (!eap->forceit)
|
||||
{
|
||||
if (eap->cmdidx == CMD_startinsert)
|
||||
restart_edit = 'i';
|
||||
else
|
||||
restart_edit = 'R';
|
||||
curwin->w_curswant = 0; /* avoid MAXCOL */
|
||||
}
|
||||
}
|
||||
@@ -9907,17 +9954,13 @@ get_view_file(c)
|
||||
else if (vim_ispathsep(*p))
|
||||
{
|
||||
*s++ = '=';
|
||||
#ifdef MACOS_CLASSIC /* TODO: Is it also needed for MACOS_X? (Dany) */
|
||||
*s++ = '+';
|
||||
#else
|
||||
# if defined(BACKSLASH_IN_FILENAME) || defined(AMIGA) || defined(RISCOS) \
|
||||
#if defined(BACKSLASH_IN_FILENAME) || defined(AMIGA) || defined(RISCOS) \
|
||||
|| defined(VMS)
|
||||
if (*p == ':')
|
||||
*s++ = '-';
|
||||
else
|
||||
# endif
|
||||
*s++ = '+';
|
||||
#endif
|
||||
*s++ = '+';
|
||||
}
|
||||
else
|
||||
*s++ = *p;
|
||||
|
||||
@@ -301,6 +301,10 @@ getcmdline(firstc, count, indent)
|
||||
ui_cursor_shape(); /* may show different cursor shape */
|
||||
#endif
|
||||
|
||||
/* When inside an autocommand for writing "exiting" may be set and
|
||||
* terminal mode set to cooked. Need to set raw mode here then. */
|
||||
settmode(TMODE_RAW);
|
||||
|
||||
#ifdef FEAT_CMDHIST
|
||||
init_history();
|
||||
hiscnt = hislen; /* set hiscnt to impossible history value */
|
||||
@@ -1050,7 +1054,7 @@ getcmdline(firstc, count, indent)
|
||||
|
||||
case ESC: /* get here if p_wc != ESC or when ESC typed twice */
|
||||
case Ctrl_C:
|
||||
/* In exmode it doesn't make sense to return. Except when
|
||||
/* In exmode it doesn't make sense to return. Except when
|
||||
* ":normal" runs out of characters. */
|
||||
if (exmode_active
|
||||
#ifdef FEAT_EX_EXTRA
|
||||
@@ -1100,6 +1104,17 @@ getcmdline(firstc, count, indent)
|
||||
if (c != ESC) /* use ESC to cancel inserting register */
|
||||
{
|
||||
cmdline_paste(c, i == Ctrl_R);
|
||||
|
||||
#ifdef FEAT_EVAL
|
||||
/* When there was a serious error abort getting the
|
||||
* command line. */
|
||||
if (aborting())
|
||||
{
|
||||
gotesc = TRUE; /* will free ccline.cmdbuff after
|
||||
putting it in history */
|
||||
goto returncmd; /* back to cmd mode */
|
||||
}
|
||||
#endif
|
||||
KeyTyped = FALSE; /* Don't do p_wc completion. */
|
||||
#ifdef FEAT_EVAL
|
||||
if (new_cmdpos >= 0)
|
||||
@@ -2202,8 +2217,7 @@ cmdline_at_end()
|
||||
}
|
||||
#endif
|
||||
|
||||
#if (defined(FEAT_XIM) && (defined(FEAT_GUI_GTK) || defined(FEAT_GUI_KDE))) \
|
||||
|| defined(PROTO)
|
||||
#if (defined(FEAT_XIM) && (defined(FEAT_GUI_GTK))) || defined(PROTO)
|
||||
/*
|
||||
* Return the virtual column number at the current cursor position.
|
||||
* This is used by the IM code to obtain the start of the preedit string.
|
||||
|
||||
@@ -660,8 +660,7 @@
|
||||
* +xfontset X fontset support. For outputting wide characters.
|
||||
*/
|
||||
#ifndef FEAT_XFONTSET
|
||||
# if defined(FEAT_MBYTE) && defined(HAVE_X11) \
|
||||
&& !defined(HAVE_GTK2) && !defined(FEAT_GUI_KDE)
|
||||
# if defined(FEAT_MBYTE) && defined(HAVE_X11) && !defined(HAVE_GTK2)
|
||||
# define FEAT_XFONTSET
|
||||
# else
|
||||
/* # define FEAT_XFONTSET */
|
||||
@@ -708,8 +707,7 @@
|
||||
* always has it). But only if menus are enabled.
|
||||
*/
|
||||
#if defined(FEAT_NORMAL) && defined(FEAT_MENU) \
|
||||
&& (defined(FEAT_GUI_KDE) \
|
||||
|| defined(FEAT_GUI_GTK) \
|
||||
&& (defined(FEAT_GUI_GTK) \
|
||||
|| defined(FEAT_GUI_MSWIN) \
|
||||
|| ((defined(FEAT_GUI_MOTIF) || defined(FEAT_GUI_ATHENA)) \
|
||||
&& defined(HAVE_XPM)) \
|
||||
@@ -725,7 +723,7 @@
|
||||
/*
|
||||
* +browse ":browse" command.
|
||||
*/
|
||||
#if defined(FEAT_NORMAL) && (defined(FEAT_GUI_MSWIN) || defined(FEAT_GUI_KDE) || defined(FEAT_GUI_MOTIF) || defined(FEAT_GUI_ATHENA) || defined(FEAT_GUI_GTK) || defined(FEAT_GUI_PHOTON) || defined(FEAT_GUI_MAC))
|
||||
#if defined(FEAT_NORMAL) && (defined(FEAT_GUI_MSWIN) || defined(FEAT_GUI_MOTIF) || defined(FEAT_GUI_ATHENA) || defined(FEAT_GUI_GTK) || defined(FEAT_GUI_PHOTON) || defined(FEAT_GUI_MAC))
|
||||
# define FEAT_BROWSE
|
||||
#endif
|
||||
|
||||
@@ -740,8 +738,7 @@
|
||||
|| defined(FEAT_GUI_GTK) \
|
||||
|| defined(FEAT_GUI_PHOTON) \
|
||||
|| defined(FEAT_GUI_MSWIN) \
|
||||
|| defined(FEAT_GUI_MAC) \
|
||||
|| defined(FEAT_GUI_KDE)
|
||||
|| defined(FEAT_GUI_MAC)
|
||||
# define FEAT_CON_DIALOG
|
||||
# define FEAT_GUI_DIALOG
|
||||
# else
|
||||
@@ -749,13 +746,13 @@
|
||||
# endif
|
||||
#endif
|
||||
#if !defined(FEAT_GUI_DIALOG) && (defined(FEAT_GUI_MOTIF) \
|
||||
|| defined(FEAT_GUI_ATHENA) || defined(FEAT_GUI_GTK) || defined(FEAT_GUI_KDE))
|
||||
|| defined(FEAT_GUI_ATHENA) || defined(FEAT_GUI_GTK))
|
||||
/* need a dialog to show error messages when starting from the desktop */
|
||||
# define FEAT_GUI_DIALOG
|
||||
#endif
|
||||
#if defined(FEAT_GUI_DIALOG) && \
|
||||
(defined(FEAT_GUI_MOTIF) || defined(FEAT_GUI_ATHENA) \
|
||||
|| defined(FEAT_GUI_GTK) || defined(FEAT_GUI_KDE)|| defined(FEAT_GUI_MSWIN) \
|
||||
|| defined(FEAT_GUI_GTK) || defined(FEAT_GUI_MSWIN) \
|
||||
|| defined(FEAT_GUI_PHOTON) || defined(FEAT_GUI_MAC))
|
||||
# define FEAT_GUI_TEXTDIALOG
|
||||
#endif
|
||||
@@ -975,7 +972,7 @@
|
||||
* +mouse Any mouse support (any of the above enabled).
|
||||
*/
|
||||
/* OS/2 and Amiga console have no mouse support */
|
||||
#if (!defined(AMIGA) && !defined(OS2) && !defined(MACOS))
|
||||
#if !defined(AMIGA) && !defined(OS2)
|
||||
# ifdef FEAT_NORMAL
|
||||
# define FEAT_MOUSE_XTERM
|
||||
# endif
|
||||
@@ -1043,7 +1040,7 @@
|
||||
#endif
|
||||
|
||||
#if defined(FEAT_GUI_GTK) || defined(FEAT_GUI_MOTIF) \
|
||||
|| defined(MSWIN_FIND_REPLACE) || defined(FEAT_GUI_KDE)
|
||||
|| defined(MSWIN_FIND_REPLACE)
|
||||
# define FIND_REPLACE_DIALOG 1
|
||||
#endif
|
||||
|
||||
@@ -1074,7 +1071,7 @@
|
||||
# define MCH_CURSOR_SHAPE
|
||||
# endif
|
||||
# if defined(FEAT_GUI_W32) || defined(FEAT_GUI_W16) || defined(FEAT_GUI_MOTIF) \
|
||||
|| defined(FEAT_GUI_ATHENA) || defined(FEAT_GUI_GTK) || defined(FEAT_GUI_KDE)\
|
||||
|| defined(FEAT_GUI_ATHENA) || defined(FEAT_GUI_GTK) \
|
||||
|| defined(FEAT_GUI_PHOTON)
|
||||
# define FEAT_MOUSESHAPE
|
||||
# endif
|
||||
@@ -1089,7 +1086,7 @@
|
||||
|
||||
#if defined(FEAT_MZSCHEME) && (defined(FEAT_GUI_W32) || defined(FEAT_GUI_GTK) \
|
||||
|| defined(FEAT_GUI_MOTIF) || defined(FEAT_GUI_ATHENA) \
|
||||
|| defined(FEAT_GUI_MAC) || defined(FEAT_GUI_KDE))
|
||||
|| defined(FEAT_GUI_MAC))
|
||||
# define MZSCHEME_GUI_THREADS
|
||||
#endif
|
||||
|
||||
@@ -1172,7 +1169,7 @@
|
||||
|| defined(FEAT_NETBEANS_INTG) || defined(FEAT_EVAL))
|
||||
# define FEAT_BEVAL
|
||||
# if !defined(FEAT_XFONTSET) && !defined(FEAT_GUI_GTK) \
|
||||
&& !defined(FEAT_GUI_KDE) && !defined(FEAT_GUI_W32)
|
||||
&& !defined(FEAT_GUI_W32)
|
||||
# define FEAT_XFONTSET
|
||||
# endif
|
||||
#endif
|
||||
|
||||
687
src/fileio.c
687
src/fileio.c
File diff suppressed because it is too large
Load Diff
@@ -745,11 +745,6 @@ EXTERN int* (*iconv_errno) (void);
|
||||
#endif /* FEAT_MBYTE */
|
||||
|
||||
#ifdef FEAT_XIM
|
||||
# ifdef FEAT_GUI_KDE
|
||||
EXTERN colnr_T preedit_start_col INIT(= MAXCOL);
|
||||
EXTERN colnr_T preedit_end_col INIT(= MAXCOL);
|
||||
EXTERN char *draw_feedback INIT(= NULL);
|
||||
# endif
|
||||
# ifdef FEAT_GUI_GTK
|
||||
# ifdef HAVE_GTK2
|
||||
EXTERN GtkIMContext *xic INIT(= NULL);
|
||||
@@ -846,9 +841,14 @@ EXTERN int msg_silent INIT(= 0); /* don't print messages */
|
||||
EXTERN int emsg_silent INIT(= 0); /* don't print error messages */
|
||||
EXTERN int cmd_silent INIT(= FALSE); /* don't echo the command line */
|
||||
|
||||
#if defined(FEAT_GUI_DIALOG) || defined(FEAT_CON_DIALOG)
|
||||
EXTERN int swap_exists_action INIT(= 0); /* use dialog when swap file
|
||||
already exists */
|
||||
#if defined(FEAT_GUI_DIALOG) || defined(FEAT_CON_DIALOG) \
|
||||
|| defined(FEAT_AUTOCMD)
|
||||
# define HAS_SWAP_EXISTS_ACTION
|
||||
EXTERN int swap_exists_action INIT(= SEA_NONE);
|
||||
/* For dialog when swap file already
|
||||
* exists. */
|
||||
EXTERN int swap_exists_did_quit INIT(= FALSE);
|
||||
/* Selected "quit" at the dialog. */
|
||||
#endif
|
||||
|
||||
EXTERN char_u *IObuff; /* sprintf's are done in this buffer,
|
||||
@@ -1164,10 +1164,6 @@ EXTERN guint32 gtk_socket_id INIT(= 0);
|
||||
EXTERN int echo_wid_arg INIT(= FALSE); /* --echo-wid argument */
|
||||
#endif
|
||||
|
||||
#ifdef FEAT_GUI_KDE
|
||||
EXTERN int echo_wid_arg INIT(= FALSE);
|
||||
# endif
|
||||
|
||||
#ifdef FEAT_CLIENTSERVER
|
||||
EXTERN char_u *serverName INIT(= NULL); /* name of the server */
|
||||
EXTERN int received_from_client INIT(= FALSE); /* received text from
|
||||
|
||||
37
src/gui.c
37
src/gui.c
@@ -99,7 +99,7 @@ gui_start()
|
||||
|
||||
vim_free(old_term);
|
||||
|
||||
#if defined(FEAT_GUI_GTK) || defined(FEAT_GUI_X11) || defined(FEAT_GUI_KDE)
|
||||
#if defined(FEAT_GUI_GTK) || defined(FEAT_GUI_X11)
|
||||
if (gui.in_use)
|
||||
/* Display error messages in a dialog now. */
|
||||
display_errors();
|
||||
@@ -540,7 +540,7 @@ gui_init()
|
||||
/* Our GUI can't do bidi. */
|
||||
p_tbidi = FALSE;
|
||||
#endif
|
||||
#if defined(FEAT_GUI_GTK) || defined(FEAT_GUI_KDE)
|
||||
#if defined(FEAT_GUI_GTK)
|
||||
/* Give GTK+ a chance to put all widget's into place. */
|
||||
gui_mch_update();
|
||||
/* Now make sure the shell fits on the screen. */
|
||||
@@ -616,7 +616,7 @@ gui_exit(rc)
|
||||
gui_mch_exit(rc);
|
||||
}
|
||||
|
||||
#if defined(FEAT_GUI_KDE) || defined(FEAT_GUI_GTK) || defined(FEAT_GUI_X11) || defined(FEAT_GUI_MSWIN) \
|
||||
#if defined(FEAT_GUI_GTK) || defined(FEAT_GUI_X11) || defined(FEAT_GUI_MSWIN) \
|
||||
|| defined(FEAT_GUI_PHOTON) || defined(FEAT_GUI_MAC) || defined(PROTO)
|
||||
/*
|
||||
* Called when the GUI shell is closed by the user. If there are no changed
|
||||
@@ -1100,7 +1100,7 @@ gui_update_cursor(force, clear_selection)
|
||||
void
|
||||
gui_position_menu()
|
||||
{
|
||||
# if !defined(FEAT_GUI_KDE) && !defined(FEAT_GUI_GTK) && !defined(FEAT_GUI_MOTIF)
|
||||
# if !defined(FEAT_GUI_GTK) && !defined(FEAT_GUI_MOTIF)
|
||||
if (gui.menu_is_active && gui.in_use)
|
||||
gui_mch_set_menu_pos(0, 0, gui.menu_width, gui.menu_height);
|
||||
# endif
|
||||
@@ -1212,7 +1212,6 @@ gui_get_base_height()
|
||||
if (gui.menu_is_active)
|
||||
base_height += gui.menu_height;
|
||||
# endif
|
||||
#ifndef FEAT_GUI_KDE
|
||||
# ifdef FEAT_TOOLBAR
|
||||
if (vim_strchr(p_go, GO_TOOLBAR) != NULL)
|
||||
# if defined(FEAT_GUI_MSWIN) && defined(FEAT_TOOLBAR)
|
||||
@@ -1221,7 +1220,6 @@ gui_get_base_height()
|
||||
base_height += gui.toolbar_height;
|
||||
# endif
|
||||
# endif
|
||||
#endif
|
||||
# ifdef FEAT_FOOTER
|
||||
if (vim_strchr(p_go, GO_FOOTER) != NULL)
|
||||
base_height += gui.footer_height;
|
||||
@@ -1724,7 +1722,7 @@ gui_write(s, len)
|
||||
* We need to make sure this is cleared since Athena doesn't tell us when
|
||||
* he is done dragging. Do the same for GTK.
|
||||
*/
|
||||
#if defined(FEAT_GUI_ATHENA) || defined(FEAT_GUI_GTK) || defined(FEAT_GUI_KDE)
|
||||
#if defined(FEAT_GUI_ATHENA) || defined(FEAT_GUI_GTK)
|
||||
gui.dragged_sb = SBAR_NONE;
|
||||
#endif
|
||||
|
||||
@@ -1956,7 +1954,7 @@ gui_outstr_nowrap(s, len, flags, fg, bg, back)
|
||||
guicolor_T fg_color;
|
||||
guicolor_T bg_color;
|
||||
guicolor_T sp_color;
|
||||
#if !defined(MSWIN16_FASTTEXT) && !defined(HAVE_GTK2) && !defined(FEAT_GUI_KDE)
|
||||
#if !defined(MSWIN16_FASTTEXT) && !defined(HAVE_GTK2)
|
||||
GuiFont font = NOFONT;
|
||||
# ifdef FEAT_XFONTSET
|
||||
GuiFontset fontset = NOFONTSET;
|
||||
@@ -2010,7 +2008,7 @@ gui_outstr_nowrap(s, len, flags, fg, bg, back)
|
||||
highlight_mask = gui.highlight_mask;
|
||||
hl_mask_todo = highlight_mask;
|
||||
|
||||
#if !defined(MSWIN16_FASTTEXT) && !defined(HAVE_GTK2) && !defined(FEAT_GUI_KDE)
|
||||
#if !defined(MSWIN16_FASTTEXT) && !defined(HAVE_GTK2)
|
||||
/* Set the font */
|
||||
if (aep != NULL && aep->ae_u.gui.font != NOFONT)
|
||||
font = aep->ae_u.gui.font;
|
||||
@@ -2124,7 +2122,7 @@ gui_outstr_nowrap(s, len, flags, fg, bg, back)
|
||||
if (back != 0 && ((draw_flags & DRAW_BOLD) || (highlight_mask & HL_ITALIC)))
|
||||
return FAIL;
|
||||
|
||||
#if defined(RISCOS) || defined(HAVE_GTK2) || defined(FEAT_GUI_KDE)
|
||||
#if defined(RISCOS) || defined(HAVE_GTK2)
|
||||
/* If there's no italic font, then fake it.
|
||||
* For GTK2, we don't need a different font for italic style. */
|
||||
if (hl_mask_todo & HL_ITALIC)
|
||||
@@ -2197,7 +2195,7 @@ gui_outstr_nowrap(s, len, flags, fg, bg, back)
|
||||
/* print the string so far if it's the last character or there is
|
||||
* a composing character. */
|
||||
if (i + cl >= len || (comping && i > start) || dowide
|
||||
# if defined(FEAT_GUI_X11) || defined(FEAT_GUI_GTK) || defined(FEAT_GUI_KDE)
|
||||
# if defined(FEAT_GUI_X11) || defined(FEAT_GUI_GTK)
|
||||
|| (cn > 1
|
||||
# ifdef FEAT_XFONTSET
|
||||
/* No fontset: At least draw char after wide char at
|
||||
@@ -2222,18 +2220,14 @@ gui_outstr_nowrap(s, len, flags, fg, bg, back)
|
||||
cells = 0;
|
||||
if (dowide)
|
||||
{
|
||||
#ifndef FEAT_GUI_KDE
|
||||
gui_mch_set_font(gui.wide_font);
|
||||
#endif
|
||||
gui_mch_draw_string(gui.row, scol - cn,
|
||||
s + start, cl, draw_flags);
|
||||
#ifndef FEAT_GUI_KDE
|
||||
gui_mch_set_font(font);
|
||||
#endif
|
||||
start += cl;
|
||||
}
|
||||
|
||||
# if defined(FEAT_GUI_X11) || defined(FEAT_GUI_GTK) || defined(FEAT_GUI_KDE)
|
||||
# if defined(FEAT_GUI_X11) || defined(FEAT_GUI_GTK)
|
||||
/* No fontset: draw a space to fill the gap after a wide char
|
||||
* */
|
||||
if (cn > 1 && (draw_flags & DRAW_TRANSP) == 0
|
||||
@@ -2659,8 +2653,7 @@ gui_wait_for_chars(wtime)
|
||||
if (gui_mch_wait_for_chars(p_ut) == OK)
|
||||
retval = OK;
|
||||
#ifdef FEAT_AUTOCMD
|
||||
else if (!did_cursorhold && has_cursorhold()
|
||||
&& get_real_state() == NORMAL_BUSY)
|
||||
else if (trigger_cursorhold())
|
||||
{
|
||||
char_u buf[3];
|
||||
|
||||
@@ -4116,7 +4109,7 @@ gui_get_color(name)
|
||||
t = gui_mch_get_color(name);
|
||||
|
||||
if (t == INVALCOLOR
|
||||
#if defined(FEAT_GUI_X11) || defined(FEAT_GUI_GTK) || defined(FEAT_GUI_KDE)
|
||||
#if defined(FEAT_GUI_X11) || defined(FEAT_GUI_GTK)
|
||||
&& gui.in_use
|
||||
#endif
|
||||
)
|
||||
@@ -4359,7 +4352,7 @@ ex_gui(eap)
|
||||
}
|
||||
|
||||
#if ((defined(FEAT_GUI_X11) || defined(FEAT_GUI_GTK) || defined(FEAT_GUI_W32) \
|
||||
|| defined(FEAT_GUI_PHOTON) || defined(FEAT_GUI_KDE)) && defined(FEAT_TOOLBAR)) || defined(PROTO)
|
||||
|| defined(FEAT_GUI_PHOTON)) && defined(FEAT_TOOLBAR)) || defined(PROTO)
|
||||
/*
|
||||
* This is shared between Athena, Motif and GTK.
|
||||
*/
|
||||
@@ -4423,7 +4416,7 @@ gui_find_iconfile(name, buffer, ext)
|
||||
# endif
|
||||
#endif
|
||||
|
||||
#if defined(FEAT_GUI_GTK) || defined(FEAT_GUI_KDE) || defined(FEAT_GUI_X11) || defined(PROTO)
|
||||
#if defined(FEAT_GUI_GTK) || defined(FEAT_GUI_X11) || defined(PROTO)
|
||||
void
|
||||
display_errors()
|
||||
{
|
||||
@@ -4645,7 +4638,7 @@ gui_do_findrepl(flags, find_text, repl_text, down)
|
||||
u_sync();
|
||||
|
||||
del_bytes((long)(regmatch.endp[0] - regmatch.startp[0]),
|
||||
FALSE);
|
||||
FALSE, FALSE);
|
||||
ins_str(repl_text);
|
||||
}
|
||||
}
|
||||
|
||||
41
src/gui.h
41
src/gui.h
@@ -22,23 +22,6 @@
|
||||
# include "gui_beval.h"
|
||||
#endif
|
||||
|
||||
#ifdef FEAT_GUI_KDE
|
||||
# include <X11/Intrinsic.h>
|
||||
|
||||
/* used only as pointer to, so casting to int is ok */
|
||||
# ifdef __cplusplus
|
||||
class QScrollBar;
|
||||
class QPopupMenu;
|
||||
class QFont;
|
||||
class VimWidget;
|
||||
# else
|
||||
# define QScrollBar int
|
||||
# define QPopupMenu int
|
||||
# define QFont int
|
||||
# define VimWidget int
|
||||
# endif
|
||||
#endif
|
||||
|
||||
#ifdef FEAT_GUI_GTK
|
||||
# include <X11/Intrinsic.h>
|
||||
# include <gtk/gtk.h>
|
||||
@@ -90,7 +73,7 @@ class VimWidget;
|
||||
* GUIs that support dropping files on a running Vim.
|
||||
*/
|
||||
#if defined(FEAT_GUI_MSWIN) || defined(FEAT_GUI_MAC) \
|
||||
|| defined(FEAT_GUI_GTK) || defined(FEAT_GUI_KDE)
|
||||
|| defined(FEAT_GUI_GTK)
|
||||
# define HAVE_DROP_FILE
|
||||
#endif
|
||||
|
||||
@@ -158,7 +141,7 @@ class VimWidget;
|
||||
#define DRAW_BOLD 0x02 /* draw bold text */
|
||||
#define DRAW_UNDERL 0x04 /* draw underline text */
|
||||
#define DRAW_UNDERC 0x08 /* draw undercurl text */
|
||||
#if defined(RISCOS) || defined(HAVE_GTK2) || defined (FEAT_GUI_KDE)
|
||||
#if defined(RISCOS) || defined(HAVE_GTK2)
|
||||
# define DRAW_ITALIC 0x10 /* draw italic text */
|
||||
#endif
|
||||
#define DRAW_CURSOR 0x20 /* drawing block cursor (win32) */
|
||||
@@ -177,7 +160,7 @@ class VimWidget;
|
||||
#endif
|
||||
#define TOOLBAR_BORDER_HEIGHT 12 /* room above+below buttons for MSWindows */
|
||||
|
||||
#if defined(NO_CONSOLE) || defined(FEAT_GUI_GTK) || defined(FEAT_GUI_KDE) || defined(FEAT_GUI_X11)
|
||||
#if defined(NO_CONSOLE) || defined(FEAT_GUI_GTK) || defined(FEAT_GUI_X11)
|
||||
# define NO_CONSOLE_INPUT /* use no_console_input() to check if there
|
||||
is no console input possible */
|
||||
#endif
|
||||
@@ -201,9 +184,6 @@ typedef struct GuiScrollbar
|
||||
int width; /* Current width of scroll bar in cols */
|
||||
#endif
|
||||
int status_height; /* Height of status line */
|
||||
#ifdef FEAT_GUI_KDE
|
||||
QScrollBar *w;
|
||||
#endif
|
||||
#ifdef FEAT_GUI_X11
|
||||
Widget id; /* Id of real scroll bar */
|
||||
#endif
|
||||
@@ -237,12 +217,6 @@ typedef long guicolor_T; /* handle for a GUI color; for X11 this should
|
||||
displays there is a tiny chance this is an
|
||||
actual color */
|
||||
|
||||
#ifdef FEAT_GUI_KDE
|
||||
typedef QFont *GuiFont;
|
||||
typedef QFont *GuiFontset;
|
||||
# define NOFONT (GuiFont)NULL
|
||||
# define NOFONTSET (GuiFontset)NULL
|
||||
#endif
|
||||
#ifdef FEAT_GUI_GTK
|
||||
# ifdef HAVE_GTK2
|
||||
typedef PangoFontDescription *GuiFont; /* handle for a GUI font */
|
||||
@@ -266,12 +240,10 @@ typedef long guicolor_T; /* handle for a GUI color; for X11 this should
|
||||
# define NOFONT (GuiFont)0
|
||||
# define NOFONTSET (GuiFontset)0
|
||||
# else
|
||||
# if !defined(FEAT_GUI_KDE)
|
||||
typedef long_u GuiFont; /* handle for a GUI font */
|
||||
typedef long_u GuiFontset; /* handle for a GUI fontset */
|
||||
# define NOFONT (GuiFont)0
|
||||
# define NOFONTSET (GuiFontset)0
|
||||
# endif
|
||||
# endif
|
||||
# endif
|
||||
#endif
|
||||
@@ -390,13 +362,6 @@ typedef struct Gui
|
||||
Bool color_approx; /* Some color was approximated */
|
||||
#endif
|
||||
|
||||
#ifdef FEAT_GUI_KDE
|
||||
VimWidget *w; /* Vim widget */
|
||||
Display *dpy; /* X display */
|
||||
QFont *current_font;
|
||||
char_u *fontname; /* font name from font selection dialog */
|
||||
#endif
|
||||
|
||||
#ifdef FEAT_GUI_GTK
|
||||
int visibility; /* Is shell partially/fully obscured? */
|
||||
GdkCursor *blank_pointer; /* Blank pointer */
|
||||
|
||||
670
src/gui_kde.cc
670
src/gui_kde.cc
@@ -1,670 +0,0 @@
|
||||
/* vi:set ts=8 sts=4 sw=4:
|
||||
*
|
||||
* 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.
|
||||
*/
|
||||
|
||||
/*
|
||||
* Porting to KDE(2) was done by
|
||||
*
|
||||
* (C) 2000 by Thomas Capricelli <orzel@freehackers.org>
|
||||
*
|
||||
* Please visit http://freehackers.org/kvim for other vim- or
|
||||
* kde-related coding. (URL currently doesn't work...)
|
||||
*
|
||||
* $Id$
|
||||
*
|
||||
*/
|
||||
#include <assert.h>
|
||||
#include <errno.h>
|
||||
#include <string.h>
|
||||
#include <kmenubar.h>
|
||||
#include <kfiledialog.h>
|
||||
#include <kiconloader.h>
|
||||
|
||||
#include <qscrollbar.h>
|
||||
#include <qcursor.h>
|
||||
#include <qmessagebox.h>
|
||||
#include <qiconset.h>
|
||||
#include <qtextcodec.h>
|
||||
#include "gui_kde_wid.h"
|
||||
|
||||
extern "C" {
|
||||
#include "vim.h"
|
||||
}
|
||||
|
||||
#undef dbf
|
||||
#undef db
|
||||
#undef mputs
|
||||
|
||||
#if 1
|
||||
#define dbf(format, args...) { printf("%s" " : " format "\n" , __FUNCTION__ , ## args ); fflush(stdout); }
|
||||
#define db() { printf("%s\n", __FUNCTION__ );fflush(stdout); }
|
||||
#else
|
||||
#define dbf(format, args... )
|
||||
#define db()
|
||||
#endif
|
||||
|
||||
|
||||
#ifdef FEAT_TOOLBAR
|
||||
#ifndef FEAT_KDETOOLBAR
|
||||
/*
|
||||
* Icons used by the toolbar code.
|
||||
*///{{{
|
||||
#include "../pixmaps/tb_new.xpm"
|
||||
#include "../pixmaps/tb_open.xpm"
|
||||
#include "../pixmaps/tb_close.xpm"
|
||||
#include "../pixmaps/tb_save.xpm"
|
||||
#include "../pixmaps/tb_print.xpm"
|
||||
#include "../pixmaps/tb_cut.xpm"
|
||||
#include "../pixmaps/tb_copy.xpm"
|
||||
#include "../pixmaps/tb_paste.xpm"
|
||||
#include "../pixmaps/tb_find.xpm"
|
||||
#include "../pixmaps/tb_find_next.xpm"
|
||||
#include "../pixmaps/tb_find_prev.xpm"
|
||||
#include "../pixmaps/tb_find_help.xpm"
|
||||
#include "../pixmaps/tb_exit.xpm"
|
||||
#include "../pixmaps/tb_undo.xpm"
|
||||
#include "../pixmaps/tb_redo.xpm"
|
||||
#include "../pixmaps/tb_help.xpm"
|
||||
#include "../pixmaps/tb_macro.xpm"
|
||||
#include "../pixmaps/tb_make.xpm"
|
||||
#include "../pixmaps/tb_save_all.xpm"
|
||||
#include "../pixmaps/tb_jump.xpm"
|
||||
#include "../pixmaps/tb_ctags.xpm"
|
||||
#include "../pixmaps/tb_load_session.xpm"
|
||||
#include "../pixmaps/tb_save_session.xpm"
|
||||
#include "../pixmaps/tb_new_session.xpm"
|
||||
#include "../pixmaps/tb_blank.xpm"
|
||||
#include "../pixmaps/tb_maximize.xpm"
|
||||
#include "../pixmaps/tb_split.xpm"
|
||||
#include "../pixmaps/tb_minimize.xpm"
|
||||
#include "../pixmaps/tb_shell.xpm"
|
||||
#include "../pixmaps/tb_replace.xpm"
|
||||
#include "../pixmaps/tb_vsplit.xpm"
|
||||
#include "../pixmaps/tb_maxwidth.xpm"
|
||||
#include "../pixmaps/tb_minwidth.xpm"
|
||||
//}}}
|
||||
/*
|
||||
* These are the pixmaps used for the default buttons.
|
||||
* Order must exactly match toolbar_names[] in menu.c!
|
||||
*///{{{
|
||||
static char **(built_in_pixmaps[]) =
|
||||
{
|
||||
tb_new_xpm,
|
||||
tb_open_xpm,
|
||||
tb_save_xpm,
|
||||
tb_undo_xpm,
|
||||
tb_redo_xpm,
|
||||
tb_cut_xpm,
|
||||
tb_copy_xpm,
|
||||
tb_paste_xpm,
|
||||
tb_print_xpm,
|
||||
tb_help_xpm,
|
||||
tb_find_xpm,
|
||||
tb_save_all_xpm,
|
||||
tb_save_session_xpm,
|
||||
tb_new_session_xpm,
|
||||
tb_load_session_xpm,
|
||||
tb_macro_xpm,
|
||||
tb_replace_xpm,
|
||||
tb_close_xpm,
|
||||
tb_maximize_xpm,
|
||||
tb_minimize_xpm,
|
||||
tb_split_xpm,
|
||||
tb_shell_xpm,
|
||||
tb_find_prev_xpm,
|
||||
tb_find_next_xpm,
|
||||
tb_find_help_xpm,
|
||||
tb_make_xpm,
|
||||
tb_jump_xpm,
|
||||
tb_ctags_xpm,
|
||||
tb_vsplit_xpm,
|
||||
tb_maxwidth_xpm,
|
||||
tb_minwidth_xpm,
|
||||
tb_exit_xpm
|
||||
};//}}}
|
||||
#else
|
||||
const char *kdeicons[] = {
|
||||
"filenew",
|
||||
"fileopen",
|
||||
"filesave",
|
||||
"undo",
|
||||
"redo",
|
||||
"editcut",
|
||||
"editcopy",
|
||||
"editpaste",
|
||||
"fileprint",
|
||||
"contents2",
|
||||
"filefind",
|
||||
"save_all",
|
||||
"fileexport",
|
||||
"filenew",
|
||||
"fileimport",
|
||||
"run",
|
||||
"edit",
|
||||
"fileclose",
|
||||
"",
|
||||
"",
|
||||
"split",
|
||||
"openterm",
|
||||
"previous",
|
||||
"next",
|
||||
"help",
|
||||
"make",
|
||||
"goto",
|
||||
"run",
|
||||
"vsplit",
|
||||
"maxwidth",
|
||||
"minwidth",
|
||||
"quit"
|
||||
};
|
||||
#endif
|
||||
/*
|
||||
* creates a blank pixmap using tb_blank
|
||||
*/
|
||||
QPixmap
|
||||
pixmap_create_from_xpm(char **xpm)//{{{
|
||||
{
|
||||
return (QPixmap((const char **)xpm));
|
||||
}//}}}
|
||||
|
||||
/*
|
||||
* creates a pixmap by using a built-in number
|
||||
*/
|
||||
QPixmap
|
||||
pixmap_create_by_num(int pixmap_num)//{{{
|
||||
{
|
||||
#ifdef FEAT_KDETOOLBAR
|
||||
if (pixmap_num >= 0 && (unsigned)pixmap_num < (sizeof(kdeicons)
|
||||
/ sizeof(kdeicons[0])) - 1)
|
||||
{
|
||||
|
||||
KIconLoader *il = kapp->iconLoader(); //new KIconLoader();
|
||||
QString icon;
|
||||
icon = QString(kdeicons[pixmap_num]);
|
||||
return il->loadIcon(icon, KIcon::MainToolbar);
|
||||
}
|
||||
return QPixmap();
|
||||
#else
|
||||
if (pixmap_num >= 0 && (unsigned)pixmap_num < (sizeof(built_in_pixmaps)
|
||||
/ sizeof(built_in_pixmaps[0])) - 1)
|
||||
return pixmap_create_from_xpm(built_in_pixmaps[pixmap_num]);
|
||||
else
|
||||
return QPixmap();
|
||||
#endif
|
||||
}//}}}
|
||||
|
||||
/*
|
||||
* Creates a pixmap by using the pixmap "name" found in 'runtimepath'/bitmaps/
|
||||
*/
|
||||
QPixmap
|
||||
pixmap_create_by_dir(char_u *name)//{{{
|
||||
{
|
||||
char_u full_pathname[MAXPATHL + 1];
|
||||
|
||||
if (gui_find_bitmap(name, full_pathname, "xpm") == OK)
|
||||
return QPixmap((const char *)full_pathname);
|
||||
else
|
||||
return QPixmap();
|
||||
}//}}}
|
||||
|
||||
|
||||
QPixmap
|
||||
pixmap_create_from_file(char_u *file)
|
||||
{
|
||||
return QPixmap((const char *)file);
|
||||
}
|
||||
#endif
|
||||
|
||||
void
|
||||
gui_mch_add_menu(vimmenu_T *menu, int idx)//{{{
|
||||
{
|
||||
#ifdef FEAT_MENU
|
||||
QPopupMenu *me;
|
||||
vimmenu_T *parent = menu->parent;
|
||||
|
||||
if (menu_is_popup(menu->name))
|
||||
{
|
||||
menu->widget = new QPopupMenu(vmw , QSTR(menu->name));
|
||||
QObject::connect(menu->widget, SIGNAL(activated(int)), vmw,
|
||||
SLOT(menu_activated(int)));
|
||||
return;
|
||||
}
|
||||
|
||||
if (!menu_is_menubar(menu->name))
|
||||
return;
|
||||
|
||||
if (parent)
|
||||
{
|
||||
idx++; // for tearoffs to be first in menus
|
||||
me = new QPopupMenu(parent->widget, QSTR(menu->name));
|
||||
parent->widget->insertItem(QSTR(menu->name), me, (long)me, idx);
|
||||
}
|
||||
else
|
||||
{
|
||||
me = new QPopupMenu(vmw->menuBar(), QSTR(menu->name));
|
||||
vmw->menuBar()->insertItem(QSTR(menu->name), me, (long)me, idx);
|
||||
}
|
||||
|
||||
me->setCaption((const char *)(menu->dname));
|
||||
if (vmw->have_tearoff)
|
||||
me->insertTearOffHandle(0, 0);
|
||||
QObject::connect(me, SIGNAL(activated(int)), vmw,
|
||||
SLOT(menu_activated(int)));
|
||||
menu->widget = me;
|
||||
#endif
|
||||
}//}}}
|
||||
|
||||
|
||||
void
|
||||
gui_mch_add_menu_item(vimmenu_T *menu, int idx)//{{{
|
||||
{
|
||||
#ifdef FEAT_MENU
|
||||
vimmenu_T *parent = menu->parent;
|
||||
#ifdef FEAT_TOOLBAR
|
||||
if (menu_is_toolbar(parent->name))
|
||||
{
|
||||
QPixmap pix;
|
||||
|
||||
if (menu_is_separator(menu->name))
|
||||
{
|
||||
vmw->toolBar()->insertSeparator();
|
||||
return;
|
||||
}
|
||||
if (menu->iconfile != NULL)
|
||||
{
|
||||
pix = pixmap_create_from_file(menu->iconfile);
|
||||
}
|
||||
if (!menu->icon_builtin)
|
||||
{
|
||||
pix = pixmap_create_by_dir(menu->name);
|
||||
}
|
||||
if (pix.isNull() && menu->iconidx >= 0)
|
||||
{
|
||||
pix = pixmap_create_by_num(menu->iconidx);
|
||||
}
|
||||
#ifndef FEAT_KDETOOLBAR
|
||||
if (pix.isNull())
|
||||
{
|
||||
pix = pixmap_create_from_xpm(tb_blank_xpm);
|
||||
}
|
||||
#endif
|
||||
if (pix.isNull())
|
||||
return; // failed
|
||||
vmw->toolBar()->insertButton(
|
||||
pix,
|
||||
(long)menu, // id
|
||||
true,
|
||||
QSTR(menu->strings[MENU_INDEX_TIP]), // tooltip or text
|
||||
idx);
|
||||
menu->parent=parent;
|
||||
return;
|
||||
}
|
||||
#endif // FEAT_TOOLBAR
|
||||
|
||||
idx++;
|
||||
if (menu_is_separator(menu->name))
|
||||
{
|
||||
parent->widget->insertSeparator();
|
||||
return;
|
||||
}
|
||||
parent->widget->insertItem(QSTR(menu->name), (long)menu, idx);
|
||||
#endif
|
||||
}//}}}
|
||||
|
||||
|
||||
void
|
||||
gui_mch_set_text_area_pos(int x, int y, int w, int h)//{{{
|
||||
{
|
||||
int X = 0;
|
||||
int Y = 0;
|
||||
|
||||
if (vmw->menuBar()->isVisible() && vmw->menuBar()->isEnabled()
|
||||
#if QT_VERSION>=300
|
||||
&& !vmw->menuBar()->isTopLevelMenu()
|
||||
#endif
|
||||
)
|
||||
Y += vmw->menuBar()->height();
|
||||
#ifdef FEAT_TOOLBAR
|
||||
if (vmw->toolBar()->isVisible() && vmw->toolBar()->isEnabled()
|
||||
&& vmw->toolBar()->barPos()==KToolBar::Top)
|
||||
Y += vmw->toolBar()->height();
|
||||
|
||||
if (vmw->toolBar()->isVisible() && vmw->toolBar()->isEnabled()
|
||||
&& vmw->toolBar()->barPos()==KToolBar::Left)
|
||||
X += vmw->toolBar()->width();
|
||||
#endif // FEAT_TOOLBAR
|
||||
|
||||
gui.w->setGeometry(x + X, y + Y, w, h);
|
||||
}//}}}
|
||||
|
||||
|
||||
#if defined(FEAT_MENU) || defined(PROTO)
|
||||
/*
|
||||
* Enable or disable mnemonics for the toplevel menus.
|
||||
*/
|
||||
void
|
||||
gui_gtk_set_mnemonics(int enable)//{{{ // TO BE REMOVED
|
||||
{
|
||||
}//}}}
|
||||
|
||||
void
|
||||
toggle_tearoffs(vimmenu_T *menu, int enable)//{{{
|
||||
{
|
||||
while (menu != NULL)
|
||||
{
|
||||
if (!menu_is_popup(menu->name))
|
||||
{
|
||||
if (menu->widget != 0)
|
||||
{
|
||||
if (enable)
|
||||
menu->widget->insertTearOffHandle(0,0);
|
||||
else
|
||||
menu->widget->removeItem(0);
|
||||
}
|
||||
toggle_tearoffs(menu->children, enable);
|
||||
}
|
||||
menu = menu->next;
|
||||
}
|
||||
}//}}}
|
||||
|
||||
void
|
||||
gui_mch_toggle_tearoffs(int enable)//{{{
|
||||
{
|
||||
vmw->have_tearoff=enable;
|
||||
toggle_tearoffs(root_menu, enable);
|
||||
}//}}}
|
||||
#endif
|
||||
|
||||
|
||||
#if defined(FEAT_MENU) || defined(PROTO)
|
||||
/*
|
||||
* Destroy the machine specific menu widget.
|
||||
*/
|
||||
void
|
||||
gui_mch_destroy_menu(vimmenu_T *menu)//{{{
|
||||
{
|
||||
#ifdef FEAT_TOOLBAR
|
||||
if (menu->parent && menu_is_toolbar(menu->parent->name))
|
||||
{
|
||||
vmw->toolBar()->removeItem((long)menu);
|
||||
return;
|
||||
}
|
||||
#endif
|
||||
if (menu->parent)
|
||||
menu->parent->widget->removeItem((long)menu);
|
||||
if (menu->widget)
|
||||
delete menu->widget;
|
||||
menu->widget = 0;
|
||||
}//}}}
|
||||
#endif /* FEAT_MENU */
|
||||
|
||||
|
||||
/*
|
||||
* Scrollbar stuff.
|
||||
*/
|
||||
|
||||
void
|
||||
gui_mch_set_scrollbar_thumb(scrollbar_T *sb, long val, long size, long max)//{{{
|
||||
{
|
||||
if (!sb->w)
|
||||
return;
|
||||
|
||||
sb->w->setRange(0, max + 1 - size);
|
||||
sb->w->setValue(val);
|
||||
|
||||
sb->w->setLineStep(1);
|
||||
sb->w->setPageStep(size);
|
||||
}//}}}
|
||||
|
||||
void
|
||||
gui_mch_set_scrollbar_pos(scrollbar_T *sb, int x, int y, int w, int h)//{{{
|
||||
{
|
||||
if (!sb->w)
|
||||
return;
|
||||
|
||||
//we add the menubar and toolbar height/width
|
||||
int X = 0;
|
||||
int Y = 0;
|
||||
|
||||
if (vmw->menuBar()->isVisible() && vmw->menuBar()->isEnabled()
|
||||
#if QT_VERSION>=300
|
||||
&& !vmw->menuBar()->isTopLevelMenu()
|
||||
#endif
|
||||
)
|
||||
Y += vmw->menuBar()->height();
|
||||
#ifdef FEAT_TOOLBAR
|
||||
if (vmw->toolBar()->isVisible() && vmw->toolBar()->isEnabled()
|
||||
&& vmw->toolBar()->barPos()==KToolBar::Top)
|
||||
Y += vmw->toolBar()->height();
|
||||
|
||||
if (vmw->toolBar()->isVisible() && vmw->toolBar()->isEnabled()
|
||||
&& vmw->toolBar()->barPos()==KToolBar::Left)
|
||||
X += vmw->toolBar()->width();
|
||||
#endif //FEAT_TOOLBAR
|
||||
if (sb->w->orientation() == Qt::Vertical)
|
||||
{
|
||||
bool leftscroll=gui.which_scrollbars[SBAR_LEFT];
|
||||
bool rightscroll=gui.which_scrollbars[SBAR_RIGHT];
|
||||
|
||||
if (x < 20)
|
||||
leftscroll = true;
|
||||
else
|
||||
rightscroll = true;
|
||||
if (x < 20)
|
||||
sb->w->setGeometry(X, y+Y, w, h);
|
||||
else
|
||||
sb->w->setGeometry(vmw->width() - w - 1 + X, y + Y, w, h);
|
||||
}
|
||||
else
|
||||
{
|
||||
sb->w->setGeometry(x + X, y + Y, w, h);
|
||||
}
|
||||
}//}}}
|
||||
|
||||
/* SBAR_VERT or SBAR_HORIZ */
|
||||
void
|
||||
gui_mch_create_scrollbar(scrollbar_T *sb, int orient)//{{{
|
||||
{
|
||||
sbpool->create(sb,orient);
|
||||
if (orient == SBAR_VERT)
|
||||
gui.scrollbar_width = sb->w->sizeHint().width();
|
||||
else
|
||||
gui.scrollbar_height = sb->w->sizeHint().height();
|
||||
}//}}}
|
||||
|
||||
void
|
||||
gui_mch_destroy_scrollbar(scrollbar_T *sb)//{{{
|
||||
{
|
||||
sbpool->destroy(sb);
|
||||
}//}}}
|
||||
|
||||
#if defined(FEAT_BROWSE) || defined(PROTO)
|
||||
/*
|
||||
* Implementation of the file selector related stuff
|
||||
*/
|
||||
|
||||
/*
|
||||
* Convert the Vim-style filter specification 's' to the KDE-style
|
||||
* filter specification.
|
||||
* Vim-style: {label}\t{pattern1};{pattern2}\n
|
||||
* KDE-style: {pattern1} {pattern2}|{label}\n
|
||||
*
|
||||
* The newly constructed filter is returned in allocated memory and
|
||||
* must be freed by the calling program.
|
||||
*/
|
||||
static char *
|
||||
convert_filter(char_u *s)
|
||||
{
|
||||
char *res;
|
||||
unsigned i;
|
||||
unsigned pattern_len;
|
||||
char *filter_label;
|
||||
char *filter_pattern;
|
||||
|
||||
// The conversion generates a string of equal length to the original
|
||||
// pattern, so allocate enough memory to hold the original string.
|
||||
res = new char[STRLEN(s) + 1];
|
||||
s = vim_strsave(s);
|
||||
if (res != NULL && s != NULL)
|
||||
{
|
||||
// Make sure the first byte is a NUL so that strcat()
|
||||
// will append at the beginning of the string.
|
||||
res[0] = '\0';
|
||||
filter_label = strtok((char *) s, "\t");
|
||||
while (filter_label != NULL)
|
||||
{
|
||||
filter_pattern = strtok( 0L, "\n");
|
||||
if (filter_pattern != NULL)
|
||||
{
|
||||
pattern_len = (unsigned) STRLEN(filter_pattern);
|
||||
for (i = 0; i < pattern_len; ++i)
|
||||
if (filter_pattern[i] == ';')
|
||||
filter_pattern[i] = ' ';
|
||||
|
||||
strcat(res, filter_pattern);
|
||||
strcat(res, "|");
|
||||
strcat(res, filter_label);
|
||||
strcat(res, "\n");
|
||||
}
|
||||
filter_label = strtok(0L, "\t");
|
||||
}
|
||||
}
|
||||
if (s)
|
||||
vim_free(s);
|
||||
return res;
|
||||
}
|
||||
|
||||
/*
|
||||
* Put up a file requester.
|
||||
* Returns the selected name in allocated memory, or NULL for Cancel.
|
||||
* saving, select file to write
|
||||
* title title for the window
|
||||
* dflt default name
|
||||
* ext not used (extension added)
|
||||
* initdir initial directory, NULL for current dir
|
||||
* filter not used (file name filter)
|
||||
*/
|
||||
/*ARGSUSED*/
|
||||
char_u *
|
||||
gui_mch_browse(int saving,//{{{
|
||||
char_u *title,
|
||||
char_u *dflt,
|
||||
char_u *ext,
|
||||
char_u *initdir,
|
||||
char_u *filter)
|
||||
{
|
||||
char *filt_glob;
|
||||
|
||||
filt_glob = convert_filter(filter);
|
||||
|
||||
gui_mch_mousehide(FALSE);
|
||||
|
||||
QString s;
|
||||
if (!saving)
|
||||
s = KFileDialog::getOpenFileName(QSTR(initdir), QSTR(filt_glob),
|
||||
vmw, QSTR(title));
|
||||
else
|
||||
s = KFileDialog::getSaveFileName();
|
||||
|
||||
if (filt_glob)
|
||||
delete filt_glob;
|
||||
|
||||
if (s.isNull())
|
||||
return NULL;
|
||||
QCString unistring = vmw->codec->fromUnicode(s);
|
||||
char_u *s2 = (char_u *)(const char *)unistring;
|
||||
if (s2)
|
||||
s2 = vim_strsave(s2);
|
||||
|
||||
return s2;
|
||||
}//}}}
|
||||
|
||||
#endif /* FEAT_BROWSE */
|
||||
|
||||
#ifdef FEAT_GUI_DIALOG
|
||||
|
||||
/* ARGSUSED */
|
||||
int
|
||||
gui_mch_dialog(int type, /* type of dialog *///{{{
|
||||
char_u *title, /* title of dialog */
|
||||
char_u *message, /* message text */
|
||||
char_u *buttons, /* names of buttons */
|
||||
int def_but, /* default button */
|
||||
char_u *textfield)
|
||||
{
|
||||
gui_mch_mousehide(FALSE);
|
||||
VimDialog vd(type, title, message, buttons, def_but,textfield);
|
||||
int ret = vd.exec();
|
||||
return ret;
|
||||
}//}}}
|
||||
|
||||
|
||||
#endif /* FEAT_GUI_DIALOG */
|
||||
|
||||
#if defined(FEAT_MENU) || defined(PROTO)
|
||||
void
|
||||
gui_mch_show_popupmenu(vimmenu_T *menu)//{{{
|
||||
{
|
||||
menu->widget->popup(QCursor::pos());
|
||||
}//}}}
|
||||
|
||||
/* TODO: use mouse_pos */
|
||||
void
|
||||
gui_make_popup (char_u *pathname, int mouse_pos)//{{{
|
||||
{
|
||||
vimmenu_T *menu = gui_find_menu(pathname);
|
||||
|
||||
if (menu != NULL)
|
||||
menu->widget->popup(QCursor::pos());
|
||||
}//}}}
|
||||
#endif
|
||||
|
||||
|
||||
|
||||
/* Find and Replace implementations */
|
||||
void
|
||||
gui_mch_find_dialog(exarg_T *eap)//{{{
|
||||
{
|
||||
// char_u* entry_text;
|
||||
//int exact_word=FALSE;
|
||||
// entry_text = get_find_dialog_text(eap->arg,&exact_word);
|
||||
|
||||
vmw->finddlg->setCaseSensitive(true);
|
||||
|
||||
/* if (entry_text!=NULL)
|
||||
* {
|
||||
vmw->finddlg->setText(QString((char *)entry_text));
|
||||
// exact match should go there, hopefully KDE old KEdFind/KEdReplace will be replaced in KDE 4 as pple wanted KDE 3's Find/Replace to be kept
|
||||
}*/ // Don't use it, KDE keeps old search in memory and vim give \\Csearch, which is difficult to handle
|
||||
// vim_free(entry_text);
|
||||
|
||||
vmw->finddlg->show();
|
||||
}//}}}
|
||||
|
||||
void
|
||||
gui_mch_replace_dialog(exarg_T *eap)//{{{
|
||||
{
|
||||
// char_u* entry_text;
|
||||
//int exact_word=FALSE;
|
||||
|
||||
// entry_text = get_find_dialog_text(eap->arg,&exact_word);
|
||||
|
||||
/* if (entry_text!=NULL)
|
||||
* {
|
||||
vmw->repldlg->setText(QString((char *)entry_text));
|
||||
// exact match should go there, hopefully KDE old KEdFind/KEdReplace will be replaced in KDE 4 as pple wanted KDE 3's Find/Replace to be kept
|
||||
}*/
|
||||
//vim_free(entry_text);
|
||||
|
||||
vmw->repldlg->show();
|
||||
}//}}}
|
||||
|
||||
void
|
||||
ex_helpfind(exarg_T *eap)//{{{
|
||||
{
|
||||
do_cmdline_cmd((char_u *)"emenu ToolBar.FindHelp");
|
||||
}//}}}
|
||||
1644
src/gui_kde_wid.cc
1644
src/gui_kde_wid.cc
File diff suppressed because it is too large
Load Diff
@@ -1,258 +0,0 @@
|
||||
/* vi:set ts=8 sts=0 sw=8:
|
||||
*
|
||||
* 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.
|
||||
*/
|
||||
|
||||
/*
|
||||
* Porting to KDE(2) was done by
|
||||
*
|
||||
* (C) 2000 by Thomas Capricelli <orzel@freehackers.org>
|
||||
*
|
||||
* Please visit http://freehackers.org/kvim for other vim- or
|
||||
* kde-related coding.
|
||||
*
|
||||
* $Id$
|
||||
*
|
||||
*/
|
||||
|
||||
#ifndef GUI_KDE_WIDGET
|
||||
#define GUI_KDE_WIDGET
|
||||
|
||||
#if 1
|
||||
#define dbf( format, args... ) { printf( "%s" " : " format "\n" , __FUNCTION__ , ## args ); fflush(stdout); }
|
||||
#define db() { printf( "%s\n", __FUNCTION__ );fflush(stdout); }
|
||||
#else
|
||||
#define dbf(format, args... )
|
||||
#define db()
|
||||
#endif
|
||||
|
||||
#define UNIX // prevent a warning : a symbol is defined twice in X and Qt
|
||||
|
||||
#include <qdialog.h>
|
||||
#include <qlabel.h>
|
||||
#include <qsignalmapper.h>
|
||||
#include <qtimer.h>
|
||||
#include <qmainwindow.h>
|
||||
#include <qapplication.h>
|
||||
#include <qevent.h>
|
||||
#include <qlineedit.h>
|
||||
#include <qpainter.h>
|
||||
#include <qwidget.h>
|
||||
#include <qpopupmenu.h>
|
||||
#include <klocale.h>
|
||||
#include <kapp.h>
|
||||
#include <kcmdlineargs.h>
|
||||
#include <kaboutdata.h>
|
||||
#include <keditcl.h>
|
||||
#include <kaboutdata.h>
|
||||
#if (KDE_VERSION>=290)
|
||||
#include <kmainwindow.h>
|
||||
#else
|
||||
#include <ktmainwindow.h>
|
||||
#endif
|
||||
#include <kparts/part.h>
|
||||
#include <kurl.h>
|
||||
#include "kvim_iface.h"
|
||||
|
||||
#undef UNIX // prevent a warning
|
||||
extern "C" {
|
||||
#include "vim.h"
|
||||
}
|
||||
|
||||
class QPushButton;
|
||||
class QDialog;
|
||||
class QLineEdit;
|
||||
class QSignalMapper;
|
||||
class QPaintEvent;
|
||||
|
||||
enum BlinkState
|
||||
{
|
||||
BLINK_NONE,
|
||||
BLINK_ON,
|
||||
BLINK_OFF
|
||||
};
|
||||
|
||||
class VimWidget : public QWidget, virtual public KVim
|
||||
{
|
||||
Q_OBJECT
|
||||
|
||||
public:
|
||||
VimWidget(QWidget *parent = 0, const char *name = 0, WFlags f = 0);
|
||||
virtual void paintEvent(QPaintEvent *);
|
||||
void draw_string(int x, int y, QString s, int len, int flags);
|
||||
|
||||
/** Init the blinking time */
|
||||
void set_blink_time(long, long, long);
|
||||
void start_cursor_blinking();
|
||||
void stop_cursor_blinking();
|
||||
void wait(long);
|
||||
#ifdef FEAT_CLIENTSERVER
|
||||
void serverActivate(WId id);
|
||||
#endif
|
||||
#ifdef FEAT_MZSCHEME
|
||||
void enable_mzscheme_threads();
|
||||
void disable_mzscheme_threads();
|
||||
#endif
|
||||
void flash();
|
||||
|
||||
/** DCOP */
|
||||
void execNormal(QString command);
|
||||
void execInsert(QString command);
|
||||
void execRaw(QString command);
|
||||
void execCmd(QString command);
|
||||
QString eval(QString expr);
|
||||
|
||||
bool wait_done;
|
||||
BlinkState blink_state;
|
||||
QPainter *painter;
|
||||
QPopupMenu *menu;
|
||||
virtual void setMicroFocusHint(int x, int y, int w, int h, bool text=TRUE, QFont *f = 0)
|
||||
{
|
||||
QWidget::setMicroFocusHint(x, y, w, h, text, f);
|
||||
}
|
||||
|
||||
protected:
|
||||
virtual void keyPressEvent(QKeyEvent *);
|
||||
virtual void mousePressEvent(QMouseEvent *);
|
||||
virtual void mouseDoubleClickEvent(QMouseEvent *);
|
||||
virtual void mouseReleaseEvent(QMouseEvent *);
|
||||
virtual void mouseMoveEvent(QMouseEvent *);
|
||||
virtual void focusInEvent(QFocusEvent *);
|
||||
virtual void focusOutEvent(QFocusEvent *);
|
||||
virtual void dragEnterEvent(QDragEnterEvent *);
|
||||
virtual void dropEvent(QDropEvent *);
|
||||
#ifdef FEAT_XIM
|
||||
virtual void imStartEvent(QIMEvent *);
|
||||
virtual void imEndEvent(QIMEvent *);
|
||||
virtual void imComposeEvent(QIMEvent *);
|
||||
#endif
|
||||
#ifdef FEAT_MZSCHEME
|
||||
virtual void timerEvent(QTimerEvent *);
|
||||
#endif
|
||||
|
||||
/* cursor blinking stuff */
|
||||
QTimer blink_timer;
|
||||
long blink_wait_time, blink_on_time, blink_off_time;
|
||||
|
||||
/* wait for input */
|
||||
QTimer wait_timer;
|
||||
|
||||
#ifdef FEAT_MZSCHEME
|
||||
int mzscheme_timer_id;
|
||||
#endif
|
||||
|
||||
public slots:
|
||||
void blink_cursor();
|
||||
void wait_timeout();
|
||||
};
|
||||
|
||||
class VimMainWindow : public KMainWindow
|
||||
{
|
||||
Q_OBJECT
|
||||
|
||||
public:
|
||||
VimMainWindow(const char *name = 0L, WFlags f = WDestructiveClose);
|
||||
|
||||
/** called when the widget closes */
|
||||
// bool close(bool alsoDelete);
|
||||
VimWidget *w;
|
||||
KEdFind *finddlg;
|
||||
KEdReplace *repldlg;
|
||||
int have_tearoff;
|
||||
QTextCodec *codec;
|
||||
|
||||
public slots:
|
||||
void menu_activated(int dx);
|
||||
void clipboard_selection_update();
|
||||
void clipboard_data_update();
|
||||
void slotSearch();
|
||||
void slotFind();
|
||||
void slotReplace();
|
||||
void slotReplaceAll();
|
||||
void showAboutApplication();
|
||||
void showAboutKDE();
|
||||
void showBugReport();
|
||||
void showTipOfTheDay();
|
||||
void buffersToolbar();
|
||||
bool isLocked();
|
||||
void lock();
|
||||
void unlock();
|
||||
|
||||
protected:
|
||||
virtual void wheelEvent(QWheelEvent *);
|
||||
virtual void resizeEvent(QResizeEvent *e);
|
||||
|
||||
#if defined(FEAT_SESSION)
|
||||
void saveGlobalProperties(KConfig *conf);
|
||||
void readGlobalProperties(KConfig *conf);
|
||||
#endif
|
||||
bool queryClose();
|
||||
bool queryExit();
|
||||
bool locked;
|
||||
};
|
||||
|
||||
|
||||
class VimDialog : public QDialog
|
||||
{
|
||||
Q_OBJECT
|
||||
public:
|
||||
VimDialog(int type, /* type of dialog */
|
||||
unsigned char *title, /* title of dialog */
|
||||
unsigned char *message, /* message text */
|
||||
unsigned char *buttons, /* names of buttons */
|
||||
int def_but, /* default button */
|
||||
char_u *textfield); /* input text */
|
||||
private:
|
||||
QSignalMapper mapper;
|
||||
QLineEdit *entry;
|
||||
char_u *ret;
|
||||
int butNb;
|
||||
|
||||
protected slots:
|
||||
void done(int);
|
||||
};
|
||||
|
||||
|
||||
/*
|
||||
* QScrollBar pool
|
||||
*/
|
||||
struct GuiScrollbar;
|
||||
|
||||
class SBPool : public QObject
|
||||
{
|
||||
Q_OBJECT
|
||||
public:
|
||||
SBPool(void);
|
||||
void create(GuiScrollbar * sb, int orient);
|
||||
void destroy(GuiScrollbar * sb);
|
||||
public slots:
|
||||
void sbUsed(int who);
|
||||
private:
|
||||
QSignalMapper mapper;
|
||||
};
|
||||
|
||||
class KVimUtils
|
||||
{
|
||||
public:
|
||||
static QString convertEncodingName(QString);
|
||||
#if QT_VERSION<300
|
||||
static bool fromString(QFont*,QString);
|
||||
static QString toString(QFont*);
|
||||
#endif
|
||||
};
|
||||
|
||||
extern VimMainWindow *vmw;
|
||||
extern SBPool *sbpool;
|
||||
extern QString *argServerName;
|
||||
|
||||
#define QSTR(x) \
|
||||
(has_mbyte ? \
|
||||
(enc_utf8 ? \
|
||||
QString::fromUtf8((const char *)x) : \
|
||||
QString::fromLocal8Bit((const char *)x)) : \
|
||||
QString((const char *)x))
|
||||
|
||||
#endif // GUI_KDE_WIDGET
|
||||
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user