0
0
mirror of https://github.com/vim/vim.git synced 2025-09-24 03:44:06 -04:00

Updated runtime files.

This commit is contained in:
Bram Moolenaar
2016-07-24 14:12:38 +02:00
parent 00b24be454
commit 6f1d9a096b
20 changed files with 12991 additions and 326 deletions

File diff suppressed because one or more lines are too long

View File

@@ -1,4 +1,4 @@
*eval.txt* For Vim version 7.4. Last change: 2016 Jul 23 *eval.txt* For Vim version 7.4. Last change: 2016 Jul 24
VIM REFERENCE MANUAL by Bram Moolenaar VIM REFERENCE MANUAL by Bram Moolenaar
@@ -2306,6 +2306,7 @@ tanh({expr}) Float hyperbolic tangent of {expr}
tempname() String name for a temporary file tempname() String name for a temporary file
test_alloc_fail({id}, {countdown}, {repeat}) test_alloc_fail({id}, {countdown}, {repeat})
none make memory allocation fail none make memory allocation fail
test_autochdir() none enable 'autochdir' during startup
test_disable_char_avail({expr}) none test without typeahead test_disable_char_avail({expr}) none test without typeahead
test_garbagecollect_now() none free memory right now for testing test_garbagecollect_now() none free memory right now for testing
test_null_channel() Channel null value for testing test_null_channel() Channel null value for testing
@@ -7453,6 +7454,9 @@ test_alloc_fail({id}, {countdown}, {repeat}) *test_alloc_fail()*
let memory allocation fail {repeat} times. When {repeat} is let memory allocation fail {repeat} times. When {repeat} is
smaller than one it fails one time. 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_disable_char_avail()* *test_disable_char_avail()*
test_disable_char_avail({expr}) test_disable_char_avail({expr})

View File

@@ -1,4 +1,4 @@
*mbyte.txt* For Vim version 7.4. Last change: 2013 May 18 *mbyte.txt* For Vim version 7.4. Last change: 2016 Jul 21
VIM REFERENCE MANUAL by Bram Moolenaar et al. VIM REFERENCE MANUAL by Bram Moolenaar et al.
@@ -1010,6 +1010,7 @@ text, you can use the 'keymap' option. This will translate one or more
(English) characters to another (non-English) character. This only happens (English) characters to another (non-English) character. This only happens
when typing text, not when typing Vim commands. This avoids having to switch when typing text, not when typing Vim commands. This avoids having to switch
between two keyboard settings. between two keyboard settings.
{only available when compiled with the |+keymap| feature}
The value of the 'keymap' option specifies a keymap file to use. The name of The value of the 'keymap' option specifies a keymap file to use. The name of
this file is one of these two: this file is one of these two:

View File

@@ -1,4 +1,4 @@
*repeat.txt* For Vim version 7.4. Last change: 2016 Jun 11 *repeat.txt* For Vim version 7.4. Last change: 2016 Jul 21
VIM REFERENCE MANUAL by Bram Moolenaar VIM REFERENCE MANUAL by Bram Moolenaar
@@ -295,7 +295,9 @@ For writing a Vim script, see chapter 41 of the user manual |usr_41.txt|.
... not converted ... ... not converted ...
< When conversion isn't supported by the system, there < When conversion isn't supported by the system, there
is no error message and no conversion is done. is no error message and no conversion is done. When a
line can't be converted there is no error and the
original line is kept.
Don't use "ucs-2" or "ucs-4", scripts cannot be in Don't use "ucs-2" or "ucs-4", scripts cannot be in
these encodings (they would contain NUL bytes). these encodings (they would contain NUL bytes).

View File

@@ -1043,6 +1043,21 @@ This works immediately.
CLOJURE *ft-clojure-syntax* CLOJURE *ft-clojure-syntax*
The default syntax groups can be augmented through the
*g:clojure_syntax_keywords* and *b:clojure_syntax_keywords* variables. The
value should be a |Dictionary| of syntax group names to a |List| of custom
identifiers:
>
let g:clojure_syntax_keywords = {
\ 'clojureMacro': ["defproject", "defcustom"],
\ 'clojureFunc': ["string/join", "string/replace"]
\ }
<
Refer to the Clojure syntax script for valid syntax group names.
If the |buffer-variable| *b:clojure_syntax_without_core_keywords* is set, only
language constants and special forms are matched.
Setting *g:clojure_fold* enables folding Clojure code via the syntax engine. Setting *g:clojure_fold* enables folding Clojure code via the syntax engine.
Any list, vector, or map that extends over more than one line can be folded Any list, vector, or map that extends over more than one line can be folded
using the standard Vim |fold-commands|. using the standard Vim |fold-commands|.

View File

