mirror of
https://github.com/zoriya/vim.git
synced 2025-12-26 17:08:10 +00:00
Compare commits
142 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
505e43a20e | ||
|
|
c6538bcc1c | ||
|
|
749fa0af85 | ||
|
|
eda35f7127 | ||
|
|
edd680f364 | ||
|
|
72e1b39111 | ||
|
|
c7f1e40021 | ||
|
|
f2d8b7a0a6 | ||
|
|
1ccaa35abf | ||
|
|
dd00035cb5 | ||
|
|
50f91d22bd | ||
|
|
8750026a7f | ||
|
|
90f3e7ac56 | ||
|
|
f4fd7ecbc0 | ||
|
|
9bcb70c18a | ||
|
|
13b11eddca | ||
|
|
b66bab381c | ||
|
|
3f9bdeb2a5 | ||
|
|
dff2adc8dd | ||
|
|
5477506a9f | ||
|
|
0e6bfb9b2e | ||
|
|
70576f70f7 | ||
|
|
674e2bde6e | ||
|
|
8edf0e3132 | ||
|
|
8c8b88d0cc | ||
|
|
f386f08ccb | ||
|
|
4641a122f2 | ||
|
|
eee9f65b2a | ||
|
|
3c610c9638 | ||
|
|
13d5c3f616 | ||
|
|
b78564d022 | ||
|
|
d4404b4391 | ||
|
|
56c0c4749d | ||
|
|
ac3150d385 | ||
|
|
bca9c30193 | ||
|
|
f96ae0b5a2 | ||
|
|
2a9c9f6d89 | ||
|
|
8453807911 | ||
|
|
f91aac5e3e | ||
|
|
5328cb8986 | ||
|
|
9f9fe37f67 | ||
|
|
c273405188 | ||
|
|
4248111497 | ||
|
|
9800bfe0fc | ||
|
|
14371ed697 | ||
|
|
d5c8234517 | ||
|
|
2984666291 | ||
|
|
1417c766f5 | ||
|
|
0aca293fed | ||
|
|
4f0d002cf9 | ||
|
|
e865dcbce1 | ||
|
|
7b73d7ebf7 | ||
|
|
9d5ffceb3f | ||
|
|
8a5c29aee9 | ||
|
|
736cd2cfbe | ||
|
|
74da39373c | ||
|
|
fbfb757d4c | ||
|
|
94f82cbacf | ||
|
|
1f164b1968 | ||
|
|
07d1356648 | ||
|
|
bbca7732e8 | ||
|
|
7dfb016d25 | ||
|
|
4ef18dcc2e | ||
|
|
d08b8c4c04 | ||
|
|
06029a857a | ||
|
|
9bc4dde45d | ||
|
|
949f1989cb | ||
|
|
c3328169d5 | ||
|
|
c61a48d259 | ||
|
|
29b7d7a9aa | ||
|
|
e5e6950193 | ||
|
|
f03e328348 | ||
|
|
26b654a5df | ||
|
|
1e78e69680 | ||
|
|
ecaa75b4ce | ||
|
|
5f32ece459 | ||
|
|
defa067c54 | ||
|
|
ed997adaa1 | ||
|
|
663bbc09ba | ||
|
|
b4fe0eb4b4 | ||
|
|
2458200729 | ||
|
|
61343f0c44 | ||
|
|
63187f7932 | ||
|
|
2a5b52758b | ||
|
|
331bafd481 | ||
|
|
cb5ff34c1b | ||
|
|
f914a33c9c | ||
|
|
ab0a789808 | ||
|
|
06e6377009 | ||
|
|
85850f3a5e | ||
|
|
7964873afe | ||
|
|
df9c6cad8c | ||
|
|
d6bcff4577 | ||
|
|
acf7544cf6 | ||
|
|
4a0a161a9b | ||
|
|
403d090e39 | ||
|
|
3fb4f4762b | ||
|
|
cfdbc5adde | ||
|
|
99a764bccd | ||
|
|
4c6d90458b | ||
|
|
69a5b86794 | ||
|
|
6138640806 | ||
|
|
c7283078c3 | ||
|
|
7ce2aa01c2 | ||
|
|
250e3112c6 | ||
|
|
2ac6e82a4e | ||
|
|
5d6844566a | ||
|
|
c9afd15bc8 | ||
|
|
cea2a15687 | ||
|
|
f49a692259 | ||
|
|
41a8260445 | ||
|
|
f9cc9f209e | ||
|
|
b8be54dcc5 | ||
|
|
37d9f175a4 | ||
|
|
0346413c24 | ||
|
|
660a10ad41 | ||
|
|
1850b14c0d | ||
|
|
ecaa70ea29 | ||
|
|
2898ebb44c | ||
|
|
a099da3572 | ||
|
|
396e829fa3 | ||
|
|
fa55cfc69d | ||
|
|
d5abb4c877 | ||
|
|
809ce4d317 | ||
|
|
0fb286e82d | ||
|
|
63d0dad874 | ||
|
|
eaa49e40d7 | ||
|
|
a901a37bae | ||
|
|
b073da8929 | ||
|
|
017c269938 | ||
|
|
7b73f914c4 | ||
|
|
4e63f9425e | ||
|
|
b4f0628fc5 | ||
|
|
d94ac0caca | ||
|
|
b7b9efbccf | ||
|
|
0231f8312b | ||
|
|
efef9fea72 | ||
|
|
8ccabf624e | ||
|
|
8071cb2c64 | ||
|
|
bd42b31780 | ||
|
|
b420747478 | ||
|
|
847a5d69a8 |
@@ -142,8 +142,11 @@ script:
|
||||
"${SRCDIR}"/vim --not-a-term -u NONE -S "${SRCDIR}"/testdir/if_ver-2.vim -c quit > /dev/null
|
||||
cat if_ver.txt
|
||||
fi
|
||||
- do_test make ${SHADOWOPT} ${TEST}
|
||||
- echo -en "travis_fold:end:test\\r\\033[0K"
|
||||
- |
|
||||
if do_test make ${SHADOWOPT} ${TEST}; then
|
||||
echo -en "travis_fold:end:test\\r\\033[0K"
|
||||
fi
|
||||
|
||||
|
||||
# instead of a 2*2*8 matrix (2*os + 2*compiler + 8*env),
|
||||
# exclude some builds on mac os x and linux
|
||||
|
||||
15
Filelist
15
Filelist
@@ -50,6 +50,7 @@ SRC_ALL = \
|
||||
src/gui_beval.c \
|
||||
src/hardcopy.c \
|
||||
src/hashtab.c \
|
||||
src/highlight.c \
|
||||
src/indent.c \
|
||||
src/insexpand.c \
|
||||
src/json.c \
|
||||
@@ -59,6 +60,7 @@ SRC_ALL = \
|
||||
src/keymap.h \
|
||||
src/macros.h \
|
||||
src/main.c \
|
||||
src/map.c \
|
||||
src/mark.c \
|
||||
src/mbyte.c \
|
||||
src/memfile.c \
|
||||
@@ -80,12 +82,14 @@ SRC_ALL = \
|
||||
src/option.h \
|
||||
src/popupmnu.c \
|
||||
src/popupwin.c \
|
||||
src/profiler.c \
|
||||
src/quickfix.c \
|
||||
src/regexp.c \
|
||||
src/regexp_nfa.c \
|
||||
src/regexp.h \
|
||||
src/screen.c \
|
||||
src/search.c \
|
||||
src/session.c \
|
||||
src/sha256.c \
|
||||
src/sign.c \
|
||||
src/sound.c \
|
||||
@@ -99,6 +103,7 @@ SRC_ALL = \
|
||||
src/terminal.c \
|
||||
src/term.h \
|
||||
src/termlib.c \
|
||||
src/testing.c \
|
||||
src/textprop.c \
|
||||
src/ui.c \
|
||||
src/undo.c \
|
||||
@@ -107,6 +112,7 @@ SRC_ALL = \
|
||||
src/version.c \
|
||||
src/version.h \
|
||||
src/vim.h \
|
||||
src/viminfo.c \
|
||||
src/winclip.c \
|
||||
src/window.c \
|
||||
src/tee/tee.c \
|
||||
@@ -188,11 +194,13 @@ SRC_ALL = \
|
||||
src/proto/gui_beval.pro \
|
||||
src/proto/hardcopy.pro \
|
||||
src/proto/hashtab.pro \
|
||||
src/proto/highlight.pro \
|
||||
src/proto/indent.pro \
|
||||
src/proto/insexpand.pro \
|
||||
src/proto/json.pro \
|
||||
src/proto/list.pro \
|
||||
src/proto/main.pro \
|
||||
src/proto/map.pro \
|
||||
src/proto/mark.pro \
|
||||
src/proto/mbyte.pro \
|
||||
src/proto/memfile.pro \
|
||||
@@ -208,10 +216,12 @@ SRC_ALL = \
|
||||
src/proto/option.pro \
|
||||
src/proto/popupmnu.pro \
|
||||
src/proto/popupwin.pro \
|
||||
src/proto/profiler.pro \
|
||||
src/proto/quickfix.pro \
|
||||
src/proto/regexp.pro \
|
||||
src/proto/screen.pro \
|
||||
src/proto/search.pro \
|
||||
src/proto/session.pro \
|
||||
src/proto/sha256.pro \
|
||||
src/proto/sign.pro \
|
||||
src/proto/sound.pro \
|
||||
@@ -222,12 +232,14 @@ SRC_ALL = \
|
||||
src/proto/term.pro \
|
||||
src/proto/terminal.pro \
|
||||
src/proto/termlib.pro \
|
||||
src/proto/testing.pro \
|
||||
src/proto/textprop.pro \
|
||||
src/proto/ui.pro \
|
||||
src/proto/undo.pro \
|
||||
src/proto/usercmd.pro \
|
||||
src/proto/userfunc.pro \
|
||||
src/proto/version.pro \
|
||||
src/proto/viminfo.pro \
|
||||
src/proto/winclip.pro \
|
||||
src/proto/window.pro \
|
||||
src/libvterm/.bzrignore \
|
||||
@@ -540,10 +552,7 @@ SRC_AMI = \
|
||||
README_amisrc.txt.info \
|
||||
src.info \
|
||||
src/INSTALLami.txt \
|
||||
src/Make_dice.mak \
|
||||
src/Make_manx.mak \
|
||||
src/Make_morph.mak \
|
||||
src/Make_sas.mak \
|
||||
src/os_amiga.c \
|
||||
src/os_amiga.h \
|
||||
src/proto/os_amiga.pro \
|
||||
|
||||
@@ -22,8 +22,10 @@ if "%FEATURE%" == "HUGE" (
|
||||
)
|
||||
.\gvim -u NONE -c "redir @a | ver |0put a | wq" ver_ming.txt
|
||||
|
||||
:: Filter out the progress bar from the build log
|
||||
sed -e "s/@<<$/@<< | sed -e 's#.*\\\\r.*##'/" Make_mvc.mak > Make_mvc2.mak
|
||||
|
||||
echo "Building MSVC 64bit console Version"
|
||||
sed -e "s/\$(LINKARGS2)/\$(LINKARGS2) | sed -e 's#.*\\\\r.*##'/" Make_mvc.mak > Make_mvc2.mak
|
||||
nmake -f Make_mvc2.mak CPU=AMD64 OLE=no GUI=no IME=yes ICONV=yes DEBUG=no FEATURES=%FEATURE% || exit 1
|
||||
nmake -f Make_mvc2.mak clean
|
||||
|
||||
|
||||
File diff suppressed because it is too large
Load Diff
@@ -1,7 +1,7 @@
|
||||
" netrwSettings.vim: makes netrw settings simpler
|
||||
" Date: Dec 30, 2014
|
||||
" Date: Nov 09, 2016
|
||||
" Maintainer: Charles E Campbell <drchipNOSPAM at campbellfamily dot biz>
|
||||
" Version: 15
|
||||
" Version: 16
|
||||
" Copyright: Copyright (C) 1999-2007 Charles E. Campbell {{{1
|
||||
" Permission is hereby granted to use and distribute this code,
|
||||
" with or without modifications, provided that this copyright
|
||||
@@ -19,7 +19,7 @@
|
||||
if exists("g:loaded_netrwSettings") || &cp
|
||||
finish
|
||||
endif
|
||||
let g:loaded_netrwSettings = "v15"
|
||||
let g:loaded_netrwSettings = "v16"
|
||||
if v:version < 700
|
||||
echohl WarningMsg
|
||||
echo "***warning*** this version of netrwSettings needs vim 7.0"
|
||||
@@ -154,9 +154,13 @@ fun! netrwSettings#NetrwSettings()
|
||||
put = 'let g:netrw_list_hide = '.g:netrw_list_hide
|
||||
put = 'let g:netrw_liststyle = '.g:netrw_liststyle
|
||||
put = 'let g:netrw_localcopycmd = '.g:netrw_localcopycmd
|
||||
put = 'let g:netrw_localcopycmdopt = '.g:netrw_localcopycmdopt
|
||||
put = 'let g:netrw_localmkdir = '.g:netrw_localmkdir
|
||||
put = 'let g:netrw_localmkdiropt = '.g:netrw_localmkdiropt
|
||||
put = 'let g:netrw_localmovecmd = '.g:netrw_localmovecmd
|
||||
put = 'let g:netrw_localmovecmdopt = '.g:netrw_localmovecmdopt
|
||||
put = 'let g:netrw_localrmdir = '.g:netrw_localrmdir
|
||||
put = 'let g:netrw_localrmdiropt = '.g:netrw_localrmdiropt
|
||||
put = 'let g:netrw_maxfilenamelen = '.g:netrw_maxfilenamelen
|
||||
put = 'let g:netrw_menu = '.g:netrw_menu
|
||||
put = 'let g:netrw_mousemaps = '.g:netrw_mousemaps
|
||||
|
||||
@@ -8,7 +8,7 @@ set cpo&vim
|
||||
func! Test_check_colors()
|
||||
let l:savedview = winsaveview()
|
||||
call cursor(1,1)
|
||||
let err={}
|
||||
let err = {}
|
||||
|
||||
" 1) Check g:colors_name is existing
|
||||
if !search('\<\%(g:\)\?colors_name\>', 'cnW')
|
||||
@@ -81,36 +81,39 @@ func! Test_check_colors()
|
||||
\ 'WarningMsg',
|
||||
\ 'WildMenu',
|
||||
\ ]
|
||||
let groups={}
|
||||
let groups = {}
|
||||
for group in hi_groups
|
||||
if search('\c@suppress\s\+'.group, 'cnW')
|
||||
if search('\c@suppress\s\+\<' .. group .. '\>', 'cnW')
|
||||
" skip check, if the script contains a line like
|
||||
" @suppress Visual:
|
||||
let groups[group] = 'Ignoring '.group
|
||||
continue
|
||||
endif
|
||||
if search('hi\%[ghlight]!\= \+link \+'.group, 'cnW') " Linked group
|
||||
if search('hi\%[ghlight]!\= \+link \+' .. group, 'cnW') " Linked group
|
||||
continue
|
||||
endif
|
||||
if !search('hi\%[ghlight] \+'.group, 'cnW')
|
||||
let groups[group] = 'No highlight definition for '.group
|
||||
if !search('hi\%[ghlight] \+\<' .. group .. '\>', 'cnW')
|
||||
let groups[group] = 'No highlight definition for ' .. group
|
||||
continue
|
||||
endif
|
||||
if !search('hi\%[ghlight] \+'.group. '.*fg=', 'cnW')
|
||||
let groups[group] = 'Missing foreground color for '.group
|
||||
if !search('hi\%[ghlight] \+\<' .. group .. '\>.*[bf]g=', 'cnW')
|
||||
let groups[group] = 'Missing foreground or background color for ' .. group
|
||||
continue
|
||||
endif
|
||||
if search('hi\%[ghlight] \+'.group. '.*guibg=', 'cnW') &&
|
||||
\ !search('hi\%[ghlight] \+'.group. '.*ctermbg=', 'cnW')
|
||||
let groups[group] = 'Missing bg terminal color for '.group
|
||||
if search('hi\%[ghlight] \+\<' .. group .. '\>.*guibg=', 'cnW') &&
|
||||
\ !search('hi\%[ghlight] \+\<' .. group .. '\>.*ctermbg=', 'cnW')
|
||||
\ && group != 'Cursor'
|
||||
let groups[group] = 'Missing bg terminal color for ' .. group
|
||||
continue
|
||||
endif
|
||||
if !search('hi\%[ghlight] \+'.group. '.*guifg=', 'cnW')
|
||||
let groups[group] = 'Missing guifg definition for '.group
|
||||
if !search('hi\%[ghlight] \+\<' .. group .. '\>.*guifg=', 'cnW')
|
||||
\ && group !~ '^Diff'
|
||||
let groups[group] = 'Missing guifg definition for ' .. group
|
||||
continue
|
||||
endif
|
||||
if !search('hi\%[ghlight] \+'.group. '.*ctermfg=', 'cnW')
|
||||
let groups[group] = 'Missing ctermfg definition for '.group
|
||||
if !search('hi\%[ghlight] \+\<' .. group .. '\>.*ctermfg=', 'cnW')
|
||||
\ && group !~ '^Diff'
|
||||
\ && group != 'Cursor'
|
||||
let groups[group] = 'Missing ctermfg definition for ' .. group
|
||||
continue
|
||||
endif
|
||||
" do not check for background colors, they could be intentionally left out
|
||||
@@ -120,10 +123,10 @@ func! Test_check_colors()
|
||||
|
||||
" 3) Check, that it does not set background highlighting
|
||||
" Doesn't ':hi Normal ctermfg=253 ctermfg=233' also set the background sometimes?
|
||||
let bg_set='\(set\?\|setl\(ocal\)\?\) .*\(background\|bg\)=\(dark\|light\)'
|
||||
let bg_let='let \%([&]\%([lg]:\)\?\)\%(background\|bg\)\s*=\s*\([''"]\?\)\w\+\1'
|
||||
let bg_pat='\%('.bg_set. '\|'.bg_let.'\)'
|
||||
let line=search(bg_pat, 'cnW')
|
||||
let bg_set = '\(set\?\|setl\(ocal\)\?\) .*\(background\|bg\)=\(dark\|light\)'
|
||||
let bg_let = 'let \%([&]\%([lg]:\)\?\)\%(background\|bg\)\s*=\s*\([''"]\?\)\w\+\1'
|
||||
let bg_pat = '\%(' .. bg_set .. '\|' .. bg_let .. '\)'
|
||||
let line = search(bg_pat, 'cnW')
|
||||
if search(bg_pat, 'cnW')
|
||||
exe line
|
||||
if search('hi \U\w\+\s\+\S', 'cbnW')
|
||||
@@ -145,7 +148,7 @@ func! Test_check_colors()
|
||||
" if exists("syntax_on")
|
||||
" syntax reset
|
||||
" endif
|
||||
let pat='hi\%[ghlight]\s*clear\n\s*if\s*exists(\([''"]\)syntax_on\1)\n\s*syn\%[tax]\s*reset\n\s*endif'
|
||||
let pat = 'hi\%[ghlight]\s*clear\n\s*if\s*exists(\([''"]\)syntax_on\1)\n\s*syn\%[tax]\s*reset\n\s*endif'
|
||||
if !search(pat, 'cnW')
|
||||
let err['init'] = 'No initialization'
|
||||
endif
|
||||
@@ -160,7 +163,7 @@ func! Test_check_colors()
|
||||
let ft_groups = []
|
||||
" let group = '\%('.join(hi_groups, '\|').'\)' " More efficient than a for loop, but less informative
|
||||
for group in hi_groups
|
||||
let pat='\Chi\%[ghlight]!\= *\%[link] \+\zs'.group.'\w\+\>\ze \+.' " Skips `hi clear`
|
||||
let pat = '\Chi\%[ghlight]!\= *\%[link] \+\zs' .. group .. '\w\+\>\ze \+.' " Skips `hi clear`
|
||||
if search(pat, 'cW')
|
||||
call add(ft_groups, matchstr(getline('.'), pat))
|
||||
endif
|
||||
@@ -172,7 +175,7 @@ func! Test_check_colors()
|
||||
|
||||
" 8) Were debugPC and debugBreakpoint defined?
|
||||
for group in ['debugPC', 'debugBreakpoint']
|
||||
let pat='\Chi\%[ghlight]!\= *\%[link] \+\zs'.group.'\>'
|
||||
let pat = '\Chi\%[ghlight]!\= *\%[link] \+\zs' .. group .. '\>'
|
||||
if search(pat, 'cnW')
|
||||
let line = search(pat, 'cW')
|
||||
let err['filetype'] = get(err, 'filetype', 'Should not define: ') . matchstr(getline('.'), pat). ' '
|
||||
|
||||
@@ -1,8 +1,8 @@
|
||||
" Vim compiler file
|
||||
" Compiler: Microsoft Visual Studio C#
|
||||
" Maintainer: Zhou YiChao (broken.zhou@gmail.com)
|
||||
" Previous Maintainer: Joseph H. Yao (hyao@sina.com)
|
||||
" Last Change: 2012 Apr 30
|
||||
" Compiler: Microsoft Visual Studio C#
|
||||
" Maintainer: Yichao Zhou (broken.zhou@gmail.com)
|
||||
" Previous Maintainer: Joseph H. Yao (hyao@sina.com)
|
||||
" Last Change: Jul 22, 2019
|
||||
|
||||
if exists("current_compiler")
|
||||
finish
|
||||
@@ -20,7 +20,7 @@ CompilerSet errorformat+=%f(%l\\,%v):\ %t%*[^:]:\ %m,
|
||||
\%trror%*[^:]:\ %m,
|
||||
\%tarning%*[^:]:\ %m
|
||||
|
||||
CompilerSet makeprg=csc\ %
|
||||
CompilerSet makeprg=csc\ %:S
|
||||
|
||||
let &cpo = s:keepcpo
|
||||
unlet s:keepcpo
|
||||
|
||||
@@ -1,13 +1,13 @@
|
||||
" Vim compiler file
|
||||
" Compiler: Erlang
|
||||
" Maintainer: Dmitry Vasiliev <dima at hlabs dot org>
|
||||
" Last Change: 2012-02-13
|
||||
" Last Change: 2019 Jul 23
|
||||
|
||||
if exists("current_compiler")
|
||||
finish
|
||||
endif
|
||||
let current_compiler = "erlang"
|
||||
|
||||
CompilerSet makeprg=erlc\ -Wall\ %
|
||||
CompilerSet makeprg=erlc\ -Wall\ %:S
|
||||
|
||||
CompilerSet errorformat=%f:%l:\ %m
|
||||
|
||||
@@ -22,7 +22,7 @@ CompilerSet errorformat=
|
||||
\%-Z%p%^%.%#,
|
||||
\%-G%.%#,
|
||||
" Compiler call
|
||||
CompilerSet makeprg=df\ /nologo\ /noobj\ /c\ %
|
||||
CompilerSet makeprg=df\ /nologo\ /noobj\ /c\ %:S
|
||||
" Visual fortran defaults to printing output on stderr
|
||||
" Adjust option shellpipe accordingly
|
||||
|
||||
|
||||
@@ -2,6 +2,8 @@
|
||||
" Compiler: GNU C Compiler
|
||||
" Previous Maintainer: Nikolai Weibull <now@bitwi.se>
|
||||
" Latest Revision: 2010-10-14
|
||||
" changed pattern for entering/leaving directories
|
||||
" by Daniel Hahler, 2019 Jul 12
|
||||
" added line suggested by Anton Lindqvist 2016 Mar 31
|
||||
|
||||
if exists("current_compiler")
|
||||
@@ -27,10 +29,10 @@ CompilerSet errorformat=
|
||||
\%f:%l:\ %m,
|
||||
\%f:\\(%*[^\\)]\\):\ %m,
|
||||
\\"%f\"\\,\ line\ %l%*\\D%c%*[^\ ]\ %m,
|
||||
\%D%*\\a[%*\\d]:\ Entering\ directory\ [`']%f',
|
||||
\%X%*\\a[%*\\d]:\ Leaving\ directory\ [`']%f',
|
||||
\%D%*\\a:\ Entering\ directory\ [`']%f',
|
||||
\%X%*\\a:\ Leaving\ directory\ [`']%f',
|
||||
\%D%*\\a[%*\\d]:\ Entering\ directory\ %*[`']%f',
|
||||
\%X%*\\a[%*\\d]:\ Leaving\ directory\ %*[`']%f',
|
||||
\%D%*\\a:\ Entering\ directory\ %*[`']%f',
|
||||
\%X%*\\a:\ Leaving\ directory\ %*[`']%f',
|
||||
\%DMaking\ %*\\a\ in\ %f
|
||||
|
||||
if exists('g:compiler_gcc_ignore_unmatched_lines')
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
" Vim Compiler File
|
||||
" Compiler: Jikes
|
||||
" Maintainer: Dan Sharp <dwsharp at hotmail dot com>
|
||||
" Last Change: 20 Jan 2009
|
||||
" Last Change: 2019 Jul 23
|
||||
" URL: http://dwsharp.users.sourceforge.net/vim/compiler
|
||||
|
||||
if exists("current_compiler")
|
||||
@@ -14,5 +14,5 @@ if exists(":CompilerSet") != 2 " older Vim always used :setlocal
|
||||
endif
|
||||
|
||||
" Jikes defaults to printing output on stderr
|
||||
CompilerSet makeprg=jikes\ -Xstdout\ +E\ \"%\"
|
||||
CompilerSet makeprg=jikes\ -Xstdout\ +E\ \"%:S\"
|
||||
CompilerSet errorformat=%f:%l:%v:%*\\d:%*\\d:%*\\s%m
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
" Vim compiler file
|
||||
" Compiler: onsgmls
|
||||
" Maintainer: Robert Rowsome <rowsome@wam.umd.edu>
|
||||
" Last Change: 2004 Mar 27
|
||||
" Last Change: 2019 Jul 23
|
||||
|
||||
if exists("current_compiler")
|
||||
finish
|
||||
@@ -15,7 +15,7 @@ endif
|
||||
let s:cpo_save = &cpo
|
||||
set cpo-=C
|
||||
|
||||
CompilerSet makeprg=onsgmls\ -s\ %
|
||||
CompilerSet makeprg=onsgmls\ -s\ %:S
|
||||
|
||||
CompilerSet errorformat=onsgmls:%f:%l:%c:%t:%m,
|
||||
\onsgmls:%f:%l:%c:%m
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
" Vim Compiler File
|
||||
" Compiler: Perl syntax checks (perl -Wc)
|
||||
" Maintainer: Christian J. Robinson <heptite@gmail.com>
|
||||
" Last Change: 2006 Aug 13
|
||||
" Last Change: 2019 Jul 22
|
||||
|
||||
if exists("current_compiler")
|
||||
finish
|
||||
@@ -27,7 +27,7 @@ else
|
||||
let s:taintopt = ''
|
||||
endif
|
||||
|
||||
exe 'CompilerSet makeprg=perl\ -' . s:warnopt . s:taintopt . 'c\ %'
|
||||
exe 'CompilerSet makeprg=perl\ -' . s:warnopt . s:taintopt . 'c\ %:S'
|
||||
|
||||
CompilerSet errorformat=
|
||||
\%-G%.%#had\ compilation\ errors.,
|
||||
|
||||
@@ -19,7 +19,7 @@ endif
|
||||
if exists("g:rustc_makeprg_no_percent") && g:rustc_makeprg_no_percent != 0
|
||||
CompilerSet makeprg=rustc
|
||||
else
|
||||
CompilerSet makeprg=rustc\ \%
|
||||
CompilerSet makeprg=rustc\ \%:S
|
||||
endif
|
||||
|
||||
" Old errorformat (before nightly 2016/08/10)
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
" Compiler: splint/lclint (C source code checker)
|
||||
" Maintainer: Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
|
||||
" Splint Home: http://www.splint.org/
|
||||
" Last Change: 2005 Apr 21
|
||||
" Last Change: 2019 Jul 23
|
||||
" $Revision: 1.3 $
|
||||
|
||||
if exists("current_compiler")
|
||||
@@ -19,7 +19,7 @@ set cpo-=C
|
||||
|
||||
" adapt this if you want to check more than one file at a time.
|
||||
" put command line options in .splintrc or ~/.splintrc
|
||||
CompilerSet makeprg=splint\ %
|
||||
CompilerSet makeprg=splint\ %:S
|
||||
|
||||
" Note: when using the new array bounds checking flags: Each warning
|
||||
" usually has several lines and several references to source code mostly
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
" Vim Compiler File
|
||||
" Compiler: xmlwf
|
||||
" Maintainer: Robert Rowsome <rowsome@wam.umd.edu>
|
||||
" Last Change: 2004 Mar 27
|
||||
" Last Change: 2019 Jul 23
|
||||
|
||||
if exists("current_compiler")
|
||||
finish
|
||||
@@ -15,7 +15,7 @@ if exists(":CompilerSet") != 2 " older Vim always used :setlocal
|
||||
command -nargs=* CompilerSet setlocal <args>
|
||||
endif
|
||||
|
||||
CompilerSet makeprg=xmlwf\ %
|
||||
CompilerSet makeprg=xmlwf\ %:S
|
||||
|
||||
CompilerSet errorformat=%f:%l%c:%m
|
||||
|
||||
|
||||
@@ -103,6 +103,7 @@ DOCS = \
|
||||
tagsrch.txt \
|
||||
term.txt \
|
||||
terminal.txt \
|
||||
testing.txt \
|
||||
textprop.txt \
|
||||
tips.txt \
|
||||
todo.txt \
|
||||
@@ -241,6 +242,7 @@ HTMLS = \
|
||||
tagsrch.html \
|
||||
term.html \
|
||||
terminal.html \
|
||||
testing.html \
|
||||
textprop.html \
|
||||
tips.html \
|
||||
todo.html \
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
*change.txt* For Vim version 8.1. Last change: 2019 May 07
|
||||
*change.txt* For Vim version 8.1. Last change: 2019 Jul 04
|
||||
|
||||
|
||||
VIM REFERENCE MANUAL by Bram Moolenaar
|
||||
@@ -1179,9 +1179,9 @@ There are ten types of registers: *registers* *E354*
|
||||
2. 10 numbered registers "0 to "9
|
||||
3. The small delete register "-
|
||||
4. 26 named registers "a to "z or "A to "Z
|
||||
5. three read-only registers ":, "., "%
|
||||
6. alternate buffer register "#
|
||||
7. the expression register "=
|
||||
5. Three read-only registers ":, "., "%
|
||||
6. Alternate buffer register "#
|
||||
7. The expression register "=
|
||||
8. The selection and drop registers "*, "+ and "~
|
||||
9. The black hole register "_
|
||||
10. Last search pattern register "/
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
*channel.txt* For Vim version 8.1. Last change: 2019 May 12
|
||||
*channel.txt* For Vim version 8.1. Last change: 2019 Jul 28
|
||||
|
||||
|
||||
VIM REFERENCE MANUAL by Bram Moolenaar
|
||||
@@ -18,11 +18,13 @@ The Netbeans interface also uses a channel. |netbeans|
|
||||
5. Channel commands |channel-commands|
|
||||
6. Using a RAW or NL channel |channel-raw|
|
||||
7. More channel functions |channel-more|
|
||||
8. Starting a job with a channel |job-start|
|
||||
9. Starting a job without a channel |job-start-nochannel|
|
||||
10. Job options |job-options|
|
||||
11. Controlling a job |job-control|
|
||||
12. Using a prompt buffer |prompt-buffer|
|
||||
8. Channel functions details |channel-functions-details|
|
||||
9. Starting a job with a channel |job-start|
|
||||
10. Starting a job without a channel |job-start-nochannel|
|
||||
11. Job functions |job-functions-details|
|
||||
12. Job options |job-options|
|
||||
13. Controlling a job |job-control|
|
||||
14. Using a prompt buffer |prompt-buffer|
|
||||
|
||||
{only when compiled with the |+channel| feature for channel stuff}
|
||||
You can check this with: `has('channel')`
|
||||
@@ -460,7 +462,211 @@ For a JS or JSON channel this returns one decoded message.
|
||||
This includes any sequence number.
|
||||
|
||||
==============================================================================
|
||||
8. Starting a job with a channel *job-start* *job*
|
||||
8. Channel functions details *channel-functions-details*
|
||||
|
||||
ch_canread({handle}) *ch_canread()*
|
||||
Return non-zero when there is something to read from {handle}.
|
||||
{handle} can be a Channel or a Job that has a Channel.
|
||||
|
||||
This is useful to read from a channel at a convenient time,
|
||||
e.g. from a timer.
|
||||
|
||||
Note that messages are dropped when the channel does not have
|
||||
a callback. Add a close callback to avoid that.
|
||||
|
||||
|
||||
ch_close({handle}) *ch_close()*
|
||||
Close {handle}. See |channel-close|.
|
||||
{handle} can be a Channel or a Job that has a Channel.
|
||||
A close callback is not invoked.
|
||||
|
||||
|
||||
ch_close_in({handle}) *ch_close_in()*
|
||||
Close the "in" part of {handle}. See |channel-close-in|.
|
||||
{handle} can be a Channel or a Job that has a Channel.
|
||||
A close callback is not invoked.
|
||||
|
||||
|
||||
ch_evalexpr({handle}, {expr} [, {options}]) *ch_evalexpr()*
|
||||
Send {expr} over {handle}. The {expr} is encoded
|
||||
according to the type of channel. The function cannot be used
|
||||
with a raw channel. See |channel-use|.
|
||||
{handle} can be a Channel or a Job that has a Channel.
|
||||
*E917*
|
||||
{options} must be a Dictionary. It must not have a "callback"
|
||||
entry. It can have a "timeout" entry to specify the timeout
|
||||
for this specific request.
|
||||
|
||||
ch_evalexpr() waits for a response and returns the decoded
|
||||
expression. When there is an error or timeout it returns an
|
||||
empty string.
|
||||
|
||||
|
||||
ch_evalraw({handle}, {string} [, {options}]) *ch_evalraw()*
|
||||
Send {string} over {handle}.
|
||||
{handle} can be a Channel or a Job that has a Channel.
|
||||
|
||||
Works like |ch_evalexpr()|, but does not encode the request or
|
||||
decode the response. The caller is responsible for the
|
||||
correct contents. Also does not add a newline for a channel
|
||||
in NL mode, the caller must do that. The NL in the response
|
||||
is removed.
|
||||
Note that Vim does not know when the text received on a raw
|
||||
channel is complete, it may only return the first part and you
|
||||
need to use |ch_readraw()| to fetch the rest.
|
||||
See |channel-use|.
|
||||
|
||||
|
||||
ch_getbufnr({handle}, {what}) *ch_getbufnr()*
|
||||
Get the buffer number that {handle} is using for {what}.
|
||||
{handle} can be a Channel or a Job that has a Channel.
|
||||
{what} can be "err" for stderr, "out" for stdout or empty for
|
||||
socket output.
|
||||
Returns -1 when there is no buffer.
|
||||
|
||||
|
||||
ch_getjob({channel}) *ch_getjob()*
|
||||
Get the Job associated with {channel}.
|
||||
If there is no job calling |job_status()| on the returned Job
|
||||
will result in "fail".
|
||||
|
||||
|
||||
ch_info({handle}) *ch_info()*
|
||||
Returns a Dictionary with information about {handle}. The
|
||||
items are:
|
||||
"id" number of the channel
|
||||
"status" "open", "buffered" or "closed", like
|
||||
ch_status()
|
||||
When opened with ch_open():
|
||||
"hostname" the hostname of the address
|
||||
"port" the port of the address
|
||||
"sock_status" "open" or "closed"
|
||||
"sock_mode" "NL", "RAW", "JSON" or "JS"
|
||||
"sock_io" "socket"
|
||||
"sock_timeout" timeout in msec
|
||||
When opened with job_start():
|
||||
"out_status" "open", "buffered" or "closed"
|
||||
"out_mode" "NL", "RAW", "JSON" or "JS"
|
||||
"out_io" "null", "pipe", "file" or "buffer"
|
||||
"out_timeout" timeout in msec
|
||||
"err_status" "open", "buffered" or "closed"
|
||||
"err_mode" "NL", "RAW", "JSON" or "JS"
|
||||
"err_io" "out", "null", "pipe", "file" or "buffer"
|
||||
"err_timeout" timeout in msec
|
||||
"in_status" "open" or "closed"
|
||||
"in_mode" "NL", "RAW", "JSON" or "JS"
|
||||
"in_io" "null", "pipe", "file" or "buffer"
|
||||
"in_timeout" timeout in msec
|
||||
|
||||
|
||||
ch_log({msg} [, {handle}]) *ch_log()*
|
||||
Write {msg} in the channel log file, if it was opened with
|
||||
|ch_logfile()|.
|
||||
When {handle} is passed the channel number is used for the
|
||||
message.
|
||||
{handle} can be a Channel or a Job that has a Channel. The
|
||||
Channel must be open for the channel number to be used.
|
||||
|
||||
|
||||
ch_logfile({fname} [, {mode}]) *ch_logfile()*
|
||||
Start logging channel activity to {fname}.
|
||||
When {fname} is an empty string: stop logging.
|
||||
|
||||
When {mode} is omitted or "a" append to the file.
|
||||
When {mode} is "w" start with an empty file.
|
||||
|
||||
Use |ch_log()| to write log messages. The file is flushed
|
||||
after every message, on Unix you can use "tail -f" to see what
|
||||
is going on in real time.
|
||||
|
||||
This function is not available in the |sandbox|.
|
||||
NOTE: the channel communication is stored in the file, be
|
||||
aware that this may contain confidential and privacy sensitive
|
||||
information, e.g. a password you type in a terminal window.
|
||||
|
||||
|
||||
ch_open({address} [, {options}]) *ch_open()*
|
||||
Open a channel to {address}. See |channel|.
|
||||
Returns a Channel. Use |ch_status()| to check for failure.
|
||||
|
||||
{address} has the form "hostname:port", e.g.,
|
||||
"localhost:8765".
|
||||
|
||||
If {options} is given it must be a |Dictionary|.
|
||||
See |channel-open-options|.
|
||||
|
||||
|
||||
ch_read({handle} [, {options}]) *ch_read()*
|
||||
Read from {handle} and return the received message.
|
||||
{handle} can be a Channel or a Job that has a Channel.
|
||||
For a NL channel this waits for a NL to arrive, except when
|
||||
there is nothing more to read (channel was closed).
|
||||
See |channel-more|.
|
||||
|
||||
|
||||
ch_readblob({handle} [, {options}]) *ch_readblob()*
|
||||
Like ch_read() but reads binary data and returns a |Blob|.
|
||||
See |channel-more|.
|
||||
|
||||
|
||||
ch_readraw({handle} [, {options}]) *ch_readraw()*
|
||||
Like ch_read() but for a JS and JSON channel does not decode
|
||||
the message. For a NL channel it does not block waiting for
|
||||
the NL to arrive, but otherwise works like ch_read().
|
||||
See |channel-more|.
|
||||
|
||||
|
||||
ch_sendexpr({handle}, {expr} [, {options}]) *ch_sendexpr()*
|
||||
Send {expr} over {handle}. The {expr} is encoded
|
||||
according to the type of channel. The function cannot be used
|
||||
with a raw channel.
|
||||
See |channel-use|. *E912*
|
||||
{handle} can be a Channel or a Job that has a Channel.
|
||||
|
||||
|
||||
ch_sendraw({handle}, {expr} [, {options}]) *ch_sendraw()*
|
||||
Send |String| or |Blob| {expr} over {handle}.
|
||||
Works like |ch_sendexpr()|, but does not encode the request or
|
||||
decode the response. The caller is responsible for the
|
||||
correct contents. Also does not add a newline for a channel
|
||||
in NL mode, the caller must do that. The NL in the response
|
||||
is removed.
|
||||
See |channel-use|.
|
||||
|
||||
|
||||
ch_setoptions({handle}, {options}) *ch_setoptions()*
|
||||
Set options on {handle}:
|
||||
"callback" the channel callback
|
||||
"timeout" default read timeout in msec
|
||||
"mode" mode for the whole channel
|
||||
See |ch_open()| for more explanation.
|
||||
{handle} can be a Channel or a Job that has a Channel.
|
||||
|
||||
Note that changing the mode may cause queued messages to be
|
||||
lost.
|
||||
|
||||
These options cannot be changed:
|
||||
"waittime" only applies to |ch_open()|
|
||||
|
||||
|
||||
ch_status({handle} [, {options}]) *ch_status()*
|
||||
Return the status of {handle}:
|
||||
"fail" failed to open the channel
|
||||
"open" channel can be used
|
||||
"buffered" channel can be read, not written to
|
||||
"closed" channel can not be used
|
||||
{handle} can be a Channel or a Job that has a Channel.
|
||||
"buffered" is used when the channel was closed but there is
|
||||
still data that can be obtained with |ch_read()|.
|
||||
|
||||
If {options} is given it can contain a "part" entry to specify
|
||||
the part of the channel to return the status for: "out" or
|
||||
"err". For example, to get the error status: >
|
||||
ch_status(job, {"part": "err"})
|
||||
<
|
||||
|
||||
==============================================================================
|
||||
9. Starting a job with a channel *job-start* *job*
|
||||
|
||||
To start a job and open a channel for stdin/stdout/stderr: >
|
||||
let job = job_start(command, {options})
|
||||
@@ -552,7 +758,7 @@ add a close callback and read the output there: >
|
||||
You will want to do something more useful than "echomsg".
|
||||
|
||||
==============================================================================
|
||||
9. Starting a job without a channel *job-start-nochannel*
|
||||
10. Starting a job without a channel *job-start-nochannel*
|
||||
|
||||
To start another process without creating a channel: >
|
||||
let job = job_start(command,
|
||||
@@ -579,7 +785,164 @@ Note that the waittime for ch_open() gives the job one second to make the port
|
||||
available.
|
||||
|
||||
==============================================================================
|
||||
10. Job options *job-options*
|
||||
11. Job functions *job-functions-details*
|
||||
|
||||
job_getchannel({job}) *job_getchannel()*
|
||||
Get the channel handle that {job} is using.
|
||||
To check if the job has no channel: >
|
||||
if string(job_getchannel()) == 'channel fail'
|
||||
<
|
||||
|
||||
job_info([{job}]) *job_info()*
|
||||
Returns a Dictionary with information about {job}:
|
||||
"status" what |job_status()| returns
|
||||
"channel" what |job_getchannel()| returns
|
||||
"cmd" List of command arguments used to start the job
|
||||
"process" process ID
|
||||
"tty_in" terminal input name, empty when none
|
||||
"tty_out" terminal output name, empty when none
|
||||
"exitval" only valid when "status" is "dead"
|
||||
"exit_cb" function to be called on exit
|
||||
"stoponexit" |job-stoponexit|
|
||||
|
||||
Only in Unix:
|
||||
"termsig" the signal which terminated the process
|
||||
(See |job_stop()| for the values)
|
||||
only valid when "status" is "dead"
|
||||
|
||||
Only in MS-Windows:
|
||||
"tty_type" Type of virtual console in use.
|
||||
Values are "winpty" or "conpty".
|
||||
See 'termwintype'.
|
||||
|
||||
Without any arguments, returns a List with all Job objects.
|
||||
|
||||
|
||||
job_setoptions({job}, {options}) *job_setoptions()*
|
||||
Change options for {job}. Supported are:
|
||||
"stoponexit" |job-stoponexit|
|
||||
"exit_cb" |job-exit_cb|
|
||||
|
||||
|
||||
job_start({command} [, {options}]) *job_start()*
|
||||
Start a job and return a Job object. Unlike |system()| and
|
||||
|:!cmd| this does not wait for the job to finish.
|
||||
To start a job in a terminal window see |term_start()|.
|
||||
|
||||
If the job fails to start then |job_status()| on the returned
|
||||
Job object results in "fail" and none of the callbacks will be
|
||||
invoked.
|
||||
|
||||
{command} can be a String. This works best on MS-Windows. On
|
||||
Unix it is split up in white-separated parts to be passed to
|
||||
execvp(). Arguments in double quotes can contain white space.
|
||||
|
||||
{command} can be a List, where the first item is the executable
|
||||
and further items are the arguments. All items are converted
|
||||
to String. This works best on Unix.
|
||||
|
||||
On MS-Windows, job_start() makes a GUI application hidden. If
|
||||
want to show it, Use |:!start| instead.
|
||||
|
||||
The command is executed directly, not through a shell, the
|
||||
'shell' option is not used. To use the shell: >
|
||||
let job = job_start(["/bin/sh", "-c", "echo hello"])
|
||||
< Or: >
|
||||
let job = job_start('/bin/sh -c "echo hello"')
|
||||
< Note that this will start two processes, the shell and the
|
||||
command it executes. If you don't want this use the "exec"
|
||||
shell command.
|
||||
|
||||
On Unix $PATH is used to search for the executable only when
|
||||
the command does not contain a slash.
|
||||
|
||||
The job will use the same terminal as Vim. If it reads from
|
||||
stdin the job and Vim will be fighting over input, that
|
||||
doesn't work. Redirect stdin and stdout to avoid problems: >
|
||||
let job = job_start(['sh', '-c', "myserver </dev/null >/dev/null"])
|
||||
<
|
||||
The returned Job object can be used to get the status with
|
||||
|job_status()| and stop the job with |job_stop()|.
|
||||
|
||||
Note that the job object will be deleted if there are no
|
||||
references to it. This closes the stdin and stderr, which may
|
||||
cause the job to fail with an error. To avoid this keep a
|
||||
reference to the job. Thus instead of: >
|
||||
call job_start('my-command')
|
||||
< use: >
|
||||
let myjob = job_start('my-command')
|
||||
< and unlet "myjob" once the job is not needed or is past the
|
||||
point where it would fail (e.g. when it prints a message on
|
||||
startup). Keep in mind that variables local to a function
|
||||
will cease to exist if the function returns. Use a
|
||||
script-local variable if needed: >
|
||||
let s:myjob = job_start('my-command')
|
||||
<
|
||||
{options} must be a Dictionary. It can contain many optional
|
||||
items, see |job-options|.
|
||||
|
||||
|
||||
job_status({job}) *job_status()* *E916*
|
||||
Returns a String with the status of {job}:
|
||||
"run" job is running
|
||||
"fail" job failed to start
|
||||
"dead" job died or was stopped after running
|
||||
|
||||
On Unix a non-existing command results in "dead" instead of
|
||||
"fail", because a fork happens before the failure can be
|
||||
detected.
|
||||
|
||||
If an exit callback was set with the "exit_cb" option and the
|
||||
job is now detected to be "dead" the callback will be invoked.
|
||||
|
||||
For more information see |job_info()|.
|
||||
|
||||
|
||||
job_stop({job} [, {how}]) *job_stop()*
|
||||
Stop the {job}. This can also be used to signal the job.
|
||||
|
||||
When {how} is omitted or is "term" the job will be terminated.
|
||||
For Unix SIGTERM is sent. On MS-Windows the job will be
|
||||
terminated forcedly (there is no "gentle" way).
|
||||
This goes to the process group, thus children may also be
|
||||
affected.
|
||||
|
||||
Effect for Unix:
|
||||
"term" SIGTERM (default)
|
||||
"hup" SIGHUP
|
||||
"quit" SIGQUIT
|
||||
"int" SIGINT
|
||||
"kill" SIGKILL (strongest way to stop)
|
||||
number signal with that number
|
||||
|
||||
Effect for MS-Windows:
|
||||
"term" terminate process forcedly (default)
|
||||
"hup" CTRL_BREAK
|
||||
"quit" CTRL_BREAK
|
||||
"int" CTRL_C
|
||||
"kill" terminate process forcedly
|
||||
Others CTRL_BREAK
|
||||
|
||||
On Unix the signal is sent to the process group. This means
|
||||
that when the job is "sh -c command" it affects both the shell
|
||||
and the command.
|
||||
|
||||
The result is a Number: 1 if the operation could be executed,
|
||||
0 if "how" is not supported on the system.
|
||||
Note that even when the operation was executed, whether the
|
||||
job was actually stopped needs to be checked with
|
||||
|job_status()|.
|
||||
|
||||
If the status of the job is "dead", the signal will not be
|
||||
sent. This is to avoid to stop the wrong job (esp. on Unix,
|
||||
where process numbers are recycled).
|
||||
|
||||
When using "kill" Vim will assume the job will die and close
|
||||
the channel.
|
||||
|
||||
|
||||
==============================================================================
|
||||
12. Job options *job-options*
|
||||
|
||||
The {options} argument in job_start() is a dictionary. All entries are
|
||||
optional. Some options can be used after the job has started, using
|
||||
@@ -773,7 +1136,7 @@ accessible for others). Use |setfperm()| to change this.
|
||||
If the file already exists it is truncated.
|
||||
|
||||
==============================================================================
|
||||
11. Controlling a job *job-control*
|
||||
13. Controlling a job *job-control*
|
||||
|
||||
To get the status of a job: >
|
||||
echo job_status(job)
|
||||
@@ -789,7 +1152,7 @@ signals. E.g. to force a job to stop, "kill it": >
|
||||
For more options see |job_stop()|.
|
||||
|
||||
==============================================================================
|
||||
12. Using a prompt buffer *prompt-buffer*
|
||||
14. Using a prompt buffer *prompt-buffer*
|
||||
|
||||
If you want to type input for the job in a Vim window you have a few options:
|
||||
- Use a normal buffer and handle all possible commands yourself.
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
*cmdline.txt* For Vim version 8.1. Last change: 2019 May 07
|
||||
*cmdline.txt* For Vim version 8.1. Last change: 2019 Jul 21
|
||||
|
||||
|
||||
VIM REFERENCE MANUAL by Bram Moolenaar
|
||||
@@ -1064,8 +1064,7 @@ Also see |`=|.
|
||||
In the command-line window the command line can be edited just like editing
|
||||
text in any window. It is a special kind of window, because you cannot leave
|
||||
it in a normal way.
|
||||
{not available when compiled without the |+cmdline_hist| or |+vertsplit|
|
||||
feature}
|
||||
{not available when compiled without the |+cmdline_hist| feature}
|
||||
|
||||
|
||||
OPEN *c_CTRL-F* *q:* *q/* *q?*
|
||||
@@ -1140,7 +1139,6 @@ VARIOUS
|
||||
The command-line window cannot be used:
|
||||
- when there already is a command-line window (no nesting)
|
||||
- for entering an encryption key or when using inputsecret()
|
||||
- when Vim was not compiled with the |+vertsplit| feature
|
||||
|
||||
Some options are set when the command-line window is opened:
|
||||
'filetype' "vim", when editing an Ex command-line; this starts Vim syntax
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
*debugger.txt* For Vim version 8.1. Last change: 2019 May 12
|
||||
*debugger.txt* For Vim version 8.1. Last change: 2019 Jul 06
|
||||
|
||||
|
||||
VIM REFERENCE MANUAL by Gordon Prieur
|
||||
@@ -6,6 +6,10 @@
|
||||
|
||||
Debugger Support Features *debugger-support*
|
||||
|
||||
These features are for integration with a debugger or an Integrated
|
||||
Programming Environment (IPE) or Integrated Development Environment (IDE).
|
||||
For the debugger running in a Vim terminal window see |terminal-debugger|.
|
||||
|
||||
1. Debugger Features |debugger-features|
|
||||
2. Vim Compile Options |debugger-compilation|
|
||||
3. Integrated Debuggers |debugger-integration|
|
||||
@@ -14,9 +18,7 @@ Debugger Support Features *debugger-support*
|
||||
==============================================================================
|
||||
1. Debugger Features *debugger-features*
|
||||
|
||||
The following features are available for an integration with a debugger or
|
||||
an Integrated Programming Environment (IPE) or Integrated Development
|
||||
Environment (IDE):
|
||||
The following features are available:
|
||||
|
||||
Alternate Command Input |alt-input|
|
||||
Debug Signs |debug-signs|
|
||||
@@ -90,6 +92,9 @@ However, the feature was implemented in as general a manner as possible and
|
||||
could be used for displaying other information as well. The functionality is
|
||||
limited though, for advanced popups see |popup-window|.
|
||||
|
||||
Another way to use the balloon is with the 'balloonexpr' option. This is
|
||||
completely user definable.
|
||||
|
||||
The Balloon Evaluation has some settable parameters too. For Motif the font
|
||||
list and colors can be set via X resources (XmNballoonEvalFontList,
|
||||
XmNballoonEvalBackground, and XmNballoonEvalForeground).
|
||||
@@ -106,9 +111,6 @@ The Balloon evaluation functions are also used to show a tooltip for the
|
||||
toolbar. The 'ballooneval' option does not need to be set for this. But the
|
||||
other settings apply.
|
||||
|
||||
Another way to use the balloon is with the 'balloonexpr' option. This is
|
||||
completely user definable.
|
||||
|
||||
==============================================================================
|
||||
2. Vim Compile Options *debugger-compilation*
|
||||
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
*diff.txt* For Vim version 8.1. Last change: 2019 Jun 02
|
||||
*diff.txt* For Vim version 8.1. Last change: 2019 Jul 27
|
||||
|
||||
|
||||
VIM REFERENCE MANUAL by Bram Moolenaar
|
||||
@@ -335,7 +335,7 @@ After setting this variable, reload the syntax script: >
|
||||
FINDING THE DIFFERENCES *diff-diffexpr*
|
||||
|
||||
The 'diffexpr' option can be set to use something else than the standard
|
||||
"diff" program to compare two files and find the differences.
|
||||
"diff" program to compare two files and find the differences. *E959*
|
||||
|
||||
When 'diffexpr' is empty, Vim uses this command to find the differences
|
||||
between file1 and file2: >
|
||||
|
||||
1116
runtime/doc/eval.txt
1116
runtime/doc/eval.txt
File diff suppressed because it is too large
Load Diff
@@ -1,4 +1,4 @@
|
||||
*filetype.txt* For Vim version 8.1. Last change: 2019 May 05
|
||||
*filetype.txt* For Vim version 8.1. Last change: 2019 Jul 16
|
||||
|
||||
|
||||
VIM REFERENCE MANUAL by Bram Moolenaar
|
||||
@@ -642,6 +642,16 @@ To disable this behavior, set the following variable in your vimrc: >
|
||||
let g:python_recommended_style = 0
|
||||
|
||||
|
||||
QF QUICKFIX *qf.vim* *ft-qf-plugin*
|
||||
|
||||
The "qf" filetype is used for the quickfix window, see |quickfix-window|.
|
||||
|
||||
The quickfix filetype plugin includes configuration for displaying the command
|
||||
that produced the quickfix list in the |status-line|. To disable this setting,
|
||||
configure as follows: >
|
||||
:let g:qf_disable_statusline = 1
|
||||
|
||||
|
||||
R MARKDOWN *ft-rmd-plugin*
|
||||
|
||||
By default ftplugin/html.vim is not sourced. If you want it sourced, add to
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
*help.txt* For Vim version 8.1. Last change: 2019 May 12
|
||||
*help.txt* For Vim version 8.1. Last change: 2019 Jul 21
|
||||
|
||||
VIM - main help file
|
||||
k
|
||||
@@ -139,6 +139,7 @@ Advanced editing ~
|
||||
|fold.txt| hide (fold) ranges of lines
|
||||
|
||||
Special issues ~
|
||||
|testing.txt| testing Vim and Vim scripts
|
||||
|print.txt| printing
|
||||
|remote.txt| using Vim as a server or client
|
||||
|term.txt| using different terminals and mice
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
*if_lua.txt* For Vim version 8.1. Last change: 2019 May 05
|
||||
*if_lua.txt* For Vim version 8.1. Last change: 2019 Jul 21
|
||||
|
||||
|
||||
VIM REFERENCE MANUAL by Luis Carvalho
|
||||
@@ -32,7 +32,7 @@ Examples:
|
||||
:lua local curbuf = vim.buffer() curbuf[7] = "line #7"
|
||||
<
|
||||
|
||||
:[range]lua << {endmarker}
|
||||
:[range]lua << [endmarker]
|
||||
{script}
|
||||
{endmarker}
|
||||
Execute Lua script {script}.
|
||||
@@ -40,9 +40,11 @@ Examples:
|
||||
feature wasn't compiled in. To avoid errors, see
|
||||
|script-here|.
|
||||
|
||||
{endmarker} must NOT be preceded by any white space. If {endmarker} is
|
||||
omitted from after the "<<", a dot '.' must be used after {script}, like
|
||||
for the |:append| and |:insert| commands.
|
||||
The {endmarker} must NOT be preceded by any white space.
|
||||
|
||||
If [endmarker] is omitted from after the "<<", a dot '.' must be used after
|
||||
{script}, like for the |:append| and |:insert| commands.
|
||||
|
||||
This form of the |:lua| command is mainly useful for including Lua code
|
||||
in Vim scripts.
|
||||
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
*if_mzsch.txt* For Vim version 8.1. Last change: 2019 May 05
|
||||
*if_mzsch.txt* For Vim version 8.1. Last change: 2019 Jul 21
|
||||
|
||||
|
||||
VIM REFERENCE MANUAL by Sergey Khorev
|
||||
@@ -39,7 +39,7 @@ To speed up the process, you might also want to use --disable-gracket and
|
||||
:[range]mz[scheme] {stmt}
|
||||
Execute MzScheme statement {stmt}.
|
||||
|
||||
:[range]mz[scheme] << {endmarker}
|
||||
:[range]mz[scheme] << [endmarker]
|
||||
{script}
|
||||
{endmarker}
|
||||
Execute inlined MzScheme script {script}.
|
||||
@@ -47,6 +47,13 @@ To speed up the process, you might also want to use --disable-gracket and
|
||||
feature wasn't compiled in. To avoid errors, see
|
||||
|script-here|.
|
||||
|
||||
The {endmarker} below the {script} must NOT be
|
||||
preceded by any white space.
|
||||
|
||||
If [endmarker] is omitted from after the "<<", a dot
|
||||
'.' must be used after {script}, like for the
|
||||
|:append| and |:insert| commands.
|
||||
|
||||
*:mzfile* *:mzf*
|
||||
:[range]mzf[ile] {file} Execute the MzScheme script in {file}.
|
||||
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
*if_perl.txt* For Vim version 8.1. Last change: 2019 May 05
|
||||
*if_perl.txt* For Vim version 8.1. Last change: 2019 Jul 21
|
||||
|
||||
|
||||
VIM REFERENCE MANUAL by Sven Verdoolaege
|
||||
@@ -55,15 +55,18 @@ The ActiveState one should work, Strawberry Perl is a good alternative.
|
||||
working: >
|
||||
:perl VIM::Msg("Hello")
|
||||
|
||||
:pe[rl] << {endpattern}
|
||||
:pe[rl] << [endpattern]
|
||||
{script}
|
||||
{endpattern}
|
||||
Execute Perl script {script}.
|
||||
{endpattern} must NOT be preceded by any white space.
|
||||
If {endpattern} is omitted, it defaults to a dot '.'
|
||||
The {endpattern} after {script} must NOT be preceded
|
||||
by any white space.
|
||||
|
||||
If [endpattern] is omitted, it defaults to a dot '.'
|
||||
like for the |:append| and |:insert| commands. Using
|
||||
'.' helps when inside a function, because "$i;" looks
|
||||
like the start of an |:insert| command to Vim.
|
||||
|
||||
This form of the |:perl| command is mainly useful for
|
||||
including perl code in vim scripts.
|
||||
Note: This command doesn't work when the Perl feature
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
*if_pyth.txt* For Vim version 8.1. Last change: 2019 May 04
|
||||
*if_pyth.txt* For Vim version 8.1. Last change: 2019 Jul 21
|
||||
|
||||
|
||||
VIM REFERENCE MANUAL by Paul Moore
|
||||
@@ -34,7 +34,7 @@ Both can be available at the same time, but read |python-2-and-3|.
|
||||
the `:python` command is working: >
|
||||
:python print "Hello"
|
||||
|
||||
:[range]py[thon] << {endmarker}
|
||||
:[range]py[thon] << [endmarker]
|
||||
{script}
|
||||
{endmarker}
|
||||
Execute Python script {script}.
|
||||
@@ -42,9 +42,11 @@ Both can be available at the same time, but read |python-2-and-3|.
|
||||
feature wasn't compiled in. To avoid errors, see
|
||||
|script-here|.
|
||||
|
||||
{endmarker} must NOT be preceded by any white space. If {endmarker} is
|
||||
omitted from after the "<<", a dot '.' must be used after {script}, like
|
||||
for the |:append| and |:insert| commands.
|
||||
The {endmarker} below the {script} must NOT be preceded by any white space.
|
||||
|
||||
If [endmarker] is omitted from after the "<<", a dot '.' must be used after
|
||||
{script}, like for the |:append| and |:insert| commands.
|
||||
|
||||
This form of the |:python| command is mainly useful for including python code
|
||||
in Vim scripts.
|
||||
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
*if_ruby.txt* For Vim version 8.1. Last change: 2019 May 05
|
||||
*if_ruby.txt* For Vim version 8.1. Last change: 2019 Jul 21
|
||||
|
||||
|
||||
VIM REFERENCE MANUAL by Shugo Maeda
|
||||
@@ -28,15 +28,19 @@ downloading Ruby there.
|
||||
:rub[y] {cmd} Execute Ruby command {cmd}. A command to try it out: >
|
||||
:ruby print "Hello"
|
||||
|
||||
:rub[y] << {endpattern}
|
||||
:rub[y] << [endpattern]
|
||||
{script}
|
||||
{endpattern}
|
||||
Execute Ruby script {script}.
|
||||
{endpattern} must NOT be preceded by any white space.
|
||||
If {endpattern} is omitted, it defaults to a dot '.'
|
||||
like for the |:append| and |:insert| commands. This
|
||||
form of the |:ruby| command is mainly useful for
|
||||
The {endpattern} after {script} must NOT be preceded
|
||||
by any white space.
|
||||
|
||||
If [endpattern] is omitted, it defaults to a dot '.'
|
||||
like for the |:append| and |:insert| commands.
|
||||
|
||||
This form of the |:ruby| command is mainly useful for
|
||||
including ruby code in vim scripts.
|
||||
|
||||
Note: This command doesn't work when the Ruby feature
|
||||
wasn't compiled in. To avoid errors, see
|
||||
|script-here|.
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
*if_tcl.txt* For Vim version 8.1. Last change: 2019 May 05
|
||||
*if_tcl.txt* For Vim version 8.1. Last change: 2019 Jul 21
|
||||
|
||||
|
||||
VIM REFERENCE MANUAL by Ingo Wilken
|
||||
@@ -30,7 +30,7 @@ comments, ideas etc to <Ingo.Wilken@informatik.uni-oldenburg.de>
|
||||
is working: >
|
||||
:tcl puts "Hello"
|
||||
|
||||
:[range]tc[l] << {endmarker}
|
||||
:[range]tc[l] << [endmarker]
|
||||
{script}
|
||||
{endmarker}
|
||||
Execute Tcl script {script}.
|
||||
@@ -38,9 +38,11 @@ comments, ideas etc to <Ingo.Wilken@informatik.uni-oldenburg.de>
|
||||
wasn't compiled in. To avoid errors, see
|
||||
|script-here|.
|
||||
|
||||
{endmarker} must NOT be preceded by any white space. If {endmarker} is
|
||||
omitted from after the "<<", a dot '.' must be used after {script}, like for
|
||||
the |:append| and |:insert| commands.
|
||||
The {endmarker} after {script} must NOT be preceded by any white space.
|
||||
|
||||
If [endmarker] is omitted from after the "<<", a dot '.' must be used after
|
||||
{script}, like for the |:append| and |:insert| commands.
|
||||
|
||||
This form of the |:tcl| command is mainly useful for including tcl code in Vim
|
||||
scripts.
|
||||
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
*indent.txt* For Vim version 8.1. Last change: 2019 Feb 21
|
||||
*indent.txt* For Vim version 8.1. Last change: 2019 Jul 21
|
||||
|
||||
|
||||
VIM REFERENCE MANUAL by Bram Moolenaar
|
||||
@@ -831,7 +831,7 @@ PHP indenting can be altered in several ways by modifying the values of some
|
||||
global variables:
|
||||
|
||||
*php-comment* *PHP_autoformatcomment*
|
||||
To not enable auto-formatting of comments by default (if you want to use your
|
||||
To not enable auto-formating of comments by default (if you want to use your
|
||||
own 'formatoptions'): >
|
||||
:let g:PHP_autoformatcomment = 0
|
||||
|
||||
@@ -901,7 +901,7 @@ NOTE: Indenting will be a bit slower if this option is used because some
|
||||
optimizations won't be available.
|
||||
-------------
|
||||
|
||||
*PHP_vintage_case_default_indent*
|
||||
*PHP_vintage_case_default_indent*
|
||||
To indent 'case:' and 'default:' statements in switch() blocks: >
|
||||
:let g:PHP_vintage_case_default_indent = 1
|
||||
|
||||
@@ -928,6 +928,41 @@ You will obtain the following result: >
|
||||
->age()
|
||||
->info();
|
||||
|
||||
-------------
|
||||
|
||||
*PHP_IndentFunctionCallParameters*
|
||||
Extra indentation levels to add to parameters in multi-line function calls. >
|
||||
let g:PHP_IndentFunctionCallParameters = 1
|
||||
|
||||
Function call arguments will indent 1 extra level. For two-space indentation: >
|
||||
|
||||
function call_the_thing(
|
||||
$with_this,
|
||||
$and_that
|
||||
) {
|
||||
$this->do_the_thing(
|
||||
$with_this,
|
||||
$and_that
|
||||
);
|
||||
}
|
||||
|
||||
-------------
|
||||
|
||||
*PHP_IndentFunctionDeclarationParameters*
|
||||
Extra indentation levels to add to arguments in multi-line function definitions. >
|
||||
let g:PHP_IndentFunctionDeclarationParameters = 1
|
||||
|
||||
Function arguments in declarations will indent 1 extra level. For two-space indentation: >
|
||||
|
||||
function call_the_thing(
|
||||
$with_this,
|
||||
$and_that
|
||||
) {
|
||||
$this->do_the_thing(
|
||||
$with_this,
|
||||
$and_that
|
||||
);
|
||||
}
|
||||
|
||||
|
||||
PYTHON *ft-python-indent*
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
*mbyte.txt* For Vim version 8.1. Last change: 2019 Apr 28
|
||||
*mbyte.txt* For Vim version 8.1. Last change: 2019 Jul 04
|
||||
|
||||
|
||||
VIM REFERENCE MANUAL by Bram Moolenaar et al.
|
||||
@@ -943,11 +943,12 @@ To input multibyte characters on Windows, you can use an Input Method Editor
|
||||
IME many many many times. Because IME with status on is hooking all of your
|
||||
key inputs, you cannot input 'j', 'k', or almost all of keys to Vim directly.
|
||||
|
||||
This |+multi_byte_ime| feature help this. It reduce times of switch status of
|
||||
IME manually. In normal mode, there are almost no need working IME, even
|
||||
editing multibyte text. So exiting insert mode with ESC, Vim memorize last
|
||||
status of IME and force turn off IME. When re-enter insert mode, Vim revert
|
||||
IME status to that memorized automatically.
|
||||
The |+multi_byte_ime| feature helps for this. It reduces the number of times
|
||||
the IME status has to be switched manually. In Normal mode, there is almost
|
||||
no need to use IME, even when editing multibyte text. So when exiting Insert
|
||||
mode, Vim memorizes the last status of IME and turns off IME. When
|
||||
re-entering Insert mode, Vim sets the IME status to that memorized status
|
||||
automatically.
|
||||
|
||||
This works on not only insert-normal mode, but also search-command input and
|
||||
replace mode.
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
*options.txt* For Vim version 8.1. Last change: 2019 Jun 27
|
||||
*options.txt* For Vim version 8.1. Last change: 2019 Jul 31
|
||||
|
||||
|
||||
VIM REFERENCE MANUAL by Bram Moolenaar
|
||||
@@ -1131,6 +1131,10 @@ A jump table for the options with a short description can be found at |Q_op|.
|
||||
v:beval_col column number (byte index)
|
||||
v:beval_text word under or after the mouse pointer
|
||||
|
||||
Instead of showing a balloon, which is limited to plain text, consider
|
||||
using a popup window, see |popup_beval_example|. A popup window can
|
||||
use highlighting and show a border.
|
||||
|
||||
The evaluation of the expression must not have side effects!
|
||||
Example: >
|
||||
function MyBalloonExpr()
|
||||
@@ -1142,8 +1146,10 @@ A jump table for the options with a short description can be found at |Q_op|.
|
||||
set bexpr=MyBalloonExpr()
|
||||
set ballooneval
|
||||
<
|
||||
Also see |balloon_show()|, can be used if the content of the balloon
|
||||
is to be fetched asynchronously.
|
||||
Also see |balloon_show()|, it can be used if the content of the balloon
|
||||
is to be fetched asynchronously. In that case evaluating
|
||||
'balloonexpr' should result in an empty string. If you get a balloon
|
||||
with only "0" you probably didn't return anything from your function.
|
||||
|
||||
NOTE: The balloon is displayed only if the cursor is on a text
|
||||
character. If the result of evaluating 'balloonexpr' is not empty,
|
||||
@@ -1155,7 +1161,7 @@ A jump table for the options with a short description can be found at |Q_op|.
|
||||
This option cannot be set in a modeline when 'modelineexpr' is off.
|
||||
|
||||
It is not allowed to change text or jump to another window while
|
||||
evaluating 'balloonexpr' |textlock|.
|
||||
evaluating 'balloonexpr', see |textlock|.
|
||||
|
||||
To check whether line breaks in the balloon text work use this check: >
|
||||
if has("balloon_multiline")
|
||||
@@ -1434,8 +1440,6 @@ A jump table for the options with a short description can be found at |Q_op|.
|
||||
*'cedit'*
|
||||
'cedit' string (Vi default: "", Vim default: CTRL-F)
|
||||
global
|
||||
{not available when compiled without the |+vertsplit|
|
||||
feature}
|
||||
The key used in Command-line Mode to open the command-line window.
|
||||
The default is CTRL-F when 'compatible' is off.
|
||||
Only non-printable keys are allowed.
|
||||
@@ -1638,8 +1642,6 @@ A jump table for the options with a short description can be found at |Q_op|.
|
||||
*'cmdwinheight'* *'cwh'*
|
||||
'cmdwinheight' 'cwh' number (default 7)
|
||||
global
|
||||
{not available when compiled without the |+vertsplit|
|
||||
feature}
|
||||
Number of screen lines to use for the command-line window. |cmdwin|
|
||||
|
||||
*'colorcolumn'* *'cc'*
|
||||
@@ -1872,6 +1874,21 @@ A jump table for the options with a short description can be found at |Q_op|.
|
||||
This option cannot be set from a |modeline| or in the |sandbox|, for
|
||||
security reasons.
|
||||
|
||||
*'completeslash'* *'csl'*
|
||||
'completeslash' 'csl' string (default: "")
|
||||
local to buffer
|
||||
{not in Vi} {only for MS-Windows}
|
||||
When this option is set it overrules 'shellslash' for completion:
|
||||
- When this option is set to "slash", a forward slash is used for path
|
||||
completion in insert mode. This is useful when editing HTML tag, or
|
||||
Makefile with 'noshellslash' on Windows.
|
||||
- When this option is set to "backslash", backslash is used. This is
|
||||
useful when editing a batch file with 'shellslash' set on Windows.
|
||||
- When this option is empty, same character is used as for
|
||||
'shellslash'.
|
||||
For Insert mode completion the buffer-local value is used. For
|
||||
command line completion the global value is used.
|
||||
|
||||
*'completeopt'* *'cot'*
|
||||
'completeopt' 'cot' string (default: "menu,preview")
|
||||
global
|
||||
@@ -2703,8 +2720,6 @@ A jump table for the options with a short description can be found at |Q_op|.
|
||||
*'eadirection'* *'ead'*
|
||||
'eadirection' 'ead' string (default "both")
|
||||
global
|
||||
{not available when compiled without the |+vertsplit|
|
||||
feature}
|
||||
Tells when the 'equalalways' option applies:
|
||||
ver vertically, width of windows is not affected
|
||||
hor horizontally, height of windows is not affected
|
||||
@@ -5625,7 +5640,16 @@ A jump table for the options with a short description can be found at |Q_op|.
|
||||
{not available when compiled without the |+windows| or
|
||||
|+quickfix| features}
|
||||
Default height for a preview window. Used for |:ptag| and associated
|
||||
commands. Used for |CTRL-W_}| when no count is given.
|
||||
commands. Used for |CTRL-W_}| when no count is given. Not used when
|
||||
'previewpopup' is set.
|
||||
|
||||
*'previewpopup'* *'pvp'*
|
||||
'previewpopup' 'pvp' string (default empty)
|
||||
global
|
||||
{not available when compiled without the |+windows|,
|
||||
|+textprop| or |+quickfix| feature}
|
||||
When not empty a popup window is used for commands that would open a
|
||||
preview window. See |preview-popup|.
|
||||
|
||||
*'previewwindow'* *'nopreviewwindow'*
|
||||
*'pvw'* *'nopvw'* *E590*
|
||||
@@ -6510,7 +6534,8 @@ A jump table for the options with a short description can be found at |Q_op|.
|
||||
'shellslash' only works when a backslash can be used as a path
|
||||
separator. To test if this is so use: >
|
||||
if exists('+shellslash')
|
||||
<
|
||||
< Also see 'completeslash'.
|
||||
|
||||
*'shelltemp'* *'stmp'* *'noshelltemp'* *'nostmp'*
|
||||
'shelltemp' 'stmp' boolean (Vi default off, Vim default on)
|
||||
global
|
||||
@@ -7055,8 +7080,6 @@ A jump table for the options with a short description can be found at |Q_op|.
|
||||
*'splitright'* *'spr'* *'nosplitright'* *'nospr'*
|
||||
'splitright' 'spr' boolean (default off)
|
||||
global
|
||||
{not available when compiled without the |+vertsplit|
|
||||
feature}
|
||||
When on, splitting a window will put the new window right of the
|
||||
current one. |:vsplit|
|
||||
|
||||
@@ -8765,8 +8788,6 @@ A jump table for the options with a short description can be found at |Q_op|.
|
||||
*'winminwidth'* *'wmw'*
|
||||
'winminwidth' 'wmw' number (default 1)
|
||||
global
|
||||
{not available when compiled without the |+vertsplit|
|
||||
feature}
|
||||
The minimal width of a window, when it's not the current window.
|
||||
This is a hard minimum, windows will never become smaller.
|
||||
When set to zero, windows may be "squashed" to zero columns (i.e. just
|
||||
@@ -8794,8 +8815,6 @@ A jump table for the options with a short description can be found at |Q_op|.
|
||||
*'winwidth'* *'wiw'* *E592*
|
||||
'winwidth' 'wiw' number (default 20)
|
||||
global
|
||||
{not available when compiled without the |+vertsplit|
|
||||
feature}
|
||||
Minimal number of columns for the current window. This is not a hard
|
||||
minimum, Vim will use fewer columns if there is not enough room. If
|
||||
the current window is smaller, its size is increased, at the cost of
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
*pi_netrw.txt* For Vim version 8.1. Last change: 2019 May 05
|
||||
*pi_netrw.txt* For Vim version 8.1. Last change: 2019 Jul 17
|
||||
|
||||
------------------------------------------------
|
||||
NETRW REFERENCE MANUAL by Charles E. Campbell
|
||||
@@ -1184,7 +1184,7 @@ One may easily "bookmark" the currently browsed directory by using >
|
||||
*.netrwbook*
|
||||
Bookmarks are retained in between sessions of vim in a file called .netrwbook
|
||||
as a |List|, which is typically stored in the first directory on the user's
|
||||
'|runtimepath|'; entries are kept in sorted order.
|
||||
'runtimepath'; entries are kept in sorted order.
|
||||
|
||||
If there are marked files and/or directories, mb will add them to the bookmark
|
||||
list.
|
||||
@@ -2094,7 +2094,7 @@ track netrw's browsing directory.
|
||||
|
||||
However, given the default setting for g:netrw_keepdir of 1 where netrw
|
||||
maintains its own separate notion of the current directory, in order to make
|
||||
the two directories the same, use the "c" map (just type c). That map will
|
||||
the two directories the same, use the "cd" map (type cd). That map will
|
||||
set Vim's notion of the current directory to netrw's current browsing
|
||||
directory.
|
||||
|
||||
@@ -2739,7 +2739,7 @@ your browsing preferences. (see also: |netrw-settings|)
|
||||
=0 : show all
|
||||
=1 : show not-hidden files
|
||||
=2 : show hidden files only
|
||||
default: =0
|
||||
default: =1
|
||||
|
||||
*g:netrw_home* The home directory for where bookmarks and
|
||||
history are saved (as .netrwbook and
|
||||
@@ -2940,14 +2940,23 @@ your browsing preferences. (see also: |netrw-settings|)
|
||||
|
||||
netrwBak : *.bak
|
||||
netrwCompress: *.gz *.bz2 *.Z *.zip
|
||||
netrwCoreDump: core.\d\+
|
||||
netrwData : *.dat
|
||||
netrwDoc : *.doc,*.txt,*.pdf,
|
||||
*.pdf,*.docx
|
||||
netrwHdr : *.h
|
||||
netrwLex : *.l *.lex
|
||||
netrwLib : *.a *.so *.lib *.dll
|
||||
netrwMakefile: [mM]akefile *.mak
|
||||
netrwObj : *.o *.obj
|
||||
netrwPix : *.bmp,*.fit,*.fits,*.gif,
|
||||
*.jpg,*.jpeg,*.pcx,*.ppc
|
||||
*.pgm,*.png,*.psd,*.rgb
|
||||
*.tif,*.xbm,*.xcf
|
||||
netrwTags : tags ANmenu ANtags
|
||||
netrwTilde : *
|
||||
netrwTmp : tmp* *tmp
|
||||
netrwYacc : *.y
|
||||
|
||||
In addition, those groups mentioned in
|
||||
|'suffixes'| are also added to the special
|
||||
@@ -3032,8 +3041,9 @@ your browsing preferences. (see also: |netrw-settings|)
|
||||
current netrw buffer's window to be used for
|
||||
the new window.
|
||||
If g:netrw_winsize is less than zero, then
|
||||
the absolute value of g:netrw_winsize lines
|
||||
or columns will be used for the new window.
|
||||
the absolute value of g:netrw_winsize will be
|
||||
used to specify the quantity of lines or
|
||||
columns for the new window.
|
||||
If g:netrw_winsize is zero, then a normal
|
||||
split will be made (ie. |'equalalways'| will
|
||||
take effect, for example).
|
||||
@@ -3371,7 +3381,7 @@ Example: Clear netrw's marked file list via a mapping on gu >
|
||||
(This section is likely to grow as I get feedback)
|
||||
(also see |netrw-debug|)
|
||||
*netrw-p1*
|
||||
P1. I use windows 95, and my ftp dumps four blank lines at the
|
||||
P1. I use windows 95, and my ftp dumps four blank lines at the {{{2
|
||||
end of every read.
|
||||
|
||||
See |netrw-fixup|, and put the following into your
|
||||
@@ -3380,7 +3390,7 @@ Example: Clear netrw's marked file list via a mapping on gu >
|
||||
let g:netrw_win95ftp= 1
|
||||
|
||||
*netrw-p2*
|
||||
P2. I use Windows, and my network browsing with ftp doesn't sort by
|
||||
P2. I use Windows, and my network browsing with ftp doesn't sort by {{{2
|
||||
time or size! -or- The remote system is a Windows server; why
|
||||
don't I get sorts by time or size?
|
||||
|
||||
@@ -3407,7 +3417,7 @@ Example: Clear netrw's marked file list via a mapping on gu >
|
||||
|
||||
|
||||
*netrw-p3*
|
||||
P3. I tried rcp://user@host/ (or protocol other than ftp) and netrw
|
||||
P3. I tried rcp://user@host/ (or protocol other than ftp) and netrw {{{2
|
||||
used ssh! That wasn't what I asked for...
|
||||
|
||||
Netrw has two methods for browsing remote directories: ssh
|
||||
@@ -3416,7 +3426,7 @@ Example: Clear netrw's marked file list via a mapping on gu >
|
||||
listing), netrw will use the given protocol to do so.
|
||||
|
||||
*netrw-p4*
|
||||
P4. I would like long listings to be the default.
|
||||
P4. I would like long listings to be the default. {{{2
|
||||
|
||||
Put the following statement into your |.vimrc|: >
|
||||
|
||||
@@ -3426,7 +3436,7 @@ Example: Clear netrw's marked file list via a mapping on gu >
|
||||
you can set.
|
||||
|
||||
*netrw-p5*
|
||||
P5. My times come up oddly in local browsing
|
||||
P5. My times come up oddly in local browsing {{{2
|
||||
|
||||
Does your system's strftime() accept the "%c" to yield dates
|
||||
such as "Sun Apr 27 11:49:23 1997"? If not, do a
|
||||
@@ -3436,7 +3446,7 @@ Example: Clear netrw's marked file list via a mapping on gu >
|
||||
let g:netrw_timefmt= "%X" (where X is the option)
|
||||
<
|
||||
*netrw-p6*
|
||||
P6. I want my current directory to track my browsing.
|
||||
P6. I want my current directory to track my browsing. {{{2
|
||||
How do I do that?
|
||||
|
||||
Put the following line in your |.vimrc|:
|
||||
@@ -3444,8 +3454,8 @@ Example: Clear netrw's marked file list via a mapping on gu >
|
||||
let g:netrw_keepdir= 0
|
||||
<
|
||||
*netrw-p7*
|
||||
P7. I use Chinese (or other non-ascii) characters in my filenames, and
|
||||
netrw (Explore, Sexplore, Hexplore, etc) doesn't display them!
|
||||
P7. I use Chinese (or other non-ascii) characters in my filenames, {{{2
|
||||
and netrw (Explore, Sexplore, Hexplore, etc) doesn't display them!
|
||||
|
||||
(taken from an answer provided by Wu Yongwei on the vim
|
||||
mailing list)
|
||||
@@ -3459,7 +3469,7 @@ Example: Clear netrw's marked file list via a mapping on gu >
|
||||
(...it is one more reason to recommend that people use utf-8!)
|
||||
|
||||
*netrw-p8*
|
||||
P8. I'm getting "ssh is not executable on your system" -- what do I
|
||||
P8. I'm getting "ssh is not executable on your system" -- what do I {{{2
|
||||
do?
|
||||
|
||||
(Dudley Fox) Most people I know use putty for windows ssh. It
|
||||
@@ -3502,7 +3512,7 @@ Example: Clear netrw's marked file list via a mapping on gu >
|
||||
- Click "Add..."
|
||||
- Set External Editor (adjust path as needed, include
|
||||
the quotes and !.! at the end):
|
||||
"c:\Program Files\Vim\vim81\gvim.exe" !.!
|
||||
"c:\Program Files\Vim\vim70\gvim.exe" !.!
|
||||
- Check that the filetype in the box below is
|
||||
{asterisk}.{asterisk} (all files), or whatever types
|
||||
you want (cec: change {asterisk} to * ; I had to
|
||||
@@ -3542,7 +3552,7 @@ Example: Clear netrw's marked file list via a mapping on gu >
|
||||
default.
|
||||
|
||||
*netrw-p9* *netrw-ml_get*
|
||||
P9. I'm browsing, changing directory, and bang! ml_get errors
|
||||
P9. I'm browsing, changing directory, and bang! ml_get errors {{{2
|
||||
appear and I have to kill vim. Any way around this?
|
||||
|
||||
Normally netrw attempts to avoid writing swapfiles for
|
||||
@@ -3553,7 +3563,7 @@ Example: Clear netrw's marked file list via a mapping on gu >
|
||||
let g:netrw_use_noswf= 0
|
||||
<
|
||||
*netrw-p10*
|
||||
P10. I'm being pestered with "[something] is a directory" and
|
||||
P10. I'm being pestered with "[something] is a directory" and {{{2
|
||||
"Press ENTER or type command to continue" prompts...
|
||||
|
||||
The "[something] is a directory" prompt is issued by Vim,
|
||||
@@ -3564,8 +3574,8 @@ Example: Clear netrw's marked file list via a mapping on gu >
|
||||
your <.vimrc> file.
|
||||
|
||||
*netrw-p11*
|
||||
P11. I want to have two windows; a thin one on the left and my editing
|
||||
window on the right. How may I accomplish this?
|
||||
P11. I want to have two windows; a thin one on the left and my {{{2
|
||||
editing window on the right. How may I accomplish this?
|
||||
|
||||
You probably want netrw running as in a side window. If so, you
|
||||
will likely find that ":[N]Lexplore" does what you want. The
|
||||
@@ -3590,7 +3600,7 @@ Example: Clear netrw's marked file list via a mapping on gu >
|
||||
|
||||
|
||||
*netrw-p12*
|
||||
P12. My directory isn't sorting correctly, or unwanted letters are
|
||||
P12. My directory isn't sorting correctly, or unwanted letters are {{{2
|
||||
appearing in the listed filenames, or things aren't lining
|
||||
up properly in the wide listing, ...
|
||||
|
||||
@@ -3600,9 +3610,9 @@ Example: Clear netrw's marked file list via a mapping on gu >
|
||||
You may need to change |g:netrw_sepchr| and/or |g:netrw_xstrlen|.
|
||||
|
||||
*netrw-p13*
|
||||
P13. I'm a Windows + putty + ssh user, and when I attempt to browse,
|
||||
the directories are missing trailing "/"s so netrw treats them
|
||||
as file transfers instead of as attempts to browse
|
||||
P13. I'm a Windows + putty + ssh user, and when I attempt to {{{2
|
||||
browse, the directories are missing trailing "/"s so netrw treats
|
||||
them as file transfers instead of as attempts to browse
|
||||
subdirectories. How may I fix this?
|
||||
|
||||
(mikeyao) If you want to use vim via ssh and putty under Windows,
|
||||
@@ -3621,7 +3631,7 @@ Example: Clear netrw's marked file list via a mapping on gu >
|
||||
"let g:netrw_scp_cmd = "d:\\dev\\putty\\PSCP.exe"
|
||||
<
|
||||
*netrw-p14*
|
||||
P14. I would like to speed up writes using Nwrite and scp/ssh
|
||||
P14. I would like to speed up writes using Nwrite and scp/ssh {{{2
|
||||
style connections. How? (Thomer M. Gil)
|
||||
|
||||
Try using ssh's ControlMaster and ControlPath (see the ssh_config
|
||||
@@ -3648,8 +3658,8 @@ Example: Clear netrw's marked file list via a mapping on gu >
|
||||
vim scp://host.domain.com//home/user/.bashrc
|
||||
<
|
||||
*netrw-p15*
|
||||
P15. How may I use a double-click instead of netrw's usual single click
|
||||
to open a file or directory? (Ben Fritz)
|
||||
P15. How may I use a double-click instead of netrw's usual single {{{2
|
||||
click to open a file or directory? (Ben Fritz)
|
||||
|
||||
First, disable netrw's mapping with >
|
||||
let g:netrw_mousemaps= 0
|
||||
@@ -3661,7 +3671,7 @@ Example: Clear netrw's marked file list via a mapping on gu >
|
||||
(see |g:netrw_mousemaps|)
|
||||
|
||||
*netrw-p16*
|
||||
P16. When editing remote files (ex. :e ftp://hostname/path/file),
|
||||
P16. When editing remote files (ex. :e ftp://hostname/path/file), {{{2
|
||||
under Windows I get an |E303| message complaining that its unable
|
||||
to open a swap file.
|
||||
|
||||
@@ -3670,7 +3680,7 @@ Example: Clear netrw's marked file list via a mapping on gu >
|
||||
directory.
|
||||
|
||||
*netrw-p17*
|
||||
P17. Netrw is closing buffers on its own.
|
||||
P17. Netrw is closing buffers on its own. {{{2
|
||||
What steps will reproduce the problem?
|
||||
1. :Explore, navigate directories, open a file
|
||||
2. :Explore, open another file
|
||||
@@ -3684,14 +3694,14 @@ Example: Clear netrw's marked file list via a mapping on gu >
|
||||
a ":ls!" will show them (although ":ls" does not).
|
||||
|
||||
*netrw-P18*
|
||||
P18. How to locally edit a file that's only available via
|
||||
P18. How to locally edit a file that's only available via {{{2
|
||||
another server accessible via ssh?
|
||||
See http://stackoverflow.com/questions/12469645/
|
||||
"Using Vim to Remotely Edit A File on ServerB Only
|
||||
Accessible From ServerA"
|
||||
|
||||
*netrw-P19*
|
||||
P19. How do I get numbering on in directory listings?
|
||||
P19. How do I get numbering on in directory listings? {{{2
|
||||
With |g:netrw_bufsettings|, you can control netrw's buffer
|
||||
settings; try putting >
|
||||
let g:netrw_bufsettings="noma nomod nu nobl nowrap ro nornu"
|
||||
@@ -3700,7 +3710,7 @@ Example: Clear netrw's marked file list via a mapping on gu >
|
||||
let g:netrw_bufsettings="noma nomod nonu nobl nowrap ro rnu"
|
||||
<
|
||||
*netrw-P20*
|
||||
P20. How may I have gvim start up showing a directory listing?
|
||||
P20. How may I have gvim start up showing a directory listing? {{{2
|
||||
Try putting the following code snippet into your .vimrc: >
|
||||
augroup VimStartup
|
||||
au!
|
||||
@@ -3713,8 +3723,8 @@ Example: Clear netrw's marked file list via a mapping on gu >
|
||||
(ie. a "huge" vim version).
|
||||
|
||||
*netrw-P21*
|
||||
P21. I've made a directory (or file) with an accented character, but
|
||||
netrw isn't letting me enter that directory/read that file:
|
||||
P21. I've made a directory (or file) with an accented character, {{{2
|
||||
but netrw isn't letting me enter that directory/read that file:
|
||||
|
||||
Its likely that the shell or o/s is using a different encoding
|
||||
than you have vim (netrw) using. A patch to vim supporting
|
||||
@@ -3724,7 +3734,7 @@ Example: Clear netrw's marked file list via a mapping on gu >
|
||||
au FileType netrw set enc=latin1
|
||||
<
|
||||
*netrw-P22*
|
||||
P22. I get an error message when I try to copy or move a file:
|
||||
P22. I get an error message when I try to copy or move a file: {{{2
|
||||
|
||||
**error** (netrw) tried using g:netrw_localcopycmd<cp>; it doesn't work!
|
||||
|
||||
@@ -3752,8 +3762,8 @@ by obtaining a copy of the latest (often developmental) netrw at:
|
||||
|
||||
The <netrw.vim> script is typically installed on systems as something like:
|
||||
>
|
||||
/usr/local/share/vim/vim8x/plugin/netrwPlugin.vim
|
||||
/usr/local/share/vim/vim8x/autoload/netrw.vim
|
||||
/usr/local/share/vim/vim7x/plugin/netrwPlugin.vim
|
||||
/usr/local/share/vim/vim7x/autoload/netrw.vim
|
||||
(see output of :echo &rtp)
|
||||
<
|
||||
which is loaded automatically at startup (assuming :set nocp). If you
|
||||
@@ -3832,6 +3842,16 @@ netrw:
|
||||
==============================================================================
|
||||
12. History *netrw-history* {{{1
|
||||
|
||||
v163: Dec 05, 2017 * (Cristi Balan) reported that a setting ('sel')
|
||||
was left changed
|
||||
* (Holger Mitschke) reported a problem with
|
||||
saving and restoring history. Fixed.
|
||||
* Hopefully I fixed a nasty bug that caused a
|
||||
file rename to wipe out a buffer that it
|
||||
should not have wiped out.
|
||||
* (Holger Mitschke) amended this help file
|
||||
with additional |g:netrw_special_syntax|
|
||||
items
|
||||
v162: Sep 19, 2016 * (haya14busa) pointed out two syntax errors
|
||||
with a patch; these are now fixed.
|
||||
Oct 26, 2016 * I started using mate-terminal and found that
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
*popup.txt* For Vim version 8.1. Last change: 2019 Jul 04
|
||||
*popup.txt* For Vim version 8.1. Last change: 2019 Aug 01
|
||||
|
||||
|
||||
VIM REFERENCE MANUAL by Bram Moolenaar
|
||||
@@ -170,6 +170,7 @@ Filter functions:
|
||||
Other:
|
||||
|popup_getoptions()| get current options for a popup
|
||||
|popup_getpos()| get actual position and size of a popup
|
||||
|popup_locate()| find popup window at a screen position
|
||||
|
||||
|
||||
DETAILS *popup-function-details*
|
||||
@@ -177,11 +178,11 @@ DETAILS *popup-function-details*
|
||||
popup_atcursor({what}, {options}) *popup_atcursor()*
|
||||
Show the {what} above the cursor, and close it when the cursor
|
||||
moves. This works like: >
|
||||
call popup_create({what}, {
|
||||
\ 'pos': 'botleft',
|
||||
\ 'line': 'cursor-1',
|
||||
\ 'col': 'cursor',
|
||||
\ 'moved': 'WORD',
|
||||
call popup_create({what}, #{
|
||||
\ pos: 'botleft',
|
||||
\ line: 'cursor-1',
|
||||
\ col: 'cursor',
|
||||
\ moved: 'WORD',
|
||||
\ })
|
||||
< Use {options} to change the properties.
|
||||
|
||||
@@ -190,11 +191,11 @@ popup_beval({what}, {options}) *popup_beval()*
|
||||
Show the {what} above the position from 'ballooneval' and
|
||||
close it when the mouse moves. This works like: >
|
||||
let pos = screenpos(v:beval_winnr, v:beval_lnum, v:beval_col)
|
||||
call popup_create({what}, {
|
||||
\ 'pos': 'botleft',
|
||||
\ 'line': pos.row - 1,
|
||||
\ 'col': pos.col,
|
||||
\ 'mousemoved': 'WORD',
|
||||
call popup_create({what}, #{
|
||||
\ pos: 'botleft',
|
||||
\ line: pos.row - 1,
|
||||
\ col: pos.col,
|
||||
\ mousemoved: 'WORD',
|
||||
\ })
|
||||
< Use {options} to change the properties.
|
||||
See |popup_beval_example| for an example use.
|
||||
@@ -239,18 +240,19 @@ popup_create({what}, {options}) *popup_create()*
|
||||
|
||||
popup_dialog({what}, {options}) *popup_dialog()*
|
||||
Just like |popup_create()| but with these default options: >
|
||||
call popup_create({what}, {
|
||||
\ 'pos': 'center',
|
||||
\ 'zindex': 200,
|
||||
\ 'drag': 1,
|
||||
\ 'border': [],
|
||||
\ 'padding': [],
|
||||
call popup_create({what}, #{
|
||||
\ pos: 'center',
|
||||
\ zindex: 200,
|
||||
\ drag: 1,
|
||||
\ border: [],
|
||||
\ padding: [],
|
||||
\ mapping: 0,
|
||||
\})
|
||||
< Use {options} to change the properties. E.g. add a 'filter'
|
||||
option with value 'popup_filter_yesno'. Example: >
|
||||
call popup_create('do you want to quit (Yes/no)?', {
|
||||
\ 'filter': 'popup_filter_yesno',
|
||||
\ 'callback': 'QuitCallback',
|
||||
call popup_create('do you want to quit (Yes/no)?', #{
|
||||
\ filter: 'popup_filter_yesno',
|
||||
\ callback: 'QuitCallback',
|
||||
\ })
|
||||
|
||||
< By default the dialog can be dragged, so that text below it
|
||||
@@ -302,7 +304,7 @@ popup_getoptions({id}) *popup_getoptions()*
|
||||
zero. When all values are one then an empty list is included.
|
||||
|
||||
"borderhighlight" is not included when all values are empty.
|
||||
"scrollbarhighlight" and "thumbhighlight" are onlu included
|
||||
"scrollbarhighlight" and "thumbhighlight" are only included
|
||||
when set.
|
||||
|
||||
"tabpage" will be -1 for a global popup, zero for a popup on
|
||||
@@ -334,6 +336,10 @@ popup_getpos({id}) *popup_getpos()*
|
||||
|
||||
If popup window {id} is not found an empty Dict is returned.
|
||||
|
||||
popup_getpreview() *popup_getpreview()*
|
||||
Get the |window-ID| for the popup preview window.
|
||||
Return zero if there is none.
|
||||
|
||||
|
||||
popup_hide({id}) *popup_hide()*
|
||||
If {id} is a displayed popup, hide it now. If the popup has a
|
||||
@@ -343,25 +349,41 @@ popup_hide({id}) *popup_hide()*
|
||||
exists but is not a popup window an error is given. *E993*
|
||||
|
||||
|
||||
popup_locate({row}, {col}) *popup_locate()*
|
||||
Return the |window-ID| of the popup at screen position {row}
|
||||
and {col}. If there are multiple popups the one with the
|
||||
highest zindex is returned. If there are no popups at this
|
||||
position then zero is returned.
|
||||
|
||||
|
||||
popup_menu({what}, {options}) *popup_menu()*
|
||||
Show the {what} near the cursor, handle selecting one of the
|
||||
items with cursorkeys, and close it an item is selected with
|
||||
Space or Enter. {what} should have multiple lines to make this
|
||||
useful. This works like: >
|
||||
call popup_create({what}, {
|
||||
\ 'pos': 'center',
|
||||
\ 'zindex': 200,
|
||||
\ 'drag': 1,
|
||||
\ 'wrap': 0,
|
||||
\ 'border': [],
|
||||
\ 'padding': [],
|
||||
\ 'filter': 'popup_filter_menu',
|
||||
call popup_create({what}, #{
|
||||
\ pos: 'center',
|
||||
\ zindex: 200,
|
||||
\ drag: 1,
|
||||
\ wrap: 0,
|
||||
\ border: [],
|
||||
\ cursorline: 1,
|
||||
\ padding: [0,1,0,1],
|
||||
\ filter: 'popup_filter_menu',
|
||||
\ mapping: 0,
|
||||
\ })
|
||||
< The current line is highlighted with a match using
|
||||
"PopupSelected", or "PmenuSel" if that is not defined.
|
||||
|
||||
Use {options} to change the properties. Should at least set
|
||||
"callback" to a function that handles the selected item.
|
||||
Example: >
|
||||
func ColorSelected(id, result)
|
||||
" use a:result
|
||||
endfunc
|
||||
call popup_menu(['red', 'green', 'blue'], #{
|
||||
\ callback: 'ColorSelected',
|
||||
\ })
|
||||
|
||||
|
||||
popup_move({id}, {options}) *popup_move()*
|
||||
@@ -383,18 +405,18 @@ popup_move({id}, {options}) *popup_move()*
|
||||
popup_notification({what}, {options}) *popup_notification()*
|
||||
Show the {what} for 3 seconds at the top of the Vim window.
|
||||
This works like: >
|
||||
call popup_create({what}, {
|
||||
\ 'line': 1,
|
||||
\ 'col': 10,
|
||||
\ 'minwidth': 20,
|
||||
\ 'time': 3000,
|
||||
\ 'tabpage': -1,
|
||||
\ 'zindex': 300,
|
||||
\ 'drag': 1,
|
||||
\ 'highlight': 'WarningMsg',
|
||||
\ 'border': [],
|
||||
\ 'close': 'click',
|
||||
\ 'padding': [0,1,0,1],
|
||||
call popup_create({what}, #{
|
||||
\ line: 1,
|
||||
\ col: 10,
|
||||
\ minwidth: 20,
|
||||
\ time: 3000,
|
||||
\ tabpage: -1,
|
||||
\ zindex: 300,
|
||||
\ drag: 1,
|
||||
\ highlight: 'WarningMsg',
|
||||
\ border: [],
|
||||
\ close: 'click',
|
||||
\ padding: [0,1,0,1],
|
||||
\ })
|
||||
< The PopupNotification highlight group is used instead of
|
||||
WarningMsg if it is defined.
|
||||
@@ -420,14 +442,17 @@ popup_setoptions({id}, {options}) *popup_setoptions()*
|
||||
borderhighlight
|
||||
callback
|
||||
close
|
||||
cursorline
|
||||
drag
|
||||
filter
|
||||
firstline
|
||||
flip
|
||||
highlight
|
||||
mapping
|
||||
mask
|
||||
moved
|
||||
padding
|
||||
resize
|
||||
scrollbar
|
||||
scrollbarhighlight
|
||||
thumbhighlight
|
||||
@@ -501,10 +526,10 @@ The second argument of |popup_create()| is a dictionary with options:
|
||||
padding.
|
||||
minheight Minimum height of the contents, excluding border and
|
||||
padding.
|
||||
maxwidth Maximum width of the contents, excluding border and
|
||||
padding.
|
||||
minwidth Minimum width of the contents, excluding border and
|
||||
padding.
|
||||
maxwidth Maximum width of the contents, excluding border,
|
||||
padding and scrollbar.
|
||||
minwidth Minimum width of the contents, excluding border,
|
||||
padding and scrollbar.
|
||||
firstline First buffer line to display. When larger than one it
|
||||
looks like the text scrolled up. When out of range
|
||||
the last buffer line will at the top of the window.
|
||||
@@ -528,6 +553,9 @@ The second argument of |popup_create()| is a dictionary with options:
|
||||
popup does not have a border. As soon as dragging
|
||||
starts and "pos" is "center" it is changed to
|
||||
"topleft".
|
||||
resize TRUE to allow the popup to be resized with the mouse
|
||||
by grabbing at at the bottom right cornder. Has no
|
||||
effect if the popup does not have a border.
|
||||
close When "button" an X is displayed in the top-right, on
|
||||
top of any border, padding or text. When clicked on
|
||||
the X the popup will close. Any callback is invoked
|
||||
@@ -590,8 +618,16 @@ The second argument of |popup_create()| is a dictionary with options:
|
||||
{start} or after {end}
|
||||
The popup also closes if the cursor moves to another
|
||||
line or to another window.
|
||||
cursorline non-zero: Highlight the cursor line. Also scrolls the
|
||||
text to show this line (only works properly
|
||||
when 'wrap' is off).
|
||||
zero: Do not highlight the cursor line.
|
||||
Default is zero, except for |popup_menu()|.
|
||||
filter A callback that can filter typed characters, see
|
||||
|popup-filter|.
|
||||
mapping Allow for key mapping. When FALSE and the popup is
|
||||
visible and has a filter callback key mapping is
|
||||
disabled. Default value is TRUE.
|
||||
callback A callback that is called when the popup closes, e.g.
|
||||
when using |popup_filter_menu()|, see |popup-callback|.
|
||||
|
||||
@@ -648,8 +684,11 @@ key as a string, e.g.: >
|
||||
endif
|
||||
return 0
|
||||
endfunc
|
||||
|
||||
Currently the key is what results after any mapping. This may change...
|
||||
< *popup-mapping*
|
||||
Normally the key is what results after any mapping, since the keys pass on as
|
||||
normal input if the filter does not use it. If the filter consumes all the
|
||||
keys, set the "mapping" property to zero so that mappings do not get in the
|
||||
way. This is default for |popup_menu()| and |popup_dialog()|.
|
||||
|
||||
Some common key actions:
|
||||
x close the popup (see note below)
|
||||
@@ -680,6 +719,11 @@ the second argument of `popup_close()`.
|
||||
If the popup is force-closed, e.g. because the cursor moved or CTRL-C was
|
||||
pressed, the number -1 is passed to the callback.
|
||||
|
||||
Example: >
|
||||
func SelectedColor(id, result)
|
||||
echo 'choice made: ' .. a:result
|
||||
endfunc
|
||||
|
||||
|
||||
POPUP SCROLLBAR *popup-scrollbar*
|
||||
|
||||
@@ -687,9 +731,9 @@ If the text does not fit in the popup a scrollbar is displayed on the right of
|
||||
the window. This can be disabled by setting the "scrollbar" option to zero.
|
||||
When the scrollbar is displayed mouse scroll events, while the mouse pointer
|
||||
is on the popup, will cause the text to scroll up or down as you would expect.
|
||||
A click in the upper halve of the scrollbar will scroll the text one line
|
||||
down. A click in the lower halve wil scroll the text one line up. However,
|
||||
this is limited so that the popup does not get smaller.
|
||||
A click in the upper half of the scrollbar will scroll the text down one line.
|
||||
A click in the lower half will scroll the text up one line. However, this is
|
||||
limited so that the popup does not get smaller.
|
||||
|
||||
|
||||
POPUP MASK *popup-mask*
|
||||
@@ -701,7 +745,7 @@ list has four numbers:
|
||||
leftmost, negative for counting from the right, -1 for
|
||||
rightmost
|
||||
endcol last column, like "col"
|
||||
line start line, positive for conting from the top, 1 for top,
|
||||
line start line, positive for counting from the top, 1 for top,
|
||||
negative for counting from the bottom, -1 for bottom
|
||||
endline end line, like "line"
|
||||
|
||||
@@ -724,17 +768,17 @@ Prompt the user to press y/Y or n/N: >
|
||||
endif
|
||||
endfunc
|
||||
|
||||
call popup_dialog('Continue? y/n', {
|
||||
\ 'filter': 'popup_filter_yesno',
|
||||
\ 'callback': 'MyDialogHandler',
|
||||
call popup_dialog('Continue? y/n', #{
|
||||
\ filter: 'popup_filter_yesno',
|
||||
\ callback: 'MyDialogHandler',
|
||||
\ })
|
||||
<
|
||||
*popup_menu-shortcut-example*
|
||||
Extend popup_filter_menu() with shortcut keys: >
|
||||
|
||||
call popup_menu(['Save', 'Cancel', 'Discard'], {
|
||||
\ 'filter': 'MyMenuFilter',
|
||||
\ 'callback': 'MyMenuHandler',
|
||||
call popup_menu(['Save', 'Cancel', 'Discard'], #{
|
||||
\ filter: 'MyMenuFilter',
|
||||
\ callback: 'MyMenuHandler',
|
||||
\ })
|
||||
|
||||
func MyMenuFilter(id, key)
|
||||
@@ -773,7 +817,7 @@ Example for using a popup window for 'ballooneval': >
|
||||
endif
|
||||
call popup_close(s:winid)
|
||||
endif
|
||||
let s:winid = popup_beval(v:beval_text, {'mousemoved': 'word'})
|
||||
let s:winid = popup_beval(v:beval_text, #{mousemoved: 'word'})
|
||||
let s:last_text = v:beval_text
|
||||
return ''
|
||||
endfunc
|
||||
@@ -804,7 +848,7 @@ this example simulated with a timer callback: >
|
||||
endfunc
|
||||
|
||||
func ShowPopup(id)
|
||||
let s:winid = popup_beval(s:balloonText, {'mousemoved': 'word'})
|
||||
let s:winid = popup_beval(s:balloonText, #{mousemoved: 'word'})
|
||||
endfunc
|
||||
<
|
||||
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
*quickfix.txt* For Vim version 8.1. Last change: 2019 Jun 02
|
||||
*quickfix.txt* For Vim version 8.1. Last change: 2019 Jul 15
|
||||
|
||||
|
||||
VIM REFERENCE MANUAL by Bram Moolenaar
|
||||
@@ -650,9 +650,9 @@ You can use CTRL-W <Enter> to open a new window and jump to the error there.
|
||||
|
||||
When the quickfix window has been filled, two autocommand events are
|
||||
triggered. First the 'filetype' option is set to "qf", which triggers the
|
||||
FileType event. Then the BufReadPost event is triggered, using "quickfix" for
|
||||
the buffer name. This can be used to perform some action on the listed
|
||||
errors. Example: >
|
||||
FileType event (also see |qf.vim|). Then the BufReadPost event is triggered,
|
||||
using "quickfix" for the buffer name. This can be used to perform some action
|
||||
on the listed errors. Example: >
|
||||
au BufReadPost quickfix setlocal modifiable
|
||||
\ | silent exe 'g/^/s//\=line(".")." "/'
|
||||
\ | setlocal nomodifiable
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
*quickref.txt* For Vim version 8.1. Last change: 2019 May 31
|
||||
*quickref.txt* For Vim version 8.1. Last change: 2019 Jul 18
|
||||
|
||||
|
||||
VIM REFERENCE MANUAL by Bram Moolenaar
|
||||
@@ -829,6 +829,7 @@ Short explanation of each option: *option-list*
|
||||
'perldll' name of the Perl dynamic library
|
||||
'preserveindent' 'pi' preserve the indent structure when reindenting
|
||||
'previewheight' 'pvh' height of the preview window
|
||||
'previewpopup' 'pvp' use popup window for preview
|
||||
'previewwindow' 'pvw' identifies the preview window
|
||||
'printdevice' 'pdev' name of the printer to be used for :hardcopy
|
||||
'printencoding' 'penc' encoding to be used for printing
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
*sign.txt* For Vim version 8.1. Last change: 2019 Jun 04
|
||||
*sign.txt* For Vim version 8.1. Last change: 2019 Jul 21
|
||||
|
||||
|
||||
VIM REFERENCE MANUAL by Gordon Prieur
|
||||
@@ -9,6 +9,7 @@ Sign Support Features *sign-support*
|
||||
|
||||
1. Introduction |sign-intro|
|
||||
2. Commands |sign-commands|
|
||||
3. Functions |sign-functions-details|
|
||||
|
||||
{only available when compiled with the |+signs| feature}
|
||||
|
||||
@@ -344,4 +345,357 @@ See |sign_jump()| for the equivalent Vim script function.
|
||||
Same but jump to the sign in group {group}
|
||||
|
||||
|
||||
==============================================================================
|
||||
3. Functions *sign-functions-details*
|
||||
|
||||
sign_define({name} [, {dict}]) *sign_define()*
|
||||
sign_define({list})
|
||||
Define a new sign named {name} or modify the attributes of an
|
||||
existing sign. This is similar to the |:sign-define| command.
|
||||
|
||||
Prefix {name} with a unique text to avoid name collisions.
|
||||
There is no {group} like with placing signs.
|
||||
|
||||
The {name} can be a String or a Number. The optional {dict}
|
||||
argument specifies the sign attributes. The following values
|
||||
are supported:
|
||||
icon full path to the bitmap file for the sign.
|
||||
linehl highlight group used for the whole line the
|
||||
sign is placed in.
|
||||
text text that is displayed when there is no icon
|
||||
or the GUI is not being used.
|
||||
texthl highlight group used for the text item
|
||||
|
||||
If the sign named {name} already exists, then the attributes
|
||||
of the sign are updated.
|
||||
|
||||
The one argument {list} can be used to define a list of signs.
|
||||
Each list item is a dictionary with the above items in {dict}
|
||||
and a 'name' item for the sign name.
|
||||
|
||||
Returns 0 on success and -1 on failure. When the one argument
|
||||
{list} is used, then returns a List of values one for each
|
||||
defined sign.
|
||||
|
||||
Examples: >
|
||||
call sign_define("mySign", {
|
||||
\ "text" : "=>",
|
||||
\ "texthl" : "Error",
|
||||
\ "linehl" : "Search"})
|
||||
call sign_define([
|
||||
\ {'name' : 'sign1',
|
||||
\ 'text' : '=>'},
|
||||
\ {'name' : 'sign2',
|
||||
\ 'text' : '!!'}
|
||||
\ ])
|
||||
<
|
||||
sign_getdefined([{name}]) *sign_getdefined()*
|
||||
Get a list of defined signs and their attributes.
|
||||
This is similar to the |:sign-list| command.
|
||||
|
||||
If the {name} is not supplied, then a list of all the defined
|
||||
signs is returned. Otherwise the attribute of the specified
|
||||
sign is returned.
|
||||
|
||||
Each list item in the returned value is a dictionary with the
|
||||
following entries:
|
||||
icon full path to the bitmap file of the sign
|
||||
linehl highlight group used for the whole line the
|
||||
sign is placed in.
|
||||
name name of the sign
|
||||
text text that is displayed when there is no icon
|
||||
or the GUI is not being used.
|
||||
texthl highlight group used for the text item
|
||||
|
||||
Returns an empty List if there are no signs and when {name} is
|
||||
not found.
|
||||
|
||||
Examples: >
|
||||
" Get a list of all the defined signs
|
||||
echo sign_getdefined()
|
||||
|
||||
" Get the attribute of the sign named mySign
|
||||
echo sign_getdefined("mySign")
|
||||
<
|
||||
sign_getplaced([{expr} [, {dict}]]) *sign_getplaced()*
|
||||
Return a list of signs placed in a buffer or all the buffers.
|
||||
This is similar to the |:sign-place-list| command.
|
||||
|
||||
If the optional buffer name {expr} is specified, then only the
|
||||
list of signs placed in that buffer is returned. For the use
|
||||
of {expr}, see |bufname()|. The optional {dict} can contain
|
||||
the following entries:
|
||||
group select only signs in this group
|
||||
id select sign with this identifier
|
||||
lnum select signs placed in this line. For the use
|
||||
of {lnum}, see |line()|.
|
||||
If {group} is '*', then signs in all the groups including the
|
||||
global group are returned. If {group} is not supplied or is an
|
||||
empty string, then only signs in the global group are
|
||||
returned. If no arguments are supplied, then signs in the
|
||||
global group placed in all the buffers are returned.
|
||||
See |sign-group|.
|
||||
|
||||
Each list item in the returned value is a dictionary with the
|
||||
following entries:
|
||||
bufnr number of the buffer with the sign
|
||||
signs list of signs placed in {bufnr}. Each list
|
||||
item is a dictionary with the below listed
|
||||
entries
|
||||
|
||||
The dictionary for each sign contains the following entries:
|
||||
group sign group. Set to '' for the global group.
|
||||
id identifier of the sign
|
||||
lnum line number where the sign is placed
|
||||
name name of the defined sign
|
||||
priority sign priority
|
||||
|
||||
The returned signs in a buffer are ordered by their line
|
||||
number and priority.
|
||||
|
||||
Returns an empty list on failure or if there are no placed
|
||||
signs.
|
||||
|
||||
Examples: >
|
||||
" Get a List of signs placed in eval.c in the
|
||||
" global group
|
||||
echo sign_getplaced("eval.c")
|
||||
|
||||
" Get a List of signs in group 'g1' placed in eval.c
|
||||
echo sign_getplaced("eval.c", {'group' : 'g1'})
|
||||
|
||||
" Get a List of signs placed at line 10 in eval.c
|
||||
echo sign_getplaced("eval.c", {'lnum' : 10})
|
||||
|
||||
" Get sign with identifier 10 placed in a.py
|
||||
echo sign_getplaced("a.py", {'id' : 10})
|
||||
|
||||
" Get sign with id 20 in group 'g1' placed in a.py
|
||||
echo sign_getplaced("a.py", {'group' : 'g1',
|
||||
\ 'id' : 20})
|
||||
|
||||
" Get a List of all the placed signs
|
||||
echo sign_getplaced()
|
||||
<
|
||||
*sign_jump()*
|
||||
sign_jump({id}, {group}, {expr})
|
||||
Open the buffer {expr} or jump to the window that contains
|
||||
{expr} and position the cursor at sign {id} in group {group}.
|
||||
This is similar to the |:sign-jump| command.
|
||||
|
||||
For the use of {expr}, see |bufname()|.
|
||||
|
||||
Returns the line number of the sign. Returns -1 if the
|
||||
arguments are invalid.
|
||||
|
||||
Example: >
|
||||
" Jump to sign 10 in the current buffer
|
||||
call sign_jump(10, '', '')
|
||||
<
|
||||
|
||||
*sign_place()*
|
||||
sign_place({id}, {group}, {name}, {expr} [, {dict}])
|
||||
Place the sign defined as {name} at line {lnum} in file or
|
||||
buffer {expr} and assign {id} and {group} to sign. This is
|
||||
similar to the |:sign-place| command.
|
||||
|
||||
If the sign identifier {id} is zero, then a new identifier is
|
||||
allocated. Otherwise the specified number is used. {group} is
|
||||
the sign group name. To use the global sign group, use an
|
||||
empty string. {group} functions as a namespace for {id}, thus
|
||||
two groups can use the same IDs. Refer to |sign-identifier|
|
||||
and |sign-group| for more information.
|
||||
|
||||
{name} refers to a defined sign.
|
||||
{expr} refers to a buffer name or number. For the accepted
|
||||
values, see |bufname()|.
|
||||
|
||||
The optional {dict} argument supports the following entries:
|
||||
lnum line number in the file or buffer
|
||||
{expr} where the sign is to be placed.
|
||||
For the accepted values, see |line()|.
|
||||
priority priority of the sign. See
|
||||
|sign-priority| for more information.
|
||||
|
||||
If the optional {dict} is not specified, then it modifies the
|
||||
placed sign {id} in group {group} to use the defined sign
|
||||
{name}.
|
||||
|
||||
Returns the sign identifier on success and -1 on failure.
|
||||
|
||||
Examples: >
|
||||
" Place a sign named sign1 with id 5 at line 20 in
|
||||
" buffer json.c
|
||||
call sign_place(5, '', 'sign1', 'json.c',
|
||||
\ {'lnum' : 20})
|
||||
|
||||
" Updates sign 5 in buffer json.c to use sign2
|
||||
call sign_place(5, '', 'sign2', 'json.c')
|
||||
|
||||
" Place a sign named sign3 at line 30 in
|
||||
" buffer json.c with a new identifier
|
||||
let id = sign_place(0, '', 'sign3', 'json.c',
|
||||
\ {'lnum' : 30})
|
||||
|
||||
" Place a sign named sign4 with id 10 in group 'g3'
|
||||
" at line 40 in buffer json.c with priority 90
|
||||
call sign_place(10, 'g3', 'sign4', 'json.c',
|
||||
\ {'lnum' : 40, 'priority' : 90})
|
||||
<
|
||||
|
||||
*sign_placelist()*
|
||||
sign_placelist({list})
|
||||
Place one or more signs. This is similar to the
|
||||
|sign_place()| function. The {list} argument specifies the
|
||||
List of signs to place. Each list item is a dict with the
|
||||
following sign attributes:
|
||||
buffer buffer name or number. For the accepted
|
||||
values, see |bufname()|.
|
||||
group sign group. {group} functions as a namespace
|
||||
for {id}, thus two groups can use the same
|
||||
IDs. If not specified or set to an empty
|
||||
string, then the global group is used. See
|
||||
|sign-group| for more information.
|
||||
id sign identifier. If not specified or zero,
|
||||
then a new unique identifier is allocated.
|
||||
Otherwise the specified number is used. See
|
||||
|sign-identifier| for more information.
|
||||
lnum line number in the buffer {expr} where the
|
||||
sign is to be placed. For the accepted values,
|
||||
see |line()|.
|
||||
name name of the sign to place. See |sign_define()|
|
||||
for more information.
|
||||
priority priority of the sign. When multiple signs are
|
||||
placed on a line, the sign with the highest
|
||||
priority is used. If not specified, the
|
||||
default value of 10 is used. See
|
||||
|sign-priority| for more information.
|
||||
|
||||
If {id} refers to an existing sign, then the existing sign is
|
||||
modified to use the specified {name} and/or {priority}.
|
||||
|
||||
Returns a List of sign identifiers. If failed to place a
|
||||
sign, the corresponding list item is set to -1.
|
||||
|
||||
Examples: >
|
||||
" Place sign s1 with id 5 at line 20 and id 10 at line
|
||||
" 30 in buffer a.c
|
||||
let [n1, n2] = sign_placelist([
|
||||
\ {'id' : 5,
|
||||
\ 'name' : 's1',
|
||||
\ 'buffer' : 'a.c',
|
||||
\ 'lnum' : 20},
|
||||
\ {'id' : 10,
|
||||
\ 'name' : 's1',
|
||||
\ 'buffer' : 'a.c',
|
||||
\ 'lnum' : 30}
|
||||
\ ])
|
||||
|
||||
" Place sign s1 in buffer a.c at line 40 and 50
|
||||
" with auto-generated identifiers
|
||||
let [n1, n2] = sign_placelist([
|
||||
\ {'name' : 's1',
|
||||
\ 'buffer' : 'a.c',
|
||||
\ 'lnum' : 40},
|
||||
\ {'name' : 's1',
|
||||
\ 'buffer' : 'a.c',
|
||||
\ 'lnum' : 50}
|
||||
\ ])
|
||||
<
|
||||
|
||||
sign_undefine([{name}]) *sign_undefine()*
|
||||
sign_undefine({list})
|
||||
Deletes a previously defined sign {name}. This is similar to
|
||||
the |:sign-undefine| command. If {name} is not supplied, then
|
||||
deletes all the defined signs.
|
||||
|
||||
The one argument {list} can be used to undefine a list of
|
||||
signs. Each list item is the name of a sign.
|
||||
|
||||
Returns 0 on success and -1 on failure. For the one argument
|
||||
{list} call, returns a list of values one for each undefined
|
||||
sign.
|
||||
|
||||
Examples: >
|
||||
" Delete a sign named mySign
|
||||
call sign_undefine("mySign")
|
||||
|
||||
" Delete signs 'sign1' and 'sign2'
|
||||
call sign_undefine(["sign1", "sign2"])
|
||||
|
||||
" Delete all the signs
|
||||
call sign_undefine()
|
||||
<
|
||||
|
||||
sign_unplace({group} [, {dict}]) *sign_unplace()*
|
||||
Remove a previously placed sign in one or more buffers. This
|
||||
is similar to the |:sign-unplace| command.
|
||||
|
||||
{group} is the sign group name. To use the global sign group,
|
||||
use an empty string. If {group} is set to '*', then all the
|
||||
groups including the global group are used.
|
||||
The signs in {group} are selected based on the entries in
|
||||
{dict}. The following optional entries in {dict} are
|
||||
supported:
|
||||
buffer buffer name or number. See |bufname()|.
|
||||
id sign identifier
|
||||
If {dict} is not supplied, then all the signs in {group} are
|
||||
removed.
|
||||
|
||||
Returns 0 on success and -1 on failure.
|
||||
|
||||
Examples: >
|
||||
" Remove sign 10 from buffer a.vim
|
||||
call sign_unplace('', {'buffer' : "a.vim", 'id' : 10})
|
||||
|
||||
" Remove sign 20 in group 'g1' from buffer 3
|
||||
call sign_unplace('g1', {'buffer' : 3, 'id' : 20})
|
||||
|
||||
" Remove all the signs in group 'g2' from buffer 10
|
||||
call sign_unplace('g2', {'buffer' : 10})
|
||||
|
||||
" Remove sign 30 in group 'g3' from all the buffers
|
||||
call sign_unplace('g3', {'id' : 30})
|
||||
|
||||
" Remove all the signs placed in buffer 5
|
||||
call sign_unplace('*', {'buffer' : 5})
|
||||
|
||||
" Remove the signs in group 'g4' from all the buffers
|
||||
call sign_unplace('g4')
|
||||
|
||||
" Remove sign 40 from all the buffers
|
||||
call sign_unplace('*', {'id' : 40})
|
||||
|
||||
" Remove all the placed signs from all the buffers
|
||||
call sign_unplace('*')
|
||||
<
|
||||
sign_unplacelist({list}) *sign_unplacelist()*
|
||||
Remove previously placed signs from one or more buffers. This
|
||||
is similar to the |sign_unplace()| function.
|
||||
|
||||
The {list} argument specifies the List of signs to remove.
|
||||
Each list item is a dict with the following sign attributes:
|
||||
buffer buffer name or number. For the accepted
|
||||
values, see |bufname()|. If not specified,
|
||||
then the specified sign is removed from all
|
||||
the buffers.
|
||||
group sign group name. If not specified or set to an
|
||||
empty string, then the global sign group is
|
||||
used. If set to '*', then all the groups
|
||||
including the global group are used.
|
||||
id sign identifier. If not specified, then all
|
||||
the signs in the specified group are removed.
|
||||
|
||||
Returns a List where an entry is set to 0 if the corresponding
|
||||
sign was successfully removed or -1 on failure.
|
||||
|
||||
Example: >
|
||||
" Remove sign with id 10 from buffer a.vim and sign
|
||||
" with id 20 from buffer b.vim
|
||||
call sign_unplacelist([
|
||||
\ {'id' : 10, 'buffer' : "a.vim"},
|
||||
\ {'id' : 20, 'buffer' : 'b.vim'},
|
||||
\ ])
|
||||
<
|
||||
|
||||
vim:tw=78:ts=8:noet:ft=help:norl:
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
*starting.txt* For Vim version 8.1. Last change: 2019 Jun 02
|
||||
*starting.txt* For Vim version 8.1. Last change: 2019 Jul 30
|
||||
|
||||
|
||||
VIM REFERENCE MANUAL by Bram Moolenaar
|
||||
@@ -1189,6 +1189,8 @@ greps in the help files) you might be able to use this: >
|
||||
|
||||
VIMRUNTIME=`vim -e -T dumb --cmd 'exe "set t_cm=\<C-M>"|echo $VIMRUNTIME|quit' | tr -d '\015' `
|
||||
|
||||
Don't set $VIMRUNTIME to an empty value, some things may stop working.
|
||||
|
||||
==============================================================================
|
||||
6. Suspending *suspend*
|
||||
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
*syntax.txt* For Vim version 8.1. Last change: 2019 Jun 13
|
||||
*syntax.txt* For Vim version 8.1. Last change: 2019 Jul 15
|
||||
|
||||
|
||||
VIM REFERENCE MANUAL by Bram Moolenaar
|
||||
@@ -2623,7 +2623,6 @@ preceding last option and unsetting all other ones): >
|
||||
Note: only existence of these options matter, not their value. You can replace
|
||||
1 above with anything.
|
||||
|
||||
|
||||
QUAKE *quake.vim* *ft-quake-syntax*
|
||||
|
||||
The Quake syntax definition should work for most any FPS (First Person
|
||||
|
||||
199
runtime/doc/tags
199
runtime/doc/tags
@@ -149,6 +149,7 @@ $VIM_POSIX vi_diff.txt /*$VIM_POSIX*
|
||||
'complete' options.txt /*'complete'*
|
||||
'completefunc' options.txt /*'completefunc'*
|
||||
'completeopt' options.txt /*'completeopt'*
|
||||
'completeslash' options.txt /*'completeslash'*
|
||||
'concealcursor' options.txt /*'concealcursor'*
|
||||
'conceallevel' options.txt /*'conceallevel'*
|
||||
'confirm' options.txt /*'confirm'*
|
||||
@@ -169,6 +170,7 @@ $VIM_POSIX vi_diff.txt /*$VIM_POSIX*
|
||||
'cscopetag' options.txt /*'cscopetag'*
|
||||
'cscopetagorder' options.txt /*'cscopetagorder'*
|
||||
'cscopeverbose' options.txt /*'cscopeverbose'*
|
||||
'csl' options.txt /*'csl'*
|
||||
'cspc' options.txt /*'cspc'*
|
||||
'csprg' options.txt /*'csprg'*
|
||||
'csqf' options.txt /*'csqf'*
|
||||
@@ -775,6 +777,7 @@ $VIM_POSIX vi_diff.txt /*$VIM_POSIX*
|
||||
'pp' options.txt /*'pp'*
|
||||
'preserveindent' options.txt /*'preserveindent'*
|
||||
'previewheight' options.txt /*'previewheight'*
|
||||
'previewpopup' options.txt /*'previewpopup'*
|
||||
'previewwindow' options.txt /*'previewwindow'*
|
||||
'printdevice' options.txt /*'printdevice'*
|
||||
'printencoding' options.txt /*'printencoding'*
|
||||
@@ -789,6 +792,7 @@ $VIM_POSIX vi_diff.txt /*$VIM_POSIX*
|
||||
'pumheight' options.txt /*'pumheight'*
|
||||
'pumwidth' options.txt /*'pumwidth'*
|
||||
'pvh' options.txt /*'pvh'*
|
||||
'pvp' options.txt /*'pvp'*
|
||||
'pvw' options.txt /*'pvw'*
|
||||
'pw' options.txt /*'pw'*
|
||||
'pythondll' options.txt /*'pythondll'*
|
||||
@@ -3912,6 +3916,7 @@ E169 message.txt /*E169*
|
||||
E17 message.txt /*E17*
|
||||
E170 eval.txt /*E170*
|
||||
E171 eval.txt /*E171*
|
||||
E172 eval.txt /*E172*
|
||||
E173 message.txt /*E173*
|
||||
E174 map.txt /*E174*
|
||||
E175 map.txt /*E175*
|
||||
@@ -3965,6 +3970,7 @@ E218 autocmd.txt /*E218*
|
||||
E219 message.txt /*E219*
|
||||
E22 message.txt /*E22*
|
||||
E220 message.txt /*E220*
|
||||
E221 eval.txt /*E221*
|
||||
E222 message.txt /*E222*
|
||||
E223 options.txt /*E223*
|
||||
E224 map.txt /*E224*
|
||||
@@ -3987,12 +3993,14 @@ E239 sign.txt /*E239*
|
||||
E24 message.txt /*E24*
|
||||
E240 remote.txt /*E240*
|
||||
E241 eval.txt /*E241*
|
||||
E242 windows.txt /*E242*
|
||||
E243 if_ole.txt /*E243*
|
||||
E244 gui.txt /*E244*
|
||||
E245 gui.txt /*E245*
|
||||
E246 autocmd.txt /*E246*
|
||||
E247 remote.txt /*E247*
|
||||
E248 remote.txt /*E248*
|
||||
E249 windows.txt /*E249*
|
||||
E25 message.txt /*E25*
|
||||
E250 options.txt /*E250*
|
||||
E251 remote.txt /*E251*
|
||||
@@ -4681,12 +4689,12 @@ E909 eval.txt /*E909*
|
||||
E91 options.txt /*E91*
|
||||
E910 eval.txt /*E910*
|
||||
E911 eval.txt /*E911*
|
||||
E912 eval.txt /*E912*
|
||||
E912 channel.txt /*E912*
|
||||
E913 eval.txt /*E913*
|
||||
E914 eval.txt /*E914*
|
||||
E915 channel.txt /*E915*
|
||||
E916 eval.txt /*E916*
|
||||
E917 eval.txt /*E917*
|
||||
E916 channel.txt /*E916*
|
||||
E917 channel.txt /*E917*
|
||||
E918 channel.txt /*E918*
|
||||
E919 repeat.txt /*E919*
|
||||
E92 message.txt /*E92*
|
||||
@@ -4732,19 +4740,20 @@ E955 terminal.txt /*E955*
|
||||
E956 pattern.txt /*E956*
|
||||
E957 eval.txt /*E957*
|
||||
E958 terminal.txt /*E958*
|
||||
E959 diff.txt /*E959*
|
||||
E96 diff.txt /*E96*
|
||||
E960 options.txt /*E960*
|
||||
E961 cmdline.txt /*E961*
|
||||
E962 eval.txt /*E962*
|
||||
E963 eval.txt /*E963*
|
||||
E964 eval.txt /*E964*
|
||||
E965 eval.txt /*E965*
|
||||
E966 eval.txt /*E966*
|
||||
E964 textprop.txt /*E964*
|
||||
E965 textprop.txt /*E965*
|
||||
E966 textprop.txt /*E966*
|
||||
E967 textprop.txt /*E967*
|
||||
E968 eval.txt /*E968*
|
||||
E969 eval.txt /*E969*
|
||||
E968 textprop.txt /*E968*
|
||||
E969 textprop.txt /*E969*
|
||||
E97 diff.txt /*E97*
|
||||
E970 eval.txt /*E970*
|
||||
E970 textprop.txt /*E970*
|
||||
E971 textprop.txt /*E971*
|
||||
E972 eval.txt /*E972*
|
||||
E973 eval.txt /*E973*
|
||||
@@ -4906,6 +4915,8 @@ P change.txt /*P*
|
||||
PATHEXT eval.txt /*PATHEXT*
|
||||
PEP8 filetype.txt /*PEP8*
|
||||
PHP_BracesAtCodeLevel indent.txt /*PHP_BracesAtCodeLevel*
|
||||
PHP_IndentFunctionCallParameters indent.txt /*PHP_IndentFunctionCallParameters*
|
||||
PHP_IndentFunctionDeclarationParameters indent.txt /*PHP_IndentFunctionDeclarationParameters*
|
||||
PHP_autoformatcomment indent.txt /*PHP_autoformatcomment*
|
||||
PHP_default_indenting indent.txt /*PHP_default_indenting*
|
||||
PHP_noArrowMatching indent.txt /*PHP_noArrowMatching*
|
||||
@@ -5289,19 +5300,20 @@ asin() eval.txt /*asin()*
|
||||
asm.vim syntax.txt /*asm.vim*
|
||||
asm68k syntax.txt /*asm68k*
|
||||
asmh8300.vim syntax.txt /*asmh8300.vim*
|
||||
assert-functions-details testing.txt /*assert-functions-details*
|
||||
assert-return eval.txt /*assert-return*
|
||||
assert_beeps() eval.txt /*assert_beeps()*
|
||||
assert_equal() eval.txt /*assert_equal()*
|
||||
assert_equalfile() eval.txt /*assert_equalfile()*
|
||||
assert_exception() eval.txt /*assert_exception()*
|
||||
assert_fails() eval.txt /*assert_fails()*
|
||||
assert_false() eval.txt /*assert_false()*
|
||||
assert_inrange() eval.txt /*assert_inrange()*
|
||||
assert_match() eval.txt /*assert_match()*
|
||||
assert_notequal() eval.txt /*assert_notequal()*
|
||||
assert_notmatch() eval.txt /*assert_notmatch()*
|
||||
assert_report() eval.txt /*assert_report()*
|
||||
assert_true() eval.txt /*assert_true()*
|
||||
assert_beeps() testing.txt /*assert_beeps()*
|
||||
assert_equal() testing.txt /*assert_equal()*
|
||||
assert_equalfile() testing.txt /*assert_equalfile()*
|
||||
assert_exception() testing.txt /*assert_exception()*
|
||||
assert_fails() testing.txt /*assert_fails()*
|
||||
assert_false() testing.txt /*assert_false()*
|
||||
assert_inrange() testing.txt /*assert_inrange()*
|
||||
assert_match() testing.txt /*assert_match()*
|
||||
assert_notequal() testing.txt /*assert_notequal()*
|
||||
assert_notmatch() testing.txt /*assert_notmatch()*
|
||||
assert_report() testing.txt /*assert_report()*
|
||||
assert_true() testing.txt /*assert_true()*
|
||||
at motion.txt /*at*
|
||||
atan() eval.txt /*atan()*
|
||||
atan2() eval.txt /*atan2()*
|
||||
@@ -5572,24 +5584,24 @@ cc change.txt /*cc*
|
||||
ceil() eval.txt /*ceil()*
|
||||
cfilter-plugin quickfix.txt /*cfilter-plugin*
|
||||
ch.vim syntax.txt /*ch.vim*
|
||||
ch_canread() eval.txt /*ch_canread()*
|
||||
ch_close() eval.txt /*ch_close()*
|
||||
ch_close_in() eval.txt /*ch_close_in()*
|
||||
ch_evalexpr() eval.txt /*ch_evalexpr()*
|
||||
ch_evalraw() eval.txt /*ch_evalraw()*
|
||||
ch_getbufnr() eval.txt /*ch_getbufnr()*
|
||||
ch_getjob() eval.txt /*ch_getjob()*
|
||||
ch_info() eval.txt /*ch_info()*
|
||||
ch_log() eval.txt /*ch_log()*
|
||||
ch_logfile() eval.txt /*ch_logfile()*
|
||||
ch_open() eval.txt /*ch_open()*
|
||||
ch_read() eval.txt /*ch_read()*
|
||||
ch_readblob() eval.txt /*ch_readblob()*
|
||||
ch_readraw() eval.txt /*ch_readraw()*
|
||||
ch_sendexpr() eval.txt /*ch_sendexpr()*
|
||||
ch_sendraw() eval.txt /*ch_sendraw()*
|
||||
ch_setoptions() eval.txt /*ch_setoptions()*
|
||||
ch_status() eval.txt /*ch_status()*
|
||||
ch_canread() channel.txt /*ch_canread()*
|
||||
ch_close() channel.txt /*ch_close()*
|
||||
ch_close_in() channel.txt /*ch_close_in()*
|
||||
ch_evalexpr() channel.txt /*ch_evalexpr()*
|
||||
ch_evalraw() channel.txt /*ch_evalraw()*
|
||||
ch_getbufnr() channel.txt /*ch_getbufnr()*
|
||||
ch_getjob() channel.txt /*ch_getjob()*
|
||||
ch_info() channel.txt /*ch_info()*
|
||||
ch_log() channel.txt /*ch_log()*
|
||||
ch_logfile() channel.txt /*ch_logfile()*
|
||||
ch_open() channel.txt /*ch_open()*
|
||||
ch_read() channel.txt /*ch_read()*
|
||||
ch_readblob() channel.txt /*ch_readblob()*
|
||||
ch_readraw() channel.txt /*ch_readraw()*
|
||||
ch_sendexpr() channel.txt /*ch_sendexpr()*
|
||||
ch_sendraw() channel.txt /*ch_sendraw()*
|
||||
ch_setoptions() channel.txt /*ch_setoptions()*
|
||||
ch_status() channel.txt /*ch_status()*
|
||||
change-list-jumps motion.txt /*change-list-jumps*
|
||||
change-name tips.txt /*change-name*
|
||||
change-tabs change.txt /*change-tabs*
|
||||
@@ -5624,6 +5636,7 @@ channel-commands channel.txt /*channel-commands*
|
||||
channel-demo channel.txt /*channel-demo*
|
||||
channel-drop channel.txt /*channel-drop*
|
||||
channel-functions usr_41.txt /*channel-functions*
|
||||
channel-functions-details channel.txt /*channel-functions-details*
|
||||
channel-mode channel.txt /*channel-mode*
|
||||
channel-more channel.txt /*channel-more*
|
||||
channel-noblock channel.txt /*channel-noblock*
|
||||
@@ -6440,6 +6453,7 @@ ft-ptcap-syntax syntax.txt /*ft-ptcap-syntax*
|
||||
ft-python-indent indent.txt /*ft-python-indent*
|
||||
ft-python-plugin filetype.txt /*ft-python-plugin*
|
||||
ft-python-syntax syntax.txt /*ft-python-syntax*
|
||||
ft-qf-plugin filetype.txt /*ft-qf-plugin*
|
||||
ft-quake-syntax syntax.txt /*ft-quake-syntax*
|
||||
ft-r-indent indent.txt /*ft-r-indent*
|
||||
ft-r-syntax syntax.txt /*ft-r-syntax*
|
||||
@@ -7360,6 +7374,7 @@ job-err_cb channel.txt /*job-err_cb*
|
||||
job-err_io channel.txt /*job-err_io*
|
||||
job-exit_cb channel.txt /*job-exit_cb*
|
||||
job-functions usr_41.txt /*job-functions*
|
||||
job-functions-details channel.txt /*job-functions-details*
|
||||
job-in_io channel.txt /*job-in_io*
|
||||
job-noblock channel.txt /*job-noblock*
|
||||
job-options channel.txt /*job-options*
|
||||
@@ -7371,12 +7386,12 @@ job-start-nochannel channel.txt /*job-start-nochannel*
|
||||
job-stoponexit channel.txt /*job-stoponexit*
|
||||
job-term channel.txt /*job-term*
|
||||
job-timeout channel.txt /*job-timeout*
|
||||
job_getchannel() eval.txt /*job_getchannel()*
|
||||
job_info() eval.txt /*job_info()*
|
||||
job_setoptions() eval.txt /*job_setoptions()*
|
||||
job_start() eval.txt /*job_start()*
|
||||
job_status() eval.txt /*job_status()*
|
||||
job_stop() eval.txt /*job_stop()*
|
||||
job_getchannel() channel.txt /*job_getchannel()*
|
||||
job_info() channel.txt /*job_info()*
|
||||
job_setoptions() channel.txt /*job_setoptions()*
|
||||
job_start() channel.txt /*job_start()*
|
||||
job_status() channel.txt /*job_status()*
|
||||
job_stop() channel.txt /*job_stop()*
|
||||
join() eval.txt /*join()*
|
||||
js_decode() eval.txt /*js_decode()*
|
||||
js_encode() eval.txt /*js_encode()*
|
||||
@@ -7468,6 +7483,7 @@ listener_add() eval.txt /*listener_add()*
|
||||
listener_flush() eval.txt /*listener_flush()*
|
||||
listener_remove() eval.txt /*listener_remove()*
|
||||
lite.vim syntax.txt /*lite.vim*
|
||||
literal-Dict eval.txt /*literal-Dict*
|
||||
literal-string eval.txt /*literal-string*
|
||||
lnum-variable eval.txt /*lnum-variable*
|
||||
load-plugins starting.txt /*load-plugins*
|
||||
@@ -8032,7 +8048,7 @@ new-search-path version6.txt /*new-search-path*
|
||||
new-searchpat version6.txt /*new-searchpat*
|
||||
new-session-files version5.txt /*new-session-files*
|
||||
new-spell version7.txt /*new-spell*
|
||||
new-style-testing eval.txt /*new-style-testing*
|
||||
new-style-testing testing.txt /*new-style-testing*
|
||||
new-tab-pages version7.txt /*new-tab-pages*
|
||||
new-terminal-window version8.txt /*new-terminal-window*
|
||||
new-undo-branches version7.txt /*new-undo-branches*
|
||||
@@ -8080,7 +8096,7 @@ ocaml.vim syntax.txt /*ocaml.vim*
|
||||
octal eval.txt /*octal*
|
||||
octal-nrformats options.txt /*octal-nrformats*
|
||||
octal-number eval.txt /*octal-number*
|
||||
old-style-testing eval.txt /*old-style-testing*
|
||||
old-style-testing testing.txt /*old-style-testing*
|
||||
oldfiles-variable eval.txt /*oldfiles-variable*
|
||||
ole-activation if_ole.txt /*ole-activation*
|
||||
ole-eval if_ole.txt /*ole-eval*
|
||||
@@ -8241,6 +8257,8 @@ popup-window popup.txt /*popup-window*
|
||||
popup-window-functions usr_41.txt /*popup-window-functions*
|
||||
popup.txt popup.txt /*popup.txt*
|
||||
popup_atcursor() popup.txt /*popup_atcursor()*
|
||||
popup_beval() popup.txt /*popup_beval()*
|
||||
popup_beval_example popup.txt /*popup_beval_example*
|
||||
popup_clear() popup.txt /*popup_clear()*
|
||||
popup_close() popup.txt /*popup_close()*
|
||||
popup_create() popup.txt /*popup_create()*
|
||||
@@ -8251,7 +8269,9 @@ popup_filter_menu() popup.txt /*popup_filter_menu()*
|
||||
popup_filter_yesno() popup.txt /*popup_filter_yesno()*
|
||||
popup_getoptions() popup.txt /*popup_getoptions()*
|
||||
popup_getpos() popup.txt /*popup_getpos()*
|
||||
popup_getpreview() popup.txt /*popup_getpreview()*
|
||||
popup_hide() popup.txt /*popup_hide()*
|
||||
popup_locate() popup.txt /*popup_locate()*
|
||||
popup_menu() popup.txt /*popup_menu()*
|
||||
popup_menu-shortcut-example popup.txt /*popup_menu-shortcut-example*
|
||||
popup_move() popup.txt /*popup_move()*
|
||||
@@ -8278,6 +8298,7 @@ ppwiz.vim syntax.txt /*ppwiz.vim*
|
||||
press-enter message.txt /*press-enter*
|
||||
press-return message.txt /*press-return*
|
||||
prevcount-variable eval.txt /*prevcount-variable*
|
||||
preview-popup windows.txt /*preview-popup*
|
||||
preview-window windows.txt /*preview-window*
|
||||
prevnonblank() eval.txt /*prevnonblank()*
|
||||
print-intro print.txt /*print-intro*
|
||||
@@ -8313,16 +8334,16 @@ prompt_setinterrupt() eval.txt /*prompt_setinterrupt()*
|
||||
prompt_setprompt() eval.txt /*prompt_setprompt()*
|
||||
promptbuffer-functions usr_41.txt /*promptbuffer-functions*
|
||||
pronounce intro.txt /*pronounce*
|
||||
prop_add() eval.txt /*prop_add()*
|
||||
prop_clear() eval.txt /*prop_clear()*
|
||||
prop_find() eval.txt /*prop_find()*
|
||||
prop_list() eval.txt /*prop_list()*
|
||||
prop_remove() eval.txt /*prop_remove()*
|
||||
prop_type_add() eval.txt /*prop_type_add()*
|
||||
prop_type_change() eval.txt /*prop_type_change()*
|
||||
prop_type_delete() eval.txt /*prop_type_delete()*
|
||||
prop_type_get() eval.txt /*prop_type_get()*
|
||||
prop_type_list() eval.txt /*prop_type_list()*
|
||||
prop_add() textprop.txt /*prop_add()*
|
||||
prop_clear() textprop.txt /*prop_clear()*
|
||||
prop_find() textprop.txt /*prop_find()*
|
||||
prop_list() textprop.txt /*prop_list()*
|
||||
prop_remove() textprop.txt /*prop_remove()*
|
||||
prop_type_add() textprop.txt /*prop_type_add()*
|
||||
prop_type_change() textprop.txt /*prop_type_change()*
|
||||
prop_type_delete() textprop.txt /*prop_type_delete()*
|
||||
prop_type_get() textprop.txt /*prop_type_get()*
|
||||
prop_type_list() textprop.txt /*prop_type_list()*
|
||||
psql ft_sql.txt /*psql*
|
||||
ptcap.vim syntax.txt /*ptcap.vim*
|
||||
pterm-mouse options.txt /*pterm-mouse*
|
||||
@@ -8383,6 +8404,7 @@ q repeat.txt /*q*
|
||||
q/ cmdline.txt /*q\/*
|
||||
q: cmdline.txt /*q:*
|
||||
q? cmdline.txt /*q?*
|
||||
qf.vim filetype.txt /*qf.vim*
|
||||
qnx os_qnx.txt /*qnx*
|
||||
qnx-compiling os_qnx.txt /*qnx-compiling*
|
||||
qnx-general os_qnx.txt /*qnx-general*
|
||||
@@ -8590,6 +8612,7 @@ screenattr() eval.txt /*screenattr()*
|
||||
screenchar() eval.txt /*screenchar()*
|
||||
screenchars() eval.txt /*screenchars()*
|
||||
screencol() eval.txt /*screencol()*
|
||||
screenpos() eval.txt /*screenpos()*
|
||||
screenrow() eval.txt /*screenrow()*
|
||||
screenstring() eval.txt /*screenstring()*
|
||||
script usr_41.txt /*script*
|
||||
@@ -8682,19 +8705,22 @@ showing-menus gui.txt /*showing-menus*
|
||||
sign-column sign.txt /*sign-column*
|
||||
sign-commands sign.txt /*sign-commands*
|
||||
sign-functions usr_41.txt /*sign-functions*
|
||||
sign-functions-details sign.txt /*sign-functions-details*
|
||||
sign-group sign.txt /*sign-group*
|
||||
sign-identifier sign.txt /*sign-identifier*
|
||||
sign-intro sign.txt /*sign-intro*
|
||||
sign-priority sign.txt /*sign-priority*
|
||||
sign-support sign.txt /*sign-support*
|
||||
sign.txt sign.txt /*sign.txt*
|
||||
sign_define() eval.txt /*sign_define()*
|
||||
sign_getdefined() eval.txt /*sign_getdefined()*
|
||||
sign_getplaced() eval.txt /*sign_getplaced()*
|
||||
sign_jump() eval.txt /*sign_jump()*
|
||||
sign_place() eval.txt /*sign_place()*
|
||||
sign_undefine() eval.txt /*sign_undefine()*
|
||||
sign_unplace() eval.txt /*sign_unplace()*
|
||||
sign_define() sign.txt /*sign_define()*
|
||||
sign_getdefined() sign.txt /*sign_getdefined()*
|
||||
sign_getplaced() sign.txt /*sign_getplaced()*
|
||||
sign_jump() sign.txt /*sign_jump()*
|
||||
sign_place() sign.txt /*sign_place()*
|
||||
sign_placelist() sign.txt /*sign_placelist()*
|
||||
sign_undefine() sign.txt /*sign_undefine()*
|
||||
sign_unplace() sign.txt /*sign_unplace()*
|
||||
sign_unplacelist() sign.txt /*sign_unplacelist()*
|
||||
signs sign.txt /*signs*
|
||||
simple-change change.txt /*simple-change*
|
||||
simplify() eval.txt /*simplify()*
|
||||
@@ -9346,28 +9372,31 @@ terminal.txt terminal.txt /*terminal.txt*
|
||||
terminfo term.txt /*terminfo*
|
||||
termresponse-variable eval.txt /*termresponse-variable*
|
||||
test-functions usr_41.txt /*test-functions*
|
||||
test_alloc_fail() eval.txt /*test_alloc_fail()*
|
||||
test_autochdir() eval.txt /*test_autochdir()*
|
||||
test_feedinput() eval.txt /*test_feedinput()*
|
||||
test_garbagecollect_now() eval.txt /*test_garbagecollect_now()*
|
||||
test_garbagecollect_soon() eval.txt /*test_garbagecollect_soon()*
|
||||
test_getvalue() eval.txt /*test_getvalue()*
|
||||
test_ignore_error() eval.txt /*test_ignore_error()*
|
||||
test_null_blob() eval.txt /*test_null_blob()*
|
||||
test_null_channel() eval.txt /*test_null_channel()*
|
||||
test_null_dict() eval.txt /*test_null_dict()*
|
||||
test_null_job() eval.txt /*test_null_job()*
|
||||
test_null_list() eval.txt /*test_null_list()*
|
||||
test_null_partial() eval.txt /*test_null_partial()*
|
||||
test_null_string() eval.txt /*test_null_string()*
|
||||
test_option_not_set() eval.txt /*test_option_not_set()*
|
||||
test_override() eval.txt /*test_override()*
|
||||
test_refcount() eval.txt /*test_refcount()*
|
||||
test_scrollbar() eval.txt /*test_scrollbar()*
|
||||
test_setmouse() eval.txt /*test_setmouse()*
|
||||
test_settime() eval.txt /*test_settime()*
|
||||
testing eval.txt /*testing*
|
||||
test-functions-details testing.txt /*test-functions-details*
|
||||
test_alloc_fail() testing.txt /*test_alloc_fail()*
|
||||
test_autochdir() testing.txt /*test_autochdir()*
|
||||
test_feedinput() testing.txt /*test_feedinput()*
|
||||
test_garbagecollect_now() testing.txt /*test_garbagecollect_now()*
|
||||
test_garbagecollect_soon() testing.txt /*test_garbagecollect_soon()*
|
||||
test_getvalue() testing.txt /*test_getvalue()*
|
||||
test_ignore_error() testing.txt /*test_ignore_error()*
|
||||
test_null_blob() testing.txt /*test_null_blob()*
|
||||
test_null_channel() testing.txt /*test_null_channel()*
|
||||
test_null_dict() testing.txt /*test_null_dict()*
|
||||
test_null_job() testing.txt /*test_null_job()*
|
||||
test_null_list() testing.txt /*test_null_list()*
|
||||
test_null_partial() testing.txt /*test_null_partial()*
|
||||
test_null_string() testing.txt /*test_null_string()*
|
||||
test_option_not_set() testing.txt /*test_option_not_set()*
|
||||
test_override() testing.txt /*test_override()*
|
||||
test_refcount() testing.txt /*test_refcount()*
|
||||
test_scrollbar() testing.txt /*test_scrollbar()*
|
||||
test_setmouse() testing.txt /*test_setmouse()*
|
||||
test_settime() testing.txt /*test_settime()*
|
||||
testing testing.txt /*testing*
|
||||
testing-support testing.txt /*testing-support*
|
||||
testing-variable eval.txt /*testing-variable*
|
||||
testing.txt testing.txt /*testing.txt*
|
||||
tex-cchar syntax.txt /*tex-cchar*
|
||||
tex-cole syntax.txt /*tex-cole*
|
||||
tex-conceal syntax.txt /*tex-conceal*
|
||||
|
||||
317
runtime/doc/testing.txt
Normal file
317
runtime/doc/testing.txt
Normal file
@@ -0,0 +1,317 @@
|
||||
*testing.txt* For Vim version 8.1. Last change: 2019 Jul 28
|
||||
|
||||
|
||||
VIM REFERENCE MANUAL by Bram Moolenaar
|
||||
|
||||
|
||||
Testing Vim and Vim script *testing-support*
|
||||
|
||||
Expression evaluation is explained in |eval.txt|. This file goes into details
|
||||
about writing tests in Vim script. This can be used for testing Vim itself
|
||||
and for testing plugins.
|
||||
|
||||
1. Testing Vim |testing|
|
||||
2. Test functions |test-functions-details|
|
||||
3. Assert functions |assert-functions-details|
|
||||
|
||||
==============================================================================
|
||||
1. Testing Vim *testing*
|
||||
|
||||
Vim can be tested after building it, usually with "make test".
|
||||
The tests are located in the directory "src/testdir".
|
||||
|
||||
There are several types of tests added over time:
|
||||
test33.in oldest, don't add any of these
|
||||
test_something.in old style tests
|
||||
test_something.vim new style tests
|
||||
|
||||
*new-style-testing*
|
||||
New tests should be added as new style tests. These use functions such as
|
||||
|assert_equal()| to keep the test commands and the expected result in one
|
||||
place.
|
||||
*old-style-testing*
|
||||
In some cases an old style test needs to be used. E.g. when testing Vim
|
||||
without the |+eval| feature.
|
||||
|
||||
Find more information in the file src/testdir/README.txt.
|
||||
|
||||
==============================================================================
|
||||
2. Test functions *test-functions-details*
|
||||
|
||||
test_alloc_fail({id}, {countdown}, {repeat}) *test_alloc_fail()*
|
||||
This is for testing: If the memory allocation with {id} is
|
||||
called, then decrement {countdown}, and when it reaches zero
|
||||
let memory allocation fail {repeat} times. When {repeat} is
|
||||
smaller than one it fails one time.
|
||||
|
||||
|
||||
test_autochdir() *test_autochdir()*
|
||||
Set a flag to enable the effect of 'autochdir' before Vim
|
||||
startup has finished.
|
||||
|
||||
|
||||
test_feedinput({string}) *test_feedinput()*
|
||||
Characters in {string} are queued for processing as if they
|
||||
were typed by the user. This uses a low level input buffer.
|
||||
This function works only when with |+unix| or GUI is running.
|
||||
|
||||
|
||||
test_garbagecollect_now() *test_garbagecollect_now()*
|
||||
Like garbagecollect(), but executed right away. This must
|
||||
only be called directly to avoid any structure to exist
|
||||
internally, and |v:testing| must have been set before calling
|
||||
any function.
|
||||
|
||||
|
||||
test_garbagecollect_soon() *test_garbagecollect_soon()*
|
||||
Set the flag to call the garbagecollector as if in the main
|
||||
loop. Only to be used in tests.
|
||||
|
||||
|
||||
test_getvalue({name}) *test_getvalue()*
|
||||
Get the value of an internal variable. These values for
|
||||
{name} are supported:
|
||||
need_fileinfo
|
||||
|
||||
|
||||
test_ignore_error({expr}) *test_ignore_error()*
|
||||
Ignore any error containing {expr}. A normal message is given
|
||||
instead.
|
||||
This is only meant to be used in tests, where catching the
|
||||
error with try/catch cannot be used (because it skips over
|
||||
following code).
|
||||
{expr} is used literally, not as a pattern.
|
||||
When the {expr} is the string "RESET" then the list of ignored
|
||||
errors is made empty.
|
||||
|
||||
|
||||
test_null_blob() *test_null_blob()*
|
||||
Return a |Blob| that is null. Only useful for testing.
|
||||
|
||||
|
||||
test_null_channel() *test_null_channel()*
|
||||
Return a |Channel| that is null. Only useful for testing.
|
||||
{only available when compiled with the +channel feature}
|
||||
|
||||
|
||||
test_null_dict() *test_null_dict()*
|
||||
Return a |Dict| that is null. Only useful for testing.
|
||||
|
||||
|
||||
test_null_job() *test_null_job()*
|
||||
Return a |Job| that is null. Only useful for testing.
|
||||
{only available when compiled with the +job feature}
|
||||
|
||||
|
||||
test_null_list() *test_null_list()*
|
||||
Return a |List| that is null. Only useful for testing.
|
||||
|
||||
|
||||
test_null_partial() *test_null_partial()*
|
||||
Return a |Partial| that is null. Only useful for testing.
|
||||
|
||||
|
||||
test_null_string() *test_null_string()*
|
||||
Return a |String| that is null. Only useful for testing.
|
||||
|
||||
|
||||
test_option_not_set({name}) *test_option_not_set()*
|
||||
Reset the flag that indicates option {name} was set. Thus it
|
||||
looks like it still has the default value. Use like this: >
|
||||
set ambiwidth=double
|
||||
call test_option_not_set('ambiwidth')
|
||||
< Now the 'ambiwidth' option behaves like it was never changed,
|
||||
even though the value is "double".
|
||||
Only to be used for testing!
|
||||
|
||||
|
||||
test_override({name}, {val}) *test_override()*
|
||||
Overrides certain parts of Vim's internal processing to be able
|
||||
to run tests. Only to be used for testing Vim!
|
||||
The override is enabled when {val} is non-zero and removed
|
||||
when {val} is zero.
|
||||
Current supported values for name are:
|
||||
|
||||
name effect when {val} is non-zero ~
|
||||
redraw disable the redrawing() function
|
||||
redraw_flag ignore the RedrawingDisabled flag
|
||||
char_avail disable the char_avail() function
|
||||
starting reset the "starting" variable, see below
|
||||
nfa_fail makes the NFA regexp engine fail to force a
|
||||
fallback to the old engine
|
||||
no_query_mouse do not query the mouse position for "dec"
|
||||
terminals
|
||||
no_wait_return set the "no_wait_return" flag. Not restored
|
||||
with "ALL".
|
||||
ALL clear all overrides ({val} is not used)
|
||||
|
||||
"starting" is to be used when a test should behave like
|
||||
startup was done. Since the tests are run by sourcing a
|
||||
script the "starting" variable is non-zero. This is usually a
|
||||
good thing (tests run faster), but sometimes changes behavior
|
||||
in a way that the test doesn't work properly.
|
||||
When using: >
|
||||
call test_override('starting', 1)
|
||||
< The value of "starting" is saved. It is restored by: >
|
||||
call test_override('starting', 0)
|
||||
|
||||
|
||||
test_refcount({expr}) *test_refcount()*
|
||||
Return the reference count of {expr}. When {expr} is of a
|
||||
type that does not have a reference count, returns -1. Only
|
||||
to be used for testing.
|
||||
|
||||
|
||||
test_scrollbar({which}, {value}, {dragging}) *test_scrollbar()*
|
||||
Pretend using scrollbar {which} to move it to position
|
||||
{value}. {which} can be:
|
||||
left Left scrollbar of the current window
|
||||
right Right scrollbar of the current window
|
||||
hor Horizontal scrollbar
|
||||
|
||||
For the vertical scrollbars {value} can be 1 to the
|
||||
line-count of the buffer. For the horizontal scrollbar the
|
||||
{value} can be between 1 and the maximum line length, assuming
|
||||
'wrap' is not set.
|
||||
|
||||
When {dragging} is non-zero it's like dragging the scrollbar,
|
||||
otherwise it's like clicking in the scrollbar.
|
||||
Only works when the {which} scrollbar actually exists,
|
||||
obviously only when using the GUI.
|
||||
|
||||
|
||||
test_setmouse({row}, {col}) *test_setmouse()*
|
||||
Set the mouse position to be used for the next mouse action.
|
||||
{row} and {col} are one based.
|
||||
For example: >
|
||||
call test_setmouse(4, 20)
|
||||
call feedkeys("\<LeftMouse>", "xt")
|
||||
|
||||
|
||||
test_settime({expr}) *test_settime()*
|
||||
Set the time Vim uses internally. Currently only used for
|
||||
timestamps in the history, as they are used in viminfo, and
|
||||
for undo.
|
||||
Using a value of 1 makes Vim not sleep after a warning or
|
||||
error message.
|
||||
{expr} must evaluate to a number. When the value is zero the
|
||||
normal behavior is restored.
|
||||
|
||||
==============================================================================
|
||||
3. Assert functions *assert-functions-details*
|
||||
|
||||
|
||||
assert_beeps({cmd}) *assert_beeps()*
|
||||
Run {cmd} and add an error message to |v:errors| if it does
|
||||
NOT produce a beep or visual bell.
|
||||
Also see |assert_fails()| and |assert-return|.
|
||||
|
||||
*assert_equal()*
|
||||
assert_equal({expected}, {actual} [, {msg}])
|
||||
When {expected} and {actual} are not equal an error message is
|
||||
added to |v:errors| and 1 is returned. Otherwise zero is
|
||||
returned |assert-return|.
|
||||
There is no automatic conversion, the String "4" is different
|
||||
from the Number 4. And the number 4 is different from the
|
||||
Float 4.0. The value of 'ignorecase' is not used here, case
|
||||
always matters.
|
||||
When {msg} is omitted an error in the form "Expected
|
||||
{expected} but got {actual}" is produced.
|
||||
Example: >
|
||||
assert_equal('foo', 'bar')
|
||||
< Will result in a string to be added to |v:errors|:
|
||||
test.vim line 12: Expected 'foo' but got 'bar' ~
|
||||
|
||||
*assert_equalfile()*
|
||||
assert_equalfile({fname-one}, {fname-two})
|
||||
When the files {fname-one} and {fname-two} do not contain
|
||||
exactly the same text an error message is added to |v:errors|.
|
||||
Also see |assert-return|.
|
||||
When {fname-one} or {fname-two} does not exist the error will
|
||||
mention that.
|
||||
Mainly useful with |terminal-diff|.
|
||||
|
||||
assert_exception({error} [, {msg}]) *assert_exception()*
|
||||
When v:exception does not contain the string {error} an error
|
||||
message is added to |v:errors|. Also see |assert-return|.
|
||||
This can be used to assert that a command throws an exception.
|
||||
Using the error number, followed by a colon, avoids problems
|
||||
with translations: >
|
||||
try
|
||||
commandthatfails
|
||||
call assert_false(1, 'command should have failed')
|
||||
catch
|
||||
call assert_exception('E492:')
|
||||
endtry
|
||||
|
||||
assert_fails({cmd} [, {error} [, {msg}]]) *assert_fails()*
|
||||
Run {cmd} and add an error message to |v:errors| if it does
|
||||
NOT produce an error. Also see |assert-return|.
|
||||
When {error} is given it must match in |v:errmsg|.
|
||||
Note that beeping is not considered an error, and some failing
|
||||
commands only beep. Use |assert_beeps()| for those.
|
||||
|
||||
assert_false({actual} [, {msg}]) *assert_false()*
|
||||
When {actual} is not false an error message is added to
|
||||
|v:errors|, like with |assert_equal()|.
|
||||
Also see |assert-return|.
|
||||
A value is false when it is zero. When {actual} is not a
|
||||
number the assert fails.
|
||||
When {msg} is omitted an error in the form
|
||||
"Expected False but got {actual}" is produced.
|
||||
|
||||
assert_inrange({lower}, {upper}, {actual} [, {msg}]) *assert_inrange()*
|
||||
This asserts number and |Float| values. When {actual} is lower
|
||||
than {lower} or higher than {upper} an error message is added
|
||||
to |v:errors|. Also see |assert-return|.
|
||||
When {msg} is omitted an error in the form
|
||||
"Expected range {lower} - {upper}, but got {actual}" is
|
||||
produced.
|
||||
|
||||
*assert_match()*
|
||||
assert_match({pattern}, {actual} [, {msg}])
|
||||
When {pattern} does not match {actual} an error message is
|
||||
added to |v:errors|. Also see |assert-return|.
|
||||
|
||||
{pattern} is used as with |=~|: The matching is always done
|
||||
like 'magic' was set and 'cpoptions' is empty, no matter what
|
||||
the actual value of 'magic' or 'cpoptions' is.
|
||||
|
||||
{actual} is used as a string, automatic conversion applies.
|
||||
Use "^" and "$" to match with the start and end of the text.
|
||||
Use both to match the whole text.
|
||||
|
||||
When {msg} is omitted an error in the form
|
||||
"Pattern {pattern} does not match {actual}" is produced.
|
||||
Example: >
|
||||
assert_match('^f.*o$', 'foobar')
|
||||
< Will result in a string to be added to |v:errors|:
|
||||
test.vim line 12: Pattern '^f.*o$' does not match 'foobar' ~
|
||||
|
||||
*assert_notequal()*
|
||||
assert_notequal({expected}, {actual} [, {msg}])
|
||||
The opposite of `assert_equal()`: add an error message to
|
||||
|v:errors| when {expected} and {actual} are equal.
|
||||
Also see |assert-return|.
|
||||
|
||||
*assert_notmatch()*
|
||||
assert_notmatch({pattern}, {actual} [, {msg}])
|
||||
The opposite of `assert_match()`: add an error message to
|
||||
|v:errors| when {pattern} matches {actual}.
|
||||
Also see |assert-return|.
|
||||
|
||||
assert_report({msg}) *assert_report()*
|
||||
Report a test failure directly, using {msg}.
|
||||
Always returns one.
|
||||
|
||||
assert_true({actual} [, {msg}]) *assert_true()*
|
||||
When {actual} is not true an error message is added to
|
||||
|v:errors|, like with |assert_equal()|.
|
||||
Also see |assert-return|.
|
||||
A value is TRUE when it is a non-zero number. When {actual}
|
||||
is not a number the assert fails.
|
||||
When {msg} is omitted an error in the form "Expected True but
|
||||
got {actual}" is produced.
|
||||
|
||||
|
||||
vim:tw=78:ts=8:noet:ft=help:norl:
|
||||
@@ -1,4 +1,4 @@
|
||||
*textprop.txt* For Vim version 8.1. Last change: 2019 Jun 13
|
||||
*textprop.txt* For Vim version 8.1. Last change: 2019 Jul 20
|
||||
|
||||
|
||||
VIM REFERENCE MANUAL by Bram Moolenaar
|
||||
@@ -116,6 +116,202 @@ prop_list({lnum} [, {props}) text properties in {lnum}
|
||||
prop_remove({props} [, {lnum} [, {lnum-end}]])
|
||||
remove a text property
|
||||
|
||||
*prop_add()* *E965*
|
||||
prop_add({lnum}, {col}, {props})
|
||||
Attach a text property at position {lnum}, {col}. {col} is
|
||||
counted in bytes, use one for the first column.
|
||||
If {lnum} is invalid an error is given. *E966*
|
||||
If {col} is invalid an error is given. *E964*
|
||||
|
||||
{props} is a dictionary with these fields:
|
||||
length length of text in bytes, can only be used
|
||||
for a property that does not continue in
|
||||
another line; can be zero
|
||||
end_lnum line number for the end of text
|
||||
end_col column just after the text; not used when
|
||||
"length" is present; when {col} and "end_col"
|
||||
are equal, and "end_lnum" is omitted or equal
|
||||
to {lnum}, this is a zero-width text property
|
||||
bufnr buffer to add the property to; when omitted
|
||||
the current buffer is used
|
||||
id user defined ID for the property; when omitted
|
||||
zero is used
|
||||
type name of the text property type
|
||||
All fields except "type" are optional.
|
||||
|
||||
It is an error when both "length" and "end_lnum" or "end_col"
|
||||
are given. Either use "length" or "end_col" for a property
|
||||
within one line, or use "end_lnum" and "end_col" for a
|
||||
property that spans more than one line.
|
||||
When neither "length" nor "end_col" are given the property
|
||||
will be zero-width. That means it will not be highlighted but
|
||||
will move with the text, as a kind of mark.
|
||||
The property can end exactly at the last character of the
|
||||
text, or just after it. In the last case, if text is appended
|
||||
to the line, the text property size will increase, also when
|
||||
the property type does not have "end_incl" set.
|
||||
|
||||
"type" will first be looked up in the buffer the property is
|
||||
added to. When not found, the global property types are used.
|
||||
If not found an error is given.
|
||||
|
||||
See |text-properties| for information about text properties.
|
||||
|
||||
|
||||
prop_clear({lnum} [, {lnum-end} [, {props}]]) *prop_clear()*
|
||||
Remove all text properties from line {lnum}.
|
||||
When {lnum-end} is given, remove all text properties from line
|
||||
{lnum} to {lnum-end} (inclusive).
|
||||
|
||||
When {props} contains a "bufnr" item use this buffer,
|
||||
otherwise use the current buffer.
|
||||
|
||||
See |text-properties| for information about text properties.
|
||||
|
||||
*prop_find()*
|
||||
prop_find({props} [, {direction}])
|
||||
NOT IMPLEMENTED YET
|
||||
Search for a text property as specified with {props}:
|
||||
id property with this ID
|
||||
type property with this type name
|
||||
bufnr buffer to search in; when present a
|
||||
start position with "lnum" and "col"
|
||||
must be given; when omitted the
|
||||
current buffer is used
|
||||
lnum start in this line (when omitted start
|
||||
at the cursor)
|
||||
col start at this column (when omitted
|
||||
and "lnum" is given: use column 1,
|
||||
otherwise start at the cursor)
|
||||
skipstart do not look for a match at the start
|
||||
position
|
||||
|
||||
{direction} can be "f" for forward and "b" for backward. When
|
||||
omitted forward search is performed.
|
||||
|
||||
If a match is found then a Dict is returned with the entries
|
||||
as with prop_list(), and additionally an "lnum" entry.
|
||||
If no match is found then an empty Dict is returned.
|
||||
|
||||
See |text-properties| for information about text properties.
|
||||
|
||||
|
||||
prop_list({lnum} [, {props}]) *prop_list()*
|
||||
Return a List with all text properties in line {lnum}.
|
||||
|
||||
When {props} contains a "bufnr" item, use this buffer instead
|
||||
of the current buffer.
|
||||
|
||||
The properties are ordered by starting column and priority.
|
||||
Each property is a Dict with these entries:
|
||||
col starting column
|
||||
length length in bytes, one more if line break is
|
||||
included
|
||||
id property ID
|
||||
type name of the property type, omitted if
|
||||
the type was deleted
|
||||
start when TRUE property starts in this line
|
||||
end when TRUE property ends in this line
|
||||
|
||||
When "start" is zero the property started in a previous line,
|
||||
the current one is a continuation.
|
||||
When "end" is zero the property continues in the next line.
|
||||
The line break after this line is included.
|
||||
|
||||
See |text-properties| for information about text properties.
|
||||
|
||||
|
||||
*prop_remove()* *E968*
|
||||
prop_remove({props} [, {lnum} [, {lnum-end}]])
|
||||
Remove a matching text property from line {lnum}. When
|
||||
{lnum-end} is given, remove matching text properties from line
|
||||
{lnum} to {lnum-end} (inclusive).
|
||||
When {lnum} is omitted remove matching text properties from
|
||||
all lines.
|
||||
|
||||
{props} is a dictionary with these fields:
|
||||
id remove text properties with this ID
|
||||
type remove text properties with this type name
|
||||
bufnr use this buffer instead of the current one
|
||||
all when TRUE remove all matching text properties,
|
||||
not just the first one
|
||||
A property matches when either "id" or "type" matches.
|
||||
If buffer "bufnr" does not exist you get an error message.
|
||||
If buffer "bufnr" is not loaded then nothing happens.
|
||||
|
||||
Returns the number of properties that were removed.
|
||||
|
||||
See |text-properties| for information about text properties.
|
||||
|
||||
|
||||
prop_type_add({name}, {props}) *prop_type_add()* *E969* *E970*
|
||||
Add a text property type {name}. If a property type with this
|
||||
name already exists an error is given.
|
||||
{props} is a dictionary with these optional fields:
|
||||
bufnr define the property only for this buffer; this
|
||||
avoids name collisions and automatically
|
||||
clears the property types when the buffer is
|
||||
deleted.
|
||||
highlight name of highlight group to use
|
||||
priority when a character has multiple text
|
||||
properties the one with the highest priority
|
||||
will be used; negative values can be used, the
|
||||
default priority is zero
|
||||
combine when TRUE combine the highlight with any
|
||||
syntax highlight; when omitted or FALSE syntax
|
||||
highlight will not be used
|
||||
start_incl when TRUE inserts at the start position will
|
||||
be included in the text property
|
||||
end_incl when TRUE inserts at the end position will be
|
||||
included in the text property
|
||||
|
||||
See |text-properties| for information about text properties.
|
||||
|
||||
|
||||
prop_type_change({name}, {props}) *prop_type_change()*
|
||||
Change properties of an existing text property type. If a
|
||||
property with this name does not exist an error is given.
|
||||
The {props} argument is just like |prop_type_add()|.
|
||||
|
||||
See |text-properties| for information about text properties.
|
||||
|
||||
|
||||
prop_type_delete({name} [, {props}]) *prop_type_delete()*
|
||||
Remove the text property type {name}. When text properties
|
||||
using the type {name} are still in place, they will not have
|
||||
an effect and can no longer be removed by name.
|
||||
|
||||
{props} can contain a "bufnr" item. When it is given, delete
|
||||
a property type from this buffer instead of from the global
|
||||
property types.
|
||||
|
||||
When text property type {name} is not found there is no error.
|
||||
|
||||
See |text-properties| for information about text properties.
|
||||
|
||||
|
||||
prop_type_get([{name} [, {props}]) *prop_type_get()*
|
||||
Returns the properties of property type {name}. This is a
|
||||
dictionary with the same fields as was given to
|
||||
prop_type_add().
|
||||
When the property type {name} does not exist, an empty
|
||||
dictionary is returned.
|
||||
|
||||
{props} can contain a "bufnr" item. When it is given, use
|
||||
this buffer instead of the global property types.
|
||||
|
||||
See |text-properties| for information about text properties.
|
||||
|
||||
|
||||
prop_type_list([{props}]) *prop_type_list()*
|
||||
Returns a list with all property type names.
|
||||
|
||||
{props} can contain a "bufnr" item. When it is given, use
|
||||
this buffer instead of the global property types.
|
||||
|
||||
See |text-properties| for information about text properties.
|
||||
|
||||
|
||||
==============================================================================
|
||||
3. When text changes *text-prop-changes*
|
||||
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
*todo.txt* For Vim version 8.1. Last change: 2019 Jul 04
|
||||
*todo.txt* For Vim version 8.1. Last change: 2019 Jul 30
|
||||
|
||||
|
||||
VIM REFERENCE MANUAL by Bram Moolenaar
|
||||
@@ -38,33 +38,18 @@ browser use: https://github.com/vim/vim/issues/1234
|
||||
*known-bugs*
|
||||
-------------------- Known bugs and current work -----------------------
|
||||
|
||||
Ongoing work on text properties, see src/textprop.c
|
||||
|
||||
Popup windows are being implemented, see |popup-window|.
|
||||
|
||||
Patch to fix session file when using multiple tabs. (Jason Franklin, 2019 May
|
||||
20)
|
||||
Also put :argadd commands at the start for all buffers, so that their order
|
||||
remains equal? Then %argdel to clean it up. Do try this with 'hidden' set.
|
||||
|
||||
Listener causes extra } to be inserted. (Paul Jolly, #4455)
|
||||
|
||||
Refactor: Move common things out of evalfunc.c, it's too big.
|
||||
|
||||
Template string: review #4491
|
||||
|
||||
Terminal test fails when vim is configured with some features. (Dominique,
|
||||
#4597)
|
||||
|
||||
Popup windows:
|
||||
- Always show the right border, not only when there is a close button?
|
||||
- bug: double click in scrollbar starts selection
|
||||
- modeless selection fails over ssh and with putty. Mouse dragging not
|
||||
supported? Can we force it on?
|
||||
- Allow resizing from the bottom-right corner
|
||||
- Implement flip option
|
||||
- Have a way to scroll to the bottom? (#4577)
|
||||
- Have a way to scroll to the bottom, e.g. set 'firstline' to -1? (#4577)
|
||||
- Why does 'nrformats' leak from the popup window buffer???
|
||||
Happens in Test_simple_popup() at the second screendump.
|
||||
- Disable commands, feedkeys(), CTRL-W, etc. in a popup window.
|
||||
Use ERROR_IF_POPUP_WINDOW for more commands.
|
||||
- Add 'balloonpopup': instead of showing text, let the callback open a popup
|
||||
window and return the window ID. The popup will then be closed when the
|
||||
mouse moves, except when it moves inside the popup.
|
||||
- For the "moved" property also include mouse movement?
|
||||
- Can the buffer be re-used if it was the last one, to avoid using up lots of
|
||||
buffer numbers?
|
||||
@@ -150,37 +135,68 @@ Terminal emulator window:
|
||||
- When 'encoding' is not utf-8, or the job is using another encoding, setup
|
||||
conversions.
|
||||
|
||||
Error numbers available: E260, E274, E275, E276,
|
||||
E278, E279, E290, E292, E362, E366, E450, E451, E452,
|
||||
E453, E454, E460, E489, E491, E565, E578, E610, E611, E653,
|
||||
E654, E856, E857, E860, E861, E863, E889, E900
|
||||
|
||||
Patch on issue #4661 to fix resolve(). (Ken Takata)
|
||||
https://gist.github.com/k-takata/52d0a677ca9a27bdbaed21d77533244e
|
||||
|
||||
Patch to split of map.c from getchar.c (Yegappan, #4740)
|
||||
|
||||
Sound: support on Mac? Or does libcanberra work there?
|
||||
|
||||
Patch to use forward slash for completion even when 'shellslash' is set.
|
||||
Adds 'completepathslash'. (Yasuhiro Matsumoto, 2018 Nov 15, #3612)
|
||||
|
||||
Patch to add win_splitmove() function. (Andy Massimino, #4561)
|
||||
|
||||
Patch for #4733: #4734. Test needs improvements.
|
||||
|
||||
Patch to fix session file when using multiple tabs. (Jason Franklin, 2019 May
|
||||
20)
|
||||
Also put :argadd commands at the start for all buffers, so that their order
|
||||
remains equal? Then %argdel to clean it up. Do try this with 'hidden' set.
|
||||
|
||||
Make heredoc-let a bit more restrictive:
|
||||
https://github.com/vim/vim/issues/4705
|
||||
|
||||
Completion mixes results from the current buffer with tags and other files.
|
||||
Happens when typing CTRL-N while still search for results. E.g., type "b_" in
|
||||
terminal.c and then CTRL-N twice.
|
||||
Should do current file first and not split it up when more results are found.
|
||||
(Also #1890)
|
||||
|
||||
Patch to add :spellrare. (#4291)
|
||||
|
||||
Patch to use timers in matchparen. (Daniel Hahler, #1338)
|
||||
Ready to include now?
|
||||
|
||||
Adding "10" to 'spellsuggest' causes spell suggestions to become very slow.
|
||||
(#4087)
|
||||
|
||||
Patch to the code to get sign information. (Yegappan Lakshmanan, #4586)
|
||||
Patch to support 'cursorlineopt' - only highlight the line number of the
|
||||
cursor line: #4693
|
||||
|
||||
Let plugins know how much space is available in the last line before
|
||||
triggering the hit-enter prompt. Internally called "sc_col".
|
||||
(Daniel Hahler, #4732)
|
||||
|
||||
Patch for Template string: #4491 Not ready yet. New pull: #4634
|
||||
|
||||
":bnext" in a help buffer is supposed to go to the next help buffer, but it
|
||||
goes to any buffer, and then :bnext skips help buffers, since they are
|
||||
unlisted. (#4478)
|
||||
|
||||
Problem with German spell file. Hint for solution by Klaus-Peter Schreiner in
|
||||
#4314, solves the Rasenmäher problem.
|
||||
Make 'showbreak' global-local.
|
||||
|
||||
Problem showing a line if the number column width changes when using "o".
|
||||
(Mateusz Morusiewicz, #4245)
|
||||
|
||||
When using :packadd for a replacement language plugin, it is loaded after the
|
||||
default one. #4698
|
||||
|
||||
When using :packadd files under "later" are not used, which is inconsistent
|
||||
with packages under "start". (xtal8, #1994)
|
||||
|
||||
Visual highlight not removed when 'dipslay' is "lastline" and line doesn't
|
||||
fit. (Kevin Lawler, #4457)
|
||||
|
||||
@@ -208,6 +224,9 @@ Patch for Inno Setup: #2739
|
||||
Internal diff doesn't handle binary file like external diff does. (Mike
|
||||
Williams, 2018 Oct 30)
|
||||
|
||||
"exepath('bin/cmd')" does not work while ":!bin/cmd" does work.
|
||||
(Daniel Hahler, #4710) and executable('bin/cmd') returns 1
|
||||
|
||||
Problem with :tlmenu: Detach item added with all modes? Issue #3563.
|
||||
|
||||
The quoting of the [command] argument of :terminal is not clearly documented.
|
||||
@@ -227,9 +246,36 @@ Patch for ambiguous width characters in libvterm on MS-Windows 10.
|
||||
|
||||
Problem with colors in terminal window. (Jason Franklin, 2019 May 12)
|
||||
|
||||
Lifepillar: Updated/cleaned up color schemes:
|
||||
https://github.com/lifepillar/vim8-colorschemes.
|
||||
|
||||
Include a few color schemes, based on popularity:
|
||||
http://www.vim.org/scripts/script_search_results.php?keywords=&script_type=color+scheme&order_by=rating&direction=descending&search=search
|
||||
http://vimawesome.com/?q=tag:color-scheme
|
||||
Use names that indicate their appearance (Christian Brabandt, 2017 Aug 3)
|
||||
- monokai - Xia Crusoe (2017 Aug 4)
|
||||
- seoul256 - Christian Brabandt (2017 Aug 3)
|
||||
- gruvbox - Christian Brabandt (2017 Aug 3) (simplified version from
|
||||
Lifepillar, 2018 Jan 22, #2573)
|
||||
- janah - Marco Hinz (2017 Aug 4)
|
||||
- apprentice - Romain Lafourcade (2017 Aug 6) remarks about help file #1964
|
||||
Suggested by Hiroki Kokubun:
|
||||
- [Iceberg](https://github.com/cocopon/iceberg.vim) (my one)
|
||||
- [hybrid](https://github.com/w0ng/vim-hybrid)
|
||||
Include solarized color scheme?, it does not support termguicolors.
|
||||
- Sanitized version of pablo (Lifepillar, 2017 Nov 21)
|
||||
|
||||
Bug: "vipgw" does not put cursor back where it belongs. (Jason Franklin, 2019
|
||||
Mar 5)
|
||||
|
||||
Many users don't like 'thesaurus' to match so many words. (#4667, #1611)
|
||||
- when the match with the first word is partial, don't add other words on that
|
||||
line.
|
||||
- support other file formats, such as comma separated. Indicate by a prefix
|
||||
to the file in the 'thesaurus' option.
|
||||
- 'threglookexp' option: only match with first word in thesaurus file.
|
||||
(Jakson A. Aquino, 2006 Jun 14)
|
||||
|
||||
Some composing characters actually add a cell width to the character they are
|
||||
on top off, making the whole thing two characters wide. (#4526)
|
||||
|
||||
@@ -267,6 +313,24 @@ added?
|
||||
Add test for urxvt mouse codes. Also test that mouse coordinates can be
|
||||
negative. (see #4326)
|
||||
|
||||
All functions are global, which makes functions like get() and len() awkward.
|
||||
For the future use the ~get() and ~len() syntax. It also allows for
|
||||
chaining: >
|
||||
mylist~get(idx)
|
||||
mylist~uniq()~len()
|
||||
mydict~get(idx)
|
||||
mystring~len()
|
||||
Or use -> (like C pointer dereference) >
|
||||
mylist->get(idx)
|
||||
mylist->uniq()->len()
|
||||
mydict->get(idx)
|
||||
mystring->len()
|
||||
Alternatives for ~:
|
||||
^ list^get() could also be used
|
||||
. list.get() already means "member" in Dict
|
||||
$ list$get() harder to read
|
||||
@ list@get() harder to read
|
||||
|
||||
'cmdheight' has a tab-local value, but it cannot be obtained with
|
||||
`:echo gettabwinvar(2, 1, '&cmdheight')` returns the value for the _current_
|
||||
tab page. (Ingo Karkat, #4324)
|
||||
@@ -309,6 +373,10 @@ nvo-mode mapping works on Windows, not on Linux. (#3678)
|
||||
Missing tests for:
|
||||
- add_termcap_entry()
|
||||
|
||||
Redo only remembers the last change. Could use "{count}g." to redo an older
|
||||
change. How does the user know which change? At least have a way to list
|
||||
them: ":repeats". Add to history, like search history and command line history.
|
||||
|
||||
When using exclusive selection and vi" that fails, cursor moves to the left.
|
||||
Cursor should not move. (#4024)
|
||||
|
||||
@@ -477,6 +545,8 @@ when adding a sign for every quickfix entry. (#4557)
|
||||
Win32 key codes are messy. Mike Williams tried to fix that, but now old
|
||||
mappings no longer work. Create a new terminal for the better solution?
|
||||
|
||||
Patch to "fix" 'visualbell'. Add option to set delay? (#1789)
|
||||
|
||||
Script generated by :mksession does not work well if there are windows with
|
||||
modified buffers
|
||||
change "silent only" into "silent only!"
|
||||
@@ -579,9 +649,6 @@ With 'foldmethod' "indent" and appending an empty line, what follows isn't
|
||||
included in the existing fold. Deleting the empty line and undo fixes it.
|
||||
(Oleg Koshovetc, 2018 Jul 15, #3214)
|
||||
|
||||
When using :packadd files under "later" are not used, which is inconsistent
|
||||
with packages under "start". (xtal8, #1994)
|
||||
|
||||
Patch to support "xxd -ps". (Erik Auerswald, 2018 May 1)
|
||||
Lacks a test.
|
||||
|
||||
@@ -760,18 +827,6 @@ behavior. Skip when "uname" returns "SunOS"? (Pavel Heimlich, #1872)
|
||||
|
||||
'tagrelative' is broken in specific situation. (xaizek, 2017 Oct 19, #2221)
|
||||
|
||||
All functions are global, which makes functions like get() and len() awkward.
|
||||
For the future use the ~get() and ~len() syntax, e.g.:
|
||||
mylist~get(idx)
|
||||
mydict~get(idx)
|
||||
mystring~len()
|
||||
Alternatives for ~:
|
||||
^ list^get() could also be used
|
||||
. list.get() already means concatenate
|
||||
$ list$get() harder to read
|
||||
@ list@get() harder to read
|
||||
-> list->get() two characters, used for lambda
|
||||
|
||||
The ++ options for the :edit command are also useful on the Vim command line.
|
||||
|
||||
When recovering a file, put the swap file name in b:recovered_swapfile. Then
|
||||
@@ -791,22 +846,6 @@ Seems to happen when the selection is requested the second time, but before
|
||||
clip_x11_convert_selection_cb() is invoked, thus in X library code.
|
||||
Kazunobu Kuriyama is working on a proper fix. (2017 Jul 25)
|
||||
|
||||
Include a few color schemes, based on popularity:
|
||||
http://www.vim.org/scripts/script_search_results.php?keywords=&script_type=color+scheme&order_by=rating&direction=descending&search=search
|
||||
http://vimawesome.com/?q=tag:color-scheme
|
||||
Use names that indicate their appearance (Christian Brabandt, 2017 Aug 3)
|
||||
- monokai - Xia Crusoe (2017 Aug 4)
|
||||
- seoul256 - Christian Brabandt (2017 Aug 3)
|
||||
- gruvbox - Christian Brabandt (2017 Aug 3) (simplified version from
|
||||
Lifepillar, 2018 Jan 22, #2573)
|
||||
- janah - Marco Hinz (2017 Aug 4)
|
||||
- apprentice - Romain Lafourcade (2017 Aug 6) remarks about help file #1964
|
||||
Suggested by Hiroki Kokubun:
|
||||
- [Iceberg](https://github.com/cocopon/iceberg.vim) (my one)
|
||||
- [hybrid](https://github.com/w0ng/vim-hybrid)
|
||||
Include solarized color scheme?, it does not support termguicolors.
|
||||
- Sanitized version of pablo (Lifepillar, 2017 Nov 21)
|
||||
|
||||
Problem with three-piece comment. (Michael Lee, 2017 May 11, #1696)
|
||||
|
||||
Creating a partial with an autoload function is confused about the "self"
|
||||
@@ -1521,10 +1560,6 @@ Patch for building a 32bit Vim with 64bit MingW compiler.
|
||||
Patch: On MS-Windows shellescape() may have to triple double quotes.
|
||||
(Ingo Karkat, 2015 Jan 16)
|
||||
|
||||
Redo only remembers the last change. Could use "{count}g." to redo an older
|
||||
change. How does the user know which change? At least have a way to list
|
||||
them: ":repeats".
|
||||
|
||||
Patch for glob(), adding slash to normal files. (Ingo Karkat, 2014 Dec 22)
|
||||
|
||||
When entering and leaving the preview window autocommands are triggered, but
|
||||
@@ -3013,8 +3048,6 @@ More patches:
|
||||
- Add 'cscopeignorecase' option. (Liang Wenzhi, 2006 Sept 3)
|
||||
- Extra argument to strtrans() to translate special keys to their name (Eric
|
||||
Arnold, 2006 May 22)
|
||||
- 'threglookexp' option: only match with first word in thesaurus file.
|
||||
(Jakson A. Aquino, 2006 Jun 14)
|
||||
- Mac: indicate whether a buffer was modified. (Nicolas Weber, 2006 Jun 30)
|
||||
- Allow negative 'nrwidth' for left aligning. (Nathan Laredo, 2006 Aug 16)
|
||||
- ml_append_string(): efficiently append to an existing line. (Brad
|
||||
@@ -4359,8 +4392,6 @@ Vim script language:
|
||||
to avoid a performance penalty (esp. for string options)?
|
||||
8 Add referring to key options with "&t_xx". Both for "echo &t_xx" and
|
||||
":let &t_xx =". Useful for making portable mappings.
|
||||
- Add ":let var ?= value", conditional assignment. Patch by Dave Eggum,
|
||||
2006 Dec 11.
|
||||
- range for ":exec", pass it on to the executed command. (Webb)
|
||||
8 ":{range}source": source the lines from the current file.
|
||||
You can already yank lines and use :@" to execute them.
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
*usr_27.txt* For Vim version 8.1. Last change: 2018 Jan 26
|
||||
*usr_27.txt* For Vim version 8.1. Last change: 2019 Jul 14
|
||||
|
||||
VIM USER MANUAL - by Bram Moolenaar
|
||||
|
||||
@@ -474,19 +474,19 @@ the line break happens, because all items mentioned so far don't match a line
|
||||
break.
|
||||
To check for a line break in a specific place, use the "\n" item: >
|
||||
|
||||
/the\nword
|
||||
/one\ntwo
|
||||
|
||||
This will match at a line that ends in "the" and the next line starts with
|
||||
"word". To match "the word" as well, you need to match a space or a line
|
||||
This will match at a line that ends in "one" and the next line starts with
|
||||
"two". To match "one two" as well, you need to match a space or a line
|
||||
break. The item to use for it is "\_s": >
|
||||
|
||||
/the\_sword
|
||||
/one\_stwo
|
||||
|
||||
To allow any amount of white space: >
|
||||
|
||||
/the\_s\+word
|
||||
/one\_s\+two
|
||||
|
||||
This also matches when "the " is at the end of a line and " word" at the
|
||||
This also matches when "one " is at the end of a line and " two" at the
|
||||
start of the next one.
|
||||
|
||||
"\s" matches white space, "\_s" matches white space or a line break.
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
*usr_41.txt* For Vim version 8.1. Last change: 2019 Jul 04
|
||||
*usr_41.txt* For Vim version 8.1. Last change: 2019 Jul 06
|
||||
|
||||
VIM USER MANUAL - by Bram Moolenaar
|
||||
|
||||
@@ -1015,8 +1015,10 @@ Signs: *sign-functions*
|
||||
sign_getplaced() get a list of placed signs
|
||||
sign_jump() jump to a sign
|
||||
sign_place() place a sign
|
||||
sign_placelist() place a list of signs
|
||||
sign_undefine() undefine a sign
|
||||
sign_unplace() unplace a sign
|
||||
sign_unplacelist() unplace a list of signs
|
||||
|
||||
Terminal window: *terminal-functions*
|
||||
term_start() open a terminal window and run a job
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
*various.txt* For Vim version 8.1. Last change: 2019 Jun 10
|
||||
*various.txt* For Vim version 8.1. Last change: 2019 Jul 21
|
||||
|
||||
|
||||
VIM REFERENCE MANUAL by Bram Moolenaar
|
||||
@@ -457,7 +457,6 @@ B *+vartabs* Variable-width tabstops. |'vartabstop'|
|
||||
N *+viminfo* |'viminfo'|
|
||||
*+vertsplit* Vertically split windows |:vsplit|; Always enabled
|
||||
since 8.0.1118.
|
||||
in sync with the |+windows| feature
|
||||
N *+virtualedit* |'virtualedit'|
|
||||
T *+visual* Visual mode |Visual-mode| Always enabled since 7.4.200.
|
||||
T *+visualextra* extra Visual mode commands |blockwise-operators|
|
||||
|
||||
@@ -7625,8 +7625,8 @@ Problem: Still using __ARGS.
|
||||
Solution: Remove __ARGS in several files. (script by Hirohito Higashi)
|
||||
Files: src/ex_eval.c, src/ex_getln.c, src/farsi.c, src/fileio.c,
|
||||
src/fold.c, src/getchar.c, src/gui.c, src/gui_at_fs.c,
|
||||
gui_at_sb.c, src/gui_athena.c, src/gui_beval.c, src/gui_motif.c,
|
||||
src/gui_w32.c, src/gui_w48.c
|
||||
src/gui_at_sb.c, src/gui_athena.c, src/gui_beval.c,
|
||||
src/gui_motif.c, src/gui_w32.c, src/gui_w48.c
|
||||
|
||||
Patch 7.4.1198
|
||||
Problem: Still using __ARGS.
|
||||
@@ -8045,7 +8045,7 @@ Patch 7.4.1264
|
||||
Problem: Crash when receiving an empty array.
|
||||
Solution: Check for array with wrong number of arguments. (Damien)
|
||||
Files: src/channel.c, src/eval.c, src/testdir/test_channel.py,
|
||||
src/testdir.test_channel.vim
|
||||
src/testdir/test_channel.vim
|
||||
|
||||
Patch 7.4.1265
|
||||
Problem: Not all channel commands are tested.
|
||||
@@ -8454,8 +8454,8 @@ Files: src/os_win32.c
|
||||
Patch 7.4.1336
|
||||
Problem: Channel NL mode is not supported yet.
|
||||
Solution: Add NL mode support to channels.
|
||||
Files: src/channel.c, src/netbeans.c, src/structs.h, src/os_unix.d,
|
||||
src/os_win32.c, src/proto/channel.pro, src/proto/os_unix.pro,
|
||||
Files: src/channel.c, src/netbeans.c, src/structs.h, src/os_win32.c,
|
||||
src/proto/channel.pro, src/proto/os_unix.pro,
|
||||
src/proto/os_win32.pro, src/testdir/test_channel.vim,
|
||||
src/testdir/test_channel_pipe.py
|
||||
|
||||
@@ -13904,7 +13904,7 @@ Problem: Using 'hlsearch' highlighting instead of matchpos if there is no
|
||||
search match.
|
||||
Solution: Pass NULL as last item to next_search_hl() when searching for
|
||||
'hlsearch' match. (Shane Harper, closes #1013)
|
||||
Files: src/screen.c, src/testdir/test_match.vim.
|
||||
Files: src/screen.c, src/testdir/test_match.vim
|
||||
|
||||
Patch 7.4.2270
|
||||
Problem: Insufficient testing for NUL bytes on a raw channel.
|
||||
@@ -18306,13 +18306,13 @@ Patch 8.0.0610
|
||||
Problem: The screen is redrawn when t_BG is set and used to detect the
|
||||
value for 'background'.
|
||||
Solution: Don't redraw when the value of 'background' didn't change.
|
||||
Files: src/term.c.
|
||||
Files: src/term.c
|
||||
|
||||
Patch 8.0.0611
|
||||
Problem: When t_u7 is sent a few characters in the second screen line are
|
||||
overwritten and not redrawn later. (Rastislav Barlik)
|
||||
Solution: Move redrawing the screen to after overwriting the characters.
|
||||
Files: src/main.c, src/term.c.
|
||||
Files: src/main.c, src/term.c
|
||||
|
||||
Patch 8.0.0612
|
||||
Problem: Package directories are added to 'runtimepath' only after loading
|
||||
@@ -27638,7 +27638,7 @@ Files: src/terminal.c, src/testdir/dumps/Test_syntax_c_01.dump
|
||||
Patch 8.1.0327
|
||||
Problem: The "g CTRL-G" command isn't tested much.
|
||||
Solution: Add more tests. (Dominique Pelle, closes #3369)
|
||||
Files: src/testdir/test_normal.c
|
||||
Files: src/testdir/test_normal.vim
|
||||
|
||||
Patch 8.1.0328
|
||||
Problem: inputlist() doesn't work with a timer. (Dominique Pelle)
|
||||
@@ -29424,7 +29424,7 @@ Patch 8.1.0629
|
||||
Problem: "gn" selects the wrong text with a multi-line match.
|
||||
Solution: Get the end position from searchit() directly. (closes #3695)
|
||||
Files: src/testdir/test_gn.vim, src/search.c, src/proto/search.pro,
|
||||
src/edit.c, src/evalfunc.c, src/ex_docmd.c, ex_getln.c,
|
||||
src/edit.c, src/evalfunc.c, src/ex_docmd.c, src/ex_getln.c,
|
||||
src/normal.c
|
||||
|
||||
Patch 8.1.0630
|
||||
@@ -30859,7 +30859,7 @@ Patch 8.1.0849
|
||||
Problem: Cursorline highlight is not always updated.
|
||||
Solution: Set w_last_cursorline when redrawing. Fix resetting cursor flags
|
||||
when using the popup menu.
|
||||
Files: src/screen.c, src/popupmenu.c, src/testdir/test_highlight.vim,
|
||||
Files: src/screen.c, src/popupmnu.c, src/testdir/test_highlight.vim,
|
||||
src/testdir/dumps/Test_cursorline_yank_01.dump
|
||||
|
||||
Patch 8.1.0850
|
||||
@@ -33447,7 +33447,7 @@ Patch 8.1.1276
|
||||
Problem: Cannot combine text properties with syntax highlighting.
|
||||
Solution: Add the "combine" field to prop_type_add(). (closes #4343)
|
||||
Files: runtime/doc/eval.txt, runtime/doc/textprop.txt, src/screen.c,
|
||||
src/testprop.c, src/structs.h, src/testdir/test_textprop.vim
|
||||
src/structs.h, src/testdir/test_textprop.vim
|
||||
|
||||
Patch 8.1.1277 (after 8.1.1276)
|
||||
Problem: Missing screenshot update.
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
*windows.txt* For Vim version 8.1. Last change: 2019 Jun 02
|
||||
*windows.txt* For Vim version 8.1. Last change: 2019 Jul 27
|
||||
|
||||
|
||||
VIM REFERENCE MANUAL by Bram Moolenaar
|
||||
@@ -28,8 +28,6 @@ The basics are explained in chapter 7 and 8 of the user manual |usr_07.txt|
|
||||
|
||||
{not able to use multiple windows when the |+windows| feature was disabled at
|
||||
compile time}
|
||||
{not able to use vertically split windows when the |+vertsplit| feature was
|
||||
disabled at compile time}
|
||||
|
||||
==============================================================================
|
||||
1. Introduction *windows-intro* *window*
|
||||
@@ -162,6 +160,10 @@ CTRL-W CTRL-S *CTRL-W_CTRL-S*
|
||||
Note: CTRL-S does not work on all terminals and might block
|
||||
further input, use CTRL-Q to get going again.
|
||||
Also see |++opt| and |+cmd|.
|
||||
*E242*
|
||||
Be careful when splitting a window in an autocommand, it may
|
||||
mess up the window layout if this happens while making other
|
||||
window layout changes.
|
||||
|
||||
CTRL-W CTRL-V *CTRL-W_CTRL-V*
|
||||
CTRL-W v *CTRL-W_v*
|
||||
@@ -507,7 +509,6 @@ CTRL-W H Move the current window to be at the far left, using the
|
||||
current window and then creating another one with
|
||||
":vert topleft split", except that the current window contents
|
||||
is used for the new window.
|
||||
{not available when compiled without the |+vertsplit| feature}
|
||||
|
||||
*CTRL-W_L*
|
||||
CTRL-W L Move the current window to be at the far right, using the full
|
||||
@@ -515,7 +516,6 @@ CTRL-W L Move the current window to be at the far right, using the full
|
||||
current window and then creating another one with
|
||||
":vert botright split", except that the current window
|
||||
contents is used for the new window.
|
||||
{not available when compiled without the |+vertsplit| feature}
|
||||
|
||||
*CTRL-W_T*
|
||||
CTRL-W T Move the current window to a new tab page. This fails if
|
||||
@@ -667,6 +667,8 @@ can also get to them with the buffer list commands, like ":bnext".
|
||||
|:vertical| was prepended).
|
||||
Buf/Win Enter/Leave autocommands are not executed for the new
|
||||
windows here, that's only done when they are really entered.
|
||||
If autocommands change the window layout while this command is
|
||||
busy an error will be given. *E249*
|
||||
|
||||
:[N]sa[rgument][!] [++opt] [+cmd] [N] *:sa* *:sargument*
|
||||
Short for ":split | argument [N]": split window and go to Nth
|
||||
@@ -864,7 +866,15 @@ height of the preview window when it's opened. The 'previewwindow' option is
|
||||
set in the preview window to be able to recognize it. The 'winfixheight'
|
||||
option is set to have it keep the same height when opening/closing other
|
||||
windows.
|
||||
|
||||
*preview-popup*
|
||||
Alternatively, a popup window can be used by setting the 'previewpopup'
|
||||
option. When set, it overrules the 'previewwindow' and 'previewheight'
|
||||
settings. The option is a comma separated list of values:
|
||||
height maximum height of the popup
|
||||
width maximum width of the popup
|
||||
Example: >
|
||||
:set previewpopup=height:10,width:60
|
||||
<
|
||||
*:pta* *:ptag*
|
||||
:pta[g][!] [tagname]
|
||||
Does ":tag[!] [tagname]" and shows the found tag in a
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
" Vim support file to detect file types
|
||||
"
|
||||
" Maintainer: Bram Moolenaar <Bram@vim.org>
|
||||
" Last Change: 2019 May 06
|
||||
" Last Change: 2019 Jul 27
|
||||
|
||||
" Listen very carefully, I will say this only once
|
||||
if exists("did_load_filetypes")
|
||||
@@ -1776,12 +1776,15 @@ au BufNewFile,BufRead *.wrl setf vrml
|
||||
" Vroom (vim testing and executable documentation)
|
||||
au BufNewFile,BufRead *.vroom setf vroom
|
||||
|
||||
" Webmacro
|
||||
au BufNewFile,BufRead *.wm setf webmacro
|
||||
" Vue.js Single File Component
|
||||
au BufNewFile,BufRead *.vue setf vue
|
||||
|
||||
" WebAssembly
|
||||
au BufNewFile,BufRead *.wast,*.wat setf wast
|
||||
|
||||
" Webmacro
|
||||
au BufNewFile,BufRead *.wm setf webmacro
|
||||
|
||||
" Wget config
|
||||
au BufNewFile,BufRead .wgetrc,wgetrc setf wget
|
||||
|
||||
|
||||
@@ -1,7 +1,8 @@
|
||||
" Vim filetype plugin file
|
||||
" Language: man
|
||||
" Maintainer: SungHyun Nam <goweol@gmail.com>
|
||||
" Last Change: 2019 Jan 22
|
||||
" Last Change: 2019 Jul 22
|
||||
" (fix by Jason Franklin)
|
||||
|
||||
" To make the ":Man" command available before editing a manual page, source
|
||||
" this script from your startup vimrc file.
|
||||
@@ -143,6 +144,8 @@ func <SID>GetPage(cmdmods, ...)
|
||||
exec "let s:man_tag_col_".s:man_tag_depth." = ".col(".")
|
||||
let s:man_tag_depth = s:man_tag_depth + 1
|
||||
|
||||
let open_cmd = 'edit'
|
||||
|
||||
" Use an existing "man" window if it exists, otherwise open a new one.
|
||||
if &filetype != "man"
|
||||
let thiswin = winnr()
|
||||
@@ -161,28 +164,25 @@ func <SID>GetPage(cmdmods, ...)
|
||||
endif
|
||||
if &filetype != "man"
|
||||
if exists("g:ft_man_open_mode")
|
||||
if g:ft_man_open_mode == "vert"
|
||||
vnew
|
||||
elseif g:ft_man_open_mode == "tab"
|
||||
tabnew
|
||||
if g:ft_man_open_mode == 'vert'
|
||||
let open_cmd = 'vsplit'
|
||||
elseif g:ft_man_open_mode == 'tab'
|
||||
let open_cmd = 'tabedit'
|
||||
else
|
||||
new
|
||||
let open_cmd = 'split'
|
||||
endif
|
||||
else
|
||||
if a:cmdmods != ''
|
||||
exe a:cmdmods . ' new'
|
||||
else
|
||||
new
|
||||
endif
|
||||
let open_cmd = a:cmdmods . ' split'
|
||||
endif
|
||||
setl nonu fdc=0
|
||||
endif
|
||||
endif
|
||||
silent exec "edit $HOME/".page.".".sect."~"
|
||||
|
||||
silent execute open_cmd . " $HOME/" . page . '.' . sect . '~'
|
||||
|
||||
" Avoid warning for editing the dummy file twice
|
||||
setl buftype=nofile noswapfile
|
||||
|
||||
setl ma nonu nornu nofen
|
||||
setl fdc=0 ma nofen nonu nornu
|
||||
silent exec "norm! 1GdG"
|
||||
let unsetwidth = 0
|
||||
if empty($MANWIDTH)
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
" Vim filetype plugin file
|
||||
" Language: Vim's quickfix window
|
||||
" Maintainer: Lech Lorens <Lech.Lorens@gmail.com>
|
||||
" Last Changed: 30 Apr 2012
|
||||
" Last Change: 2019 Jul 15
|
||||
|
||||
if exists("b:did_ftplugin")
|
||||
finish
|
||||
@@ -10,7 +10,9 @@ endif
|
||||
" Don't load another plugin for this buffer
|
||||
let b:did_ftplugin = 1
|
||||
|
||||
let b:undo_ftplugin = "set stl<"
|
||||
if !get(g:, 'qf_disable_statusline')
|
||||
let b:undo_ftplugin = "set stl<"
|
||||
|
||||
" Display the command that produced the list in the quickfix window:
|
||||
setlocal stl=%t%{exists('w:quickfix_title')?\ '\ '.w:quickfix_title\ :\ ''}\ %=%-15(%l,%c%V%)\ %P
|
||||
" Display the command that produced the list in the quickfix window:
|
||||
setlocal stl=%t%{exists('w:quickfix_title')?\ '\ '.w:quickfix_title\ :\ ''}\ %=%-15(%l,%c%V%)\ %P
|
||||
endif
|
||||
|
||||
@@ -1,10 +1,10 @@
|
||||
" Vim indent file
|
||||
" Language: PHP
|
||||
" Author: John Wellesz <John.wellesz (AT) teaser (DOT) fr>
|
||||
" URL: http://www.2072productions.com/vim/indent/php.vim
|
||||
" Author: John Wellesz <John.wellesz (AT) gmail (DOT) com>
|
||||
" URL: https://www.2072productions.com/vim/indent/php.vim
|
||||
" Home: https://github.com/2072/PHP-Indenting-for-VIm
|
||||
" Last Change: 2018 May 18th
|
||||
" Version: 1.66
|
||||
" Last Change: 2019 Jully 21st
|
||||
" Version: 1.70
|
||||
"
|
||||
"
|
||||
" Type :help php-indent for available options
|
||||
@@ -19,7 +19,7 @@
|
||||
|
||||
" NOTE: This script must be used with PHP syntax ON and with the php syntax
|
||||
" script by Lutz Eymers (http://www.isp.de/data/php.vim ) or with the
|
||||
" script by Peter Hodge (http://www.vim.org/scripts/script.php?script_id=1571 )
|
||||
" script by Peter Hodge (https://www.vim.org/scripts/script.php?script_id=1571 )
|
||||
" the later is bunbdled by default with Vim 7.
|
||||
"
|
||||
"
|
||||
@@ -41,7 +41,6 @@
|
||||
" silently remove them when VIM load this script (at each bufread).
|
||||
|
||||
|
||||
|
||||
if exists("b:did_indent")
|
||||
finish
|
||||
endif
|
||||
@@ -95,7 +94,17 @@ else
|
||||
let b:PHP_vintage_case_default_indent = 0
|
||||
endif
|
||||
|
||||
if exists("PHP_IndentFunctionCallParameters")
|
||||
let b:PHP_IndentFunctionCallParameters = PHP_IndentFunctionCallParameters
|
||||
else
|
||||
let b:PHP_IndentFunctionCallParameters = 0
|
||||
endif
|
||||
|
||||
if exists("PHP_IndentFunctionDeclarationParameters")
|
||||
let b:PHP_IndentFunctionDeclarationParameters = PHP_IndentFunctionDeclarationParameters
|
||||
else
|
||||
let b:PHP_IndentFunctionDeclarationParameters = 0
|
||||
endif
|
||||
|
||||
let b:PHP_lastindented = 0
|
||||
let b:PHP_indentbeforelast = 0
|
||||
@@ -129,15 +138,19 @@ endif
|
||||
|
||||
if exists("*GetPhpIndent")
|
||||
call ResetPhpOptions()
|
||||
finish
|
||||
finish " XXX -- comment this line for easy dev
|
||||
endif
|
||||
|
||||
|
||||
let s:PHP_validVariable = '[a-zA-Z_\x7f-\xff][a-zA-Z0-9_\x7f-\xff]*'
|
||||
let s:notPhpHereDoc = '\%(break\|return\|continue\|exit\|die\|else\)'
|
||||
let s:blockstart = '\%(\%(\%(}\s*\)\=else\%(\s\+\)\=\)\=if\>\|\%(}\s*\)\?else\>\|do\>\|while\>\|switch\>\|case\>\|default\>\|for\%(each\)\=\>\|declare\>\|class\>\|trait\>\|use\>\|interface\>\|abstract\>\|final\>\|try\>\|\%(}\s*\)\=catch\>\|\%(}\s*\)\=finally\>\)'
|
||||
let s:functionDecl = '\<function\>\%(\s\+&\='.s:PHP_validVariable.'\)\=\s*(.*'
|
||||
let s:endline = '\s*\%(//.*\|#.*\|/\*.*\*/\s*\)\=$'
|
||||
let s:PHP_validVariable = '[a-zA-Z_\x7f-\xff][a-zA-Z0-9_\x7f-\xff]*'
|
||||
let s:notPhpHereDoc = '\%(break\|return\|continue\|exit\|die\|else\|end\%(if\|while\|for\|foreach\|switch\)\)'
|
||||
let s:blockstart = '\%(\%(\%(}\s*\)\=else\%(\s\+\)\=\)\=if\>\|\%(}\s*\)\?else\>\|do\>\|while\>\|switch\>\|case\>\|default\>\|for\%(each\)\=\>\|declare\>\|class\>\|trait\>\|\%()\s*\)\=use\>\|interface\>\|abstract\>\|final\>\|try\>\|\%(}\s*\)\=catch\>\|\%(}\s*\)\=finally\>\)'
|
||||
let s:functionDeclPrefix = '\<function\>\%(\s\+&\='.s:PHP_validVariable.'\)\=\s*('
|
||||
let s:functionDecl = s:functionDeclPrefix.'.*'
|
||||
let s:multilineFunctionDecl = s:functionDeclPrefix.s:endline
|
||||
let s:arrayDecl = '\<array\>\s*(.*'
|
||||
let s:multilineFunctionCall = s:PHP_validVariable.'\s*('.s:endline
|
||||
let s:unstated = '\%(^\s*'.s:blockstart.'.*)\|\%(//.*\)\@<!\<e'.'lse\>\)'.s:endline
|
||||
|
||||
|
||||
@@ -210,7 +223,7 @@ function! GetLastRealCodeLNum(startline) " {{{
|
||||
while getline(lnum) !~? tofind && lnum > 1
|
||||
let lnum = lnum - 1
|
||||
endwhile
|
||||
elseif lastline =~ '^[^''"`]*[''"`][;,]'.s:endline
|
||||
elseif lastline =~ '^\s*[''"`][;,]' || (lastline =~ '^[^''"`]*[''"`][;,]'.s:endline && IslinePHP(lnum, "") == "SpecStringEntrails")
|
||||
|
||||
let tofind=substitute( lastline, '^.*\([''"`]\)[;,].*$', '^[^\1]\\+[\1]$\\|^[^\1]\\+[=([]\\s*[\1]', '')
|
||||
let trylnum = lnum
|
||||
@@ -289,17 +302,23 @@ function! FindOpenBracket(lnum, blockStarter) " {{{
|
||||
endfun " }}}
|
||||
|
||||
let s:blockChars = {'{':1, '[': 1, '(': 1, ')':-1, ']':-1, '}':-1}
|
||||
let s:blockCharsLUT = {'{':'{', '}':'{', '[':'[', ']':'[', '(':'(', ')':'('}
|
||||
function! BalanceDirection (str)
|
||||
|
||||
let balance = 0
|
||||
let balance = {'{':0, '[': 0, '(': 0, 'none':0}
|
||||
let director = 'none'
|
||||
|
||||
for c in split(a:str, '\zs')
|
||||
if has_key(s:blockChars, c)
|
||||
let balance += s:blockChars[c]
|
||||
let balance[s:blockCharsLUT[c]] += s:blockChars[c]
|
||||
|
||||
if balance[s:blockCharsLUT[c]]
|
||||
let director = s:blockCharsLUT[c]
|
||||
endif
|
||||
endif
|
||||
endfor
|
||||
|
||||
return balance
|
||||
return balance[director]
|
||||
endfun
|
||||
|
||||
function! StripEndlineComments (line)
|
||||
@@ -308,7 +327,8 @@ endfun
|
||||
|
||||
function! FindArrowIndent (lnum) " {{{
|
||||
|
||||
let parrentArrowPos = 0
|
||||
let parrentArrowPos = -1
|
||||
let cursorPos = -1
|
||||
let lnum = a:lnum
|
||||
while lnum > 1
|
||||
let last_line = getline(lnum)
|
||||
@@ -316,31 +336,46 @@ function! FindArrowIndent (lnum) " {{{
|
||||
let parrentArrowPos = indent(a:lnum)
|
||||
break
|
||||
else
|
||||
call cursor(lnum, 1)
|
||||
let cleanedLnum = StripEndlineComments(last_line)
|
||||
if cleanedLnum =~ '->'
|
||||
if ! b:PHP_noArrowMatching
|
||||
let parrentArrowPos = searchpos('->', 'W', lnum)[1] - 1
|
||||
else
|
||||
let parrentArrowPos = indent(lnum) + shiftwidth()
|
||||
endif
|
||||
break
|
||||
elseif cleanedLnum =~ ')'.s:endline && BalanceDirection(last_line) < 0
|
||||
call searchpos(')'.s:endline, 'cW', lnum)
|
||||
let openedparent = searchpair('(', '', ')', 'bW', 'Skippmatch()')
|
||||
if openedparent != lnum
|
||||
let lnum = openedparent
|
||||
else
|
||||
let openedparent = -1
|
||||
endif
|
||||
|
||||
if b:PHP_noArrowMatching
|
||||
break
|
||||
endif
|
||||
|
||||
let cleanedLnum = StripEndlineComments(last_line)
|
||||
|
||||
if cleanedLnum =~ ')'.s:endline
|
||||
if BalanceDirection(cleanedLnum) <= 0
|
||||
call cursor(lnum, 1)
|
||||
call searchpos(')'.s:endline, 'cW', lnum)
|
||||
let openedparent = searchpair('(', '', ')', 'bW', 'Skippmatch()')
|
||||
let cursorPos = col(".")
|
||||
if openedparent != lnum
|
||||
let lnum = openedparent
|
||||
continue
|
||||
else
|
||||
endif
|
||||
else
|
||||
let parrentArrowPos = -1
|
||||
break
|
||||
end
|
||||
endif
|
||||
|
||||
if cleanedLnum =~ '->'
|
||||
call cursor(lnum, cursorPos == -1 ? strwidth(cleanedLnum) : cursorPos)
|
||||
let parrentArrowPos = searchpos('->', 'cWb', lnum)[1] - 1
|
||||
|
||||
break
|
||||
else
|
||||
let parrentArrowPos = indent(lnum) + shiftwidth()
|
||||
let parrentArrowPos = -1
|
||||
break
|
||||
endif
|
||||
endif
|
||||
endwhile
|
||||
|
||||
if parrentArrowPos == -1
|
||||
let parrentArrowPos = indent(lnum) + shiftwidth()
|
||||
end
|
||||
|
||||
return parrentArrowPos
|
||||
endfun "}}}
|
||||
|
||||
@@ -432,7 +467,7 @@ function! IslinePHP (lnum, tofind) " {{{
|
||||
let synname = synIDattr(synID(a:lnum, coltotest, 0), "name")
|
||||
|
||||
if synname ==? 'phpStringSingle' || synname ==? 'phpStringDouble' || synname ==? 'phpBacktick'
|
||||
if cline !~ '^\s*[''"`]'
|
||||
if cline !~ '^\s*[''"`]' " ??? XXX
|
||||
return "SpecStringEntrails"
|
||||
else
|
||||
return synname
|
||||
@@ -471,7 +506,7 @@ endfunc
|
||||
call ResetPhpOptions()
|
||||
|
||||
function! GetPhpIndentVersion()
|
||||
return "1.66-bundle"
|
||||
return "1.70-bundle"
|
||||
endfun
|
||||
|
||||
function! GetPhpIndent()
|
||||
@@ -615,7 +650,7 @@ function! GetPhpIndent()
|
||||
let b:InPHPcode_and_script = 1
|
||||
endif
|
||||
|
||||
elseif last_line =~ '^[^''"`]\+[''"`]$' " a string identifier with nothing after it and no other string identifier before
|
||||
elseif last_line =~ '^[^''"`]\+[''"`]$' && last_line !~ '^\s*\%(//\|#\|/\*.*\*/\s*$\)' " a string identifier with nothing after it and no other string identifier before
|
||||
let b:InPHPcode = -1
|
||||
let b:InPHPcode_tofind = substitute( last_line, '^.*\([''"`]\).*$', '^[^\1]*\1[;,]$', '')
|
||||
elseif last_line =~? '<<<\s*[''"]\=\a\w*[''"]\=$'
|
||||
@@ -723,7 +758,7 @@ function! GetPhpIndent()
|
||||
endif
|
||||
|
||||
|
||||
if last_line =~ '[;}]'.endline && last_line !~ '^[)\]]' && last_line !~# s:defaultORcase
|
||||
if last_line =~ '[;}]'.endline && last_line !~ '^[)\]]' && last_line !~# s:defaultORcase && last_line !~ '^\s*[''"`][;,]'
|
||||
if ind==b:PHP_default_indenting
|
||||
return b:PHP_default_indenting + addSpecial
|
||||
elseif b:PHP_indentinghuge && ind==b:PHP_CurrentIndentLevel && cline !~# '^\s*\%(else\|\%(case\|default\).*:\|[})];\=\)' && last_line !~# '^\s*\%(\%(}\s*\)\=else\)' && getline(GetLastRealCodeLNum(lnum - 1))=~';'.endline
|
||||
@@ -869,6 +904,14 @@ function! GetPhpIndent()
|
||||
let ind = ind + shiftwidth()
|
||||
endif
|
||||
|
||||
if b:PHP_IndentFunctionCallParameters && last_line =~ s:multilineFunctionCall && last_line !~ s:structureHead && last_line !~ s:arrayDecl
|
||||
let ind = ind + b:PHP_IndentFunctionCallParameters * shiftwidth()
|
||||
endif
|
||||
|
||||
if b:PHP_IndentFunctionDeclarationParameters && last_line =~ s:multilineFunctionDecl
|
||||
let ind = ind + b:PHP_IndentFunctionDeclarationParameters * shiftwidth()
|
||||
endif
|
||||
|
||||
if b:PHP_BracesAtCodeLevel || b:PHP_vintage_case_default_indent == 1
|
||||
let b:PHP_CurrentIndentLevel = ind
|
||||
|
||||
@@ -897,10 +940,15 @@ function! GetPhpIndent()
|
||||
endif
|
||||
|
||||
if cline =~ '^\s*[)\]];\='
|
||||
let ind = ind - shiftwidth()
|
||||
endif
|
||||
call cursor(v:lnum, 1)
|
||||
call searchpos('[)\]]', 'cW')
|
||||
let matchedBlockChar = cline[col('.')-1]
|
||||
let openedparent = searchpair('\M'.s:blockCharsLUT[matchedBlockChar], '', '\M'.matchedBlockChar, 'bW', 'Skippmatch()')
|
||||
if openedparent != v:lnum
|
||||
let ind = indent(openedparent)
|
||||
endif
|
||||
|
||||
if last_line =~ '^\s*->' && last_line !~? s:structureHead && BalanceDirection(last_line) <= 0
|
||||
elseif last_line =~ '^\s*->' && last_line !~? s:structureHead && BalanceDirection(last_line) <= 0
|
||||
let ind = ind - shiftwidth()
|
||||
endif
|
||||
|
||||
|
||||
@@ -3,10 +3,13 @@
|
||||
" Maintainer: Christian Brabandt <cb@256bit.org>
|
||||
" Original Author: Nikolai Weibull <now@bitwi.se>
|
||||
" Previous Maintainer: Peter Aronoff <telemachus@arpinum.org>
|
||||
" Latest Revision: 2019-04-27
|
||||
" Latest Revision: 2019-07-26
|
||||
" License: Vim (see :h license)
|
||||
" Repository: https://github.com/chrisbra/vim-sh-indent
|
||||
" Changelog:
|
||||
" 20190726 - Correctly skip if keywords in syntax comments
|
||||
" (issue #17)
|
||||
" 20190603 - Do not indent in zsh filetypes with an `if` in comments
|
||||
" 20190428 - De-indent fi correctly when typing with
|
||||
" https://github.com/chrisbra/vim-sh-indent/issues/15
|
||||
" 20190325 - Indent fi; correctly
|
||||
@@ -80,8 +83,9 @@ function! GetShIndent()
|
||||
let ind = indent(lnum)
|
||||
|
||||
" Check contents of previous lines
|
||||
" should not apply to e.g. commented lines
|
||||
if line =~ '^\s*\%(if\|then\|do\|else\|elif\|case\|while\|until\|for\|select\|foreach\)\>' ||
|
||||
\ (&ft is# 'zsh' && line =~ '\<\%(if\|then\|do\|else\|elif\|case\|while\|until\|for\|select\|foreach\)\>')
|
||||
\ (&ft is# 'zsh' && line =~ '^\s*\<\%(if\|then\|do\|else\|elif\|case\|while\|until\|for\|select\|foreach\)\>')
|
||||
if !s:is_end_expression(line)
|
||||
let ind += s:indent_value('default')
|
||||
endif
|
||||
@@ -129,7 +133,8 @@ function! GetShIndent()
|
||||
" Current line is a endif line, so get indent from start of "if condition" line
|
||||
" TODO: should we do the same for other "end" lines?
|
||||
if curline =~ '^\s*\%(fi\);\?\s*\%(#.*\)\=$'
|
||||
let previous_line = searchpair('\<if\>', '', '\<fi\>\zs', 'bnW')
|
||||
let ind = indent(v:lnum)
|
||||
let previous_line = searchpair('\<if\>', '', '\<fi\>\zs', 'bnW', 'synIDattr(synID(line("."),col("."), 1),"name") =~? "comment"')
|
||||
if previous_line > 0
|
||||
let ind = indent(previous_line)
|
||||
endif
|
||||
|
||||
@@ -1,9 +1,10 @@
|
||||
" Language: xml
|
||||
" Repository: https://github.com/chrisbra/vim-xml-ftplugin
|
||||
" Last Changed: Feb 04, 2019
|
||||
" Last Changed: July 27, 2019
|
||||
" Maintainer: Christian Brabandt <cb@256bit.org>
|
||||
" Previous Maintainer: Johannes Zellner <johannes@zellner.org>
|
||||
" Last Change:
|
||||
" 20190726 - Correctly handle non-tagged data
|
||||
" 20190204 - correctly handle wrap tags
|
||||
" https://github.com/chrisbra/vim-xml-ftplugin/issues/5
|
||||
" 20190128 - Make sure to find previous tag
|
||||
@@ -33,6 +34,8 @@ set cpo&vim
|
||||
" Attention: Parameter use_syntax_check is used by the docbk.vim indent script
|
||||
setlocal indentexpr=XmlIndentGet(v:lnum,1)
|
||||
setlocal indentkeys=o,O,*<Return>,<>>,<<>,/,{,},!^F
|
||||
" autoindent: used when the indentexpr returns -1
|
||||
setlocal autoindent
|
||||
|
||||
if !exists('b:xml_indent_open')
|
||||
let b:xml_indent_open = '.\{-}<[:A-Z_a-z]'
|
||||
@@ -103,37 +106,43 @@ fun! XmlIndentGet(lnum, use_syntax_check)
|
||||
return 0
|
||||
endif
|
||||
" Find previous line with a tag (regardless whether open or closed,
|
||||
" but always start restrict the match to a line before the current one
|
||||
" but always restrict the match to a line before the current one
|
||||
" Note: xml declaration: <?xml version="1.0"?>
|
||||
" won't be found, as it is not a legal tag name
|
||||
let ptag_pattern = '\%(.\{-}<[/:A-Z_a-z]\)'. '\%(\&\%<'. line('.').'l\)'
|
||||
let ptag_pattern = '\%(.\{-}<[/:A-Z_a-z]\)'. '\%(\&\%<'. a:lnum .'l\)'
|
||||
let ptag = search(ptag_pattern, 'bnW')
|
||||
" no previous tag
|
||||
if ptag == 0
|
||||
return 0
|
||||
endif
|
||||
|
||||
let syn_name = ''
|
||||
let pline = getline(ptag)
|
||||
let pind = indent(ptag)
|
||||
|
||||
let syn_name_start = '' " Syntax element at start of line (excluding whitespace)
|
||||
let syn_name_end = '' " Syntax element at end of line
|
||||
let curline = getline(a:lnum)
|
||||
if a:use_syntax_check
|
||||
let check_lnum = <SID>XmlIndentSynCheck(ptag)
|
||||
let check_alnum = <SID>XmlIndentSynCheck(a:lnum)
|
||||
if check_lnum == 0 || check_alnum == 0
|
||||
return indent(a:lnum)
|
||||
endif
|
||||
let syn_name = synIDattr(synID(a:lnum, strlen(getline(a:lnum)) - 1, 1), 'name')
|
||||
let syn_name_end = synIDattr(synID(a:lnum, strlen(curline) - 1, 1), 'name')
|
||||
let syn_name_start = synIDattr(synID(a:lnum, match(curline, '\S') + 1, 1), 'name')
|
||||
endif
|
||||
|
||||
if syn_name =~ 'Comment'
|
||||
if syn_name_end =~ 'Comment' && syn_name_start =~ 'Comment'
|
||||
return <SID>XmlIndentComment(a:lnum)
|
||||
elseif empty(syn_name_start) && empty(syn_name_end)
|
||||
" non-xml tag content: use indent from 'autoindent'
|
||||
return pind + shiftwidth()
|
||||
endif
|
||||
|
||||
let pline = getline(ptag)
|
||||
let pind = indent(ptag)
|
||||
" Get indent from previous tag line
|
||||
let ind = <SID>XmlIndentSum(pline, -1, pind)
|
||||
let t_ind = ind
|
||||
" Determine indent from current line
|
||||
let ind = <SID>XmlIndentSum(getline(a:lnum), 0, ind)
|
||||
let ind = <SID>XmlIndentSum(curline, 0, ind)
|
||||
return ind
|
||||
endfun
|
||||
|
||||
@@ -148,7 +157,7 @@ func! <SID>HasNoTagEnd(line)
|
||||
endfunc
|
||||
|
||||
" return indent for a commented line,
|
||||
" the middle part might be indented on additional level
|
||||
" the middle part might be indented one additional level
|
||||
func! <SID>XmlIndentComment(lnum)
|
||||
let ptagopen = search(b:xml_indent_open, 'bnW')
|
||||
let ptagclose = search(b:xml_indent_close, 'bnW')
|
||||
|
||||
@@ -27,11 +27,11 @@ menutrans &Version &Верзија
|
||||
menutrans &About &О\ програму
|
||||
|
||||
" File menu
|
||||
menutrans &File &Датотека
|
||||
menutrans &File &Фајл
|
||||
menutrans &Open\.\.\.<Tab>:e &Отвори\.\.\.<Tab>:e
|
||||
menutrans Sp&lit-Open\.\.\.<Tab>:sp &Подели-отвори\.\.\.<Tab>:sp
|
||||
menutrans Open\ Tab\.\.\.<Tab>:tabnew Отвори\ картицу\.\.\.<Tab>:tabnew
|
||||
menutrans &New<Tab>:enew &Нова<Tab>:enew
|
||||
menutrans &New<Tab>:enew &Нов<Tab>:enew
|
||||
menutrans &Close<Tab>:close &Затвори<Tab>:close
|
||||
menutrans &Save<Tab>:w &Сачувај<Tab>:w
|
||||
menutrans Save\ &As\.\.\.<Tab>:sav Сачувај\ &као\.\.\.<Tab>:sav
|
||||
@@ -43,14 +43,14 @@ menutrans E&xit<Tab>:qa К&рај<Tab>:qa
|
||||
|
||||
" Edit menu
|
||||
menutrans &Edit &Уређивање
|
||||
menutrans &Undo<Tab>u &Врати<Tab>u
|
||||
menutrans &Redo<Tab>^R &Поврати<Tab>^R
|
||||
menutrans &Undo<Tab>u &Поништи<Tab>u
|
||||
menutrans &Redo<Tab>^R &Врати\ измену<Tab>^R
|
||||
menutrans Rep&eat<Tab>\. П&онови<Tab>\.
|
||||
menutrans Cu&t<Tab>"+x Исе&ци<Tab>"+x
|
||||
menutrans &Copy<Tab>"+y &Копирај<Tab>"+y
|
||||
menutrans &Paste<Tab>"+gP &Убаци<Tab>"+gP
|
||||
menutrans &Paste<Tab>"+P &Убаци<Tab>"+gP
|
||||
menutrans Put\ &Before<Tab>[p Стави\ пре&д<Tab>[p
|
||||
menutrans &Paste<Tab>"+P &Убаци<Tab>"+P
|
||||
menutrans Put\ &Before<Tab>[p Стави\ испре&д<Tab>[p
|
||||
menutrans Put\ &After<Tab>]p Стави\ &иза<Tab>]p
|
||||
menutrans &Delete<Tab>x Из&бриши<Tab>x
|
||||
menutrans &Select\ all<Tab>ggVG Изабери\ св&е<Tab>ggVG
|
||||
@@ -59,11 +59,11 @@ menutrans Find\ and\ Rep&lace\.\.\. Нађи\ и\ &замени\.\.\.
|
||||
menutrans Settings\ &Window П&розор\ подешавања
|
||||
menutrans Startup\ &Settings По&дешавања\ при\ покретању
|
||||
menutrans &Global\ Settings Оп&шта\ подешавања
|
||||
menutrans F&ile\ Settings Подешавања\ за\ да&тотеке
|
||||
menutrans &Shiftwidth &Померај
|
||||
menutrans F&ile\ Settings Подешавања\ за\ фај&лове
|
||||
menutrans &Shiftwidth &Корак\ увлачења
|
||||
menutrans Soft\ &Tabstop &Мека\ табулација
|
||||
menutrans Te&xt\ Width\.\.\. &Ширина\ текста\.\.\.
|
||||
menutrans &File\ Format\.\.\. &Врста\ датотеке\.\.\.
|
||||
menutrans &File\ Format\.\.\. &Врста\ фајла\.\.\.
|
||||
menutrans Show\ C&olor\ Schemes\ in\ Menu Прикажи\ шеме\ бо&ја\ у\ менију
|
||||
menutrans C&olor\ Scheme \Шеме\ бо&ја
|
||||
menutrans Show\ &Keymaps\ in\ Menu Прикажи\ прес&ликавања\ тастатуре\ у\ менију
|
||||
@@ -71,15 +71,15 @@ menutrans &Keymap Прес&ликавања\ тастатуре
|
||||
menutrans Select\ Fo&nt\.\.\. Избор\ &фонта\.\.\.
|
||||
|
||||
" Edit/Global Settings
|
||||
menutrans Toggle\ Pattern\ &Highlight<Tab>:set\ hls! Нагласи\ &образце\ (да/не)<Tab>:set\ hls!
|
||||
menutrans Toggle\ Pattern\ &Highlight<Tab>:set\ hls! Истицање\ &шаблона\ (да/не)<Tab>:set\ hls!
|
||||
menutrans Toggle\ &Ignoring\ Case<Tab>:set\ ic! Занемари\ величину\ &слова\ (да/не)<Tab>:set\ ic!
|
||||
menutrans Toggle\ &Showing\ Matched\ Pairs<Tab>:set\ sm! Провери\ пратећу\ &заграду\ (да/не)<Tab>:set\ sm!
|
||||
menutrans Toggle\ &Showing\ Matched\ Pairs<Tab>:set\ sm! Прикажи\ упарену\ &заграду\ (да/не)<Tab>:set\ sm!
|
||||
menutrans &Context\ lines Видљиви\ &редови
|
||||
menutrans &Virtual\ Edit Виртуелно\ &уређивање
|
||||
menutrans Toggle\ Insert\ &Mode<Tab>:set\ im! Режим\ у&носа\ (да/не)<Tab>:set\ im!
|
||||
menutrans Toggle\ Insert\ &Mode<Tab>:set\ im! Режим\ У&метање\ (да/не)<Tab>:set\ im!
|
||||
menutrans Toggle\ Vi\ C&ompatibility<Tab>:set\ cp! '&Vi'\ сагласно\ (да/не)<Tab>:set\ cp!
|
||||
menutrans Search\ &Path\.\.\. Путања\ &претраге\.\.\.
|
||||
menutrans Ta&g\ Files\.\.\. &Датотеке\ ознака\.\.\.
|
||||
menutrans Ta&g\ Files\.\.\. &Фајлови\ ознака\.\.\.
|
||||
menutrans Toggle\ &Toolbar Линија\ са\ &алаткама\ (да/не)
|
||||
menutrans Toggle\ &Bottom\ Scrollbar Доња\ л&инија\ клизања\ (да/не)
|
||||
menutrans Toggle\ &Left\ Scrollbar &Лева\ линија\ клизања\ (да/не)
|
||||
@@ -88,8 +88,8 @@ menutrans Toggle\ &Right\ Scrollbar &Десна\ линија\ клизања\ (
|
||||
" Edit/Global Settings/Virtual Edit
|
||||
menutrans Never Никад
|
||||
menutrans Block\ Selection Избор\ блока
|
||||
menutrans Insert\ mode Режим\ уноса
|
||||
menutrans Block\ and\ Insert Блок\ и\ унос
|
||||
menutrans Insert\ mode Режим\ Уметање
|
||||
menutrans Block\ and\ Insert Блок\ и\ Уметање
|
||||
menutrans Always Увек
|
||||
|
||||
" Edit/File Settings
|
||||
@@ -109,13 +109,13 @@ menutrans None Без\ пресликавања
|
||||
menutrans &Tools &Алатке
|
||||
menutrans &Jump\ to\ this\ tag<Tab>g^] Скочи\ на\ &ову\ ознаку<Tab>g^]
|
||||
menutrans Jump\ &back<Tab>^T Скочи\ &натраг<Tab>^T
|
||||
menutrans Build\ &Tags\ File Изгради\ &датотеку\ ознака
|
||||
menutrans Build\ &Tags\ File Изгради\ &фајл\ ознака
|
||||
menutrans &Spelling Пра&вопис
|
||||
menutrans &Folding &Подвијање
|
||||
menutrans Create\ &Fold<Tab>zf С&твори\ подвијутак<Tab>zf
|
||||
menutrans &Delete\ Fold<Tab>zd О&бриши\ подвијутак<Tab>zd
|
||||
menutrans Delete\ &All\ Folds<Tab>zD Обриши\ све\ по&двијутке<Tab>zD
|
||||
menutrans Fold\ column\ &width Ширина\ &реда\ подвијутка
|
||||
menutrans Create\ &Fold<Tab>zf С&твори\ свијутак<Tab>zf
|
||||
menutrans &Delete\ Fold<Tab>zd О&бриши\ свијутак<Tab>zd
|
||||
menutrans Delete\ &All\ Folds<Tab>zD Обриши\ све\ св&ијутке<Tab>zD
|
||||
menutrans Fold\ column\ &width Ширина\ &реда\ цвијутка
|
||||
"menutrans &Diff &Упоређивање
|
||||
menutrans &Make<Tab>:make 'mak&е'<Tab>:make
|
||||
menutrans &List\ Errors<Tab>:cl Списак\ &грешака<Tab>:cl
|
||||
@@ -146,15 +146,15 @@ menutrans Set\ Language\ to\ "en_us" Постави\ језик\ на\ "en_us"
|
||||
menutrans &Find\ More\ Languages Пронађи\ још\ језика
|
||||
|
||||
" Tools/Folding
|
||||
menutrans &Enable/Disable\ folds<Tab>zi &Омогући/прекини\ подвијање<Tab>zi
|
||||
menutrans &Enable/Disable\ folds<Tab>zi &Омогући/прекини\ свијање<Tab>zi
|
||||
menutrans &View\ Cursor\ Line<Tab>zv &Покажи\ ред\ са\ курсором<Tab>zv
|
||||
menutrans Vie&w\ Cursor\ Line\ only<Tab>zMzx Покажи\ &само\ ред\ са\ курсором<Tab>zMzx
|
||||
menutrans C&lose\ more\ folds<Tab>zm &Затвори\ више\ подвијутака<Tab>zm
|
||||
menutrans &Close\ all\ folds<Tab>zM Затвори\ с&ве\ подвијутке<Tab>zM
|
||||
menutrans O&pen\ more\ folds<Tab>zr Отвори\ виш&е\ подвијутака<Tab>zr
|
||||
menutrans &Open\ all\ folds<Tab>zR О&твори\ све\ подвијутке<Tab>zR
|
||||
menutrans C&lose\ more\ folds<Tab>zm &Затвори\ више\ свијутака<Tab>zm
|
||||
menutrans &Close\ all\ folds<Tab>zM Затвори\ с&ве\ свијутке<Tab>zM
|
||||
menutrans O&pen\ more\ folds<Tab>zr Отвори\ виш&е\ свијутака<Tab>zr
|
||||
menutrans &Open\ all\ folds<Tab>zR О&твори\ све\ свијутке<Tab>zR
|
||||
menutrans Fold\ Met&hod &Начин\ подвијања
|
||||
menutrans Fold\ Col&umn\ Width Ширина\ колоне\ испред\ подвијутака
|
||||
menutrans Fold\ Col&umn\ Width Ширина\ колоне\ испред\ свијутака
|
||||
|
||||
" Tools/Folding/Fold Method
|
||||
menutrans M&anual &Ручно
|
||||
@@ -181,7 +181,7 @@ menutrans Delete &Обриши
|
||||
menutrans &Alternate А&лтернативни
|
||||
menutrans &Next &Следећи
|
||||
menutrans &Previous &Претходни
|
||||
menutrans [No\ File] [Нема\ датотеке]
|
||||
menutrans [No\ File] [Нема\ фајла]
|
||||
|
||||
" Window menu
|
||||
menutrans &Window &Прозор
|
||||
@@ -189,7 +189,7 @@ menutrans &New<Tab>^Wn &Нови<Tab>^Wn
|
||||
menutrans S&plit<Tab>^Ws &Подели<Tab>^Ws
|
||||
menutrans Sp&lit\ To\ #<Tab>^W^^ Подели\ са\ &алтернативним<Tab>^W^^
|
||||
menutrans Split\ &Vertically<Tab>^Wv Подели\ &усправно<Tab>^Wv
|
||||
menutrans Split\ File\ E&xplorer Подели\ за\ преглед\ &датотека
|
||||
menutrans Split\ File\ E&xplorer Подели\ за\ преглед\ &фајлова
|
||||
menutrans &Close<Tab>^Wc &Затвори<Tab>^Wc
|
||||
menutrans Close\ &Other(s)<Tab>^Wo Затвори\ &остале<Tab>^Wo
|
||||
"menutrans Ne&xt<Tab>^Ww &Следећи<Tab>^Ww
|
||||
@@ -210,7 +210,7 @@ menutrans &Left\ side<Tab>^WH У&лево<Tab>^WH
|
||||
menutrans &Right\ side<Tab>^WL У&десно<Tab>^WL
|
||||
|
||||
" The popup menu
|
||||
menutrans &Undo &Врати
|
||||
menutrans &Undo &Поништи
|
||||
menutrans Cu&t &Исеци
|
||||
menutrans &Copy &Копирај
|
||||
menutrans &Paste &Убаци
|
||||
@@ -218,7 +218,7 @@ menutrans &Delete И&збриши
|
||||
menutrans Select\ Blockwise Бирај\ б&локовски
|
||||
menutrans Select\ &Word Изабери\ &реч
|
||||
menutrans Select\ &Sentence Изабери\ р&еченицу
|
||||
menutrans Select\ Pa&ragraph Изабери\ &параграф
|
||||
menutrans Select\ Pa&ragraph Изабери\ &пасус
|
||||
menutrans Select\ &Line Изабери\ р&ед
|
||||
menutrans Select\ &Block Изабери\ &блок
|
||||
menutrans Select\ &All Изабери\ &све
|
||||
@@ -264,13 +264,13 @@ endif
|
||||
|
||||
" Syntax menu
|
||||
menutrans &Syntax &Синтакса
|
||||
menutrans &Show\ File\ Types\ in\ Menu Прикажи\ типове\ датотека\ у\ &менију
|
||||
menutrans &Show\ File\ Types\ in\ Menu Прикажи\ типове\ фајлова\ у\ &менију
|
||||
menutrans Set\ '&syntax'\ only Поде&си\ само\ 'syntax'
|
||||
menutrans Set\ '&filetype'\ too Подеси\ &такође\ и\ 'filetype'
|
||||
menutrans &Off &Искључено
|
||||
menutrans &Manual &Ручно
|
||||
menutrans A&utomatic &Аутоматски
|
||||
menutrans on/off\ for\ &This\ file Да/не\ за\ ову\ &датотеку
|
||||
menutrans on/off\ for\ &This\ file Да/не\ за\ овај\ &фајл
|
||||
menutrans Co&lor\ test Провера\ &боја
|
||||
menutrans &Highlight\ test Провера\ исти&цања
|
||||
menutrans &Convert\ to\ HTML Претвори\ &у\ HTML
|
||||
@@ -278,17 +278,17 @@ menutrans &Convert\ to\ HTML Претвори\ &у\ HTML
|
||||
" dialog texts
|
||||
let menutrans_help_dialog = "Унесите наредбу или реч чије појашњење тражите:\n\nДодајте i_ за наредбе уноса (нпр. i_CTRL-X)\nДодајте c_ за наредбе командног режима (нпр. с_<Del>)\nДодајте ' за имена опција (нпр. 'shiftwidth')"
|
||||
|
||||
let g:menutrans_path_dialog = "Унесите пут претраге за датотеке\nРаздвојите зарезима имена директоријума."
|
||||
let g:menutrans_path_dialog = "Унесите путању претраге за фајлове\nРаздвојите зарезима имена директоријума."
|
||||
|
||||
let g:menutrans_tags_dialog = "Унесите имена датотека са ознакама\nРаздвојите зарезима имена."
|
||||
let g:menutrans_tags_dialog = "Унесите имена фајлова са ознакама\nРаздвојите зарезима имена."
|
||||
|
||||
let g:menutrans_textwidth_dialog = "Унесите нову ширину текста (0 спречава прелом)"
|
||||
|
||||
let g:menutrans_fileformat_dialog = "Изаберите формат записа датотеке"
|
||||
let g:menutrans_fileformat_dialog = "Изаберите формат записа фајла"
|
||||
|
||||
let g:menutrans_fileformat_choices = "&Unix\n&Dos\n&Mac\n&Откажи"
|
||||
|
||||
let menutrans_no_file = "[Нема датотеке]"
|
||||
let menutrans_no_file = "[Нема фајла]"
|
||||
|
||||
let &cpo = s:keepcpo
|
||||
unlet s:keepcpo
|
||||
|
||||
@@ -272,6 +272,7 @@ 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.Django\ HTML\ template:htmldjango
|
||||
SynMenu HIJK.HTML.Vue.js\ HTML\ template:vuejs
|
||||
SynMenu HIJK.HTML.HTML/OS:htmlos
|
||||
SynMenu HIJK.HTML.XHTML:xhtml
|
||||
SynMenu HIJK.Host\.conf:hostconf
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
" These commands create the option window.
|
||||
"
|
||||
" Maintainer: Bram Moolenaar <Bram@vim.org>
|
||||
" Last Change: 2019 May 25
|
||||
" Last Change: 2019 Jul 18
|
||||
|
||||
" If there already is an option window, jump to that one.
|
||||
let buf = bufnr('option-window')
|
||||
@@ -479,6 +479,8 @@ call append("$", " \tset wmw=" . &wmw)
|
||||
call append("$", "helpheight\tinitial height of the help window")
|
||||
call append("$", " \tset hh=" . &hh)
|
||||
if has("quickfix")
|
||||
call append("$", "previewpopup\tuse a popup window for preview")
|
||||
call append("$", " \tset pvp=" . &pvp)
|
||||
call append("$", "previewheight\tdefault height for the preview window")
|
||||
call append("$", " \tset pvh=" . &pvh)
|
||||
call append("$", "previewwindow\tidentifies the preview window")
|
||||
|
||||
@@ -838,12 +838,12 @@ endfunc
|
||||
" if there is any.
|
||||
func TermDebugBalloonExpr()
|
||||
if v:beval_winid != s:sourcewin
|
||||
return
|
||||
return ''
|
||||
endif
|
||||
if !s:stopped
|
||||
" Only evaluate when stopped, otherwise setting a breakpoint using the
|
||||
" mouse triggers a balloon.
|
||||
return
|
||||
return ''
|
||||
endif
|
||||
let s:evalFromBalloonExpr = 1
|
||||
let s:evalFromBalloonExprResult = ''
|
||||
|
||||
@@ -20,7 +20,7 @@
|
||||
if &cp || exists("g:loaded_netrwPlugin")
|
||||
finish
|
||||
endif
|
||||
let g:loaded_netrwPlugin = "v156"
|
||||
let g:loaded_netrwPlugin = "v165"
|
||||
let s:keepcpo = &cpo
|
||||
set cpo&vim
|
||||
"DechoRemOn
|
||||
@@ -42,8 +42,8 @@ augroup END
|
||||
" Network Browsing Reading Writing: {{{2
|
||||
augroup Network
|
||||
au!
|
||||
au BufReadCmd file://* call netrw#FileUrlRead(expand("<amatch>"))
|
||||
au BufReadCmd ftp://*,rcp://*,scp://*,http://*,file://*,https://*,dav://*,davs://*,rsync://*,sftp://* exe "sil doau BufReadPre ".fnameescape(expand("<amatch>"))|call netrw#Nread(2,expand("<amatch>"))|exe "sil doau BufReadPost ".fnameescape(expand("<amatch>"))
|
||||
au BufReadCmd file://* call netrw#FileUrlEdit(expand("<amatch>"))
|
||||
au BufReadCmd ftp://*,rcp://*,scp://*,http://*,https://*,dav://*,davs://*,rsync://*,sftp://* exe "sil doau BufReadPre ".fnameescape(expand("<amatch>"))|call netrw#Nread(2,expand("<amatch>"))|exe "sil doau BufReadPost ".fnameescape(expand("<amatch>"))
|
||||
au FileReadCmd ftp://*,rcp://*,scp://*,http://*,file://*,https://*,dav://*,davs://*,rsync://*,sftp://* exe "sil doau FileReadPre ".fnameescape(expand("<amatch>"))|call netrw#Nread(1,expand("<amatch>"))|exe "sil doau FileReadPost ".fnameescape(expand("<amatch>"))
|
||||
au BufWriteCmd ftp://*,rcp://*,scp://*,http://*,file://*,dav://*,davs://*,rsync://*,sftp://* exe "sil doau BufWritePre ".fnameescape(expand("<amatch>"))|exe 'Nwrite '.fnameescape(expand("<amatch>"))|exe "sil doau BufWritePost ".fnameescape(expand("<amatch>"))
|
||||
au FileWriteCmd ftp://*,rcp://*,scp://*,http://*,file://*,dav://*,davs://*,rsync://*,sftp://* exe "sil doau FileWritePre ".fnameescape(expand("<amatch>"))|exe "'[,']".'Nwrite '.fnameescape(expand("<amatch>"))|exe "sil doau FileWritePost ".fnameescape(expand("<amatch>"))
|
||||
@@ -59,7 +59,7 @@ com! -count=1 -nargs=* Nread let s:svpos= winsaveview()<bar>call netrw#NetRead(
|
||||
com! -range=% -nargs=* Nwrite let s:svpos= winsaveview()<bar><line1>,<line2>call netrw#NetWrite(<f-args>)<bar>call winrestview(s:svpos)
|
||||
com! -nargs=* NetUserPass call NetUserPass(<f-args>)
|
||||
com! -nargs=* Nsource let s:svpos= winsaveview()<bar>call netrw#NetSource(<f-args>)<bar>call winrestview(s:svpos)
|
||||
com! -nargs=? Ntree call netrw#SetTreetop(<q-args>)
|
||||
com! -nargs=? Ntree call netrw#SetTreetop(1,<q-args>)
|
||||
|
||||
" Commands: :Explore, :Sexplore, Hexplore, Vexplore, Lexplore {{{2
|
||||
com! -nargs=* -bar -bang -count=0 -complete=dir Explore call netrw#Explore(<count>,0,0+<bang>0,<q-args>)
|
||||
@@ -81,7 +81,7 @@ if !exists("g:netrw_nogx")
|
||||
if !hasmapto('<Plug>NetrwBrowseX')
|
||||
nmap <unique> gx <Plug>NetrwBrowseX
|
||||
endif
|
||||
nno <silent> <Plug>NetrwBrowseX :call netrw#BrowseX(expand((exists("g:netrw_gx")? g:netrw_gx : '<cfile>')),netrw#CheckIfRemote())<cr>
|
||||
nno <silent> <Plug>NetrwBrowseX :call netrw#BrowseX(netrw#GX(),netrw#CheckIfRemote(netrw#GX()))<cr>
|
||||
endif
|
||||
if maparg('gx','v') == ""
|
||||
if !hasmapto('<Plug>NetrwBrowseXVis')
|
||||
@@ -129,19 +129,15 @@ fun! s:LocalBrowse(dirname)
|
||||
elseif isdirectory(a:dirname)
|
||||
" call Decho("(LocalBrowse) dirname<".a:dirname."> ft=".&ft." (isdirectory, not amiga)")
|
||||
" call Dredir("LocalBrowse ft last set: ","verbose set ft")
|
||||
" call Decho("(s:LocalBrowse) COMBAK#23: buf#".bufnr("%")." file<".expand("%")."> line#".line(".")." col#".col("."))
|
||||
sil! call netrw#LocalBrowseCheck(a:dirname)
|
||||
" call Decho("(s:LocalBrowse) COMBAK#24: buf#".bufnr("%")." file<".expand("%")."> line#".line(".")." col#".col("."))
|
||||
if exists("w:netrw_bannercnt") && line('.') < w:netrw_bannercnt
|
||||
exe w:netrw_bannercnt
|
||||
" call Decho("(s:LocalBrowse) COMBAK#25: buf#".bufnr("%")." file<".expand("%")."> line#".line(".")." col#".col("."))
|
||||
endif
|
||||
|
||||
else
|
||||
" not a directory, ignore it
|
||||
" call Decho("(LocalBrowse) dirname<".a:dirname."> not a directory, ignoring...")
|
||||
endif
|
||||
" call Decho("(s:LocalBrowse) COMBAK#26: buf#".bufnr("%")." file<".expand("%")."> line#".line(".")." col#".col("."))
|
||||
|
||||
" call Dret("s:LocalBrowse")
|
||||
endfun
|
||||
|
||||
@@ -1,580 +0,0 @@
|
||||
*** de_DE.orig.aff 2019-01-19 18:45:26.132522538 +0100
|
||||
--- de_DE.aff 2019-01-19 19:23:37.233297530 +0100
|
||||
***************
|
||||
*** 15,16 ****
|
||||
--- 15,46 ----
|
||||
|
||||
+ FOL <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||
+ LOW <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||
+ UPP <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||
+
|
||||
+ MIDWORD '
|
||||
+
|
||||
+ MAP 9
|
||||
+ MAP a<><61><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||
+ MAP e<><65><EFBFBD><EFBFBD>
|
||||
+ MAP i<><69><EFBFBD><EFBFBD>
|
||||
+ MAP o<><6F><EFBFBD><EFBFBD><EFBFBD>
|
||||
+ MAP u<><75><EFBFBD><EFBFBD>
|
||||
+ MAP n<>
|
||||
+ MAP c<>
|
||||
+ MAP y<><79>
|
||||
+ MAP s<>
|
||||
+
|
||||
+ COMPOUNDRULE xy?z
|
||||
+ #COMPOUNDBEGIN x
|
||||
+ #COMPOUNDMIDDLE y
|
||||
+ #COMPOUNDEND z
|
||||
+
|
||||
+ # Prefixes are allowed at the beginning of compounds,
|
||||
+ # suffixes are allowed at the end of compounds by default:
|
||||
+ # (prefix)?(root)+(affix)?
|
||||
+ # Affixes with COMPOUNDPERMITFLAG may be inside of compounds.
|
||||
+ COMPOUNDPERMITFLAG c
|
||||
+
|
||||
+ ONLYINCOMPOUND o
|
||||
+
|
||||
PFX U Y 1
|
||||
***************
|
||||
*** 536,553 ****
|
||||
#LANG de_DE
|
||||
! CHECKSHARPS
|
||||
!
|
||||
|
||||
- COMPOUNDBEGIN x
|
||||
- COMPOUNDMIDDLE y
|
||||
- COMPOUNDEND z
|
||||
FORBIDDENWORD d
|
||||
|
||||
- # Prefixes are allowed at the beginning of compounds,
|
||||
- # suffixes are allowed at the end of compounds by default:
|
||||
- # (prefix)?(root)+(affix)?
|
||||
- # Affixes with COMPOUNDPERMITFLAG may be inside of compounds.
|
||||
- COMPOUNDPERMITFLAG c
|
||||
-
|
||||
- ONLYINCOMPOUND o
|
||||
-
|
||||
# my PSEUDOROOT h(elper) flag
|
||||
--- 566,571 ----
|
||||
#LANG de_DE
|
||||
! # CHECKSHARPS
|
||||
|
||||
FORBIDDENWORD d
|
||||
|
||||
# my PSEUDOROOT h(elper) flag
|
||||
***************
|
||||
*** 571,573 ****
|
||||
|
||||
! WORDCHARS <20>-.
|
||||
|
||||
--- 589,591 ----
|
||||
|
||||
! # WORDCHARS <20>-.
|
||||
|
||||
***************
|
||||
*** 725,729 ****
|
||||
# So enabling this is the lesser evil. No perfect solution found so far...
|
||||
! BREAK 2
|
||||
! BREAK -
|
||||
! BREAK .
|
||||
!
|
||||
--- 743,1241 ----
|
||||
# So enabling this is the lesser evil. No perfect solution found so far...
|
||||
! # BREAK 2
|
||||
! # BREAK -
|
||||
! # BREAK .
|
||||
!
|
||||
! # German phonetic transformation rules for use with Aspell
|
||||
! # Copyright (C) 2000 Bj<42>rn Jacke
|
||||
! #
|
||||
! # This library is free software; you can redistribute it and/or
|
||||
! # modify it under the terms of the GNU Lesser General Public
|
||||
! # License version 2.1 as published by the Free Software Foundation;
|
||||
! #
|
||||
! # This library is distributed in the hope that it will be useful,
|
||||
! # but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
! # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
||||
! # Lesser General Public License for more details.
|
||||
! #
|
||||
! # You should have received a copy of the GNU Lesser General Public
|
||||
! # License along with this library; if not, write to the Free Software
|
||||
! # Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
|
||||
! #
|
||||
! # Bj<42>rn Jacke may be reached by email at bjoern.jacke@gmx.de
|
||||
! #
|
||||
! # Changelog:
|
||||
! #
|
||||
! # 2000-01-05 Bj<42>rn Jacke <bjoern.jacke@gmx.de>
|
||||
! # Initial Release
|
||||
! # 2000-01-07 Kevin Atkinson <kevinatk@home.com>
|
||||
! # Converted from header to data file.
|
||||
! SAL followup 1
|
||||
! SAL collapse_result 1
|
||||
!
|
||||
! SAL <20>ER- E
|
||||
! SAL <20>U< EU
|
||||
! SAL <20>< E
|
||||
! SAL <20> E
|
||||
! SAL <20>ER- <20>
|
||||
! SAL <20> <20>
|
||||
! SAL <20>BER^^ IPA
|
||||
! SAL <20>ER- I
|
||||
! SAL <20> I
|
||||
! SAL <20> Z
|
||||
! SAL ABELLE$ APL
|
||||
! SAL ABELL$ APL
|
||||
! SAL ABIENNE$ APIN
|
||||
! SAL ACEY$ AZI
|
||||
! SAL AEU< EU
|
||||
! SAL AE2 E
|
||||
! SAL AGNI-^ AKN
|
||||
! SAL AGNIE- ANI
|
||||
! SAL AGN(AEOU)-$ ANI
|
||||
! SAL AIA2 AIA
|
||||
! SAL AIE$ E
|
||||
! SAL AILL(EOU)- ALI
|
||||
! SAL AINE$ EN
|
||||
! SAL AIRE$ ER
|
||||
! SAL AIR- E
|
||||
! SAL AISE$ EZ
|
||||
! SAL AISSANCE$ EZANZ
|
||||
! SAL AISSE$ EZ
|
||||
! SAL AIX$ EX
|
||||
! SAL AJ(A<>EIO<49>U<EFBFBD>)-- A
|
||||
! SAL AKTIE AXIE
|
||||
! SAL ALO(IY)^ ALUI
|
||||
! SAL AMATEU(RS)- ANAT<41>
|
||||
! SAL ANIELLE$ ANIL
|
||||
! SAL ANTI^^ ANTI
|
||||
! SAL ANVER^^ ANFA
|
||||
! SAL ATIA$ ATIA
|
||||
! SAL ATIA(NS)-- ATI
|
||||
! SAL ATI(A<>O<EFBFBD>U<EFBFBD>)- AZI
|
||||
! SAL AUAU-- _
|
||||
! SAL AUER< AUA
|
||||
! SAL AUF^^ AUF
|
||||
! SAL AULT$ U
|
||||
! SAL AUSSE$ UZ
|
||||
! SAL AUS(ST)-^ AUZ
|
||||
! SAL AUS^^ AUZ
|
||||
! SAL AUTO^^ AUTU
|
||||
! SAL AUX(IY)- AUX
|
||||
! SAL AUX U
|
||||
! SAL AU AU
|
||||
! SAL AVIER$ AFIE
|
||||
! SAL AYER--< EI
|
||||
! SAL AY(A<>EIO<49>U<EFBFBD>)-- A
|
||||
! SAL A(IJY)< EI
|
||||
! SAL A A
|
||||
! SAL BEA(BCMNRU)-^ PEA
|
||||
! SAL BEAT(AEIMORU)-^ PEAT
|
||||
! SAL BEIGE^$ PEZ
|
||||
! SAL BE(LMNRST)-^ PE
|
||||
! SAL BETTE$ PET
|
||||
! SAL BIC$ PIZ
|
||||
! SAL BOWL(EI)- PUL
|
||||
! SAL BP(A<>EIO<49>RU<52>Y)- P
|
||||
! SAL BUDGET7 PIKE
|
||||
! SAL BUFFET7 PIFE
|
||||
! SAL BYLLE$ PILE
|
||||
! SAL BYLL$ PIL
|
||||
! SAL BYTE< PEIT
|
||||
! SAL B P
|
||||
! SAL C<>- Z
|
||||
! SAL C<>$ ZI
|
||||
! SAL CACH(EI)-^ KEZ
|
||||
! SAL CAE-- Z
|
||||
! SAL CA(IY)$ ZEI
|
||||
! SAL CCH Z
|
||||
! SAL CCE- X
|
||||
! SAL CE(EIJUY)-- Z
|
||||
! SAL CENT< ZENT
|
||||
! SAL CERST(EI)----^ KE
|
||||
! SAL CER$ ZA
|
||||
! SAL CE3 ZE
|
||||
! SAL CHAO(ST)- KAU
|
||||
! SAL CHAMPIO-^ ZENPI
|
||||
! SAL CHAR(AI)-^ KAR
|
||||
! SAL CHAU(CDFSVWXZ)- ZU
|
||||
! SAL CHE(CF)- ZE
|
||||
! SAL CHEM-^ KE
|
||||
! SAL CHEQUE< ZEK
|
||||
! SAL CHI(CFGPVW)- ZI
|
||||
! SAL CH(AEUY)-<^ Z
|
||||
! SAL CHK- _
|
||||
! SAL CH(LOR)-<^ K
|
||||
! SAL CHST- X
|
||||
! SAL CH(S<>XZ)3 X
|
||||
! SAL CH K
|
||||
! SAL CIER$ ZIE
|
||||
! SAL CYB-^ ZEI
|
||||
! SAL CY9^ ZI
|
||||
! SAL C(IJY)-3 Z
|
||||
! SAL CKST XT
|
||||
! SAL CK(S<>XZ)3 X
|
||||
! SAL C(CK)- _
|
||||
! SAL CLAUDET--- KLU
|
||||
! SAL CLAUDINE^$ KLUTIN
|
||||
! SAL COLE$ KUL
|
||||
! SAL COUCH KAUZ
|
||||
! SAL CQUES$ K
|
||||
! SAL CQUE K
|
||||
! SAL CREAT-^ KREA
|
||||
! SAL CST XT
|
||||
! SAL CS<^ Z
|
||||
! SAL C(S<>X) X
|
||||
! SAL CT(S<>XZ) X
|
||||
! SAL CZ< Z
|
||||
! SAL C< K
|
||||
! SAL D'H^ T
|
||||
! SAL D'S3$ Z
|
||||
! SAL DAVO(NR)-^$ TAFU
|
||||
! SAL DD(SZ)--< _
|
||||
! SAL DEPOT7 TEPU
|
||||
! SAL DESIGN TIZEIN
|
||||
! SAL DE(LMNRST)-3^ TE
|
||||
! SAL DETTE$ TET
|
||||
! SAL DIC$ TIZ
|
||||
! SAL DJ(AEIOU)-^ I
|
||||
! SAL DS(CH)--< T
|
||||
! SAL DST ZT
|
||||
! SAL DT- _
|
||||
! SAL DUIS-^ TI
|
||||
! SAL DURCH^^ TURK
|
||||
! SAL DZS(CH)-- T
|
||||
! SAL D(S<>Z) Z
|
||||
! SAL D T
|
||||
! SAL EAULT$ U
|
||||
! SAL EAUX$ U
|
||||
! SAL EAU U
|
||||
! SAL EAV IF
|
||||
! SAL EA(A<>EIO<49><4F>Y)-3 EA
|
||||
! SAL EA3$ EA
|
||||
! SAL EA3 I
|
||||
! SAL EBEN^^ EPN
|
||||
! SAL EE9 E
|
||||
! SAL EIEI-- _
|
||||
! SAL EIH-- E
|
||||
! SAL EILLE$ EI
|
||||
! SAL EI EI
|
||||
! SAL EJ$ EI
|
||||
! SAL EL-^ E
|
||||
! SAL EL(DKL)--1 E
|
||||
! SAL EL(MNT)--1$ E
|
||||
! SAL ELYNE$ ELINE
|
||||
! SAL ELYN$ ELIN
|
||||
! SAL EL(A<>EIO<49>U<EFBFBD>Y)-1 EL
|
||||
! SAL EL-1 L
|
||||
! SAL EM-^ E
|
||||
! SAL EM(DFKMPQT)--1 E
|
||||
! SAL EM(A<>EIO<49>U<EFBFBD>Y)--1 E
|
||||
! SAL EM-1 N
|
||||
! SAL EN-^ E
|
||||
! SAL EN(CDGKQT)--1 E
|
||||
! SAL ENZ(AEIOUY)--1 EN
|
||||
! SAL EN(A<>EINO<4E>U<EFBFBD>Y)-1 EN
|
||||
! SAL EN-<1 N
|
||||
! SAL ERH(A<>EIO<49>U<EFBFBD>)-^ ER
|
||||
! SAL ER-^ E
|
||||
! SAL ER(A<>EIO<49>U<EFBFBD>Y)-1 A
|
||||
! SAL ER1$ A
|
||||
! SAL ER<1 A
|
||||
! SAL ETI(A<>O<EFBFBD><4F>U)- EZI
|
||||
! SAL EUEU-- _
|
||||
! SAL EUILLE$ <20>
|
||||
! SAL EUR$ <20>R
|
||||
! SAL EUX <20>
|
||||
! SAL EUYS$ EUZ
|
||||
! SAL EU EU
|
||||
! SAL EYER< EIA
|
||||
! SAL EY< EI
|
||||
! SAL E E
|
||||
! SAL FANS--^$ FE
|
||||
! SAL FAN-^$ FE
|
||||
! SAL FAULT- FUL
|
||||
! SAL FEE(DL)- FI
|
||||
! SAL FEHLER FELA
|
||||
! SAL FE(LMNRST)-3^ FE
|
||||
! SAL FOND7 FUN
|
||||
! SAL FRAIN$ FRA
|
||||
! SAL FRISEU(RS)- FRIZ<49> # x
|
||||
! SAL F F
|
||||
! SAL G'S$ X
|
||||
! SAL GAGS^$ KEX
|
||||
! SAL GAG^$ KEK
|
||||
! SAL GD KT
|
||||
! SAL GEGEN^^ KEKN
|
||||
! SAL GE(LMNRST)-3^ KE
|
||||
! SAL GETTE$ KET
|
||||
! SAL G(CK)- _
|
||||
! SAL GG- _
|
||||
! SAL GI(AO)-^ I
|
||||
! SAL GION$ KIUN
|
||||
! SAL GIUS-^ IU
|
||||
! SAL GMBH^$ GMPH
|
||||
! SAL GNAC$ NIAK
|
||||
! SAL GNON$ NIUN
|
||||
! SAL GN$ N
|
||||
! SAL GONCAL-^ KUNZA
|
||||
! SAL GS(CH)-- K
|
||||
! SAL GST XT
|
||||
! SAL G(S<>XZ) X
|
||||
! SAL GUCK- KU
|
||||
! SAL GUI-^ K
|
||||
! SAL G K
|
||||
! SAL HEAD- E
|
||||
! SAL HE(LMNRST)-3^ E
|
||||
! SAL HE(LMN)-1 E
|
||||
! SAL HEUR1$ <20>R
|
||||
! SAL H^ _
|
||||
! SAL IEC$ IZ
|
||||
! SAL IEI-3 _
|
||||
! SAL IELL3 IEL
|
||||
! SAL IENNE$ IN
|
||||
! SAL IERRE$ IER
|
||||
! SAL IETTE$ IT
|
||||
! SAL IEU I<>
|
||||
! SAL IE<4 I
|
||||
! SAL IGHT3$ EIT
|
||||
! SAL IGNI(EO)- INI
|
||||
! SAL IGN(AEOU)-$ INI
|
||||
! SAL IJ(AOU)- I
|
||||
! SAL IJ$ I
|
||||
! SAL IJ< EI
|
||||
! SAL IKOLE$ IKUL
|
||||
! SAL ILLAN(STZ)-- ILIA
|
||||
! SAL ILLAR(DT)-- ILIA
|
||||
! SAL INVER- INFE
|
||||
! SAL ITI(A<>O<EFBFBD>U<EFBFBD>)- IZI
|
||||
! SAL IVIER$ IFIE
|
||||
! SAL I I
|
||||
! SAL JAVIE---<^ ZA
|
||||
! SAL JEAN^$ IA
|
||||
! SAL JEAN-^ IA
|
||||
! SAL JER-^ IE
|
||||
! SAL JE(LMNST)- IE
|
||||
! SAL JOR(GK)^$ I<>RK
|
||||
! SAL J I
|
||||
! SAL KC(<28>EIJ)- X
|
||||
! SAL KE(LMNRST)-3^ KE
|
||||
! SAL KH<^ K
|
||||
! SAL KIC$ KIZ
|
||||
! SAL KLE(LMNRST)-3^ KLE
|
||||
! SAL KOTELE-^ KUTL
|
||||
! SAL KREAT-^ KREA
|
||||
! SAL KST XT
|
||||
! SAL K(S<>XZ) X
|
||||
! SAL KTI(AIOU)-3 XI
|
||||
! SAL KT(S<>XZ) X
|
||||
! SAL K K
|
||||
! SAL LARVE- LARF
|
||||
! SAL LEAND-^ LEAN
|
||||
! SAL LEL- LE
|
||||
! SAL LE(MNRST)-3^ LE
|
||||
! SAL LETTE$ LET
|
||||
! SAL LFGNAG- LFKAN
|
||||
! SAL LIC$ LIZ
|
||||
! SAL LIVE^$ LEIF
|
||||
! SAL LUI(GS)-- LU
|
||||
! SAL L L
|
||||
! SAL MASSEU(RS)- NAZ<41>
|
||||
! SAL MAURICE NURIZ
|
||||
! SAL MBH^$ MPH
|
||||
! SAL MB(S<>Z)- N
|
||||
! SAL MC9^ NK
|
||||
! SAL MEMOIR-^ NENUA
|
||||
! SAL ME(LMNRST)-3^ NE
|
||||
! SAL MIGUEL NIKL
|
||||
! SAL MIKE^$ NEIK
|
||||
! SAL MN N
|
||||
! SAL MPJUTE- NPUT
|
||||
! SAL MP(S<>Z)- N
|
||||
! SAL MP(BDJLMNPQRTVW)- NP
|
||||
! SAL M N
|
||||
! SAL NACH^^ NAK
|
||||
! SAL NADINE NATIN
|
||||
! SAL NAIV-- NA
|
||||
! SAL NAISE$ NEZE
|
||||
! SAL NCOISE$ ZUA
|
||||
! SAL NCOIS$ ZUA
|
||||
! SAL NEBEN^^ NEPN
|
||||
! SAL NE(LMNRST)-3^ NE
|
||||
! SAL NEN-3 NE
|
||||
! SAL NETTE$ NET
|
||||
! SAL NG(BDFJLMNPQRTVW)- NK
|
||||
! SAL NICHTS^^ NIX
|
||||
! SAL NICHT^^ NIKT
|
||||
! SAL NINE$ NIN
|
||||
! SAL NON^^ NUN
|
||||
! SAL NOT^^ NUT
|
||||
! SAL NTI(AIOU)-3 NZI
|
||||
! SAL NTIEL--3 NZI
|
||||
! SAL NYLON NEILUN
|
||||
! SAL ND(S<>Z)$ NZ
|
||||
! SAL NT(S<>Z)$ NZ
|
||||
! SAL ND'S$ NZ
|
||||
! SAL NT'S$ NZ
|
||||
! SAL NSTS$ NZ
|
||||
! SAL N N
|
||||
! SAL OBER^^ UPA
|
||||
! SAL OE2 <20>
|
||||
! SAL OGNIE- UNI
|
||||
! SAL OGN(AEOU)-$ UNI
|
||||
! SAL OIE$ <20>
|
||||
! SAL OIR$ UAR
|
||||
! SAL OIX UA
|
||||
! SAL OI<3 EU
|
||||
! SAL OJ(A<>EIO<49>U<EFBFBD>)-- U
|
||||
! SAL OKAY^$ UKE
|
||||
! SAL OLYN$ ULIN
|
||||
! SAL OTI(A<>O<EFBFBD>U<EFBFBD>)- UZI
|
||||
! SAL OUI^ FI
|
||||
! SAL OUILLE$ ULIE
|
||||
! SAL OU(DT)-^ AU
|
||||
! SAL OUSE$ AUZ
|
||||
! SAL OUT- AU
|
||||
! SAL OU U
|
||||
! SAL OWS$ UZ
|
||||
! SAL OY(A<>EIO<49>U<EFBFBD>)-- U
|
||||
! SAL O(JY)< EU
|
||||
! SAL O U
|
||||
! SAL PATIEN--^ PAZI
|
||||
! SAL PENSIO-^ PANZI
|
||||
! SAL PE(LMNRST)-3^ PE
|
||||
! SAL PFER-^ FE
|
||||
! SAL P(FH)< F
|
||||
! SAL POLY^^ PULI
|
||||
! SAL PORTRAIT7 PURTRE
|
||||
! SAL PP(FH)--< P
|
||||
! SAL PP- _
|
||||
! SAL PRIX^$ PRI
|
||||
! SAL P(S<>Z)^ Z
|
||||
! SAL PTI(A<>O<EFBFBD>U<EFBFBD>)-3 PZI
|
||||
! SAL PIC^$ PIK
|
||||
! SAL P P
|
||||
! SAL QUE(LMNRST)-3 KFE
|
||||
! SAL QUE$ K
|
||||
! SAL QUI(NS)$ KI
|
||||
! SAL QU KF
|
||||
! SAL Q< K
|
||||
! SAL RCH RK
|
||||
! SAL RECHERCH^ REZAZ
|
||||
! SAL RER$ RA
|
||||
! SAL RE(MNR)-4 RE
|
||||
! SAL RETTE$ RET
|
||||
! SAL RH<^ R
|
||||
! SAL RJA(MN)-- RI
|
||||
! SAL RTI(A<>O<EFBFBD>U<EFBFBD>)-3 RZI
|
||||
! SAL RY(KN)-$ RI
|
||||
! SAL R R
|
||||
! SAL SAFE^$ ZEIF
|
||||
! SAL SAUCE-^ ZUZ
|
||||
! SAL SCHSCH---7 _
|
||||
! SAL SCHTSCH Z
|
||||
! SAL SC(HZ)< Z
|
||||
! SAL SC ZK
|
||||
! SAL SELBSTST--7^^ ZELP
|
||||
! SAL SELBST7^^ ZELPZT
|
||||
! SAL SERVICE7^ Z<>RFIZ
|
||||
! SAL SE(LMNRST)-3^ ZE
|
||||
! SAL SETTE$ ZET
|
||||
! SAL SHP-^ Z
|
||||
! SAL SHST ZT
|
||||
! SAL SHTSH Z
|
||||
! SAL SHT Z
|
||||
! SAL SH3 Z
|
||||
! SAL SIEGLI-^ ZIKL
|
||||
! SAL SIGLI-^ ZIKL
|
||||
! SAL SIGHT ZEIT
|
||||
! SAL SIGN ZEIN
|
||||
! SAL SKI(NPZ)- ZKI
|
||||
! SAL SKI<^ ZI
|
||||
! SAL SOUND- ZAUN
|
||||
! SAL STAATS^^ ZTAZ
|
||||
! SAL STADT^^ ZTAT
|
||||
! SAL START^^ ZTART
|
||||
! SAL STAURANT7 ZTURAN
|
||||
! SAL STEAK- ZTE
|
||||
! SAL STRAF^^ ZTRAF
|
||||
! SAL ST'S$ Z
|
||||
! SAL STST-- _
|
||||
! SAL STS(ACEHIOU<4F><55><EFBFBD>)-- ZT
|
||||
! SAL ST(SZ) Z
|
||||
! SAL STYN(AE)-$ ZTIN
|
||||
! SAL ST ZT
|
||||
! SAL SZE(NPT)-^ ZE
|
||||
! SAL SZI(ELN)-^ ZI
|
||||
! SAL SZCZ< Z
|
||||
! SAL SZT< ZT
|
||||
! SAL SZ<3 Z
|
||||
! SAL S Z
|
||||
! SAL T'S3$ Z
|
||||
! SAL TCH Z
|
||||
! SAL TEAT-^ TEA
|
||||
! SAL TE(LMNRST)-3^ TE
|
||||
! SAL TH< T
|
||||
! SAL TIC$ TIZ
|
||||
! SAL TOAS-^ TU
|
||||
! SAL TOILET- TULE
|
||||
! SAL TOIN- TUA
|
||||
! SAL TRAINI- TREN
|
||||
! SAL TSCH Z
|
||||
! SAL TSH Z
|
||||
! SAL TST ZT
|
||||
! SAL T(S<>) Z
|
||||
! SAL TT(SZ)--< _
|
||||
! SAL TT9 T
|
||||
! SAL TZ- _
|
||||
! SAL T T
|
||||
! SAL UEBER^^ IPA
|
||||
! SAL UE2 I
|
||||
! SAL UIE$ I
|
||||
! SAL UM^^ UN
|
||||
! SAL UNTERE-- UNTE
|
||||
! SAL UNTER^^ UNTA
|
||||
! SAL UNVER^^ UNFA
|
||||
! SAL UN^^ UN
|
||||
! SAL UTI(A<>O<EFBFBD>U<EFBFBD>)- UZI
|
||||
! SAL U U
|
||||
! SAL VACL-^ FAZ
|
||||
! SAL VAC$ FAZ
|
||||
! SAL VEDD-^ FE
|
||||
! SAL VEREIN FAEIN
|
||||
! SAL VERSEN^ FAZN
|
||||
! SAL VER^^ FA
|
||||
! SAL VER FA
|
||||
! SAL VET(HT)-^ FET
|
||||
! SAL VETTE$ FET
|
||||
! SAL VIC$ FIZ
|
||||
! SAL VIEL FIL
|
||||
! SAL VIEW FIU
|
||||
! SAL VOR^^ FUR
|
||||
! SAL VY9^ FI
|
||||
! SAL V< F
|
||||
! SAL WE(LMNRST)-3^ FE
|
||||
! SAL WIC$ FIZ
|
||||
! SAL WIEDER^^ FITA
|
||||
! SAL WY9^ FI
|
||||
! SAL W F
|
||||
! SAL XE(LMNRST)-3^ XE
|
||||
! SAL X<^ Z
|
||||
! SAL X(CSZ) X
|
||||
! SAL XTS(CH)-- XT
|
||||
! SAL XT(SZ) Z
|
||||
! SAL X X
|
||||
! SAL YE(LMNRST)-3^ IE
|
||||
! SAL YE-3 I
|
||||
! SAL YOR(GK)^$ I<>RK
|
||||
! SAL Y(AOU)-<7 I
|
||||
! SAL YVES^$ IF
|
||||
! SAL YVONNE^$ IFUN
|
||||
! SAL Y I
|
||||
! SAL ZC(AOU)- ZK
|
||||
! SAL ZE(LMNRST)-3^ ZE
|
||||
! SAL ZH< Z
|
||||
! SAL ZS(CHT)-- _
|
||||
! SAL ZS Z
|
||||
! SAL ZUERST ZUERZT
|
||||
! SAL ZUR<55>CK^^ ZURIK
|
||||
! SAL ZUVER^^ ZUFA # x
|
||||
! SAL Z Z
|
||||
@@ -1,573 +0,0 @@
|
||||
*** de_AT.orig.aff 2019-01-19 19:16:46.616026157 +0100
|
||||
--- de_AT.aff 2019-01-19 19:24:24.524983269 +0100
|
||||
***************
|
||||
*** 15,16 ****
|
||||
--- 15,47 ----
|
||||
|
||||
+ FOL <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||
+ LOW <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||
+ UPP <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||
+
|
||||
+ MIDWORD '
|
||||
+
|
||||
+ MAP 9
|
||||
+ MAP a<><61><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||
+ MAP e<><65><EFBFBD><EFBFBD>
|
||||
+ MAP i<><69><EFBFBD><EFBFBD>
|
||||
+ MAP o<><6F><EFBFBD><EFBFBD><EFBFBD>
|
||||
+ MAP u<><75><EFBFBD><EFBFBD>
|
||||
+ MAP n<>
|
||||
+ MAP c<>
|
||||
+ MAP y<><79>
|
||||
+ MAP s<>
|
||||
+
|
||||
+ COMPOUNDRULE xy?z
|
||||
+ #COMPOUNDBEGIN x
|
||||
+ #COMPOUNDMIDDLE y
|
||||
+ #COMPOUNDEND z
|
||||
+
|
||||
+ # Prefixes are allowed at the beginning of compounds,
|
||||
+ # suffixes are allowed at the end of compounds by default:
|
||||
+ # (prefix)?(root)+(affix)?
|
||||
+ # Affixes with COMPOUNDPERMITFLAG may be inside of compounds.
|
||||
+ COMPOUNDPERMITFLAG c
|
||||
+
|
||||
+ ONLYINCOMPOUND o
|
||||
+
|
||||
+
|
||||
PFX U Y 1
|
||||
***************
|
||||
*** 538,553 ****
|
||||
|
||||
-
|
||||
- COMPOUNDBEGIN x
|
||||
- COMPOUNDMIDDLE y
|
||||
- COMPOUNDEND z
|
||||
FORBIDDENWORD d
|
||||
|
||||
- # Prefixes are allowed at the beginning of compounds,
|
||||
- # suffixes are allowed at the end of compounds by default:
|
||||
- # (prefix)?(root)+(affix)?
|
||||
- # Affixes with COMPOUNDPERMITFLAG may be inside of compounds.
|
||||
- COMPOUNDPERMITFLAG c
|
||||
-
|
||||
- ONLYINCOMPOUND o
|
||||
-
|
||||
# my PSEUDOROOT h(elper) flag
|
||||
--- 569,572 ----
|
||||
***************
|
||||
*** 571,573 ****
|
||||
|
||||
! WORDCHARS <20>-.
|
||||
|
||||
--- 590,592 ----
|
||||
|
||||
! # WORDCHARS <20>-.
|
||||
|
||||
***************
|
||||
*** 725,729 ****
|
||||
# So enabling this is the lesser evil. No perfect solution found so far...
|
||||
! BREAK 2
|
||||
! BREAK -
|
||||
! BREAK .
|
||||
!
|
||||
--- 744,1242 ----
|
||||
# So enabling this is the lesser evil. No perfect solution found so far...
|
||||
! # BREAK 2
|
||||
! # BREAK -
|
||||
! # BREAK .
|
||||
!
|
||||
! # German phonetic transformation rules for use with Aspell
|
||||
! # Copyright (C) 2000 Bj<42>rn Jacke
|
||||
! #
|
||||
! # This library is free software; you can redistribute it and/or
|
||||
! # modify it under the terms of the GNU Lesser General Public
|
||||
! # License version 2.1 as published by the Free Software Foundation;
|
||||
! #
|
||||
! # This library is distributed in the hope that it will be useful,
|
||||
! # but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
! # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
||||
! # Lesser General Public License for more details.
|
||||
! #
|
||||
! # You should have received a copy of the GNU Lesser General Public
|
||||
! # License along with this library; if not, write to the Free Software
|
||||
! # Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
|
||||
! #
|
||||
! # Bj<42>rn Jacke may be reached by email at bjoern.jacke@gmx.de
|
||||
! #
|
||||
! # Changelog:
|
||||
! #
|
||||
! # 2000-01-05 Bj<42>rn Jacke <bjoern.jacke@gmx.de>
|
||||
! # Initial Release
|
||||
! # 2000-01-07 Kevin Atkinson <kevinatk@home.com>
|
||||
! # Converted from header to data file.
|
||||
! SAL followup 1
|
||||
! SAL collapse_result 1
|
||||
!
|
||||
! SAL <20>ER- E
|
||||
! SAL <20>U< EU
|
||||
! SAL <20>< E
|
||||
! SAL <20> E
|
||||
! SAL <20>ER- <20>
|
||||
! SAL <20> <20>
|
||||
! SAL <20>BER^^ IPA
|
||||
! SAL <20>ER- I
|
||||
! SAL <20> I
|
||||
! SAL <20> Z
|
||||
! SAL ABELLE$ APL
|
||||
! SAL ABELL$ APL
|
||||
! SAL ABIENNE$ APIN
|
||||
! SAL ACEY$ AZI
|
||||
! SAL AEU< EU
|
||||
! SAL AE2 E
|
||||
! SAL AGNI-^ AKN
|
||||
! SAL AGNIE- ANI
|
||||
! SAL AGN(AEOU)-$ ANI
|
||||
! SAL AIA2 AIA
|
||||
! SAL AIE$ E
|
||||
! SAL AILL(EOU)- ALI
|
||||
! SAL AINE$ EN
|
||||
! SAL AIRE$ ER
|
||||
! SAL AIR- E
|
||||
! SAL AISE$ EZ
|
||||
! SAL AISSANCE$ EZANZ
|
||||
! SAL AISSE$ EZ
|
||||
! SAL AIX$ EX
|
||||
! SAL AJ(A<>EIO<49>U<EFBFBD>)-- A
|
||||
! SAL AKTIE AXIE
|
||||
! SAL ALO(IY)^ ALUI
|
||||
! SAL AMATEU(RS)- ANAT<41>
|
||||
! SAL ANIELLE$ ANIL
|
||||
! SAL ANTI^^ ANTI
|
||||
! SAL ANVER^^ ANFA
|
||||
! SAL ATIA$ ATIA
|
||||
! SAL ATIA(NS)-- ATI
|
||||
! SAL ATI(A<>O<EFBFBD>U<EFBFBD>)- AZI
|
||||
! SAL AUAU-- _
|
||||
! SAL AUER< AUA
|
||||
! SAL AUF^^ AUF
|
||||
! SAL AULT$ U
|
||||
! SAL AUSSE$ UZ
|
||||
! SAL AUS(ST)-^ AUZ
|
||||
! SAL AUS^^ AUZ
|
||||
! SAL AUTO^^ AUTU
|
||||
! SAL AUX(IY)- AUX
|
||||
! SAL AUX U
|
||||
! SAL AU AU
|
||||
! SAL AVIER$ AFIE
|
||||
! SAL AYER--< EI
|
||||
! SAL AY(A<>EIO<49>U<EFBFBD>)-- A
|
||||
! SAL A(IJY)< EI
|
||||
! SAL A A
|
||||
! SAL BEA(BCMNRU)-^ PEA
|
||||
! SAL BEAT(AEIMORU)-^ PEAT
|
||||
! SAL BEIGE^$ PEZ
|
||||
! SAL BE(LMNRST)-^ PE
|
||||
! SAL BETTE$ PET
|
||||
! SAL BIC$ PIZ
|
||||
! SAL BOWL(EI)- PUL
|
||||
! SAL BP(A<>EIO<49>RU<52>Y)- P
|
||||
! SAL BUDGET7 PIKE
|
||||
! SAL BUFFET7 PIFE
|
||||
! SAL BYLLE$ PILE
|
||||
! SAL BYLL$ PIL
|
||||
! SAL BYTE< PEIT
|
||||
! SAL B P
|
||||
! SAL C<>- Z
|
||||
! SAL C<>$ ZI
|
||||
! SAL CACH(EI)-^ KEZ
|
||||
! SAL CAE-- Z
|
||||
! SAL CA(IY)$ ZEI
|
||||
! SAL CCH Z
|
||||
! SAL CCE- X
|
||||
! SAL CE(EIJUY)-- Z
|
||||
! SAL CENT< ZENT
|
||||
! SAL CERST(EI)----^ KE
|
||||
! SAL CER$ ZA
|
||||
! SAL CE3 ZE
|
||||
! SAL CHAO(ST)- KAU
|
||||
! SAL CHAMPIO-^ ZENPI
|
||||
! SAL CHAR(AI)-^ KAR
|
||||
! SAL CHAU(CDFSVWXZ)- ZU
|
||||
! SAL CHE(CF)- ZE
|
||||
! SAL CHEM-^ KE
|
||||
! SAL CHEQUE< ZEK
|
||||
! SAL CHI(CFGPVW)- ZI
|
||||
! SAL CH(AEUY)-<^ Z
|
||||
! SAL CHK- _
|
||||
! SAL CH(LOR)-<^ K
|
||||
! SAL CHST- X
|
||||
! SAL CH(S<>XZ)3 X
|
||||
! SAL CH K
|
||||
! SAL CIER$ ZIE
|
||||
! SAL CYB-^ ZEI
|
||||
! SAL CY9^ ZI
|
||||
! SAL C(IJY)-3 Z
|
||||
! SAL CKST XT
|
||||
! SAL CK(S<>XZ)3 X
|
||||
! SAL C(CK)- _
|
||||
! SAL CLAUDET--- KLU
|
||||
! SAL CLAUDINE^$ KLUTIN
|
||||
! SAL COLE$ KUL
|
||||
! SAL COUCH KAUZ
|
||||
! SAL CQUES$ K
|
||||
! SAL CQUE K
|
||||
! SAL CREAT-^ KREA
|
||||
! SAL CST XT
|
||||
! SAL CS<^ Z
|
||||
! SAL C(S<>X) X
|
||||
! SAL CT(S<>XZ) X
|
||||
! SAL CZ< Z
|
||||
! SAL C< K
|
||||
! SAL D'H^ T
|
||||
! SAL D'S3$ Z
|
||||
! SAL DAVO(NR)-^$ TAFU
|
||||
! SAL DD(SZ)--< _
|
||||
! SAL DEPOT7 TEPU
|
||||
! SAL DESIGN TIZEIN
|
||||
! SAL DE(LMNRST)-3^ TE
|
||||
! SAL DETTE$ TET
|
||||
! SAL DIC$ TIZ
|
||||
! SAL DJ(AEIOU)-^ I
|
||||
! SAL DS(CH)--< T
|
||||
! SAL DST ZT
|
||||
! SAL DT- _
|
||||
! SAL DUIS-^ TI
|
||||
! SAL DURCH^^ TURK
|
||||
! SAL DZS(CH)-- T
|
||||
! SAL D(S<>Z) Z
|
||||
! SAL D T
|
||||
! SAL EAULT$ U
|
||||
! SAL EAUX$ U
|
||||
! SAL EAU U
|
||||
! SAL EAV IF
|
||||
! SAL EA(A<>EIO<49><4F>Y)-3 EA
|
||||
! SAL EA3$ EA
|
||||
! SAL EA3 I
|
||||
! SAL EBEN^^ EPN
|
||||
! SAL EE9 E
|
||||
! SAL EIEI-- _
|
||||
! SAL EIH-- E
|
||||
! SAL EILLE$ EI
|
||||
! SAL EI EI
|
||||
! SAL EJ$ EI
|
||||
! SAL EL-^ E
|
||||
! SAL EL(DKL)--1 E
|
||||
! SAL EL(MNT)--1$ E
|
||||
! SAL ELYNE$ ELINE
|
||||
! SAL ELYN$ ELIN
|
||||
! SAL EL(A<>EIO<49>U<EFBFBD>Y)-1 EL
|
||||
! SAL EL-1 L
|
||||
! SAL EM-^ E
|
||||
! SAL EM(DFKMPQT)--1 E
|
||||
! SAL EM(A<>EIO<49>U<EFBFBD>Y)--1 E
|
||||
! SAL EM-1 N
|
||||
! SAL EN-^ E
|
||||
! SAL EN(CDGKQT)--1 E
|
||||
! SAL ENZ(AEIOUY)--1 EN
|
||||
! SAL EN(A<>EINO<4E>U<EFBFBD>Y)-1 EN
|
||||
! SAL EN-<1 N
|
||||
! SAL ERH(A<>EIO<49>U<EFBFBD>)-^ ER
|
||||
! SAL ER-^ E
|
||||
! SAL ER(A<>EIO<49>U<EFBFBD>Y)-1 A
|
||||
! SAL ER1$ A
|
||||
! SAL ER<1 A
|
||||
! SAL ETI(A<>O<EFBFBD><4F>U)- EZI
|
||||
! SAL EUEU-- _
|
||||
! SAL EUILLE$ <20>
|
||||
! SAL EUR$ <20>R
|
||||
! SAL EUX <20>
|
||||
! SAL EUYS$ EUZ
|
||||
! SAL EU EU
|
||||
! SAL EYER< EIA
|
||||
! SAL EY< EI
|
||||
! SAL E E
|
||||
! SAL FANS--^$ FE
|
||||
! SAL FAN-^$ FE
|
||||
! SAL FAULT- FUL
|
||||
! SAL FEE(DL)- FI
|
||||
! SAL FEHLER FELA
|
||||
! SAL FE(LMNRST)-3^ FE
|
||||
! SAL FOND7 FUN
|
||||
! SAL FRAIN$ FRA
|
||||
! SAL FRISEU(RS)- FRIZ<49> # x
|
||||
! SAL F F
|
||||
! SAL G'S$ X
|
||||
! SAL GAGS^$ KEX
|
||||
! SAL GAG^$ KEK
|
||||
! SAL GD KT
|
||||
! SAL GEGEN^^ KEKN
|
||||
! SAL GE(LMNRST)-3^ KE
|
||||
! SAL GETTE$ KET
|
||||
! SAL G(CK)- _
|
||||
! SAL GG- _
|
||||
! SAL GI(AO)-^ I
|
||||
! SAL GION$ KIUN
|
||||
! SAL GIUS-^ IU
|
||||
! SAL GMBH^$ GMPH
|
||||
! SAL GNAC$ NIAK
|
||||
! SAL GNON$ NIUN
|
||||
! SAL GN$ N
|
||||
! SAL GONCAL-^ KUNZA
|
||||
! SAL GS(CH)-- K
|
||||
! SAL GST XT
|
||||
! SAL G(S<>XZ) X
|
||||
! SAL GUCK- KU
|
||||
! SAL GUI-^ K
|
||||
! SAL G K
|
||||
! SAL HEAD- E
|
||||
! SAL HE(LMNRST)-3^ E
|
||||
! SAL HE(LMN)-1 E
|
||||
! SAL HEUR1$ <20>R
|
||||
! SAL H^ _
|
||||
! SAL IEC$ IZ
|
||||
! SAL IEI-3 _
|
||||
! SAL IELL3 IEL
|
||||
! SAL IENNE$ IN
|
||||
! SAL IERRE$ IER
|
||||
! SAL IETTE$ IT
|
||||
! SAL IEU I<>
|
||||
! SAL IE<4 I
|
||||
! SAL IGHT3$ EIT
|
||||
! SAL IGNI(EO)- INI
|
||||
! SAL IGN(AEOU)-$ INI
|
||||
! SAL IJ(AOU)- I
|
||||
! SAL IJ$ I
|
||||
! SAL IJ< EI
|
||||
! SAL IKOLE$ IKUL
|
||||
! SAL ILLAN(STZ)-- ILIA
|
||||
! SAL ILLAR(DT)-- ILIA
|
||||
! SAL INVER- INFE
|
||||
! SAL ITI(A<>O<EFBFBD>U<EFBFBD>)- IZI
|
||||
! SAL IVIER$ IFIE
|
||||
! SAL I I
|
||||
! SAL JAVIE---<^ ZA
|
||||
! SAL JEAN^$ IA
|
||||
! SAL JEAN-^ IA
|
||||
! SAL JER-^ IE
|
||||
! SAL JE(LMNST)- IE
|
||||
! SAL JOR(GK)^$ I<>RK
|
||||
! SAL J I
|
||||
! SAL KC(<28>EIJ)- X
|
||||
! SAL KE(LMNRST)-3^ KE
|
||||
! SAL KH<^ K
|
||||
! SAL KIC$ KIZ
|
||||
! SAL KLE(LMNRST)-3^ KLE
|
||||
! SAL KOTELE-^ KUTL
|
||||
! SAL KREAT-^ KREA
|
||||
! SAL KST XT
|
||||
! SAL K(S<>XZ) X
|
||||
! SAL KTI(AIOU)-3 XI
|
||||
! SAL KT(S<>XZ) X
|
||||
! SAL K K
|
||||
! SAL LARVE- LARF
|
||||
! SAL LEAND-^ LEAN
|
||||
! SAL LEL- LE
|
||||
! SAL LE(MNRST)-3^ LE
|
||||
! SAL LETTE$ LET
|
||||
! SAL LFGNAG- LFKAN
|
||||
! SAL LIC$ LIZ
|
||||
! SAL LIVE^$ LEIF
|
||||
! SAL LUI(GS)-- LU
|
||||
! SAL L L
|
||||
! SAL MASSEU(RS)- NAZ<41>
|
||||
! SAL MAURICE NURIZ
|
||||
! SAL MBH^$ MPH
|
||||
! SAL MB(S<>Z)- N
|
||||
! SAL MC9^ NK
|
||||
! SAL MEMOIR-^ NENUA
|
||||
! SAL ME(LMNRST)-3^ NE
|
||||
! SAL MIGUEL NIKL
|
||||
! SAL MIKE^$ NEIK
|
||||
! SAL MN N
|
||||
! SAL MPJUTE- NPUT
|
||||
! SAL MP(S<>Z)- N
|
||||
! SAL MP(BDJLMNPQRTVW)- NP
|
||||
! SAL M N
|
||||
! SAL NACH^^ NAK
|
||||
! SAL NADINE NATIN
|
||||
! SAL NAIV-- NA
|
||||
! SAL NAISE$ NEZE
|
||||
! SAL NCOISE$ ZUA
|
||||
! SAL NCOIS$ ZUA
|
||||
! SAL NEBEN^^ NEPN
|
||||
! SAL NE(LMNRST)-3^ NE
|
||||
! SAL NEN-3 NE
|
||||
! SAL NETTE$ NET
|
||||
! SAL NG(BDFJLMNPQRTVW)- NK
|
||||
! SAL NICHTS^^ NIX
|
||||
! SAL NICHT^^ NIKT
|
||||
! SAL NINE$ NIN
|
||||
! SAL NON^^ NUN
|
||||
! SAL NOT^^ NUT
|
||||
! SAL NTI(AIOU)-3 NZI
|
||||
! SAL NTIEL--3 NZI
|
||||
! SAL NYLON NEILUN
|
||||
! SAL ND(S<>Z)$ NZ
|
||||
! SAL NT(S<>Z)$ NZ
|
||||
! SAL ND'S$ NZ
|
||||
! SAL NT'S$ NZ
|
||||
! SAL NSTS$ NZ
|
||||
! SAL N N
|
||||
! SAL OBER^^ UPA
|
||||
! SAL OE2 <20>
|
||||
! SAL OGNIE- UNI
|
||||
! SAL OGN(AEOU)-$ UNI
|
||||
! SAL OIE$ <20>
|
||||
! SAL OIR$ UAR
|
||||
! SAL OIX UA
|
||||
! SAL OI<3 EU
|
||||
! SAL OJ(A<>EIO<49>U<EFBFBD>)-- U
|
||||
! SAL OKAY^$ UKE
|
||||
! SAL OLYN$ ULIN
|
||||
! SAL OTI(A<>O<EFBFBD>U<EFBFBD>)- UZI
|
||||
! SAL OUI^ FI
|
||||
! SAL OUILLE$ ULIE
|
||||
! SAL OU(DT)-^ AU
|
||||
! SAL OUSE$ AUZ
|
||||
! SAL OUT- AU
|
||||
! SAL OU U
|
||||
! SAL OWS$ UZ
|
||||
! SAL OY(A<>EIO<49>U<EFBFBD>)-- U
|
||||
! SAL O(JY)< EU
|
||||
! SAL O U
|
||||
! SAL PATIEN--^ PAZI
|
||||
! SAL PENSIO-^ PANZI
|
||||
! SAL PE(LMNRST)-3^ PE
|
||||
! SAL PFER-^ FE
|
||||
! SAL P(FH)< F
|
||||
! SAL POLY^^ PULI
|
||||
! SAL PORTRAIT7 PURTRE
|
||||
! SAL PP(FH)--< P
|
||||
! SAL PP- _
|
||||
! SAL PRIX^$ PRI
|
||||
! SAL P(S<>Z)^ Z
|
||||
! SAL PTI(A<>O<EFBFBD>U<EFBFBD>)-3 PZI
|
||||
! SAL PIC^$ PIK
|
||||
! SAL P P
|
||||
! SAL QUE(LMNRST)-3 KFE
|
||||
! SAL QUE$ K
|
||||
! SAL QUI(NS)$ KI
|
||||
! SAL QU KF
|
||||
! SAL Q< K
|
||||
! SAL RCH RK
|
||||
! SAL RECHERCH^ REZAZ
|
||||
! SAL RER$ RA
|
||||
! SAL RE(MNR)-4 RE
|
||||
! SAL RETTE$ RET
|
||||
! SAL RH<^ R
|
||||
! SAL RJA(MN)-- RI
|
||||
! SAL RTI(A<>O<EFBFBD>U<EFBFBD>)-3 RZI
|
||||
! SAL RY(KN)-$ RI
|
||||
! SAL R R
|
||||
! SAL SAFE^$ ZEIF
|
||||
! SAL SAUCE-^ ZUZ
|
||||
! SAL SCHSCH---7 _
|
||||
! SAL SCHTSCH Z
|
||||
! SAL SC(HZ)< Z
|
||||
! SAL SC ZK
|
||||
! SAL SELBSTST--7^^ ZELP
|
||||
! SAL SELBST7^^ ZELPZT
|
||||
! SAL SERVICE7^ Z<>RFIZ
|
||||
! SAL SE(LMNRST)-3^ ZE
|
||||
! SAL SETTE$ ZET
|
||||
! SAL SHP-^ Z
|
||||
! SAL SHST ZT
|
||||
! SAL SHTSH Z
|
||||
! SAL SHT Z
|
||||
! SAL SH3 Z
|
||||
! SAL SIEGLI-^ ZIKL
|
||||
! SAL SIGLI-^ ZIKL
|
||||
! SAL SIGHT ZEIT
|
||||
! SAL SIGN ZEIN
|
||||
! SAL SKI(NPZ)- ZKI
|
||||
! SAL SKI<^ ZI
|
||||
! SAL SOUND- ZAUN
|
||||
! SAL STAATS^^ ZTAZ
|
||||
! SAL STADT^^ ZTAT
|
||||
! SAL START^^ ZTART
|
||||
! SAL STAURANT7 ZTURAN
|
||||
! SAL STEAK- ZTE
|
||||
! SAL STRAF^^ ZTRAF
|
||||
! SAL ST'S$ Z
|
||||
! SAL STST-- _
|
||||
! SAL STS(ACEHIOU<4F><55><EFBFBD>)-- ZT
|
||||
! SAL ST(SZ) Z
|
||||
! SAL STYN(AE)-$ ZTIN
|
||||
! SAL ST ZT
|
||||
! SAL SZE(NPT)-^ ZE
|
||||
! SAL SZI(ELN)-^ ZI
|
||||
! SAL SZCZ< Z
|
||||
! SAL SZT< ZT
|
||||
! SAL SZ<3 Z
|
||||
! SAL S Z
|
||||
! SAL T'S3$ Z
|
||||
! SAL TCH Z
|
||||
! SAL TEAT-^ TEA
|
||||
! SAL TE(LMNRST)-3^ TE
|
||||
! SAL TH< T
|
||||
! SAL TIC$ TIZ
|
||||
! SAL TOAS-^ TU
|
||||
! SAL TOILET- TULE
|
||||
! SAL TOIN- TUA
|
||||
! SAL TRAINI- TREN
|
||||
! SAL TSCH Z
|
||||
! SAL TSH Z
|
||||
! SAL TST ZT
|
||||
! SAL T(S<>) Z
|
||||
! SAL TT(SZ)--< _
|
||||
! SAL TT9 T
|
||||
! SAL TZ- _
|
||||
! SAL T T
|
||||
! SAL UEBER^^ IPA
|
||||
! SAL UE2 I
|
||||
! SAL UIE$ I
|
||||
! SAL UM^^ UN
|
||||
! SAL UNTERE-- UNTE
|
||||
! SAL UNTER^^ UNTA
|
||||
! SAL UNVER^^ UNFA
|
||||
! SAL UN^^ UN
|
||||
! SAL UTI(A<>O<EFBFBD>U<EFBFBD>)- UZI
|
||||
! SAL U U
|
||||
! SAL VACL-^ FAZ
|
||||
! SAL VAC$ FAZ
|
||||
! SAL VEDD-^ FE
|
||||
! SAL VEREIN FAEIN
|
||||
! SAL VERSEN^ FAZN
|
||||
! SAL VER^^ FA
|
||||
! SAL VER FA
|
||||
! SAL VET(HT)-^ FET
|
||||
! SAL VETTE$ FET
|
||||
! SAL VIC$ FIZ
|
||||
! SAL VIEL FIL
|
||||
! SAL VIEW FIU
|
||||
! SAL VOR^^ FUR
|
||||
! SAL VY9^ FI
|
||||
! SAL V< F
|
||||
! SAL WE(LMNRST)-3^ FE
|
||||
! SAL WIC$ FIZ
|
||||
! SAL WIEDER^^ FITA
|
||||
! SAL WY9^ FI
|
||||
! SAL W F
|
||||
! SAL XE(LMNRST)-3^ XE
|
||||
! SAL X<^ Z
|
||||
! SAL X(CSZ) X
|
||||
! SAL XTS(CH)-- XT
|
||||
! SAL XT(SZ) Z
|
||||
! SAL X X
|
||||
! SAL YE(LMNRST)-3^ IE
|
||||
! SAL YE-3 I
|
||||
! SAL YOR(GK)^$ I<>RK
|
||||
! SAL Y(AOU)-<7 I
|
||||
! SAL YVES^$ IF
|
||||
! SAL YVONNE^$ IFUN
|
||||
! SAL Y I
|
||||
! SAL ZC(AOU)- ZK
|
||||
! SAL ZE(LMNRST)-3^ ZE
|
||||
! SAL ZH< Z
|
||||
! SAL ZS(CHT)-- _
|
||||
! SAL ZS Z
|
||||
! SAL ZUERST ZUERZT
|
||||
! SAL ZUR<55>CK^^ ZURIK
|
||||
! SAL ZUVER^^ ZUFA # x
|
||||
! SAL Z Z
|
||||
@@ -1,574 +0,0 @@
|
||||
*** de_CH.orig.aff 2019-01-19 18:45:30.400494173 +0100
|
||||
--- de_CH.aff 2019-01-19 19:24:48.064826847 +0100
|
||||
***************
|
||||
*** 15,16 ****
|
||||
--- 15,48 ----
|
||||
|
||||
+ FOL <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||
+ LOW <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||
+ UPP <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||
+
|
||||
+ MIDWORD '
|
||||
+
|
||||
+ MAP 9
|
||||
+ MAP a<><61><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||
+ MAP e<><65><EFBFBD><EFBFBD>
|
||||
+ MAP i<><69><EFBFBD><EFBFBD>
|
||||
+ MAP o<><6F><EFBFBD><EFBFBD><EFBFBD>
|
||||
+ MAP u<><75><EFBFBD><EFBFBD>
|
||||
+ MAP n<>
|
||||
+ MAP c<>
|
||||
+ MAP y<><79>
|
||||
+ MAP s<>
|
||||
+
|
||||
+
|
||||
+ COMPOUNDRULE xy?z
|
||||
+ #COMPOUNDBEGIN x
|
||||
+ #COMPOUNDMIDDLE y
|
||||
+ #COMPOUNDEND z
|
||||
+
|
||||
+ # Prefixes are allowed at the beginning of compounds,
|
||||
+ # suffixes are allowed at the end of compounds by default:
|
||||
+ # (prefix)?(root)+(affix)?
|
||||
+ # Affixes with COMPOUNDPERMITFLAG may be inside of compounds.
|
||||
+ COMPOUNDPERMITFLAG c
|
||||
+
|
||||
+ ONLYINCOMPOUND o
|
||||
+
|
||||
+
|
||||
PFX U Y 1
|
||||
***************
|
||||
*** 538,553 ****
|
||||
|
||||
-
|
||||
- COMPOUNDBEGIN x
|
||||
- COMPOUNDMIDDLE y
|
||||
- COMPOUNDEND z
|
||||
FORBIDDENWORD d
|
||||
|
||||
- # Prefixes are allowed at the beginning of compounds,
|
||||
- # suffixes are allowed at the end of compounds by default:
|
||||
- # (prefix)?(root)+(affix)?
|
||||
- # Affixes with COMPOUNDPERMITFLAG may be inside of compounds.
|
||||
- COMPOUNDPERMITFLAG c
|
||||
-
|
||||
- ONLYINCOMPOUND o
|
||||
-
|
||||
# my PSEUDOROOT h(elper) flag
|
||||
--- 570,573 ----
|
||||
***************
|
||||
*** 571,573 ****
|
||||
|
||||
! WORDCHARS <20>-.
|
||||
|
||||
--- 591,593 ----
|
||||
|
||||
! # WORDCHARS <20>-.
|
||||
|
||||
***************
|
||||
*** 725,729 ****
|
||||
# So enabling this is the lesser evil. No perfect solution found so far...
|
||||
! BREAK 2
|
||||
! BREAK -
|
||||
! BREAK .
|
||||
!
|
||||
--- 745,1243 ----
|
||||
# So enabling this is the lesser evil. No perfect solution found so far...
|
||||
! # BREAK 2
|
||||
! # BREAK -
|
||||
! # BREAK .
|
||||
!
|
||||
! # German phonetic transformation rules for use with Aspell
|
||||
! # Copyright (C) 2000 Bj<42>rn Jacke
|
||||
! #
|
||||
! # This library is free software; you can redistribute it and/or
|
||||
! # modify it under the terms of the GNU Lesser General Public
|
||||
! # License version 2.1 as published by the Free Software Foundation;
|
||||
! #
|
||||
! # This library is distributed in the hope that it will be useful,
|
||||
! # but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
! # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
||||
! # Lesser General Public License for more details.
|
||||
! #
|
||||
! # You should have received a copy of the GNU Lesser General Public
|
||||
! # License along with this library; if not, write to the Free Software
|
||||
! # Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
|
||||
! #
|
||||
! # Bj<42>rn Jacke may be reached by email at bjoern.jacke@gmx.de
|
||||
! #
|
||||
! # Changelog:
|
||||
! #
|
||||
! # 2000-01-05 Bj<42>rn Jacke <bjoern.jacke@gmx.de>
|
||||
! # Initial Release
|
||||
! # 2000-01-07 Kevin Atkinson <kevinatk@home.com>
|
||||
! # Converted from header to data file.
|
||||
! SAL followup 1
|
||||
! SAL collapse_result 1
|
||||
!
|
||||
! SAL <20>ER- E
|
||||
! SAL <20>U< EU
|
||||
! SAL <20>< E
|
||||
! SAL <20> E
|
||||
! SAL <20>ER- <20>
|
||||
! SAL <20> <20>
|
||||
! SAL <20>BER^^ IPA
|
||||
! SAL <20>ER- I
|
||||
! SAL <20> I
|
||||
! SAL <20> Z
|
||||
! SAL ABELLE$ APL
|
||||
! SAL ABELL$ APL
|
||||
! SAL ABIENNE$ APIN
|
||||
! SAL ACEY$ AZI
|
||||
! SAL AEU< EU
|
||||
! SAL AE2 E
|
||||
! SAL AGNI-^ AKN
|
||||
! SAL AGNIE- ANI
|
||||
! SAL AGN(AEOU)-$ ANI
|
||||
! SAL AIA2 AIA
|
||||
! SAL AIE$ E
|
||||
! SAL AILL(EOU)- ALI
|
||||
! SAL AINE$ EN
|
||||
! SAL AIRE$ ER
|
||||
! SAL AIR- E
|
||||
! SAL AISE$ EZ
|
||||
! SAL AISSANCE$ EZANZ
|
||||
! SAL AISSE$ EZ
|
||||
! SAL AIX$ EX
|
||||
! SAL AJ(A<>EIO<49>U<EFBFBD>)-- A
|
||||
! SAL AKTIE AXIE
|
||||
! SAL ALO(IY)^ ALUI
|
||||
! SAL AMATEU(RS)- ANAT<41>
|
||||
! SAL ANIELLE$ ANIL
|
||||
! SAL ANTI^^ ANTI
|
||||
! SAL ANVER^^ ANFA
|
||||
! SAL ATIA$ ATIA
|
||||
! SAL ATIA(NS)-- ATI
|
||||
! SAL ATI(A<>O<EFBFBD>U<EFBFBD>)- AZI
|
||||
! SAL AUAU-- _
|
||||
! SAL AUER< AUA
|
||||
! SAL AUF^^ AUF
|
||||
! SAL AULT$ U
|
||||
! SAL AUSSE$ UZ
|
||||
! SAL AUS(ST)-^ AUZ
|
||||
! SAL AUS^^ AUZ
|
||||
! SAL AUTO^^ AUTU
|
||||
! SAL AUX(IY)- AUX
|
||||
! SAL AUX U
|
||||
! SAL AU AU
|
||||
! SAL AVIER$ AFIE
|
||||
! SAL AYER--< EI
|
||||
! SAL AY(A<>EIO<49>U<EFBFBD>)-- A
|
||||
! SAL A(IJY)< EI
|
||||
! SAL A A
|
||||
! SAL BEA(BCMNRU)-^ PEA
|
||||
! SAL BEAT(AEIMORU)-^ PEAT
|
||||
! SAL BEIGE^$ PEZ
|
||||
! SAL BE(LMNRST)-^ PE
|
||||
! SAL BETTE$ PET
|
||||
! SAL BIC$ PIZ
|
||||
! SAL BOWL(EI)- PUL
|
||||
! SAL BP(A<>EIO<49>RU<52>Y)- P
|
||||
! SAL BUDGET7 PIKE
|
||||
! SAL BUFFET7 PIFE
|
||||
! SAL BYLLE$ PILE
|
||||
! SAL BYLL$ PIL
|
||||
! SAL BYTE< PEIT
|
||||
! SAL B P
|
||||
! SAL C<>- Z
|
||||
! SAL C<>$ ZI
|
||||
! SAL CACH(EI)-^ KEZ
|
||||
! SAL CAE-- Z
|
||||
! SAL CA(IY)$ ZEI
|
||||
! SAL CCH Z
|
||||
! SAL CCE- X
|
||||
! SAL CE(EIJUY)-- Z
|
||||
! SAL CENT< ZENT
|
||||
! SAL CERST(EI)----^ KE
|
||||
! SAL CER$ ZA
|
||||
! SAL CE3 ZE
|
||||
! SAL CHAO(ST)- KAU
|
||||
! SAL CHAMPIO-^ ZENPI
|
||||
! SAL CHAR(AI)-^ KAR
|
||||
! SAL CHAU(CDFSVWXZ)- ZU
|
||||
! SAL CHE(CF)- ZE
|
||||
! SAL CHEM-^ KE
|
||||
! SAL CHEQUE< ZEK
|
||||
! SAL CHI(CFGPVW)- ZI
|
||||
! SAL CH(AEUY)-<^ Z
|
||||
! SAL CHK- _
|
||||
! SAL CH(LOR)-<^ K
|
||||
! SAL CHST- X
|
||||
! SAL CH(S<>XZ)3 X
|
||||
! SAL CH K
|
||||
! SAL CIER$ ZIE
|
||||
! SAL CYB-^ ZEI
|
||||
! SAL CY9^ ZI
|
||||
! SAL C(IJY)-3 Z
|
||||
! SAL CKST XT
|
||||
! SAL CK(S<>XZ)3 X
|
||||
! SAL C(CK)- _
|
||||
! SAL CLAUDET--- KLU
|
||||
! SAL CLAUDINE^$ KLUTIN
|
||||
! SAL COLE$ KUL
|
||||
! SAL COUCH KAUZ
|
||||
! SAL CQUES$ K
|
||||
! SAL CQUE K
|
||||
! SAL CREAT-^ KREA
|
||||
! SAL CST XT
|
||||
! SAL CS<^ Z
|
||||
! SAL C(S<>X) X
|
||||
! SAL CT(S<>XZ) X
|
||||
! SAL CZ< Z
|
||||
! SAL C< K
|
||||
! SAL D'H^ T
|
||||
! SAL D'S3$ Z
|
||||
! SAL DAVO(NR)-^$ TAFU
|
||||
! SAL DD(SZ)--< _
|
||||
! SAL DEPOT7 TEPU
|
||||
! SAL DESIGN TIZEIN
|
||||
! SAL DE(LMNRST)-3^ TE
|
||||
! SAL DETTE$ TET
|
||||
! SAL DIC$ TIZ
|
||||
! SAL DJ(AEIOU)-^ I
|
||||
! SAL DS(CH)--< T
|
||||
! SAL DST ZT
|
||||
! SAL DT- _
|
||||
! SAL DUIS-^ TI
|
||||
! SAL DURCH^^ TURK
|
||||
! SAL DZS(CH)-- T
|
||||
! SAL D(S<>Z) Z
|
||||
! SAL D T
|
||||
! SAL EAULT$ U
|
||||
! SAL EAUX$ U
|
||||
! SAL EAU U
|
||||
! SAL EAV IF
|
||||
! SAL EA(A<>EIO<49><4F>Y)-3 EA
|
||||
! SAL EA3$ EA
|
||||
! SAL EA3 I
|
||||
! SAL EBEN^^ EPN
|
||||
! SAL EE9 E
|
||||
! SAL EIEI-- _
|
||||
! SAL EIH-- E
|
||||
! SAL EILLE$ EI
|
||||
! SAL EI EI
|
||||
! SAL EJ$ EI
|
||||
! SAL EL-^ E
|
||||
! SAL EL(DKL)--1 E
|
||||
! SAL EL(MNT)--1$ E
|
||||
! SAL ELYNE$ ELINE
|
||||
! SAL ELYN$ ELIN
|
||||
! SAL EL(A<>EIO<49>U<EFBFBD>Y)-1 EL
|
||||
! SAL EL-1 L
|
||||
! SAL EM-^ E
|
||||
! SAL EM(DFKMPQT)--1 E
|
||||
! SAL EM(A<>EIO<49>U<EFBFBD>Y)--1 E
|
||||
! SAL EM-1 N
|
||||
! SAL EN-^ E
|
||||
! SAL EN(CDGKQT)--1 E
|
||||
! SAL ENZ(AEIOUY)--1 EN
|
||||
! SAL EN(A<>EINO<4E>U<EFBFBD>Y)-1 EN
|
||||
! SAL EN-<1 N
|
||||
! SAL ERH(A<>EIO<49>U<EFBFBD>)-^ ER
|
||||
! SAL ER-^ E
|
||||
! SAL ER(A<>EIO<49>U<EFBFBD>Y)-1 A
|
||||
! SAL ER1$ A
|
||||
! SAL ER<1 A
|
||||
! SAL ETI(A<>O<EFBFBD><4F>U)- EZI
|
||||
! SAL EUEU-- _
|
||||
! SAL EUILLE$ <20>
|
||||
! SAL EUR$ <20>R
|
||||
! SAL EUX <20>
|
||||
! SAL EUYS$ EUZ
|
||||
! SAL EU EU
|
||||
! SAL EYER< EIA
|
||||
! SAL EY< EI
|
||||
! SAL E E
|
||||
! SAL FANS--^$ FE
|
||||
! SAL FAN-^$ FE
|
||||
! SAL FAULT- FUL
|
||||
! SAL FEE(DL)- FI
|
||||
! SAL FEHLER FELA
|
||||
! SAL FE(LMNRST)-3^ FE
|
||||
! SAL FOND7 FUN
|
||||
! SAL FRAIN$ FRA
|
||||
! SAL FRISEU(RS)- FRIZ<49> # x
|
||||
! SAL F F
|
||||
! SAL G'S$ X
|
||||
! SAL GAGS^$ KEX
|
||||
! SAL GAG^$ KEK
|
||||
! SAL GD KT
|
||||
! SAL GEGEN^^ KEKN
|
||||
! SAL GE(LMNRST)-3^ KE
|
||||
! SAL GETTE$ KET
|
||||
! SAL G(CK)- _
|
||||
! SAL GG- _
|
||||
! SAL GI(AO)-^ I
|
||||
! SAL GION$ KIUN
|
||||
! SAL GIUS-^ IU
|
||||
! SAL GMBH^$ GMPH
|
||||
! SAL GNAC$ NIAK
|
||||
! SAL GNON$ NIUN
|
||||
! SAL GN$ N
|
||||
! SAL GONCAL-^ KUNZA
|
||||
! SAL GS(CH)-- K
|
||||
! SAL GST XT
|
||||
! SAL G(S<>XZ) X
|
||||
! SAL GUCK- KU
|
||||
! SAL GUI-^ K
|
||||
! SAL G K
|
||||
! SAL HEAD- E
|
||||
! SAL HE(LMNRST)-3^ E
|
||||
! SAL HE(LMN)-1 E
|
||||
! SAL HEUR1$ <20>R
|
||||
! SAL H^ _
|
||||
! SAL IEC$ IZ
|
||||
! SAL IEI-3 _
|
||||
! SAL IELL3 IEL
|
||||
! SAL IENNE$ IN
|
||||
! SAL IERRE$ IER
|
||||
! SAL IETTE$ IT
|
||||
! SAL IEU I<>
|
||||
! SAL IE<4 I
|
||||
! SAL IGHT3$ EIT
|
||||
! SAL IGNI(EO)- INI
|
||||
! SAL IGN(AEOU)-$ INI
|
||||
! SAL IJ(AOU)- I
|
||||
! SAL IJ$ I
|
||||
! SAL IJ< EI
|
||||
! SAL IKOLE$ IKUL
|
||||
! SAL ILLAN(STZ)-- ILIA
|
||||
! SAL ILLAR(DT)-- ILIA
|
||||
! SAL INVER- INFE
|
||||
! SAL ITI(A<>O<EFBFBD>U<EFBFBD>)- IZI
|
||||
! SAL IVIER$ IFIE
|
||||
! SAL I I
|
||||
! SAL JAVIE---<^ ZA
|
||||
! SAL JEAN^$ IA
|
||||
! SAL JEAN-^ IA
|
||||
! SAL JER-^ IE
|
||||
! SAL JE(LMNST)- IE
|
||||
! SAL JOR(GK)^$ I<>RK
|
||||
! SAL J I
|
||||
! SAL KC(<28>EIJ)- X
|
||||
! SAL KE(LMNRST)-3^ KE
|
||||
! SAL KH<^ K
|
||||
! SAL KIC$ KIZ
|
||||
! SAL KLE(LMNRST)-3^ KLE
|
||||
! SAL KOTELE-^ KUTL
|
||||
! SAL KREAT-^ KREA
|
||||
! SAL KST XT
|
||||
! SAL K(S<>XZ) X
|
||||
! SAL KTI(AIOU)-3 XI
|
||||
! SAL KT(S<>XZ) X
|
||||
! SAL K K
|
||||
! SAL LARVE- LARF
|
||||
! SAL LEAND-^ LEAN
|
||||
! SAL LEL- LE
|
||||
! SAL LE(MNRST)-3^ LE
|
||||
! SAL LETTE$ LET
|
||||
! SAL LFGNAG- LFKAN
|
||||
! SAL LIC$ LIZ
|
||||
! SAL LIVE^$ LEIF
|
||||
! SAL LUI(GS)-- LU
|
||||
! SAL L L
|
||||
! SAL MASSEU(RS)- NAZ<41>
|
||||
! SAL MAURICE NURIZ
|
||||
! SAL MBH^$ MPH
|
||||
! SAL MB(S<>Z)- N
|
||||
! SAL MC9^ NK
|
||||
! SAL MEMOIR-^ NENUA
|
||||
! SAL ME(LMNRST)-3^ NE
|
||||
! SAL MIGUEL NIKL
|
||||
! SAL MIKE^$ NEIK
|
||||
! SAL MN N
|
||||
! SAL MPJUTE- NPUT
|
||||
! SAL MP(S<>Z)- N
|
||||
! SAL MP(BDJLMNPQRTVW)- NP
|
||||
! SAL M N
|
||||
! SAL NACH^^ NAK
|
||||
! SAL NADINE NATIN
|
||||
! SAL NAIV-- NA
|
||||
! SAL NAISE$ NEZE
|
||||
! SAL NCOISE$ ZUA
|
||||
! SAL NCOIS$ ZUA
|
||||
! SAL NEBEN^^ NEPN
|
||||
! SAL NE(LMNRST)-3^ NE
|
||||
! SAL NEN-3 NE
|
||||
! SAL NETTE$ NET
|
||||
! SAL NG(BDFJLMNPQRTVW)- NK
|
||||
! SAL NICHTS^^ NIX
|
||||
! SAL NICHT^^ NIKT
|
||||
! SAL NINE$ NIN
|
||||
! SAL NON^^ NUN
|
||||
! SAL NOT^^ NUT
|
||||
! SAL NTI(AIOU)-3 NZI
|
||||
! SAL NTIEL--3 NZI
|
||||
! SAL NYLON NEILUN
|
||||
! SAL ND(S<>Z)$ NZ
|
||||
! SAL NT(S<>Z)$ NZ
|
||||
! SAL ND'S$ NZ
|
||||
! SAL NT'S$ NZ
|
||||
! SAL NSTS$ NZ
|
||||
! SAL N N
|
||||
! SAL OBER^^ UPA
|
||||
! SAL OE2 <20>
|
||||
! SAL OGNIE- UNI
|
||||
! SAL OGN(AEOU)-$ UNI
|
||||
! SAL OIE$ <20>
|
||||
! SAL OIR$ UAR
|
||||
! SAL OIX UA
|
||||
! SAL OI<3 EU
|
||||
! SAL OJ(A<>EIO<49>U<EFBFBD>)-- U
|
||||
! SAL OKAY^$ UKE
|
||||
! SAL OLYN$ ULIN
|
||||
! SAL OTI(A<>O<EFBFBD>U<EFBFBD>)- UZI
|
||||
! SAL OUI^ FI
|
||||
! SAL OUILLE$ ULIE
|
||||
! SAL OU(DT)-^ AU
|
||||
! SAL OUSE$ AUZ
|
||||
! SAL OUT- AU
|
||||
! SAL OU U
|
||||
! SAL OWS$ UZ
|
||||
! SAL OY(A<>EIO<49>U<EFBFBD>)-- U
|
||||
! SAL O(JY)< EU
|
||||
! SAL O U
|
||||
! SAL PATIEN--^ PAZI
|
||||
! SAL PENSIO-^ PANZI
|
||||
! SAL PE(LMNRST)-3^ PE
|
||||
! SAL PFER-^ FE
|
||||
! SAL P(FH)< F
|
||||
! SAL POLY^^ PULI
|
||||
! SAL PORTRAIT7 PURTRE
|
||||
! SAL PP(FH)--< P
|
||||
! SAL PP- _
|
||||
! SAL PRIX^$ PRI
|
||||
! SAL P(S<>Z)^ Z
|
||||
! SAL PTI(A<>O<EFBFBD>U<EFBFBD>)-3 PZI
|
||||
! SAL PIC^$ PIK
|
||||
! SAL P P
|
||||
! SAL QUE(LMNRST)-3 KFE
|
||||
! SAL QUE$ K
|
||||
! SAL QUI(NS)$ KI
|
||||
! SAL QU KF
|
||||
! SAL Q< K
|
||||
! SAL RCH RK
|
||||
! SAL RECHERCH^ REZAZ
|
||||
! SAL RER$ RA
|
||||
! SAL RE(MNR)-4 RE
|
||||
! SAL RETTE$ RET
|
||||
! SAL RH<^ R
|
||||
! SAL RJA(MN)-- RI
|
||||
! SAL RTI(A<>O<EFBFBD>U<EFBFBD>)-3 RZI
|
||||
! SAL RY(KN)-$ RI
|
||||
! SAL R R
|
||||
! SAL SAFE^$ ZEIF
|
||||
! SAL SAUCE-^ ZUZ
|
||||
! SAL SCHSCH---7 _
|
||||
! SAL SCHTSCH Z
|
||||
! SAL SC(HZ)< Z
|
||||
! SAL SC ZK
|
||||
! SAL SELBSTST--7^^ ZELP
|
||||
! SAL SELBST7^^ ZELPZT
|
||||
! SAL SERVICE7^ Z<>RFIZ
|
||||
! SAL SE(LMNRST)-3^ ZE
|
||||
! SAL SETTE$ ZET
|
||||
! SAL SHP-^ Z
|
||||
! SAL SHST ZT
|
||||
! SAL SHTSH Z
|
||||
! SAL SHT Z
|
||||
! SAL SH3 Z
|
||||
! SAL SIEGLI-^ ZIKL
|
||||
! SAL SIGLI-^ ZIKL
|
||||
! SAL SIGHT ZEIT
|
||||
! SAL SIGN ZEIN
|
||||
! SAL SKI(NPZ)- ZKI
|
||||
! SAL SKI<^ ZI
|
||||
! SAL SOUND- ZAUN
|
||||
! SAL STAATS^^ ZTAZ
|
||||
! SAL STADT^^ ZTAT
|
||||
! SAL START^^ ZTART
|
||||
! SAL STAURANT7 ZTURAN
|
||||
! SAL STEAK- ZTE
|
||||
! SAL STRAF^^ ZTRAF
|
||||
! SAL ST'S$ Z
|
||||
! SAL STST-- _
|
||||
! SAL STS(ACEHIOU<4F><55><EFBFBD>)-- ZT
|
||||
! SAL ST(SZ) Z
|
||||
! SAL STYN(AE)-$ ZTIN
|
||||
! SAL ST ZT
|
||||
! SAL SZE(NPT)-^ ZE
|
||||
! SAL SZI(ELN)-^ ZI
|
||||
! SAL SZCZ< Z
|
||||
! SAL SZT< ZT
|
||||
! SAL SZ<3 Z
|
||||
! SAL S Z
|
||||
! SAL T'S3$ Z
|
||||
! SAL TCH Z
|
||||
! SAL TEAT-^ TEA
|
||||
! SAL TE(LMNRST)-3^ TE
|
||||
! SAL TH< T
|
||||
! SAL TIC$ TIZ
|
||||
! SAL TOAS-^ TU
|
||||
! SAL TOILET- TULE
|
||||
! SAL TOIN- TUA
|
||||
! SAL TRAINI- TREN
|
||||
! SAL TSCH Z
|
||||
! SAL TSH Z
|
||||
! SAL TST ZT
|
||||
! SAL T(S<>) Z
|
||||
! SAL TT(SZ)--< _
|
||||
! SAL TT9 T
|
||||
! SAL TZ- _
|
||||
! SAL T T
|
||||
! SAL UEBER^^ IPA
|
||||
! SAL UE2 I
|
||||
! SAL UIE$ I
|
||||
! SAL UM^^ UN
|
||||
! SAL UNTERE-- UNTE
|
||||
! SAL UNTER^^ UNTA
|
||||
! SAL UNVER^^ UNFA
|
||||
! SAL UN^^ UN
|
||||
! SAL UTI(A<>O<EFBFBD>U<EFBFBD>)- UZI
|
||||
! SAL U U
|
||||
! SAL VACL-^ FAZ
|
||||
! SAL VAC$ FAZ
|
||||
! SAL VEDD-^ FE
|
||||
! SAL VEREIN FAEIN
|
||||
! SAL VERSEN^ FAZN
|
||||
! SAL VER^^ FA
|
||||
! SAL VER FA
|
||||
! SAL VET(HT)-^ FET
|
||||
! SAL VETTE$ FET
|
||||
! SAL VIC$ FIZ
|
||||
! SAL VIEL FIL
|
||||
! SAL VIEW FIU
|
||||
! SAL VOR^^ FUR
|
||||
! SAL VY9^ FI
|
||||
! SAL V< F
|
||||
! SAL WE(LMNRST)-3^ FE
|
||||
! SAL WIC$ FIZ
|
||||
! SAL WIEDER^^ FITA
|
||||
! SAL WY9^ FI
|
||||
! SAL W F
|
||||
! SAL XE(LMNRST)-3^ XE
|
||||
! SAL X<^ Z
|
||||
! SAL X(CSZ) X
|
||||
! SAL XTS(CH)-- XT
|
||||
! SAL XT(SZ) Z
|
||||
! SAL X X
|
||||
! SAL YE(LMNRST)-3^ IE
|
||||
! SAL YE-3 I
|
||||
! SAL YOR(GK)^$ I<>RK
|
||||
! SAL Y(AOU)-<7 I
|
||||
! SAL YVES^$ IF
|
||||
! SAL YVONNE^$ IFUN
|
||||
! SAL Y I
|
||||
! SAL ZC(AOU)- ZK
|
||||
! SAL ZE(LMNRST)-3^ ZE
|
||||
! SAL ZH< Z
|
||||
! SAL ZS(CHT)-- _
|
||||
! SAL ZS Z
|
||||
! SAL ZUERST ZUERZT
|
||||
! SAL ZUR<55>CK^^ ZURIK
|
||||
! SAL ZUVER^^ ZUFA # x
|
||||
! SAL Z Z
|
||||
@@ -1,580 +0,0 @@
|
||||
*** de_DE.orig.aff 2019-01-19 18:45:26.132522538 +0100
|
||||
--- de_DE.aff 2019-01-19 19:23:37.233297530 +0100
|
||||
***************
|
||||
*** 15,16 ****
|
||||
--- 15,46 ----
|
||||
|
||||
+ FOL <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||
+ LOW <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||
+ UPP <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||
+
|
||||
+ MIDWORD '
|
||||
+
|
||||
+ MAP 9
|
||||
+ MAP a<><61><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||
+ MAP e<><65><EFBFBD><EFBFBD>
|
||||
+ MAP i<><69><EFBFBD><EFBFBD>
|
||||
+ MAP o<><6F><EFBFBD><EFBFBD><EFBFBD>
|
||||
+ MAP u<><75><EFBFBD><EFBFBD>
|
||||
+ MAP n<>
|
||||
+ MAP c<>
|
||||
+ MAP y<><79>
|
||||
+ MAP s<>
|
||||
+
|
||||
+ COMPOUNDRULE xy?z
|
||||
+ #COMPOUNDBEGIN x
|
||||
+ #COMPOUNDMIDDLE y
|
||||
+ #COMPOUNDEND z
|
||||
+
|
||||
+ # Prefixes are allowed at the beginning of compounds,
|
||||
+ # suffixes are allowed at the end of compounds by default:
|
||||
+ # (prefix)?(root)+(affix)?
|
||||
+ # Affixes with COMPOUNDPERMITFLAG may be inside of compounds.
|
||||
+ COMPOUNDPERMITFLAG c
|
||||
+
|
||||
+ ONLYINCOMPOUND o
|
||||
+
|
||||
PFX U Y 1
|
||||
***************
|
||||
*** 536,553 ****
|
||||
#LANG de_DE
|
||||
! CHECKSHARPS
|
||||
!
|
||||
|
||||
- COMPOUNDBEGIN x
|
||||
- COMPOUNDMIDDLE y
|
||||
- COMPOUNDEND z
|
||||
FORBIDDENWORD d
|
||||
|
||||
- # Prefixes are allowed at the beginning of compounds,
|
||||
- # suffixes are allowed at the end of compounds by default:
|
||||
- # (prefix)?(root)+(affix)?
|
||||
- # Affixes with COMPOUNDPERMITFLAG may be inside of compounds.
|
||||
- COMPOUNDPERMITFLAG c
|
||||
-
|
||||
- ONLYINCOMPOUND o
|
||||
-
|
||||
# my PSEUDOROOT h(elper) flag
|
||||
--- 566,571 ----
|
||||
#LANG de_DE
|
||||
! # CHECKSHARPS
|
||||
|
||||
FORBIDDENWORD d
|
||||
|
||||
# my PSEUDOROOT h(elper) flag
|
||||
***************
|
||||
*** 571,573 ****
|
||||
|
||||
! WORDCHARS <20>-.
|
||||
|
||||
--- 589,591 ----
|
||||
|
||||
! # WORDCHARS <20>-.
|
||||
|
||||
***************
|
||||
*** 725,729 ****
|
||||
# So enabling this is the lesser evil. No perfect solution found so far...
|
||||
! BREAK 2
|
||||
! BREAK -
|
||||
! BREAK .
|
||||
!
|
||||
--- 743,1241 ----
|
||||
# So enabling this is the lesser evil. No perfect solution found so far...
|
||||
! # BREAK 2
|
||||
! # BREAK -
|
||||
! # BREAK .
|
||||
!
|
||||
! # German phonetic transformation rules for use with Aspell
|
||||
! # Copyright (C) 2000 Bj<42>rn Jacke
|
||||
! #
|
||||
! # This library is free software; you can redistribute it and/or
|
||||
! # modify it under the terms of the GNU Lesser General Public
|
||||
! # License version 2.1 as published by the Free Software Foundation;
|
||||
! #
|
||||
! # This library is distributed in the hope that it will be useful,
|
||||
! # but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
! # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
||||
! # Lesser General Public License for more details.
|
||||
! #
|
||||
! # You should have received a copy of the GNU Lesser General Public
|
||||
! # License along with this library; if not, write to the Free Software
|
||||
! # Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
|
||||
! #
|
||||
! # Bj<42>rn Jacke may be reached by email at bjoern.jacke@gmx.de
|
||||
! #
|
||||
! # Changelog:
|
||||
! #
|
||||
! # 2000-01-05 Bj<42>rn Jacke <bjoern.jacke@gmx.de>
|
||||
! # Initial Release
|
||||
! # 2000-01-07 Kevin Atkinson <kevinatk@home.com>
|
||||
! # Converted from header to data file.
|
||||
! SAL followup 1
|
||||
! SAL collapse_result 1
|
||||
!
|
||||
! SAL <20>ER- E
|
||||
! SAL <20>U< EU
|
||||
! SAL <20>< E
|
||||
! SAL <20> E
|
||||
! SAL <20>ER- <20>
|
||||
! SAL <20> <20>
|
||||
! SAL <20>BER^^ IPA
|
||||
! SAL <20>ER- I
|
||||
! SAL <20> I
|
||||
! SAL <20> Z
|
||||
! SAL ABELLE$ APL
|
||||
! SAL ABELL$ APL
|
||||
! SAL ABIENNE$ APIN
|
||||
! SAL ACEY$ AZI
|
||||
! SAL AEU< EU
|
||||
! SAL AE2 E
|
||||
! SAL AGNI-^ AKN
|
||||
! SAL AGNIE- ANI
|
||||
! SAL AGN(AEOU)-$ ANI
|
||||
! SAL AIA2 AIA
|
||||
! SAL AIE$ E
|
||||
! SAL AILL(EOU)- ALI
|
||||
! SAL AINE$ EN
|
||||
! SAL AIRE$ ER
|
||||
! SAL AIR- E
|
||||
! SAL AISE$ EZ
|
||||
! SAL AISSANCE$ EZANZ
|
||||
! SAL AISSE$ EZ
|
||||
! SAL AIX$ EX
|
||||
! SAL AJ(A<>EIO<49>U<EFBFBD>)-- A
|
||||
! SAL AKTIE AXIE
|
||||
! SAL ALO(IY)^ ALUI
|
||||
! SAL AMATEU(RS)- ANAT<41>
|
||||
! SAL ANIELLE$ ANIL
|
||||
! SAL ANTI^^ ANTI
|
||||
! SAL ANVER^^ ANFA
|
||||
! SAL ATIA$ ATIA
|
||||
! SAL ATIA(NS)-- ATI
|
||||
! SAL ATI(A<>O<EFBFBD>U<EFBFBD>)- AZI
|
||||
! SAL AUAU-- _
|
||||
! SAL AUER< AUA
|
||||
! SAL AUF^^ AUF
|
||||
! SAL AULT$ U
|
||||
! SAL AUSSE$ UZ
|
||||
! SAL AUS(ST)-^ AUZ
|
||||
! SAL AUS^^ AUZ
|
||||
! SAL AUTO^^ AUTU
|
||||
! SAL AUX(IY)- AUX
|
||||
! SAL AUX U
|
||||
! SAL AU AU
|
||||
! SAL AVIER$ AFIE
|
||||
! SAL AYER--< EI
|
||||
! SAL AY(A<>EIO<49>U<EFBFBD>)-- A
|
||||
! SAL A(IJY)< EI
|
||||
! SAL A A
|
||||
! SAL BEA(BCMNRU)-^ PEA
|
||||
! SAL BEAT(AEIMORU)-^ PEAT
|
||||
! SAL BEIGE^$ PEZ
|
||||
! SAL BE(LMNRST)-^ PE
|
||||
! SAL BETTE$ PET
|
||||
! SAL BIC$ PIZ
|
||||
! SAL BOWL(EI)- PUL
|
||||
! SAL BP(A<>EIO<49>RU<52>Y)- P
|
||||
! SAL BUDGET7 PIKE
|
||||
! SAL BUFFET7 PIFE
|
||||
! SAL BYLLE$ PILE
|
||||
! SAL BYLL$ PIL
|
||||
! SAL BYTE< PEIT
|
||||
! SAL B P
|
||||
! SAL C<>- Z
|
||||
! SAL C<>$ ZI
|
||||
! SAL CACH(EI)-^ KEZ
|
||||
! SAL CAE-- Z
|
||||
! SAL CA(IY)$ ZEI
|
||||
! SAL CCH Z
|
||||
! SAL CCE- X
|
||||
! SAL CE(EIJUY)-- Z
|
||||
! SAL CENT< ZENT
|
||||
! SAL CERST(EI)----^ KE
|
||||
! SAL CER$ ZA
|
||||
! SAL CE3 ZE
|
||||
! SAL CHAO(ST)- KAU
|
||||
! SAL CHAMPIO-^ ZENPI
|
||||
! SAL CHAR(AI)-^ KAR
|
||||
! SAL CHAU(CDFSVWXZ)- ZU
|
||||
! SAL CHE(CF)- ZE
|
||||
! SAL CHEM-^ KE
|
||||
! SAL CHEQUE< ZEK
|
||||
! SAL CHI(CFGPVW)- ZI
|
||||
! SAL CH(AEUY)-<^ Z
|
||||
! SAL CHK- _
|
||||
! SAL CH(LOR)-<^ K
|
||||
! SAL CHST- X
|
||||
! SAL CH(S<>XZ)3 X
|
||||
! SAL CH K
|
||||
! SAL CIER$ ZIE
|
||||
! SAL CYB-^ ZEI
|
||||
! SAL CY9^ ZI
|
||||
! SAL C(IJY)-3 Z
|
||||
! SAL CKST XT
|
||||
! SAL CK(S<>XZ)3 X
|
||||
! SAL C(CK)- _
|
||||
! SAL CLAUDET--- KLU
|
||||
! SAL CLAUDINE^$ KLUTIN
|
||||
! SAL COLE$ KUL
|
||||
! SAL COUCH KAUZ
|
||||
! SAL CQUES$ K
|
||||
! SAL CQUE K
|
||||
! SAL CREAT-^ KREA
|
||||
! SAL CST XT
|
||||
! SAL CS<^ Z
|
||||
! SAL C(S<>X) X
|
||||
! SAL CT(S<>XZ) X
|
||||
! SAL CZ< Z
|
||||
! SAL C< K
|
||||
! SAL D'H^ T
|
||||
! SAL D'S3$ Z
|
||||
! SAL DAVO(NR)-^$ TAFU
|
||||
! SAL DD(SZ)--< _
|
||||
! SAL DEPOT7 TEPU
|
||||
! SAL DESIGN TIZEIN
|
||||
! SAL DE(LMNRST)-3^ TE
|
||||
! SAL DETTE$ TET
|
||||
! SAL DIC$ TIZ
|
||||
! SAL DJ(AEIOU)-^ I
|
||||
! SAL DS(CH)--< T
|
||||
! SAL DST ZT
|
||||
! SAL DT- _
|
||||
! SAL DUIS-^ TI
|
||||
! SAL DURCH^^ TURK
|
||||
! SAL DZS(CH)-- T
|
||||
! SAL D(S<>Z) Z
|
||||
! SAL D T
|
||||
! SAL EAULT$ U
|
||||
! SAL EAUX$ U
|
||||
! SAL EAU U
|
||||
! SAL EAV IF
|
||||
! SAL EA(A<>EIO<49><4F>Y)-3 EA
|
||||
! SAL EA3$ EA
|
||||
! SAL EA3 I
|
||||
! SAL EBEN^^ EPN
|
||||
! SAL EE9 E
|
||||
! SAL EIEI-- _
|
||||
! SAL EIH-- E
|
||||
! SAL EILLE$ EI
|
||||
! SAL EI EI
|
||||
! SAL EJ$ EI
|
||||
! SAL EL-^ E
|
||||
! SAL EL(DKL)--1 E
|
||||
! SAL EL(MNT)--1$ E
|
||||
! SAL ELYNE$ ELINE
|
||||
! SAL ELYN$ ELIN
|
||||
! SAL EL(A<>EIO<49>U<EFBFBD>Y)-1 EL
|
||||
! SAL EL-1 L
|
||||
! SAL EM-^ E
|
||||
! SAL EM(DFKMPQT)--1 E
|
||||
! SAL EM(A<>EIO<49>U<EFBFBD>Y)--1 E
|
||||
! SAL EM-1 N
|
||||
! SAL EN-^ E
|
||||
! SAL EN(CDGKQT)--1 E
|
||||
! SAL ENZ(AEIOUY)--1 EN
|
||||
! SAL EN(A<>EINO<4E>U<EFBFBD>Y)-1 EN
|
||||
! SAL EN-<1 N
|
||||
! SAL ERH(A<>EIO<49>U<EFBFBD>)-^ ER
|
||||
! SAL ER-^ E
|
||||
! SAL ER(A<>EIO<49>U<EFBFBD>Y)-1 A
|
||||
! SAL ER1$ A
|
||||
! SAL ER<1 A
|
||||
! SAL ETI(A<>O<EFBFBD><4F>U)- EZI
|
||||
! SAL EUEU-- _
|
||||
! SAL EUILLE$ <20>
|
||||
! SAL EUR$ <20>R
|
||||
! SAL EUX <20>
|
||||
! SAL EUYS$ EUZ
|
||||
! SAL EU EU
|
||||
! SAL EYER< EIA
|
||||
! SAL EY< EI
|
||||
! SAL E E
|
||||
! SAL FANS--^$ FE
|
||||
! SAL FAN-^$ FE
|
||||
! SAL FAULT- FUL
|
||||
! SAL FEE(DL)- FI
|
||||
! SAL FEHLER FELA
|
||||
! SAL FE(LMNRST)-3^ FE
|
||||
! SAL FOND7 FUN
|
||||
! SAL FRAIN$ FRA
|
||||
! SAL FRISEU(RS)- FRIZ<49> # x
|
||||
! SAL F F
|
||||
! SAL G'S$ X
|
||||
! SAL GAGS^$ KEX
|
||||
! SAL GAG^$ KEK
|
||||
! SAL GD KT
|
||||
! SAL GEGEN^^ KEKN
|
||||
! SAL GE(LMNRST)-3^ KE
|
||||
! SAL GETTE$ KET
|
||||
! SAL G(CK)- _
|
||||
! SAL GG- _
|
||||
! SAL GI(AO)-^ I
|
||||
! SAL GION$ KIUN
|
||||
! SAL GIUS-^ IU
|
||||
! SAL GMBH^$ GMPH
|
||||
! SAL GNAC$ NIAK
|
||||
! SAL GNON$ NIUN
|
||||
! SAL GN$ N
|
||||
! SAL GONCAL-^ KUNZA
|
||||
! SAL GS(CH)-- K
|
||||
! SAL GST XT
|
||||
! SAL G(S<>XZ) X
|
||||
! SAL GUCK- KU
|
||||
! SAL GUI-^ K
|
||||
! SAL G K
|
||||
! SAL HEAD- E
|
||||
! SAL HE(LMNRST)-3^ E
|
||||
! SAL HE(LMN)-1 E
|
||||
! SAL HEUR1$ <20>R
|
||||
! SAL H^ _
|
||||
! SAL IEC$ IZ
|
||||
! SAL IEI-3 _
|
||||
! SAL IELL3 IEL
|
||||
! SAL IENNE$ IN
|
||||
! SAL IERRE$ IER
|
||||
! SAL IETTE$ IT
|
||||
! SAL IEU I<>
|
||||
! SAL IE<4 I
|
||||
! SAL IGHT3$ EIT
|
||||
! SAL IGNI(EO)- INI
|
||||
! SAL IGN(AEOU)-$ INI
|
||||
! SAL IJ(AOU)- I
|
||||
! SAL IJ$ I
|
||||
! SAL IJ< EI
|
||||
! SAL IKOLE$ IKUL
|
||||
! SAL ILLAN(STZ)-- ILIA
|
||||
! SAL ILLAR(DT)-- ILIA
|
||||
! SAL INVER- INFE
|
||||
! SAL ITI(A<>O<EFBFBD>U<EFBFBD>)- IZI
|
||||
! SAL IVIER$ IFIE
|
||||
! SAL I I
|
||||
! SAL JAVIE---<^ ZA
|
||||
! SAL JEAN^$ IA
|
||||
! SAL JEAN-^ IA
|
||||
! SAL JER-^ IE
|
||||
! SAL JE(LMNST)- IE
|
||||
! SAL JOR(GK)^$ I<>RK
|
||||
! SAL J I
|
||||
! SAL KC(<28>EIJ)- X
|
||||
! SAL KE(LMNRST)-3^ KE
|
||||
! SAL KH<^ K
|
||||
! SAL KIC$ KIZ
|
||||
! SAL KLE(LMNRST)-3^ KLE
|
||||
! SAL KOTELE-^ KUTL
|
||||
! SAL KREAT-^ KREA
|
||||
! SAL KST XT
|
||||
! SAL K(S<>XZ) X
|
||||
! SAL KTI(AIOU)-3 XI
|
||||
! SAL KT(S<>XZ) X
|
||||
! SAL K K
|
||||
! SAL LARVE- LARF
|
||||
! SAL LEAND-^ LEAN
|
||||
! SAL LEL- LE
|
||||
! SAL LE(MNRST)-3^ LE
|
||||
! SAL LETTE$ LET
|
||||
! SAL LFGNAG- LFKAN
|
||||
! SAL LIC$ LIZ
|
||||
! SAL LIVE^$ LEIF
|
||||
! SAL LUI(GS)-- LU
|
||||
! SAL L L
|
||||
! SAL MASSEU(RS)- NAZ<41>
|
||||
! SAL MAURICE NURIZ
|
||||
! SAL MBH^$ MPH
|
||||
! SAL MB(S<>Z)- N
|
||||
! SAL MC9^ NK
|
||||
! SAL MEMOIR-^ NENUA
|
||||
! SAL ME(LMNRST)-3^ NE
|
||||
! SAL MIGUEL NIKL
|
||||
! SAL MIKE^$ NEIK
|
||||
! SAL MN N
|
||||
! SAL MPJUTE- NPUT
|
||||
! SAL MP(S<>Z)- N
|
||||
! SAL MP(BDJLMNPQRTVW)- NP
|
||||
! SAL M N
|
||||
! SAL NACH^^ NAK
|
||||
! SAL NADINE NATIN
|
||||
! SAL NAIV-- NA
|
||||
! SAL NAISE$ NEZE
|
||||
! SAL NCOISE$ ZUA
|
||||
! SAL NCOIS$ ZUA
|
||||
! SAL NEBEN^^ NEPN
|
||||
! SAL NE(LMNRST)-3^ NE
|
||||
! SAL NEN-3 NE
|
||||
! SAL NETTE$ NET
|
||||
! SAL NG(BDFJLMNPQRTVW)- NK
|
||||
! SAL NICHTS^^ NIX
|
||||
! SAL NICHT^^ NIKT
|
||||
! SAL NINE$ NIN
|
||||
! SAL NON^^ NUN
|
||||
! SAL NOT^^ NUT
|
||||
! SAL NTI(AIOU)-3 NZI
|
||||
! SAL NTIEL--3 NZI
|
||||
! SAL NYLON NEILUN
|
||||
! SAL ND(S<>Z)$ NZ
|
||||
! SAL NT(S<>Z)$ NZ
|
||||
! SAL ND'S$ NZ
|
||||
! SAL NT'S$ NZ
|
||||
! SAL NSTS$ NZ
|
||||
! SAL N N
|
||||
! SAL OBER^^ UPA
|
||||
! SAL OE2 <20>
|
||||
! SAL OGNIE- UNI
|
||||
! SAL OGN(AEOU)-$ UNI
|
||||
! SAL OIE$ <20>
|
||||
! SAL OIR$ UAR
|
||||
! SAL OIX UA
|
||||
! SAL OI<3 EU
|
||||
! SAL OJ(A<>EIO<49>U<EFBFBD>)-- U
|
||||
! SAL OKAY^$ UKE
|
||||
! SAL OLYN$ ULIN
|
||||
! SAL OTI(A<>O<EFBFBD>U<EFBFBD>)- UZI
|
||||
! SAL OUI^ FI
|
||||
! SAL OUILLE$ ULIE
|
||||
! SAL OU(DT)-^ AU
|
||||
! SAL OUSE$ AUZ
|
||||
! SAL OUT- AU
|
||||
! SAL OU U
|
||||
! SAL OWS$ UZ
|
||||
! SAL OY(A<>EIO<49>U<EFBFBD>)-- U
|
||||
! SAL O(JY)< EU
|
||||
! SAL O U
|
||||
! SAL PATIEN--^ PAZI
|
||||
! SAL PENSIO-^ PANZI
|
||||
! SAL PE(LMNRST)-3^ PE
|
||||
! SAL PFER-^ FE
|
||||
! SAL P(FH)< F
|
||||
! SAL POLY^^ PULI
|
||||
! SAL PORTRAIT7 PURTRE
|
||||
! SAL PP(FH)--< P
|
||||
! SAL PP- _
|
||||
! SAL PRIX^$ PRI
|
||||
! SAL P(S<>Z)^ Z
|
||||
! SAL PTI(A<>O<EFBFBD>U<EFBFBD>)-3 PZI
|
||||
! SAL PIC^$ PIK
|
||||
! SAL P P
|
||||
! SAL QUE(LMNRST)-3 KFE
|
||||
! SAL QUE$ K
|
||||
! SAL QUI(NS)$ KI
|
||||
! SAL QU KF
|
||||
! SAL Q< K
|
||||
! SAL RCH RK
|
||||
! SAL RECHERCH^ REZAZ
|
||||
! SAL RER$ RA
|
||||
! SAL RE(MNR)-4 RE
|
||||
! SAL RETTE$ RET
|
||||
! SAL RH<^ R
|
||||
! SAL RJA(MN)-- RI
|
||||
! SAL RTI(A<>O<EFBFBD>U<EFBFBD>)-3 RZI
|
||||
! SAL RY(KN)-$ RI
|
||||
! SAL R R
|
||||
! SAL SAFE^$ ZEIF
|
||||
! SAL SAUCE-^ ZUZ
|
||||
! SAL SCHSCH---7 _
|
||||
! SAL SCHTSCH Z
|
||||
! SAL SC(HZ)< Z
|
||||
! SAL SC ZK
|
||||
! SAL SELBSTST--7^^ ZELP
|
||||
! SAL SELBST7^^ ZELPZT
|
||||
! SAL SERVICE7^ Z<>RFIZ
|
||||
! SAL SE(LMNRST)-3^ ZE
|
||||
! SAL SETTE$ ZET
|
||||
! SAL SHP-^ Z
|
||||
! SAL SHST ZT
|
||||
! SAL SHTSH Z
|
||||
! SAL SHT Z
|
||||
! SAL SH3 Z
|
||||
! SAL SIEGLI-^ ZIKL
|
||||
! SAL SIGLI-^ ZIKL
|
||||
! SAL SIGHT ZEIT
|
||||
! SAL SIGN ZEIN
|
||||
! SAL SKI(NPZ)- ZKI
|
||||
! SAL SKI<^ ZI
|
||||
! SAL SOUND- ZAUN
|
||||
! SAL STAATS^^ ZTAZ
|
||||
! SAL STADT^^ ZTAT
|
||||
! SAL START^^ ZTART
|
||||
! SAL STAURANT7 ZTURAN
|
||||
! SAL STEAK- ZTE
|
||||
! SAL STRAF^^ ZTRAF
|
||||
! SAL ST'S$ Z
|
||||
! SAL STST-- _
|
||||
! SAL STS(ACEHIOU<4F><55><EFBFBD>)-- ZT
|
||||
! SAL ST(SZ) Z
|
||||
! SAL STYN(AE)-$ ZTIN
|
||||
! SAL ST ZT
|
||||
! SAL SZE(NPT)-^ ZE
|
||||
! SAL SZI(ELN)-^ ZI
|
||||
! SAL SZCZ< Z
|
||||
! SAL SZT< ZT
|
||||
! SAL SZ<3 Z
|
||||
! SAL S Z
|
||||
! SAL T'S3$ Z
|
||||
! SAL TCH Z
|
||||
! SAL TEAT-^ TEA
|
||||
! SAL TE(LMNRST)-3^ TE
|
||||
! SAL TH< T
|
||||
! SAL TIC$ TIZ
|
||||
! SAL TOAS-^ TU
|
||||
! SAL TOILET- TULE
|
||||
! SAL TOIN- TUA
|
||||
! SAL TRAINI- TREN
|
||||
! SAL TSCH Z
|
||||
! SAL TSH Z
|
||||
! SAL TST ZT
|
||||
! SAL T(S<>) Z
|
||||
! SAL TT(SZ)--< _
|
||||
! SAL TT9 T
|
||||
! SAL TZ- _
|
||||
! SAL T T
|
||||
! SAL UEBER^^ IPA
|
||||
! SAL UE2 I
|
||||
! SAL UIE$ I
|
||||
! SAL UM^^ UN
|
||||
! SAL UNTERE-- UNTE
|
||||
! SAL UNTER^^ UNTA
|
||||
! SAL UNVER^^ UNFA
|
||||
! SAL UN^^ UN
|
||||
! SAL UTI(A<>O<EFBFBD>U<EFBFBD>)- UZI
|
||||
! SAL U U
|
||||
! SAL VACL-^ FAZ
|
||||
! SAL VAC$ FAZ
|
||||
! SAL VEDD-^ FE
|
||||
! SAL VEREIN FAEIN
|
||||
! SAL VERSEN^ FAZN
|
||||
! SAL VER^^ FA
|
||||
! SAL VER FA
|
||||
! SAL VET(HT)-^ FET
|
||||
! SAL VETTE$ FET
|
||||
! SAL VIC$ FIZ
|
||||
! SAL VIEL FIL
|
||||
! SAL VIEW FIU
|
||||
! SAL VOR^^ FUR
|
||||
! SAL VY9^ FI
|
||||
! SAL V< F
|
||||
! SAL WE(LMNRST)-3^ FE
|
||||
! SAL WIC$ FIZ
|
||||
! SAL WIEDER^^ FITA
|
||||
! SAL WY9^ FI
|
||||
! SAL W F
|
||||
! SAL XE(LMNRST)-3^ XE
|
||||
! SAL X<^ Z
|
||||
! SAL X(CSZ) X
|
||||
! SAL XTS(CH)-- XT
|
||||
! SAL XT(SZ) Z
|
||||
! SAL X X
|
||||
! SAL YE(LMNRST)-3^ IE
|
||||
! SAL YE-3 I
|
||||
! SAL YOR(GK)^$ I<>RK
|
||||
! SAL Y(AOU)-<7 I
|
||||
! SAL YVES^$ IF
|
||||
! SAL YVONNE^$ IFUN
|
||||
! SAL Y I
|
||||
! SAL ZC(AOU)- ZK
|
||||
! SAL ZE(LMNRST)-3^ ZE
|
||||
! SAL ZH< Z
|
||||
! SAL ZS(CHT)-- _
|
||||
! SAL ZS Z
|
||||
! SAL ZUERST ZUERZT
|
||||
! SAL ZUR<55>CK^^ ZURIK
|
||||
! SAL ZUVER^^ ZUFA # x
|
||||
! SAL Z Z
|
||||
@@ -35,7 +35,11 @@ FILE_CH_DIC = de_CH_frami.dic
|
||||
ZIPFILE_19 = de_OLDSPELL.zip # unmaintained
|
||||
DICT_FILES = $FILE_20_AFF $FILE_20_DIC $FILE_AT_AFF $FILE_AT_DIC $FILE_CH_AFF $FILE_CH_DIC
|
||||
|
||||
READMES = README_de_DE_frami.txt README_extension_owner.txt
|
||||
# frami files adjusted for Vim are found here
|
||||
YAMAGIDIR = https://raw.githubusercontent.com/Yamagi/vim-german-dictionaries/master
|
||||
|
||||
READMES = README.md
|
||||
:attr {fetch = $YAMAGIDIR/%file%} $READMES
|
||||
|
||||
all: $SPELLDIR/de.latin1.spl $SPELLDIR/de.utf-8.spl ../README_de.txt
|
||||
|
||||
@@ -49,36 +53,22 @@ $SPELLDIR/de.utf-8.spl : $FILES
|
||||
|
||||
../README_de.txt: $READMES
|
||||
:fetch $READMES
|
||||
:print de_DE_frami.txt >! $target
|
||||
:cat README_de_DE_frami.txt >> $target
|
||||
:print =================================================== >>$target
|
||||
:print extension_owner >> $target
|
||||
:cat README_extension_owner.txt >> $target
|
||||
:print README.md >! $target
|
||||
:cat README.md >> $target
|
||||
|
||||
#
|
||||
# Fetching the files from the LibreOffices github repository.
|
||||
# The OLDSPELL file comes from elsewhere
|
||||
#
|
||||
OODIR = https://github.com/LibreOffice/dictionaries/raw/master/de
|
||||
DEDIR = http://www.j3e.de/myspell
|
||||
:attr {fetch = $OODIR/%file%} $DICT_FILES
|
||||
:attr {fetch = $OODIR/%file%} $READMES
|
||||
:attr {fetch = $YAMAGIDIR/src/%file%} $DICT_FILES
|
||||
:attr {fetch = $DEDIR/%file%} $ZIPFILE_19
|
||||
|
||||
# The files don't depend on the .zip file so that we can delete it.
|
||||
# Only download the zip file if the targets don't exist.
|
||||
de_DE.aff de_DE.dic de_20.aff de_20.dic: {buildcheck=}
|
||||
:assertpkg patch
|
||||
:fetch $FILE_DE_AFF
|
||||
:fetch $FILE_DE_DIC
|
||||
:move de_DE_frami.aff de_DE.aff
|
||||
:move de_DE_frami.dic de_DE.dic
|
||||
@if not os.path.exists('de_DE.orig.aff'):
|
||||
:copy de_DE.aff de_DE.orig.aff
|
||||
@if not os.path.exists('de_DE.orig.dic'):
|
||||
:copy de_DE.dic de_DE.orig.dic
|
||||
@if os.path.exists('de_DE.diff'):
|
||||
:sys patch <de_DE.diff
|
||||
:copy de_DE.aff de_20.aff
|
||||
:copy de_DE.dic de_20.dic
|
||||
|
||||
@@ -97,80 +87,16 @@ de_19.aff de_19.dic: {buildcheck=}
|
||||
:sys patch <de_19.diff
|
||||
|
||||
de_AT.aff de_AT.dic: {buildcheck=}
|
||||
:assertpkg patch
|
||||
:fetch $FILE_AT_AFF
|
||||
:fetch $FILE_AT_DIC
|
||||
:move $FILE_AT_AFF de_AT.aff
|
||||
:move $FILE_AT_DIC de_AT.dic
|
||||
@if not os.path.exists('de_AT.orig.aff'):
|
||||
:copy de_AT.aff de_AT.orig.aff
|
||||
@if not os.path.exists('de_AT.orig.dic'):
|
||||
:copy de_AT.dic de_AT.orig.dic
|
||||
@if os.path.exists('de_AT.diff'):
|
||||
:sys patch <de_AT.diff
|
||||
|
||||
de_CH.aff de_CH.dic: {buildcheck=}
|
||||
:assertpkg patch
|
||||
:fetch $FILE_CH_AFF
|
||||
:fetch $FILE_CH_DIC
|
||||
:move $FILE_CH_AFF de_CH.aff
|
||||
:move $FILE_CH_DIC de_CH.dic
|
||||
@if not os.path.exists('de_CH.orig.aff'):
|
||||
:copy de_CH.aff de_CH.orig.aff
|
||||
@if not os.path.exists('de_CH.orig.dic'):
|
||||
:copy de_CH.dic de_CH.orig.dic
|
||||
@if os.path.exists('de_CH.diff'):
|
||||
:sys patch <de_CH.diff
|
||||
|
||||
|
||||
# Generate diff files, so that others can get the OpenOffice files and apply
|
||||
# the diffs to get the Vim versions.
|
||||
diff:
|
||||
:assertpkg diff
|
||||
:sys {force} diff -a -C 1 de_DE.orig.aff de_DE.aff >de_DE.diff
|
||||
:sys {force} diff -a -C 1 de_DE.orig.dic de_DE.dic >>de_DE.diff
|
||||
:sys {force} diff -a -C 1 de_19.orig.aff de_19.aff >de_19.diff
|
||||
:sys {force} diff -a -C 1 de_19.orig.dic de_19.dic >>de_19.diff
|
||||
:sys {force} diff -a -C 1 de_AT.orig.aff de_AT.aff >de_AT.diff
|
||||
:sys {force} diff -a -C 1 de_AT.orig.dic de_AT.dic >>de_AT.diff
|
||||
:sys {force} diff -a -C 1 de_CH.orig.aff de_CH.aff >de_CH.diff
|
||||
:sys {force} diff -a -C 1 de_CH.orig.dic de_CH.dic >>de_CH.diff
|
||||
:copy de_DE.diff de_20.diff
|
||||
|
||||
|
||||
# Check for updated OpenOffice spell files. When there are changes the
|
||||
# ".new.aff" and ".new.dic" files are left behind for manual inspection.
|
||||
|
||||
check:
|
||||
:assertpkg unzip patch
|
||||
:fetch $ZIPFILE_19
|
||||
:fetch $DICT_FILES
|
||||
@try:
|
||||
:mkdir tmp
|
||||
:cd tmp
|
||||
:sys $UNZIP ../$ZIPFILE_19
|
||||
:copy ../*.aff .
|
||||
:copy ../*.dic .
|
||||
:move de_OLDSPELL.aff de_19.aff
|
||||
:move de_OLDSPELL.dic de_19.dic
|
||||
:move de_DE_frami.aff de_DE.aff
|
||||
:move de_DE_frami.dic de_DE.dic
|
||||
:move de_AT_frami.dic de_AT.dic
|
||||
:move de_AT_frami.aff de_AT.aff
|
||||
:move de_CH_frami.dic de_CH.dic
|
||||
:move de_CH_frami.aff de_CH.aff
|
||||
:copy de_DE.dic de_20.dic
|
||||
:copy de_DE.aff de_20.aff
|
||||
|
||||
@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
|
||||
@finally:
|
||||
:cd ..
|
||||
:delete {r}{f}{q} tmp
|
||||
|
||||
# vim: set sts=4 sw=4 :
|
||||
|
||||
@@ -252,48 +252,49 @@ an 50.50.220 &Syntax.HIJK.HTML.HTML\ with\ M4 :cal SetSyn("htmlm4")<CR>
|
||||
an 50.50.230 &Syntax.HIJK.HTML.HTML\ with\ Ruby\ (eRuby) :cal SetSyn("eruby")<CR>
|
||||
an 50.50.240 &Syntax.HIJK.HTML.Cheetah\ HTML\ template :cal SetSyn("htmlcheetah")<CR>
|
||||
an 50.50.250 &Syntax.HIJK.HTML.Django\ HTML\ template :cal SetSyn("htmldjango")<CR>
|
||||
an 50.50.260 &Syntax.HIJK.HTML.HTML/OS :cal SetSyn("htmlos")<CR>
|
||||
an 50.50.270 &Syntax.HIJK.HTML.XHTML :cal SetSyn("xhtml")<CR>
|
||||
an 50.50.280 &Syntax.HIJK.Host\.conf :cal SetSyn("hostconf")<CR>
|
||||
an 50.50.290 &Syntax.HIJK.Hosts\ access :cal SetSyn("hostsaccess")<CR>
|
||||
an 50.50.300 &Syntax.HIJK.Hyper\ Builder :cal SetSyn("hb")<CR>
|
||||
an 50.50.320 &Syntax.HIJK.Icewm\ menu :cal SetSyn("icemenu")<CR>
|
||||
an 50.50.330 &Syntax.HIJK.Icon :cal SetSyn("icon")<CR>
|
||||
an 50.50.340 &Syntax.HIJK.IDL\Generic\ IDL :cal SetSyn("idl")<CR>
|
||||
an 50.50.350 &Syntax.HIJK.IDL\Microsoft\ IDL :cal SetSyn("msidl")<CR>
|
||||
an 50.50.360 &Syntax.HIJK.Indent\ profile :cal SetSyn("indent")<CR>
|
||||
an 50.50.370 &Syntax.HIJK.Inform :cal SetSyn("inform")<CR>
|
||||
an 50.50.380 &Syntax.HIJK.Informix\ 4GL :cal SetSyn("fgl")<CR>
|
||||
an 50.50.390 &Syntax.HIJK.Initng :cal SetSyn("initng")<CR>
|
||||
an 50.50.400 &Syntax.HIJK.Inittab :cal SetSyn("inittab")<CR>
|
||||
an 50.50.410 &Syntax.HIJK.Inno\ setup :cal SetSyn("iss")<CR>
|
||||
an 50.50.420 &Syntax.HIJK.Innovation\ Data\ Processing.Upstream\ dat :cal SetSyn("upstreamdat")<CR>
|
||||
an 50.50.430 &Syntax.HIJK.Innovation\ Data\ Processing.Upstream\ log :cal SetSyn("upstreamlog")<CR>
|
||||
an 50.50.440 &Syntax.HIJK.Innovation\ Data\ Processing.Upstream\ rpt :cal SetSyn("upstreamrpt")<CR>
|
||||
an 50.50.450 &Syntax.HIJK.Innovation\ Data\ Processing.Upstream\ Install\ log :cal SetSyn("upstreaminstalllog")<CR>
|
||||
an 50.50.460 &Syntax.HIJK.Innovation\ Data\ Processing.Usserver\ log :cal SetSyn("usserverlog")<CR>
|
||||
an 50.50.470 &Syntax.HIJK.Innovation\ Data\ Processing.USW2KAgt\ log :cal SetSyn("usw2kagtlog")<CR>
|
||||
an 50.50.480 &Syntax.HIJK.InstallShield\ script :cal SetSyn("ishd")<CR>
|
||||
an 50.50.490 &Syntax.HIJK.Interactive\ Data\ Lang :cal SetSyn("idlang")<CR>
|
||||
an 50.50.500 &Syntax.HIJK.IPfilter :cal SetSyn("ipfilter")<CR>
|
||||
an 50.50.520 &Syntax.HIJK.J :cal SetSyn("j")<CR>
|
||||
an 50.50.530 &Syntax.HIJK.JAL :cal SetSyn("jal")<CR>
|
||||
an 50.50.540 &Syntax.HIJK.JAM :cal SetSyn("jam")<CR>
|
||||
an 50.50.550 &Syntax.HIJK.Jargon :cal SetSyn("jargon")<CR>
|
||||
an 50.50.560 &Syntax.HIJK.Java.Java :cal SetSyn("java")<CR>
|
||||
an 50.50.570 &Syntax.HIJK.Java.JavaCC :cal SetSyn("javacc")<CR>
|
||||
an 50.50.580 &Syntax.HIJK.Java.Java\ Server\ Pages :cal SetSyn("jsp")<CR>
|
||||
an 50.50.590 &Syntax.HIJK.Java.Java\ Properties :cal SetSyn("jproperties")<CR>
|
||||
an 50.50.600 &Syntax.HIJK.JavaScript :cal SetSyn("javascript")<CR>
|
||||
an 50.50.610 &Syntax.HIJK.Jess :cal SetSyn("jess")<CR>
|
||||
an 50.50.620 &Syntax.HIJK.Jgraph :cal SetSyn("jgraph")<CR>
|
||||
an 50.50.630 &Syntax.HIJK.Jovial :cal SetSyn("jovial")<CR>
|
||||
an 50.50.640 &Syntax.HIJK.JSON :cal SetSyn("json")<CR>
|
||||
an 50.50.660 &Syntax.HIJK.Kconfig :cal SetSyn("kconfig")<CR>
|
||||
an 50.50.670 &Syntax.HIJK.KDE\ script :cal SetSyn("kscript")<CR>
|
||||
an 50.50.680 &Syntax.HIJK.Kimwitu++ :cal SetSyn("kwt")<CR>
|
||||
an 50.50.690 &Syntax.HIJK.Kivy :cal SetSyn("kivy")<CR>
|
||||
an 50.50.700 &Syntax.HIJK.KixTart :cal SetSyn("kix")<CR>
|
||||
an 50.50.260 &Syntax.HIJK.HTML.Vue.js\ HTML\ template :cal SetSyn("vuejs")<CR>
|
||||
an 50.50.270 &Syntax.HIJK.HTML.HTML/OS :cal SetSyn("htmlos")<CR>
|
||||
an 50.50.280 &Syntax.HIJK.HTML.XHTML :cal SetSyn("xhtml")<CR>
|
||||
an 50.50.290 &Syntax.HIJK.Host\.conf :cal SetSyn("hostconf")<CR>
|
||||
an 50.50.300 &Syntax.HIJK.Hosts\ access :cal SetSyn("hostsaccess")<CR>
|
||||
an 50.50.310 &Syntax.HIJK.Hyper\ Builder :cal SetSyn("hb")<CR>
|
||||
an 50.50.330 &Syntax.HIJK.Icewm\ menu :cal SetSyn("icemenu")<CR>
|
||||
an 50.50.340 &Syntax.HIJK.Icon :cal SetSyn("icon")<CR>
|
||||
an 50.50.350 &Syntax.HIJK.IDL\Generic\ IDL :cal SetSyn("idl")<CR>
|
||||
an 50.50.360 &Syntax.HIJK.IDL\Microsoft\ IDL :cal SetSyn("msidl")<CR>
|
||||
an 50.50.370 &Syntax.HIJK.Indent\ profile :cal SetSyn("indent")<CR>
|
||||
an 50.50.380 &Syntax.HIJK.Inform :cal SetSyn("inform")<CR>
|
||||
an 50.50.390 &Syntax.HIJK.Informix\ 4GL :cal SetSyn("fgl")<CR>
|
||||
an 50.50.400 &Syntax.HIJK.Initng :cal SetSyn("initng")<CR>
|
||||
an 50.50.410 &Syntax.HIJK.Inittab :cal SetSyn("inittab")<CR>
|
||||
an 50.50.420 &Syntax.HIJK.Inno\ setup :cal SetSyn("iss")<CR>
|
||||
an 50.50.430 &Syntax.HIJK.Innovation\ Data\ Processing.Upstream\ dat :cal SetSyn("upstreamdat")<CR>
|
||||
an 50.50.440 &Syntax.HIJK.Innovation\ Data\ Processing.Upstream\ log :cal SetSyn("upstreamlog")<CR>
|
||||
an 50.50.450 &Syntax.HIJK.Innovation\ Data\ Processing.Upstream\ rpt :cal SetSyn("upstreamrpt")<CR>
|
||||
an 50.50.460 &Syntax.HIJK.Innovation\ Data\ Processing.Upstream\ Install\ log :cal SetSyn("upstreaminstalllog")<CR>
|
||||
an 50.50.470 &Syntax.HIJK.Innovation\ Data\ Processing.Usserver\ log :cal SetSyn("usserverlog")<CR>
|
||||
an 50.50.480 &Syntax.HIJK.Innovation\ Data\ Processing.USW2KAgt\ log :cal SetSyn("usw2kagtlog")<CR>
|
||||
an 50.50.490 &Syntax.HIJK.InstallShield\ script :cal SetSyn("ishd")<CR>
|
||||
an 50.50.500 &Syntax.HIJK.Interactive\ Data\ Lang :cal SetSyn("idlang")<CR>
|
||||
an 50.50.510 &Syntax.HIJK.IPfilter :cal SetSyn("ipfilter")<CR>
|
||||
an 50.50.530 &Syntax.HIJK.J :cal SetSyn("j")<CR>
|
||||
an 50.50.540 &Syntax.HIJK.JAL :cal SetSyn("jal")<CR>
|
||||
an 50.50.550 &Syntax.HIJK.JAM :cal SetSyn("jam")<CR>
|
||||
an 50.50.560 &Syntax.HIJK.Jargon :cal SetSyn("jargon")<CR>
|
||||
an 50.50.570 &Syntax.HIJK.Java.Java :cal SetSyn("java")<CR>
|
||||
an 50.50.580 &Syntax.HIJK.Java.JavaCC :cal SetSyn("javacc")<CR>
|
||||
an 50.50.590 &Syntax.HIJK.Java.Java\ Server\ Pages :cal SetSyn("jsp")<CR>
|
||||
an 50.50.600 &Syntax.HIJK.Java.Java\ Properties :cal SetSyn("jproperties")<CR>
|
||||
an 50.50.610 &Syntax.HIJK.JavaScript :cal SetSyn("javascript")<CR>
|
||||
an 50.50.620 &Syntax.HIJK.Jess :cal SetSyn("jess")<CR>
|
||||
an 50.50.630 &Syntax.HIJK.Jgraph :cal SetSyn("jgraph")<CR>
|
||||
an 50.50.640 &Syntax.HIJK.Jovial :cal SetSyn("jovial")<CR>
|
||||
an 50.50.650 &Syntax.HIJK.JSON :cal SetSyn("json")<CR>
|
||||
an 50.50.670 &Syntax.HIJK.Kconfig :cal SetSyn("kconfig")<CR>
|
||||
an 50.50.680 &Syntax.HIJK.KDE\ script :cal SetSyn("kscript")<CR>
|
||||
an 50.50.690 &Syntax.HIJK.Kimwitu++ :cal SetSyn("kwt")<CR>
|
||||
an 50.50.700 &Syntax.HIJK.Kivy :cal SetSyn("kivy")<CR>
|
||||
an 50.50.710 &Syntax.HIJK.KixTart :cal SetSyn("kix")<CR>
|
||||
an 50.60.100 &Syntax.L.Lace :cal SetSyn("lace")<CR>
|
||||
an 50.60.110 &Syntax.L.LamdaProlog :cal SetSyn("lprolog")<CR>
|
||||
an 50.60.120 &Syntax.L.Latte :cal SetSyn("latte")<CR>
|
||||
|
||||
@@ -1,7 +1,8 @@
|
||||
" Vim syntax file
|
||||
" Language: JSON
|
||||
" Maintainer: Eli Parra <eli@elzr.com>
|
||||
" Last Change: 2014 Aug 23
|
||||
" Maintainer: vacancy
|
||||
" Previous Maintainer: Eli Parra <eli@elzr.com>
|
||||
" Last Change: 2019 Jul 08
|
||||
" Version: 0.12
|
||||
|
||||
if !exists("main_syntax")
|
||||
@@ -16,8 +17,19 @@ syntax match jsonNoise /\%(:\|,\)/
|
||||
|
||||
" NOTE that for the concealing to work your conceallevel should be set to 2
|
||||
|
||||
" Syntax: JSON Keywords
|
||||
" Separated into a match and region because a region by itself is always greedy
|
||||
syn match jsonKeywordMatch /"\([^"]\|\\\"\)\+"[[:blank:]\r\n]*\:/ contains=jsonKeyword
|
||||
if has('conceal')
|
||||
syn region jsonKeyword matchgroup=jsonQuote start=/"/ end=/"\ze[[:blank:]\r\n]*\:/ concealends contained
|
||||
else
|
||||
syn region jsonKeyword matchgroup=jsonQuote start=/"/ end=/"\ze[[:blank:]\r\n]*\:/ contained
|
||||
endif
|
||||
|
||||
" Syntax: Strings
|
||||
" Separated into a match and region because a region by itself is always greedy
|
||||
" Needs to come after keywords or else a json encoded string will break the
|
||||
" syntax
|
||||
syn match jsonStringMatch /"\([^"]\|\\\"\)\+"\ze[[:blank:]\r\n]*[,}\]]/ contains=jsonString
|
||||
if has('conceal')
|
||||
syn region jsonString oneline matchgroup=jsonQuote start=/"/ skip=/\\\\\|\\"/ end=/"/ concealends contains=jsonEscape contained
|
||||
@@ -28,14 +40,6 @@ endif
|
||||
" Syntax: JSON does not allow strings with single quotes, unlike JavaScript.
|
||||
syn region jsonStringSQError oneline start=+'+ skip=+\\\\\|\\"+ end=+'+
|
||||
|
||||
" Syntax: JSON Keywords
|
||||
" Separated into a match and region because a region by itself is always greedy
|
||||
syn match jsonKeywordMatch /"\([^"]\|\\\"\)\+"[[:blank:]\r\n]*\:/ contains=jsonKeyword
|
||||
if has('conceal')
|
||||
syn region jsonKeyword matchgroup=jsonQuote start=/"/ end=/"\ze[[:blank:]\r\n]*\:/ concealends contained
|
||||
else
|
||||
syn region jsonKeyword matchgroup=jsonQuote start=/"/ end=/"\ze[[:blank:]\r\n]*\:/ contained
|
||||
endif
|
||||
|
||||
" Syntax: Escape sequences
|
||||
syn match jsonEscape "\\["\\/bfnrt]" contained
|
||||
|
||||
@@ -1,8 +1,8 @@
|
||||
" Vim syntax file
|
||||
" Language: Lisp
|
||||
" Maintainer: Charles E. Campbell <NdrOchipS@PcampbellAfamily.Mbiz>
|
||||
" Last Change: Mar 26, 2019
|
||||
" Version: 28
|
||||
" Last Change: Jul 11, 2019
|
||||
" Version: 29
|
||||
" URL: http://www.drchip.org/astronaut/vim/index.html#SYNTAX_LISP
|
||||
"
|
||||
" Thanks to F Xavier Noria for a list of 978 Common Lisp symbols taken from HyperSpec
|
||||
@@ -54,7 +54,7 @@ if exists("g:lisp_rainbow") && g:lisp_rainbow != 0
|
||||
syn region lispParen8 contained matchgroup=hlLevel8 start="`\=(" end=")" skip="|.\{-}|" contains=@lispListCluster,lispParen9
|
||||
syn region lispParen9 contained matchgroup=hlLevel9 start="`\=(" end=")" skip="|.\{-}|" contains=@lispListCluster,lispParen0
|
||||
else
|
||||
syn region lispList matchgroup=Delimiter start="(" skip="|.\{-}|" matchgroup=Delimiter end=")" contains=@lispListCluster
|
||||
syn region lispList matchgroup=lispParen start="(" skip="|.\{-}|" matchgroup=lispParen end=")" contains=@lispListCluster
|
||||
syn region lispBQList matchgroup=PreProc start="`(" skip="|.\{-}|" matchgroup=PreProc end=")" contains=@lispListCluster
|
||||
endif
|
||||
|
||||
@@ -608,6 +608,8 @@ if !exists("skip_lisp_syntax_inits")
|
||||
hi def hlLevel8 ctermfg=blue guifg=darkslateblue
|
||||
hi def hlLevel9 ctermfg=darkmagenta guifg=darkviolet
|
||||
endif
|
||||
else
|
||||
hi def link lispParen Delimiter
|
||||
endif
|
||||
|
||||
endif
|
||||
|
||||
@@ -2,8 +2,7 @@
|
||||
" Language: Valgrind Memory Debugger Output
|
||||
" Maintainer: Roger Luethi <rl@hellgate.ch>
|
||||
" Program URL: http://devel-home.kde.org/~sewardj/
|
||||
" Last Change: 2015 Jan 27
|
||||
" Included improvement by Dominique Pelle
|
||||
" Last Change: 2019 Jul 24
|
||||
"
|
||||
" Notes: mostly based on strace.vim and xml.vim
|
||||
"
|
||||
@@ -26,7 +25,7 @@ syn match valgrindSpecLine "^[+-]\{2}\d\+[+-]\{2}.*$"
|
||||
|
||||
syn region valgrindRegion
|
||||
\ start=+^==\z(\d\+\)== \w.*$+
|
||||
\ skip=+^==\z1==\( \| .*\)$+
|
||||
\ skip=+^==\z1==\( \| .*\| \S.*\)$+
|
||||
\ end=+^+
|
||||
\ fold
|
||||
\ keepend
|
||||
@@ -70,7 +69,7 @@ syn match valgrindLoc "\s\+\(by\|at\|Address\).*$" contained
|
||||
syn match valgrindAt "at\s\@=" contained
|
||||
syn match valgrindAddr "\W\zs0x\x\+" contained
|
||||
|
||||
syn match valgrindFunc ": \zs\h[a-zA-Z0-9_:\[\]()<>&*+\-,=%!|^ ]*\ze([^)]*)$" contained
|
||||
syn match valgrindFunc ": \zs\h[a-zA-Z0-9_:\[\]()<>&*+\-,=%!|^ @.]*\ze([^)]*)$" contained
|
||||
syn match valgrindBin "(\(with\)\=in \zs\S\+)\@=" contained
|
||||
syn match valgrindSrc "(\zs[^)]*:\d\+)\@=" contained
|
||||
|
||||
|
||||
@@ -1,8 +1,8 @@
|
||||
" Vim syntax file
|
||||
" Language: Vim 8.0 script
|
||||
" Maintainer: Charles E. Campbell <NdrOchipS@PcampbellAfamily.Mbiz>
|
||||
" Last Change: Jun 16, 2019
|
||||
" Version: 8.0-22
|
||||
" Last Change: July 18, 2019
|
||||
" Version: 8.0-23
|
||||
" URL: http://www.drchip.org/astronaut/vim/index.html#SYNTAX_VIM
|
||||
" Automatically generated keyword lists: {{{1
|
||||
|
||||
@@ -19,38 +19,38 @@ syn keyword vimTodo contained COMBAK FIXME TODO XXX
|
||||
syn cluster vimCommentGroup contains=vimTodo,@Spell
|
||||
|
||||
" regular vim commands {{{2
|
||||
syn keyword vimCommand contained a arga[dd] argu[ment] bad[d] bn[ext] breakd[el] bw[ipeout] cadde[xpr] cc cf[ile] changes cla[st] cnf[ile] comp[iler] cq[uit] cw[indow] delep dell diffg[et] dig[raphs] doau ea el[se] endt[ry] f[ile] fina[lly] foldd[oopen] go[to] ha[rdcopy] hid[e] ij[ump] isp[lit] keepa l[ist] lat lcl[ose] lex[pr] lgete[xpr] lla[st] lnf[ile] lol[der] lt[ag] lw[indow] menut[ranslate] mkv[imrc] nb[key] noa nos[wapfile] on[ly] packl[oadall] po[p] pro ps[earch] ptl[ast] pu[t] pydo pyxdo r[ead] redraws[tatus] rew[ind] rubyd[o] sIc sIp san[dbox] sbf[irst] sbr[ewind] sci scs setl[ocal] sgc sgp sie sin sm[agic] sn[ext] sor[t] spellr[epall] srI srl star[tinsert] sts[elect] sv[iew] syncbind tab tabf[ind] tabnew tags ter[minal] tm[enu] to[pleft] tu[nmenu] undol[ist] up[date] vi[sual] vmapc[lear] wa[ll] winp[os] ws[verb] xmapc[lear] xprop
|
||||
syn keyword vimCommand contained ab argd[elete] as[cii] bd[elete] bo[tright] breakl[ist] cN[ext] caddf[ile] ccl[ose] cfdo chd[ir] cle[arjumps] co[py] con[tinue] cr[ewind] d[elete] deletel delm[arks] diffo[ff] dir dp earlier elsei[f] endw[hile] files fini[sh] folddoc[losed] gr[ep] helpc[lose] his[tory] il[ist] iuna[bbrev] keepalt la[st] later lcs lf[ile] lgr[ep] lli[st] lo[adview] lop[en] lua m[ove] mes mkvie[w] nbc[lose] noautocmd nu[mber] opt[ions] pc[lose] popu[p] prof[ile] ptN[ext] ptn[ext] pw[d] pyf[ile] pyxfile rec[over] reg[isters] ri[ght] rubyf[ile] sIe sIr sav[eas] sbl[ast] sc scl scscope sf[ind] sge sgr sig sip sm[ap] sno[magic] sp[lit] spellu[ndo] src srn startg[replace] sun[hide] sw[apname] syntime tabN[ext] tabfir[st] tabo[nly] tc[l] tf[irst] tma[p] tp[revious] tunma[p] unh[ide] v vie[w] vne[w] wh[ile] wn[ext] wundo xme xunme
|
||||
syn keyword vimCommand contained abc[lear] argdo au bel[owright] bp[revious] bro[wse] cNf[ile] cal[l] cd cfir[st] che[ckpath] clo[se] col[der] conf[irm] cs debug deletep delp diffp[atch] dj[ump] dr[op] ec em[enu] ene[w] filet fir[st] foldo[pen] grepa[dd] helpf[ind] i imapc[lear] j[oin] keepj[umps] lad[dexpr] lb[uffer] lcscope lfdo lgrepa[dd] lmak[e] loadk lp[revious] luado ma[rk] messages mod[e] nbs[tart] noh[lsearch] o[pen] ownsyntax pe[rl] pp[op] profd[el] pta[g] ptp[revious] py3 python3 q[uit] red[o] res[ize] rightb[elow] rundo sIg sN[ext] sbN[ext] sbm[odified] scI scp se[t] sfir[st] sgi sh[ell] sign sir sme snoreme spe[llgood] spellw[rong] sre[wind] srp startr[eplace] sunme sy t tabc[lose] tabl[ast] tabp[revious] tcld[o] th[row] tmapc[lear] tr[ewind] u[ndo] unl ve[rsion] vim[grep] vs[plit] win[size] wp[revious] wv[iminfo] xmenu xunmenu
|
||||
syn keyword vimCommand contained abo[veleft] arge[dit] bN[ext] bf[irst] br[ewind] bufdo c[hange] cat[ch] cdo cg[etfile] checkt[ime] cmapc[lear] colo[rscheme] cope[n] cscope debugg[reedy] deletl dep diffpu[t] dl ds[earch] echoe[rr] en[dif] ex filetype fix[del] for gui helpg[rep] ia in ju[mps] keepp[atterns] laddb[uffer] lbo[ttom] ld[o] lfir[st] lh[elpgrep] lmapc[lear] loadkeymap lpf[ile] luafile mak[e] mk[exrc] mz[scheme] new nor ol[dfiles] p[rint] ped[it] pre[serve] promptf[ind] ptf[irst] ptr[ewind] py3do pythonx qa[ll] redi[r] ret[ab] ru[ntime] rv[iminfo] sIl sa[rgument] sb[uffer] sbn[ext] sce scr[iptnames] setf[iletype] sg sgl si sil[ent] sl[eep] smenu snoremenu spelld[ump] spr[evious] srg st[op] stj[ump] sunmenu syn tN[ext] tabd[o] tabm[ove] tabr[ewind] tclf[ile] tj[ump] tn[ext] try una[bbreviate] unlo[ckvar] verb[ose] vimgrepa[dd] wN[ext] winc[md] wq x[it] xnoreme xwininfo
|
||||
syn keyword vimCommand contained al[l] argg[lobal] b[uffer] bl[ast] brea[k] buffers cabc[lear] cb[uffer] ce[nter] cgetb[uffer] chi[story] cn[ext] com cp[revious] cstag delc[ommand] deletp di[splay] diffs[plit] dli[st] dsp[lit] echom[sg] endf[unction] exi[t] filt[er] fo[ld] fu[nction] gvim helpt[ags] iabc[lear] intro k lN[ext] laddf[ile] lc[d] le[ft] lg[etfile] lhi[story] lne[xt] loc[kmarks] lr[ewind] lv[imgrep] marks mks[ession] mzf[ile] nmapc[lear] nore omapc[lear] pa[ckadd] perld[o] prev[ious] promptr[epl] ptj[ump] pts[elect] py[thon] pyx quita[ll] redr[aw] retu[rn] rub[y] sI sIn sal[l] sba[ll] sbp[revious] scg scripte[ncoding] setg[lobal] sgI sgn sic sim[alt] sla[st] smile so[urce] spelli[nfo] sr sri sta[g] stopi[nsert] sus[pend] sync ta[g] tabe[dit] tabn[ext] tabs te[aroff] tl[ast] tno[remap] ts[elect] undoj[oin] uns[ilent] vert[ical] viu[sage] w[rite] windo wqa[ll] xa[ll] xnoremenu y[ank]
|
||||
syn keyword vimCommand contained ar[gs] argl[ocal] ba[ll] bm[odified] breaka[dd] bun[load] cad[dbuffer] cbo[ttom] cex[pr] cgete[xpr] cl[ist] cnew[er] comc[lear] cpf[ile] cuna[bbrev] delel delf[unction] dif[fupdate] difft[his] do e[dit] echon endfo[r] exu[sage] fin[d] foldc[lose] g h[elp] hi if is[earch] kee[pmarks] lNf[ile] lan[guage] lch[dir] lefta[bove] lgetb[uffer] ll lnew[er] lockv[ar] ls lvimgrepa[dd] mat[ch] mksp[ell] n[ext]
|
||||
syn keyword vimCommand contained a ar[gs] argl[ocal] ba[ll] bm[odified] breaka[dd] bun[load] cabc[lear] cal[l] cc cf[ile] changes cla[st] cnf[ile] comc[lear] cp[revious] cstag debugg[reedy] deletl dep diffpu[t] dl dr[op] ec em[enu] ene[w] filet fir[st] foldo[pen] grepa[dd] helpf[ind] i imapc[lear] iuna[bbrev] keepalt la[st] lan[guage] lbo[ttom] ld[o] lfir[st] lh[elpgrep] lmak[e] loadk lp[revious] luado ma[rk] messages mod[e] nbs[tart] nor omapc[lear] packl[oadall] popu[p] profd[el] ptf[irst] pts[elect] pydo pyxfile red[o] res[ize] ru[ntime] sI sIp sav[eas] sbm[odified] sce scripte[ncoding] setg[lobal] sgc sgr sign sl[eep] smenu snoremenu spelld[ump] spr[evious] srg st[op] stj[ump] sunmenu syn tN[ext] tabd[o] tabm[ove] tabr[ewind] tch[dir] tf[irst] tlmenu tm[enu] to[pleft] tu[nmenu] undol[ist] up[date] vi[sual] vmapc[lear] wa[ll] winp[os] wundo xme xr[estore]
|
||||
syn keyword vimCommand contained ab arga[dd] argu[ment] bad[d] bn[ext] breakd[el] bw[ipeout] cabo[ve] cat[ch] ccl[ose] cfdo chd[ir] cle[arjumps] cnor comp[iler] cpf[ile] cun delc[ommand] deletp di[splay] diffs[plit] dli[st] ds[earch] echoe[rr] en[dif] ex filetype fix[del] for gui helpg[rep] ia in j[oin] keepj[umps] lab[ove] lat lc[d] le[ft] lg[etfile] lhi[story] lmapc[lear] loadkeymap lpf[ile] luafile mak[e] mk[exrc] mz[scheme] new nore on[ly] pc[lose] pp[op] promptf[ind] ptj[ump] pu[t] pyf[ile] q[uit] redi[r] ret[ab] rub[y] sIc sIr sbN[ext] sbn[ext] scg scriptv[ersion] setl[ocal] sge sh[ell] sil[ent] sla[st] smile so[urce] spelli[nfo] sr sri sta[g] stopi[nsert] sus[pend] sync ta[g] tabe[dit] tabn[ext] tabs tcld[o] th[row] tln tma[p] tp[revious] tunma[p] unh[ide] v vie[w] vne[w] wh[ile] wn[ext] wv[iminfo] xmenu xunme
|
||||
syn keyword vimCommand contained abc[lear] argd[elete] as[cii] bd[elete] bo[tright] breakl[ist] cN[ext] cad[dbuffer] cb[uffer] cd cfir[st] che[ckpath] clo[se] co[py] con[tinue] cq[uit] cuna[bbrev] delel delf[unction] dif[fupdate] difft[his] do dsp[lit] echom[sg] endf[unction] exi[t] filt[er] fo[ld] fu[nction] gvim helpt[ags] iabc[lear] inor ju[mps] keepp[atterns] lad[dexpr] later lch[dir] lefta[bove] lgetb[uffer] ll lne[xt] loc[kmarks] lr[ewind] lv[imgrep] marks mks[ession] mzf[ile] nmapc[lear] nos[wapfile] opt[ions] pe[rl] pre[serve] promptr[epl] ptl[ast] pw[d] python3 qa[ll] redr[aw] retu[rn] rubyd[o] sIe sN[ext] sb[uffer] sbp[revious] sci scs sf[ind] sgi si sim[alt] sm[agic] sn[ext] sor[t] spellr[epall] srI srl star[tinsert] sts[elect] sv[iew] syncbind tab tabf[ind] tabnew tags tclf[ile] tj[ump] tlnoremenu tmapc[lear] tr[ewind] u[ndo] unl ve[rsion] vim[grep] vs[plit] win[size] wp[revious] x[it] xnoreme xunmenu
|
||||
syn keyword vimCommand contained abo[veleft] argdo au bel[owright] bp[revious] bro[wse] cNf[ile] cadde[xpr] cbe[fore] cdo cg[etfile] checkt[ime] cmapc[lear] col[der] conf[irm] cr[ewind] cw[indow] delep dell diffg[et] dig[raphs] doau e[dit] echon endfo[r] exu[sage] fin[d] foldc[lose] g h[elp] hi if intro k lN[ext] laddb[uffer] lb[uffer] lcl[ose] lex[pr] lgete[xpr] lla[st] lnew[er] lockv[ar] ls lvimgrepa[dd] mat[ch] mksp[ell] n[ext] noa nu[mber] ownsyntax ped[it] prev[ious] ps[earch] ptn[ext] py3 pythonx quita[ll] redraws[tatus] rew[ind] rubyf[ile] sIg sa[rgument] sba[ll] sbr[ewind] scl scscope sfir[st] sgl sic sin sm[ap] sno[magic] sp[lit] spellu[ndo] src srn startg[replace] sun[hide] sw[apname] syntime tabN[ext] tabfir[st] tabo[nly] tc[l] te[aroff] tl[ast] tlu tn[ext] try una[bbreviate] unlo[ckvar] verb[ose] vimgrepa[dd] wN[ext] winc[md] wq xa[ll] xnoremenu xwininfo
|
||||
syn keyword vimCommand contained addd arge[dit] bN[ext] bf[irst] br[ewind] bufdo c[hange] caddf[ile] cbel[ow] ce[nter] cgetb[uffer] chi[story] cn[ext] colo[rscheme] cons[t] cs d[elete] deletel delm[arks] diffo[ff] dir doaut ea el[se] endt[ry] f[ile] fina[lly] foldd[oopen] go[to] ha[rdcopy] hid[e] ij[ump] is[earch] kee[pmarks] lNf[ile] laddf[ile] lbe[fore] lcs lf[ile] lgr[ep] lli[st] lnf[ile] lol[der] lt[ag] lw[indow] menut[ranslate] mkv[imrc] nb[key] noautocmd o[pen] p[rint] perld[o] pro ptN[ext] ptp[revious] py3do pyx r[ead] redrawt[abline] ri[ght] rundo sIl sal[l] sbf[irst] sc scp se[t] sg sgn sie sip sme snoreme spe[llgood] spellw[rong] sre[wind] srp startr[eplace] sunme sy t tabc[lose] tabl[ast] tabp[revious] tcd ter[minal] tlm tlunmenu tno[remap] ts[elect] undoj[oin] uns[ilent] vert[ical] viu[sage] w[rite] windo wqa[ll] xmapc[lear] xprop y[ank]
|
||||
syn keyword vimCommand contained al[l] argg[lobal] b[uffer] bl[ast] brea[k] buffers ca caf[ter] cbo[ttom] cex[pr] cgete[xpr] cl[ist] cnew[er] com cope[n] cscope debug deletep delp diffp[atch] dj[ump] dp earlier elsei[f] endw[hile] files fini[sh] folddoc[losed] gr[ep] helpc[lose] his[tory] il[ist] isp[lit] keepa l[ist] laf[ter] lbel[ow] lcscope lfdo lgrepa[dd] lma lo[adview] lop[en] lua m[ove] mes mkvie[w] nbc[lose] noh[lsearch] ol[dfiles] pa[ckadd] po[p] prof[ile] pta[g] ptr[ewind] py[thon] pyxdo rec[over] reg[isters] rightb[elow] rv[iminfo] sIn san[dbox] sbl[ast] scI scr[iptnames] setf[iletype] sgI sgp sig sir
|
||||
syn match vimCommand contained "\<z[-+^.=]\=\>"
|
||||
syn keyword vimStdPlugin contained Arguments Break Clear Continue DiffOrig Evaluate Finish Gdb Man N[ext] Over P[rint] Program Run S Source Step Stop Termdebug TermdebugCommand TOhtml Winbar XMLent XMLns
|
||||
syn keyword vimStdPlugin contained Arguments Break Cfilter Clear Continue DiffOrig Evaluate Finish Gdb Lfilter Man N[ext] Over P[rint] Program Run S Source Step Stop Termdebug TermdebugCommand TOhtml Winbar XMLent XMLns
|
||||
|
||||
" vimOptions are caught only when contained in a vimSet {{{2
|
||||
syn keyword vimOption contained acd ambw arshape background ballooneval bex bl brk buftype cf cinkeys cmdwinheight com conceallevel crb cscopeverbose cuc def diffexpr ea ei ep eventignore fdi fenc fileformat fkmap foldexpr foldopen fsync gfw guicursor guitabtooltip hidden hlg imactivatefunc imi inc inex isident keymap langnoremap linespace loadplugins ma matchtime mef ml modeline mousefocus mousetime mzschemegcdll odev osfiletype patchexpr pexpr pmbfn printencoding prompt pythondll quoteescape remap rightleftcmd rtp sb scroll sections sh shellslash shm showmode siso smc spc spl ss statusline suffixesadd sws tabline tagrelative tbis termencoding textmode timeout tm ts ttybuiltin twk ul ur ve vif vts wd wic wildmode winheight wm wrapscan
|
||||
syn keyword vimOption contained ai anti autochdir backspace balloonevalterm bexpr bo browsedir casemap cfu cino cmp comments confirm cryptmethod cspc cul define diffopt ead ek equalalways ex fdl fencs fileformats flp foldignore foldtext ft ghr guifont helpfile highlight hls imactivatekey iminsert include inf isk keymodel langremap lisp lpl macatsui maxcombine menc mls modelines mousehide mp nf oft pa patchmode pfn popt printexpr pt pythonhome rdt renderoptions rl ru sbo scrollbind secure shcf shelltemp shortmess showtabline sj smd spell splitbelow ssl stl sw sxe tabpagemax tags tbs termguicolors textwidth timeoutlen to tsl ttyfast tws undodir ut verbose viminfo wa weirdinvert wig wildoptions winminheight wmh write
|
||||
syn keyword vimOption contained akm antialias autoindent backup balloonexpr bg bomb bs cb ch cinoptions cms commentstring copyindent cscopepathcomp csprg cursorbind delcombine digraph eadirection emo equalprg expandtab fdls fex fileignorecase fml foldlevel formatexpr gcr go guifontset helpheight history hlsearch imaf ims includeexpr infercase iskeyword keywordprg laststatus lispwords lrm magic maxfuncdepth menuitems mm modifiable mousem mps nrformats ofu packpath path ph pp printfont pumheight pythonthreedll re report rlc rubydll sbr scrolljump sel shell shelltype shortname shq slm sn spellcapcheck splitright ssop stmp swapfile sxq tabstop tagstack tc termwinkey tf title toolbar tsr ttym twsl undofile varsofttabstop verbosefile viminfofile wak wfh wildchar wim winminwidth wmnu writeany
|
||||
syn keyword vimOption contained al ar autoread backupcopy bdir bh breakat bsdir cc charconvert cinw co compatible cot cscopeprg csqf cursorcolumn dex dip eb emoji errorbells exrc fdm ff filetype fmr foldlevelstart formatlistpat gd gp guifontwide helplang hk ic imak imsearch incsearch insertmode isp km lazyredraw list ls makeef maxmapdepth mfd mmd modified mousemodel msm nu omnifunc para pdev pheader preserveindent printheader pumwidth pythonthreehome readonly restorescreen rnu ruf sc scrolloff selection shellcmdflag shellxescape showbreak si sm so spellfile spr st sts swapsync syn tag tal tcldll termwinscroll tgc titlelen toolbariconsize ttimeout ttymouse tx undolevels vartabstop vfile virtualedit warn wfw wildcharm winaltkeys winptydll wmw writebackup
|
||||
syn keyword vimOption contained aleph arab autowrite backupdir bdlay bin breakindent bsk ccv ci cinwords cocu complete cp cscopequickfix csre cursorline dg dir ed enc errorfile fcl fdn ffs fillchars fo foldmarker formatoptions gdefault grepformat guiheadroom hf hkmap icon imc imsf inde is isprint kmp lbr listchars lsp makeencoding maxmem mh mmp more mouses mzq number opendevice paragraphs penc pi previewheight printmbcharset pvh pyx redrawtime revins ro ruler scb scrollopt selectmode shellpipe shellxquote showcmd sidescroll smartcase softtabstop spelllang sps sta su swb synmaxcol tagbsearch tb tenc termwinsize tgst titleold top ttimeoutlen ttyscroll uc undoreload vb vi visualbell wb wh wildignore window winwidth wop writedelay
|
||||
syn keyword vimOption contained allowrevins arabic autowriteall backupext belloff binary breakindentopt bt cd cin clipboard cole completefunc cpo cscoperelative cst cwh dict directory edcompatible encoding errorformat fcs fdo fic fixendofline foldclose foldmethod formatprg gfm grepprg guioptions hh hkmapp iconstring imcmdline imst indentexpr isf joinspaces kp lcs lm luadll makeprg maxmempattern mis mmt mouse mouseshape mzquantum numberwidth operatorfunc paste perldll pm previewwindow printmbfont pvw pyxversion regexpengine ri rop rulerformat scl scs sessionoptions shellquote shiftround showfulltag sidescrolloff smartindent sol spellsuggest sr stal sua swf syntax tagcase tbi term terse thesaurus titlestring tpm ttm ttytype udf updatecount vbs viewdir vop wc whichwrap wildignorecase winfixheight wiv wrap ws
|
||||
syn keyword vimOption contained altkeymap arabicshape aw backupskip beval bk bri bufhidden cdpath cindent cm colorcolumn completeopt cpoptions cscopetag csto debug dictionary display ef endofline esckeys fdc fdt fileencoding fixeol foldcolumn foldminlines fp gfn gtl guipty hi hkp ignorecase imd imstatusfunc indentkeys isfname js langmap linebreak lmap lw mat maxmemtot mkspellmem mod mousef mouset mzschemedll nuw opfunc pastetoggle pex pmbcs printdevice printoptions pw qe relativenumber rightleft rs runtimepath scr sect sft shellredir shiftwidth showmatch signcolumn smarttab sp spf srr startofline suffixes switchbuf ta taglength tbidi termbidi textauto tildeop tl tr tty tw udir updatetime vdir viewoptions vsts wcm wi wildmenu winfixwidth wiw wrapmargin ww
|
||||
syn keyword vimOption contained ambiwidth ari awa balloondelay bevalterm bkc briopt buflisted cedit cink cmdheight columns concealcursor cpt cscopetagorder csverb deco diff dy efm eol et fde fen fileencodings fk foldenable foldnestmax fs gfs gtt guitablabel hid hl im imdisable imstyle indk isi key langmenu lines lnr lz matchpairs mco
|
||||
syn keyword vimOption contained acd ambw arshape background ballooneval bex bl brk buftype cf cinkeys cmdwinheight com conceallevel crb cscopeverbose cuc def diffexpr ea ei ep eventignore fdi fenc fileformat fkmap foldexpr foldopen fsync gfw guicursor guitabtooltip hidden hlg imactivatefunc imi inc inex isident keymap langnoremap linespace loadplugins ma matchtime mef mle modelineexpr mousehide mps nu opendevice paste pex pmbcs printdevice printoptions pw qe relativenumber rightleft rs runtimepath scr sect sft shellredir shiftwidth showmatch signcolumn smarttab sp spf srr startofline suffixes switchbuf ta tagfunc tbi term termwintype tgc titlelen toolbariconsize ttimeout ttymouse twt undofile varsofttabstop verbosefile viminfofile wak weirdinvert wig wildoptions winheight wm wrapscan
|
||||
syn keyword vimOption contained ai anti autochdir backspace balloonevalterm bexpr bo browsedir casemap cfu cino cmp comments confirm cryptmethod cspc cul define diffopt ead ek equalalways ex fdl fencs fileformats flp foldignore foldtext ft ghr guifont helpfile highlight hls imactivatekey iminsert include inf isk keymodel langremap lisp lpl macatsui maxcombine menc mls modelines mousem msm number operatorfunc pastetoggle pexpr pmbfn printencoding prompt pythondll quoteescape remap rightleftcmd rtp sb scroll sections sh shellslash shm showmode siso smc spc spl ss statusline suffixesadd sws tabline taglength tbidi termbidi terse tgst titleold top ttimeoutlen ttyscroll tx undolevels vartabstop vfile virtualedit warn wfh wildchar wim winminheight wmh write
|
||||
syn keyword vimOption contained akm antialias autoindent backup balloonexpr bg bomb bs cb ch cinoptions cms commentstring copyindent cscopepathcomp csprg cursorbind delcombine digraph eadirection emo equalprg expandtab fdls fex fileignorecase fml foldlevel formatexpr gcr go guifontset helpheight history hlsearch imaf ims includeexpr infercase iskeyword keywordprg laststatus lispwords lrm magic maxfuncdepth menuitems mm modifiable mousemodel mzq numberwidth opfunc patchexpr pfn popt printexpr pt pythonhome rdt renderoptions rl ru sbo scrollbind secure shcf shelltemp shortmess showtabline sj smd spell splitbelow ssl stl sw sxe tabpagemax tagrelative tbis termencoding textauto thesaurus titlestring tpm ttm ttytype uc undoreload vb vi visualbell wb wfw wildcharm winaltkeys winminwidth wmnu writeany
|
||||
syn keyword vimOption contained al ar autoread backupcopy bdir bh breakat bsdir cc charconvert cinw co compatible cot cscopeprg csqf cursorcolumn dex dip eb emoji errorbells exrc fdm ff filetype fmr foldlevelstart formatlistpat gd gp guifontwide helplang hk ic imak imsearch incsearch insertmode isp km lazyredraw list ls makeef maxmapdepth mfd mmd modified mouses mzquantum nuw osfiletype patchmode ph pp printfont pumheight pythonthreedll re report rlc rubydll sbr scrolljump sel shell shelltype shortname shq slm sn spellcapcheck splitright ssop stmp swapfile sxq tabstop tags tbs termguicolors textmode tildeop tl tr tty tw udf updatecount vbs viewdir vop wc wh wildignore wincolor winptydll wmw writebackup
|
||||
syn keyword vimOption contained aleph arab autowrite backupdir bdlay bin breakindent bsk ccv ci cinwords cocu complete cp cscopequickfix csre cursorline dg dir ed enc errorfile fcl fdn ffs fillchars fo foldmarker formatoptions gdefault grepformat guiheadroom hf hkmap icon imc imsf inde is isprint kmp lbr listchars lsp makeencoding maxmem mh mmp more mouseshape mzschemedll odev pa path pheader preserveindent printheader pumwidth pythonthreehome readonly restorescreen rnu ruf sc scrolloff selection shellcmdflag shellxescape showbreak si sm so spellfile spr st sts swapsync syn tag tagstack tc termwinkey textwidth timeout tm ts ttybuiltin twk udir updatetime vdir viewoptions vsts wcm whichwrap wildignorecase window winwidth wop writedelay
|
||||
syn keyword vimOption contained allowrevins arabic autowriteall backupext belloff binary breakindentopt bt cd cin clipboard cole completefunc cpo cscoperelative cst cwh dict directory edcompatible encoding errorformat fcs fdo fic fixendofline foldclose foldmethod formatprg gfm grepprg guioptions hh hkmapp iconstring imcmdline imst indentexpr isf joinspaces kp lcs lm luadll makeprg maxmempattern mis mmt mouse mouset mzschemegcdll oft packpath pdev pi previewheight printmbcharset pvh pyx redrawtime revins ro ruler scb scrollopt selectmode shellpipe shellxquote showcmd sidescroll smartcase softtabstop spelllang sps sta su swb synmaxcol tagbsearch tal tcldll termwinscroll tf timeoutlen to tsl ttyfast tws ul ur ve vif vts wcr wi wildmenu winfixheight wiv wrap ws
|
||||
syn keyword vimOption contained altkeymap arabicshape aw backupskip beval bk bri bufhidden cdpath cindent cm colorcolumn completeopt cpoptions cscopetag csto debug dictionary display ef endofline esckeys fdc fdt fileencoding fixeol foldcolumn foldminlines fp gfn gtl guipty hi hkp ignorecase imd imstatusfunc indentkeys isfname js langmap linebreak lmap lw mat maxmemtot mkspellmem mod mousef mousetime nf ofu para penc pm previewwindow printmbfont pvw pyxversion regexpengine ri rop rulerformat scl scs sessionoptions shellquote shiftround showfulltag sidescrolloff smartindent sol spellsuggest sr stal sua swf syntax tagcase tb tenc termwinsize tfu title toolbar tsr ttym twsl undodir ut verbose viminfo wa wd wic wildmode winfixwidth wiw wrapmargin ww
|
||||
syn keyword vimOption contained ambiwidth ari awa balloondelay bevalterm bkc briopt buflisted cedit cink cmdheight columns concealcursor cpt cscopetagorder csverb deco diff dy efm eol et fde fen fileencodings fk foldenable foldnestmax fs gfs gtt guitablabel hid hl im imdisable imstyle indk isi key langmenu lines lnr lz matchpairs mco ml modeline mousefocus mp nrformats omnifunc paragraphs perldll
|
||||
|
||||
" vimOptions: These are the turn-off setting variants {{{2
|
||||
syn keyword vimOption contained noacd noallowrevins noantialias noarabic noarshape noautoread noaw noballooneval nobevalterm nobk nobreakindent nocf nocindent nocopyindent nocscoperelative nocsre nocuc nocursorcolumn nodelcombine nodigraph noed noemo noeol noesckeys noexpandtab nofic nofixeol nofoldenable nogd nohid nohkmap nohls noicon noimc noimdisable noinfercase nojoinspaces nolangremap nolinebreak nolist noloadplugins nolrm noma nomagic noml nomodeline nomodified nomousef nomousehide nonumber noopendevice nopi nopreviewwindow nopvw norelativenumber norestorescreen nori norl noro noru nosb noscb noscs nosft noshelltemp noshortname noshowfulltag noshowmode nosm nosmartindent nosmd nosol nosplitbelow nospr nossl nostartofline noswapfile nota notagrelative notbi notbs noterse notextmode notgst notimeout noto notr nottybuiltin notx noundofile novisualbell nowarn noweirdinvert nowfw nowildignorecase nowinfixheight nowiv nowrap nowrite nowritebackup
|
||||
syn keyword vimOption contained noai noaltkeymap noar noarabicshape noautochdir noautowrite noawa noballoonevalterm nobin nobl nobri noci nocompatible nocp nocscopetag nocst nocul nocursorline nodg noea noedcompatible noemoji noequalalways noet noexrc nofileignorecase nofk nofs nogdefault nohidden nohkmapp nohlsearch noignorecase noimcmdline noincsearch noinsertmode nojs nolazyredraw nolisp nolnr nolpl nolz nomacatsui nomh nomod nomodifiable nomore nomousefocus nonu noodev nopaste nopreserveindent noprompt noreadonly noremap norevins norightleft nornu nors noruler nosc noscrollbind nosecure noshellslash noshiftround noshowcmd noshowmatch nosi nosmartcase nosmarttab nosn nospell nosplitright nosr nosta nostmp noswf notagbsearch notagstack notbidi notermbidi notextauto notf notildeop notitle notop nottimeout nottyfast noudf novb nowa nowb nowfh nowic nowildmenu nowinfixwidth nowmnu nowrapscan nowriteany nows
|
||||
syn keyword vimOption contained noakm noanti noarab noari noautoindent noautowriteall nobackup nobeval nobinary nobomb nobuflisted nocin noconfirm nocrb nocscopeverbose nocsverb nocursorbind nodeco nodiff noeb noek noendofline noerrorbells noex nofen nofixendofline nofkmap nofsync noguipty nohk nohkp noic noim noimd noinf nois nolangnoremap nolbr
|
||||
syn keyword vimOption contained noacd noallowrevins noantialias noarabic noarshape noautoread noaw noballooneval nobevalterm nobk nobreakindent nocf nocindent nocopyindent nocscoperelative nocsre nocuc nocursorcolumn nodelcombine nodigraph noed noemo noeol noesckeys noexpandtab nofic nofixeol nofoldenable nogd nohid nohkmap nohls noicon noimc noimdisable noinfercase nojoinspaces nolangremap nolinebreak nolnr nolrm noma nomagic noml nomod nomodelineexpr nomodified nomousef nomousehide nonumber noopendevice nopi nopreviewwindow nopvw norelativenumber norestorescreen nori norl noro noru nosb noscb noscs nosft noshelltemp noshortname noshowfulltag noshowmode nosm nosmartindent nosmd nosol nosplitbelow nospr nossl nostartofline noswapfile nota notagrelative notbi notbs noterse notextmode notgst notimeout noto notr nottybuiltin notx noundofile novisualbell nowarn noweirdinvert nowfw nowildignorecase nowinfixheight nowiv nowrap nowrite nowritebackup
|
||||
syn keyword vimOption contained noai noaltkeymap noar noarabicshape noautochdir noautowrite noawa noballoonevalterm nobin nobl nobri noci nocompatible nocp nocscopetag nocst nocul nocursorline nodg noea noedcompatible noemoji noequalalways noet noexrc nofileignorecase nofk nofs nogdefault nohidden nohkmapp nohlsearch noignorecase noimcmdline noincsearch noinsertmode nojs nolazyredraw nolisp noloadplugins nolz nomacatsui nomh nomle nomodeline nomodifiable nomore nomousefocus nonu noodev nopaste nopreserveindent noprompt noreadonly noremap norevins norightleft nornu nors noruler nosc noscrollbind nosecure noshellslash noshiftround noshowcmd noshowmatch nosi nosmartcase nosmarttab nosn nospell nosplitright nosr nosta nostmp noswf notagbsearch notagstack notbidi notermbidi notextauto notf notildeop notitle notop nottimeout nottyfast noudf novb nowa nowb nowfh nowic nowildmenu nowinfixwidth nowmnu nowrapscan nowriteany nows
|
||||
syn keyword vimOption contained noakm noanti noarab noari noautoindent noautowriteall nobackup nobeval nobinary nobomb nobuflisted nocin noconfirm nocrb nocscopeverbose nocsverb nocursorbind nodeco nodiff noeb noek noendofline noerrorbells noex nofen nofixendofline nofkmap nofsync noguipty nohk nohkp noic noim noimd noinf nois nolangnoremap nolbr nolist nolpl
|
||||
|
||||
" vimOptions: These are the invertible variants {{{2
|
||||
syn keyword vimOption contained invacd invallowrevins invantialias invarabic invarshape invautoread invaw invballooneval invbevalterm invbk invbreakindent invcf invcindent invcopyindent invcscoperelative invcsre invcuc invcursorcolumn invdelcombine invdigraph inved invemo inveol invesckeys invexpandtab invfic invfixeol invfoldenable invgd invhid invhkmap invhls invicon invimc invimdisable invinfercase invjoinspaces invlangremap invlinebreak invlist invloadplugins invlrm invma invmagic invml invmodeline invmodified invmousef invmousehide invnumber invopendevice invpi invpreviewwindow invpvw invrelativenumber invrestorescreen invri invrl invro invru invsb invscb invscs invsft invshelltemp invshortname invshowfulltag invshowmode invsm invsmartindent invsmd invsol invsplitbelow invspr invssl invstartofline invswapfile invta invtagrelative invtbi invtbs invterse invtextmode invtgst invtimeout invto invtr invttybuiltin invtx invundofile invvisualbell invwarn invweirdinvert invwfw invwildignorecase invwinfixheight invwiv invwrap invwrite invwritebackup
|
||||
syn keyword vimOption contained invai invaltkeymap invar invarabicshape invautochdir invautowrite invawa invballoonevalterm invbin invbl invbri invci invcompatible invcp invcscopetag invcst invcul invcursorline invdg invea invedcompatible invemoji invequalalways invet invexrc invfileignorecase invfk invfs invgdefault invhidden invhkmapp invhlsearch invignorecase invimcmdline invincsearch invinsertmode invjs invlazyredraw invlisp invlnr invlpl invlz invmacatsui invmh invmod invmodifiable invmore invmousefocus invnu invodev invpaste invpreserveindent invprompt invreadonly invremap invrevins invrightleft invrnu invrs invruler invsc invscrollbind invsecure invshellslash invshiftround invshowcmd invshowmatch invsi invsmartcase invsmarttab invsn invspell invsplitright invsr invsta invstmp invswf invtagbsearch invtagstack invtbidi invtermbidi invtextauto invtf invtildeop invtitle invtop invttimeout invttyfast invudf invvb invwa invwb invwfh invwic invwildmenu invwinfixwidth invwmnu invwrapscan invwriteany invws
|
||||
syn keyword vimOption contained invakm invanti invarab invari invautoindent invautowriteall invbackup invbeval invbinary invbomb invbuflisted invcin invconfirm invcrb invcscopeverbose invcsverb invcursorbind invdeco invdiff inveb invek invendofline inverrorbells invex invfen invfixendofline invfkmap invfsync invguipty invhk invhkp invic invim invimd invinf invis invlangnoremap invlbr
|
||||
syn keyword vimOption contained invacd invallowrevins invantialias invarabic invarshape invautoread invaw invballooneval invbevalterm invbk invbreakindent invcf invcindent invcopyindent invcscoperelative invcsre invcuc invcursorcolumn invdelcombine invdigraph inved invemo inveol invesckeys invexpandtab invfic invfixeol invfoldenable invgd invhid invhkmap invhls invicon invimc invimdisable invinfercase invjoinspaces invlangremap invlinebreak invlnr invlrm invma invmagic invml invmod invmodelineexpr invmodified invmousef invmousehide invnumber invopendevice invpi invpreviewwindow invpvw invrelativenumber invrestorescreen invri invrl invro invru invsb invscb invscs invsft invshelltemp invshortname invshowfulltag invshowmode invsm invsmartindent invsmd invsol invsplitbelow invspr invssl invstartofline invswapfile invta invtagrelative invtbi invtbs invterse invtextmode invtgst invtimeout invto invtr invttybuiltin invtx invundofile invvisualbell invwarn invweirdinvert invwfw invwildignorecase invwinfixheight invwiv invwrap invwrite invwritebackup
|
||||
syn keyword vimOption contained invai invaltkeymap invar invarabicshape invautochdir invautowrite invawa invballoonevalterm invbin invbl invbri invci invcompatible invcp invcscopetag invcst invcul invcursorline invdg invea invedcompatible invemoji invequalalways invet invexrc invfileignorecase invfk invfs invgdefault invhidden invhkmapp invhlsearch invignorecase invimcmdline invincsearch invinsertmode invjs invlazyredraw invlisp invloadplugins invlz invmacatsui invmh invmle invmodeline invmodifiable invmore invmousefocus invnu invodev invpaste invpreserveindent invprompt invreadonly invremap invrevins invrightleft invrnu invrs invruler invsc invscrollbind invsecure invshellslash invshiftround invshowcmd invshowmatch invsi invsmartcase invsmarttab invsn invspell invsplitright invsr invsta invstmp invswf invtagbsearch invtagstack invtbidi invtermbidi invtextauto invtf invtildeop invtitle invtop invttimeout invttyfast invudf invvb invwa invwb invwfh invwic invwildmenu invwinfixwidth invwmnu invwrapscan invwriteany invws
|
||||
syn keyword vimOption contained invakm invanti invarab invari invautoindent invautowriteall invbackup invbeval invbinary invbomb invbuflisted invcin invconfirm invcrb invcscopeverbose invcsverb invcursorbind invdeco invdiff inveb invek invendofline inverrorbells invex invfen invfixendofline invfkmap invfsync invguipty invhk invhkp invic invim invimd invinf invis invlangnoremap invlbr invlist invlpl
|
||||
|
||||
" termcap codes (which can also be set) {{{2
|
||||
syn keyword vimOption contained t_8b t_AB t_al t_bc t_BE t_ce t_cl t_Co t_Cs t_CV t_db t_DL t_EI t_F2 t_F4 t_F6 t_F8 t_fs t_IE t_k1 t_k2 t_K3 t_K4 t_K5 t_K6 t_K7 t_k8 t_K8 t_k9 t_K9 t_KA t_kb t_kB t_KB t_KC t_kd t_kD t_KD t_ke t_KE t_KF t_KG t_kh t_KH t_kI t_KI t_KJ t_KK t_kl t_KL t_kN t_kP t_kr t_ks t_ku t_le t_mb t_md t_me t_mr t_ms t_nd t_op t_PE t_PS t_RB t_RC t_RF t_RI t_RS t_RV t_Sb t_SC t_se t_Sf t_SH t_SI t_so t_sr t_SR t_te t_Te t_ti t_ts t_Ts t_u7 t_ue t_us t_ut t_vb t_ve t_vi t_vs t_VS t_WP t_WS t_xn t_xs t_ZH t_ZR
|
||||
syn keyword vimOption contained t_8f t_AF t_AL t_BD t_cd t_Ce t_cm t_cs t_CS t_da t_dl t_EC t_F1 t_F3 t_F5 t_F7 t_F9 t_GP t_IS t_K1 t_k3 t_k4 t_k5 t_k6 t_k7
|
||||
syn keyword vimOption contained t_8b t_AB t_al t_bc t_BE t_ce t_cl t_Co t_Cs t_CV t_db t_DL t_EI t_F2 t_F4 t_F6 t_F8 t_fs t_IE t_k1 t_k2 t_K3 t_K4 t_K5 t_K6 t_K7 t_K8 t_K9 t_kb t_KB t_KC t_kd t_kD t_KD t_ke t_KE t_KF t_KG t_kh t_KH t_kI t_KI t_KJ t_KK t_kl t_KL t_kN t_kP t_kr t_ks t_ku t_le t_mb t_md t_me t_mr t_ms t_nd t_op t_PE t_PS t_RB t_RC t_RF t_Ri t_RI t_RS t_RT t_RV t_Sb t_SC t_se t_Sf t_SH t_Si t_SI t_so t_sr t_SR t_ST t_te t_Te t_ti t_ts t_Ts t_u7 t_ue t_us t_ut t_vb t_ve t_vi t_vs t_VS t_WP t_WS t_xn t_xs t_ZH t_ZR
|
||||
syn keyword vimOption contained t_8f t_AF t_AL t_BD t_cd t_Ce t_cm t_cs t_CS t_da t_dl t_EC t_F1 t_F3 t_F5 t_F7 t_F9 t_GP t_IS t_K1 t_k3 t_k4 t_k5 t_k6 t_k7 t_k8 t_k9 t_KA t_kB
|
||||
syn match vimOption contained "t_%1"
|
||||
syn match vimOption contained "t_#2"
|
||||
syn match vimOption contained "t_#4"
|
||||
@@ -66,7 +66,8 @@ syn keyword vimErrSetting contained bioskey biosk conskey consk autoprint beauti
|
||||
|
||||
" AutoCmd 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 CmdlineChanged CmdlineEnter CmdlineLeave CmdUndefined CmdwinEnter CmdwinLeave ColorScheme ColorSchemePre CompleteDone CursorHold CursorHoldI CursorMoved CursorMovedI DirChanged EncodingChanged ExitPre FileAppendCmd FileAppendPost FileAppendPre FileChangedRO FileChangedShell FileChangedShellPost FileEncoding FileReadCmd FileReadPost FileReadPre FileType FileWriteCmd FileWritePost FileWritePre FilterReadPost FilterReadPre FilterWritePost FilterWritePre FocusGained FocusLost FuncUndefined GUIEnter GUIFailed InsertChange InsertCharPre InsertEnter InsertLeave MenuPopup OptionSet QuickFixCmdPost QuickFixCmdPre QuitPre RemoteReply SessionLoadPost ShellCmdPost ShellFilterPost SourceCmd SourcePre SpellFileMissing StdinReadPost StdinReadPre SwapExists Syntax TabClosed TabEnter TabLeave TabNew TermChanged TerminalOpen TermResponse TextChanged TextChangedI TextChangedP TextYankPost User VimEnter VimLeave VimLeavePre VimResized WinEnter WinLeave WinNew
|
||||
syn keyword vimAutoEvent contained BufAdd BufDelete BufFilePost BufHidden BufLeave BufNew BufNewFile BufRead BufReadCmd BufReadPost BufReadPre BufUnload BufWinEnter BufWinLeave BufWipeout BufWrite BufWriteCmd BufWritePost BufWritePre CmdlineChanged CmdlineEnter CmdlineLeave CmdUndefined CmdwinEnter CmdwinLeave ColorScheme ColorSchemePre CompleteChanged CompleteDone CursorHold CursorHoldI CursorMoved CursorMovedI DiffUpdated DirChanged EncodingChanged ExitPre FileAppendCmd FileAppendPost FileAppendPre FileChangedRO FileChangedShell FileChangedShellPost FileEncoding FileReadCmd FileReadPost FileReadPre FileType FileWriteCmd FileWritePost FileWritePre FilterReadPost FilterReadPre FilterWritePost FilterWritePre FocusGained FocusLost FuncUndefined GUIEnter GUIFailed InsertChange InsertCharPre InsertEnter InsertLeave MenuPopup OptionSet QuickFixCmdPost QuickFixCmdPre QuitPre RemoteReply SessionLoadPost ShellCmdPost ShellFilterPost SourceCmd SourcePost SourcePre SpellFileMissing StdinReadPost StdinReadPre SwapExists Syntax TabClosed TabEnter TabLeave TabNew TermChanged TerminalOpen TermResponse TextChanged TextChangedI TextChangedP TextYankPost User VimEnter VimLeave VimLeavePre VimResized WinEnter WinLeave WinNew
|
||||
syn keyword vimAutoEvent contained BufCreate BufEnter BufFilePre
|
||||
|
||||
" 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
|
||||
@@ -77,10 +78,11 @@ syn match vimHLGroup contained "Conceal"
|
||||
syn case match
|
||||
|
||||
" Function Names {{{2
|
||||
syn keyword vimFuncName contained abs append arglistid assert_equal assert_false assert_notmatch atan2 browsedir bufname byte2line ceil ch_close ch_getbufnr ch_logfile ch_sendexpr cindent complete_add cos cursor deletebufline empty executable exp filereadable findfile fnameescape foldlevel funcref getbufinfo getchar getcmdpos getcurpos getfsize getline getpos gettabinfo getwinpos glob has_key histdel hlID index inputrestore invert items job_start js_decode keys line log maparg matchaddpos matchlist min nextnonblank perleval prompt_addtext pumvisible range reltime remote_foreground remote_startserver resolve screenchar searchdecl server2client setcharsearch setloclist setreg sha256 sin spellbadword str2float strdisplaywidth string strtrans synconcealed synstack tabpagenr tan term_dumpload term_getattr term_getscrolled term_gettty term_setansicolors term_start test_feedinput test_null_dict test_null_string timer_pause tolower trunc undotree virtcol winbufnr win_getid win_id2tabwin winnr winsaveview wordcount
|
||||
syn keyword vimFuncName contained acos appendbufline argv assert_equalfile assert_inrange assert_report balloon_show bufexists bufnr byteidx changenr ch_close_in ch_getjob ch_open ch_sendraw clearmatches complete_check cosh debugbreak did_filetype escape execute expand filewritable float2nr fnamemodify foldtext function getbufline getcharmod getcmdtype getcwd getftime getloclist getqflist gettabvar getwinposx glob2regpat haslocaldir histget hostname input inputsave isdirectory job_getchannel job_status js_encode len line2byte log10 mapcheck matcharg matchstr mkdir nr2char pow prompt_setcallback py3eval readfile reltimefloat remote_peek remove reverse screencol searchpair serverlist setcmdpos setmatches settabvar shellescape sinh spellsuggest str2nr strftime strlen strwidth synID system tabpagewinnr tanh term_dumpwrite term_getcursor term_getsize term_list term_setkill term_wait test_garbagecollect_now test_null_job test_override timer_start toupper type uniq visualmode wincol win_gotoid win_id2win winrestcmd win_screenpos writefile
|
||||
syn keyword vimFuncName contained add argc asin assert_exception assert_match assert_true balloon_split buflisted bufwinid byteidxcomp char2nr ch_evalexpr ch_info ch_read ch_setoptions col confirm count deepcopy diff_filler eval exepath extend filter floor foldclosed foldtextresult garbagecollect getbufvar getcharsearch getcmdwintype getfontname getftype getmatches getreg gettabwinvar getwinposy globpath hasmapto histnr iconv inputdialog inputsecret islocked job_info job_stop json_decode libcall lispindent luaeval match matchdelete matchstrpos mode or prevnonblank prompt_setinterrupt pyeval reg_executing reltimestr remote_read rename round screenrow searchpairpos setbufline setfperm setpos settabwinvar shiftwidth sort split strcharpart strgetchar strpart submatch synIDattr systemlist tagfiles tempname term_getaltscreen term_getjob term_getstatus term_scrape term_setrestore test_alloc_fail test_ignore_error test_null_list test_settime timer_stop tr undofile values wildmenumode win_findbuf winheight winline winrestview winwidth xor
|
||||
syn keyword vimFuncName contained and argidx assert_beeps assert_fails assert_notequal atan browse bufloaded bufwinnr call ch_canread ch_evalraw ch_log ch_readraw ch_status complete copy cscope_connection delete diff_hlID eventhandler exists feedkeys finddir fmod foldclosedend foreground get getchangelist getcmdline getcompletion getfperm getjumplist getpid getregtype getwininfo getwinvar has histadd hlexists indent inputlist insert isnan job_setoptions join json_encode libcallnr localtime map matchadd matchend max mzeval pathshorten printf prompt_setprompt pyxeval reg_recording remote_expr remote_send repeat screenattr search searchpos setbufvar setline setqflist setwinvar simplify soundfold sqrt strchars stridx strridx substitute synIDtrans tabpagebuflist taglist term_dumpdiff term_getansicolors term_getline term_gettitle term_sendkeys term_setsize test_autochdir test_null_channel test_null_partial timer_info timer_stopall trim
|
||||
syn keyword vimFuncName contained abs appendbufline asin assert_fails assert_notmatch balloon_gettext bufadd bufname byteidx char2nr ch_evalexpr ch_log ch_readraw cindent complete_check cosh deepcopy diff_hlID eventhandler exp filereadable float2nr foldclosed foreground getbufinfo getcharmod getcmdwintype getfontname getjumplist getpos gettabvar getwinposx globpath histadd hlID input inputsecret islocked job_setoptions js_decode len lispindent localtime maparg matcharg matchstrpos mzeval perleval popup_create popup_getpos popup_setoptions printf prop_clear prop_type_change py3eval readfile reltimestr remote_send resolve screenchar screenstring searchpos setcharsearch setloclist settabvar sha256 sign_getdefined sign_placelist simplify sound_clear sound_stop sqrt strcharpart strgetchar strpart submatch synconcealed synstack tabpagenr tan term_dumpload term_getattr term_getscrolled term_gettty term_setansicolors term_start test_feedinput test_ignore_error test_null_job test_option_not_set test_setmouse timer_start toupper type values winbufnr win_getid win_id2win winrestcmd winwidth
|
||||
syn keyword vimFuncName contained acos argc assert_beeps assert_false assert_report balloon_show bufexists bufnr byteidxcomp ch_canread ch_evalraw ch_logfile ch_sendexpr clearmatches complete_info count delete empty executable expand filewritable floor foldclosedend funcref getbufline getcharsearch getcompletion getfperm getline getqflist gettabwinvar getwinposy has histdel hostname inputdialog insert isnan job_start js_encode libcall list2str log mapcheck matchdelete max nextnonblank popup_atcursor popup_dialog popup_hide popup_settext prompt_setcallback prop_find prop_type_delete pyeval reg_executing remote_expr remote_startserver reverse screenchars search server2client setcmdpos setmatches settabwinvar shellescape sign_getplaced sign_undefine sin soundfold spellbadword str2float strchars stridx strridx substitute synID system tabpagewinnr tanh term_dumpwrite term_getcursor term_getsize term_list term_setkill term_wait test_garbagecollect_now test_null_blob test_null_list test_override test_settime timer_stop tr undofile virtcol wincol win_gotoid winlayout winrestview wordcount
|
||||
syn keyword vimFuncName contained add argidx assert_equal assert_inrange assert_true balloon_split buflisted bufwinid call ch_close ch_getbufnr ch_open ch_sendraw col confirm cscope_connection deletebufline environ execute expandcmd filter fmod foldlevel function getbufvar getcmdline getcurpos getfsize getloclist getreg gettagstack getwinvar has_key histget iconv inputlist invert items job_status json_decode libcallnr listener_add log10 match matchend min nr2char popup_beval popup_filter_menu popup_menu popup_show prompt_setinterrupt prop_list prop_type_get pyxeval reg_recording remote_foreground remove round screencol searchdecl serverlist setenv setpos settagstack shiftwidth sign_jump sign_unplace sinh sound_playevent spellsuggest str2list strdisplaywidth string strtrans swapinfo synIDattr systemlist tagfiles tempname term_getaltscreen term_getjob term_getstatus term_scrape term_setrestore test_alloc_fail test_garbagecollect_soon test_null_channel test_null_partial test_refcount timer_info timer_stopall trim undotree visualmode win_execute winheight winline winsaveview writefile
|
||||
syn keyword vimFuncName contained and arglistid assert_equalfile assert_match atan browse bufload bufwinnr ceil ch_close_in ch_getjob ch_read ch_setoptions complete copy cursor did_filetype escape exepath extend finddir fnameescape foldtext garbagecollect getchangelist getcmdpos getcwd getftime getmatches getregtype getwininfo glob haslocaldir histnr indent inputrestore isdirectory job_getchannel job_stop json_encode line listener_flush luaeval matchadd matchlist mkdir or popup_clear popup_filter_yesno popup_move pow prompt_setprompt prop_remove prop_type_list range reltime remote_peek rename rubyeval screenpos searchpair setbufline setfperm setqflist setwinvar sign_define sign_place sign_unplacelist sort sound_playfile split str2nr strftime strlen strwidth swapname synIDtrans tabpagebuflist taglist term_dumpdiff term_getansicolors term_getline term_gettitle term_sendkeys term_setsize test_autochdir test_getvalue test_null_dict test_null_string test_scrollbar timer_pause tolower trunc uniq wildmenumode win_findbuf win_id2tabwin winnr win_screenpos xor
|
||||
syn keyword vimFuncName contained append argv assert_exception assert_notequal atan2 browsedir bufloaded byte2line changenr chdir ch_info ch_readblob ch_status complete_add cos debugbreak diff_filler eval exists feedkeys findfile fnamemodify foldtextresult get getchar getcmdtype getenv getftype getpid gettabinfo getwinpos glob2regpat hasmapto hlexists index inputsave isinf job_info join keys line2byte listener_remove map matchaddpos matchstr mode pathshorten popup_close popup_getoptions popup_notification prevnonblank prop_add prop_type_add pumvisible readdir reltimefloat remote_read repeat screenattr screenrow searchpairpos setbufvar setline setreg
|
||||
|
||||
"--- syntax here and above generated by mkvimvim ---
|
||||
" Special Vim Highlighting (not automatic) {{{1
|
||||
@@ -393,9 +395,9 @@ syn case match
|
||||
" Maps {{{2
|
||||
" ====
|
||||
syn match vimMap "\<map\>!\=\ze\s*[^(]" skipwhite nextgroup=vimMapMod,vimMapLhs
|
||||
syn keyword vimMap cm[ap] cno[remap] im[ap] ino[remap] lm[ap] ln[oremap] nm[ap] nn[oremap] no[remap] om[ap] ono[remap] smap snor[emap] vm[ap] vn[oremap] xm[ap] xn[oremap] skipwhite nextgroup=vimMapBang,vimMapMod,vimMapLhs
|
||||
syn keyword vimMap cm[ap] cno[remap] im[ap] ino[remap] lm[ap] ln[oremap] nm[ap] nn[oremap] no[remap] om[ap] ono[remap] smap snor[emap] tno[remap] tm[ap] vm[ap] vn[oremap] xm[ap] xn[oremap] skipwhite nextgroup=vimMapBang,vimMapMod,vimMapLhs
|
||||
syn keyword vimMap mapc[lear] smapc[lear]
|
||||
syn keyword vimUnmap cu[nmap] iu[nmap] lu[nmap] nun[map] ou[nmap] sunm[ap] unm[ap] unm[ap] vu[nmap] xu[nmap] skipwhite nextgroup=vimMapBang,vimMapMod,vimMapLhs
|
||||
syn keyword vimUnmap cu[nmap] iu[nmap] lu[nmap] nun[map] ou[nmap] sunm[ap] tunma[p] unm[ap] unm[ap] vu[nmap] xu[nmap] skipwhite nextgroup=vimMapBang,vimMapMod,vimMapLhs
|
||||
syn match vimMapLhs contained "\S\+" contains=vimNotation,vimCtrlChar skipwhite nextgroup=vimMapRhs
|
||||
syn match vimMapBang contained "!" skipwhite nextgroup=vimMapMod,vimMapLhs
|
||||
syn match vimMapMod contained "\%#=1\c<\(buffer\|expr\|\(local\)\=leader\|nowait\|plug\|script\|sid\|unique\|silent\)\+>" contains=vimMapModKey,vimMapModErr skipwhite nextgroup=vimMapMod,vimMapLhs
|
||||
|
||||
14
runtime/syntax/vuejs.vim
Normal file
14
runtime/syntax/vuejs.vim
Normal file
@@ -0,0 +1,14 @@
|
||||
" Vim syntax file
|
||||
" Language: Vue.js Single File Component
|
||||
" Maintainer: Ralph Giles <giles@thaumas.net>
|
||||
" URL: https://vuejs.org/v2/guide/single-file-components.html
|
||||
" Last Change: 2019 Jul 8
|
||||
|
||||
" Quit if a syntax file was already loaded.
|
||||
if exists("b:current_syntax")
|
||||
finish
|
||||
endif
|
||||
|
||||
" We have a collection of html, css and javascript wrapped in
|
||||
" tags. The default HTML syntax highlight works well enough.
|
||||
runtime! syntax/html.vim
|
||||
@@ -24,7 +24,7 @@ Translation
|
||||
-----------
|
||||
|
||||
The tutor.xx and tutor.xx.utf-8 files are translated files (where xx is the
|
||||
langage code). The encoding of tutor.xx might be latin1 or other traditional
|
||||
language code). The encoding of tutor.xx might be latin1 or other traditional
|
||||
encoding. If you don't need a translation with such traditional encoding,
|
||||
you just need to prepare the tutor.xx.utf-8 file.
|
||||
If you need another encoding, you can also prepare a file named tutor.xx.enc
|
||||
|
||||
@@ -730,11 +730,13 @@ OBJ = \
|
||||
$(OUTDIR)/getchar.o \
|
||||
$(OUTDIR)/hardcopy.o \
|
||||
$(OUTDIR)/hashtab.o \
|
||||
$(OUTDIR)/highlight.o \
|
||||
$(OUTDIR)/indent.o \
|
||||
$(OUTDIR)/insexpand.o \
|
||||
$(OUTDIR)/json.o \
|
||||
$(OUTDIR)/list.o \
|
||||
$(OUTDIR)/main.o \
|
||||
$(OUTDIR)/map.o \
|
||||
$(OUTDIR)/mark.o \
|
||||
$(OUTDIR)/memfile.o \
|
||||
$(OUTDIR)/memline.o \
|
||||
@@ -752,10 +754,12 @@ OBJ = \
|
||||
$(OUTDIR)/pathdef.o \
|
||||
$(OUTDIR)/popupmnu.o \
|
||||
$(OUTDIR)/popupwin.o \
|
||||
$(OUTDIR)/profiler.o \
|
||||
$(OUTDIR)/quickfix.o \
|
||||
$(OUTDIR)/regexp.o \
|
||||
$(OUTDIR)/screen.o \
|
||||
$(OUTDIR)/search.o \
|
||||
$(OUTDIR)/session.o \
|
||||
$(OUTDIR)/sha256.o \
|
||||
$(OUTDIR)/sign.o \
|
||||
$(OUTDIR)/spell.o \
|
||||
@@ -763,12 +767,14 @@ OBJ = \
|
||||
$(OUTDIR)/syntax.o \
|
||||
$(OUTDIR)/tag.o \
|
||||
$(OUTDIR)/term.o \
|
||||
$(OUTDIR)/testing.o \
|
||||
$(OUTDIR)/textprop.o \
|
||||
$(OUTDIR)/ui.o \
|
||||
$(OUTDIR)/undo.o \
|
||||
$(OUTDIR)/usercmd.o \
|
||||
$(OUTDIR)/userfunc.o \
|
||||
$(OUTDIR)/version.o \
|
||||
$(OUTDIR)/viminfo.o \
|
||||
$(OUTDIR)/winclip.o \
|
||||
$(OUTDIR)/window.o
|
||||
|
||||
|
||||
@@ -1,301 +0,0 @@
|
||||
#
|
||||
# Makefile for VIM, using DICE 3
|
||||
#
|
||||
|
||||
#>>>>> choose options:
|
||||
### See feature.h for a list of optionals.
|
||||
### Any other defines can be included here.
|
||||
DEFINES = -DHAVE_TGETENT -DUP_BC_PC_EXTERN -DOSPEED_EXTERN
|
||||
|
||||
#>>>>> if HAVE_TGETENT is defined o/termlib.o has to be used
|
||||
TERMLIB = o/termlib.o
|
||||
#TERMLIB =
|
||||
|
||||
#>>>>> end of choices
|
||||
###########################################################################
|
||||
|
||||
CFLAGS = -c -DAMIGA -Iproto $(DEFINES)
|
||||
|
||||
SYMS = vim.syms
|
||||
PRE = -H${SYMS}=vim.h
|
||||
LIBS = -la
|
||||
CC = dcc
|
||||
LD = dcc
|
||||
|
||||
.c.o:
|
||||
${CC} ${PRE} ${CFLAGS} $< -o $@
|
||||
|
||||
SRC = \
|
||||
arabic.c \
|
||||
autocmd.c \
|
||||
blowfish.c \
|
||||
buffer.c \
|
||||
change.c \
|
||||
charset.c \
|
||||
crypt.c \
|
||||
crypt_zip.c \
|
||||
debugger.c \
|
||||
dict.c \
|
||||
diff.c \
|
||||
digraph.c \
|
||||
edit.c \
|
||||
eval.c \
|
||||
evalfunc.c \
|
||||
ex_cmds.c \
|
||||
ex_cmds2.c \
|
||||
ex_docmd.c \
|
||||
ex_eval.c \
|
||||
ex_getln.c \
|
||||
fileio.c \
|
||||
findfile.c \
|
||||
fold.c \
|
||||
getchar.c \
|
||||
hardcopy.c \
|
||||
hashtab.c \
|
||||
indent.c \
|
||||
insexpand.c \
|
||||
json.c \
|
||||
list.c \
|
||||
main.c \
|
||||
mark.c \
|
||||
memfile.c \
|
||||
memline.c \
|
||||
menu.c \
|
||||
message.c \
|
||||
misc1.c \
|
||||
misc2.c \
|
||||
move.c \
|
||||
mbyte.c \
|
||||
normal.c \
|
||||
ops.c \
|
||||
option.c \
|
||||
os_amiga.c \
|
||||
popupmnu.c \
|
||||
quickfix.c \
|
||||
regexp.c \
|
||||
screen.c \
|
||||
search.c \
|
||||
sha256.c \
|
||||
sign.c \
|
||||
spell.c \
|
||||
spellfile.c \
|
||||
syntax.c \
|
||||
tag.c \
|
||||
term.c \
|
||||
ui.c \
|
||||
undo.c \
|
||||
usercmd.c \
|
||||
userfunc.c \
|
||||
window.c \
|
||||
version.c
|
||||
|
||||
OBJ = o/arabic.o \
|
||||
o/autocmd.o \
|
||||
o/blowfish.o \
|
||||
o/buffer.o \
|
||||
o/change.o \
|
||||
o/charset.o \
|
||||
o/crypt.o \
|
||||
o/crypt_zip.o \
|
||||
o/debugger.o \
|
||||
o/dict.o \
|
||||
o/diff.o \
|
||||
o/digraph.o \
|
||||
o/edit.o \
|
||||
o/eval.o \
|
||||
o/evalfunc.o \
|
||||
o/ex_cmds.o \
|
||||
o/ex_cmds2.o \
|
||||
o/ex_docmd.o \
|
||||
o/ex_eval.o \
|
||||
o/ex_getln.o \
|
||||
o/fileio.o \
|
||||
o/findfile.o \
|
||||
o/fold.o \
|
||||
o/getchar.o \
|
||||
o/hardcopy.o \
|
||||
o/hashtab.o \
|
||||
o/indent.o \
|
||||
o/insexpand.o \
|
||||
o/json.o \
|
||||
o/list.o \
|
||||
o/main.o \
|
||||
o/mark.o \
|
||||
o/memfile.o \
|
||||
o/memline.o \
|
||||
o/menu.o \
|
||||
o/message.o \
|
||||
o/misc1.o \
|
||||
o/misc2.o \
|
||||
o/move.o \
|
||||
o/mbyte.o \
|
||||
o/normal.o \
|
||||
o/ops.o \
|
||||
o/option.o \
|
||||
o/os_amiga.o \
|
||||
o/popupmnu.o \
|
||||
o/quickfix.o \
|
||||
o/regexp.o \
|
||||
o/screen.o \
|
||||
o/search.o \
|
||||
o/sha256.o \
|
||||
o/sign.o \
|
||||
o/spell.o \
|
||||
o/spellfile.o \
|
||||
o/syntax.o \
|
||||
o/tag.o \
|
||||
o/term.o \
|
||||
o/ui.o \
|
||||
o/undo.o \
|
||||
o/usercmd.o \
|
||||
o/userfunc.o \
|
||||
o/window.o \
|
||||
$(TERMLIB)
|
||||
|
||||
Vim: $(OBJ) version.c version.h
|
||||
${CC} $(CFLAGS) version.c -o o/version.o
|
||||
${LD} -o Vim $(OBJ) o/version.o $(LIBS)
|
||||
|
||||
debug: $(OBJ) version.c version.h
|
||||
${CC} $(CFLAGS) version.c -o o/version.o
|
||||
${LD} -s -o Vim $(OBJ) o/version.o $(LIBS)
|
||||
|
||||
tags:
|
||||
csh -c ctags $(SRC) *.h
|
||||
|
||||
clean:
|
||||
delete o/*.o Vim $(SYMS)
|
||||
|
||||
$(SYMS) : vim.h globals.h keymap.h macros.h ascii.h term.h os_amiga.h structs.h
|
||||
delete $(SYMS)
|
||||
|
||||
###########################################################################
|
||||
|
||||
o/arabic.o: arabic.c $(SYMS)
|
||||
|
||||
o/autocmd.o: autocmd.c $(SYMS)
|
||||
|
||||
o/blowfish.o: blowfish.c $(SYMS)
|
||||
|
||||
o/buffer.o: buffer.c $(SYMS)
|
||||
|
||||
o/change.o: change.c $(SYMS)
|
||||
|
||||
o/charset.o: charset.c $(SYMS)
|
||||
|
||||
o/crypt.o: crypt.c $(SYMS)
|
||||
|
||||
o/crypt_zip.o: crypt_zip.c $(SYMS)
|
||||
|
||||
o/debugger.o: debugger.c $(SYMS)
|
||||
|
||||
o/dict.o: dict.c $(SYMS)
|
||||
|
||||
o/diff.o: diff.c $(SYMS)
|
||||
|
||||
o/digraph.o: digraph.c $(SYMS)
|
||||
|
||||
o/edit.o: edit.c $(SYMS)
|
||||
|
||||
o/eval.o: eval.c $(SYMS)
|
||||
|
||||
o/evalfunc.o: evalfunc.c $(SYMS)
|
||||
|
||||
o/ex_cmds.o: ex_cmds.c $(SYMS)
|
||||
|
||||
o/ex_cmds2.o: ex_cmds2.c $(SYMS)
|
||||
|
||||
o/ex_docmd.o: ex_docmd.c $(SYMS) ex_cmds.h
|
||||
|
||||
o/ex_eval.o: ex_eval.c $(SYMS) ex_cmds.h
|
||||
|
||||
o/ex_getln.o: ex_getln.c $(SYMS)
|
||||
|
||||
o/fileio.o: fileio.c $(SYMS)
|
||||
|
||||
o/findfile.o: findfile.c $(SYMS)
|
||||
|
||||
o/fold.o: fold.c $(SYMS)
|
||||
|
||||
o/getchar.o: getchar.c $(SYMS)
|
||||
|
||||
o/hardcopy.o: hardcopy.c $(SYMS)
|
||||
|
||||
o/hashtab.o: hashtab.c $(SYMS)
|
||||
|
||||
o/indent.o: indent.c $(SYMS)
|
||||
|
||||
o/insexpand.o: insexpand.c $(SYMS)
|
||||
|
||||
o/json.o: json.c $(SYMS)
|
||||
|
||||
o/list.o: list.c $(SYMS)
|
||||
|
||||
o/main.o: main.c $(SYMS)
|
||||
|
||||
o/mark.o: mark.c $(SYMS)
|
||||
|
||||
o/memfile.o: memfile.c $(SYMS)
|
||||
|
||||
o/memline.o: memline.c $(SYMS)
|
||||
|
||||
o/menu.o: menu.c $(SYMS)
|
||||
|
||||
o/message.o: message.c $(SYMS)
|
||||
|
||||
o/misc1.o: misc1.c $(SYMS)
|
||||
|
||||
o/misc2.o: misc2.c $(SYMS)
|
||||
|
||||
o/move.o: move.c $(SYMS)
|
||||
|
||||
o/mbyte.o: mbyte.c $(SYMS)
|
||||
|
||||
o/normal.o: normal.c $(SYMS)
|
||||
|
||||
o/ops.o: ops.c $(SYMS)
|
||||
|
||||
o/option.o: option.c $(SYMS)
|
||||
# Because of a bug in DC1 2.06.40, initialisation of unions does not
|
||||
# work correctly. dc1-21 is DC1 2.06.21 which does work.
|
||||
# rename dc1-21 dc1
|
||||
${CC} ${CFLAGS} option.c -o o/option.o
|
||||
# rename dc1 dc1-21
|
||||
|
||||
o/os_amiga.o: os_amiga.c $(SYMS) os_amiga.h
|
||||
|
||||
o/popupmnu.o: popupmnu.c $(SYMS)
|
||||
|
||||
o/quickfix.o: quickfix.c $(SYMS)
|
||||
|
||||
o/regexp.o: regexp.c $(SYMS) regexp.h
|
||||
|
||||
o/screen.o: screen.c $(SYMS)
|
||||
|
||||
o/search.o: search.c $(SYMS) regexp.h
|
||||
|
||||
o/sha256.o: sha256.c $(SYMS)
|
||||
|
||||
o/sign.o: sign.c $(SYMS)
|
||||
|
||||
o/spell.o: spell.c $(SYMS) spell.h
|
||||
|
||||
o/spellfile.o: spellfile.c $(SYMS) spell.h
|
||||
|
||||
o/syntax.o: syntax.c $(SYMS)
|
||||
|
||||
o/tag.o: tag.c $(SYMS)
|
||||
|
||||
o/term.o: term.c $(SYMS) term.h
|
||||
|
||||
o/termlib.o: termlib.c $(SYMS)
|
||||
|
||||
o/ui.o: ui.c $(SYMS)
|
||||
|
||||
o/undo.o: undo.c $(SYMS)
|
||||
|
||||
o/usercmd.o: usercmd.c $(SYMS)
|
||||
|
||||
o/userfunc.o: userfunc.c $(SYMS)
|
||||
|
||||
o/window.o: window.c $(SYMS)
|
||||
@@ -1,462 +0,0 @@
|
||||
#
|
||||
# Makefile for VIM on the Amiga, using Aztec/Manx C 5.0 or later
|
||||
#
|
||||
# NOTE: THIS IS OLD AND PROBABLY NO LONGER WORKS.
|
||||
#
|
||||
# Note: Not all dependencies are included. This was done to avoid having
|
||||
# to compile everything when a global variable or function is added.
|
||||
# Careful when changing a global struct or variable!
|
||||
#
|
||||
|
||||
#>>>>> choose options:
|
||||
|
||||
### See feature.h for a list of optionals.
|
||||
### Any other defines can be included here.
|
||||
DEFINES =
|
||||
|
||||
#>>>>> if HAVE_TGETENT is defined obj/termlib.o has to be used
|
||||
#TERMLIB = obj/termlib.o
|
||||
TERMLIB =
|
||||
|
||||
#>>>>> choose between debugging (-bs) or optimizing (-so)
|
||||
OPTIONS = -so
|
||||
#OPTIONS = -bs
|
||||
|
||||
#>>>>> end of choices
|
||||
###########################################################################
|
||||
|
||||
CFLAGS = $(OPTIONS) -wapruq -ps -qf -Iproto $(DEFINES) -DAMIGA
|
||||
|
||||
LIBS = -lc16
|
||||
SYMS = vim.syms
|
||||
CC = cc
|
||||
LN = ln
|
||||
LNFLAGS = +q
|
||||
SHELL = csh
|
||||
REN = $(SHELL) -c mv -f
|
||||
DEL = $(SHELL) -c rm -f
|
||||
|
||||
SRC = arabic.c \
|
||||
autocmd.c \
|
||||
blowfish.c \
|
||||
buffer.c \
|
||||
change.c \
|
||||
charset.c \
|
||||
crypt.c \
|
||||
crypt_zip.c \
|
||||
debugger.c \
|
||||
dict.c \
|
||||
diff.c \
|
||||
digraph.c \
|
||||
edit.c \
|
||||
eval.c \
|
||||
evalfunc.c \
|
||||
ex_cmds.c \
|
||||
ex_cmds2.c \
|
||||
ex_docmd.c \
|
||||
ex_eval.c \
|
||||
ex_getln.c \
|
||||
fileio.c \
|
||||
findfile.c \
|
||||
fold.c \
|
||||
getchar.c \
|
||||
hardcopy.c \
|
||||
hashtab.c \
|
||||
indent.c \
|
||||
insexpand.c \
|
||||
json.c \
|
||||
list.c \
|
||||
main.c \
|
||||
mark.c \
|
||||
memfile.c \
|
||||
memline.c \
|
||||
menu.c \
|
||||
message.c \
|
||||
misc1.c \
|
||||
misc2.c \
|
||||
move.c \
|
||||
mbyte.c \
|
||||
normal.c \
|
||||
ops.c \
|
||||
option.c \
|
||||
os_amiga.c \
|
||||
popupmnu.c \
|
||||
quickfix.c \
|
||||
regexp.c \
|
||||
screen.c \
|
||||
search.c \
|
||||
sha256.c \
|
||||
sign.c \
|
||||
spell.c \
|
||||
spellfile.c \
|
||||
syntax.c \
|
||||
tag.c \
|
||||
term.c \
|
||||
ui.c \
|
||||
undo.c \
|
||||
usercmd.c \
|
||||
userfunc.c \
|
||||
window.c \
|
||||
version.c
|
||||
|
||||
INCL = vim.h feature.h keymap.h macros.h ascii.h term.h structs.h os_amiga.h
|
||||
|
||||
OBJ = obj/arabic.o \
|
||||
obj/autocmd.o \
|
||||
obj/blowfish.o \
|
||||
obj/buffer.o \
|
||||
obj/change.o \
|
||||
obj/charset.o \
|
||||
obj/crypt.o \
|
||||
obj/crypt_zip.o \
|
||||
obj/debugger.o \
|
||||
obj/dict.o \
|
||||
obj/diff.o \
|
||||
obj/digraph.o \
|
||||
obj/edit.o \
|
||||
obj/eval.o \
|
||||
obj/evalfunc.o \
|
||||
obj/ex_cmds.o \
|
||||
obj/ex_cmds2.o \
|
||||
obj/ex_docmd.o \
|
||||
obj/ex_eval.o \
|
||||
obj/ex_getln.o \
|
||||
obj/fileio.o \
|
||||
obj/findfile.o \
|
||||
obj/fold.o \
|
||||
obj/getchar.o \
|
||||
obj/hardcopy.o \
|
||||
obj/hashtab.o \
|
||||
obj/indent.o \
|
||||
obj/insexpand.o \
|
||||
obj/json.o \
|
||||
obj/list.o \
|
||||
obj/main.o \
|
||||
obj/mark.o \
|
||||
obj/memfile.o \
|
||||
obj/memline.o \
|
||||
obj/menu.o \
|
||||
obj/message.o \
|
||||
obj/misc1.o \
|
||||
obj/misc2.o \
|
||||
obj/move.o \
|
||||
obj/mbyte.o \
|
||||
obj/normal.o \
|
||||
obj/ops.o \
|
||||
obj/option.o \
|
||||
obj/os_amiga.o \
|
||||
obj/popupmnu.o \
|
||||
obj/quickfix.o \
|
||||
obj/regexp.o \
|
||||
obj/screen.o \
|
||||
obj/search.o \
|
||||
obj/sha256.o \
|
||||
obj/sign.o \
|
||||
obj/spell.o \
|
||||
obj/spellfile.o \
|
||||
obj/syntax.o \
|
||||
obj/tag.o \
|
||||
obj/term.o \
|
||||
obj/ui.o \
|
||||
obj/undo.o \
|
||||
obj/usercmd.o \
|
||||
obj/userfunc.o \
|
||||
obj/window.o \
|
||||
$(TERMLIB)
|
||||
|
||||
PRO = proto/arabic.pro \
|
||||
proto/autocmd.pro \
|
||||
proto/blowfish.pro \
|
||||
proto/buffer.pro \
|
||||
proto/change.pro \
|
||||
proto/charset.pro \
|
||||
proto/crypt.pro \
|
||||
proto/crypt_zip.pro \
|
||||
proto/debugger.pro \
|
||||
proto/dict.pro \
|
||||
proto/diff.pro \
|
||||
proto/digraph.pro \
|
||||
proto/edit.pro \
|
||||
proto/eval.pro \
|
||||
proto/evalfunc.pro \
|
||||
proto/ex_cmds.pro \
|
||||
proto/ex_cmds2.pro \
|
||||
proto/ex_docmd.pro \
|
||||
proto/ex_eval.pro \
|
||||
proto/ex_getln.pro \
|
||||
proto/fileio.pro \
|
||||
proto/findfile.pro \
|
||||
proto/fold.pro \
|
||||
proto/getchar.pro \
|
||||
proto/hardcopy.pro \
|
||||
proto/hashtab.pro \
|
||||
proto/indent.pro \
|
||||
proto/insexpand.pro \
|
||||
proto/json.pro \
|
||||
proto/list.pro \
|
||||
proto/main.pro \
|
||||
proto/mark.pro \
|
||||
proto/memfile.pro \
|
||||
proto/memline.pro \
|
||||
proto/menu.pro \
|
||||
proto/message.pro \
|
||||
proto/misc1.pro \
|
||||
proto/misc2.pro \
|
||||
proto/move.pro \
|
||||
proto/mbyte.pro \
|
||||
proto/normal.pro \
|
||||
proto/ops.pro \
|
||||
proto/option.pro \
|
||||
proto/os_amiga.pro \
|
||||
proto/popupmnu.pro \
|
||||
proto/quickfix.pro \
|
||||
proto/regexp.pro \
|
||||
proto/screen.pro \
|
||||
proto/search.pro \
|
||||
proto/sha256.pro \
|
||||
proto/sign.pro \
|
||||
proto/spell.pro \
|
||||
proto/spellfile.pro \
|
||||
proto/syntax.pro \
|
||||
proto/tag.pro \
|
||||
proto/term.pro \
|
||||
proto/termlib.pro \
|
||||
proto/ui.pro \
|
||||
proto/undo.pro \
|
||||
proto/usercmd.pro \
|
||||
proto/userfunc.pro \
|
||||
proto/window.pro
|
||||
|
||||
all: Vim xxd/Xxd
|
||||
|
||||
Vim: obj $(OBJ) version.c version.h
|
||||
$(CC) $(CFLAGS) version.c -o obj/version.o
|
||||
$(LN) $(LNFLAGS) -m -o Vim $(OBJ) obj/version.o $(LIBS)
|
||||
|
||||
debug: obj $(OBJ) version.c version.h
|
||||
$(CC) $(CFLAGS) version.c -o obj/version.o
|
||||
$(LN) $(LNFLAGS) -m -g -o Vim $(OBJ) obj/version.o $(LIBS)
|
||||
|
||||
xxd/Xxd: xxd/xxd.c
|
||||
$(SHELL) -c cd xxd; make -f Make_amiga.mak; cd ..
|
||||
|
||||
# Making prototypes with Manx has been removed, because it caused too many
|
||||
# problems.
|
||||
#proto: $(SYMS) $(PRO)
|
||||
|
||||
obj:
|
||||
makedir obj
|
||||
|
||||
tags: $(SRC) $(INCL)
|
||||
$(SHELL) -c ctags $(SRC) *.h
|
||||
|
||||
# can't use delete here, too many file names
|
||||
clean:
|
||||
$(DEL) $(OBJ) obj/version.o \
|
||||
obj/termlib.o Vim $(SYMS) xxd/Xxd
|
||||
|
||||
test:
|
||||
$(SHELL) -c cd testdir; make -f Make_amiga.mak; cd ..
|
||||
|
||||
$(SYMS): $(INCL) $(PRO)
|
||||
$(CC) $(CFLAGS) -ho$(SYMS) vim.h
|
||||
|
||||
###########################################################################
|
||||
|
||||
# Unfortunately, Manx's make doesn't understand a .c.o rule, so each
|
||||
# compilation command has to be given explicitly.
|
||||
|
||||
CCSYM = $(CC) $(CFLAGS) -hi$(SYMS) -o
|
||||
CCNOSYM = $(CC) $(CFLAGS) -o
|
||||
|
||||
$(OBJ): $(SYMS)
|
||||
|
||||
obj/arabic.o: arabic.c
|
||||
$(CCSYM) $@ arabic.c
|
||||
|
||||
obj/autocmd.o: autocmd.c
|
||||
$(CCSYM) $@ autocmd.c
|
||||
|
||||
obj/blowfish.o: blowfish.c
|
||||
$(CCSYM) $@ blowfish.c
|
||||
|
||||
obj/buffer.o: buffer.c
|
||||
$(CCSYM) $@ buffer.c
|
||||
|
||||
obj/change.o: change.c
|
||||
$(CCSYM) $@ change.c
|
||||
|
||||
obj/charset.o: charset.c
|
||||
$(CCSYM) $@ charset.c
|
||||
|
||||
obj/crypt.o: crypt.c
|
||||
$(CCSYM) $@ crypt.c
|
||||
|
||||
obj/crypt_zip.o: crypt_zip.c
|
||||
$(CCSYM) $@ crypt_zip.c
|
||||
|
||||
obj/debugger.o: debugger.c
|
||||
$(CCSYM) $@ debugger.c
|
||||
|
||||
obj/dict.o: dict.c
|
||||
$(CCSYM) $@ dict.c
|
||||
|
||||
obj/diff.o: diff.c
|
||||
$(CCSYM) $@ diff.c
|
||||
|
||||
obj/digraph.o: digraph.c
|
||||
$(CCSYM) $@ digraph.c
|
||||
|
||||
obj/edit.o: edit.c
|
||||
$(CCSYM) $@ edit.c
|
||||
|
||||
obj/eval.o: eval.c
|
||||
$(CCSYM) $@ eval.c
|
||||
|
||||
obj/evalfunc.o: evalfunc.c
|
||||
$(CCSYM) $@ evalfunc.c
|
||||
|
||||
obj/ex_cmds.o: ex_cmds.c
|
||||
$(CCSYM) $@ ex_cmds.c
|
||||
|
||||
obj/ex_cmds2.o: ex_cmds2.c
|
||||
$(CCSYM) $@ ex_cmds2.c
|
||||
|
||||
# Don't use $(SYMS) here, because ex_docmd.c defines DO_DECLARE_EXCMD
|
||||
obj/ex_docmd.o: ex_docmd.c ex_cmds.h
|
||||
$(CCNOSYM) $@ ex_docmd.c
|
||||
|
||||
obj/ex_eval.o: ex_eval.c ex_cmds.h
|
||||
$(CCSYM) $@ ex_eval.c
|
||||
|
||||
obj/ex_getln.o: ex_getln.c
|
||||
$(CCSYM) $@ ex_getln.c
|
||||
|
||||
obj/fileio.o: fileio.c
|
||||
$(CCSYM) $@ fileio.c
|
||||
|
||||
obj/findfile.o: findfile.c
|
||||
$(CCSYM) $@ findfile.c
|
||||
|
||||
obj/fold.o: fold.c
|
||||
$(CCSYM) $@ fold.c
|
||||
|
||||
obj/getchar.o: getchar.c
|
||||
$(CCSYM) $@ getchar.c
|
||||
|
||||
obj/hardcopy.o: hardcopy.c
|
||||
$(CCSYM) $@ hardcopy.c
|
||||
|
||||
obj/hashtab.o: hashtab.c
|
||||
$(CCSYM) $@ hashtab.c
|
||||
|
||||
obj/indent.o: indent.c
|
||||
$(CCSYM) $@ indent.c
|
||||
|
||||
obj/insexpand.o: insexpand.c
|
||||
$(CCSYM) $@ insexpand.c
|
||||
|
||||
obj/json.o: json.c
|
||||
$(CCSYM) $@ json.c
|
||||
|
||||
obj/list.o: list.c
|
||||
$(CCSYM) $@ list.c
|
||||
|
||||
# Don't use $(SYMS) here, because main.c defines EXTERN
|
||||
obj/main.o: main.c option.h globals.h
|
||||
$(CCNOSYM) $@ main.c
|
||||
|
||||
obj/mark.o: mark.c
|
||||
$(CCSYM) $@ mark.c
|
||||
|
||||
obj/memfile.o: memfile.c
|
||||
$(CCSYM) $@ memfile.c
|
||||
|
||||
obj/memline.o: memline.c
|
||||
$(CCSYM) $@ memline.c
|
||||
|
||||
obj/menu.o: menu.c
|
||||
$(CCSYM) $@ menu.c
|
||||
|
||||
# Don't use $(SYMS) here, because message.c defines MESSAGE_FILE
|
||||
obj/message.o: message.c
|
||||
$(CCNOSYM) $@ message.c
|
||||
|
||||
obj/misc1.o: misc1.c
|
||||
$(CCSYM) $@ misc1.c
|
||||
|
||||
obj/misc2.o: misc2.c
|
||||
$(CCSYM) $@ misc2.c
|
||||
|
||||
obj/move.o: move.c
|
||||
$(CCSYM) $@ move.c
|
||||
|
||||
obj/mbyte.o: mbyte.c
|
||||
$(CCSYM) $@ mbyte.c
|
||||
|
||||
obj/normal.o: normal.c
|
||||
$(CCSYM) $@ normal.c
|
||||
|
||||
obj/ops.o: ops.c
|
||||
$(CCSYM) $@ ops.c
|
||||
|
||||
# Don't use $(SYMS) here, because option.h defines variables here
|
||||
obj/option.o: option.c
|
||||
$(CCNOSYM) $@ option.c
|
||||
|
||||
obj/os_amiga.o: os_amiga.c
|
||||
$(CCSYM) $@ os_amiga.c
|
||||
|
||||
obj/popupmnu.o: popupmnu.c
|
||||
$(CCSYM) $@ popupmnu.c
|
||||
|
||||
obj/quickfix.o: quickfix.c
|
||||
$(CCSYM) $@ quickfix.c
|
||||
|
||||
obj/regexp.o: regexp.c
|
||||
$(CCSYM) $@ regexp.c
|
||||
|
||||
obj/screen.o: screen.c
|
||||
$(CCSYM) $@ screen.c
|
||||
|
||||
obj/search.o: search.c
|
||||
$(CCSYM) $@ search.c
|
||||
|
||||
obj/sha256.o: sha256.c
|
||||
$(CCSYM) $@ sha256.c
|
||||
|
||||
obj/sign.o: sign.c
|
||||
$(CCSYM) $@ sign.c
|
||||
|
||||
obj/spell.o: spell.c
|
||||
$(CCSYM) $@ spell.c
|
||||
|
||||
obj/spellfile.o: spellfile.c
|
||||
$(CCSYM) $@ spellfile.c
|
||||
|
||||
obj/syntax.o: syntax.c
|
||||
$(CCSYM) $@ syntax.c
|
||||
|
||||
obj/tag.o: tag.c
|
||||
$(CCSYM) $@ tag.c
|
||||
|
||||
obj/term.o: term.c term.h
|
||||
$(CCSYM) $@ term.c
|
||||
|
||||
obj/termlib.o: termlib.c
|
||||
$(CCSYM) $@ termlib.c
|
||||
|
||||
obj/ui.o: ui.c
|
||||
$(CCSYM) $@ ui.c
|
||||
|
||||
obj/undo.o: undo.c
|
||||
$(CCSYM) $@ undo.c
|
||||
|
||||
obj/usercmd.o: usercmd.c
|
||||
$(CCSYM) $@ usercmd.c
|
||||
|
||||
obj/userfunc.o: userfunc.c
|
||||
$(CCSYM) $@ userfunc.c
|
||||
|
||||
obj/window.o: window.c
|
||||
$(CCSYM) $@ window.c
|
||||
@@ -50,11 +50,13 @@ SRC = arabic.c \
|
||||
getchar.c \
|
||||
hardcopy.c \
|
||||
hashtab.c \
|
||||
highlight.c \
|
||||
indent.c \
|
||||
insexpand.c \
|
||||
json.c \
|
||||
list.c \
|
||||
main.c \
|
||||
map.c \
|
||||
mark.c \
|
||||
mbyte.c \
|
||||
memfile.c \
|
||||
@@ -69,10 +71,12 @@ SRC = arabic.c \
|
||||
option.c \
|
||||
os_amiga.c \
|
||||
popupmnu.c \
|
||||
profiler.c \
|
||||
quickfix.c \
|
||||
regexp.c \
|
||||
screen.c \
|
||||
search.c \
|
||||
session.c \
|
||||
sha256.c \
|
||||
sign.c \
|
||||
spell.c \
|
||||
@@ -80,11 +84,14 @@ SRC = arabic.c \
|
||||
syntax.c \
|
||||
tag.c \
|
||||
term.c \
|
||||
testing.c \
|
||||
textprop.c \
|
||||
ui.c \
|
||||
undo.c \
|
||||
usercmd.c \
|
||||
userfunc.c \
|
||||
version.c \
|
||||
viminfo.c \
|
||||
window.c \
|
||||
|
||||
OBJ = $(SRC:.c=.o)
|
||||
|
||||
@@ -739,11 +739,13 @@ OBJ = \
|
||||
$(OUTDIR)\getchar.obj \
|
||||
$(OUTDIR)\hardcopy.obj \
|
||||
$(OUTDIR)\hashtab.obj \
|
||||
$(OUTDIR)\highlight.obj \
|
||||
$(OUTDIR)\indent.obj \
|
||||
$(OUTDIR)\insexpand.obj \
|
||||
$(OUTDIR)\json.obj \
|
||||
$(OUTDIR)\list.obj \
|
||||
$(OUTDIR)\main.obj \
|
||||
$(OUTDIR)\map.obj \
|
||||
$(OUTDIR)\mark.obj \
|
||||
$(OUTDIR)\mbyte.obj \
|
||||
$(OUTDIR)\memfile.obj \
|
||||
@@ -761,10 +763,12 @@ OBJ = \
|
||||
$(OUTDIR)\pathdef.obj \
|
||||
$(OUTDIR)\popupmnu.obj \
|
||||
$(OUTDIR)\popupwin.obj \
|
||||
$(OUTDIR)\profiler.obj \
|
||||
$(OUTDIR)\quickfix.obj \
|
||||
$(OUTDIR)\regexp.obj \
|
||||
$(OUTDIR)\screen.obj \
|
||||
$(OUTDIR)\search.obj \
|
||||
$(OUTDIR)\session.obj \
|
||||
$(OUTDIR)\sha256.obj \
|
||||
$(OUTDIR)\sign.obj \
|
||||
$(OUTDIR)\spell.obj \
|
||||
@@ -772,11 +776,13 @@ OBJ = \
|
||||
$(OUTDIR)\syntax.obj \
|
||||
$(OUTDIR)\tag.obj \
|
||||
$(OUTDIR)\term.obj \
|
||||
$(OUTDIR)\testing.obj \
|
||||
$(OUTDIR)\textprop.obj \
|
||||
$(OUTDIR)\ui.obj \
|
||||
$(OUTDIR)\undo.obj \
|
||||
$(OUTDIR)\usercmd.obj \
|
||||
$(OUTDIR)\userfunc.obj \
|
||||
$(OUTDIR)\viminfo.obj \
|
||||
$(OUTDIR)\winclip.obj \
|
||||
$(OUTDIR)\window.obj \
|
||||
|
||||
@@ -1266,6 +1272,9 @@ all: $(MAIN_TARGET) \
|
||||
tee/tee.exe \
|
||||
GvimExt/gvimext.dll
|
||||
|
||||
# To get around the command line limit: Make use of nmake's response files to
|
||||
# capture the arguments for $(link) in a file using the @<<ARGS<< syntax.
|
||||
|
||||
!if "$(VIMDLL)" == "yes"
|
||||
|
||||
$(VIMDLLBASE).dll: $(OUTDIR) $(OBJ) $(XDIFF_OBJ) $(GUI_OBJ) $(CUI_OBJ) $(OLE_OBJ) $(OLE_IDL) $(MZSCHEME_OBJ) \
|
||||
@@ -1273,10 +1282,12 @@ $(VIMDLLBASE).dll: $(OUTDIR) $(OBJ) $(XDIFF_OBJ) $(GUI_OBJ) $(CUI_OBJ) $(OLE_OBJ
|
||||
$(CSCOPE_OBJ) $(TERM_OBJ) $(SOUND_OBJ) $(NETBEANS_OBJ) $(CHANNEL_OBJ) $(XPM_OBJ) \
|
||||
version.c version.h
|
||||
$(CC) $(CFLAGS_OUTDIR) version.c
|
||||
$(link) $(LINKARGS1) /dll -out:$(VIMDLLBASE).dll $(OBJ) $(XDIFF_OBJ) $(GUI_OBJ) $(CUI_OBJ) $(OLE_OBJ) \
|
||||
$(LUA_OBJ) $(MZSCHEME_OBJ) $(PERL_OBJ) $(PYTHON_OBJ) $(PYTHON3_OBJ) $(RUBY_OBJ) \
|
||||
$(TCL_OBJ) $(CSCOPE_OBJ) $(TERM_OBJ) $(SOUND_OBJ) $(NETBEANS_OBJ) $(CHANNEL_OBJ) \
|
||||
$(XPM_OBJ) $(OUTDIR)\version.obj $(LINKARGS2)
|
||||
$(link) @<<
|
||||
$(LINKARGS1) /dll -out:$(VIMDLLBASE).dll $(OBJ) $(XDIFF_OBJ) $(GUI_OBJ) $(CUI_OBJ) $(OLE_OBJ)
|
||||
$(LUA_OBJ) $(MZSCHEME_OBJ) $(PERL_OBJ) $(PYTHON_OBJ) $(PYTHON3_OBJ) $(RUBY_OBJ)
|
||||
$(TCL_OBJ) $(CSCOPE_OBJ) $(TERM_OBJ) $(SOUND_OBJ) $(NETBEANS_OBJ) $(CHANNEL_OBJ)
|
||||
$(XPM_OBJ) $(OUTDIR)\version.obj $(LINKARGS2)
|
||||
<<
|
||||
|
||||
$(GVIM).exe: $(OUTDIR) $(EXEOBJG) $(VIMDLLBASE).dll
|
||||
$(link) $(LINKARGS1) /subsystem:$(SUBSYSTEM) -out:$(GVIM).exe $(EXEOBJG) $(VIMDLLBASE).lib $(LIBC)
|
||||
@@ -1293,10 +1304,12 @@ $(VIM).exe: $(OUTDIR) $(OBJ) $(XDIFF_OBJ) $(GUI_OBJ) $(CUI_OBJ) $(OLE_OBJ) $(OLE
|
||||
$(CSCOPE_OBJ) $(TERM_OBJ) $(SOUND_OBJ) $(NETBEANS_OBJ) $(CHANNEL_OBJ) $(XPM_OBJ) \
|
||||
version.c version.h
|
||||
$(CC) $(CFLAGS_OUTDIR) version.c
|
||||
$(link) $(LINKARGS1) /subsystem:$(SUBSYSTEM) -out:$(VIM).exe $(OBJ) $(XDIFF_OBJ) $(GUI_OBJ) $(CUI_OBJ) $(OLE_OBJ) \
|
||||
$(LUA_OBJ) $(MZSCHEME_OBJ) $(PERL_OBJ) $(PYTHON_OBJ) $(PYTHON3_OBJ) $(RUBY_OBJ) \
|
||||
$(TCL_OBJ) $(CSCOPE_OBJ) $(TERM_OBJ) $(SOUND_OBJ) $(NETBEANS_OBJ) $(CHANNEL_OBJ) \
|
||||
$(XPM_OBJ) $(OUTDIR)\version.obj $(LINKARGS2)
|
||||
$(link) @<<
|
||||
$(LINKARGS1) /subsystem:$(SUBSYSTEM) -out:$(VIM).exe $(OBJ) $(XDIFF_OBJ) $(GUI_OBJ) $(CUI_OBJ) $(OLE_OBJ)
|
||||
$(LUA_OBJ) $(MZSCHEME_OBJ) $(PERL_OBJ) $(PYTHON_OBJ) $(PYTHON3_OBJ) $(RUBY_OBJ)
|
||||
$(TCL_OBJ) $(CSCOPE_OBJ) $(TERM_OBJ) $(SOUND_OBJ) $(NETBEANS_OBJ) $(CHANNEL_OBJ)
|
||||
$(XPM_OBJ) $(OUTDIR)\version.obj $(LINKARGS2)
|
||||
<<
|
||||
if exist $(VIM).exe.manifest mt.exe -nologo -manifest $(VIM).exe.manifest -updateresource:$(VIM).exe;1
|
||||
|
||||
!endif
|
||||
@@ -1485,6 +1498,8 @@ $(OUTDIR)/hardcopy.obj: $(OUTDIR) hardcopy.c $(INCL)
|
||||
|
||||
$(OUTDIR)/hashtab.obj: $(OUTDIR) hashtab.c $(INCL)
|
||||
|
||||
$(OUTDIR)/highlight.obj: $(OUTDIR) highlight.c $(INCL)
|
||||
|
||||
$(OUTDIR)/indent.obj: $(OUTDIR) indent.c $(INCL)
|
||||
|
||||
$(OUTDIR)/insexpand.obj: $(OUTDIR) insexpand.c $(INCL)
|
||||
@@ -1542,6 +1557,8 @@ $(OUTDIR)/list.obj: $(OUTDIR) list.c $(INCL)
|
||||
|
||||
$(OUTDIR)/main.obj: $(OUTDIR) main.c $(INCL) $(CUI_INCL)
|
||||
|
||||
$(OUTDIR)/map.obj: $(OUTDIR) map.c $(INCL)
|
||||
|
||||
$(OUTDIR)/mark.obj: $(OUTDIR) mark.c $(INCL)
|
||||
|
||||
$(OUTDIR)/memfile.obj: $(OUTDIR) memfile.c $(INCL)
|
||||
@@ -1595,6 +1612,8 @@ $(OUTDIR)/popupmnu.obj: $(OUTDIR) popupmnu.c $(INCL)
|
||||
|
||||
$(OUTDIR)/popupwin.obj: $(OUTDIR) popupwin.c $(INCL)
|
||||
|
||||
$(OUTDIR)/profiler.obj: $(OUTDIR) profiler.c $(INCL)
|
||||
|
||||
$(OUTDIR)/quickfix.obj: $(OUTDIR) quickfix.c $(INCL)
|
||||
|
||||
$(OUTDIR)/regexp.obj: $(OUTDIR) regexp.c regexp_nfa.c $(INCL)
|
||||
@@ -1603,6 +1622,8 @@ $(OUTDIR)/screen.obj: $(OUTDIR) screen.c $(INCL)
|
||||
|
||||
$(OUTDIR)/search.obj: $(OUTDIR) search.c $(INCL)
|
||||
|
||||
$(OUTDIR)/session.obj: $(OUTDIR) session.c $(INCL)
|
||||
|
||||
$(OUTDIR)/sha256.obj: $(OUTDIR) sha256.c $(INCL)
|
||||
|
||||
$(OUTDIR)/sign.obj: $(OUTDIR) sign.c $(INCL)
|
||||
@@ -1617,6 +1638,8 @@ $(OUTDIR)/tag.obj: $(OUTDIR) tag.c $(INCL)
|
||||
|
||||
$(OUTDIR)/term.obj: $(OUTDIR) term.c $(INCL)
|
||||
|
||||
$(OUTDIR)/term.obj: $(OUTDIR) testing.c $(INCL)
|
||||
|
||||
$(OUTDIR)/textprop.obj: $(OUTDIR) textprop.c $(INCL)
|
||||
|
||||
$(OUTDIR)/ui.obj: $(OUTDIR) ui.c $(INCL)
|
||||
@@ -1627,6 +1650,8 @@ $(OUTDIR)/usercmd.obj: $(OUTDIR) usercmd.c $(INCL)
|
||||
|
||||
$(OUTDIR)/userfunc.obj: $(OUTDIR) userfunc.c $(INCL)
|
||||
|
||||
$(OUTDIR)/viminfo.obj: $(OUTDIR) viminfo.c $(INCL)
|
||||
|
||||
$(OUTDIR)/window.obj: $(OUTDIR) window.c $(INCL)
|
||||
|
||||
$(OUTDIR)/xpm_w32.obj: $(OUTDIR) xpm_w32.c
|
||||
@@ -1741,11 +1766,13 @@ proto.h: \
|
||||
proto/getchar.pro \
|
||||
proto/hardcopy.pro \
|
||||
proto/hashtab.pro \
|
||||
proto/highlight.pro \
|
||||
proto/indent.pro \
|
||||
proto/insexpand.pro \
|
||||
proto/json.pro \
|
||||
proto/list.pro \
|
||||
proto/main.pro \
|
||||
proto/map.pro \
|
||||
proto/mark.pro \
|
||||
proto/memfile.pro \
|
||||
proto/memline.pro \
|
||||
@@ -1763,10 +1790,12 @@ proto.h: \
|
||||
proto/os_win32.pro \
|
||||
proto/popupmnu.pro \
|
||||
proto/popupwin.pro \
|
||||
proto/profiler.pro \
|
||||
proto/quickfix.pro \
|
||||
proto/regexp.pro \
|
||||
proto/screen.pro \
|
||||
proto/search.pro \
|
||||
proto/session.pro \
|
||||
proto/sha256.pro \
|
||||
proto/sign.pro \
|
||||
proto/spell.pro \
|
||||
@@ -1774,11 +1803,13 @@ proto.h: \
|
||||
proto/syntax.pro \
|
||||
proto/tag.pro \
|
||||
proto/term.pro \
|
||||
proto/testing.pro \
|
||||
proto/textprop.pro \
|
||||
proto/ui.pro \
|
||||
proto/undo.pro \
|
||||
proto/usercmd.pro \
|
||||
proto/userfunc.pro \
|
||||
proto/viminfo.pro \
|
||||
proto/window.pro \
|
||||
$(SOUND_PRO) \
|
||||
$(NETBEANS_PRO) \
|
||||
|
||||
460
src/Make_sas.mak
460
src/Make_sas.mak
@@ -1,460 +0,0 @@
|
||||
# vim: set ft=make :
|
||||
# Makefile for VIM on the Amiga, using SAS/Lattice C 6.0 to 6.58
|
||||
#
|
||||
# Do NOT use the peephole optimizer with a version before 6.56!
|
||||
# It messes up all kinds of things:
|
||||
# For 6.0 and 6.1, expand_env() will not work correctly.
|
||||
# For 6.2 and 6.3 the call to free_line in u_freeentry is wrong.
|
||||
# The "read.me" file for version 6.56 includes a remark about a fix for the
|
||||
# peephole optimizer. Everything before 6.56 will probably fail.
|
||||
#
|
||||
# You should use Manx Aztec C whenever possible, because it has been tested.
|
||||
#
|
||||
# The prototypes from Manx and SAS are incompatible. If the prototypes
|
||||
# were generated by Manx, first do "touch *.c; make proto" before "make".
|
||||
# The prototypes generated on Unix work for both.
|
||||
#
|
||||
# Note: Not all dependencies are included. This was done to avoid having
|
||||
# to compile everything when a global variable or function is added.
|
||||
|
||||
#>>>>> choose options:
|
||||
|
||||
### See feature.h for a list of optionals.
|
||||
### Any other defines can be included here.
|
||||
|
||||
# NO_ARP Don't include ARP functions
|
||||
# SASC=658 Sas/C version number
|
||||
# NEWSASC fixes a bug in the syntax highlighting?
|
||||
DEFINES = DEF=NO_ARP DEF=NEWSASC DEF="SASC=658"
|
||||
|
||||
#>>>>> if HAVE_TGETENT is defined termlib.o has to be used
|
||||
#TERMLIB = termlib.o
|
||||
TERMLIB =
|
||||
|
||||
#>>>>> choose NODEBUG for normal compiling, the other for debugging and
|
||||
# profiling
|
||||
# don't switch on debugging when generating proto files, it crashes the
|
||||
# compiler.
|
||||
DBG = NODEBUG
|
||||
#DBG = DBG=SF
|
||||
|
||||
#>>>>> choose NOOPTPEEP for 6.0 to 6.3, NOOPT for debugging
|
||||
# with version 6.56 and later you can probably use OPT
|
||||
OPTIMIZE = OPT
|
||||
#OPTIMIZE = NOOPTPEEP
|
||||
#OPTIMIZE = NOOPT
|
||||
|
||||
# for 6.58 you can use the line below, but be warned it takes a loooonnnggg time
|
||||
#OPTIMIZE=OPT OPTIMIZERSCHEDULER OPTIMIZERTIME NoOPTIMIZERALIAS \
|
||||
OptimizerComplexity=10 OptimizerDepth=10 OptimizerRecurDepth=10 \
|
||||
OptimizerInLocal OPTPEEP
|
||||
|
||||
#generate code for your processor - 68060 will work for 040's as well.
|
||||
CPU=68000
|
||||
#CPU=68020
|
||||
#CPU=68030
|
||||
#CPU=68040
|
||||
#CPU=68060
|
||||
|
||||
#Error reporting - rexx or console
|
||||
ERROR = ERRORCONSOLE ERRORSOURCE ERRORHIGHLIGHT
|
||||
#ERROR = ERRORREXX ERRORCONSOLE ERRORSOURCE ERRORHIGHLIGHT
|
||||
|
||||
#memory types, if you have fast use it :->,
|
||||
# ANY = will work on all machines
|
||||
# FAST = this is the best option, for speed
|
||||
#MEMORYTYPE=FAST
|
||||
MEMORYTYPE=ANY
|
||||
|
||||
#MEMSIZE - this is for compile time only for speed of compilation
|
||||
#MEMSIZE=HUGE
|
||||
MEMSIZE=LARGE
|
||||
#MEMSIZE=SMALL
|
||||
|
||||
#>>>>> end of choices
|
||||
###########################################################################
|
||||
|
||||
CC = sc
|
||||
GST = vim.gst
|
||||
COPTS = SINT SCODE SDATA
|
||||
SHELL = csh
|
||||
DEL = $(SHELL) -c rm -f
|
||||
|
||||
# ignore error messages for uninitialized variables, they are mostly not correct
|
||||
CFLAGS = NOLINK $(DBG) CPU=$(CPU) NOSTACKCHECK DEF=AMIGA CODE=FAR idir=proto ignore=317
|
||||
CFLAGS2 = $(OPTIMIZE) $(ERROR) GSTIMMEDIATE GST=$(GST)
|
||||
CFLAGS3 = $(COPTS) STRINGMERGE MEMSIZE=$(MEMSIZE)
|
||||
CFLAGS4 = $(DEFINES) DATAMEMORY=$(MEMORYTYPE)
|
||||
|
||||
PROPT = DEF=PROTO GPROTO GPPARM MAXIMUMERRORS=999 GENPROTOSTATICS GENPROTOPARAMETERS
|
||||
|
||||
SRC = \
|
||||
arabic.c \
|
||||
autocmd.c \
|
||||
blowfish.c \
|
||||
buffer.c \
|
||||
change.c \
|
||||
charset.c \
|
||||
crypt.c \
|
||||
crypt_zip.c \
|
||||
debugger.c \
|
||||
dict.c \
|
||||
diff.c \
|
||||
digraph.c \
|
||||
edit.c \
|
||||
eval.c \
|
||||
evalfunc.c \
|
||||
ex_cmds.c \
|
||||
ex_cmds2.c \
|
||||
ex_docmd.c \
|
||||
ex_eval.c \
|
||||
ex_getln.c \
|
||||
fileio.c \
|
||||
findfile.c \
|
||||
fold.c \
|
||||
getchar.c \
|
||||
hardcopy.c \
|
||||
hashtab.c \
|
||||
indent.c \
|
||||
insexpand.c \
|
||||
json.c \
|
||||
list.c \
|
||||
main.c \
|
||||
mark.c \
|
||||
memfile.c \
|
||||
memline.c \
|
||||
menu.c \
|
||||
message.c \
|
||||
misc1.c \
|
||||
misc2.c \
|
||||
move.c \
|
||||
mbyte.c \
|
||||
normal.c \
|
||||
ops.c \
|
||||
option.c \
|
||||
os_amiga.c \
|
||||
popupmnu.c \
|
||||
quickfix.c \
|
||||
regexp.c \
|
||||
screen.c \
|
||||
search.c \
|
||||
sha256.c \
|
||||
sign.c \
|
||||
spell.c \
|
||||
spellfile.c \
|
||||
syntax.c \
|
||||
tag.c \
|
||||
term.c \
|
||||
ui.c \
|
||||
undo.c \
|
||||
usercmd.c \
|
||||
userfunc.c \
|
||||
window.c \
|
||||
version.c
|
||||
|
||||
OBJ = \
|
||||
arabic.o \
|
||||
autocmd.o \
|
||||
blowfish.o \
|
||||
buffer.o \
|
||||
change.o \
|
||||
charset.o \
|
||||
crypt.o \
|
||||
crypt_zip.o \
|
||||
debugger.o \
|
||||
dict.o \
|
||||
diff.o \
|
||||
digraph.o \
|
||||
edit.o \
|
||||
eval.o \
|
||||
evalfunc.o \
|
||||
ex_cmds.o \
|
||||
ex_cmds2.o \
|
||||
ex_docmd.o \
|
||||
ex_eval.o \
|
||||
ex_getln.o \
|
||||
fileio.o \
|
||||
findfile.o \
|
||||
fold.o \
|
||||
getchar.o \
|
||||
hardcopy.o \
|
||||
hashtab.o \
|
||||
indent.o \
|
||||
insexpand.o \
|
||||
json.o \
|
||||
list.o \
|
||||
main.o \
|
||||
mark.o \
|
||||
memfile.o \
|
||||
memline.o \
|
||||
menu.o \
|
||||
message.o \
|
||||
misc1.o \
|
||||
misc2.o \
|
||||
move.o \
|
||||
mbyte.o \
|
||||
normal.o \
|
||||
ops.o \
|
||||
option.o \
|
||||
os_amiga.o \
|
||||
popupmnu.o \
|
||||
quickfix.o \
|
||||
regexp.o \
|
||||
screen.o \
|
||||
search.o \
|
||||
sha256.o \
|
||||
sign.o \
|
||||
spell.o \
|
||||
spellfile.o \
|
||||
syntax.o \
|
||||
tag.o \
|
||||
term.o \
|
||||
ui.o \
|
||||
undo.o \
|
||||
usercmd.o \
|
||||
userfunc.o \
|
||||
window.o \
|
||||
$(TERMLIB)
|
||||
|
||||
PRO = \
|
||||
proto/arabic.pro \
|
||||
proto/autocmd.pro \
|
||||
proto/blowfish.pro \
|
||||
proto/buffer.pro \
|
||||
proto/change.pro \
|
||||
proto/charset.pro \
|
||||
proto/crypt.pro \
|
||||
proto/crypt_zip.pro \
|
||||
proto/debugger.pro \
|
||||
proto/dict.pro \
|
||||
proto/diff.pro \
|
||||
proto/digraph.pro \
|
||||
proto/edit.pro \
|
||||
proto/eval.pro \
|
||||
proto/evalfunc.pro \
|
||||
proto/ex_cmds.pro \
|
||||
proto/ex_cmds2.pro \
|
||||
proto/ex_docmd.pro \
|
||||
proto/ex_eval.pro \
|
||||
proto/ex_getln.pro \
|
||||
proto/fileio.pro \
|
||||
proto/findfile.pro \
|
||||
proto/fold.pro \
|
||||
proto/getchar.pro \
|
||||
proto/hardcopy.pro \
|
||||
proto/hashtab.pro \
|
||||
proto/indent.pro \
|
||||
proto/insexpand.pro \
|
||||
proto/json.pro \
|
||||
proto/list.pro \
|
||||
proto/main.pro \
|
||||
proto/mark.pro \
|
||||
proto/memfile.pro \
|
||||
proto/memline.pro \
|
||||
proto/menu.pro \
|
||||
proto/message.pro \
|
||||
proto/misc1.pro \
|
||||
proto/misc2.pro \
|
||||
proto/move.pro \
|
||||
proto/mbyte.pro \
|
||||
proto/normal.pro \
|
||||
proto/ops.pro \
|
||||
proto/option.pro \
|
||||
proto/os_amiga.pro \
|
||||
proto/popupmnu.pro \
|
||||
proto/quickfix.pro \
|
||||
proto/regexp.pro \
|
||||
proto/screen.pro \
|
||||
proto/search.pro \
|
||||
proto/sha256.pro \
|
||||
proto/sign.pro \
|
||||
proto/spell.pro \
|
||||
proto/spellfile.pro \
|
||||
proto/syntax.pro \
|
||||
proto/tag.pro \
|
||||
proto/term.pro \
|
||||
proto/termlib.pro \
|
||||
proto/ui.pro \
|
||||
proto/undo.pro \
|
||||
proto/usercmd.pro \
|
||||
proto/userfunc.pro \
|
||||
proto/window.pro
|
||||
|
||||
all: proto Vim
|
||||
|
||||
Vim: scoptions $(OBJ) version.c version.h
|
||||
$(CC) $(CFLAGS) version.c
|
||||
$(CC) LINK $(COPTS) $(OBJ) version.o $(DBG) PNAME=Vim
|
||||
|
||||
debug: scoptions $(OBJ) version.c version.h
|
||||
$(CC) $(CFLAGS) version.c
|
||||
$(CC) LINK $(COPTS) $(OBJ) version.o $(DBG) PNAME=Vim
|
||||
|
||||
proto: $(GST) $(PRO)
|
||||
|
||||
tags:
|
||||
spat ctags $(SRC) *.h
|
||||
# csh -c ctags $(SRC) *.h
|
||||
|
||||
# can't use delete here, too many file names
|
||||
clean:
|
||||
$(DEL) *.o Vim $(GST)
|
||||
|
||||
# generate GlobalSymbolTable, which speeds up the compile time.
|
||||
#
|
||||
# A preprocessing stage is used to work around a bug in the GST generator, in
|
||||
# that it does not handle nested makefiles properly in this stage.
|
||||
# Ignore error message for not producing any code (105).
|
||||
$(GST): scoptions vim.h keymap.h macros.h ascii.h term.h structs.h
|
||||
$(CC) $(CFLAGS) PREPROCESSORONLY vim.h objectname pre.h
|
||||
$(CC) MGST=$(GST) pre.h ignore=105
|
||||
$(DEL) pre.h
|
||||
|
||||
# generate an options file, because SAS/C smake can't handle the amiga command
|
||||
# line can handle the lengths that this makefile will impose on the shell.
|
||||
# (Manx's make can do this).
|
||||
scoptions: Make_sas.mak
|
||||
@echo "Generating - $@ ..."
|
||||
@echo $(CFLAGS) > scoptions
|
||||
@echo $(CFLAGS1) >> scoptions
|
||||
@echo $(CFLAGS2) >> scoptions
|
||||
@echo $(CFLAGS3) >> scoptions
|
||||
@echo $(CFLAGS4) >> scoptions
|
||||
@echo $(COPTS) >>scoptions
|
||||
@echo done
|
||||
|
||||
###########################################################################
|
||||
|
||||
$(OBJ): $(GST) vim.h
|
||||
$(PRO): $(GST) vim.h
|
||||
|
||||
.c.o:
|
||||
$(CC) $(CFLAGS) $*.c
|
||||
|
||||
.c.pro:
|
||||
$(CC) $(CFLAGS) GPFILE=proto/$*.pro $(PROPT) $*.c
|
||||
|
||||
# dependencies
|
||||
arabic.o: arabic.c
|
||||
proto/arabic.pro: arabic.c
|
||||
autocmd.o: autocmd.c
|
||||
proto/autocmd.pro: autocmd.c
|
||||
blowfish.o: blowfish.c
|
||||
proto/blowfish.pro: blowfish.c
|
||||
buffer.o: buffer.c
|
||||
proto/buffer.pro: buffer.c
|
||||
change.o: change.c
|
||||
proto/change.pro: change.c
|
||||
charset.o: charset.c
|
||||
proto/charset.pro: charset.c
|
||||
crypt.o: crypt.c
|
||||
proto/crypt.pro: crypt.c
|
||||
crypt_zip.o: crypt_zip.c
|
||||
proto/crypt_zip.pro: crypt_zip.c
|
||||
debugger.o: debugger.c
|
||||
proto/debugger.pro: debugger.c
|
||||
dict.o: dict.c
|
||||
proto/dict.pro: dict.c
|
||||
diff.o: diff.c
|
||||
proto/diff.pro: diff.c
|
||||
digraph.o: digraph.c
|
||||
proto/digraph.pro: digraph.c
|
||||
edit.o: edit.c
|
||||
proto/edit.pro: edit.c
|
||||
eval.o: eval.c
|
||||
proto/eval.pro: eval.c
|
||||
evalfunc.o: evalfunc.c
|
||||
proto/evalfunc.pro: evalfunc.c
|
||||
ex_cmds.o: ex_cmds.c
|
||||
proto/ex_cmds.pro: ex_cmds.c
|
||||
ex_cmds2.o: ex_cmds2.c
|
||||
proto/ex_cmds2.pro: ex_cmds2.c
|
||||
ex_docmd.o: ex_docmd.c ex_cmds.h
|
||||
proto/ex_docmd.pro: ex_docmd.c ex_cmds.h
|
||||
ex_eval.o: ex_eval.c ex_cmds.h
|
||||
proto/ex_eval.pro: ex_eval.c ex_cmds.h
|
||||
ex_getln.o: ex_getln.c
|
||||
proto/ex_getln.pro: ex_getln.c
|
||||
fileio.o: fileio.c
|
||||
proto/fileio.pro: fileio.c
|
||||
findfile.o: findfile.c
|
||||
proto/findfile.pro: findfile.c
|
||||
fold.o: fold.c
|
||||
proto/fold.pro: fold.c
|
||||
getchar.o: getchar.c
|
||||
proto/getchar.pro: getchar.c
|
||||
hardcopy.o: hardcopy.c
|
||||
proto/hardcopy.pro: hardcopy.c
|
||||
hashtab.o: hashtab.c
|
||||
proto/hashtab.pro: hashtab.c
|
||||
indent.o: indent.c
|
||||
proto/indent.pro: indent.c
|
||||
insexpand.o: insexpand.c
|
||||
proto/insexpand.pro: insexpand.c
|
||||
json.o: json.c
|
||||
proto/json.pro: json.c
|
||||
list.o: list.c
|
||||
proto/list.pro: list.c
|
||||
main.o: main.c
|
||||
proto/main.pro: main.c
|
||||
mark.o: mark.c
|
||||
proto/mark.pro: mark.c
|
||||
memfile.o: memfile.c
|
||||
proto/memfile.pro: memfile.c
|
||||
memline.o: memline.c
|
||||
proto/memline.pro: memline.c
|
||||
menu.o: menu.c
|
||||
proto/menu.pro: menu.c
|
||||
message.o: message.c
|
||||
proto/message.pro: message.c
|
||||
misc1.o: misc1.c
|
||||
proto/misc1.pro: misc1.c
|
||||
misc2.o: misc2.c
|
||||
proto/misc2.pro: misc2.c
|
||||
move.o: move.c
|
||||
proto/move.pro: move.c
|
||||
mbyte.o: mbyte.c
|
||||
proto/mbyte.pro: mbyte.c
|
||||
normal.o: normal.c
|
||||
proto/normal.pro: normal.c
|
||||
ops.o: ops.c
|
||||
proto/ops.pro: ops.c
|
||||
option.o: option.c
|
||||
proto/option.pro: option.c
|
||||
os_amiga.o: os_amiga.c
|
||||
proto/os_amiga.pro: os_amiga.c
|
||||
popupmnu.o: popupmnu.c
|
||||
proto/popupmnu.pro: popupmnu.c
|
||||
quickfix.o: quickfix.c
|
||||
proto/quickfix.pro: quickfix.c
|
||||
regexp.o: regexp.c
|
||||
proto/regexp.pro: regexp.c
|
||||
screen.o: screen.c
|
||||
proto/screen.pro: screen.c
|
||||
search.o: search.c
|
||||
proto/search.pro: search.c
|
||||
sha256.o: sha256.c
|
||||
proto/sha256.pro: sha256.c
|
||||
sign.o: sign.c
|
||||
proto/sign.pro: sign.c
|
||||
spell.o: spell.c
|
||||
proto/spell.pro: spell.c
|
||||
spellfile.o: spellfile.c
|
||||
proto/spellfile.pro: spellfile.c
|
||||
syntax.o: syntax.c
|
||||
proto/syntax.pro: syntax.c
|
||||
tag.o: tag.c
|
||||
proto/tag.pro: tag.c
|
||||
term.o: term.c
|
||||
proto/term.pro: term.c
|
||||
termlib.o: termlib.c
|
||||
proto/termlib.pro: termlib.c
|
||||
ui.o: ui.c
|
||||
proto/ui.pro: ui.c
|
||||
undo.o: undo.c
|
||||
proto/undo.pro: undo.c
|
||||
usercmd.o: usercmd.c
|
||||
proto/usercmd.pro: usercmd.c
|
||||
userfunc.o: userfunc.c
|
||||
proto/userfunc.pro: userfunc.c
|
||||
window.o: window.c
|
||||
@@ -2,7 +2,7 @@
|
||||
# Makefile for Vim on OpenVMS
|
||||
#
|
||||
# Maintainer: Zoltan Arpadffy <arpadffy@polarhome.com>
|
||||
# Last change: 2019 May 24
|
||||
# Last change: 2019 Jul 14
|
||||
#
|
||||
# This has script been tested on VMS 6.2 to 8.2 on DEC Alpha, VAX and IA64
|
||||
# with MMS and MMK
|
||||
@@ -311,12 +311,13 @@ SRC = arabic.c autocmd.c beval.c blob.c blowfish.c buffer.c change.c charset.c \
|
||||
crypt.c crypt_zip.c debugger.c dict.c diff.c digraph.c edit.c eval.c \
|
||||
evalfunc.c ex_cmds.c ex_cmds2.c ex_docmd.c ex_eval.c ex_getln.c \
|
||||
if_cscope.c if_xcmdsrv.c fileio.c findfile.c fold.c getchar.c \
|
||||
hardcopy.c hashtab.c indent.c insexpand.c json.c list.c main.c mark.c \
|
||||
menu.c mbyte.c memfile.c memline.c message.c misc1.c misc2.c move.c \
|
||||
normal.c ops.c option.c popupmnu.c popupwin.c, quickfix.c regexp.c search.c \
|
||||
sha256.c sign.c spell.c spellfile.c syntax.c tag.c term.c termlib.c \
|
||||
textprop.c ui.c undo.c usercmd.c userfunc.c version.c screen.c \
|
||||
window.c os_unix.c os_vms.c pathdef.c \
|
||||
hardcopy.c hashtab.c highlight.c indent.c insexpand.c json.c list.c \
|
||||
main.c map.c mark.c menu.c mbyte.c memfile.c memline.c message.c \
|
||||
misc1.c misc2.c move.c normal.c ops.c option.c popupmnu.c popupwin.c \
|
||||
profiler.c quickfix.c regexp.c search.c session.c sha256.c sign.c \
|
||||
spell.c spellfile.c syntax.c tag.c term.c termlib.c testing.c \
|
||||
textprop.c ui.c undo.c usercmd.c userfunc.c version.c viminfo.c \
|
||||
screen.c window.c os_unix.c os_vms.c pathdef.c \
|
||||
$(GUI_SRC) $(PERL_SRC) $(PYTHON_SRC) $(TCL_SRC) \
|
||||
$(RUBY_SRC) $(HANGULIN_SRC) $(MZSCH_SRC) $(XDIFF_SRC)
|
||||
|
||||
@@ -325,13 +326,14 @@ OBJ = arabic.obj autocmd.obj beval.obj blob.obj blowfish.obj buffer.obj change.
|
||||
digraph.obj edit.obj eval.obj evalfunc.obj ex_cmds.obj ex_cmds2.obj \
|
||||
ex_docmd.obj ex_eval.obj ex_getln.obj if_cscope.obj if_xcmdsrv.obj \
|
||||
fileio.obj findfile.obj fold.obj getchar.obj hardcopy.obj hashtab.obj \
|
||||
indent.obj insexpand.obj json.obj list.obj main.obj mark.obj \
|
||||
menu.obj memfile.obj memline.obj message.obj misc1.obj misc2.obj \
|
||||
move.obj mbyte.obj normal.obj ops.obj option.obj popupmnu.obj popupwin.obj\
|
||||
quickfix.obj regexp.obj search.obj sha256.obj sign.obj spell.obj \
|
||||
spellfile.obj syntax.obj tag.obj term.obj termlib.obj textprop.obj \
|
||||
highlight.obj indent.obj insexpand.obj json.obj list.obj main.obj \
|
||||
map.obj mark.obj menu.obj memfile.obj memline.obj message.obj \
|
||||
misc1.obj misc2.obj move.obj mbyte.obj normal.obj ops.obj option.obj \
|
||||
popupmnu.obj popupwin.obj profiler.obj quickfix.obj regexp.obj \
|
||||
search.obj session.obj sha256.obj sign.obj spell.obj spellfile.obj \
|
||||
syntax.obj tag.obj term.obj termlib.obj testing.obj textprop.obj \
|
||||
ui.obj undo.obj usercmd.obj userfunc.obj screen.obj version.obj \
|
||||
window.obj os_unix.obj os_vms.obj pathdef.obj if_mzsch.obj \
|
||||
viminfo.obj window.obj os_unix.obj os_vms.obj pathdef.obj if_mzsch.obj \
|
||||
$(GUI_OBJ) $(PERL_OBJ) $(PYTHON_OBJ) $(TCL_OBJ) \
|
||||
$(RUBY_OBJ) $(HANGULIN_OBJ) $(MZSCH_OBJ) $(XDIFF_OBJ)
|
||||
|
||||
@@ -598,6 +600,10 @@ hashtab.obj : hashtab.c vim.h [.auto]config.h feature.h os_unix.h \
|
||||
ascii.h keymap.h term.h macros.h structs.h regexp.h \
|
||||
gui.h beval.h [.proto]gui_beval.pro option.h ex_cmds.h proto.h \
|
||||
globals.h
|
||||
highlight.obj : highlight.c vim.h [.auto]config.h feature.h os_unix.h \
|
||||
ascii.h keymap.h term.h macros.h structs.h regexp.h \
|
||||
gui.h beval.h [.proto]gui_beval.pro option.h ex_cmds.h proto.h \
|
||||
globals.h
|
||||
if_cscope.obj : if_cscope.c vim.h [.auto]config.h feature.h os_unix.h \
|
||||
ascii.h keymap.h term.h macros.h structs.h regexp.h \
|
||||
gui.h beval.h [.proto]gui_beval.pro option.h ex_cmds.h proto.h \
|
||||
@@ -624,6 +630,9 @@ main.obj : main.c vim.h [.auto]config.h feature.h os_unix.h \
|
||||
ascii.h keymap.h term.h macros.h structs.h regexp.h gui.h beval.h \
|
||||
[.proto]gui_beval.pro option.h ex_cmds.h proto.h globals.h \
|
||||
arabic.c
|
||||
map.obj : map.c vim.h [.auto]config.h feature.h os_unix.h \
|
||||
ascii.h keymap.h term.h macros.h structs.h regexp.h gui.h beval.h \
|
||||
[.proto]gui_beval.pro option.h ex_cmds.h proto.h globals.h \
|
||||
mark.obj : mark.c vim.h [.auto]config.h feature.h os_unix.h \
|
||||
ascii.h keymap.h term.h macros.h structs.h regexp.h gui.h beval.h \
|
||||
[.proto]gui_beval.pro option.h ex_cmds.h proto.h globals.h \
|
||||
@@ -692,6 +701,10 @@ popupwin.obj : popupwin.c vim.h [.auto]config.h feature.h os_unix.h \
|
||||
ascii.h keymap.h term.h macros.h structs.h regexp.h \
|
||||
gui.h beval.h [.proto]gui_beval.pro option.h ex_cmds.h proto.h \
|
||||
globals.h
|
||||
profiler.obj : profiler.c vim.h [.auto]config.h feature.h os_unix.h \
|
||||
ascii.h keymap.h term.h macros.h structs.h regexp.h \
|
||||
gui.h beval.h [.proto]gui_beval.pro option.h ex_cmds.h proto.h \
|
||||
globals.h
|
||||
quickfix.obj : quickfix.c vim.h [.auto]config.h feature.h os_unix.h \
|
||||
ascii.h keymap.h term.h macros.h structs.h regexp.h \
|
||||
gui.h beval.h [.proto]gui_beval.pro option.h ex_cmds.h proto.h \
|
||||
@@ -708,6 +721,10 @@ search.obj : search.c vim.h [.auto]config.h feature.h os_unix.h \
|
||||
ascii.h keymap.h term.h macros.h structs.h regexp.h \
|
||||
gui.h beval.h [.proto]gui_beval.pro option.h ex_cmds.h proto.h \
|
||||
globals.h
|
||||
session.obj : session.c vim.h [.auto]config.h feature.h os_unix.h \
|
||||
ascii.h keymap.h term.h macros.h structs.h regexp.h \
|
||||
gui.h beval.h [.proto]gui_beval.pro option.h ex_cmds.h proto.h \
|
||||
globals.h
|
||||
sha256.obj : sha256.c vim.h [.auto]config.h feature.h os_unix.h \
|
||||
ascii.h keymap.h term.h macros.h option.h structs.h regexp.h gui.h \
|
||||
beval.h [.proto]gui_beval.pro alloc.h ex_cmds.h spell.h proto.h \
|
||||
@@ -740,6 +757,10 @@ termlib.obj : termlib.c vim.h [.auto]config.h feature.h os_unix.h \
|
||||
ascii.h keymap.h term.h macros.h structs.h regexp.h gui.h beval.h \
|
||||
[.proto]gui_beval.pro option.h ex_cmds.h proto.h globals.h \
|
||||
|
||||
testing.obj : testing.c vim.h [.auto]config.h feature.h os_unix.h \
|
||||
ascii.h keymap.h term.h macros.h structs.h regexp.h gui.h beval.h \
|
||||
[.proto]gui_beval.pro option.h ex_cmds.h proto.h globals.h \
|
||||
|
||||
textprop.obj : textprop.c vim.h [.auto]config.h feature.h os_unix.h \
|
||||
ascii.h keymap.h term.h macros.h structs.h regexp.h gui.h beval.h \
|
||||
[.proto]gui_beval.pro option.h ex_cmds.h proto.h globals.h \
|
||||
@@ -766,6 +787,10 @@ version.obj : version.c vim.h [.auto]config.h feature.h os_unix.h \
|
||||
ascii.h keymap.h term.h macros.h structs.h regexp.h \
|
||||
gui.h beval.h [.proto]gui_beval.pro option.h ex_cmds.h proto.h \
|
||||
globals.h version.h
|
||||
viminfo.obj : viminfo.c vim.h [.auto]config.h feature.h os_unix.h \
|
||||
ascii.h keymap.h term.h macros.h structs.h regexp.h \
|
||||
gui.h beval.h [.proto]gui_beval.pro option.h ex_cmds.h proto.h \
|
||||
globals.h version.h
|
||||
window.obj : window.c vim.h [.auto]config.h feature.h os_unix.h \
|
||||
ascii.h keymap.h term.h macros.h structs.h regexp.h \
|
||||
gui.h beval.h [.proto]gui_beval.pro option.h ex_cmds.h proto.h \
|
||||
|
||||
63
src/Makefile
63
src/Makefile
@@ -521,6 +521,7 @@ CClink = $(CC)
|
||||
# gpm - For mouse support on Linux console via gpm
|
||||
# Uncomment this when you do not want to include gpm support, even
|
||||
# though you have gpm libraries and includes.
|
||||
# For Debian/Ubuntu gpm support requires the libgpm-dev package.
|
||||
#CONF_OPT_GPM = --disable-gpm
|
||||
|
||||
# sysmouse - For mouse support on FreeBSD and DragonFly console via sysmouse
|
||||
@@ -614,7 +615,7 @@ CClink = $(CC)
|
||||
# Use this with GCC to check for mistakes, unused arguments, etc.
|
||||
# Note: If you use -Wextra and get warnings in GTK code about function
|
||||
# parameters, you can add -Wno-cast-function-type
|
||||
#CFLAGS = -g -Wall -Wextra -Wshadow -Wmissing-prototypes -Wunreachable-code -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=1
|
||||
#CFLAGS = -g -Wall -Wextra -Wshadow -Wmissing-prototypes -Wunreachable-code -Wno-cast-function-type -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=1
|
||||
# Add -Wpedantic to find // comments and other C99 constructs.
|
||||
# Better disable Perl and Python to avoid a lot of warnings.
|
||||
#CFLAGS = -g -Wall -Wextra -Wshadow -Wmissing-prototypes -Wpedantic -Wunreachable-code -Wunused-result -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=1
|
||||
@@ -1603,6 +1604,7 @@ BASIC_SRC = \
|
||||
getchar.c \
|
||||
hardcopy.c \
|
||||
hashtab.c \
|
||||
highlight.c \
|
||||
if_cscope.c \
|
||||
if_xcmdsrv.c \
|
||||
indent.c \
|
||||
@@ -1610,6 +1612,7 @@ BASIC_SRC = \
|
||||
json.c \
|
||||
list.c \
|
||||
main.c \
|
||||
map.c \
|
||||
mark.c \
|
||||
memfile.c \
|
||||
memline.c \
|
||||
@@ -1626,11 +1629,13 @@ BASIC_SRC = \
|
||||
auto/pathdef.c \
|
||||
popupmnu.c \
|
||||
popupwin.c \
|
||||
profiler.c \
|
||||
pty.c \
|
||||
quickfix.c \
|
||||
regexp.c \
|
||||
screen.c \
|
||||
search.c \
|
||||
session.c \
|
||||
sha256.c \
|
||||
sign.c \
|
||||
sound.c \
|
||||
@@ -1640,12 +1645,14 @@ BASIC_SRC = \
|
||||
tag.c \
|
||||
term.c \
|
||||
terminal.c \
|
||||
testing.c \
|
||||
textprop.c \
|
||||
ui.c \
|
||||
undo.c \
|
||||
usercmd.c \
|
||||
userfunc.c \
|
||||
version.c \
|
||||
viminfo.c \
|
||||
window.c \
|
||||
$(OS_EXTRA_SRC)
|
||||
|
||||
@@ -1722,12 +1729,14 @@ OBJ_COMMON = \
|
||||
objects/getchar.o \
|
||||
objects/hardcopy.o \
|
||||
objects/hashtab.o \
|
||||
objects/highlight.o \
|
||||
$(HANGULIN_OBJ) \
|
||||
objects/if_cscope.o \
|
||||
objects/if_xcmdsrv.o \
|
||||
objects/indent.o \
|
||||
objects/insexpand.o \
|
||||
objects/list.o \
|
||||
objects/map.o \
|
||||
objects/mark.o \
|
||||
objects/memline.o \
|
||||
objects/menu.o \
|
||||
@@ -1742,11 +1751,13 @@ OBJ_COMMON = \
|
||||
objects/pathdef.o \
|
||||
objects/popupmnu.o \
|
||||
objects/popupwin.o \
|
||||
objects/profiler.o \
|
||||
objects/pty.o \
|
||||
objects/quickfix.o \
|
||||
objects/regexp.o \
|
||||
objects/screen.o \
|
||||
objects/search.o \
|
||||
objects/session.o \
|
||||
objects/sha256.o \
|
||||
objects/sign.o \
|
||||
objects/sound.o \
|
||||
@@ -1756,12 +1767,14 @@ OBJ_COMMON = \
|
||||
objects/tag.o \
|
||||
objects/term.o \
|
||||
objects/terminal.o \
|
||||
objects/testing.o \
|
||||
objects/textprop.o \
|
||||
objects/ui.o \
|
||||
objects/undo.o \
|
||||
objects/usercmd.o \
|
||||
objects/userfunc.o \
|
||||
objects/version.o \
|
||||
objects/viminfo.o \
|
||||
objects/window.o \
|
||||
$(GUI_OBJ) \
|
||||
$(TERM_OBJ) \
|
||||
@@ -1855,6 +1868,7 @@ PRO_AUTO = \
|
||||
hardcopy.pro \
|
||||
hashtab.pro \
|
||||
hangulin.pro \
|
||||
highlight.pro \
|
||||
if_cscope.pro \
|
||||
if_lua.pro \
|
||||
if_mzsch.pro \
|
||||
@@ -1867,6 +1881,7 @@ PRO_AUTO = \
|
||||
json.pro \
|
||||
list.pro \
|
||||
main.pro \
|
||||
map.pro \
|
||||
mark.pro \
|
||||
mbyte.pro \
|
||||
memfile.pro \
|
||||
@@ -1883,11 +1898,13 @@ PRO_AUTO = \
|
||||
os_unix.pro \
|
||||
popupmnu.pro \
|
||||
popupwin.pro \
|
||||
profiler.pro \
|
||||
pty.pro \
|
||||
quickfix.pro \
|
||||
regexp.pro \
|
||||
screen.pro \
|
||||
search.pro \
|
||||
session.pro \
|
||||
sha256.pro \
|
||||
sign.pro \
|
||||
sound.pro \
|
||||
@@ -1898,12 +1915,14 @@ PRO_AUTO = \
|
||||
term.pro \
|
||||
terminal.pro \
|
||||
termlib.pro \
|
||||
testing.pro \
|
||||
textprop.pro \
|
||||
ui.pro \
|
||||
undo.pro \
|
||||
usercmd.pro \
|
||||
userfunc.pro \
|
||||
version.pro \
|
||||
viminfo.pro \
|
||||
window.pro \
|
||||
beval.pro \
|
||||
gui_beval.pro \
|
||||
@@ -3096,6 +3115,9 @@ objects/gui_mac.o: gui_mac.c
|
||||
objects/hangulin.o: hangulin.c
|
||||
$(CCC) -o $@ hangulin.c
|
||||
|
||||
objects/highlight.o: highlight.c
|
||||
$(CCC) -o $@ highlight.c
|
||||
|
||||
objects/if_cscope.o: if_cscope.c
|
||||
$(CCC) -o $@ if_cscope.c
|
||||
|
||||
@@ -3150,6 +3172,9 @@ objects/list.o: list.c
|
||||
objects/main.o: main.c
|
||||
$(CCC) -o $@ main.c
|
||||
|
||||
objects/map.o: map.c
|
||||
$(CCC) -o $@ map.c
|
||||
|
||||
objects/mark.o: mark.c
|
||||
$(CCC) -o $@ mark.c
|
||||
|
||||
@@ -3222,6 +3247,9 @@ objects/popupmnu.o: popupmnu.c
|
||||
objects/popupwin.o: popupwin.c
|
||||
$(CCC) -o $@ popupwin.c
|
||||
|
||||
objects/profiler.o: profiler.c
|
||||
$(CCC) -o $@ profiler.c
|
||||
|
||||
objects/pty.o: pty.c
|
||||
$(CCC) -o $@ pty.c
|
||||
|
||||
@@ -3237,6 +3265,9 @@ objects/screen.o: screen.c
|
||||
objects/search.o: search.c
|
||||
$(CCC) -o $@ search.c
|
||||
|
||||
objects/session.o: session.c
|
||||
$(CCC) -o $@ session.c
|
||||
|
||||
objects/sha256.o: sha256.c
|
||||
$(CCC) -o $@ sha256.c
|
||||
|
||||
@@ -3264,6 +3295,9 @@ objects/term.o: term.c
|
||||
objects/terminal.o: terminal.c $(TERM_DEPS)
|
||||
$(CCC) -o $@ terminal.c
|
||||
|
||||
objects/testing.o: testing.c
|
||||
$(CCC) -o $@ testing.c
|
||||
|
||||
objects/textprop.o: textprop.c
|
||||
$(CCC) -o $@ textprop.c
|
||||
|
||||
@@ -3279,6 +3313,9 @@ objects/usercmd.o: usercmd.c
|
||||
objects/userfunc.o: userfunc.c
|
||||
$(CCC) -o $@ userfunc.c
|
||||
|
||||
objects/viminfo.o: viminfo.c
|
||||
$(CCC) -o $@ viminfo.c
|
||||
|
||||
objects/window.o: window.c
|
||||
$(CCC) -o $@ window.c
|
||||
|
||||
@@ -3541,6 +3578,10 @@ objects/hashtab.o: hashtab.c vim.h protodef.h auto/config.h feature.h os_unix.h
|
||||
auto/osdef.h ascii.h keymap.h term.h macros.h option.h beval.h \
|
||||
proto/gui_beval.pro structs.h regexp.h gui.h alloc.h ex_cmds.h spell.h \
|
||||
proto.h globals.h
|
||||
objects/highlight.o: highlight.c vim.h protodef.h auto/config.h feature.h os_unix.h \
|
||||
auto/osdef.h ascii.h keymap.h term.h macros.h option.h beval.h \
|
||||
proto/gui_beval.pro structs.h regexp.h gui.h alloc.h ex_cmds.h spell.h \
|
||||
proto.h globals.h
|
||||
objects/if_cscope.o: if_cscope.c vim.h protodef.h auto/config.h feature.h \
|
||||
os_unix.h auto/osdef.h ascii.h keymap.h term.h macros.h option.h beval.h \
|
||||
proto/gui_beval.pro structs.h regexp.h gui.h alloc.h ex_cmds.h spell.h \
|
||||
@@ -3569,6 +3610,10 @@ objects/main.o: main.c vim.h protodef.h auto/config.h feature.h os_unix.h \
|
||||
auto/osdef.h ascii.h keymap.h term.h macros.h option.h beval.h \
|
||||
proto/gui_beval.pro structs.h regexp.h gui.h alloc.h ex_cmds.h spell.h \
|
||||
proto.h globals.h
|
||||
objects/map.o: map.c vim.h protodef.h auto/config.h feature.h os_unix.h \
|
||||
auto/osdef.h ascii.h keymap.h term.h macros.h option.h beval.h \
|
||||
proto/gui_beval.pro structs.h regexp.h gui.h alloc.h ex_cmds.h spell.h \
|
||||
proto.h globals.h
|
||||
objects/mark.o: mark.c vim.h protodef.h auto/config.h feature.h os_unix.h \
|
||||
auto/osdef.h ascii.h keymap.h term.h macros.h option.h beval.h \
|
||||
proto/gui_beval.pro structs.h regexp.h gui.h alloc.h ex_cmds.h spell.h \
|
||||
@@ -3633,6 +3678,10 @@ objects/popupwin.o: popupwin.c vim.h protodef.h auto/config.h feature.h os_unix.
|
||||
auto/osdef.h ascii.h keymap.h term.h macros.h option.h beval.h \
|
||||
proto/gui_beval.pro structs.h regexp.h gui.h alloc.h ex_cmds.h spell.h \
|
||||
proto.h globals.h
|
||||
objects/profiler.o: profiler.c vim.h protodef.h auto/config.h feature.h os_unix.h \
|
||||
auto/osdef.h ascii.h keymap.h term.h macros.h option.h beval.h \
|
||||
proto/gui_beval.pro structs.h regexp.h gui.h alloc.h ex_cmds.h spell.h \
|
||||
proto.h globals.h
|
||||
objects/pty.o: pty.c vim.h protodef.h auto/config.h feature.h os_unix.h \
|
||||
auto/osdef.h ascii.h keymap.h term.h macros.h option.h beval.h \
|
||||
proto/gui_beval.pro structs.h regexp.h gui.h alloc.h ex_cmds.h spell.h \
|
||||
@@ -3653,6 +3702,10 @@ objects/search.o: search.c vim.h protodef.h auto/config.h feature.h os_unix.h \
|
||||
auto/osdef.h ascii.h keymap.h term.h macros.h option.h beval.h \
|
||||
proto/gui_beval.pro structs.h regexp.h gui.h alloc.h ex_cmds.h spell.h \
|
||||
proto.h globals.h
|
||||
objects/session.o: session.c vim.h protodef.h auto/config.h feature.h \
|
||||
os_unix.h auto/osdef.h ascii.h keymap.h term.h macros.h option.h beval.h \
|
||||
proto/gui_beval.pro structs.h regexp.h gui.h alloc.h ex_cmds.h spell.h \
|
||||
proto.h globals.h
|
||||
objects/sha256.o: sha256.c vim.h protodef.h auto/config.h feature.h os_unix.h \
|
||||
auto/osdef.h ascii.h keymap.h term.h macros.h option.h beval.h \
|
||||
proto/gui_beval.pro structs.h regexp.h gui.h alloc.h ex_cmds.h spell.h \
|
||||
@@ -3691,6 +3744,10 @@ objects/terminal.o: terminal.c vim.h protodef.h auto/config.h feature.h os_unix.
|
||||
proto/gui_beval.pro structs.h regexp.h gui.h alloc.h ex_cmds.h spell.h \
|
||||
proto.h globals.h libvterm/include/vterm.h \
|
||||
libvterm/include/vterm_keycodes.h
|
||||
objects/testing.o: testing.c vim.h protodef.h auto/config.h feature.h os_unix.h \
|
||||
auto/osdef.h ascii.h keymap.h term.h macros.h option.h beval.h \
|
||||
proto/gui_beval.pro structs.h regexp.h gui.h alloc.h ex_cmds.h spell.h \
|
||||
proto.h globals.h
|
||||
objects/textprop.o: textprop.c vim.h protodef.h auto/config.h feature.h os_unix.h \
|
||||
auto/osdef.h ascii.h keymap.h term.h macros.h option.h beval.h \
|
||||
proto/gui_beval.pro structs.h regexp.h gui.h alloc.h ex_cmds.h spell.h \
|
||||
@@ -3715,6 +3772,10 @@ objects/version.o: version.c vim.h protodef.h auto/config.h feature.h os_unix.h
|
||||
auto/osdef.h ascii.h keymap.h term.h macros.h option.h beval.h \
|
||||
proto/gui_beval.pro structs.h regexp.h gui.h alloc.h ex_cmds.h spell.h \
|
||||
proto.h globals.h version.h
|
||||
objects/viminfo.o: viminfo.c vim.h protodef.h auto/config.h feature.h \
|
||||
os_unix.h auto/osdef.h ascii.h keymap.h term.h macros.h option.h beval.h \
|
||||
proto/gui_beval.pro structs.h regexp.h gui.h alloc.h ex_cmds.h spell.h \
|
||||
proto.h globals.h
|
||||
objects/window.o: window.c vim.h protodef.h auto/config.h feature.h os_unix.h \
|
||||
auto/osdef.h ascii.h keymap.h term.h macros.h option.h beval.h \
|
||||
proto/gui_beval.pro structs.h regexp.h gui.h alloc.h ex_cmds.h spell.h \
|
||||
|
||||
@@ -21,8 +21,8 @@ To jump to a file, move the cursor on its name and use the `gf` command.
|
||||
|
||||
Most code can be found in a file with an obvious name (incomplete list):
|
||||
|
||||
File name | Description
|
||||
--------- | -----------
|
||||
File name | Description
|
||||
--------------- | -----------
|
||||
autocmd.c | autocommands
|
||||
buffer.c | manipulating buffers (loaded files)
|
||||
change.c | handling changes to text
|
||||
@@ -34,9 +34,11 @@ fileio.c | reading and writing files
|
||||
findfile.c | search for files in 'path'
|
||||
fold.c | folding
|
||||
getchar.c | getting characters and key mapping
|
||||
highlight.c | syntax highlighting
|
||||
indent.c | C and Lisp indentation
|
||||
insexpand.c | Insert mode completion
|
||||
mark.c | marks
|
||||
map.c | mapping and abbreviations
|
||||
mbyte.c | multi-byte character handling
|
||||
memfile.c | storing lines for buffers in a swapfile
|
||||
memline.c | storing lines for buffers in memory
|
||||
@@ -44,18 +46,25 @@ menu.c | menus
|
||||
message.c | (error) messages
|
||||
ops.c | handling operators ("d", "y", "p")
|
||||
option.c | options
|
||||
popupmnu.c | popup menu
|
||||
popupwin.c | popup window
|
||||
profiler.c | vim script profiler
|
||||
quickfix.c | quickfix commands (":make", ":cn")
|
||||
regexp.c | pattern matching
|
||||
screen.c | updating the windows
|
||||
search.c | pattern searching
|
||||
session.c | sessions and views
|
||||
sign.c | signs
|
||||
spell.c | spell checking
|
||||
syntax.c | syntax and other highlighting
|
||||
syntax.c | syntax and other highlighting
|
||||
tag.c | tags
|
||||
term.c | terminal handling, termcap codes
|
||||
testing.c | testing: assert and test functions
|
||||
textprop.c | text properties
|
||||
undo.c | undo and redo
|
||||
usercmd.c | user defined commands
|
||||
userfunc.c | user defined functions
|
||||
viminfo.c | viminfo handling
|
||||
window.c | handling split windows
|
||||
|
||||
|
||||
|
||||
@@ -10,7 +10,7 @@
|
||||
|
||||
#include "vim.h"
|
||||
|
||||
#if defined(FEAT_BEVAL) || defined(FEAT_TEXT_PROP) || defined(PROT)
|
||||
#if defined(FEAT_BEVAL) || defined(FEAT_TEXT_PROP) || defined(PROTO)
|
||||
/*
|
||||
* Find text under the mouse position "row" / "col".
|
||||
* If "getword" is TRUE the returned text in "*textp" is not the whole line but
|
||||
@@ -43,7 +43,7 @@ find_word_under_cursor(
|
||||
{
|
||||
// Found a window and the cursor is in the text. Now find the line
|
||||
// number.
|
||||
if (!mouse_comp_pos(wp, &row, &col, &lnum))
|
||||
if (!mouse_comp_pos(wp, &row, &col, &lnum, NULL))
|
||||
{
|
||||
// Not past end of the file.
|
||||
lbuf = ml_get_buf(wp->w_buffer, lnum, FALSE);
|
||||
@@ -72,6 +72,7 @@ find_word_under_cursor(
|
||||
}
|
||||
|
||||
col = vcol2col(wp, lnum, col);
|
||||
scol = col;
|
||||
|
||||
if (VIsual_active
|
||||
&& wp->w_buffer == curwin->w_buffer
|
||||
@@ -95,6 +96,7 @@ find_word_under_cursor(
|
||||
lbuf = vim_strnsave(lbuf + spos->col, len);
|
||||
lnum = spos->lnum;
|
||||
col = spos->col;
|
||||
scol = col;
|
||||
}
|
||||
else
|
||||
{
|
||||
|
||||
71
src/blob.c
71
src/blob.c
@@ -63,6 +63,7 @@ blob_copy(typval_T *from, typval_T *to)
|
||||
int ret = OK;
|
||||
|
||||
to->v_type = VAR_BLOB;
|
||||
to->v_lock = 0;
|
||||
if (from->vval.v_blob == NULL)
|
||||
to->vval.v_blob = NULL;
|
||||
else if (rettv_blob_alloc(to) == FAIL)
|
||||
@@ -257,4 +258,74 @@ failed:
|
||||
return NULL;
|
||||
}
|
||||
|
||||
/*
|
||||
* "remove({blob})" function
|
||||
*/
|
||||
void
|
||||
blob_remove(typval_T *argvars, typval_T *rettv)
|
||||
{
|
||||
int error = FALSE;
|
||||
long idx = (long)tv_get_number_chk(&argvars[1], &error);
|
||||
long end;
|
||||
|
||||
if (!error)
|
||||
{
|
||||
blob_T *b = argvars[0].vval.v_blob;
|
||||
int len = blob_len(b);
|
||||
char_u *p;
|
||||
|
||||
if (idx < 0)
|
||||
// count from the end
|
||||
idx = len + idx;
|
||||
if (idx < 0 || idx >= len)
|
||||
{
|
||||
semsg(_(e_blobidx), idx);
|
||||
return;
|
||||
}
|
||||
if (argvars[2].v_type == VAR_UNKNOWN)
|
||||
{
|
||||
// Remove one item, return its value.
|
||||
p = (char_u *)b->bv_ga.ga_data;
|
||||
rettv->vval.v_number = (varnumber_T) *(p + idx);
|
||||
mch_memmove(p + idx, p + idx + 1, (size_t)len - idx - 1);
|
||||
--b->bv_ga.ga_len;
|
||||
}
|
||||
else
|
||||
{
|
||||
blob_T *blob;
|
||||
|
||||
// Remove range of items, return list with values.
|
||||
end = (long)tv_get_number_chk(&argvars[2], &error);
|
||||
if (error)
|
||||
return;
|
||||
if (end < 0)
|
||||
// count from the end
|
||||
end = len + end;
|
||||
if (end >= len || idx > end)
|
||||
{
|
||||
semsg(_(e_blobidx), end);
|
||||
return;
|
||||
}
|
||||
blob = blob_alloc();
|
||||
if (blob == NULL)
|
||||
return;
|
||||
blob->bv_ga.ga_len = end - idx + 1;
|
||||
if (ga_grow(&blob->bv_ga, end - idx + 1) == FAIL)
|
||||
{
|
||||
vim_free(blob);
|
||||
return;
|
||||
}
|
||||
p = (char_u *)b->bv_ga.ga_data;
|
||||
mch_memmove((char_u *)blob->bv_ga.ga_data, p + idx,
|
||||
(size_t)(end - idx + 1));
|
||||
++blob->bv_refcount;
|
||||
rettv->v_type = VAR_BLOB;
|
||||
rettv->vval.v_blob = blob;
|
||||
|
||||
mch_memmove(p + idx, p + end + 1, (size_t)(len - end));
|
||||
b->bv_ga.ga_len -= end - idx + 1;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
#endif /* defined(FEAT_EVAL) */
|
||||
|
||||
121
src/buffer.c
121
src/buffer.c
@@ -29,7 +29,6 @@
|
||||
|
||||
static char_u *buflist_match(regmatch_T *rmp, buf_T *buf, int ignore_case);
|
||||
static char_u *fname_match(regmatch_T *rmp, char_u *name, int ignore_case);
|
||||
static void buflist_setfpos(buf_T *buf, win_T *win, linenr_T lnum, colnr_T col, int copy_options);
|
||||
#ifdef UNIX
|
||||
static buf_T *buflist_findname_stat(char_u *ffname, stat_T *st);
|
||||
static int otherfile_buf(buf_T *buf, char_u *ffname, stat_T *stp);
|
||||
@@ -449,7 +448,8 @@ can_unload_buffer(buf_T *buf)
|
||||
}
|
||||
}
|
||||
if (!can_unload)
|
||||
emsg(_("E937: Attempt to delete a buffer that is in use"));
|
||||
semsg(_("E937: Attempt to delete a buffer that is in use: %s"),
|
||||
buf->b_fname);
|
||||
return can_unload;
|
||||
}
|
||||
|
||||
@@ -951,10 +951,8 @@ free_buffer_stuff(
|
||||
#ifdef FEAT_NETBEANS_INTG
|
||||
netbeans_file_killed(buf);
|
||||
#endif
|
||||
#ifdef FEAT_LOCALMAP
|
||||
map_clear_int(buf, MAP_ALL_MODES, TRUE, FALSE); /* clear local mappings */
|
||||
map_clear_int(buf, MAP_ALL_MODES, TRUE, TRUE); /* clear local abbrevs */
|
||||
#endif
|
||||
VIM_CLEAR(buf->b_start_fenc);
|
||||
}
|
||||
|
||||
@@ -2774,7 +2772,7 @@ buflist_nr2name(
|
||||
* When "copy_options" is TRUE save the local window option values.
|
||||
* When "lnum" is 0 only do the options.
|
||||
*/
|
||||
static void
|
||||
void
|
||||
buflist_setfpos(
|
||||
buf_T *buf,
|
||||
win_T *win,
|
||||
@@ -5101,6 +5099,13 @@ do_arg_all(
|
||||
new_curwin = wpnext;
|
||||
new_curtab = curtab;
|
||||
}
|
||||
else if (wpnext->w_frame->fr_parent
|
||||
!= curwin->w_frame->fr_parent)
|
||||
{
|
||||
emsg(_("E249: window layout changed unexpectedly"));
|
||||
i = count;
|
||||
break;
|
||||
}
|
||||
else
|
||||
win_move_after(wpnext, curwin);
|
||||
break;
|
||||
@@ -5545,112 +5550,6 @@ chk_modeline(
|
||||
return retval;
|
||||
}
|
||||
|
||||
#if defined(FEAT_VIMINFO) || defined(PROTO)
|
||||
int
|
||||
read_viminfo_bufferlist(
|
||||
vir_T *virp,
|
||||
int writing)
|
||||
{
|
||||
char_u *tab;
|
||||
linenr_T lnum;
|
||||
colnr_T col;
|
||||
buf_T *buf;
|
||||
char_u *sfname;
|
||||
char_u *xline;
|
||||
|
||||
/* Handle long line and escaped characters. */
|
||||
xline = viminfo_readstring(virp, 1, FALSE);
|
||||
|
||||
/* don't read in if there are files on the command-line or if writing: */
|
||||
if (xline != NULL && !writing && ARGCOUNT == 0
|
||||
&& find_viminfo_parameter('%') != NULL)
|
||||
{
|
||||
/* Format is: <fname> Tab <lnum> Tab <col>.
|
||||
* Watch out for a Tab in the file name, work from the end. */
|
||||
lnum = 0;
|
||||
col = 0;
|
||||
tab = vim_strrchr(xline, '\t');
|
||||
if (tab != NULL)
|
||||
{
|
||||
*tab++ = '\0';
|
||||
col = (colnr_T)atoi((char *)tab);
|
||||
tab = vim_strrchr(xline, '\t');
|
||||
if (tab != NULL)
|
||||
{
|
||||
*tab++ = '\0';
|
||||
lnum = atol((char *)tab);
|
||||
}
|
||||
}
|
||||
|
||||
/* Expand "~/" in the file name at "line + 1" to a full path.
|
||||
* Then try shortening it by comparing with the current directory */
|
||||
expand_env(xline, NameBuff, MAXPATHL);
|
||||
sfname = shorten_fname1(NameBuff);
|
||||
|
||||
buf = buflist_new(NameBuff, sfname, (linenr_T)0, BLN_LISTED);
|
||||
if (buf != NULL) /* just in case... */
|
||||
{
|
||||
buf->b_last_cursor.lnum = lnum;
|
||||
buf->b_last_cursor.col = col;
|
||||
buflist_setfpos(buf, curwin, lnum, col, FALSE);
|
||||
}
|
||||
}
|
||||
vim_free(xline);
|
||||
|
||||
return viminfo_readline(virp);
|
||||
}
|
||||
|
||||
void
|
||||
write_viminfo_bufferlist(FILE *fp)
|
||||
{
|
||||
buf_T *buf;
|
||||
win_T *win;
|
||||
tabpage_T *tp;
|
||||
char_u *line;
|
||||
int max_buffers;
|
||||
|
||||
if (find_viminfo_parameter('%') == NULL)
|
||||
return;
|
||||
|
||||
/* Without a number -1 is returned: do all buffers. */
|
||||
max_buffers = get_viminfo_parameter('%');
|
||||
|
||||
/* Allocate room for the file name, lnum and col. */
|
||||
#define LINE_BUF_LEN (MAXPATHL + 40)
|
||||
line = alloc(LINE_BUF_LEN);
|
||||
if (line == NULL)
|
||||
return;
|
||||
|
||||
FOR_ALL_TAB_WINDOWS(tp, win)
|
||||
set_last_cursor(win);
|
||||
|
||||
fputs(_("\n# Buffer list:\n"), fp);
|
||||
FOR_ALL_BUFFERS(buf)
|
||||
{
|
||||
if (buf->b_fname == NULL
|
||||
|| !buf->b_p_bl
|
||||
#ifdef FEAT_QUICKFIX
|
||||
|| bt_quickfix(buf)
|
||||
#endif
|
||||
#ifdef FEAT_TERMINAL
|
||||
|| bt_terminal(buf)
|
||||
#endif
|
||||
|| removable(buf->b_ffname))
|
||||
continue;
|
||||
|
||||
if (max_buffers-- == 0)
|
||||
break;
|
||||
putc('%', fp);
|
||||
home_replace(NULL, buf->b_ffname, line, MAXPATHL, TRUE);
|
||||
vim_snprintf_add((char *)line, LINE_BUF_LEN, "\t%ld\t%d",
|
||||
(long)buf->b_last_cursor.lnum,
|
||||
buf->b_last_cursor.col);
|
||||
viminfo_writestring(fp, line);
|
||||
}
|
||||
vim_free(line);
|
||||
}
|
||||
#endif
|
||||
|
||||
/*
|
||||
* Return TRUE if "buf" is a normal buffer, 'buftype' is empty.
|
||||
*/
|
||||
|
||||
66
src/change.c
66
src/change.c
@@ -155,19 +155,16 @@ changed_internal(void)
|
||||
static long next_listener_id = 0;
|
||||
|
||||
/*
|
||||
* Check if the change at "lnum" / "col" is above or overlaps with an existing
|
||||
* changed. If above then flush changes and invoke listeners.
|
||||
* If "merge" is TRUE do the merge.
|
||||
* Check if the change at "lnum" is above or overlaps with an existing
|
||||
* change. If above then flush changes and invoke listeners.
|
||||
* Returns TRUE if the change was merged.
|
||||
*/
|
||||
static int
|
||||
check_recorded_changes(
|
||||
buf_T *buf,
|
||||
linenr_T lnum,
|
||||
colnr_T col,
|
||||
linenr_T lnume,
|
||||
long xtra,
|
||||
int merge)
|
||||
long xtra)
|
||||
{
|
||||
if (buf->b_recorded_changes != NULL && xtra != 0)
|
||||
{
|
||||
@@ -182,42 +179,12 @@ check_recorded_changes(
|
||||
li->li_tv.vval.v_dict, (char_u *)"lnum");
|
||||
prev_lnume = (linenr_T)dict_get_number(
|
||||
li->li_tv.vval.v_dict, (char_u *)"end");
|
||||
if (prev_lnum >= lnum || prev_lnum > lnume
|
||||
|| (prev_lnume >= lnum && xtra != 0))
|
||||
if (prev_lnum >= lnum || prev_lnum > lnume || prev_lnume >= lnum)
|
||||
{
|
||||
if (li->li_next == NULL && lnum == prev_lnum
|
||||
&& xtra == 0
|
||||
&& col + 1 == (colnr_T)dict_get_number(
|
||||
li->li_tv.vval.v_dict, (char_u *)"col"))
|
||||
{
|
||||
if (merge)
|
||||
{
|
||||
dictitem_T *di;
|
||||
|
||||
// Same start point and nothing is following, entries
|
||||
// can be merged.
|
||||
di = dict_find(li->li_tv.vval.v_dict,
|
||||
(char_u *)"end", -1);
|
||||
if (di != NULL)
|
||||
{
|
||||
prev_lnum = tv_get_number(&di->di_tv);
|
||||
if (lnume > prev_lnum)
|
||||
di->di_tv.vval.v_number = lnume;
|
||||
}
|
||||
di = dict_find(li->li_tv.vval.v_dict,
|
||||
(char_u *)"added", -1);
|
||||
if (di != NULL)
|
||||
di->di_tv.vval.v_number += xtra;
|
||||
return TRUE;
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
// the current change is going to make the line number in
|
||||
// the older change invalid, flush now
|
||||
invoke_listeners(curbuf);
|
||||
break;
|
||||
}
|
||||
// the current change is going to make the line number in
|
||||
// the older change invalid, flush now
|
||||
invoke_listeners(curbuf);
|
||||
break;
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -242,7 +209,7 @@ may_record_change(
|
||||
|
||||
// If the new change is going to change the line numbers in already listed
|
||||
// changes, then flush.
|
||||
if (check_recorded_changes(curbuf, lnum, col, lnume, xtra, TRUE))
|
||||
if (check_recorded_changes(curbuf, lnum, lnume, xtra))
|
||||
return;
|
||||
|
||||
if (curbuf->b_recorded_changes == NULL)
|
||||
@@ -325,15 +292,17 @@ f_listener_flush(typval_T *argvars, typval_T *rettv UNUSED)
|
||||
* listener_remove() function
|
||||
*/
|
||||
void
|
||||
f_listener_remove(typval_T *argvars, typval_T *rettv UNUSED)
|
||||
f_listener_remove(typval_T *argvars, typval_T *rettv)
|
||||
{
|
||||
listener_T *lnr;
|
||||
listener_T *next;
|
||||
listener_T *prev = NULL;
|
||||
listener_T *prev;
|
||||
int id = tv_get_number(argvars);
|
||||
buf_T *buf;
|
||||
|
||||
for (buf = firstbuf; buf != NULL; buf = buf->b_next)
|
||||
{
|
||||
prev = NULL;
|
||||
for (lnr = buf->b_listener; lnr != NULL; lnr = next)
|
||||
{
|
||||
next = lnr->lr_next;
|
||||
@@ -345,9 +314,12 @@ f_listener_remove(typval_T *argvars, typval_T *rettv UNUSED)
|
||||
buf->b_listener = lnr->lr_next;
|
||||
free_callback(&lnr->lr_callback);
|
||||
vim_free(lnr);
|
||||
rettv->vval.v_number = 1;
|
||||
return;
|
||||
}
|
||||
prev = lnr;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
/*
|
||||
@@ -357,7 +329,7 @@ f_listener_remove(typval_T *argvars, typval_T *rettv UNUSED)
|
||||
void
|
||||
may_invoke_listeners(buf_T *buf, linenr_T lnum, linenr_T lnume, int added)
|
||||
{
|
||||
check_recorded_changes(buf, lnum, 0, lnume, added, FALSE);
|
||||
check_recorded_changes(buf, lnum, lnume, added);
|
||||
}
|
||||
|
||||
/*
|
||||
@@ -369,7 +341,6 @@ invoke_listeners(buf_T *buf)
|
||||
{
|
||||
listener_T *lnr;
|
||||
typval_T rettv;
|
||||
int dummy;
|
||||
typval_T argv[6];
|
||||
listitem_T *li;
|
||||
linenr_T start = MAXLNUM;
|
||||
@@ -417,8 +388,7 @@ invoke_listeners(buf_T *buf)
|
||||
|
||||
for (lnr = buf->b_listener; lnr != NULL; lnr = lnr->lr_next)
|
||||
{
|
||||
call_callback(&lnr->lr_callback, -1, &rettv,
|
||||
5, argv, NULL, 0L, 0L, &dummy, TRUE, NULL);
|
||||
call_callback(&lnr->lr_callback, -1, &rettv, 5, argv);
|
||||
clear_tv(&rettv);
|
||||
}
|
||||
|
||||
|
||||
@@ -1633,7 +1633,6 @@ channel_write_new_lines(buf_T *buf)
|
||||
invoke_callback(channel_T *channel, callback_T *callback, typval_T *argv)
|
||||
{
|
||||
typval_T rettv;
|
||||
int dummy;
|
||||
|
||||
if (safe_to_invoke_callback == 0)
|
||||
iemsg("INTERNAL: Invoking callback when it is not safe");
|
||||
@@ -1641,8 +1640,7 @@ invoke_callback(channel_T *channel, callback_T *callback, typval_T *argv)
|
||||
argv[0].v_type = VAR_CHANNEL;
|
||||
argv[0].vval.v_channel = channel;
|
||||
|
||||
call_callback(callback, -1, &rettv, 2, argv, NULL,
|
||||
0L, 0L, &dummy, TRUE, NULL);
|
||||
call_callback(callback, -1, &rettv, 2, argv);
|
||||
clear_tv(&rettv);
|
||||
channel_need_redraw = TRUE;
|
||||
}
|
||||
@@ -2537,19 +2535,26 @@ append_to_buffer(buf_T *buffer, char_u *msg, channel_T *channel, ch_part_T part)
|
||||
|
||||
FOR_ALL_WINDOWS(wp)
|
||||
{
|
||||
if (wp->w_buffer == buffer
|
||||
&& (save_write_to
|
||||
? wp->w_cursor.lnum == lnum + 1
|
||||
: (wp->w_cursor.lnum == lnum
|
||||
&& wp->w_cursor.col == 0)))
|
||||
if (wp->w_buffer == buffer)
|
||||
{
|
||||
++wp->w_cursor.lnum;
|
||||
save_curwin = curwin;
|
||||
curwin = wp;
|
||||
curbuf = curwin->w_buffer;
|
||||
scroll_cursor_bot(0, FALSE);
|
||||
curwin = save_curwin;
|
||||
curbuf = curwin->w_buffer;
|
||||
int move_cursor = save_write_to
|
||||
? wp->w_cursor.lnum == lnum + 1
|
||||
: (wp->w_cursor.lnum == lnum
|
||||
&& wp->w_cursor.col == 0);
|
||||
|
||||
// If the cursor is at or above the new line, move it one line
|
||||
// down. If the topline is outdated update it now.
|
||||
if (move_cursor || wp->w_topline > buffer->b_ml.ml_line_count)
|
||||
{
|
||||
if (move_cursor)
|
||||
++wp->w_cursor.lnum;
|
||||
save_curwin = curwin;
|
||||
curwin = wp;
|
||||
curbuf = curwin->w_buffer;
|
||||
scroll_cursor_bot(0, FALSE);
|
||||
curwin = save_curwin;
|
||||
curbuf = curwin->w_buffer;
|
||||
}
|
||||
}
|
||||
}
|
||||
redraw_buf_and_status_later(buffer, VALID);
|
||||
@@ -3022,7 +3027,6 @@ channel_close(channel_T *channel, int invoke_close_cb)
|
||||
{
|
||||
typval_T argv[1];
|
||||
typval_T rettv;
|
||||
int dummy;
|
||||
|
||||
/* Increment the refcount to avoid the channel being freed
|
||||
* halfway. */
|
||||
@@ -3031,8 +3035,7 @@ channel_close(channel_T *channel, int invoke_close_cb)
|
||||
(char *)channel->ch_close_cb.cb_name);
|
||||
argv[0].v_type = VAR_CHANNEL;
|
||||
argv[0].vval.v_channel = channel;
|
||||
call_callback(&channel->ch_close_cb, -1,
|
||||
&rettv, 1, argv, NULL, 0L, 0L, &dummy, TRUE, NULL);
|
||||
call_callback(&channel->ch_close_cb, -1, &rettv, 1, argv);
|
||||
clear_tv(&rettv);
|
||||
channel_need_redraw = TRUE;
|
||||
|
||||
@@ -5534,7 +5537,6 @@ job_cleanup(job_T *job)
|
||||
{
|
||||
typval_T argv[3];
|
||||
typval_T rettv;
|
||||
int dummy;
|
||||
|
||||
/* Invoke the exit callback. Make sure the refcount is > 0. */
|
||||
ch_log(job->jv_channel, "Invoking exit callback %s",
|
||||
@@ -5544,8 +5546,7 @@ job_cleanup(job_T *job)
|
||||
argv[0].vval.v_job = job;
|
||||
argv[1].v_type = VAR_NUMBER;
|
||||
argv[1].vval.v_number = job->jv_exitval;
|
||||
call_callback(&job->jv_exit_cb, -1,
|
||||
&rettv, 2, argv, NULL, 0L, 0L, &dummy, TRUE, NULL);
|
||||
call_callback(&job->jv_exit_cb, -1, &rettv, 2, argv);
|
||||
clear_tv(&rettv);
|
||||
--job->jv_refcount;
|
||||
channel_need_redraw = TRUE;
|
||||
@@ -6029,7 +6030,6 @@ job_stop(job_T *job, typval_T *argvars, char *type)
|
||||
invoke_prompt_callback(void)
|
||||
{
|
||||
typval_T rettv;
|
||||
int dummy;
|
||||
typval_T argv[2];
|
||||
char_u *text;
|
||||
char_u *prompt;
|
||||
@@ -6052,8 +6052,7 @@ invoke_prompt_callback(void)
|
||||
argv[0].vval.v_string = vim_strsave(text);
|
||||
argv[1].v_type = VAR_UNKNOWN;
|
||||
|
||||
call_callback(&curbuf->b_prompt_callback, -1,
|
||||
&rettv, 1, argv, NULL, 0L, 0L, &dummy, TRUE, NULL);
|
||||
call_callback(&curbuf->b_prompt_callback, -1, &rettv, 1, argv);
|
||||
clear_tv(&argv[0]);
|
||||
clear_tv(&rettv);
|
||||
}
|
||||
@@ -6065,7 +6064,6 @@ invoke_prompt_callback(void)
|
||||
invoke_prompt_interrupt(void)
|
||||
{
|
||||
typval_T rettv;
|
||||
int dummy;
|
||||
typval_T argv[1];
|
||||
|
||||
if (curbuf->b_prompt_interrupt.cb_name == NULL
|
||||
@@ -6074,8 +6072,7 @@ invoke_prompt_interrupt(void)
|
||||
argv[0].v_type = VAR_UNKNOWN;
|
||||
|
||||
got_int = FALSE; // don't skip executing commands
|
||||
call_callback(&curbuf->b_prompt_interrupt, -1,
|
||||
&rettv, 0, argv, NULL, 0L, 0L, &dummy, TRUE, NULL);
|
||||
call_callback(&curbuf->b_prompt_interrupt, -1, &rettv, 0, argv);
|
||||
clear_tv(&rettv);
|
||||
return TRUE;
|
||||
}
|
||||
|
||||
@@ -14,8 +14,8 @@ let lines = readfile('ex_cmds.h')
|
||||
let idx = 0
|
||||
while idx < len(lines)
|
||||
let line = lines[idx]
|
||||
if line =~ '^EX(CMD_'
|
||||
let m = matchlist(line, '^EX(CMD_\S*,\s*"\([a-z][^"]*\)"')
|
||||
if line =~ '^EXCMD(CMD_'
|
||||
let m = matchlist(line, '^EXCMD(CMD_\S*,\s*"\([a-z][^"]*\)"')
|
||||
if len(m) >= 2
|
||||
let cmds += [ m[1] ]
|
||||
else
|
||||
@@ -27,18 +27,18 @@ while idx < len(lines)
|
||||
let idx += 1
|
||||
let addr_type = lines[idx]
|
||||
|
||||
if flags =~ '\<RANGE\>'
|
||||
if flags =~ '\<EX_RANGE\>'
|
||||
if addr_type =~ 'ADDR_NONE'
|
||||
echoerr 'ex_cmds.h:' .. (idx - 1) .. ': Using RANGE with ADDR_NONE: ' .. line
|
||||
echoerr 'ex_cmds.h:' .. (idx - 1) .. ': Using EX_RANGE with ADDR_NONE: ' .. line
|
||||
endif
|
||||
else
|
||||
if addr_type !~ 'ADDR_NONE'
|
||||
echoerr 'ex_cmds.h:' .. (idx - 1) .. ': Missing ADDR_NONE: ' .. line
|
||||
echoerr 'ex_cmds.h:' .. (idx - 1) .. ': Missing ADDR_NONE: ' .. line
|
||||
endif
|
||||
endif
|
||||
|
||||
if flags =~ '\<DFLALL\>' && (addr_type =~ 'ADDR_OTHER' || addr_type =~ 'ADDR_NONE')
|
||||
echoerr 'ex_cmds.h:' .. (idx - 1) .. ': Missing misplaced DFLALL: ' .. line
|
||||
if flags =~ '\<EX_DFLALL\>' && (addr_type =~ 'ADDR_OTHER' || addr_type =~ 'ADDR_NONE')
|
||||
echoerr 'ex_cmds.h:' .. (idx - 1) .. ': Missing misplaced EX_DFLALL: ' .. line
|
||||
endif
|
||||
endif
|
||||
let idx += 1
|
||||
|
||||
106
src/dict.c
106
src/dict.c
@@ -708,12 +708,34 @@ dict2string(typval_T *tv, int copyID, int restore_copyID)
|
||||
return (char_u *)ga.ga_data;
|
||||
}
|
||||
|
||||
/*
|
||||
* Get the key for #{key: val} into "tv" and advance "arg".
|
||||
* Return FAIL when there is no valid key.
|
||||
*/
|
||||
static int
|
||||
get_literal_key(char_u **arg, typval_T *tv)
|
||||
{
|
||||
char_u *p;
|
||||
|
||||
if (!ASCII_ISALNUM(**arg) && **arg != '_' && **arg != '-')
|
||||
return FAIL;
|
||||
|
||||
for (p = *arg; ASCII_ISALNUM(*p) || *p == '_' || *p == '-'; ++p)
|
||||
;
|
||||
tv->v_type = VAR_STRING;
|
||||
tv->vval.v_string = vim_strnsave(*arg, (int)(p - *arg));
|
||||
|
||||
*arg = skipwhite(p);
|
||||
return OK;
|
||||
}
|
||||
|
||||
/*
|
||||
* Allocate a variable for a Dictionary and fill it from "*arg".
|
||||
* "literal" is TRUE for #{key: val}
|
||||
* Return OK or FAIL. Returns NOTDONE for {expr}.
|
||||
*/
|
||||
int
|
||||
dict_get_tv(char_u **arg, typval_T *rettv, int evaluate)
|
||||
dict_get_tv(char_u **arg, typval_T *rettv, int evaluate, int literal)
|
||||
{
|
||||
dict_T *d = NULL;
|
||||
typval_T tvkey;
|
||||
@@ -750,8 +772,11 @@ dict_get_tv(char_u **arg, typval_T *rettv, int evaluate)
|
||||
*arg = skipwhite(*arg + 1);
|
||||
while (**arg != '}' && **arg != NUL)
|
||||
{
|
||||
if (eval1(arg, &tvkey, evaluate) == FAIL) /* recursive! */
|
||||
if ((literal
|
||||
? get_literal_key(arg, &tvkey)
|
||||
: eval1(arg, &tvkey, evaluate)) == FAIL) // recursive!
|
||||
goto failret;
|
||||
|
||||
if (**arg != ':')
|
||||
{
|
||||
semsg(_("E720: Missing colon in Dictionary: %s"), *arg);
|
||||
@@ -1008,6 +1033,33 @@ dict_list(typval_T *argvars, typval_T *rettv, int what)
|
||||
}
|
||||
}
|
||||
|
||||
/*
|
||||
* "items(dict)" function
|
||||
*/
|
||||
void
|
||||
f_items(typval_T *argvars, typval_T *rettv)
|
||||
{
|
||||
dict_list(argvars, rettv, 2);
|
||||
}
|
||||
|
||||
/*
|
||||
* "keys()" function
|
||||
*/
|
||||
void
|
||||
f_keys(typval_T *argvars, typval_T *rettv)
|
||||
{
|
||||
dict_list(argvars, rettv, 0);
|
||||
}
|
||||
|
||||
/*
|
||||
* "values(dict)" function
|
||||
*/
|
||||
void
|
||||
f_values(typval_T *argvars, typval_T *rettv)
|
||||
{
|
||||
dict_list(argvars, rettv, 1);
|
||||
}
|
||||
|
||||
/*
|
||||
* Make each item in the dict readonly (not the value of the item).
|
||||
*/
|
||||
@@ -1027,4 +1079,54 @@ dict_set_items_ro(dict_T *di)
|
||||
}
|
||||
}
|
||||
|
||||
/*
|
||||
* "has_key()" function
|
||||
*/
|
||||
void
|
||||
f_has_key(typval_T *argvars, typval_T *rettv)
|
||||
{
|
||||
if (argvars[0].v_type != VAR_DICT)
|
||||
{
|
||||
emsg(_(e_dictreq));
|
||||
return;
|
||||
}
|
||||
if (argvars[0].vval.v_dict == NULL)
|
||||
return;
|
||||
|
||||
rettv->vval.v_number = dict_find(argvars[0].vval.v_dict,
|
||||
tv_get_string(&argvars[1]), -1) != NULL;
|
||||
}
|
||||
|
||||
/*
|
||||
* "remove({dict})" function
|
||||
*/
|
||||
void
|
||||
dict_remove(typval_T *argvars, typval_T *rettv, char_u *arg_errmsg)
|
||||
{
|
||||
dict_T *d;
|
||||
char_u *key;
|
||||
dictitem_T *di;
|
||||
|
||||
if (argvars[2].v_type != VAR_UNKNOWN)
|
||||
semsg(_(e_toomanyarg), "remove()");
|
||||
else if ((d = argvars[0].vval.v_dict) != NULL
|
||||
&& !var_check_lock(d->dv_lock, arg_errmsg, TRUE))
|
||||
{
|
||||
key = tv_get_string_chk(&argvars[1]);
|
||||
if (key != NULL)
|
||||
{
|
||||
di = dict_find(d, key, -1);
|
||||
if (di == NULL)
|
||||
semsg(_(e_dictkey), key);
|
||||
else if (!var_check_fixed(di->di_flags, arg_errmsg, TRUE)
|
||||
&& !var_check_ro(di->di_flags, arg_errmsg, TRUE))
|
||||
{
|
||||
*rettv = di->di_tv;
|
||||
init_tv(&di->di_tv);
|
||||
dictitem_remove(d, di);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
#endif /* defined(FEAT_EVAL) */
|
||||
|
||||
861
src/eval.c
861
src/eval.c
File diff suppressed because it is too large
Load Diff
1731
src/evalfunc.c
1731
src/evalfunc.c
File diff suppressed because it is too large
Load Diff
1199
src/ex_cmds.c
1199
src/ex_cmds.c
File diff suppressed because it is too large
Load Diff
3503
src/ex_cmds.h
3503
src/ex_cmds.h
File diff suppressed because it is too large
Load Diff
758
src/ex_cmds2.c
758
src/ex_cmds2.c
@@ -16,215 +16,7 @@
|
||||
|
||||
static void cmd_source(char_u *fname, exarg_T *eap);
|
||||
|
||||
#ifdef FEAT_EVAL
|
||||
/* Growarray to store info about already sourced scripts.
|
||||
* For Unix also store the dev/ino, so that we don't have to stat() each
|
||||
* script when going through the list. */
|
||||
typedef struct scriptitem_S
|
||||
{
|
||||
char_u *sn_name;
|
||||
# ifdef UNIX
|
||||
int sn_dev_valid;
|
||||
dev_t sn_dev;
|
||||
ino_t sn_ino;
|
||||
# endif
|
||||
# ifdef FEAT_PROFILE
|
||||
int sn_prof_on; /* TRUE when script is/was profiled */
|
||||
int sn_pr_force; /* forceit: profile functions in this script */
|
||||
proftime_T sn_pr_child; /* time set when going into first child */
|
||||
int sn_pr_nest; /* nesting for sn_pr_child */
|
||||
/* profiling the script as a whole */
|
||||
int sn_pr_count; /* nr of times sourced */
|
||||
proftime_T sn_pr_total; /* time spent in script + children */
|
||||
proftime_T sn_pr_self; /* time spent in script itself */
|
||||
proftime_T sn_pr_start; /* time at script start */
|
||||
proftime_T sn_pr_children; /* time in children after script start */
|
||||
/* profiling the script per line */
|
||||
garray_T sn_prl_ga; /* things stored for every line */
|
||||
proftime_T sn_prl_start; /* start time for current line */
|
||||
proftime_T sn_prl_children; /* time spent in children for this line */
|
||||
proftime_T sn_prl_wait; /* wait start time for current line */
|
||||
int sn_prl_idx; /* index of line being timed; -1 if none */
|
||||
int sn_prl_execed; /* line being timed was executed */
|
||||
# endif
|
||||
} scriptitem_T;
|
||||
|
||||
static garray_T script_items = {0, 0, sizeof(scriptitem_T), 4, NULL};
|
||||
#define SCRIPT_ITEM(id) (((scriptitem_T *)script_items.ga_data)[(id) - 1])
|
||||
|
||||
# ifdef FEAT_PROFILE
|
||||
/* Struct used in sn_prl_ga for every line of a script. */
|
||||
typedef struct sn_prl_S
|
||||
{
|
||||
int snp_count; /* nr of times line was executed */
|
||||
proftime_T sn_prl_total; /* time spent in a line + children */
|
||||
proftime_T sn_prl_self; /* time spent in a line itself */
|
||||
} sn_prl_T;
|
||||
|
||||
# define PRL_ITEM(si, idx) (((sn_prl_T *)(si)->sn_prl_ga.ga_data)[(idx)])
|
||||
# endif
|
||||
#endif
|
||||
|
||||
#if defined(FEAT_EVAL) || defined(PROTO)
|
||||
# if defined(FEAT_PROFILE) || defined(FEAT_RELTIME) || defined(PROTO)
|
||||
/*
|
||||
* Store the current time in "tm".
|
||||
*/
|
||||
void
|
||||
profile_start(proftime_T *tm)
|
||||
{
|
||||
# ifdef MSWIN
|
||||
QueryPerformanceCounter(tm);
|
||||
# else
|
||||
gettimeofday(tm, NULL);
|
||||
# endif
|
||||
}
|
||||
|
||||
/*
|
||||
* Compute the elapsed time from "tm" till now and store in "tm".
|
||||
*/
|
||||
void
|
||||
profile_end(proftime_T *tm)
|
||||
{
|
||||
proftime_T now;
|
||||
|
||||
# ifdef MSWIN
|
||||
QueryPerformanceCounter(&now);
|
||||
tm->QuadPart = now.QuadPart - tm->QuadPart;
|
||||
# else
|
||||
gettimeofday(&now, NULL);
|
||||
tm->tv_usec = now.tv_usec - tm->tv_usec;
|
||||
tm->tv_sec = now.tv_sec - tm->tv_sec;
|
||||
if (tm->tv_usec < 0)
|
||||
{
|
||||
tm->tv_usec += 1000000;
|
||||
--tm->tv_sec;
|
||||
}
|
||||
# endif
|
||||
}
|
||||
|
||||
/*
|
||||
* Subtract the time "tm2" from "tm".
|
||||
*/
|
||||
void
|
||||
profile_sub(proftime_T *tm, proftime_T *tm2)
|
||||
{
|
||||
# ifdef MSWIN
|
||||
tm->QuadPart -= tm2->QuadPart;
|
||||
# else
|
||||
tm->tv_usec -= tm2->tv_usec;
|
||||
tm->tv_sec -= tm2->tv_sec;
|
||||
if (tm->tv_usec < 0)
|
||||
{
|
||||
tm->tv_usec += 1000000;
|
||||
--tm->tv_sec;
|
||||
}
|
||||
# endif
|
||||
}
|
||||
|
||||
/*
|
||||
* Return a string that represents the time in "tm".
|
||||
* Uses a static buffer!
|
||||
*/
|
||||
char *
|
||||
profile_msg(proftime_T *tm)
|
||||
{
|
||||
static char buf[50];
|
||||
|
||||
# ifdef MSWIN
|
||||
LARGE_INTEGER fr;
|
||||
|
||||
QueryPerformanceFrequency(&fr);
|
||||
sprintf(buf, "%10.6lf", (double)tm->QuadPart / (double)fr.QuadPart);
|
||||
# else
|
||||
sprintf(buf, "%3ld.%06ld", (long)tm->tv_sec, (long)tm->tv_usec);
|
||||
# endif
|
||||
return buf;
|
||||
}
|
||||
|
||||
# if defined(FEAT_FLOAT) || defined(PROTO)
|
||||
/*
|
||||
* Return a float that represents the time in "tm".
|
||||
*/
|
||||
float_T
|
||||
profile_float(proftime_T *tm)
|
||||
{
|
||||
# ifdef MSWIN
|
||||
LARGE_INTEGER fr;
|
||||
|
||||
QueryPerformanceFrequency(&fr);
|
||||
return (float_T)tm->QuadPart / (float_T)fr.QuadPart;
|
||||
# else
|
||||
return (float_T)tm->tv_sec + (float_T)tm->tv_usec / 1000000.0;
|
||||
# endif
|
||||
}
|
||||
# endif
|
||||
|
||||
/*
|
||||
* Put the time "msec" past now in "tm".
|
||||
*/
|
||||
void
|
||||
profile_setlimit(long msec, proftime_T *tm)
|
||||
{
|
||||
if (msec <= 0) /* no limit */
|
||||
profile_zero(tm);
|
||||
else
|
||||
{
|
||||
# ifdef MSWIN
|
||||
LARGE_INTEGER fr;
|
||||
|
||||
QueryPerformanceCounter(tm);
|
||||
QueryPerformanceFrequency(&fr);
|
||||
tm->QuadPart += (LONGLONG)((double)msec / 1000.0 * (double)fr.QuadPart);
|
||||
# else
|
||||
long usec;
|
||||
|
||||
gettimeofday(tm, NULL);
|
||||
usec = (long)tm->tv_usec + (long)msec * 1000;
|
||||
tm->tv_usec = usec % 1000000L;
|
||||
tm->tv_sec += usec / 1000000L;
|
||||
# endif
|
||||
}
|
||||
}
|
||||
|
||||
/*
|
||||
* Return TRUE if the current time is past "tm".
|
||||
*/
|
||||
int
|
||||
profile_passed_limit(proftime_T *tm)
|
||||
{
|
||||
proftime_T now;
|
||||
|
||||
# ifdef MSWIN
|
||||
if (tm->QuadPart == 0) /* timer was not set */
|
||||
return FALSE;
|
||||
QueryPerformanceCounter(&now);
|
||||
return (now.QuadPart > tm->QuadPart);
|
||||
# else
|
||||
if (tm->tv_sec == 0) /* timer was not set */
|
||||
return FALSE;
|
||||
gettimeofday(&now, NULL);
|
||||
return (now.tv_sec > tm->tv_sec
|
||||
|| (now.tv_sec == tm->tv_sec && now.tv_usec > tm->tv_usec));
|
||||
# endif
|
||||
}
|
||||
|
||||
/*
|
||||
* Set the time in "tm" to zero.
|
||||
*/
|
||||
void
|
||||
profile_zero(proftime_T *tm)
|
||||
{
|
||||
# ifdef MSWIN
|
||||
tm->QuadPart = 0;
|
||||
# else
|
||||
tm->tv_usec = 0;
|
||||
tm->tv_sec = 0;
|
||||
# endif
|
||||
}
|
||||
|
||||
# endif /* FEAT_PROFILE || FEAT_RELTIME */
|
||||
|
||||
# if defined(FEAT_TIMERS) || defined(PROTO)
|
||||
static timer_T *first_timer = NULL;
|
||||
static long last_timer_id = 0;
|
||||
@@ -318,15 +110,13 @@ create_timer(long msec, int repeat)
|
||||
timer_callback(timer_T *timer)
|
||||
{
|
||||
typval_T rettv;
|
||||
int dummy;
|
||||
typval_T argv[2];
|
||||
|
||||
argv[0].v_type = VAR_NUMBER;
|
||||
argv[0].vval.v_number = (varnumber_T)timer->tr_id;
|
||||
argv[1].v_type = VAR_UNKNOWN;
|
||||
|
||||
call_callback(&timer->tr_callback, -1,
|
||||
&rettv, 1, argv, NULL, 0L, 0L, &dummy, TRUE, NULL);
|
||||
call_callback(&timer->tr_callback, -1, &rettv, 1, argv);
|
||||
clear_tv(&rettv);
|
||||
}
|
||||
|
||||
@@ -603,433 +393,6 @@ timer_free_all()
|
||||
# endif
|
||||
# endif
|
||||
|
||||
#if defined(FEAT_SYN_HL) && defined(FEAT_RELTIME) && defined(FEAT_FLOAT) && defined(FEAT_PROFILE)
|
||||
# if defined(HAVE_MATH_H)
|
||||
# include <math.h>
|
||||
# endif
|
||||
|
||||
/*
|
||||
* Divide the time "tm" by "count" and store in "tm2".
|
||||
*/
|
||||
void
|
||||
profile_divide(proftime_T *tm, int count, proftime_T *tm2)
|
||||
{
|
||||
if (count == 0)
|
||||
profile_zero(tm2);
|
||||
else
|
||||
{
|
||||
# ifdef MSWIN
|
||||
tm2->QuadPart = tm->QuadPart / count;
|
||||
# else
|
||||
double usec = (tm->tv_sec * 1000000.0 + tm->tv_usec) / count;
|
||||
|
||||
tm2->tv_sec = floor(usec / 1000000.0);
|
||||
tm2->tv_usec = vim_round(usec - (tm2->tv_sec * 1000000.0));
|
||||
# endif
|
||||
}
|
||||
}
|
||||
#endif
|
||||
|
||||
# if defined(FEAT_PROFILE) || defined(PROTO)
|
||||
/*
|
||||
* Functions for profiling.
|
||||
*/
|
||||
static void script_dump_profile(FILE *fd);
|
||||
static proftime_T prof_wait_time;
|
||||
|
||||
/*
|
||||
* Add the time "tm2" to "tm".
|
||||
*/
|
||||
void
|
||||
profile_add(proftime_T *tm, proftime_T *tm2)
|
||||
{
|
||||
# ifdef MSWIN
|
||||
tm->QuadPart += tm2->QuadPart;
|
||||
# else
|
||||
tm->tv_usec += tm2->tv_usec;
|
||||
tm->tv_sec += tm2->tv_sec;
|
||||
if (tm->tv_usec >= 1000000)
|
||||
{
|
||||
tm->tv_usec -= 1000000;
|
||||
++tm->tv_sec;
|
||||
}
|
||||
# endif
|
||||
}
|
||||
|
||||
/*
|
||||
* Add the "self" time from the total time and the children's time.
|
||||
*/
|
||||
void
|
||||
profile_self(proftime_T *self, proftime_T *total, proftime_T *children)
|
||||
{
|
||||
/* Check that the result won't be negative. Can happen with recursive
|
||||
* calls. */
|
||||
#ifdef MSWIN
|
||||
if (total->QuadPart <= children->QuadPart)
|
||||
return;
|
||||
#else
|
||||
if (total->tv_sec < children->tv_sec
|
||||
|| (total->tv_sec == children->tv_sec
|
||||
&& total->tv_usec <= children->tv_usec))
|
||||
return;
|
||||
#endif
|
||||
profile_add(self, total);
|
||||
profile_sub(self, children);
|
||||
}
|
||||
|
||||
/*
|
||||
* Get the current waittime.
|
||||
*/
|
||||
void
|
||||
profile_get_wait(proftime_T *tm)
|
||||
{
|
||||
*tm = prof_wait_time;
|
||||
}
|
||||
|
||||
/*
|
||||
* Subtract the passed waittime since "tm" from "tma".
|
||||
*/
|
||||
void
|
||||
profile_sub_wait(proftime_T *tm, proftime_T *tma)
|
||||
{
|
||||
proftime_T tm3 = prof_wait_time;
|
||||
|
||||
profile_sub(&tm3, tm);
|
||||
profile_sub(tma, &tm3);
|
||||
}
|
||||
|
||||
/*
|
||||
* Return TRUE if "tm1" and "tm2" are equal.
|
||||
*/
|
||||
int
|
||||
profile_equal(proftime_T *tm1, proftime_T *tm2)
|
||||
{
|
||||
# ifdef MSWIN
|
||||
return (tm1->QuadPart == tm2->QuadPart);
|
||||
# else
|
||||
return (tm1->tv_usec == tm2->tv_usec && tm1->tv_sec == tm2->tv_sec);
|
||||
# endif
|
||||
}
|
||||
|
||||
/*
|
||||
* Return <0, 0 or >0 if "tm1" < "tm2", "tm1" == "tm2" or "tm1" > "tm2"
|
||||
*/
|
||||
int
|
||||
profile_cmp(const proftime_T *tm1, const proftime_T *tm2)
|
||||
{
|
||||
# ifdef MSWIN
|
||||
return (int)(tm2->QuadPart - tm1->QuadPart);
|
||||
# else
|
||||
if (tm1->tv_sec == tm2->tv_sec)
|
||||
return tm2->tv_usec - tm1->tv_usec;
|
||||
return tm2->tv_sec - tm1->tv_sec;
|
||||
# endif
|
||||
}
|
||||
|
||||
static char_u *profile_fname = NULL;
|
||||
static proftime_T pause_time;
|
||||
|
||||
/*
|
||||
* ":profile cmd args"
|
||||
*/
|
||||
void
|
||||
ex_profile(exarg_T *eap)
|
||||
{
|
||||
char_u *e;
|
||||
int len;
|
||||
|
||||
e = skiptowhite(eap->arg);
|
||||
len = (int)(e - eap->arg);
|
||||
e = skipwhite(e);
|
||||
|
||||
if (len == 5 && STRNCMP(eap->arg, "start", 5) == 0 && *e != NUL)
|
||||
{
|
||||
vim_free(profile_fname);
|
||||
profile_fname = expand_env_save_opt(e, TRUE);
|
||||
do_profiling = PROF_YES;
|
||||
profile_zero(&prof_wait_time);
|
||||
set_vim_var_nr(VV_PROFILING, 1L);
|
||||
}
|
||||
else if (do_profiling == PROF_NONE)
|
||||
emsg(_("E750: First use \":profile start {fname}\""));
|
||||
else if (STRCMP(eap->arg, "pause") == 0)
|
||||
{
|
||||
if (do_profiling == PROF_YES)
|
||||
profile_start(&pause_time);
|
||||
do_profiling = PROF_PAUSED;
|
||||
}
|
||||
else if (STRCMP(eap->arg, "continue") == 0)
|
||||
{
|
||||
if (do_profiling == PROF_PAUSED)
|
||||
{
|
||||
profile_end(&pause_time);
|
||||
profile_add(&prof_wait_time, &pause_time);
|
||||
}
|
||||
do_profiling = PROF_YES;
|
||||
}
|
||||
else
|
||||
{
|
||||
/* The rest is similar to ":breakadd". */
|
||||
ex_breakadd(eap);
|
||||
}
|
||||
}
|
||||
|
||||
/* Command line expansion for :profile. */
|
||||
static enum
|
||||
{
|
||||
PEXP_SUBCMD, /* expand :profile sub-commands */
|
||||
PEXP_FUNC /* expand :profile func {funcname} */
|
||||
} pexpand_what;
|
||||
|
||||
static char *pexpand_cmds[] = {
|
||||
"start",
|
||||
#define PROFCMD_START 0
|
||||
"pause",
|
||||
#define PROFCMD_PAUSE 1
|
||||
"continue",
|
||||
#define PROFCMD_CONTINUE 2
|
||||
"func",
|
||||
#define PROFCMD_FUNC 3
|
||||
"file",
|
||||
#define PROFCMD_FILE 4
|
||||
NULL
|
||||
#define PROFCMD_LAST 5
|
||||
};
|
||||
|
||||
/*
|
||||
* Function given to ExpandGeneric() to obtain the profile command
|
||||
* specific expansion.
|
||||
*/
|
||||
char_u *
|
||||
get_profile_name(expand_T *xp UNUSED, int idx)
|
||||
{
|
||||
switch (pexpand_what)
|
||||
{
|
||||
case PEXP_SUBCMD:
|
||||
return (char_u *)pexpand_cmds[idx];
|
||||
/* case PEXP_FUNC: TODO */
|
||||
default:
|
||||
return NULL;
|
||||
}
|
||||
}
|
||||
|
||||
/*
|
||||
* Handle command line completion for :profile command.
|
||||
*/
|
||||
void
|
||||
set_context_in_profile_cmd(expand_T *xp, char_u *arg)
|
||||
{
|
||||
char_u *end_subcmd;
|
||||
|
||||
/* Default: expand subcommands. */
|
||||
xp->xp_context = EXPAND_PROFILE;
|
||||
pexpand_what = PEXP_SUBCMD;
|
||||
xp->xp_pattern = arg;
|
||||
|
||||
end_subcmd = skiptowhite(arg);
|
||||
if (*end_subcmd == NUL)
|
||||
return;
|
||||
|
||||
if (end_subcmd - arg == 5 && STRNCMP(arg, "start", 5) == 0)
|
||||
{
|
||||
xp->xp_context = EXPAND_FILES;
|
||||
xp->xp_pattern = skipwhite(end_subcmd);
|
||||
return;
|
||||
}
|
||||
|
||||
/* TODO: expand function names after "func" */
|
||||
xp->xp_context = EXPAND_NOTHING;
|
||||
}
|
||||
|
||||
/*
|
||||
* Dump the profiling info.
|
||||
*/
|
||||
void
|
||||
profile_dump(void)
|
||||
{
|
||||
FILE *fd;
|
||||
|
||||
if (profile_fname != NULL)
|
||||
{
|
||||
fd = mch_fopen((char *)profile_fname, "w");
|
||||
if (fd == NULL)
|
||||
semsg(_(e_notopen), profile_fname);
|
||||
else
|
||||
{
|
||||
script_dump_profile(fd);
|
||||
func_dump_profile(fd);
|
||||
fclose(fd);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
/*
|
||||
* Start profiling script "fp".
|
||||
*/
|
||||
static void
|
||||
script_do_profile(scriptitem_T *si)
|
||||
{
|
||||
si->sn_pr_count = 0;
|
||||
profile_zero(&si->sn_pr_total);
|
||||
profile_zero(&si->sn_pr_self);
|
||||
|
||||
ga_init2(&si->sn_prl_ga, sizeof(sn_prl_T), 100);
|
||||
si->sn_prl_idx = -1;
|
||||
si->sn_prof_on = TRUE;
|
||||
si->sn_pr_nest = 0;
|
||||
}
|
||||
|
||||
/*
|
||||
* Save time when starting to invoke another script or function.
|
||||
*/
|
||||
void
|
||||
script_prof_save(
|
||||
proftime_T *tm) /* place to store wait time */
|
||||
{
|
||||
scriptitem_T *si;
|
||||
|
||||
if (current_sctx.sc_sid > 0 && current_sctx.sc_sid <= script_items.ga_len)
|
||||
{
|
||||
si = &SCRIPT_ITEM(current_sctx.sc_sid);
|
||||
if (si->sn_prof_on && si->sn_pr_nest++ == 0)
|
||||
profile_start(&si->sn_pr_child);
|
||||
}
|
||||
profile_get_wait(tm);
|
||||
}
|
||||
|
||||
/*
|
||||
* Count time spent in children after invoking another script or function.
|
||||
*/
|
||||
void
|
||||
script_prof_restore(proftime_T *tm)
|
||||
{
|
||||
scriptitem_T *si;
|
||||
|
||||
if (current_sctx.sc_sid > 0 && current_sctx.sc_sid <= script_items.ga_len)
|
||||
{
|
||||
si = &SCRIPT_ITEM(current_sctx.sc_sid);
|
||||
if (si->sn_prof_on && --si->sn_pr_nest == 0)
|
||||
{
|
||||
profile_end(&si->sn_pr_child);
|
||||
profile_sub_wait(tm, &si->sn_pr_child); /* don't count wait time */
|
||||
profile_add(&si->sn_pr_children, &si->sn_pr_child);
|
||||
profile_add(&si->sn_prl_children, &si->sn_pr_child);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
static proftime_T inchar_time;
|
||||
|
||||
/*
|
||||
* Called when starting to wait for the user to type a character.
|
||||
*/
|
||||
void
|
||||
prof_inchar_enter(void)
|
||||
{
|
||||
profile_start(&inchar_time);
|
||||
}
|
||||
|
||||
/*
|
||||
* Called when finished waiting for the user to type a character.
|
||||
*/
|
||||
void
|
||||
prof_inchar_exit(void)
|
||||
{
|
||||
profile_end(&inchar_time);
|
||||
profile_add(&prof_wait_time, &inchar_time);
|
||||
}
|
||||
|
||||
/*
|
||||
* Dump the profiling results for all scripts in file "fd".
|
||||
*/
|
||||
static void
|
||||
script_dump_profile(FILE *fd)
|
||||
{
|
||||
int id;
|
||||
scriptitem_T *si;
|
||||
int i;
|
||||
FILE *sfd;
|
||||
sn_prl_T *pp;
|
||||
|
||||
for (id = 1; id <= script_items.ga_len; ++id)
|
||||
{
|
||||
si = &SCRIPT_ITEM(id);
|
||||
if (si->sn_prof_on)
|
||||
{
|
||||
fprintf(fd, "SCRIPT %s\n", si->sn_name);
|
||||
if (si->sn_pr_count == 1)
|
||||
fprintf(fd, "Sourced 1 time\n");
|
||||
else
|
||||
fprintf(fd, "Sourced %d times\n", si->sn_pr_count);
|
||||
fprintf(fd, "Total time: %s\n", profile_msg(&si->sn_pr_total));
|
||||
fprintf(fd, " Self time: %s\n", profile_msg(&si->sn_pr_self));
|
||||
fprintf(fd, "\n");
|
||||
fprintf(fd, "count total (s) self (s)\n");
|
||||
|
||||
sfd = mch_fopen((char *)si->sn_name, "r");
|
||||
if (sfd == NULL)
|
||||
fprintf(fd, "Cannot open file!\n");
|
||||
else
|
||||
{
|
||||
/* Keep going till the end of file, so that trailing
|
||||
* continuation lines are listed. */
|
||||
for (i = 0; ; ++i)
|
||||
{
|
||||
if (vim_fgets(IObuff, IOSIZE, sfd))
|
||||
break;
|
||||
/* When a line has been truncated, append NL, taking care
|
||||
* of multi-byte characters . */
|
||||
if (IObuff[IOSIZE - 2] != NUL && IObuff[IOSIZE - 2] != NL)
|
||||
{
|
||||
int n = IOSIZE - 2;
|
||||
|
||||
if (enc_utf8)
|
||||
{
|
||||
/* Move to the first byte of this char.
|
||||
* utf_head_off() doesn't work, because it checks
|
||||
* for a truncated character. */
|
||||
while (n > 0 && (IObuff[n] & 0xc0) == 0x80)
|
||||
--n;
|
||||
}
|
||||
else if (has_mbyte)
|
||||
n -= mb_head_off(IObuff, IObuff + n);
|
||||
IObuff[n] = NL;
|
||||
IObuff[n + 1] = NUL;
|
||||
}
|
||||
if (i < si->sn_prl_ga.ga_len
|
||||
&& (pp = &PRL_ITEM(si, i))->snp_count > 0)
|
||||
{
|
||||
fprintf(fd, "%5d ", pp->snp_count);
|
||||
if (profile_equal(&pp->sn_prl_total, &pp->sn_prl_self))
|
||||
fprintf(fd, " ");
|
||||
else
|
||||
fprintf(fd, "%s ", profile_msg(&pp->sn_prl_total));
|
||||
fprintf(fd, "%s ", profile_msg(&pp->sn_prl_self));
|
||||
}
|
||||
else
|
||||
fprintf(fd, " ");
|
||||
fprintf(fd, "%s", IObuff);
|
||||
}
|
||||
fclose(sfd);
|
||||
}
|
||||
fprintf(fd, "\n");
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
/*
|
||||
* Return TRUE when a function defined in the current script should be
|
||||
* profiled.
|
||||
*/
|
||||
int
|
||||
prof_def_func(void)
|
||||
{
|
||||
if (current_sctx.sc_sid > 0)
|
||||
return SCRIPT_ITEM(current_sctx.sc_sid).sn_pr_force;
|
||||
return FALSE;
|
||||
}
|
||||
|
||||
# endif
|
||||
#endif
|
||||
|
||||
/*
|
||||
@@ -2082,9 +1445,15 @@ ex_listdo(exarg_T *eap)
|
||||
|
||||
#if defined(FEAT_SYN_HL)
|
||||
if (eap->cmdidx != CMD_windo && eap->cmdidx != CMD_tabdo)
|
||||
{
|
||||
/* Don't do syntax HL autocommands. Skipping the syntax file is a
|
||||
* great speed improvement. */
|
||||
save_ei = au_event_disable(",Syntax");
|
||||
|
||||
for (buf = firstbuf; buf != NULL; buf = buf->b_next)
|
||||
buf->b_flags &= ~BF_SYN_SET;
|
||||
buf = curbuf;
|
||||
}
|
||||
#endif
|
||||
#ifdef FEAT_CLIPBOARD
|
||||
start_global_changes();
|
||||
@@ -2276,9 +1645,35 @@ ex_listdo(exarg_T *eap)
|
||||
#if defined(FEAT_SYN_HL)
|
||||
if (save_ei != NULL)
|
||||
{
|
||||
buf_T *bnext;
|
||||
aco_save_T aco;
|
||||
|
||||
au_event_restore(save_ei);
|
||||
apply_autocmds(EVENT_SYNTAX, curbuf->b_p_syn,
|
||||
|
||||
for (buf = firstbuf; buf != NULL; buf = bnext)
|
||||
{
|
||||
bnext = buf->b_next;
|
||||
if (buf->b_nwindows > 0 && (buf->b_flags & BF_SYN_SET))
|
||||
{
|
||||
buf->b_flags &= ~BF_SYN_SET;
|
||||
|
||||
// buffer was opened while Syntax autocommands were disabled,
|
||||
// need to trigger them now.
|
||||
if (buf == curbuf)
|
||||
apply_autocmds(EVENT_SYNTAX, curbuf->b_p_syn,
|
||||
curbuf->b_fname, TRUE, curbuf);
|
||||
else
|
||||
{
|
||||
aucmd_prepbuf(&aco, buf);
|
||||
apply_autocmds(EVENT_SYNTAX, buf->b_p_syn,
|
||||
buf->b_fname, TRUE, buf);
|
||||
aucmd_restbuf(&aco);
|
||||
}
|
||||
|
||||
// start over, in case autocommands messed things up.
|
||||
bnext = firstbuf;
|
||||
}
|
||||
}
|
||||
}
|
||||
#endif
|
||||
#ifdef FEAT_CLIPBOARD
|
||||
@@ -4035,91 +3430,6 @@ get_one_sourceline(struct source_cookie *sp)
|
||||
return NULL;
|
||||
}
|
||||
|
||||
#if defined(FEAT_PROFILE) || defined(PROTO)
|
||||
/*
|
||||
* Called when starting to read a script line.
|
||||
* "sourcing_lnum" must be correct!
|
||||
* When skipping lines it may not actually be executed, but we won't find out
|
||||
* until later and we need to store the time now.
|
||||
*/
|
||||
void
|
||||
script_line_start(void)
|
||||
{
|
||||
scriptitem_T *si;
|
||||
sn_prl_T *pp;
|
||||
|
||||
if (current_sctx.sc_sid <= 0 || current_sctx.sc_sid > script_items.ga_len)
|
||||
return;
|
||||
si = &SCRIPT_ITEM(current_sctx.sc_sid);
|
||||
if (si->sn_prof_on && sourcing_lnum >= 1)
|
||||
{
|
||||
/* Grow the array before starting the timer, so that the time spent
|
||||
* here isn't counted. */
|
||||
(void)ga_grow(&si->sn_prl_ga,
|
||||
(int)(sourcing_lnum - si->sn_prl_ga.ga_len));
|
||||
si->sn_prl_idx = sourcing_lnum - 1;
|
||||
while (si->sn_prl_ga.ga_len <= si->sn_prl_idx
|
||||
&& si->sn_prl_ga.ga_len < si->sn_prl_ga.ga_maxlen)
|
||||
{
|
||||
/* Zero counters for a line that was not used before. */
|
||||
pp = &PRL_ITEM(si, si->sn_prl_ga.ga_len);
|
||||
pp->snp_count = 0;
|
||||
profile_zero(&pp->sn_prl_total);
|
||||
profile_zero(&pp->sn_prl_self);
|
||||
++si->sn_prl_ga.ga_len;
|
||||
}
|
||||
si->sn_prl_execed = FALSE;
|
||||
profile_start(&si->sn_prl_start);
|
||||
profile_zero(&si->sn_prl_children);
|
||||
profile_get_wait(&si->sn_prl_wait);
|
||||
}
|
||||
}
|
||||
|
||||
/*
|
||||
* Called when actually executing a function line.
|
||||
*/
|
||||
void
|
||||
script_line_exec(void)
|
||||
{
|
||||
scriptitem_T *si;
|
||||
|
||||
if (current_sctx.sc_sid <= 0 || current_sctx.sc_sid > script_items.ga_len)
|
||||
return;
|
||||
si = &SCRIPT_ITEM(current_sctx.sc_sid);
|
||||
if (si->sn_prof_on && si->sn_prl_idx >= 0)
|
||||
si->sn_prl_execed = TRUE;
|
||||
}
|
||||
|
||||
/*
|
||||
* Called when done with a script line.
|
||||
*/
|
||||
void
|
||||
script_line_end(void)
|
||||
{
|
||||
scriptitem_T *si;
|
||||
sn_prl_T *pp;
|
||||
|
||||
if (current_sctx.sc_sid <= 0 || current_sctx.sc_sid > script_items.ga_len)
|
||||
return;
|
||||
si = &SCRIPT_ITEM(current_sctx.sc_sid);
|
||||
if (si->sn_prof_on && si->sn_prl_idx >= 0
|
||||
&& si->sn_prl_idx < si->sn_prl_ga.ga_len)
|
||||
{
|
||||
if (si->sn_prl_execed)
|
||||
{
|
||||
pp = &PRL_ITEM(si, si->sn_prl_idx);
|
||||
++pp->snp_count;
|
||||
profile_end(&si->sn_prl_start);
|
||||
profile_sub_wait(&si->sn_prl_wait, &si->sn_prl_start);
|
||||
profile_add(&pp->sn_prl_total, &si->sn_prl_start);
|
||||
profile_self(&pp->sn_prl_self, &si->sn_prl_start,
|
||||
&si->sn_prl_children);
|
||||
}
|
||||
si->sn_prl_idx = -1;
|
||||
}
|
||||
}
|
||||
#endif
|
||||
|
||||
/*
|
||||
* ":scriptencoding": Set encoding conversion for a sourced script.
|
||||
*/
|
||||
|
||||
1532
src/ex_docmd.c
1532
src/ex_docmd.c
File diff suppressed because it is too large
Load Diff
518
src/ex_getln.c
518
src/ex_getln.c
@@ -60,21 +60,11 @@ static int extra_char = NUL; /* extra character to display when redrawing
|
||||
static int extra_char_shift;
|
||||
|
||||
#ifdef FEAT_CMDHIST
|
||||
typedef struct hist_entry
|
||||
{
|
||||
int hisnum; /* identifying number */
|
||||
int viminfo; /* when TRUE hisstr comes from viminfo */
|
||||
char_u *hisstr; /* actual entry, separator char after the NUL */
|
||||
time_t time_set; /* when it was typed, zero if unknown */
|
||||
} histentry_T;
|
||||
|
||||
static histentry_T *(history[HIST_COUNT]) = {NULL, NULL, NULL, NULL, NULL};
|
||||
static int hisidx[HIST_COUNT] = {-1, -1, -1, -1, -1}; /* lastused entry */
|
||||
static int hisnum[HIST_COUNT] = {0, 0, 0, 0, 0};
|
||||
/* identifying (unique) number of newest history entry */
|
||||
static int hislen = 0; /* actual length of history tables */
|
||||
|
||||
static int hist_char2type(int c);
|
||||
#endif
|
||||
|
||||
#ifdef FEAT_RIGHTLEFT
|
||||
@@ -116,9 +106,6 @@ static int ExpandUserDefined(expand_T *xp, regmatch_T *regmatch, int *num_file,
|
||||
static int ExpandUserList(expand_T *xp, int *num_file, char_u ***file);
|
||||
# endif
|
||||
#endif
|
||||
#ifdef FEAT_CMDHIST
|
||||
static void clear_hist_entry(histentry_T *hisptr);
|
||||
#endif
|
||||
|
||||
#ifdef FEAT_CMDWIN
|
||||
static int open_cmdwin(void);
|
||||
@@ -713,6 +700,7 @@ may_adjust_incsearch_highlighting(
|
||||
save_viewstate(&is_state->old_viewstate);
|
||||
update_screen(NOT_VALID);
|
||||
redrawcmdline();
|
||||
curwin->w_cursor = is_state->match_end;
|
||||
}
|
||||
else
|
||||
vim_beep(BO_ERROR);
|
||||
@@ -4834,7 +4822,7 @@ addstar(
|
||||
* EXPAND_COMMANDS Cursor is still touching the command, so complete
|
||||
* it.
|
||||
* EXPAND_BUFFERS Complete file names for :buf and :sbuf commands.
|
||||
* EXPAND_FILES After command with XFILE set, or after setting
|
||||
* EXPAND_FILES After command with EX_XFILE set, or after setting
|
||||
* with P_EXPAND set. eg :e ^I, :w>>^I
|
||||
* EXPAND_DIRECTORIES In some cases this is used instead of the latter
|
||||
* when we know only directories are of interest. eg
|
||||
@@ -5044,7 +5032,7 @@ ExpandFromContext(
|
||||
char_u *pat,
|
||||
int *num_file,
|
||||
char_u ***file,
|
||||
int options) /* EW_ flags */
|
||||
int options) // WILD_ flags
|
||||
{
|
||||
#ifdef FEAT_CMDL_COMPL
|
||||
regmatch_T regmatch;
|
||||
@@ -5107,6 +5095,26 @@ ExpandFromContext(
|
||||
ret = expand_wildcards_eval(&pat, num_file, file, flags);
|
||||
if (free_pat)
|
||||
vim_free(pat);
|
||||
#ifdef BACKSLASH_IN_FILENAME
|
||||
if (p_csl[0] != NUL && (options & WILD_IGNORE_COMPLETESLASH) == 0)
|
||||
{
|
||||
int i;
|
||||
|
||||
for (i = 0; i < *num_file; ++i)
|
||||
{
|
||||
char_u *ptr = (*file)[i];
|
||||
|
||||
while (*ptr != NUL)
|
||||
{
|
||||
if (p_csl[0] == 's' && *ptr == '\\')
|
||||
*ptr = '/';
|
||||
else if (p_csl[0] == 'b' && *ptr == '/')
|
||||
*ptr = '\\';
|
||||
ptr += (*mb_ptr2len)(ptr);
|
||||
}
|
||||
}
|
||||
}
|
||||
#endif
|
||||
return ret;
|
||||
}
|
||||
|
||||
@@ -5872,7 +5880,7 @@ globpath(
|
||||
/*
|
||||
* Translate a history character to the associated type number.
|
||||
*/
|
||||
static int
|
||||
int
|
||||
hist_char2type(int c)
|
||||
{
|
||||
if (c == ':')
|
||||
@@ -6009,7 +6017,7 @@ init_history(void)
|
||||
}
|
||||
}
|
||||
|
||||
static void
|
||||
void
|
||||
clear_hist_entry(histentry_T *hisptr)
|
||||
{
|
||||
hisptr->hisnum = 0;
|
||||
@@ -6022,7 +6030,7 @@ clear_hist_entry(histentry_T *hisptr)
|
||||
* Check if command line 'str' is already in history.
|
||||
* If 'move_to_front' is TRUE, matching entry is moved to end of history.
|
||||
*/
|
||||
static int
|
||||
int
|
||||
in_history(
|
||||
int type,
|
||||
char_u *str,
|
||||
@@ -6628,479 +6636,37 @@ ex_history(exarg_T *eap)
|
||||
#endif
|
||||
|
||||
#if (defined(FEAT_VIMINFO) && defined(FEAT_CMDHIST)) || defined(PROTO)
|
||||
/*
|
||||
* Buffers for history read from a viminfo file. Only valid while reading.
|
||||
*/
|
||||
static histentry_T *viminfo_history[HIST_COUNT] =
|
||||
{NULL, NULL, NULL, NULL, NULL};
|
||||
static int viminfo_hisidx[HIST_COUNT] = {0, 0, 0, 0, 0};
|
||||
static int viminfo_hislen[HIST_COUNT] = {0, 0, 0, 0, 0};
|
||||
static int viminfo_add_at_front = FALSE;
|
||||
|
||||
/*
|
||||
* Translate a history type number to the associated character.
|
||||
*/
|
||||
static int
|
||||
hist_type2char(
|
||||
int type,
|
||||
int use_question) /* use '?' instead of '/' */
|
||||
{
|
||||
if (type == HIST_CMD)
|
||||
return ':';
|
||||
if (type == HIST_SEARCH)
|
||||
{
|
||||
if (use_question)
|
||||
return '?';
|
||||
else
|
||||
return '/';
|
||||
}
|
||||
if (type == HIST_EXPR)
|
||||
return '=';
|
||||
return '@';
|
||||
}
|
||||
|
||||
/*
|
||||
* Prepare for reading the history from the viminfo file.
|
||||
* This allocates history arrays to store the read history lines.
|
||||
*/
|
||||
void
|
||||
prepare_viminfo_history(int asklen, int writing)
|
||||
{
|
||||
int i;
|
||||
int num;
|
||||
int type;
|
||||
int len;
|
||||
|
||||
init_history();
|
||||
viminfo_add_at_front = (asklen != 0 && !writing);
|
||||
if (asklen > hislen)
|
||||
asklen = hislen;
|
||||
|
||||
for (type = 0; type < HIST_COUNT; ++type)
|
||||
{
|
||||
/* Count the number of empty spaces in the history list. Entries read
|
||||
* from viminfo previously are also considered empty. If there are
|
||||
* more spaces available than we request, then fill them up. */
|
||||
for (i = 0, num = 0; i < hislen; i++)
|
||||
if (history[type][i].hisstr == NULL || history[type][i].viminfo)
|
||||
num++;
|
||||
len = asklen;
|
||||
if (num > len)
|
||||
len = num;
|
||||
if (len <= 0)
|
||||
viminfo_history[type] = NULL;
|
||||
else
|
||||
viminfo_history[type] = LALLOC_MULT(histentry_T, len);
|
||||
if (viminfo_history[type] == NULL)
|
||||
len = 0;
|
||||
viminfo_hislen[type] = len;
|
||||
viminfo_hisidx[type] = 0;
|
||||
}
|
||||
}
|
||||
|
||||
/*
|
||||
* Accept a line from the viminfo, store it in the history array when it's
|
||||
* new.
|
||||
*/
|
||||
int
|
||||
read_viminfo_history(vir_T *virp, int writing)
|
||||
get_hislen(void)
|
||||
{
|
||||
int type;
|
||||
long_u len;
|
||||
char_u *val;
|
||||
char_u *p;
|
||||
|
||||
type = hist_char2type(virp->vir_line[0]);
|
||||
if (viminfo_hisidx[type] < viminfo_hislen[type])
|
||||
{
|
||||
val = viminfo_readstring(virp, 1, TRUE);
|
||||
if (val != NULL && *val != NUL)
|
||||
{
|
||||
int sep = (*val == ' ' ? NUL : *val);
|
||||
|
||||
if (!in_history(type, val + (type == HIST_SEARCH),
|
||||
viminfo_add_at_front, sep, writing))
|
||||
{
|
||||
/* Need to re-allocate to append the separator byte. */
|
||||
len = STRLEN(val);
|
||||
p = alloc(len + 2);
|
||||
if (p != NULL)
|
||||
{
|
||||
if (type == HIST_SEARCH)
|
||||
{
|
||||
/* Search entry: Move the separator from the first
|
||||
* column to after the NUL. */
|
||||
mch_memmove(p, val + 1, (size_t)len);
|
||||
p[len] = sep;
|
||||
}
|
||||
else
|
||||
{
|
||||
/* Not a search entry: No separator in the viminfo
|
||||
* file, add a NUL separator. */
|
||||
mch_memmove(p, val, (size_t)len + 1);
|
||||
p[len + 1] = NUL;
|
||||
}
|
||||
viminfo_history[type][viminfo_hisidx[type]].hisstr = p;
|
||||
viminfo_history[type][viminfo_hisidx[type]].time_set = 0;
|
||||
viminfo_history[type][viminfo_hisidx[type]].viminfo = TRUE;
|
||||
viminfo_history[type][viminfo_hisidx[type]].hisnum = 0;
|
||||
viminfo_hisidx[type]++;
|
||||
}
|
||||
}
|
||||
}
|
||||
vim_free(val);
|
||||
}
|
||||
return viminfo_readline(virp);
|
||||
return hislen;
|
||||
}
|
||||
|
||||
histentry_T *
|
||||
get_histentry(int hist_type)
|
||||
{
|
||||
return history[hist_type];
|
||||
}
|
||||
|
||||
/*
|
||||
* Accept a new style history line from the viminfo, store it in the history
|
||||
* array when it's new.
|
||||
*/
|
||||
void
|
||||
handle_viminfo_history(
|
||||
garray_T *values,
|
||||
int writing)
|
||||
set_histentry(int hist_type, histentry_T *entry)
|
||||
{
|
||||
int type;
|
||||
long_u len;
|
||||
char_u *val;
|
||||
char_u *p;
|
||||
bval_T *vp = (bval_T *)values->ga_data;
|
||||
|
||||
/* Check the format:
|
||||
* |{bartype},{histtype},{timestamp},{separator},"text" */
|
||||
if (values->ga_len < 4
|
||||
|| vp[0].bv_type != BVAL_NR
|
||||
|| vp[1].bv_type != BVAL_NR
|
||||
|| (vp[2].bv_type != BVAL_NR && vp[2].bv_type != BVAL_EMPTY)
|
||||
|| vp[3].bv_type != BVAL_STRING)
|
||||
return;
|
||||
|
||||
type = vp[0].bv_nr;
|
||||
if (type >= HIST_COUNT)
|
||||
return;
|
||||
if (viminfo_hisidx[type] < viminfo_hislen[type])
|
||||
{
|
||||
val = vp[3].bv_string;
|
||||
if (val != NULL && *val != NUL)
|
||||
{
|
||||
int sep = type == HIST_SEARCH && vp[2].bv_type == BVAL_NR
|
||||
? vp[2].bv_nr : NUL;
|
||||
int idx;
|
||||
int overwrite = FALSE;
|
||||
|
||||
if (!in_history(type, val, viminfo_add_at_front, sep, writing))
|
||||
{
|
||||
/* If lines were written by an older Vim we need to avoid
|
||||
* getting duplicates. See if the entry already exists. */
|
||||
for (idx = 0; idx < viminfo_hisidx[type]; ++idx)
|
||||
{
|
||||
p = viminfo_history[type][idx].hisstr;
|
||||
if (STRCMP(val, p) == 0
|
||||
&& (type != HIST_SEARCH || sep == p[STRLEN(p) + 1]))
|
||||
{
|
||||
overwrite = TRUE;
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
if (!overwrite)
|
||||
{
|
||||
/* Need to re-allocate to append the separator byte. */
|
||||
len = vp[3].bv_len;
|
||||
p = alloc(len + 2);
|
||||
}
|
||||
else
|
||||
len = 0; /* for picky compilers */
|
||||
if (p != NULL)
|
||||
{
|
||||
viminfo_history[type][idx].time_set = vp[1].bv_nr;
|
||||
if (!overwrite)
|
||||
{
|
||||
mch_memmove(p, val, (size_t)len + 1);
|
||||
/* Put the separator after the NUL. */
|
||||
p[len + 1] = sep;
|
||||
viminfo_history[type][idx].hisstr = p;
|
||||
viminfo_history[type][idx].hisnum = 0;
|
||||
viminfo_history[type][idx].viminfo = TRUE;
|
||||
viminfo_hisidx[type]++;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
history[hist_type] = entry;
|
||||
}
|
||||
|
||||
/*
|
||||
* Concatenate history lines from viminfo after the lines typed in this Vim.
|
||||
*/
|
||||
static void
|
||||
concat_history(int type)
|
||||
int *
|
||||
get_hisidx(int hist_type)
|
||||
{
|
||||
int idx;
|
||||
int i;
|
||||
|
||||
idx = hisidx[type] + viminfo_hisidx[type];
|
||||
if (idx >= hislen)
|
||||
idx -= hislen;
|
||||
else if (idx < 0)
|
||||
idx = hislen - 1;
|
||||
if (viminfo_add_at_front)
|
||||
hisidx[type] = idx;
|
||||
else
|
||||
{
|
||||
if (hisidx[type] == -1)
|
||||
hisidx[type] = hislen - 1;
|
||||
do
|
||||
{
|
||||
if (history[type][idx].hisstr != NULL
|
||||
|| history[type][idx].viminfo)
|
||||
break;
|
||||
if (++idx == hislen)
|
||||
idx = 0;
|
||||
} while (idx != hisidx[type]);
|
||||
if (idx != hisidx[type] && --idx < 0)
|
||||
idx = hislen - 1;
|
||||
}
|
||||
for (i = 0; i < viminfo_hisidx[type]; i++)
|
||||
{
|
||||
vim_free(history[type][idx].hisstr);
|
||||
history[type][idx].hisstr = viminfo_history[type][i].hisstr;
|
||||
history[type][idx].viminfo = TRUE;
|
||||
history[type][idx].time_set = viminfo_history[type][i].time_set;
|
||||
if (--idx < 0)
|
||||
idx = hislen - 1;
|
||||
}
|
||||
idx += 1;
|
||||
idx %= hislen;
|
||||
for (i = 0; i < viminfo_hisidx[type]; i++)
|
||||
{
|
||||
history[type][idx++].hisnum = ++hisnum[type];
|
||||
idx %= hislen;
|
||||
}
|
||||
return &hisidx[hist_type];
|
||||
}
|
||||
|
||||
#if defined(FEAT_CMDL_COMPL) || defined(PROTO)
|
||||
static int
|
||||
sort_hist(const void *s1, const void *s2)
|
||||
int *
|
||||
get_hisnum(int hist_type)
|
||||
{
|
||||
histentry_T *p1 = *(histentry_T **)s1;
|
||||
histentry_T *p2 = *(histentry_T **)s2;
|
||||
|
||||
if (p1->time_set < p2->time_set) return -1;
|
||||
if (p1->time_set > p2->time_set) return 1;
|
||||
return 0;
|
||||
return &hisnum[hist_type];
|
||||
}
|
||||
#endif
|
||||
|
||||
/*
|
||||
* Merge history lines from viminfo and lines typed in this Vim based on the
|
||||
* timestamp;
|
||||
*/
|
||||
static void
|
||||
merge_history(int type)
|
||||
{
|
||||
int max_len;
|
||||
histentry_T **tot_hist;
|
||||
histentry_T *new_hist;
|
||||
int i;
|
||||
int len;
|
||||
|
||||
/* Make one long list with all entries. */
|
||||
max_len = hislen + viminfo_hisidx[type];
|
||||
tot_hist = ALLOC_MULT(histentry_T *, max_len);
|
||||
new_hist = ALLOC_MULT(histentry_T, hislen );
|
||||
if (tot_hist == NULL || new_hist == NULL)
|
||||
{
|
||||
vim_free(tot_hist);
|
||||
vim_free(new_hist);
|
||||
return;
|
||||
}
|
||||
for (i = 0; i < viminfo_hisidx[type]; i++)
|
||||
tot_hist[i] = &viminfo_history[type][i];
|
||||
len = i;
|
||||
for (i = 0; i < hislen; i++)
|
||||
if (history[type][i].hisstr != NULL)
|
||||
tot_hist[len++] = &history[type][i];
|
||||
|
||||
/* Sort the list on timestamp. */
|
||||
qsort((void *)tot_hist, (size_t)len, sizeof(histentry_T *), sort_hist);
|
||||
|
||||
/* Keep the newest ones. */
|
||||
for (i = 0; i < hislen; i++)
|
||||
{
|
||||
if (i < len)
|
||||
{
|
||||
new_hist[i] = *tot_hist[i];
|
||||
tot_hist[i]->hisstr = NULL;
|
||||
if (new_hist[i].hisnum == 0)
|
||||
new_hist[i].hisnum = ++hisnum[type];
|
||||
}
|
||||
else
|
||||
clear_hist_entry(&new_hist[i]);
|
||||
}
|
||||
hisidx[type] = (i < len ? i : len) - 1;
|
||||
|
||||
/* Free what is not kept. */
|
||||
for (i = 0; i < viminfo_hisidx[type]; i++)
|
||||
vim_free(viminfo_history[type][i].hisstr);
|
||||
for (i = 0; i < hislen; i++)
|
||||
vim_free(history[type][i].hisstr);
|
||||
vim_free(history[type]);
|
||||
history[type] = new_hist;
|
||||
vim_free(tot_hist);
|
||||
}
|
||||
|
||||
/*
|
||||
* Finish reading history lines from viminfo. Not used when writing viminfo.
|
||||
*/
|
||||
void
|
||||
finish_viminfo_history(vir_T *virp)
|
||||
{
|
||||
int type;
|
||||
int merge = virp->vir_version >= VIMINFO_VERSION_WITH_HISTORY;
|
||||
|
||||
for (type = 0; type < HIST_COUNT; ++type)
|
||||
{
|
||||
if (history[type] == NULL)
|
||||
continue;
|
||||
|
||||
if (merge)
|
||||
merge_history(type);
|
||||
else
|
||||
concat_history(type);
|
||||
|
||||
VIM_CLEAR(viminfo_history[type]);
|
||||
viminfo_hisidx[type] = 0;
|
||||
}
|
||||
}
|
||||
|
||||
/*
|
||||
* Write history to viminfo file in "fp".
|
||||
* When "merge" is TRUE merge history lines with a previously read viminfo
|
||||
* file, data is in viminfo_history[].
|
||||
* When "merge" is FALSE just write all history lines. Used for ":wviminfo!".
|
||||
*/
|
||||
void
|
||||
write_viminfo_history(FILE *fp, int merge)
|
||||
{
|
||||
int i;
|
||||
int type;
|
||||
int num_saved;
|
||||
int round;
|
||||
|
||||
init_history();
|
||||
if (hislen == 0)
|
||||
return;
|
||||
for (type = 0; type < HIST_COUNT; ++type)
|
||||
{
|
||||
num_saved = get_viminfo_parameter(hist_type2char(type, FALSE));
|
||||
if (num_saved == 0)
|
||||
continue;
|
||||
if (num_saved < 0) /* Use default */
|
||||
num_saved = hislen;
|
||||
fprintf(fp, _("\n# %s History (newest to oldest):\n"),
|
||||
type == HIST_CMD ? _("Command Line") :
|
||||
type == HIST_SEARCH ? _("Search String") :
|
||||
type == HIST_EXPR ? _("Expression") :
|
||||
type == HIST_INPUT ? _("Input Line") :
|
||||
_("Debug Line"));
|
||||
if (num_saved > hislen)
|
||||
num_saved = hislen;
|
||||
|
||||
/*
|
||||
* Merge typed and viminfo history:
|
||||
* round 1: history of typed commands.
|
||||
* round 2: history from recently read viminfo.
|
||||
*/
|
||||
for (round = 1; round <= 2; ++round)
|
||||
{
|
||||
if (round == 1)
|
||||
/* start at newest entry, somewhere in the list */
|
||||
i = hisidx[type];
|
||||
else if (viminfo_hisidx[type] > 0)
|
||||
/* start at newest entry, first in the list */
|
||||
i = 0;
|
||||
else
|
||||
/* empty list */
|
||||
i = -1;
|
||||
if (i >= 0)
|
||||
while (num_saved > 0
|
||||
&& !(round == 2 && i >= viminfo_hisidx[type]))
|
||||
{
|
||||
char_u *p;
|
||||
time_t timestamp;
|
||||
int c = NUL;
|
||||
|
||||
if (round == 1)
|
||||
{
|
||||
p = history[type][i].hisstr;
|
||||
timestamp = history[type][i].time_set;
|
||||
}
|
||||
else
|
||||
{
|
||||
p = viminfo_history[type] == NULL ? NULL
|
||||
: viminfo_history[type][i].hisstr;
|
||||
timestamp = viminfo_history[type] == NULL ? 0
|
||||
: viminfo_history[type][i].time_set;
|
||||
}
|
||||
|
||||
if (p != NULL && (round == 2
|
||||
|| !merge
|
||||
|| !history[type][i].viminfo))
|
||||
{
|
||||
--num_saved;
|
||||
fputc(hist_type2char(type, TRUE), fp);
|
||||
/* For the search history: put the separator in the
|
||||
* second column; use a space if there isn't one. */
|
||||
if (type == HIST_SEARCH)
|
||||
{
|
||||
c = p[STRLEN(p) + 1];
|
||||
putc(c == NUL ? ' ' : c, fp);
|
||||
}
|
||||
viminfo_writestring(fp, p);
|
||||
|
||||
{
|
||||
char cbuf[NUMBUFLEN];
|
||||
|
||||
/* New style history with a bar line. Format:
|
||||
* |{bartype},{histtype},{timestamp},{separator},"text" */
|
||||
if (c == NUL)
|
||||
cbuf[0] = NUL;
|
||||
else
|
||||
sprintf(cbuf, "%d", c);
|
||||
fprintf(fp, "|%d,%d,%ld,%s,", BARTYPE_HISTORY,
|
||||
type, (long)timestamp, cbuf);
|
||||
barline_writestring(fp, p, LSIZE - 20);
|
||||
putc('\n', fp);
|
||||
}
|
||||
}
|
||||
if (round == 1)
|
||||
{
|
||||
/* Decrement index, loop around and stop when back at
|
||||
* the start. */
|
||||
if (--i < 0)
|
||||
i = hislen - 1;
|
||||
if (i == hisidx[type])
|
||||
break;
|
||||
}
|
||||
else
|
||||
{
|
||||
/* Increment index. Stop at the end in the while. */
|
||||
++i;
|
||||
}
|
||||
}
|
||||
}
|
||||
for (i = 0; i < viminfo_hisidx[type]; ++i)
|
||||
if (viminfo_history[type] != NULL)
|
||||
vim_free(viminfo_history[type][i].hisstr);
|
||||
VIM_CLEAR(viminfo_history[type]);
|
||||
viminfo_hisidx[type] = 0;
|
||||
}
|
||||
}
|
||||
#endif /* FEAT_VIMINFO */
|
||||
|
||||
#if defined(FEAT_CMDWIN) || defined(PROTO)
|
||||
/*
|
||||
* Open a window on the current command line and history. Allow editing in
|
||||
|
||||
@@ -166,10 +166,8 @@
|
||||
|
||||
/*
|
||||
* +localmap Mappings and abbreviations local to a buffer.
|
||||
* Now always included.
|
||||
*/
|
||||
#ifdef FEAT_NORMAL
|
||||
# define FEAT_LOCALMAP
|
||||
#endif
|
||||
|
||||
/*
|
||||
* +insert_expand CTRL-N/CTRL-P/CTRL-X in insert mode. Takes about
|
||||
@@ -483,6 +481,11 @@
|
||||
# define FEAT_TEXT_PROP
|
||||
#endif
|
||||
|
||||
#if defined(FEAT_SYN_HL) && defined(FEAT_RELTIME)
|
||||
// Can limit syntax highlight time to 'redrawtime'.
|
||||
# define SYN_TIME_LIMIT 1
|
||||
#endif
|
||||
|
||||
/*
|
||||
* +spell spell checking
|
||||
*
|
||||
@@ -554,9 +557,9 @@
|
||||
|
||||
/*
|
||||
* +mksession ":mksession" command.
|
||||
* Requires +windows and +vertsplit.
|
||||
* fully depends on +eval
|
||||
*/
|
||||
#if defined(FEAT_NORMAL)
|
||||
#if defined(FEAT_EVAL)
|
||||
# define FEAT_SESSION
|
||||
#endif
|
||||
|
||||
@@ -1236,7 +1239,7 @@
|
||||
* +signs Allow signs to be displayed to the left of text lines.
|
||||
* Adds the ":sign" command.
|
||||
*/
|
||||
#if defined(FEAT_BIG) || defined(FEAT_NETBEANS_INTG)
|
||||
#if defined(FEAT_BIG) || defined(FEAT_NETBEANS_INTG) || defined(FEAT_TEXT_PROP)
|
||||
# define FEAT_SIGNS
|
||||
# if ((defined(FEAT_GUI_MOTIF) || defined(FEAT_GUI_ATHENA)) \
|
||||
&& defined(HAVE_X11_XPM_H)) \
|
||||
|
||||
33
src/fileio.c
33
src/fileio.c
@@ -31,9 +31,6 @@ static char_u *next_fenc(char_u **pp);
|
||||
#ifdef FEAT_EVAL
|
||||
static char_u *readfile_charconvert(char_u *fname, char_u *fenc, int *fdp);
|
||||
#endif
|
||||
#ifdef FEAT_VIMINFO
|
||||
static void check_marks_read(void);
|
||||
#endif
|
||||
#ifdef FEAT_CRYPT
|
||||
static char_u *check_for_cryptkey(char_u *cryptkey, char_u *ptr, long *sizep, off_T *filesizep, int newfile, char_u *fname, int *did_ask);
|
||||
#endif
|
||||
@@ -2855,25 +2852,6 @@ readfile_charconvert(
|
||||
}
|
||||
#endif
|
||||
|
||||
|
||||
#ifdef FEAT_VIMINFO
|
||||
/*
|
||||
* Read marks for the current buffer from the viminfo file, when we support
|
||||
* buffer marks and the buffer has a name.
|
||||
*/
|
||||
static void
|
||||
check_marks_read(void)
|
||||
{
|
||||
if (!curbuf->b_marks_read && get_viminfo_parameter('\'') > 0
|
||||
&& curbuf->b_ffname != NULL)
|
||||
read_viminfo(NULL, VIF_WANT_MARKS);
|
||||
|
||||
/* Always set b_marks_read; needed when 'viminfo' is changed to include
|
||||
* the ' parameter after opening a buffer. */
|
||||
curbuf->b_marks_read = TRUE;
|
||||
}
|
||||
#endif
|
||||
|
||||
#if defined(FEAT_CRYPT) || defined(PROTO)
|
||||
/*
|
||||
* Check for magic number used for encryption. Applies to the current buffer.
|
||||
@@ -6123,6 +6101,9 @@ shorten_fnames(int force)
|
||||
}
|
||||
status_redraw_all();
|
||||
redraw_tabline = TRUE;
|
||||
#ifdef FEAT_TEXT_PROP
|
||||
popup_update_preview_title();
|
||||
#endif
|
||||
}
|
||||
|
||||
#if (defined(FEAT_DND) && defined(FEAT_GUI_GTK)) \
|
||||
@@ -6764,6 +6745,8 @@ buf_check_timestamp(
|
||||
#endif
|
||||
))
|
||||
{
|
||||
long prev_b_mtime = buf->b_mtime;
|
||||
|
||||
retval = 1;
|
||||
|
||||
// set b_mtime to stop further warnings (e.g., when executing
|
||||
@@ -6841,7 +6824,11 @@ buf_check_timestamp(
|
||||
if (!n)
|
||||
{
|
||||
if (*reason == 'd')
|
||||
mesg = _("E211: File \"%s\" no longer available");
|
||||
{
|
||||
// Only give the message once.
|
||||
if (prev_b_mtime != -1)
|
||||
mesg = _("E211: File \"%s\" no longer available");
|
||||
}
|
||||
else
|
||||
{
|
||||
helpmesg = TRUE;
|
||||
|
||||
3281
src/getchar.c
3281
src/getchar.c
File diff suppressed because it is too large
Load Diff
836
src/globals.h
836
src/globals.h
File diff suppressed because it is too large
Load Diff
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user