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
@ -2306,6 +2306,7 @@ tanh({expr}) Float hyperbolic tangent of {expr}
tempname() String name for a temporary file
test_alloc_fail({id}, {countdown}, {repeat})
none make memory allocation fail
test_autochdir() none enable 'autochdir' during startup
test_disable_char_avail({expr}) none test without typeahead
test_garbagecollect_now() none free memory right now for testing
test_null_channel() Channel null value for testing
@ -7453,8 +7454,11 @@ test_alloc_fail({id}, {countdown}, {repeat}) *test_alloc_fail()*
let memory allocation fail {repeat} times. When {repeat} is
smaller than one it fails one time.
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})
When {expr} is 1 the internal char_avail() function will
return |FALSE|. When {expr} is 0 the char_avail() function will

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.
@ -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
when typing text, not when typing Vim commands. This avoids having to switch
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
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
@ -295,7 +295,9 @@ For writing a Vim script, see chapter 41 of the user manual |usr_41.txt|.
... not converted ...
< 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
these encodings (they would contain NUL bytes).

View File

@ -1043,6 +1043,21 @@ This works immediately.
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.
Any list, vector, or map that extends over more than one line can be folded
using the standard Vim |fold-commands|.

View File

@ -4701,8 +4701,10 @@ TRUE eval.txt /*TRUE*
TSQL ft_sql.txt /*TSQL*
TTpro-telnet syntax.txt /*TTpro-telnet*
Tab intro.txt /*Tab*
TabClosed autocmd.txt /*TabClosed*
TabEnter autocmd.txt /*TabEnter*
TabLeave autocmd.txt /*TabLeave*
TabNew autocmd.txt /*TabNew*
Tcl if_tcl.txt /*Tcl*
TermChanged autocmd.txt /*TermChanged*
TermResponse autocmd.txt /*TermResponse*
@ -4748,6 +4750,7 @@ WWW intro.txt /*WWW*
Win32 os_win32.txt /*Win32*
WinEnter autocmd.txt /*WinEnter*
WinLeave autocmd.txt /*WinLeave*
WinNew autocmd.txt /*WinNew*
X change.txt /*X*
X11 options.txt /*X11*
X11-icon gui_x11.txt /*X11-icon*
@ -4965,6 +4968,7 @@ assert_equal() eval.txt /*assert_equal()*
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()*
@ -5012,6 +5016,8 @@ b motion.txt /*b*
b: eval.txt /*b:*
b:changedtick eval.txt /*b:changedtick*
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:netrw_lastfile pi_netrw.txt /*b:netrw_lastfile*
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_maxlines indent.txt /*g:clojure_maxlines*
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:decada ft_ada.txt /*g:decada*
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_al term.txt /*t_al*
t_bc term.txt /*t_bc*
t_bool-varialble eval.txt /*t_bool-varialble*
t_cd term.txt /*t_cd*
t_cdl version4.txt /*t_cdl*
t_ce term.txt /*t_ce*
t_channel-varialble eval.txt /*t_channel-varialble*
t_ci version4.txt /*t_ci*
t_cil version4.txt /*t_cil*
t_cl term.txt /*t_cl*
@ -8439,6 +8448,7 @@ t_cv version4.txt /*t_cv*
t_cvv version4.txt /*t_cvv*
t_da term.txt /*t_da*
t_db term.txt /*t_db*
t_dict-varialble eval.txt /*t_dict-varialble*
t_dl term.txt /*t_dl*
t_ed version4.txt /*t_ed*
t_el version4.txt /*t_el*
@ -8452,9 +8462,12 @@ t_f6 version4.txt /*t_f6*
t_f7 version4.txt /*t_f7*
t_f8 version4.txt /*t_f8*
t_f9 version4.txt /*t_f9*
t_float-varialble eval.txt /*t_float-varialble*
t_fs term.txt /*t_fs*
t_func-varialble eval.txt /*t_func-varialble*
t_help version4.txt /*t_help*
t_il version4.txt /*t_il*
t_job-varialble eval.txt /*t_job-varialble*
t_k1 term.txt /*t_k1*
t_k2 term.txt /*t_k2*
t_k3 term.txt /*t_k3*
@ -8479,12 +8492,15 @@ t_kr term.txt /*t_kr*
t_ks term.txt /*t_ks*
t_ku term.txt /*t_ku*
t_le term.txt /*t_le*
t_list-varialble eval.txt /*t_list-varialble*
t_mb term.txt /*t_mb*
t_md term.txt /*t_md*
t_me term.txt /*t_me*
t_mr term.txt /*t_mr*
t_ms term.txt /*t_ms*
t_nd term.txt /*t_nd*
t_none-varialble eval.txt /*t_none-varialble*
t_number-varialble eval.txt /*t_number-varialble*
t_op term.txt /*t_op*
t_se term.txt /*t_se*
t_sf1 version4.txt /*t_sf1*
@ -8504,6 +8520,7 @@ t_sku version4.txt /*t_sku*
t_so term.txt /*t_so*
t_sr term.txt /*t_sr*
t_star7 term.txt /*t_star7*
t_string-varialble eval.txt /*t_string-varialble*
t_tb version4.txt /*t_tb*
t_te term.txt /*t_te*
t_ti term.txt /*t_ti*
@ -8637,6 +8654,7 @@ 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_disable_char_avail() eval.txt /*test_disable_char_avail()*
test_garbagecollect_now() eval.txt /*test_garbagecollect_now()*
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:swapcommand eval.txt /*v:swapcommand*
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:testing eval.txt /*v:testing*
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
@ -35,6 +35,7 @@ not be repeated below, unless there is extra information.
-------------------- Known bugs and current work -----------------------
+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?
Add timestamp to queued messages and callbacks with ID, remove after a
minute. Option to set the droptime.
@ -49,17 +50,6 @@ Later
- job_start(): run job in a newly opened terminal.
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:
- Since 7.4.704 the old regex engine fails to match [[:print:]] in 0xf6.
(Manuel Ortega, 2016 Apr 24)
@ -115,17 +105,25 @@ What if there is an invalid character?
Should json_encode()/json_decode() restrict 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
names.
(ZyX, 2013 Jul 15, update Sep 22, 24, 28; Update 2013 Dec 15, 2014 Jan 6)
Also fixes Bug: E685 error for func_unref(). (ZyX, 2010 Aug 5)
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.
Once .exe with updated installer is available: Add remark to download page
about /S and /D options (Ken Takata, 2016 Apr 13)
Or point to nightly builds: https://github.com/vim/vim-win32-installer/releases
Problem with completion on "**/" in $path. (issue #932)
Happens in uniquefy_paths() ? More info Jul 22.
Fix for this (Harm te Hennepe, 2016 Jul 21, #939)
Cursor positioned in the wrong place when editing src/testdir/test_viml.vim.
@ -138,20 +136,27 @@ Javascript indent wrong after /* in single quoted string:
Use ADDR_OTHER instead of ADDR_LINES for many more commands.
Add tests for using number larger than number of lines in buffer.
Updating marks in quickfix list is broken. (Yegappan, 2016 Jul 18)
Invalid behavior with NULL list. (Nikolai Pavlov, #768)
For current Windows build .pdb file is missing. (Gabriele Fava, 2016 May 11)
5)
Support closure for lambda? Ken Takata is working on it.
Patch Jul 19. Still need test updates.
Problem with whitespace in errorformat. (Gerd Wachsmuth, 2016 May 15, #807)
Undo problem: "g-" doesn't go back, gets stuck. (Björn Linse, 2016 Jul 18)
Patch to allow setting w:quickfix_title via setqflist() and setloclist()
functions. (Christian Brabandt, 2013 May 8, update May 21)
Patch to add getlocstack() / setlocstack(). (Christian Brabandt, 2013 May 14)
Second one. Update May 22.
Update by Daniel Hahler, 2014 Jul 4, Aug 14, Oct 14, Oct 15.
Rethink this: can we add an argument to setqflist() and getqflist() for these
extra items?
Patch to add filtering of the quickfix list. (Yegappan Lakshmanan, 2016 Mar
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)
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.
Avoid PLAN_WRITE in windgoto() ?
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)
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)
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,
2013 Jul 30) Update from Ken Takata, 2013 Oct 12.
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)
@ -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)
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
restore the mode properly. (Andrew Stewart, 2016 Apr 20)
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
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.
(Yasuhiro Matsumoto, 2016 Feb 19)
@ -3558,8 +3556,6 @@ Multi-byte characters:
convert_input() for Mac GUI.
- Add mnemonics from RFC1345 longer than two characters.
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
table anymore (breakat_flags[]).
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
@ -592,7 +592,7 @@ String manipulation: *string-functions*
match() position where a pattern matches in a string
matchend() position where a pattern match ends 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
stridx() first 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
getcmdtype() return the current command-line type
getcmdwintype() return the current command-line window type
getcompletion() list of command-line completion matches
Quickfix and location lists: *quickfix-functions*
getqflist() list of quickfix errors
@ -907,6 +908,7 @@ Mappings: *mapping-functions*
Testing: *test-functions*
assert_equal() assert that two expressions values are 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_notmatch() assert that a pattern does not match the value
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_fails() assert that a function call fails
test_alloc_fail() make memory allocation fail
test_autochdir() enable 'autochdir' during startup
test_disable_char_avail() test without typeahead
test_garbagecollect_now() free memory right now
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
@ -18308,4 +18308,5 @@ Solution: Subtract the unsigned numbers and cast to int. (Ken Takata)
Files: src/os_win32.c
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
"
" 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
if exists("did_load_filetypes")
@ -534,7 +534,7 @@ au BufNewFile,BufRead configure.in,configure.ac setf config
au BufNewFile,BufRead *.cu setf cuda
" Dockerfile
au BufNewFile,BufRead Dockerfile setf dockerfile
au BufNewFile,BufRead Dockerfile,*.Dockerfile setf dockerfile
" WildPackets EtherPeek Decoder
au BufNewFile,BufRead *.dcd setf dcd

View File

@ -1,11 +1,11 @@
" Vim filetype plugin file
" Language: Clojure
" Author: Meikel Brandmeyer <mb@kotka.de>
" Language: Clojure
" Author: Meikel Brandmeyer <mb@kotka.de>
"
" Maintainer: Sung Pae <self@sungpae.com>
" URL: https://github.com/guns/vim-clojure-static
" License: Same as Vim
" Last Change: 27 March 2014
" Maintainer: Sung Pae <self@sungpae.com>
" URL: https://github.com/guns/vim-clojure-static
" License: Same as Vim
" Last Change: 18 July 2016
if exists("b:did_ftplugin")
finish
@ -43,7 +43,7 @@ setlocal commentstring=;\ %s
" specially and hence are not indented specially.
"
" -*- 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
" Provide insert mode completions for special forms and clojure.core. As
@ -82,9 +82,9 @@ endif
" Win32 can filter files in the browse dialog
if has("gui_win32") && !exists("b:browsefilter")
let b:browsefilter = "Clojure Source Files (*.clj)\t*.clj\n" .
\ "ClojureScript Source Files (*.cljs)\t*.cljs\n" .
\ "Java Source Files (*.java)\t*.java\n" .
\ "All Files (*.*)\t*.*\n"
\ "ClojureScript Source Files (*.cljs)\t*.cljs\n" .
\ "Java Source Files (*.java)\t*.java\n" .
\ "All Files (*.*)\t*.*\n"
let b:undo_ftplugin .= ' | unlet! b:browsefilter'
endif

View File

@ -1,17 +1,12 @@
" Vim indent file
" Language: Clojure
" Author: Meikel Brandmeyer <mb@kotka.de>
" URL: http://kotka.de/projects/clojure/vimclojure.html
" Language: Clojure
" Author: Meikel Brandmeyer <mb@kotka.de>
" URL: http://kotka.de/projects/clojure/vimclojure.html
"
" Maintainer: Sung Pae <self@sungpae.com>
" URL: https://github.com/guns/vim-clojure-static
" License: Same as Vim
" Last Change: 27 March 2014
" TODO: Indenting after multibyte characters is broken:
" (let [Δ (if foo
" bar ; Indent error
" baz)])
" Maintainer: Sung Pae <self@sungpae.com>
" URL: https://github.com/guns/vim-clojure-static
" License: Same as Vim
" Last Change: 18 July 2016
if exists("b:did_indent")
finish
@ -57,36 +52,39 @@ if exists("*searchpairpos")
let g:clojure_align_subforms = 0
endif
function! s:SynIdName()
function! s:syn_id_name()
return synIDattr(synID(line("."), col("."), 0), "name")
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]
endfunction
function! s:CurrentWord()
function! s:current_word()
return getline('.')[col('.')-1 : searchpos('\v>', 'n', line('.'))[1]-2]
endfunction
function! s:IsParen()
return s:CurrentChar() =~# '\v[\(\)\[\]\{\}]' &&
\ s:SynIdName() !~? '\vstring|regex|comment|character'
function! s:is_paren()
return s:current_char() =~# '\v[\(\)\[\]\{\}]' && !s:ignored_region()
endfunction
" Returns 1 if string matches a pattern in 'patterns', which may be a
" list of patterns, or a comma-delimited string of implicitly anchored
" patterns.
function! s:MatchesOne(patterns, string)
function! s:match_one(patterns, string)
let list = type(a:patterns) == type([])
\ ? a:patterns
\ : map(split(a:patterns, ','), '"^" . v:val . "$"')
\ ? a:patterns
\ : map(split(a:patterns, ','), '"^" . v:val . "$"')
for pat in list
if a:string =~# pat | return 1 | endif
endfor
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
" comments.
if a:stopat == 0
@ -95,11 +93,11 @@ if exists("*searchpairpos")
let stopat = a:stopat
endif
let pos = searchpairpos(a:open, '', a:close, 'bWn', "!s:IsParen()", stopat)
return [pos[0], virtcol(pos)]
let pos = searchpairpos(a:open, '', a:close, 'bWn', "!s:is_paren()", stopat)
return [pos[0], col(pos)]
endfunction
function! s:ClojureCheckForStringWorker()
function! s:clojure_check_for_string_worker()
" 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
" 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(0, col("$") - 1)
if s:SynIdName() !~? "string"
if s:syn_id_name() !~? "string"
return -1
endif
" This will not work for a " in the first column...
if s:CurrentChar() == '"'
if s:current_char() == '"'
call cursor(0, col("$") - 2)
if s:SynIdName() !~? "string"
if s:syn_id_name() !~? "string"
return -1
endif
if s:CurrentChar() != '\\'
if s:current_char() != '\\'
return -1
endif
call cursor(0, col("$") - 1)
@ -138,40 +136,40 @@ if exists("*searchpairpos")
return indent(".")
endfunction
function! s:CheckForString()
function! s:check_for_string()
let pos = getpos('.')
try
let val = s:ClojureCheckForStringWorker()
let val = s:clojure_check_for_string_worker()
finally
call setpos('.', pos)
endtry
return val
endfunction
function! s:StripNamespaceAndMacroChars(word)
function! s:strip_namespace_and_macro_chars(word)
return substitute(a:word, "\\v%(.*/|[#'`~@^,]*)(.*)", '\1', '')
endfunction
function! s:ClojureIsMethodSpecialCaseWorker(position)
function! s:clojure_is_method_special_case_worker(position)
" Find the next enclosing form.
call search('\S', 'Wb')
" Special case: we are at a '(('.
if s:CurrentChar() == '('
if s:current_char() == '('
return 0
endif
call cursor(a:position)
let nextParen = s:MatchPairs('(', ')', 0)
let next_paren = s:match_pairs('(', ')', 0)
" Special case: we are now at toplevel.
if nextParen == [0, 0]
if next_paren == [0, 0]
return 0
endif
call cursor(nextParen)
call cursor(next_paren)
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 . '\>'
return 1
endif
@ -179,27 +177,43 @@ if exists("*searchpairpos")
return 0
endfunction
function! s:IsMethodSpecialCase(position)
function! s:is_method_special_case(position)
let pos = getpos('.')
try
let val = s:ClojureIsMethodSpecialCaseWorker(a:position)
let val = s:clojure_is_method_special_case_worker(a:position)
finally
call setpos('.', pos)
endtry
return val
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.
if line(".") == 1
return 0
return [0, 0]
endif
" We have to apply some heuristics here to figure out, whether to use
" normal lisp indenting or not.
let i = s:CheckForString()
let i = s:check_for_string()
if i > -1
return i + !!g:clojure_align_multiline_strings
return [0, i + !!g:clojure_align_multiline_strings]
endif
call cursor(0, 1)
@ -207,28 +221,28 @@ if exists("*searchpairpos")
" Find the next enclosing [ or {. We can limit the second search
" to the line, where the [ was found. If no [ was there this is
" zero and we search for an enclosing {.
let paren = s:MatchPairs('(', ')', 0)
let bracket = s:MatchPairs('\[', '\]', paren[0])
let curly = s:MatchPairs('{', '}', bracket[0])
let paren = s:match_pairs('(', ')', 0)
let bracket = s:match_pairs('\[', '\]', paren[0])
let curly = s:match_pairs('{', '}', bracket[0])
" 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
" curly indent.
if curly[0] > bracket[0] || curly[1] > bracket[1]
if curly[0] > paren[0] || curly[1] > paren[1]
return curly[1]
return curly
endif
endif
" If the curly was not chosen, we take the bracket indent - if
" there was one.
if bracket[0] > paren[0] || bracket[1] > paren[1]
return bracket[1]
return bracket
endif
" There are neither { nor [ nor (, ie. we are at the toplevel.
if paren == [0, 0]
return 0
return paren
endif
" 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.
call cursor(paren)
if s:IsMethodSpecialCase(paren)
return paren[1] + &shiftwidth - 1
if s:is_method_special_case(paren)
return [paren[0], paren[1] + &shiftwidth - 1]
endif
if s:is_reader_conditional_special_case(paren)
return paren
endif
" In case we are at the last character, we use the paren position.
if col("$") - 1 == paren[1]
return paren[1]
return paren
endif
" In case after the paren is a whitespace, we search for the next word.
call cursor(0, col('.') + 1)
if s:CurrentChar() == ' '
if s:current_char() == ' '
call search('\v\S', 'W')
endif
" If we moved to another line, there is no word after the (. We
" use the ( position for indent.
if line(".") > paren[0]
return paren[1]
return paren
endif
" We still have to check, whether the keyword starts with a (, [ or {.
" In that case we use the ( position for indent.
let w = s:CurrentWord()
if stridx('([{', w[0]) > -1
return paren[1]
let w = s:current_word()
if s:bracket_type(w[0]) == 1
return paren
endif
" Test words without namespace qualifiers and leading reader macro
" metacharacters.
"
" 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 . '\>'
return paren[1] + &shiftwidth - 1
return [paren[0], paren[1] + &shiftwidth - 1]
endif
if g:clojure_fuzzy_indent
\ && !s:MatchesOne(g:clojure_fuzzy_indent_blacklist, ww)
\ && s:MatchesOne(g:clojure_fuzzy_indent_patterns, ww)
return paren[1] + &shiftwidth - 1
\ && !s:match_one(g:clojure_fuzzy_indent_blacklist, ww)
\ && s:match_one(g:clojure_fuzzy_indent_patterns, ww)
return [paren[0], paren[1] + &shiftwidth - 1]
endif
call search('\v\_s', 'cW')
call search('\v\S', 'W')
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
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
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
" Language: Python
" Maintainer: Zvezdan Petkovic <zpetkovic@acm.org>
" Last Change: 2016 Feb 20
" Last Change: 2016 Jul 21
" Credits: Neil Schemenauer <nas@python.ca>
" Dmitry Vasiliev
"
@ -72,7 +72,7 @@ set cpo&vim
" built-in below (use 'from __future__ import print_function' in 2)
" - 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 lambda nonlocal pass print return with yield
syn keyword pythonStatement class def nextgroup=pythonFunction skipwhite

View File

@ -4,7 +4,12 @@
" Repository: https://github.com/chrisbra/vim-sqloracle-syntax
" License: Vim
" 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")
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 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 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 public resource return row rowlabel rownum rows
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 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
" Strings:
syn region sqlString start=+"+ skip=+\\\\\|\\"+ end=+"+
syn region sqlString start=+'+ skip=+\\\\\|\\'+ end=+'+
syn region sqlString matchgroup=Quote 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:
syn match sqlNumber "-\=\<\d*\.\=[0-9_]\>"
@ -118,6 +129,7 @@ syn keyword sqlTodo TODO FIXME XXX DEBUG NOTE contained
" Define the default highlighting.
command -nargs=+ HiLink hi def link <args>
HiLink Quote Special
HiLink sqlComment Comment
HiLink sqlFunction Function
HiLink sqlKeyword sqlSpecial

View File

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

View File

@ -13,16 +13,16 @@ msgid ""
msgstr ""
"Project-Id-Version: vim 7.4\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2016-05-03 16:10+0200\n"
"PO-Revision-Date: 2016-02-11 14:42+0200\n"
"POT-Creation-Date: 2016-07-16 16:34+0200\n"
"PO-Revision-Date: 2016-07-16 16:50+0200\n"
"Last-Translator: 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"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=ISO_8859-1\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"
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..."
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"
msgstr "E515: Nessun buffer scaricato"
@ -207,6 +210,7 @@ msgstr " riga=%ld id=%d, nome=%s"
msgid "E902: Cannot connect to port"
msgstr "E902: Non posso commettermi alla porta"
#, c-format
msgid "E917: Cannot use a callback with %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"
msgstr "E915: il buffer in_io necessita di impostare in_buf o in_name"
#, c-format
msgid "E918: buffer must be loaded: %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"
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"
msgstr "E724: variabile troppo nidificata per la visualizzazione"
@ -654,8 +667,8 @@ msgid "E922: expected a dict"
msgstr "E922: aspettavo un Dizionario"
msgid "E923: Second argument of function() must be a list or a dict"
msgstr "E923: Il secondo argomento di function() dev'essere una Lista"
" o un Dizionario"
msgstr ""
"E923: Il secondo argomento di function() dev'essere una Lista o un Dizionario"
msgid ""
"&OK\n"
@ -710,6 +723,7 @@ msgstr "argomento di reverse()"
msgid "E258: Unable to send to client"
msgstr "E258: Impossibile inviare al client"
#, c-format
msgid "E927: Invalid action: '%s'"
msgstr "E927: Azione non valida: '%s'"
@ -824,14 +838,6 @@ msgstr "E124: Manca '(': %s"
msgid "E862: Cannot use g: here"
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"
msgstr "E126: Manca :endfunction"
@ -966,6 +972,10 @@ msgstr " FALLITO"
msgid "E137: Viminfo file is not writable: %s"
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
msgid "E138: Can't write viminfo file %s!"
msgstr "E138: Non riesco a scrivere il file viminfo %s!"
@ -1270,9 +1280,8 @@ msgstr "Cerco \"%s\" in \"%s\""
msgid "Searching for \"%s\""
msgstr "Cerco \"%s\""
#, fuzzy, c-format
msgid "not found in '%s': \"%s\""
msgstr "non trovato in '%s: \"%s\""
msgstr "non trovato in '%s': \"%s\""
msgid "Source Vim script"
msgstr "Esegui script Vim"
@ -1507,6 +1516,9 @@ msgstr ""
msgid "E466: :winpos requires two number arguments"
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"
msgstr "Salva Redirezione"
@ -1718,6 +1730,9 @@ msgstr "Espressione"
msgid "Input Line"
msgstr "Riga di Input"
msgid "Debug Line"
msgstr "Riga di Debug"
msgid "E198: cmd_pchar beyond the command length"
msgstr "E198: cmd_pchar dopo la fine del comando"
@ -1974,11 +1989,6 @@ msgstr "1 carattere"
msgid "%lld characters"
msgstr "%lld caratteri"
#. Explicit typecast avoids warning on Mac OS X 10.6
#, c-format
msgid "%ld characters"
msgstr "%ld caratteri"
msgid "[noeol]"
msgstr "[noeol]"
@ -2639,6 +2649,7 @@ msgstr "%-5s: %s%*s (Uso: %s)"
msgid ""
"\n"
" a: Find assignments to this symbol\n"
" c: Find functions calling this function\n"
" d: Find functions called by this function\n"
" e: Find this egrep pattern\n"
@ -2649,6 +2660,7 @@ msgid ""
" t: Find this text string\n"
msgstr ""
"\n"
" a: Trova assegnazioni a questo simbolo\n"
" c: Trova funzioni che chiamano questa\n"
" d: Trova funzioni chiamate da questa\n"
" e: Trova questa espressione egrep\n"
@ -2656,7 +2668,7 @@ msgstr ""
" g: Trova questa definizione\n"
" i: Trova file che #includono questo file\n"
" s: Trova questo simbolo C\n"
" t: Trova questa stringa\n"
" t: Trova questa stringa di testo\n"
#, c-format
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"
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"
msgstr "Vim: Avviso: Output non diretto a un terminale\n"
@ -4262,29 +4278,27 @@ msgstr ""
msgid "%ld Cols; "
msgstr "%ld Col.; "
#, c-format
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"
msgid "Selected %s%ld of %ld Lines; %lld of %lld Words; %lld of %lld Bytes"
msgstr ""
"Selezionate %s%ld di %ld Righe; %ld di %ld Parole; %ld di %ld Caratt.; %ld "
"di %ld Byte"
"Selezionate %s%ld di %ld Righe; %lld di %lld Parole; %lld di %lld Caratt."
#, 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 ""
"Col %s of %s; Line %ld of %ld; Word %ld of %ld; Char %ld of %ld; Byte %ld of "
"%ld"
"Selected %s%ld of %ld Lines; %lld of %lld Words; %lld of %lld Chars; %lld of "
"%lld Bytes"
msgstr ""
"Col. %s di %s; Riga %ld di %ld; Parola %ld di %ld; Caratt. %ld di %ld; Byte "
"%ld di %ld"
"Selezionate %s%ld di %ld Righe; %lld di %lld Parole; %lld di %lld Caratt.;"
" %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
msgid "(+%ld for BOM)"
@ -4541,6 +4555,7 @@ msgstr "Stampato: '%s'"
msgid "E244: Illegal charset name \"%s\" in font name \"%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\""
msgstr "E244: Nome di qualit<69> non ammesso \"%s\" nel font di nome \"%s\""
@ -4579,19 +4594,14 @@ msgstr ""
"\n"
"Non posso impostare il contesto di sicurezza per "
#, c-format
msgid "Could not set security context %s for %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!"
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 ""
"\n"
"Cannot execute shell sh\n"
@ -4620,6 +4630,13 @@ msgstr ""
"\n"
"Non riesco ad effettuare 'fork'\n"
msgid ""
"\n"
"Cannot execute shell "
msgstr ""
"\n"
"Non riesco a eseguire shell "
msgid ""
"\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"
msgstr "E377: %%%c non valido nella stringa di 'format'"
#. nothing found
msgid "E378: 'errorformat' contains no pattern"
msgstr "E378: 'errorformat' non contiene alcun modello"
@ -6649,6 +6667,7 @@ msgstr "E764: opzione '%s' non impostata"
msgid "E850: Invalid register name"
msgstr "E850: Nome registro non valido"
#, c-format
msgid "E919: Directory not found in '%s': \"%s\""
msgstr "E919: Directory non trovata in '%s': \"%s\""
@ -6895,6 +6914,7 @@ msgstr ""
msgid "unable to convert %s to vim dictionary"
msgstr "impossibile convertire %s a dizionario vim"
#, c-format
msgid "unable to convert %s to vim list"
msgstr "impossibile convertire %s a Lista vim"
@ -6926,3 +6946,4 @@ msgid ""
msgstr ""
"Impostazione di percorso non riuscita: sys.path non <20> una lista\n"
"Dovresti aggiungere vim.VIM_SPECIAL_PATH a sys.path"