@@ -4701,8 +4701,10 @@ TRUE eval.txt /*TRUE*
TSQL ft_sql.txt /*TSQL* TSQL ft_sql.txt /*TSQL*
TTpro-telnet syntax.txt /*TTpro-telnet* TTpro-telnet syntax.txt /*TTpro-telnet*
Tab intro.txt /*Tab* Tab intro.txt /*Tab*
TabClosed autocmd.txt /*TabClosed*
TabEnter autocmd.txt /*TabEnter* TabEnter autocmd.txt /*TabEnter*
TabLeave autocmd.txt /*TabLeave* TabLeave autocmd.txt /*TabLeave*
TabNew autocmd.txt /*TabNew*
Tcl if_tcl.txt /*Tcl* Tcl if_tcl.txt /*Tcl*
TermChanged autocmd.txt /*TermChanged* TermChanged autocmd.txt /*TermChanged*
TermResponse autocmd.txt /*TermResponse* TermResponse autocmd.txt /*TermResponse*
@@ -4748,6 +4750,7 @@ WWW intro.txt /*WWW*
Win32 os_win32.txt /*Win32* Win32 os_win32.txt /*Win32*
WinEnter autocmd.txt /*WinEnter* WinEnter autocmd.txt /*WinEnter*
WinLeave autocmd.txt /*WinLeave* WinLeave autocmd.txt /*WinLeave*
WinNew autocmd.txt /*WinNew*
X change.txt /*X* X change.txt /*X*
X11 options.txt /*X11* X11 options.txt /*X11*
X11-icon gui_x11.txt /*X11-icon* X11-icon gui_x11.txt /*X11-icon*
@@ -4965,6 +4968,7 @@ assert_equal() eval.txt /*assert_equal()*
assert_exception() eval.txt /*assert_exception()* assert_exception() eval.txt /*assert_exception()*
assert_fails() eval.txt /*assert_fails()* assert_fails() eval.txt /*assert_fails()*
assert_false() eval.txt /*assert_false()* assert_false() eval.txt /*assert_false()*
assert_inrange() eval.txt /*assert_inrange()*
assert_match() eval.txt /*assert_match()* assert_match() eval.txt /*assert_match()*
assert_notequal() eval.txt /*assert_notequal()* assert_notequal() eval.txt /*assert_notequal()*
assert_notmatch() eval.txt /*assert_notmatch()* assert_notmatch() eval.txt /*assert_notmatch()*
@@ -5012,6 +5016,8 @@ b motion.txt /*b*
b: eval.txt /*b:* b: eval.txt /*b:*
b:changedtick eval.txt /*b:changedtick* b:changedtick eval.txt /*b:changedtick*
b:changelog_name filetype.txt /*b:changelog_name* b:changelog_name filetype.txt /*b:changelog_name*
b:clojure_syntax_keywords syntax.txt /*b:clojure_syntax_keywords*
b:clojure_syntax_without_core_keywords syntax.txt /*b:clojure_syntax_without_core_keywords*
b:current_syntax-variable syntax.txt /*b:current_syntax-variable* b:current_syntax-variable syntax.txt /*b:current_syntax-variable*
b:netrw_lastfile pi_netrw.txt /*b:netrw_lastfile* b:netrw_lastfile pi_netrw.txt /*b:netrw_lastfile*
b:tex_stylish syntax.txt /*b:tex_stylish* b:tex_stylish syntax.txt /*b:tex_stylish*
@@ -6162,6 +6168,7 @@ g:clojure_fuzzy_indent_blacklist indent.txt /*g:clojure_fuzzy_indent_blacklist*
g:clojure_fuzzy_indent_patterns indent.txt /*g:clojure_fuzzy_indent_patterns* g:clojure_fuzzy_indent_patterns indent.txt /*g:clojure_fuzzy_indent_patterns*
g:clojure_maxlines indent.txt /*g:clojure_maxlines* g:clojure_maxlines indent.txt /*g:clojure_maxlines*
g:clojure_special_indent_words indent.txt /*g:clojure_special_indent_words* g:clojure_special_indent_words indent.txt /*g:clojure_special_indent_words*
g:clojure_syntax_keywords syntax.txt /*g:clojure_syntax_keywords*
g:colors_name options.txt /*g:colors_name* g:colors_name options.txt /*g:colors_name*
g:decada ft_ada.txt /*g:decada* g:decada ft_ada.txt /*g:decada*
g:decada.Error_Format ft_ada.txt /*g:decada.Error_Format* g:decada.Error_Format ft_ada.txt /*g:decada.Error_Format*
@@ -8425,9 +8432,11 @@ t_ZH term.txt /*t_ZH*
t_ZR term.txt /*t_ZR* t_ZR term.txt /*t_ZR*
t_al term.txt /*t_al* t_al term.txt /*t_al*
t_bc term.txt /*t_bc* t_bc term.txt /*t_bc*
t_bool-varialble eval.txt /*t_bool-varialble*
t_cd term.txt /*t_cd* t_cd term.txt /*t_cd*
t_cdl version4.txt /*t_cdl* t_cdl version4.txt /*t_cdl*
t_ce term.txt /*t_ce* t_ce term.txt /*t_ce*
t_channel-varialble eval.txt /*t_channel-varialble*
t_ci version4.txt /*t_ci* t_ci version4.txt /*t_ci*
t_cil version4.txt /*t_cil* t_cil version4.txt /*t_cil*
t_cl term.txt /*t_cl* t_cl term.txt /*t_cl*
@@ -8439,6 +8448,7 @@ t_cv version4.txt /*t_cv*
t_cvv version4.txt /*t_cvv* t_cvv version4.txt /*t_cvv*
t_da term.txt /*t_da* t_da term.txt /*t_da*
t_db term.txt /*t_db* t_db term.txt /*t_db*
t_dict-varialble eval.txt /*t_dict-varialble*
t_dl term.txt /*t_dl* t_dl term.txt /*t_dl*
t_ed version4.txt /*t_ed* t_ed version4.txt /*t_ed*
t_el version4.txt /*t_el* t_el version4.txt /*t_el*
@@ -8452,9 +8462,12 @@ t_f6 version4.txt /*t_f6*
t_f7 version4.txt /*t_f7* t_f7 version4.txt /*t_f7*
t_f8 version4.txt /*t_f8* t_f8 version4.txt /*t_f8*
t_f9 version4.txt /*t_f9* t_f9 version4.txt /*t_f9*
t_float-varialble eval.txt /*t_float-varialble*
t_fs term.txt /*t_fs* t_fs term.txt /*t_fs*
t_func-varialble eval.txt /*t_func-varialble*
t_help version4.txt /*t_help* t_help version4.txt /*t_help*
t_il version4.txt /*t_il* t_il version4.txt /*t_il*
t_job-varialble eval.txt /*t_job-varialble*
t_k1 term.txt /*t_k1* t_k1 term.txt /*t_k1*
t_k2 term.txt /*t_k2* t_k2 term.txt /*t_k2*
t_k3 term.txt /*t_k3* t_k3 term.txt /*t_k3*
@@ -8479,12 +8492,15 @@ t_kr term.txt /*t_kr*
t_ks term.txt /*t_ks* t_ks term.txt /*t_ks*
t_ku term.txt /*t_ku* t_ku term.txt /*t_ku*
t_le term.txt /*t_le* t_le term.txt /*t_le*
t_list-varialble eval.txt /*t_list-varialble*
t_mb term.txt /*t_mb* t_mb term.txt /*t_mb*
t_md term.txt /*t_md* t_md term.txt /*t_md*
t_me term.txt /*t_me* t_me term.txt /*t_me*
t_mr term.txt /*t_mr* t_mr term.txt /*t_mr*
t_ms term.txt /*t_ms* t_ms term.txt /*t_ms*
t_nd term.txt /*t_nd* t_nd term.txt /*t_nd*
t_none-varialble eval.txt /*t_none-varialble*
t_number-varialble eval.txt /*t_number-varialble*
t_op term.txt /*t_op* t_op term.txt /*t_op*
t_se term.txt /*t_se* t_se term.txt /*t_se*
t_sf1 version4.txt /*t_sf1* t_sf1 version4.txt /*t_sf1*
@@ -8504,6 +8520,7 @@ t_sku version4.txt /*t_sku*
t_so term.txt /*t_so* t_so term.txt /*t_so*
t_sr term.txt /*t_sr* t_sr term.txt /*t_sr*
t_star7 term.txt /*t_star7* t_star7 term.txt /*t_star7*
t_string-varialble eval.txt /*t_string-varialble*
t_tb version4.txt /*t_tb* t_tb version4.txt /*t_tb*
t_te term.txt /*t_te* t_te term.txt /*t_te*
t_ti term.txt /*t_ti* t_ti term.txt /*t_ti*
@@ -8637,6 +8654,7 @@ terminfo term.txt /*terminfo*
termresponse-variable eval.txt /*termresponse-variable* termresponse-variable eval.txt /*termresponse-variable*
test-functions usr_41.txt /*test-functions* test-functions usr_41.txt /*test-functions*
test_alloc_fail() eval.txt /*test_alloc_fail()* test_alloc_fail() eval.txt /*test_alloc_fail()*
test_autochdir() eval.txt /*test_autochdir()*
test_disable_char_avail() eval.txt /*test_disable_char_avail()* test_disable_char_avail() eval.txt /*test_disable_char_avail()*
test_garbagecollect_now() eval.txt /*test_garbagecollect_now()* test_garbagecollect_now() eval.txt /*test_garbagecollect_now()*
test_null_channel() eval.txt /*test_null_channel()* test_null_channel() eval.txt /*test_null_channel()*
@@ -8845,6 +8863,17 @@ v:statusmsg eval.txt /*v:statusmsg*
v:swapchoice eval.txt /*v:swapchoice* v:swapchoice eval.txt /*v:swapchoice*
v:swapcommand eval.txt /*v:swapcommand* v:swapcommand eval.txt /*v:swapcommand*
v:swapname eval.txt /*v:swapname* v:swapname eval.txt /*v:swapname*
v:t_TYPE eval.txt /*v:t_TYPE*
v:t_bool eval.txt /*v:t_bool*
v:t_channel eval.txt /*v:t_channel*
v:t_dict eval.txt /*v:t_dict*
v:t_float eval.txt /*v:t_float*
v:t_func eval.txt /*v:t_func*
v:t_job eval.txt /*v:t_job*
v:t_list eval.txt /*v:t_list*
v:t_none eval.txt /*v:t_none*
v:t_number eval.txt /*v:t_number*
v:t_string eval.txt /*v:t_string*
v:termresponse eval.txt /*v:termresponse* v:termresponse eval.txt /*v:termresponse*
v:testing eval.txt /*v:testing* v:testing eval.txt /*v:testing*
v:this_session eval.txt /*v:this_session* v:this_session eval.txt /*v:this_session*

View File

@@ -1,4 +1,4 @@
*todo.txt* For Vim version 7.4. Last change: 2016 Jul 17 *todo.txt* For Vim version 7.4. Last change: 2016 Jul 23
VIM REFERENCE MANUAL by Bram Moolenaar VIM REFERENCE MANUAL by Bram Moolenaar
@@ -35,6 +35,7 @@ not be repeated below, unless there is extra information.
-------------------- Known bugs and current work ----------------------- -------------------- Known bugs and current work -----------------------
+channel: +channel:
- Channel test fails with Motif. Sometimes kills the X11 server.
- When a message in the queue but there is no callback, drop it after a while? - When a message in the queue but there is no callback, drop it after a while?
Add timestamp to queued messages and callbacks with ID, remove after a Add timestamp to queued messages and callbacks with ID, remove after a
minute. Option to set the droptime. minute. Option to set the droptime.
@@ -49,17 +50,6 @@ Later
- job_start(): run job in a newly opened terminal. - job_start(): run job in a newly opened terminal.
With xterm could use -S{pty}. With xterm could use -S{pty}.
Quickfix refactoring. (Yegappan Lakshmanan,)
Quickfix improvements for background building and grepping:
- Add a command modifier ":usefname" to quickfix commands and functions to
keep a file name as a string and not create a buffer for it? To avoid
creating lots of buffers. (Ramel Eshed)
Store the relative file name and set a flag "qf_relative". Before changing
directory turn them into full paths.
When using getqflist() or getloclist() we need to get the bufnr for other
plugins. Add a flag to not do that.
Regexp problems: Regexp problems:
- Since 7.4.704 the old regex engine fails to match [[:print:]] in 0xf6. - Since 7.4.704 the old regex engine fails to match [[:print:]] in 0xf6.
(Manuel Ortega, 2016 Apr 24) (Manuel Ortega, 2016 Apr 24)
@@ -115,17 +105,25 @@ What if there is an invalid character?
Should json_encode()/json_decode() restrict recursiveness? Should json_encode()/json_decode() restrict recursiveness?
Or avoid recursiveness. Or avoid recursiveness.
Also use funcref for substitute, instead of \=. Patch to test popupmenu. Fails, possibly due to a bug.
(Christian Brabandt, 2016 Jul 23)
Patch to define v:t_number etc. (Ken Takata, 2016 Jul 15) 7 In "-- INSERT (lang) --" show the name of the keymap used instead of
"lang". (Ilya Dogolazky)
Patch: Show keymap name in mode indicator (Dmitri Vereshchagin, 2016 Jul 19,
#933)
Python: Extended funcrefs: use func_T* structure in place of char_u* function Patch to fix the Problem using cgn to change a search hit when
names. replacement includes hit. Reported by John Beckett, fix by Christian Brabandt,
(ZyX, 2013 Jul 15, update Sep 22, 24, 28; Update 2013 Dec 15, 2014 Jan 6) 2016 Jan 11.
Also fixes Bug: E685 error for func_unref(). (ZyX, 2010 Aug 5)
Once .exe with updated installer is available: Add remark to download page Once .exe with updated installer is available: Add remark to download page
about /S and /D options (Ken Takata, 2016 Apr 13) about /S and /D options (Ken Takata, 2016 Apr 13)
Or point to nightly builds: https://github.com/vim/vim-win32-installer/releases
Problem with completion on "**/" in $path. (issue #932)
Happens in uniquefy_paths() ? More info Jul 22.
Fix for this (Harm te Hennepe, 2016 Jul 21, #939)
Cursor positioned in the wrong place when editing src/testdir/test_viml.vim. Cursor positioned in the wrong place when editing src/testdir/test_viml.vim.
@@ -138,20 +136,27 @@ Javascript indent wrong after /* in single quoted string:
Use ADDR_OTHER instead of ADDR_LINES for many more commands. Use ADDR_OTHER instead of ADDR_LINES for many more commands.
Add tests for using number larger than number of lines in buffer. Add tests for using number larger than number of lines in buffer.
Updating marks in quickfix list is broken. (Yegappan, 2016 Jul 18)
Invalid behavior with NULL list. (Nikolai Pavlov, #768) Invalid behavior with NULL list. (Nikolai Pavlov, #768)
For current Windows build .pdb file is missing. (Gabriele Fava, 2016 May 11) For current Windows build .pdb file is missing. (Gabriele Fava, 2016 May 11)
5) 5)
Support closure for lambda? Ken Takata is working on it. Support closure for lambda? Ken Takata is working on it.
Patch Jul 19. Still need test updates.
Problem with whitespace in errorformat. (Gerd Wachsmuth, 2016 May 15, #807) Problem with whitespace in errorformat. (Gerd Wachsmuth, 2016 May 15, #807)
Undo problem: "g-" doesn't go back, gets stuck. (Björn Linse, 2016 Jul 18)
Patch to allow setting w:quickfix_title via setqflist() and setloclist() Patch to allow setting w:quickfix_title via setqflist() and setloclist()
functions. (Christian Brabandt, 2013 May 8, update May 21) functions. (Christian Brabandt, 2013 May 8, update May 21)
Patch to add getlocstack() / setlocstack(). (Christian Brabandt, 2013 May 14) Patch to add getlocstack() / setlocstack(). (Christian Brabandt, 2013 May 14)
Second one. Update May 22. Second one. Update May 22.
Update by Daniel Hahler, 2014 Jul 4, Aug 14, Oct 14, Oct 15. Update by Daniel Hahler, 2014 Jul 4, Aug 14, Oct 14, Oct 15.
Rethink this: can we add an argument to setqflist() and getqflist() for these
extra items?
Patch to add filtering of the quickfix list. (Yegappan Lakshmanan, 2016 Mar Patch to add filtering of the quickfix list. (Yegappan Lakshmanan, 2016 Mar
13, last version) Update June 26, #830. 13, last version) Update June 26, #830.
@@ -160,8 +165,6 @@ Instead use a Vim script implementation, invoked from a Vim command.
ml_get errors when reloading file. (Chris Desjardins, 2016 Apr 19) ml_get errors when reloading file. (Chris Desjardins, 2016 Apr 19)
Also with latest version. Also with latest version.
Patch to load rgb.txt once. (Christian Brabandt, 2016 Apr 29)
Still problems with 'emoji'. See issue #721. Patch 7.4.1697 half-fixes it. Still problems with 'emoji'. See issue #721. Patch 7.4.1697 half-fixes it.
Avoid PLAN_WRITE in windgoto() ? Avoid PLAN_WRITE in windgoto() ?
Should already never use utf-8 chars to position the cursor. Should already never use utf-8 chars to position the cursor.
@@ -179,9 +182,6 @@ Otherwise task flickers in taskbar.
Should make ":@r" handle line continuation. (Cesar Romani, 2016 Jun 26) Should make ":@r" handle line continuation. (Cesar Romani, 2016 Jun 26)
Also for ":@.". Also for ":@.".
Patch to add TabNew, TabNewEntered and TabClosed autocommand events.
(Felipe Morales, 2015 Feb 1)
Repeating 'opfunc' in a function only works once. (Tarmean, 2016 Jul 15, #925) Repeating 'opfunc' in a function only works once. (Tarmean, 2016 Jul 15, #925)
Patch on issue #728 by Christian Brabandt, 2016 Apr 7. Update with test: Apr 8. Patch on issue #728 by Christian Brabandt, 2016 Apr 7. Update with test: Apr 8.
@@ -222,7 +222,7 @@ Reject the value? #710.
Patch to support strikethrough next to bold and italic. (Christian Brabandt, Patch to support strikethrough next to bold and italic. (Christian Brabandt,
2013 Jul 30) Update from Ken Takata, 2013 Oct 12. 2013 Jul 30) Update from Ken Takata, 2013 Oct 12.
Update mentioned by Christian, 2016 Apr 25. Update mentioned by Christian, 2016 Apr 25.
Update from Ken Takata, 2016 Apr 26. Update from Ken Takata, 2016 Jul 17.
Patch to improve cscope. (Adrian Kocis, #843) Patch to improve cscope. (Adrian Kocis, #843)
@@ -328,6 +328,8 @@ Patch from Christian Brabandt, 2016 Mar 30, #712.
Patch to be able to use hex numbers with :digraph. (Lcd, 2015 Sep 6) Patch to be able to use hex numbers with :digraph. (Lcd, 2015 Sep 6)
Update Sep 7. Update by Christian Brabandt, 2015 Sep 8, 2016 Feb 1. Update Sep 7. Update by Christian Brabandt, 2015 Sep 8, 2016 Feb 1.
Patch to show search statistics. (Christian Brabandt, 2016 Jul 22)
When the CursorMovedI event triggers, and CTRL-X was typed, a script cannot When the CursorMovedI event triggers, and CTRL-X was typed, a script cannot
restore the mode properly. (Andrew Stewart, 2016 Apr 20) restore the mode properly. (Andrew Stewart, 2016 Apr 20)
Do not trigger the event? Do not trigger the event?
@@ -392,10 +394,6 @@ wrong name. (Aram, 2014 Nov 7) Vim 7.4.
Can't recognize the $ProgramFiles(x86) environment variable. Recognize it Can't recognize the $ProgramFiles(x86) environment variable. Recognize it
specifically? First try with the parens, then without. specifically? First try with the parens, then without.
Half-finished patch to fix the Problem using cgn to change a search hit when
replacement includes hit. Reported by John Beckett, fix by Christian Brabandt,
2016 Jan 11.
Patch to add :mapgroup, put mappings in a group like augroup. Patch to add :mapgroup, put mappings in a group like augroup.
(Yasuhiro Matsumoto, 2016 Feb 19) (Yasuhiro Matsumoto, 2016 Feb 19)
@@ -3558,8 +3556,6 @@ Multi-byte characters:
convert_input() for Mac GUI. convert_input() for Mac GUI.
- Add mnemonics from RFC1345 longer than two characters. - Add mnemonics from RFC1345 longer than two characters.
Support CTRL-K _{mnemonic}_ Support CTRL-K _{mnemonic}_
7 In "-- INSERT (lang) --" show the name of the keymap used instead of
"lang". (Ilya Dogolazky)
- Make 'breakat' accept multi-byte characters. Problem: can't use a lookup - Make 'breakat' accept multi-byte characters. Problem: can't use a lookup
table anymore (breakat_flags[]). table anymore (breakat_flags[]).
Simplistic solution: when 'formatoptions' contains "m" also break a line Simplistic solution: when 'formatoptions' contains "m" also break a line

View File

@@ -1,4 +1,4 @@
*usr_41.txt* For Vim version 7.4. Last change: 2016 Jul 09 *usr_41.txt* For Vim version 7.4. Last change: 2016 Jul 24
VIM USER MANUAL - by Bram Moolenaar VIM USER MANUAL - by Bram Moolenaar
@@ -592,7 +592,7 @@ String manipulation: *string-functions*
match() position where a pattern matches in a string match() position where a pattern matches in a string
matchend() position where a pattern match ends in a string matchend() position where a pattern match ends in a string
matchstr() match of a pattern in a string matchstr() match of a pattern in a string
matchstrpos() match and postions of a pattern in a string matchstrpos() match and positions of a pattern in a string
matchlist() like matchstr() and also return submatches matchlist() like matchstr() and also return submatches
stridx() first index of a short string in a long string stridx() first index of a short string in a long string
strridx() last index of a short string in a long string strridx() last index of a short string in a long string
@@ -810,6 +810,7 @@ Command line: *command-line-functions*
setcmdpos() set position of the cursor in the command line setcmdpos() set position of the cursor in the command line
getcmdtype() return the current command-line type getcmdtype() return the current command-line type
getcmdwintype() return the current command-line window type getcmdwintype() return the current command-line window type
getcompletion() list of command-line completion matches
Quickfix and location lists: *quickfix-functions* Quickfix and location lists: *quickfix-functions*
getqflist() list of quickfix errors getqflist() list of quickfix errors
@@ -907,6 +908,7 @@ Mappings: *mapping-functions*
Testing: *test-functions* Testing: *test-functions*
assert_equal() assert that two expressions values are equal assert_equal() assert that two expressions values are equal
assert_notequal() assert that two expressions values are not equal assert_notequal() assert that two expressions values are not equal
assert_inrange() assert that an expression is inside a range
assert_match() assert that a pattern matches the value assert_match() assert that a pattern matches the value
assert_notmatch() assert that a pattern does not match the value assert_notmatch() assert that a pattern does not match the value
assert_false() assert that an expression is false assert_false() assert that an expression is false
@@ -914,6 +916,7 @@ Testing: *test-functions*
assert_exception() assert that a command throws an exception assert_exception() assert that a command throws an exception
assert_fails() assert that a function call fails assert_fails() assert that a function call fails
test_alloc_fail() make memory allocation fail test_alloc_fail() make memory allocation fail
test_autochdir() enable 'autochdir' during startup
test_disable_char_avail() test without typeahead test_disable_char_avail() test without typeahead
test_garbagecollect_now() free memory right now test_garbagecollect_now() free memory right now
test_null_channel() return a null Channel test_null_channel() return a null Channel

View File

@@ -1,4 +1,4 @@
*version7.txt* For Vim version 7.4. Last change: 2016 Jun 04 *version7.txt* For Vim version 7.4. Last change: 2016 Jul 17
VIM REFERENCE MANUAL by Bram Moolenaar VIM REFERENCE MANUAL by Bram Moolenaar
@@ -18308,4 +18308,5 @@ Solution: Subtract the unsigned numbers and cast to int. (Ken Takata)
Files: src/os_win32.c Files: src/os_win32.c
vim:tw=78:ts=8:ft=help:norl: vim:tw=78:ts=8:ft=help:norl:

File diff suppressed because it is too large Load Diff

View File

@@ -1,7 +1,7 @@
" Vim support file to detect file types " Vim support file to detect file types
" "
" Maintainer: Bram Moolenaar <Bram@vim.org> " Maintainer: Bram Moolenaar <Bram@vim.org>
" Last Change: 2016 Jul 16 " Last Change: 2016 Jul 21
" Listen very carefully, I will say this only once " Listen very carefully, I will say this only once
if exists("did_load_filetypes") if exists("did_load_filetypes")
@@ -534,7 +534,7 @@ au BufNewFile,BufRead configure.in,configure.ac setf config
au BufNewFile,BufRead *.cu setf cuda au BufNewFile,BufRead *.cu setf cuda
" Dockerfile " Dockerfile
au BufNewFile,BufRead Dockerfile setf dockerfile au BufNewFile,BufRead Dockerfile,*.Dockerfile setf dockerfile
" WildPackets EtherPeek Decoder " WildPackets EtherPeek Decoder
au BufNewFile,BufRead *.dcd setf dcd au BufNewFile,BufRead *.dcd setf dcd

View File

@@ -5,7 +5,7 @@
" Maintainer: Sung Pae <self@sungpae.com> " Maintainer: Sung Pae <self@sungpae.com>
" URL: https://github.com/guns/vim-clojure-static " URL: https://github.com/guns/vim-clojure-static
" License: Same as Vim " License: Same as Vim
" Last Change: 27 March 2014 " Last Change: 18 July 2016
if exists("b:did_ftplugin") if exists("b:did_ftplugin")
finish finish
@@ -43,7 +43,7 @@ setlocal commentstring=;\ %s
" specially and hence are not indented specially. " specially and hence are not indented specially.
" "
" -*- LISPWORDS -*- " -*- LISPWORDS -*-
" Generated from https://github.com/guns/vim-clojure-static/blob/vim-release-010/clj/src/vim_clojure_static/generate.clj " Generated from https://github.com/guns/vim-clojure-static/blob/vim-release-011/clj/src/vim_clojure_static/generate.clj
setlocal lispwords=as->,binding,bound-fn,case,catch,cond->,cond->>,condp,def,definline,definterface,defmacro,defmethod,defmulti,defn,defn-,defonce,defprotocol,defrecord,defstruct,deftest,deftest-,deftype,doseq,dotimes,doto,extend,extend-protocol,extend-type,fn,for,if,if-let,if-not,if-some,let,letfn,locking,loop,ns,proxy,reify,set-test,testing,when,when-first,when-let,when-not,when-some,while,with-bindings,with-in-str,with-local-vars,with-open,with-precision,with-redefs,with-redefs-fn,with-test setlocal lispwords=as->,binding,bound-fn,case,catch,cond->,cond->>,condp,def,definline,definterface,defmacro,defmethod,defmulti,defn,defn-,defonce,defprotocol,defrecord,defstruct,deftest,deftest-,deftype,doseq,dotimes,doto,extend,extend-protocol,extend-type,fn,for,if,if-let,if-not,if-some,let,letfn,locking,loop,ns,proxy,reify,set-test,testing,when,when-first,when-let,when-not,when-some,while,with-bindings,with-in-str,with-local-vars,with-open,with-precision,with-redefs,with-redefs-fn,with-test
" Provide insert mode completions for special forms and clojure.core. As " Provide insert mode completions for special forms and clojure.core. As

View File

@@ -6,12 +6,7 @@
" Maintainer: Sung Pae <self@sungpae.com> " Maintainer: Sung Pae <self@sungpae.com>
" URL: https://github.com/guns/vim-clojure-static " URL: https://github.com/guns/vim-clojure-static
" License: Same as Vim " License: Same as Vim
" Last Change: 27 March 2014 " Last Change: 18 July 2016
" TODO: Indenting after multibyte characters is broken:
" (let [Δ (if foo
" bar ; Indent error
" baz)])
if exists("b:did_indent") if exists("b:did_indent")
finish finish
@@ -57,27 +52,30 @@ if exists("*searchpairpos")
let g:clojure_align_subforms = 0 let g:clojure_align_subforms = 0
endif endif
function! s:SynIdName() function! s:syn_id_name()
return synIDattr(synID(line("."), col("."), 0), "name") return synIDattr(synID(line("."), col("."), 0), "name")
endfunction endfunction
function! s:CurrentChar() function! s:ignored_region()
return s:syn_id_name() =~? '\vstring|regex|comment|character'
endfunction
function! s:current_char()
return getline('.')[col('.')-1] return getline('.')[col('.')-1]
endfunction endfunction
function! s:CurrentWord() function! s:current_word()
return getline('.')[col('.')-1 : searchpos('\v>', 'n', line('.'))[1]-2] return getline('.')[col('.')-1 : searchpos('\v>', 'n', line('.'))[1]-2]
endfunction endfunction
function! s:IsParen() function! s:is_paren()
return s:CurrentChar() =~# '\v[\(\)\[\]\{\}]' && return s:current_char() =~# '\v[\(\)\[\]\{\}]' && !s:ignored_region()
\ s:SynIdName() !~? '\vstring|regex|comment|character'
endfunction endfunction
" Returns 1 if string matches a pattern in 'patterns', which may be a " Returns 1 if string matches a pattern in 'patterns', which may be a
" list of patterns, or a comma-delimited string of implicitly anchored " list of patterns, or a comma-delimited string of implicitly anchored
" patterns. " patterns.
function! s:MatchesOne(patterns, string) function! s:match_one(patterns, string)
let list = type(a:patterns) == type([]) let list = type(a:patterns) == type([])
\ ? a:patterns \ ? a:patterns
\ : map(split(a:patterns, ','), '"^" . v:val . "$"') \ : map(split(a:patterns, ','), '"^" . v:val . "$"')
@@ -86,7 +84,7 @@ if exists("*searchpairpos")
endfor endfor
endfunction endfunction
function! s:MatchPairs(open, close, stopat) function! s:match_pairs(open, close, stopat)
" Stop only on vector and map [ resp. {. Ignore the ones in strings and " Stop only on vector and map [ resp. {. Ignore the ones in strings and
" comments. " comments.
if a:stopat == 0 if a:stopat == 0
@@ -95,11 +93,11 @@ if exists("*searchpairpos")
let stopat = a:stopat let stopat = a:stopat
endif endif
let pos = searchpairpos(a:open, '', a:close, 'bWn', "!s:IsParen()", stopat) let pos = searchpairpos(a:open, '', a:close, 'bWn', "!s:is_paren()", stopat)
return [pos[0], virtcol(pos)] return [pos[0], col(pos)]
endfunction endfunction
function! s:ClojureCheckForStringWorker() function! s:clojure_check_for_string_worker()
" Check whether there is the last character of the previous line is " Check whether there is the last character of the previous line is
" highlighted as a string. If so, we check whether it's a ". In this " highlighted as a string. If so, we check whether it's a ". In this
" case we have to check also the previous character. The " might be the " case we have to check also the previous character. The " might be the
@@ -113,17 +111,17 @@ if exists("*searchpairpos")
call cursor(nb, 0) call cursor(nb, 0)
call cursor(0, col("$") - 1) call cursor(0, col("$") - 1)
if s:SynIdName() !~? "string" if s:syn_id_name() !~? "string"
return -1 return -1
endif endif
" This will not work for a " in the first column... " This will not work for a " in the first column...
if s:CurrentChar() == '"' if s:current_char() == '"'
call cursor(0, col("$") - 2) call cursor(0, col("$") - 2)
if s:SynIdName() !~? "string" if s:syn_id_name() !~? "string"
return -1 return -1
endif endif
if s:CurrentChar() != '\\' if s:current_char() != '\\'
return -1 return -1
endif endif
call cursor(0, col("$") - 1) call cursor(0, col("$") - 1)
@@ -138,40 +136,40 @@ if exists("*searchpairpos")
return indent(".") return indent(".")
endfunction endfunction
function! s:CheckForString() function! s:check_for_string()
let pos = getpos('.') let pos = getpos('.')
try try
let val = s:ClojureCheckForStringWorker() let val = s:clojure_check_for_string_worker()
finally finally
call setpos('.', pos) call setpos('.', pos)
endtry endtry
return val return val
endfunction endfunction
function! s:StripNamespaceAndMacroChars(word) function! s:strip_namespace_and_macro_chars(word)
return substitute(a:word, "\\v%(.*/|[#'`~@^,]*)(.*)", '\1', '') return substitute(a:word, "\\v%(.*/|[#'`~@^,]*)(.*)", '\1', '')
endfunction endfunction
function! s:ClojureIsMethodSpecialCaseWorker(position) function! s:clojure_is_method_special_case_worker(position)
" Find the next enclosing form. " Find the next enclosing form.
call search('\S', 'Wb') call search('\S', 'Wb')
" Special case: we are at a '(('. " Special case: we are at a '(('.
if s:CurrentChar() == '(' if s:current_char() == '('
return 0 return 0
endif endif
call cursor(a:position) call cursor(a:position)
let nextParen = s:MatchPairs('(', ')', 0) let next_paren = s:match_pairs('(', ')', 0)
" Special case: we are now at toplevel. " Special case: we are now at toplevel.
if nextParen == [0, 0] if next_paren == [0, 0]
return 0 return 0
endif endif
call cursor(nextParen) call cursor(next_paren)
call search('\S', 'W') call search('\S', 'W')
let w = s:StripNamespaceAndMacroChars(s:CurrentWord()) let w = s:strip_namespace_and_macro_chars(s:current_word())
if g:clojure_special_indent_words =~# '\V\<' . w . '\>' if g:clojure_special_indent_words =~# '\V\<' . w . '\>'
return 1 return 1
endif endif
@@ -179,27 +177,43 @@ if exists("*searchpairpos")
return 0 return 0
endfunction endfunction
function! s:IsMethodSpecialCase(position) function! s:is_method_special_case(position)
let pos = getpos('.') let pos = getpos('.')
try try
let val = s:ClojureIsMethodSpecialCaseWorker(a:position) let val = s:clojure_is_method_special_case_worker(a:position)
finally finally
call setpos('.', pos) call setpos('.', pos)
endtry endtry
return val return val
endfunction endfunction
function! GetClojureIndent() " Check if form is a reader conditional, that is, it is prefixed by #?
" or @#?
function! s:is_reader_conditional_special_case(position)
if getline(a:position[0])[a:position[1] - 3 : a:position[1] - 2] == "#?"
return 1
endif
return 0
endfunction
" Returns 1 for opening brackets, -1 for _anything else_.
function! s:bracket_type(char)
return stridx('([{', a:char) > -1 ? 1 : -1
endfunction
" Returns: [opening-bracket-lnum, indent]
function! s:clojure_indent_pos()
" Get rid of special case. " Get rid of special case.
if line(".") == 1 if line(".") == 1
return 0 return [0, 0]
endif endif
" We have to apply some heuristics here to figure out, whether to use " We have to apply some heuristics here to figure out, whether to use
" normal lisp indenting or not. " normal lisp indenting or not.
let i = s:CheckForString() let i = s:check_for_string()
if i > -1 if i > -1
return i + !!g:clojure_align_multiline_strings return [0, i + !!g:clojure_align_multiline_strings]
endif endif
call cursor(0, 1) call cursor(0, 1)
@@ -207,28 +221,28 @@ if exists("*searchpairpos")
" Find the next enclosing [ or {. We can limit the second search " Find the next enclosing [ or {. We can limit the second search
" to the line, where the [ was found. If no [ was there this is " to the line, where the [ was found. If no [ was there this is
" zero and we search for an enclosing {. " zero and we search for an enclosing {.
let paren = s:MatchPairs('(', ')', 0) let paren = s:match_pairs('(', ')', 0)
let bracket = s:MatchPairs('\[', '\]', paren[0]) let bracket = s:match_pairs('\[', '\]', paren[0])
let curly = s:MatchPairs('{', '}', bracket[0]) let curly = s:match_pairs('{', '}', bracket[0])
" In case the curly brace is on a line later then the [ or - in " In case the curly brace is on a line later then the [ or - in
" case they are on the same line - in a higher column, we take the " case they are on the same line - in a higher column, we take the
" curly indent. " curly indent.
if curly[0] > bracket[0] || curly[1] > bracket[1] if curly[0] > bracket[0] || curly[1] > bracket[1]
if curly[0] > paren[0] || curly[1] > paren[1] if curly[0] > paren[0] || curly[1] > paren[1]
return curly[1] return curly
endif endif
endif endif
" If the curly was not chosen, we take the bracket indent - if " If the curly was not chosen, we take the bracket indent - if
" there was one. " there was one.
if bracket[0] > paren[0] || bracket[1] > paren[1] if bracket[0] > paren[0] || bracket[1] > paren[1]
return bracket[1] return bracket
endif endif
" There are neither { nor [ nor (, ie. we are at the toplevel. " There are neither { nor [ nor (, ie. we are at the toplevel.
if paren == [0, 0] if paren == [0, 0]
return 0 return paren
endif endif
" Now we have to reimplement lispindent. This is surprisingly easy, as " Now we have to reimplement lispindent. This is surprisingly easy, as
@@ -246,58 +260,120 @@ if exists("*searchpairpos")
" - In any other case we use the column of the end of the word + 2. " - In any other case we use the column of the end of the word + 2.
call cursor(paren) call cursor(paren)
if s:IsMethodSpecialCase(paren) if s:is_method_special_case(paren)
return paren[1] + &shiftwidth - 1 return [paren[0], paren[1] + &shiftwidth - 1]
endif
if s:is_reader_conditional_special_case(paren)
return paren
endif endif
" In case we are at the last character, we use the paren position. " In case we are at the last character, we use the paren position.
if col("$") - 1 == paren[1] if col("$") - 1 == paren[1]
return paren[1] return paren
endif endif
" In case after the paren is a whitespace, we search for the next word. " In case after the paren is a whitespace, we search for the next word.
call cursor(0, col('.') + 1) call cursor(0, col('.') + 1)
if s:CurrentChar() == ' ' if s:current_char() == ' '
call search('\v\S', 'W') call search('\v\S', 'W')
endif endif
" If we moved to another line, there is no word after the (. We " If we moved to another line, there is no word after the (. We
" use the ( position for indent. " use the ( position for indent.
if line(".") > paren[0] if line(".") > paren[0]
return paren[1] return paren
endif endif
" We still have to check, whether the keyword starts with a (, [ or {. " We still have to check, whether the keyword starts with a (, [ or {.
" In that case we use the ( position for indent. " In that case we use the ( position for indent.
let w = s:CurrentWord() let w = s:current_word()
if stridx('([{', w[0]) > -1 if s:bracket_type(w[0]) == 1
return paren[1] return paren
endif endif
" Test words without namespace qualifiers and leading reader macro " Test words without namespace qualifiers and leading reader macro
" metacharacters. " metacharacters.
" "
" e.g. clojure.core/defn and #'defn should both indent like defn. " e.g. clojure.core/defn and #'defn should both indent like defn.
let ww = s:StripNamespaceAndMacroChars(w) let ww = s:strip_namespace_and_macro_chars(w)
if &lispwords =~# '\V\<' . ww . '\>' if &lispwords =~# '\V\<' . ww . '\>'
return paren[1] + &shiftwidth - 1 return [paren[0], paren[1] + &shiftwidth - 1]
endif endif
if g:clojure_fuzzy_indent if g:clojure_fuzzy_indent
\ && !s:MatchesOne(g:clojure_fuzzy_indent_blacklist, ww) \ && !s:match_one(g:clojure_fuzzy_indent_blacklist, ww)
\ && s:MatchesOne(g:clojure_fuzzy_indent_patterns, ww) \ && s:match_one(g:clojure_fuzzy_indent_patterns, ww)
return paren[1] + &shiftwidth - 1 return [paren[0], paren[1] + &shiftwidth - 1]
endif endif
call search('\v\_s', 'cW') call search('\v\_s', 'cW')
call search('\v\S', 'W') call search('\v\S', 'W')
if paren[0] < line(".") if paren[0] < line(".")
return paren[1] + (g:clojure_align_subforms ? 0 : &shiftwidth - 1) return [paren[0], paren[1] + (g:clojure_align_subforms ? 0 : &shiftwidth - 1)]
endif endif
call search('\v\S', 'bW') call search('\v\S', 'bW')
return virtcol(".") + 1 return [line('.'), col('.') + 1]
endfunction
function! GetClojureIndent()
let lnum = line('.')
let orig_lnum = lnum
let orig_col = col('.')
let [opening_lnum, indent] = s:clojure_indent_pos()
" Account for multibyte characters
if opening_lnum > 0
let indent -= indent - virtcol([opening_lnum, indent])
endif
" Return if there are no previous lines to inherit from
if opening_lnum < 1 || opening_lnum >= lnum - 1
call cursor(orig_lnum, orig_col)
return indent
endif
let bracket_count = 0
" Take the indent of the first previous non-white line that is
" at the same sexp level. cf. src/misc1.c:get_lisp_indent()
while 1
let lnum = prevnonblank(lnum - 1)
let col = 1
if lnum <= opening_lnum
break
endif
call cursor(lnum, col)
" Handle bracket counting edge case
if s:is_paren()
let bracket_count += s:bracket_type(s:current_char())
endif
while 1
if search('\v[(\[{}\])]', '', lnum) < 1
break
elseif !s:ignored_region()
let bracket_count += s:bracket_type(s:current_char())
endif
endwhile
if bracket_count == 0
" Check if this is part of a multiline string
call cursor(lnum, 1)
if s:syn_id_name() !~? '\vstring|regex'
call cursor(orig_lnum, orig_col)
return indent(lnum)
endif
endif
endwhile
call cursor(orig_lnum, orig_col)
return indent
endfunction endfunction
setlocal indentexpr=GetClojureIndent() setlocal indentexpr=GetClojureIndent()

View File

@@ -0,0 +1,108 @@
" Maintainer: Benjamin Linskey <vim@benlinskey.com>
" Last Changed: 2016 July 20
" URL: https://github.com/blinskey/vim-armenian-keymaps
let b:keymap_name = "hy"
loadkeymap
" Capital letters
A Ա
B Բ
C Գ
D Դ
Y Ե
Z Զ
E Է
U Ը
: Թ
+ Ժ
I Ի
L Լ
Q Խ
? Ծ
K Կ
H Հ
@ Ձ
> Ղ
J Ճ
M Մ
# Յ
N Ն
< Շ
O Ո
{ Չ
P Պ
} Ջ
_ Ռ
S Ս
V Վ
T Տ
R Ր
X Ց
W Ւ
\" Փ
G Ք
) Օ
F Ֆ
" Lowercase letters
a ա
b բ
c գ
d դ
y ե
z զ
e է
u ը
; թ
= ժ
i ի
l լ
q խ
/ ծ
k կ
h հ
2 ձ
. ղ
j ճ
m մ
3 յ
n ն
, շ
o ո
[ չ
p պ
] ջ
- ռ
s ս
v վ
t տ
r ր
x ց
w ւ
' փ
g ք
0 օ
f ֆ
& և
" Punctuation
` ՝
~ ՜
1 ։
4 ՛
5 ,
6 -
7 .
8 «
9 »
\\ '
| ՞
" Numbers
! 1
$ 3
% 4
^ 9

View File

@@ -0,0 +1,108 @@
" Maintainer: Benjamin Linskey <vim@benlinskey.com>
" Last Changed: 2016 July 20
" URL: https://github.com/blinskey/vim-armenian-keymaps
let b:keymap_name = "hy"
loadkeymap
" Capital letters
A Ա
P Բ
C Գ
T Դ
Y Ե
Z Զ
E Է
U Ը
: Թ
+ Ժ
I Ի
L Լ
Q Խ
? Ծ
G Կ
H Հ
@ Ձ
> Ղ
J Ճ
M Մ
# Յ
N Ն
< Շ
O Ո
{ Չ
B Պ
} Ջ
_ Ռ
S Ս
W Վ
D Տ
R Ր
X Ց
V Ւ
\" Փ
K Ք
) Օ
F Ֆ
" Lowercase letters
a ա
p բ
c գ
t դ
y ե
z զ
e է
u ը
; թ
= ժ
i ի
l լ
q խ
/ ծ
g կ
h հ
2 ձ
. ղ
j ճ
m մ
3 յ
n ն
, շ
o ո
[ չ
b պ
] ջ
- ռ
s ս
w վ
d տ
r ր
x ց
v ւ
' փ
k ք
0 օ
f ֆ
& և
" Punctuation
` ՝
~ ՜
1 ։
4 ՛
5 ,
6 -
7 .
8 «
9 »
\\ '
| ՞
" Numbers
! 1
$ 3
% 4
^ 9

File diff suppressed because one or more lines are too long

View File

@@ -1,7 +1,7 @@
" Vim syntax file " Vim syntax file
" Language: Python " Language: Python
" Maintainer: Zvezdan Petkovic <zpetkovic@acm.org> " Maintainer: Zvezdan Petkovic <zpetkovic@acm.org>
" Last Change: 2016 Feb 20 " Last Change: 2016 Jul 21
" Credits: Neil Schemenauer <nas@python.ca> " Credits: Neil Schemenauer <nas@python.ca>
" Dmitry Vasiliev " Dmitry Vasiliev
" "
@@ -72,7 +72,7 @@ set cpo&vim
" built-in below (use 'from __future__ import print_function' in 2) " built-in below (use 'from __future__ import print_function' in 2)
" - async and await were added in Python 3.5 and are soft keywords. " - async and await were added in Python 3.5 and are soft keywords.
" "
syn keyword pythonStatement False, None, True syn keyword pythonStatement False None True
syn keyword pythonStatement as assert break continue del exec global syn keyword pythonStatement as assert break continue del exec global
syn keyword pythonStatement lambda nonlocal pass print return with yield syn keyword pythonStatement lambda nonlocal pass print return with yield
syn keyword pythonStatement class def nextgroup=pythonFunction skipwhite syn keyword pythonStatement class def nextgroup=pythonFunction skipwhite

View File

@@ -4,7 +4,12 @@
" Repository: https://github.com/chrisbra/vim-sqloracle-syntax " Repository: https://github.com/chrisbra/vim-sqloracle-syntax
" License: Vim " License: Vim
" Previous Maintainer: Paul Moore " Previous Maintainer: Paul Moore
" Last Change: 2015 Nov 24 " Last Change: 2016 Jul 22
" Changes:
" 02.04.2016: Support for when keyword
" 03.04.2016: Support for join related keywords
" 22.07.2016: Support Oracle Q-Quote-Syntax
if exists("b:current_syntax") if exists("b:current_syntax")
finish finish
@@ -24,10 +29,11 @@ syn keyword sqlKeyword index initial initrans into is level link logging loop
syn keyword sqlKeyword maxextents maxtrans mode modify monitoring syn keyword sqlKeyword maxextents maxtrans mode modify monitoring
syn keyword sqlKeyword nocache nocompress nologging noparallel nowait of offline on online start syn keyword sqlKeyword nocache nocompress nologging noparallel nowait of offline on online start
syn keyword sqlKeyword parallel successful synonym table tablespace then to trigger uid syn keyword sqlKeyword parallel successful synonym table tablespace then to trigger uid
syn keyword sqlKeyword unique user validate values view whenever syn keyword sqlKeyword unique user validate values view when whenever
syn keyword sqlKeyword where with option order pctfree pctused privileges procedure syn keyword sqlKeyword where with option order pctfree pctused privileges procedure
syn keyword sqlKeyword public resource return row rowlabel rownum rows syn keyword sqlKeyword public resource return row rowlabel rownum rows
syn keyword sqlKeyword session share size smallint type using syn keyword sqlKeyword session share size smallint type using
syn keyword sqlKeyword join cross inner outer left right
syn keyword sqlOperator not and or syn keyword sqlOperator not and or
syn keyword sqlOperator in any some all between exists syn keyword sqlOperator in any some all between exists
@@ -47,8 +53,13 @@ syn keyword sqlType boolean char character date float integer long
syn keyword sqlType mlslabel number raw rowid varchar varchar2 varray syn keyword sqlType mlslabel number raw rowid varchar varchar2 varray
" Strings: " Strings:
syn region sqlString start=+"+ skip=+\\\\\|\\"+ end=+"+ syn region sqlString matchgroup=Quote start=+"+ skip=+\\\\\|\\"+ end=+"+
syn region sqlString start=+'+ skip=+\\\\\|\\'+ end=+'+ syn region sqlString matchgroup=Quote start=+'+ skip=+\\\\\|\\'+ end=+'+
syn region sqlString matchgroup=Quote start=+n\?q'\z([^[(<{]\)+ end=+\z1'+
syn region sqlString matchgroup=Quote start=+n\?q'<+ end=+>'+
syn region sqlString matchgroup=Quote start=+n\?q'{+ end=+}'+
syn region sqlString matchgroup=Quote start=+n\?q'(+ end=+)'+
syn region sqlString matchgroup=Quote start=+n\?q'\[+ end=+]'+
" Numbers: " Numbers:
syn match sqlNumber "-\=\<\d*\.\=[0-9_]\>" syn match sqlNumber "-\=\<\d*\.\=[0-9_]\>"
@@ -118,6 +129,7 @@ syn keyword sqlTodo TODO FIXME XXX DEBUG NOTE contained
" Define the default highlighting. " Define the default highlighting.
command -nargs=+ HiLink hi def link <args> command -nargs=+ HiLink hi def link <args>
HiLink Quote Special
HiLink sqlComment Comment HiLink sqlComment Comment
HiLink sqlFunction Function HiLink sqlFunction Function
HiLink sqlKeyword sqlSpecial HiLink sqlKeyword sqlSpecial

View File

@@ -137,7 +137,7 @@
Урок 1.5: ПРОМЯНА НА ТЕКСТ - ДОБАВЯНЕ (APPEND) Урок 1.5: ПРОМЯНА НА ТЕКСТ - ДОБАВЯНЕ (APPEND)
** Натиснете A (Shift+a) , за да добавите текст. ** ** Натиснете A (SHIFT+a) , за да добавите текст. **
1. Придвижете показалеца до реда долу, означен със --->. 1. Придвижете показалеца до реда долу, означен със --->.
Няма значение на коя буква в реда се намира показалеца. Няма значение на коя буква в реда се намира показалеца.
@@ -166,10 +166,10 @@
Внимание! Преди да изпълните която и да е от стъпките долу, прочетете целия урок!! Внимание! Преди да изпълните която и да е от стъпките долу, прочетете целия урок!!
1. Излезте от самоучителя, както направихте в Урок 1.2: :q! 1. Излезте от самоучителя, както направихте в Урок 1.2: :q!
Или, ако имате достъп до друг терминал направете следното там. Или, ако имате достъп до друг терминал, направете следното там.
2. На командния ред напишете следното и натиснете <ENTER>: vim tutor <ENTER> 2. На командния ред напишете следното и натиснете <ENTER>: vim tutor <ENTER>
'vim' е командата която стартира редактора Vim, 'tutor' е името на файла, 'vim' е командата, която стартира редактора Vim, 'tutor' е името на файла,
които искате да промените. Използвайте файл който може да бъде променян. които искате да промените. Използвайте файл който може да бъде променян.
3. Въвеждайте и изтривайте текст по начините, научени в предишните уроци. 3. Въвеждайте и изтривайте текст по начините, научени в предишните уроци.
@@ -191,10 +191,10 @@
2. За да пуснете Vim от командния ред, напишете: vim ИМЕ-НА-ФАЙЛ <ENTER> 2. За да пуснете Vim от командния ред, напишете: vim ИМЕ-НА-ФАЙЛ <ENTER>
3. За да излезете от Vim, напишете: 3. За да излезете от Vim, напишете:
<ESC> :q! <ENTER> за да отхвърлите всички промени.. <ESC> :q! <ENTER> за да отхвърлите всички промени.
ИЛИ напишете: <ESC> :wq <ENTER> за да запишете промените. ИЛИ напишете: <ESC> :wq <ENTER> за да запишете промените.
4. За да изтриете буква намираща се под показалеца, натиснете: x 4. За да изтриете буква намираща се под показалеца, натиснете: x .
5. За да въведете или добавите текст, натиснете: 5. За да въведете или добавите текст, натиснете:
i въведете текста, натиснете <ESC>. Въвежда преди показалеца. i въведете текста, натиснете <ESC>. Въвежда преди показалеца.
@@ -282,11 +282,12 @@
** Ако въведете число преди движението, то се повтаря толкова пъти ** Ако въведете число преди движението, то се повтаря толкова пъти
колкото е числото. ** колкото е числото. **
1. Придвижете показалеца до началото на реда долу , означен със --->. 1. Придвижете показалеца до началото на реда долу, означен със --->.
2. Въведете 2w , за да преместите показалеца с две думи напред. 2. Въведете 2w , за да преместите показалеца с две думи напред.
3. Въведете 3e , за да преместите показалеца до третата дума напред. 3. Въведете 3e , за да преместите показалеца до края на третата дума
напред.
4. Въведете 0 (нула), за да отидете в началото на реда. 4. Въведете 0 (нула), за да отидете в началото на реда.
@@ -309,10 +310,10 @@
изтриване заедно с движение, трябва да въведете числото преди движението: изтриване заедно с движение, трябва да въведете числото преди движението:
d число движение d число движение
1. Придвижете показалеца до първата дума, изписана с ГОЛЕМИ БУКВИ в реда, 1. Придвижете показалеца до първата дума, изписана с ГЛАВНИ БУКВИ в реда,
означен със --->. означен със --->.
2. Въведете d2w , за да изтриете думите, написани с ГОЛЕМИ БУКВИ. 2. Въведете d2w , за да изтриете думите, написани с ГЛАВНИ БУКВИ.
3. Повторете стъпки 1 и 2, за да изтриете последователните 3. Повторете стъпки 1 и 2, за да изтриете последователните
думи, изписани с големи букви с една команда. думи, изписани с големи букви с една команда.
@@ -390,12 +391,12 @@
6. За да се придвижите до началото на ред, натиснете нула - 0 6. За да се придвижите до началото на ред, натиснете нула - 0
7. За да отмените предишни действия натиснете u (малка буква u) 7. За да отмените предишни действия, натиснете u (малка буква u)
За да отмените всички промени на един ред въведете U (главна буква U) За да отмените всички промени на един ред, въведете U (главна буква U)
За да отмените отмените, натиснете CTRL-R За да отмените отмените, натиснете CTRL-R
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Урок 3.1: КОМАНДАТА ЗА ПОСТАВЯНЕ Урок 3.1: КОМАНДАТА ЗА ПОСТАВЯНЕ (PUT)
** Въведете p , за да поставите изтрит преди това текст след ** Въведете p , за да поставите изтрит преди това текст след
@@ -420,10 +421,10 @@
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Урок 3.2: КОМАНДАТА ЗА ЗАМЕСТВАНЕ Урок 3.2: КОМАНДАТА ЗА ЗАМЕСТВАНЕ (REPLACE)
** Въведете rx , за да заместите (replace) буквата под показалеца с x . ** ** Въведете rx , за да заместите буквата под показалеца с x . **
1. Придвижете показалеца до първия ред, означен със ---> долу. 1. Придвижете показалеца до първия ред, означен със ---> долу.
@@ -444,7 +445,7 @@
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Урок 3.3: ОПЕРАТОРЪТ ЗА ПРОМЯНА Урок 3.3: ОПЕРАТОРЪТ ЗА ПРОМЯНА (CHANGE)
** За да промените от мястото на показалеца до края на дума, въведете ce . ** ** За да промените от мястото на показалеца до края на дума, въведете ce . **
@@ -453,11 +454,11 @@
2. Поставете показалеца върху з в тзии. 2. Поставете показалеца върху з в тзии.
3. Въведете ce и правилнят остатък от думата ( в този случай ози). 3. Въведете ce и правилния остатък от думата ( в този случай ози).
4. Натиснете <ESC> и отидете на следващата група букви, които трябва да се променят. 4. Натиснете <ESC> и отидете на следващата група букви, които трябва да се променят.
5. Повтаряйте стъпки 3 и 4 докато първото изречение стане същото като второто. 5. Повтаряйте стъпки 3 и 4, докато първото изречение стане същото като второто.
---> На тзии ред иам неклико дмуи, ктоио требав да се прмнеято като се изповлза оепртореа за промяна. ---> На тзии ред иам неклико дмуи, ктоио требав да се прмнеято като се изповлза оепртореа за промяна.
---> На този ред има няколко думи, които трябва да се променят като се използва оператора за промяна. ---> На този ред има няколко думи, които трябва да се променят като се използва оператора за промяна.
@@ -544,8 +545,8 @@
** Въведете / , последвана от фраза, за да потърсите фразата. ** ** Въведете / , последвана от фраза, за да потърсите фразата. **
1. В Нормален режим въведете / символа. Забележете, че / (наклонената 1. В Нормален режим въведете знака / . Забележете, че / (наклонената
черта) и показалеца се появяват в дъното на екрана, както се случва при черта) и показалецът се появяват в дъното на екрана, както се случва при
използването на командата : . използването на командата : .
2. Сега въведете 'грешшшка' <ENTER>. Това е думата, която ще търсите. 2. Сега въведете 'грешшшка' <ENTER>. Това е думата, която ще търсите.
@@ -580,15 +581,15 @@
5. Придвижете показалеца до друга (,),[,],{ или } скоба и вижте какво прави % . 5. Придвижете показалеца до друга (,),[,],{ или } скоба и вижте какво прави % .
---> Това ( ред за проверка с различни скоби като (, [ ] и { } в него. )) ---> Това ( е ред за проверка с различни скоби като (, [ ] и { } в него. ))
Забележка! Това е много полезно за откриване на грешки на програми с несъответстващи скоби. Забележка! Това е много полезно при откриване на грешки в програми с несъответстващи скоби.
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Урок 4.4: КОМАНДАТА ЗА ЗАМЕСТВАНЕ Урок 4.4: КОМАНДАТА ЗА ЗАМЕСТВАНЕ (SUBSTITUTE)
** Въведете :s/старо/ново/g за да заместите 'старо' със 'ново'. ** ** Въведете :s/старо/ново/g за да заместите 'старо' със 'ново'. **
@@ -621,8 +622,8 @@
число G ви отвежда до съответния ред. число G ви отвежда до съответния ред.
gg ви отвежда до първия ред. gg ви отвежда до първия ред.
2. Ако натиснете / последвано от низ за търсене, търсите НАПРЕД. 2. Ако натиснете / , последвана от низ за търсене, търсите НАПРЕД.
Ако натиснете / последвано от низ за търсене, търсите НАЗАД. Ако натиснете / , последвана от низ за търсене, търсите НАЗАД.
След търсене, въведете n , за да намерите следващо съвпадение с низа, След търсене, въведете n , за да намерите следващо съвпадение с низа,
който търсите в същата посока, в която търсите или N , за да търсите в който търсите в същата посока, в която търсите или N , за да търсите в
обратната посока. обратната посока.
@@ -644,7 +645,7 @@
** Въведете :! , последвано от външна команда, за да я изпълните. ** ** Въведете :! , последвано от външна команда, за да я изпълните. **
1. Въведете познатата ви вече : , за да поставите показалеца в дъното на 1. Въведете познатото ви вече : , за да поставите показалеца в дъното на
екрана. Това ви позволява да въвеждате команда. екрана. Това ви позволява да въвеждате команда.
2. Сега въведете ! (удивителен знак). Това ви позволява да изпълнявате 2. Сега въведете ! (удивителен знак). Това ви позволява да изпълнявате
@@ -673,11 +674,11 @@
3. Сега въведете :w TEST (където TEST е името на файла). 3. Сега въведете :w TEST (където TEST е името на файла).
4. Това записва целия фаил(Самоучителя за Vim) под името TEST. 4. Това записва целия файл (Самоучителя за Vim) под името TEST.
За да проверите, напишете :!dir или :!ls отново за да видите вашата За да проверите, напишете :!dir или :!ls отново и вижте съдържанието
папка. на вашата папка.
Забележете! Ако излезете от Vim и го пуснете отново като напишете на командния Забележете! Ако излезете от Vim и го пуснете отново, като напишете на командния
ред vim TEST , файлът ще бъде точно копие на самоучителя, когато ред vim TEST , файлът ще бъде точно копие на самоучителя, когато
сте го записали. сте го записали.
@@ -686,7 +687,7 @@
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Lesson 5.3: ИЗБОР НА ТЕКСТ ЗА ЗАПИС Урок 5.3: ИЗБОР НА ТЕКСТ ЗА ЗАПИС
** За да запишете част от файла, натиснете v , следвано от движение :w FILENAME ** ** За да запишете част от файла, натиснете v , следвано от движение :w FILENAME **
@@ -704,13 +705,13 @@
5. Vim ще запише избраните редове във файла TEST. Използвайте :!dir или :!ls , 5. Vim ще запише избраните редове във файла TEST. Използвайте :!dir или :!ls ,
за да го видите. Не го изтривайте все още! Ще го използваме в следващия урок. за да го видите. Не го изтривайте все още! Ще го използваме в следващия урок.
Забележете! Като натиснете v започвате видимо избиране (Visual selection). Забележете! Като натиснете v , започвате видимо избиране (Visual selection).
Може да движите показалеца наоколо, за да направите избраното Може да движите показалеца наоколо, за да направите избраното
по-голямо или по-малко. След което, можете да използвате оператор, по-голямо или по-малко. След което, можете да използвате оператор,
за да направите нещо с текста. Например, d изтрива текста. за да направите нещо с текста. Например, d изтрива текста.
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Lesson 5.4: ИЗВЛИЧАНЕ И СЛИВАНЕ НА ФАЙЛОВЕ Урок 5.4: ИЗВЛИЧАНЕ И СЛИВАНЕ НА ФАЙЛОВЕ
** За да вмъкнете съдържание на файл в текущия, въведете :r ИМЕНАФАЙЛ ** ** За да вмъкнете съдържание на файл в текущия, въведете :r ИМЕНАФАЙЛ **
@@ -718,9 +719,9 @@
1. Поставете показалеца над този ред. 1. Поставете показалеца над този ред.
Важно! След като изпълните стъпка 2, ще видите текста от Урок 5.3. След това Важно! След като изпълните стъпка 2, ще видите текста от Урок 5.3. След това
отидете НАДОЛУ за да видите този урок отново. отидете НАДОЛУ, за да видите този урок отново.
2. Сега извлечете файла TEST като използвате командата :r TEST , където TEST 2. Сега извлечете файла TEST, като използвате командата :r TEST , където TEST
е името на файла, което сте използвали. Файла, който извлекохте е вмъкнат е името на файла, което сте използвали. Файла, който извлекохте е вмъкнат
под реда, на който се намира показалеца. под реда, на който се намира показалеца.
@@ -756,14 +757,16 @@
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Lesson 6.1: КОМАНДАТА ЗА ОТВАРЯНЕ Урок 6.1: КОМАНДАТА ЗА ОТВАРЯНЕ (OPEN)
** Натиснете o , за да отворите ред под показалеца и да преминете в режим за въвеждане. ** ** Натиснете o , за да отворите ред под показалеца и да преминете в
режим за въвеждане. **
1. Придвижете показалеца до реда долу означен със --->. 1. Придвижете показалеца до реда долу, означен със --->.
2. Натиснете клавиша o , за да отворите нов ред ПОД показалеца и да преминете в режим за въвеждане. 2. Натиснете клавиша o , за да отворите нов ред ПОД показалеца и да преминете
в режим за въвеждане.
3. Сега въведете някакъв текст и натиснете <ESC> , за да излезете от режима 3. Сега въведете някакъв текст и натиснете <ESC> , за да излезете от режима
за въвеждане. за въвеждане.
@@ -781,7 +784,7 @@
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Урок 6.2: КОМАНДАТА ЗА ДОБАВЯНЕ Урок 6.2: КОМАНДАТА ЗА ДОБАВЯНЕ (APPEND)
** Натиснете a , за да въведете текст СЛЕД показалеца. ** ** Натиснете a , за да въведете текст СЛЕД показалеца. **
@@ -801,8 +804,8 @@
---> Този ре ви позволява да упраж добав на тек в ред. ---> Този ре ви позволява да упраж добав на тек в ред.
---> Този ред ви позволява да упражнявате добавяне на текст в ред. ---> Този ред ви позволява да упражнявате добавяне на текст в ред.
Важно! a, i и A всички ви отвеждат в режим за въвеждане. Единствената разлика е Важно! a, i и A - с всички тях отивате в режим за въвеждане. Единствената
в това, къде се въвеждат знаците. разлика е в това, къде се въвеждат знаците.
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Урок 6.3: ДРУГ НАЧИН ЗА ЗАМЕСТВАНЕ Урок 6.3: ДРУГ НАЧИН ЗА ЗАМЕСТВАНЕ
@@ -823,7 +826,8 @@
---> Ако добавите 123 към xxx ще получите xxx. ---> Ако добавите 123 към xxx ще получите xxx.
---> Ако добавите 123 към 456 ще получите 579. ---> Ако добавите 123 към 456 ще получите 579.
Важно! Режимът за заместване е същия като режима за въвеждане, но всеки въведен знак изтрива съществуващ знак. Важно! Режимът за заместване е същия като режима за въвеждане, но всеки въведен
знак изтрива съществуващ знак.
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Урок 6.4: КОПИРАНЕ И ЗАМЕСТВАНЕ Урок 6.4: КОПИРАНЕ И ЗАМЕСТВАНЕ
@@ -860,7 +864,7 @@
1. Търсете 'разли' като въведете /разли <ENTER> 1. Търсете 'разли' като въведете /разли <ENTER>
Повторете няколко пъти като натискате n . Повторете няколко пъти като натискате n .
2. Задайте настройктата 'ic' (Ignore case) като въведете :set ic 2. Задайте настройката 'ic' (Ignore case) като въведете :set ic
3.Сега търсете 'разли' отново като натискате n . 3.Сега търсете 'разли' отново като натискате n .
Забележете, че сега Разлика и РАЗЛИКА също биват намерени. Забележете, че сега Разлика и РАЗЛИКА също биват намерени.
@@ -884,7 +888,8 @@
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Урок 6 ОБОБЩЕНИЕ Урок 6 ОБОБЩЕНИЕ
1. Натиснете o , за да отворите нов ред ПОД показалеца и да преминете в режим за въвеждане. 1. Натиснете o , за да отворите нов ред ПОД показалеца и да преминете в
режим за въвеждане.
Натиснете O , за да отворите ред НАД показалеца. Натиснете O , за да отворите ред НАД показалеца.
2. Натиснете a , за да въведете текст СЛЕД показалеца. 2. Натиснете a , за да въведете текст СЛЕД показалеца.
@@ -894,7 +899,7 @@
4. Операторът y взима (yank) текст, а p го поставя (paste). 4. Операторът y взима (yank) текст, а p го поставя (paste).
5. Ако въведете R , докато сте в нормaлен режим, преминавате в режим за 5. Ако въведете R , докато сте в нормален режим, преминавате в режим за
заместване, докато натиснете <ESC>. заместване, докато натиснете <ESC>.
6. Ако напишете ":set xxx", задавате настройката "xxx". Ето някои настройки: 6. Ако напишете ":set xxx", задавате настройката "xxx". Ето някои настройки:
@@ -921,7 +926,7 @@
Натиснете CTRL-W CTRL-W (два пъти CTRL-W), за да прескочите от един прозорец в друг. Натиснете CTRL-W CTRL-W (два пъти CTRL-W), за да прескочите от един прозорец в друг.
Въведете :q <ENTER> , за да затворите прозореца за помощ. Въведете :q <ENTER> , за да затворите прозореца за помощ.
Можете да намерите помощ по всякакъв въпрос като напишете Можете да намерите помощ по всякакъв въпрос, като напишете
":help" именакоманда. Опитайте следните (не забравяйте да натискате <ENTER>): ":help" именакоманда. Опитайте следните (не забравяйте да натискате <ENTER>):
:help w :help w
@@ -948,10 +953,10 @@
3. Запишете файла с: 3. Запишете файла с:
:w :w
Следващият път като пуснете Vim той ще осветява текста във файловете, Следващият път като пуснете Vim той ще осветява текста във файловете, които
които отваряте в зависимост от синтаксиса им. отваряте в зависимост от синтаксиса им. Можете да добавите всичките си
Можете да добавите всичките си предпочитани настройки в този файл. предпочитани настройки в този файл. За повече информация, въведете
За повече информация, въведете :help vimrc-intro :help vimrc-intro
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Урок 7.3: ДОВЪРШВАНЕ Урок 7.3: ДОВЪРШВАНЕ
@@ -963,11 +968,11 @@
2. Вижте какви файлове има в папката ви: :!ls или :!dir 2. Вижте какви файлове има в папката ви: :!ls или :!dir
3. Въведете начлото на команда: :e 3. Въведете началото на команда: :e
4. Натиснете CTRL-D и Vim ще ви покаже команди, започващи с "e". 4. Натиснете CTRL-D и Vim ще ви покаже команди, започващи с "e".
5.Натиснете <TAB> и Vim ще допълни командата до ":edit". 5. Натиснете <TAB> и Vim ще допълни командата до ":edit".
6. Сега добавете празно пространство и началото на името на съществуващ файл: 6. Сега добавете празно пространство и началото на името на съществуващ файл:
:edit FIL :edit FIL
@@ -989,12 +994,12 @@
3. Натиснете CTRL-W CTRL-W , за да прескочите в друг прозорец. 3. Натиснете CTRL-W CTRL-W , за да прескочите в друг прозорец.
4. Напишете :q , за да затворите помощния прозорец. 4. Напишете :q , за да затворите помощния прозорец.
5. Създайте файл за стартиране vimrc за да запазите предпочитаните от вас 5. Създайте файл за стартиране vimrc, за да запазите предпочитаните от вас
настройки. настройки.
6. Когато въвеждате команда след : , натиснете CTRL-D , за да видите 6. Когато въвеждате команда след : , натиснете CTRL-D , за да видите
възможностите за допълване. Натиснете <TAB> , за да използвате някоя от възможностите за допълване. Натиснете <TAB> , за да използвате някоя от
предложените възможности за допълване.. предложените възможности за допълване.
@@ -1012,21 +1017,21 @@
Издател: New Riders Издател: New Riders
Това е първата книга, изцяло посветена на Vim. Особено полезна е за Това е първата книга, изцяло посветена на Vim. Особено полезна е за
начинаещи. В нея ще намерите много примери и картинки. начинаещи. В нея ще намерите много примери и картинки.
See http://iccf-holland.org/click5.html Вижте http://iccf-holland.org/click5.html
Следната книга е по-стара и по скоро за Vi отколкото за Vim, но също се препоръчва: Следната книга е по-стара и по-скоро за Vi отколкото за Vim, но също се препоръчва:
Learning the Vi Editor - от Linda Lamb Learning the Vi Editor - от Linda Lamb
Издател: O'Reilly & Associates Inc. Издател: O'Reilly & Associates Inc.
Това е книга, която ще ви запознае с почти всичко във Vi. Това е книга, която ще ви запознае с почти всичко във Vi.
Шестото издание включва и информация за Vim. Шестото издание включва и информация за Vim.
Този самоучител е написан от Michael C. Pierce и Robert K. Ware, Този самоучител е написан от Michael C. Pierce и Robert K. Ware,
Colorado School of Mines, акто използва идеи предоставени от Charles Smith, Colorado School of Mines, като използва идеи предоставени от Charles Smith,
Colorado State University. E-mail: bware@mines.colorado.edu. Colorado State University. E-mail: bware@mines.colorado.edu.
Променен за Vim от Bram Moolenaar. Променен за Vim от Bram Moolenaar.
Превод от Красимир Беров <berov@cpan.org>, юли 2016 Превод от Красимир Беров <berov@cpan.org>, юли 2016.
Този превод е подарък за сина ми Павел и е посветен на българските деца. Този превод е подарък за сина ми Павел и е посветен на българските деца.
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

View File

@@ -13,16 +13,16 @@ msgid ""
msgstr "" msgstr ""
"Project-Id-Version: vim 7.4\n" "Project-Id-Version: vim 7.4\n"
"Report-Msgid-Bugs-To: \n" "Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2016-05-03 16:10+0200\n" "POT-Creation-Date: 2016-07-16 16:34+0200\n"
"PO-Revision-Date: 2016-02-11 14:42+0200\n" "PO-Revision-Date: 2016-07-16 16:50+0200\n"
"Last-Translator: Antonio Colombo <azc100@gmail.com>\n" "Last-Translator: Antonio Colombo <azc100@gmail.com>\n"
"Language-Team: Antonio Colombo <azc100@gmail.com>\n" "Language-Team: Antonio Colombo <azc100@gmail.com>\n"
" Vlad Sandrini <vlad.gently@gmail.com>\n"
" Luciano Montanaro <mikelima@cirulla.net>\n"
"Language: Italian\n" "Language: Italian\n"
"MIME-Version: 1.0\n" "MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=ISO_8859-1\n" "Content-Type: text/plain; charset=ISO_8859-1\n"
"Content-Transfer-Encoding: 8-bit\n" "Content-Transfer-Encoding: 8-bit\n"
" Vlad Sandrini <vlad.gently@gmail.com>\n"
" Luciano Montanaro <mikelima@cirulla.net>\n"
msgid "E831: bf_key_init() called with empty password" msgid "E831: bf_key_init() called with empty password"
msgstr "E831: chiamata a bf_key_init() con password nulla" msgstr "E831: chiamata a bf_key_init() con password nulla"
@@ -54,6 +54,9 @@ msgstr "E82: Non riesco ad allocare alcun buffer, esco..."
msgid "E83: Cannot allocate buffer, using other one..." msgid "E83: Cannot allocate buffer, using other one..."
msgstr "E83: Non riesco ad allocare un buffer, uso l'altro..." msgstr "E83: Non riesco ad allocare un buffer, uso l'altro..."
msgid "E931: Buffer cannot be registered"
msgstr "E931: Non riesco a registrare il buffer"
msgid "E515: No buffers were unloaded" msgid "E515: No buffers were unloaded"
msgstr "E515: Nessun buffer scaricato" msgstr "E515: Nessun buffer scaricato"
@@ -207,6 +210,7 @@ msgstr " riga=%ld id=%d, nome=%s"
msgid "E902: Cannot connect to port" msgid "E902: Cannot connect to port"
msgstr "E902: Non posso commettermi alla porta" msgstr "E902: Non posso commettermi alla porta"
#, c-format
msgid "E917: Cannot use a callback with %s()" msgid "E917: Cannot use a callback with %s()"
msgstr "E917: Non posso usare callback con %s()" msgstr "E917: Non posso usare callback con %s()"
@@ -222,6 +226,7 @@ msgstr "E920: il file _io necessita di impostare _name"
msgid "E915: in_io buffer requires in_buf or in_name to be set" msgid "E915: in_io buffer requires in_buf or in_name to be set"
msgstr "E915: il buffer in_io necessita di impostare in_buf o in_name" msgstr "E915: il buffer in_io necessita di impostare in_buf o in_name"
#, c-format
msgid "E918: buffer must be loaded: %s" msgid "E918: buffer must be loaded: %s"
msgstr "E918: il buffer dev'essere caricato: %s" msgstr "E918: il buffer dev'essere caricato: %s"
@@ -582,6 +587,14 @@ msgstr "E722: Manca virgola nel Dizionario: %s"
msgid "E723: Missing end of Dictionary '}': %s" msgid "E723: Missing end of Dictionary '}': %s"
msgstr "E723: Manca '}' a fine Dizionario: %s" msgstr "E723: Manca '}' a fine Dizionario: %s"
#, c-format
msgid "E125: Illegal argument: %s"
msgstr "E125: Argomento non ammesso: %s"
#, c-format
msgid "E853: Duplicate argument name: %s"
msgstr "E853: Nome argomento duplicato: %s"
msgid "E724: variable nested too deep for displaying" msgid "E724: variable nested too deep for displaying"
msgstr "E724: variabile troppo nidificata per la visualizzazione" msgstr "E724: variabile troppo nidificata per la visualizzazione"
@@ -654,8 +667,8 @@ msgid "E922: expected a dict"
msgstr "E922: aspettavo un Dizionario" msgstr "E922: aspettavo un Dizionario"
msgid "E923: Second argument of function() must be a list or a dict" msgid "E923: Second argument of function() must be a list or a dict"
msgstr "E923: Il secondo argomento di function() dev'essere una Lista" msgstr ""
" o un Dizionario" "E923: Il secondo argomento di function() dev'essere una Lista o un Dizionario"
msgid "" msgid ""
"&OK\n" "&OK\n"
@@ -710,6 +723,7 @@ msgstr "argomento di reverse()"
msgid "E258: Unable to send to client" msgid "E258: Unable to send to client"
msgstr "E258: Impossibile inviare al client" msgstr "E258: Impossibile inviare al client"
#, c-format
msgid "E927: Invalid action: '%s'" msgid "E927: Invalid action: '%s'"
msgstr "E927: Azione non valida: '%s'" msgstr "E927: Azione non valida: '%s'"
@@ -824,14 +838,6 @@ msgstr "E124: Manca '(': %s"
msgid "E862: Cannot use g: here" msgid "E862: Cannot use g: here"
msgstr "E862: Non si pu<70> usare g: qui" msgstr "E862: Non si pu<70> usare g: qui"
#, c-format
msgid "E125: Illegal argument: %s"
msgstr "E125: Argomento non ammesso: %s"
#, c-format
msgid "E853: Duplicate argument name: %s"
msgstr "E853: Nome argomento duplicato: %s"
msgid "E126: Missing :endfunction" msgid "E126: Missing :endfunction"
msgstr "E126: Manca :endfunction" msgstr "E126: Manca :endfunction"
@@ -966,6 +972,10 @@ msgstr " FALLITO"
msgid "E137: Viminfo file is not writable: %s" msgid "E137: Viminfo file is not writable: %s"
msgstr "E137: File viminfo \"%s\" inaccessibile in scrittura" msgstr "E137: File viminfo \"%s\" inaccessibile in scrittura"
#, c-format
msgid "E929: Too many viminfo temp files, like %s!"
msgstr "E929: Troppi file temporanei viminfo, come %s!"
#, c-format #, c-format
msgid "E138: Can't write viminfo file %s!" msgid "E138: Can't write viminfo file %s!"
msgstr "E138: Non riesco a scrivere il file viminfo %s!" msgstr "E138: Non riesco a scrivere il file viminfo %s!"
@@ -1270,9 +1280,8 @@ msgstr "Cerco \"%s\" in \"%s\""
msgid "Searching for \"%s\"" msgid "Searching for \"%s\""
msgstr "Cerco \"%s\"" msgstr "Cerco \"%s\""
#, fuzzy, c-format
msgid "not found in '%s': \"%s\"" msgid "not found in '%s': \"%s\""
msgstr "non trovato in '%s: \"%s\"" msgstr "non trovato in '%s': \"%s\""
msgid "Source Vim script" msgid "Source Vim script"
msgstr "Esegui script Vim" msgstr "Esegui script Vim"
@@ -1507,6 +1516,9 @@ msgstr ""
msgid "E466: :winpos requires two number arguments" msgid "E466: :winpos requires two number arguments"
msgstr "E466: :winpos richiede due argomenti numerici" msgstr "E466: :winpos richiede due argomenti numerici"
msgid "E930: Cannot use :redir inside execute()"
msgstr "E930: Non <20> possibile usare :redir all'interno di execute()"
msgid "Save Redirection" msgid "Save Redirection"
msgstr "Salva Redirezione" msgstr "Salva Redirezione"
@@ -1718,6 +1730,9 @@ msgstr "Espressione"
msgid "Input Line" msgid "Input Line"
msgstr "Riga di Input" msgstr "Riga di Input"
msgid "Debug Line"
msgstr "Riga di Debug"
msgid "E198: cmd_pchar beyond the command length" msgid "E198: cmd_pchar beyond the command length"
msgstr "E198: cmd_pchar dopo la fine del comando" msgstr "E198: cmd_pchar dopo la fine del comando"
@@ -1974,11 +1989,6 @@ msgstr "1 carattere"
msgid "%lld characters" msgid "%lld characters"
msgstr "%lld caratteri" msgstr "%lld caratteri"
#. Explicit typecast avoids warning on Mac OS X 10.6
#, c-format
msgid "%ld characters"
msgstr "%ld caratteri"
msgid "[noeol]" msgid "[noeol]"
msgstr "[noeol]" msgstr "[noeol]"
@@ -2639,6 +2649,7 @@ msgstr "%-5s: %s%*s (Uso: %s)"
msgid "" msgid ""
"\n" "\n"
" a: Find assignments to this symbol\n"
" c: Find functions calling this function\n" " c: Find functions calling this function\n"
" d: Find functions called by this function\n" " d: Find functions called by this function\n"
" e: Find this egrep pattern\n" " e: Find this egrep pattern\n"
@@ -2649,6 +2660,7 @@ msgid ""
" t: Find this text string\n" " t: Find this text string\n"
msgstr "" msgstr ""
"\n" "\n"
" a: Trova assegnazioni a questo simbolo\n"
" c: Trova funzioni che chiamano questa\n" " c: Trova funzioni che chiamano questa\n"
" d: Trova funzioni chiamate da questa\n" " d: Trova funzioni chiamate da questa\n"
" e: Trova questa espressione egrep\n" " e: Trova questa espressione egrep\n"
@@ -2656,7 +2668,7 @@ msgstr ""
" g: Trova questa definizione\n" " g: Trova questa definizione\n"
" i: Trova file che #includono questo file\n" " i: Trova file che #includono questo file\n"
" s: Trova questo simbolo C\n" " s: Trova questo simbolo C\n"
" t: Trova questa stringa\n" " t: Trova questa stringa di testo\n"
#, c-format #, c-format
msgid "E625: cannot open cscope database: %s" msgid "E625: cannot open cscope database: %s"
@@ -2961,6 +2973,10 @@ msgstr "Non posso aprire come script output: \""
msgid "Vim: Error: Failure to start gvim from NetBeans\n" msgid "Vim: Error: Failure to start gvim from NetBeans\n"
msgstr "Vim: Errore: Avvio di gvim da NetBeans non riuscito\n" msgstr "Vim: Errore: Avvio di gvim da NetBeans non riuscito\n"
msgid "Vim: Error: This version of Vim does not run in a Cygwin terminal\n"
msgstr "Vim: Errore: Questa versione di Vim non funziona in un"
" terminale Cygwin\n"
msgid "Vim: Warning: Output is not to a terminal\n" msgid "Vim: Warning: Output is not to a terminal\n"
msgstr "Vim: Avviso: Output non diretto a un terminale\n" msgstr "Vim: Avviso: Output non diretto a un terminale\n"
@@ -4262,29 +4278,27 @@ msgstr ""
msgid "%ld Cols; " msgid "%ld Cols; "
msgstr "%ld Col.; " msgstr "%ld Col.; "
#, c-format msgid "Selected %s%ld of %ld Lines; %lld of %lld Words; %lld of %lld Bytes"
msgid "Selected %s%ld of %ld Lines; %ld of %ld Words; %ld of %ld Bytes"
msgstr "Selezionate %s%ld di %ld Righe; %ld di %ld Parole; %ld di %ld Caratt."
#, c-format
msgid ""
"Selected %s%ld of %ld Lines; %ld of %ld Words; %ld of %ld Chars; %ld of %ld "
"Bytes"
msgstr "" msgstr ""
"Selezionate %s%ld di %ld Righe; %ld di %ld Parole; %ld di %ld Caratt.; %ld " "Selezionate %s%ld di %ld Righe; %lld di %lld Parole; %lld di %lld Caratt."
"di %ld Byte"
#, c-format
msgid "Col %s of %s; Line %ld of %ld; Word %ld of %ld; Byte %ld of %ld"
msgstr "Col. %s di %s; Riga %ld di %ld; Parola %ld di %ld; Caratt. %ld di %ld"
#, c-format
msgid "" msgid ""
"Col %s of %s; Line %ld of %ld; Word %ld of %ld; Char %ld of %ld; Byte %ld of " "Selected %s%ld of %ld Lines; %lld of %lld Words; %lld of %lld Chars; %lld of "
"%ld" "%lld Bytes"
msgstr "" msgstr ""
"Col. %s di %s; Riga %ld di %ld; Parola %ld di %ld; Caratt. %ld di %ld; Byte " "Selezionate %s%ld di %ld Righe; %lld di %lld Parole; %lld di %lld Caratt.;"
"%ld di %ld" " %lld di %lld Byte"
msgid "Col %s of %s; Line %ld of %ld; Word %lld of %lld; Byte %lld of %lld"
msgstr ""
"Col. %s di %s; Riga %ld di %ld; Parola %lld di %lld; Caratt. %lld di %lld"
msgid ""
"Col %s of %s; Line %ld of %ld; Word %lld of %lld; Char %lld of %lld; Byte "
"%lld of %lld"
msgstr ""
"Col. %s di %s; Riga %ld di %ld; Parola %lld di %lld; Caratt. %lld di %lld;"
" Byte %lld di %lld"
#, c-format #, c-format
msgid "(+%ld for BOM)" msgid "(+%ld for BOM)"
@@ -4541,6 +4555,7 @@ msgstr "Stampato: '%s'"
msgid "E244: Illegal charset name \"%s\" in font name \"%s\"" msgid "E244: Illegal charset name \"%s\" in font name \"%s\""
msgstr "E244: Nome di charset non ammesso \"%s\" nel fonte di nome \"%s\"" msgstr "E244: Nome di charset non ammesso \"%s\" nel fonte di nome \"%s\""
#, c-format
msgid "E244: Illegal quality name \"%s\" in font name \"%s\"" msgid "E244: Illegal quality name \"%s\" in font name \"%s\""
msgstr "E244: Nome di qualit<69> non ammesso \"%s\" nel font di nome \"%s\"" msgstr "E244: Nome di qualit<69> non ammesso \"%s\" nel font di nome \"%s\""
@@ -4579,19 +4594,14 @@ msgstr ""
"\n" "\n"
"Non posso impostare il contesto di sicurezza per " "Non posso impostare il contesto di sicurezza per "
#, c-format
msgid "Could not set security context %s for %s" msgid "Could not set security context %s for %s"
msgstr "Non posso impostare il contesto di sicurezza %s per %s" msgstr "Non posso impostare il contesto di sicurezza %s per %s"
#, c-format
msgid "Could not get security context %s for %s. Removing it!" msgid "Could not get security context %s for %s. Removing it!"
msgstr "Non posso ottenere il contesto di sicurezza %s per %s. Lo rimuovo!" msgstr "Non posso ottenere il contesto di sicurezza %s per %s. Lo rimuovo!"
msgid ""
"\n"
"Cannot execute shell "
msgstr ""
"\n"
"Non riesco a eseguire shell "
msgid "" msgid ""
"\n" "\n"
"Cannot execute shell sh\n" "Cannot execute shell sh\n"
@@ -4620,6 +4630,13 @@ msgstr ""
"\n" "\n"
"Non riesco ad effettuare 'fork'\n" "Non riesco ad effettuare 'fork'\n"
msgid ""
"\n"
"Cannot execute shell "
msgstr ""
"\n"
"Non riesco a eseguire shell "
msgid "" msgid ""
"\n" "\n"
"Command terminated\n" "Command terminated\n"
@@ -4717,6 +4734,7 @@ msgstr "E376: %%%c non valido nel prefisso della stringa di 'format'"
msgid "E377: Invalid %%%c in format string" msgid "E377: Invalid %%%c in format string"
msgstr "E377: %%%c non valido nella stringa di 'format'" msgstr "E377: %%%c non valido nella stringa di 'format'"
#. nothing found
msgid "E378: 'errorformat' contains no pattern" msgid "E378: 'errorformat' contains no pattern"
msgstr "E378: 'errorformat' non contiene alcun modello" msgstr "E378: 'errorformat' non contiene alcun modello"
@@ -6649,6 +6667,7 @@ msgstr "E764: opzione '%s' non impostata"
msgid "E850: Invalid register name" msgid "E850: Invalid register name"
msgstr "E850: Nome registro non valido" msgstr "E850: Nome registro non valido"
#, c-format
msgid "E919: Directory not found in '%s': \"%s\"" msgid "E919: Directory not found in '%s': \"%s\""
msgstr "E919: Directory non trovata in '%s': \"%s\"" msgstr "E919: Directory non trovata in '%s': \"%s\""
@@ -6895,6 +6914,7 @@ msgstr ""
msgid "unable to convert %s to vim dictionary" msgid "unable to convert %s to vim dictionary"
msgstr "impossibile convertire %s a dizionario vim" msgstr "impossibile convertire %s a dizionario vim"
#, c-format
msgid "unable to convert %s to vim list" msgid "unable to convert %s to vim list"
msgstr "impossibile convertire %s a Lista vim" msgstr "impossibile convertire %s a Lista vim"
@@ -6926,3 +6946,4 @@ msgid ""
msgstr "" msgstr ""
"Impostazione di percorso non riuscita: sys.path non <20> una lista\n" "Impostazione di percorso non riuscita: sys.path non <20> una lista\n"
"Dovresti aggiungere vim.VIM_SPECIAL_PATH a sys.path" "Dovresti aggiungere vim.VIM_SPECIAL_PATH a sys.path"