mirror of
https://github.com/vim/vim
synced 2025-07-15 16:51:57 +00:00
Update runtime files.
This commit is contained in:
File diff suppressed because it is too large
Load Diff
@ -1,7 +1,7 @@
|
||||
" netrwSettings.vim: makes netrw settings simpler
|
||||
" Date: Aug 27, 2013
|
||||
" Date: Dec 30, 2014
|
||||
" Maintainer: Charles E Campbell <drchipNOSPAM at campbellfamily dot biz>
|
||||
" Version: 14
|
||||
" Version: 15
|
||||
" Copyright: Copyright (C) 1999-2007 Charles E. Campbell {{{1
|
||||
" Permission is hereby granted to use and distribute this code,
|
||||
" with or without modifications, provided that this copyright
|
||||
@ -19,7 +19,7 @@
|
||||
if exists("g:loaded_netrwSettings") || &cp
|
||||
finish
|
||||
endif
|
||||
let g:loaded_netrwSettings = "v14"
|
||||
let g:loaded_netrwSettings = "v15"
|
||||
if v:version < 700
|
||||
echohl WarningMsg
|
||||
echo "***warning*** this version of netrwSettings needs vim 7.0"
|
||||
@ -31,7 +31,7 @@ endif
|
||||
" NetrwSettings: {{{1
|
||||
fun! netrwSettings#NetrwSettings()
|
||||
" this call is here largely just to insure that netrw has been loaded
|
||||
call netrw#NetrwSavePosn()
|
||||
call netrw#SavePosn()
|
||||
if !exists("g:loaded_netrw")
|
||||
echohl WarningMsg | echomsg "***sorry*** netrw needs to be loaded prior to using NetrwSettings" | echohl None
|
||||
return
|
||||
@ -177,6 +177,7 @@ fun! netrwSettings#NetrwSettings()
|
||||
put = 'let g:netrw_sort_direction = '.g:netrw_sort_direction
|
||||
put = 'let g:netrw_sort_options = '.g:netrw_sort_options
|
||||
put = 'let g:netrw_sort_sequence = '.g:netrw_sort_sequence
|
||||
put = 'let g:netrw_servername = '.g:netrw_servername
|
||||
put = 'let g:netrw_special_syntax = '.g:netrw_special_syntax
|
||||
put = 'let g:netrw_ssh_browse_reject = '.g:netrw_ssh_browse_reject
|
||||
put = 'let g:netrw_ssh_cmd = '.g:netrw_ssh_cmd
|
||||
|
@ -61,9 +61,16 @@ function! netrw_gitignore#Hide(...)
|
||||
" convert gitignore patterns to Netrw/Vim regex patterns
|
||||
let escaped_lines = []
|
||||
for line in gitignore_lines
|
||||
let escaped = line
|
||||
let escaped = substitute(escaped, '\.', '\\.', 'g')
|
||||
let escaped = substitute(escaped, '*', '.*', 'g')
|
||||
let escaped = line
|
||||
let escaped = substitute(escaped, '\*\*', '*', 'g')
|
||||
let escaped = substitute(escaped, '\.', '\\.', 'g')
|
||||
let escaped = substitute(escaped, '\$', '\\$', 'g')
|
||||
let escaped = substitute(escaped, '*', '.*', 'g')
|
||||
" correction: dot, dollar and asterisks chars shouldn't be escaped when
|
||||
" within regex matching groups.
|
||||
let escaped = substitute(escaped, '\(\[[^]]*\)\zs\\\.', '\.', 'g')
|
||||
let escaped = substitute(escaped, '\(\[[^]]*\)\zs\\\$', '\$', 'g')
|
||||
let escaped = substitute(escaped, '\(\[[^]]*\)\zs\.\*', '*', 'g')
|
||||
let escaped_lines = add(escaped_lines, escaped)
|
||||
endfor
|
||||
|
||||
|
@ -1,4 +1,4 @@
|
||||
*gui_w32.txt* For Vim version 7.4. Last change: 2012 Aug 04
|
||||
*gui_w32.txt* For Vim version 7.4. Last change: 2014 Dec 20
|
||||
|
||||
|
||||
VIM REFERENCE MANUAL by Bram Moolenaar
|
||||
@ -452,9 +452,10 @@ detailed elsewhere: see |'mouse'|, |win32-hidden-menus|.
|
||||
You can drag and drop one or more files into the Vim window, where they will
|
||||
be opened as normal. See |drag-n-drop|.
|
||||
|
||||
*:simalt* *:si*
|
||||
*:simalt* *:sim*
|
||||
:sim[alt] {key} simulate pressing {key} while holding Alt pressed.
|
||||
{not in Vi} {only for Win32 versions}
|
||||
Note: ":si" means ":s" with the "i" flag.
|
||||
|
||||
Normally, Vim takes control of all Alt-<Key> combinations, to increase the
|
||||
number of possible mappings. This clashes with the standard use of Alt as the
|
||||
|
@ -1,4 +1,4 @@
|
||||
*index.txt* For Vim version 7.4. Last change: 2014 Sep 19
|
||||
*index.txt* For Vim version 7.4. Last change: 2015 Jan 07
|
||||
|
||||
|
||||
VIM REFERENCE MANUAL by Bram Moolenaar
|
||||
@ -1465,7 +1465,7 @@ tag command action ~
|
||||
buffer list
|
||||
|:sbrewind| :sbr[ewind] split window and go to first file in the
|
||||
buffer list
|
||||
|:scriptnames| :scrip[tnames] list names of all sourced Vim scripts
|
||||
|:scriptnames| :scr[iptnames] list names of all sourced Vim scripts
|
||||
|:scriptencoding| :scripte[ncoding] encoding used in sourced Vim script
|
||||
|:scscope| :scs[cope] split window and execute cscope command
|
||||
|:set| :se[t] show or set options
|
||||
|
@ -1,4 +1,4 @@
|
||||
*options.txt* For Vim version 7.4. Last change: 2014 Nov 05
|
||||
*options.txt* For Vim version 7.4. Last change: 2014 Dec 17
|
||||
|
||||
|
||||
VIM REFERENCE MANUAL by Bram Moolenaar
|
||||
@ -730,8 +730,6 @@ A jump table for the options with a short description can be found at |Q_op|.
|
||||
open a file, switch buffers, delete a buffer or open/close a window.
|
||||
It will change to the directory containing the file which was opened
|
||||
or selected.
|
||||
This option is provided for backward compatibility with the Vim
|
||||
released with Sun ONE Studio 4 Enterprise Edition.
|
||||
Note: When this option is on some plugins may not work.
|
||||
|
||||
*'arabic'* *'arab'* *'noarabic'* *'noarab'*
|
||||
|
File diff suppressed because it is too large
Load Diff
@ -1,4 +1,4 @@
|
||||
*repeat.txt* For Vim version 7.4. Last change: 2014 Oct 29
|
||||
*repeat.txt* For Vim version 7.4. Last change: 2015 Jan 07
|
||||
|
||||
|
||||
VIM REFERENCE MANUAL by Bram Moolenaar
|
||||
@ -235,8 +235,8 @@ For writing a Vim script, see chapter 41 of the user manual |usr_41.txt|.
|
||||
command is ignored.
|
||||
{not in Vi}
|
||||
|
||||
*:scrip* *:scriptnames*
|
||||
:scrip[tnames] List all sourced script names, in the order they were
|
||||
*:scr* *:scriptnames*
|
||||
:scr[iptnames] List all sourced script names, in the order they were
|
||||
first sourced. The number is used for the script ID
|
||||
|<SID>|.
|
||||
{not in Vi} {not available when compiled without the
|
||||
|
@ -1,4 +1,4 @@
|
||||
*syntax.txt* For Vim version 7.4. Last change: 2014 Nov 19
|
||||
*syntax.txt* For Vim version 7.4. Last change: 2015 Jan 07
|
||||
|
||||
|
||||
VIM REFERENCE MANUAL by Bram Moolenaar
|
||||
@ -1128,6 +1128,14 @@ to standard by placing this in your vimrc file: >
|
||||
:let enforce_freedesktop_standard = 1
|
||||
|
||||
|
||||
DIFF *diff.vim*
|
||||
|
||||
The diff highlighting normally finds translated headers. This can be slow if
|
||||
there are very long lines in the file. To disable translations: >
|
||||
|
||||
:let diff_translations = 0
|
||||
|
||||
|
||||
DIRCOLORS *dircolors.vim* *ft-dircolors-syntax*
|
||||
|
||||
The dircolors utility highlighting definition has one option. It exists to
|
||||
|
@ -1398,6 +1398,8 @@ $VIMRUNTIME starting.txt /*$VIMRUNTIME*
|
||||
.dic spell.txt /*.dic*
|
||||
.exrc starting.txt /*.exrc*
|
||||
.gvimrc gui.txt /*.gvimrc*
|
||||
.netrwbook pi_netrw.txt /*.netrwbook*
|
||||
.netrwhist pi_netrw.txt /*.netrwhist*
|
||||
.vimrc starting.txt /*.vimrc*
|
||||
/ pattern.txt /*\/*
|
||||
/$ pattern.txt /*\/$*
|
||||
@ -2726,7 +2728,7 @@ $VIMRUNTIME starting.txt /*$VIMRUNTIME*
|
||||
:sbr windows.txt /*:sbr*
|
||||
:sbrewind windows.txt /*:sbrewind*
|
||||
:sbuffer windows.txt /*:sbuffer*
|
||||
:scrip repeat.txt /*:scrip*
|
||||
:scr repeat.txt /*:scr*
|
||||
:scripte repeat.txt /*:scripte*
|
||||
:scriptencoding repeat.txt /*:scriptencoding*
|
||||
:scriptnames repeat.txt /*:scriptnames*
|
||||
@ -2761,7 +2763,6 @@ $VIMRUNTIME starting.txt /*$VIMRUNTIME*
|
||||
:sfirst windows.txt /*:sfirst*
|
||||
:sh various.txt /*:sh*
|
||||
:shell various.txt /*:shell*
|
||||
:si gui_w32.txt /*:si*
|
||||
:sig sign.txt /*:sig*
|
||||
:sign sign.txt /*:sign*
|
||||
:sign-define sign.txt /*:sign-define*
|
||||
@ -2774,6 +2775,7 @@ $VIMRUNTIME starting.txt /*$VIMRUNTIME*
|
||||
:sign-unplace sign.txt /*:sign-unplace*
|
||||
:sil various.txt /*:sil*
|
||||
:silent various.txt /*:silent*
|
||||
:sim gui_w32.txt /*:sim*
|
||||
:simalt gui_w32.txt /*:simalt*
|
||||
:sl various.txt /*:sl*
|
||||
:sla windows.txt /*:sla*
|
||||
@ -5415,6 +5417,7 @@ diff-options diff.txt /*diff-options*
|
||||
diff-original-file diff.txt /*diff-original-file*
|
||||
diff-patchexpr diff.txt /*diff-patchexpr*
|
||||
diff.txt diff.txt /*diff.txt*
|
||||
diff.vim syntax.txt /*diff.vim*
|
||||
diff_filler() eval.txt /*diff_filler()*
|
||||
diff_hlID() eval.txt /*diff_hlID()*
|
||||
digraph digraph.txt /*digraph*
|
||||
@ -6008,6 +6011,7 @@ g:netrw_errorlvl pi_netrw.txt /*g:netrw_errorlvl*
|
||||
g:netrw_fastbrowse pi_netrw.txt /*g:netrw_fastbrowse*
|
||||
g:netrw_fetch_cmd pi_netrw.txt /*g:netrw_fetch_cmd*
|
||||
g:netrw_ffkeep pi_netrw.txt /*g:netrw_ffkeep*
|
||||
g:netrw_file_cmd pi_netrw.txt /*g:netrw_file_cmd*
|
||||
g:netrw_fname_escape pi_netrw.txt /*g:netrw_fname_escape*
|
||||
g:netrw_ftp pi_netrw.txt /*g:netrw_ftp*
|
||||
g:netrw_ftp_browse_reject pi_netrw.txt /*g:netrw_ftp_browse_reject*
|
||||
@ -6019,6 +6023,7 @@ g:netrw_ftp_timelist_cmd pi_netrw.txt /*g:netrw_ftp_timelist_cmd*
|
||||
g:netrw_ftpextracmd pi_netrw.txt /*g:netrw_ftpextracmd*
|
||||
g:netrw_ftpmode pi_netrw.txt /*g:netrw_ftpmode*
|
||||
g:netrw_glob_escape pi_netrw.txt /*g:netrw_glob_escape*
|
||||
g:netrw_gx pi_netrw.txt /*g:netrw_gx*
|
||||
g:netrw_hide pi_netrw.txt /*g:netrw_hide*
|
||||
g:netrw_home pi_netrw.txt /*g:netrw_home*
|
||||
g:netrw_http_cmd pi_netrw.txt /*g:netrw_http_cmd*
|
||||
@ -6026,10 +6031,13 @@ g:netrw_http_put_cmd pi_netrw.txt /*g:netrw_http_put_cmd*
|
||||
g:netrw_http_xcmd pi_netrw.txt /*g:netrw_http_xcmd*
|
||||
g:netrw_ignorenetrc pi_netrw.txt /*g:netrw_ignorenetrc*
|
||||
g:netrw_keepdir pi_netrw.txt /*g:netrw_keepdir*
|
||||
g:netrw_keepj pi_netrw.txt /*g:netrw_keepj*
|
||||
g:netrw_list_cmd pi_netrw.txt /*g:netrw_list_cmd*
|
||||
g:netrw_list_cmd_options pi_netrw.txt /*g:netrw_list_cmd_options*
|
||||
g:netrw_list_hide pi_netrw.txt /*g:netrw_list_hide*
|
||||
g:netrw_liststyle pi_netrw.txt /*g:netrw_liststyle*
|
||||
g:netrw_localcopycmd pi_netrw.txt /*g:netrw_localcopycmd*
|
||||
g:netrw_localcopydircmd pi_netrw.txt /*g:netrw_localcopydircmd*
|
||||
g:netrw_localmkdir pi_netrw.txt /*g:netrw_localmkdir*
|
||||
g:netrw_localmovecmd pi_netrw.txt /*g:netrw_localmovecmd*
|
||||
g:netrw_localrmdir pi_netrw.txt /*g:netrw_localrmdir*
|
||||
@ -6050,6 +6058,7 @@ g:netrw_rsync_cmd pi_netrw.txt /*g:netrw_rsync_cmd*
|
||||
g:netrw_scp_cmd pi_netrw.txt /*g:netrw_scp_cmd*
|
||||
g:netrw_scpport pi_netrw.txt /*g:netrw_scpport*
|
||||
g:netrw_sepchr pi_netrw.txt /*g:netrw_sepchr*
|
||||
g:netrw_servername pi_netrw.txt /*g:netrw_servername*
|
||||
g:netrw_sftp_cmd pi_netrw.txt /*g:netrw_sftp_cmd*
|
||||
g:netrw_silent pi_netrw.txt /*g:netrw_silent*
|
||||
g:netrw_sort_by pi_netrw.txt /*g:netrw_sort_by*
|
||||
@ -6998,6 +7007,8 @@ netrw-:Hexplore pi_netrw.txt /*netrw-:Hexplore*
|
||||
netrw-:Lexplore pi_netrw.txt /*netrw-:Lexplore*
|
||||
netrw-:MF pi_netrw.txt /*netrw-:MF*
|
||||
netrw-:MT pi_netrw.txt /*netrw-:MT*
|
||||
netrw-:NetrwC pi_netrw.txt /*netrw-:NetrwC*
|
||||
netrw-:NetrwMB pi_netrw.txt /*netrw-:NetrwMB*
|
||||
netrw-:Rexplore pi_netrw.txt /*netrw-:Rexplore*
|
||||
netrw-:Sexplore pi_netrw.txt /*netrw-:Sexplore*
|
||||
netrw-:Texplore pi_netrw.txt /*netrw-:Texplore*
|
||||
@ -7006,6 +7017,7 @@ netrw-C pi_netrw.txt /*netrw-C*
|
||||
netrw-D pi_netrw.txt /*netrw-D*
|
||||
netrw-O pi_netrw.txt /*netrw-O*
|
||||
netrw-P pi_netrw.txt /*netrw-P*
|
||||
netrw-P18 pi_netrw.txt /*netrw-P18*
|
||||
netrw-R pi_netrw.txt /*netrw-R*
|
||||
netrw-S pi_netrw.txt /*netrw-S*
|
||||
netrw-Tb pi_netrw.txt /*netrw-Tb*
|
||||
@ -7035,6 +7047,7 @@ netrw-createfile pi_netrw.txt /*netrw-createfile*
|
||||
netrw-credits pi_netrw.txt /*netrw-credits*
|
||||
netrw-ctrl-h pi_netrw.txt /*netrw-ctrl-h*
|
||||
netrw-ctrl-l pi_netrw.txt /*netrw-ctrl-l*
|
||||
netrw-ctrl-r pi_netrw.txt /*netrw-ctrl-r*
|
||||
netrw-ctrl_l pi_netrw.txt /*netrw-ctrl_l*
|
||||
netrw-curdir pi_netrw.txt /*netrw-curdir*
|
||||
netrw-d pi_netrw.txt /*netrw-d*
|
||||
@ -7061,6 +7074,7 @@ netrw-gf pi_netrw.txt /*netrw-gf*
|
||||
netrw-gh pi_netrw.txt /*netrw-gh*
|
||||
netrw-gitignore pi_netrw.txt /*netrw-gitignore*
|
||||
netrw-gp pi_netrw.txt /*netrw-gp*
|
||||
netrw-grep pi_netrw.txt /*netrw-grep*
|
||||
netrw-gx pi_netrw.txt /*netrw-gx*
|
||||
netrw-handler pi_netrw.txt /*netrw-handler*
|
||||
netrw-help pi_netrw.txt /*netrw-help*
|
||||
@ -7082,6 +7096,7 @@ netrw-login pi_netrw.txt /*netrw-login*
|
||||
netrw-mB pi_netrw.txt /*netrw-mB*
|
||||
netrw-mF pi_netrw.txt /*netrw-mF*
|
||||
netrw-mT pi_netrw.txt /*netrw-mT*
|
||||
netrw-mX pi_netrw.txt /*netrw-mX*
|
||||
netrw-mb pi_netrw.txt /*netrw-mb*
|
||||
netrw-mc pi_netrw.txt /*netrw-mc*
|
||||
netrw-md pi_netrw.txt /*netrw-md*
|
||||
@ -7099,6 +7114,7 @@ netrw-mr pi_netrw.txt /*netrw-mr*
|
||||
netrw-ms pi_netrw.txt /*netrw-ms*
|
||||
netrw-mt pi_netrw.txt /*netrw-mt*
|
||||
netrw-mu pi_netrw.txt /*netrw-mu*
|
||||
netrw-mv pi_netrw.txt /*netrw-mv*
|
||||
netrw-mx pi_netrw.txt /*netrw-mx*
|
||||
netrw-mz pi_netrw.txt /*netrw-mz*
|
||||
netrw-netrc pi_netrw.txt /*netrw-netrc*
|
||||
@ -7118,6 +7134,7 @@ netrw-p13 pi_netrw.txt /*netrw-p13*
|
||||
netrw-p14 pi_netrw.txt /*netrw-p14*
|
||||
netrw-p15 pi_netrw.txt /*netrw-p15*
|
||||
netrw-p16 pi_netrw.txt /*netrw-p16*
|
||||
netrw-p17 pi_netrw.txt /*netrw-p17*
|
||||
netrw-p2 pi_netrw.txt /*netrw-p2*
|
||||
netrw-p3 pi_netrw.txt /*netrw-p3*
|
||||
netrw-p4 pi_netrw.txt /*netrw-p4*
|
||||
|
@ -1,4 +1,4 @@
|
||||
*todo.txt* For Vim version 7.4. Last change: 2014 Dec 14
|
||||
*todo.txt* For Vim version 7.4. Last change: 2015 Jan 07
|
||||
|
||||
|
||||
VIM REFERENCE MANUAL by Bram Moolenaar
|
||||
@ -54,6 +54,7 @@ Regexp problems:
|
||||
- Using back reference before the capturing group sometimes works with the old
|
||||
engine, can we do this with the new engine? E.g. with
|
||||
"/\%(<\1>\)\@<=.*\%(<\/\(\w\+\)>\)\@=" matching text inside HTML tags.
|
||||
- Diff highlighting can be very slow. (Issue 309)
|
||||
|
||||
Still using freed memory after using setloclist(). (lcd, 2014 Jul 23)
|
||||
More info Jul 24. Not clear why.
|
||||
@ -65,41 +66,24 @@ Breaks test_eval. Inefficient, can we only compute y_width when needed?
|
||||
Problem that a previous silent ":throw" causes a following try/catch not to
|
||||
work. (ZyX, 2013 Sep 28)
|
||||
|
||||
Problem using ":try" inside ":execute". (ZyX, 2013 Sep 15)
|
||||
|
||||
":cd C:\Windows\System32\drivers\etc*" does not work, even though the
|
||||
directory exists. (Sergio Gallelli, 2013 Dec 29)
|
||||
|
||||
Gvim: when both Tab and CTRL-I are mapped, use CTRL-I not for Tab.
|
||||
|
||||
Problem using ":try" inside ":execute". (ZyX, 2013 Sep 15)
|
||||
|
||||
Python: ":py raw_input('prompt')" doesn't work. (Manu Hack)
|
||||
|
||||
When window number in Ex range is too high, should give an error:
|
||||
:3close " fails if there are only 2 windows.
|
||||
Patch from Marcin Szamotulski, 2014 Dec 13.
|
||||
|
||||
Patch to recover from X server restart: hint on Issue 203 (2014 Nov 21 18:44)
|
||||
|
||||
Insert a block with virtualedit set does not work correctly.
|
||||
Patch by James McCoy, 2014 Dec 10.
|
||||
|
||||
MS-Windows: When editing a file with a leading space, writing it uses the
|
||||
wrong name. (Aram, 2014 Nov 7) Vim 7.4.
|
||||
|
||||
Add LessCss support. (Jenoma / Alessandro Vioni, 2014 Nov 24)
|
||||
Now with updated license, Nov 24.
|
||||
|
||||
Memory leak using :wviminfo. Issue 296. With Patch by Christian.
|
||||
|
||||
patch to remove FEAT_OSFILETYPE from fileio.c. (Christian, 2014 Nov 12)
|
||||
Patch to fix unnecessary redraw of vertical separators.
|
||||
(Thiago Padilha, 2015 Jan 5, second version)
|
||||
|
||||
Value returned by virtcol() changes depending on how lines wrap. This is
|
||||
inconsistent with the documentation.
|
||||
|
||||
Patch to also support range for :argdo, :bufdo, etc.
|
||||
(Marcin Szamotulski, 2014 Dec 7)
|
||||
Asked for tests.
|
||||
|
||||
Ukrainian vimtutor. (Issue 288)
|
||||
|
||||
Regenerate the Unicode tables in mbyte.c.
|
||||
@ -108,19 +92,30 @@ Diff from ZyX, 2014 Dec 6.
|
||||
Patch to fix relative numbers. (Christian Brabandt, 2014 Nov 17)
|
||||
Update Nov 26.
|
||||
|
||||
Patch to improve config.vim syntax. Issue 305. Maintainer last update was in
|
||||
2008.
|
||||
|
||||
Patch to fix that getcurpos() returns a negative number, instead of MAXCOL.
|
||||
(Hirohito Higashi, 2014 Dec 8)
|
||||
|
||||
Better greek spell checking. Issue 299.
|
||||
|
||||
Patch to fix wrong formatting if 'linebreak' is set. (Christian Brabandt, 2014
|
||||
Nov 12)
|
||||
|
||||
Patch to avoid recognizing polkit as hog files. (Issue 292)
|
||||
|
||||
":0argedit foo" puts new argument in second place instead of first.
|
||||
Patch from Ingo Karkat, 2014 Dec 19.
|
||||
|
||||
Patch 7.4.468 changed how CTRL-C is handled. It does not take care of mapping
|
||||
CTRL-C in different modes. (Ingo Karkat, 2014 Dec 12)
|
||||
Patch from Christian Brabandt, 2014 Dec 13.
|
||||
Needs to be improved.
|
||||
|
||||
Patch for greek characters on MS-Windows console. (Yasuhiro Matsumoto, 2014
|
||||
Dec 17)
|
||||
|
||||
Patch to support hex values for setting option value.
|
||||
(Zyx, 2015 Nov 6)
|
||||
|
||||
@ -131,6 +126,16 @@ Update Nov 5.
|
||||
MS-Windows: Crash opening very long file name starting with "\\".
|
||||
(Christian Brock, 2012 Jun 29)
|
||||
|
||||
Patch for this from Marcin Szamotulski, 2014 Dec 28:
|
||||
8 Make the # register writable, so that it can be restored after jumping
|
||||
around in windows.
|
||||
|
||||
Using CTRL-L while popup menu is visible behaves like CTRL-P, which is wrong.
|
||||
Patch by Yasuhiro Matsumoto, 2015 Jan 5.
|
||||
Is this right? Comment from Amadeus Demarzi.
|
||||
Another patch from Christian, Jan 6.
|
||||
Comment from Hirohito Higashi, Jan 6.
|
||||
|
||||
Cursorline background color not mixed with character highlight.
|
||||
Patch by Yasuhiro Matsumoto, 2014 Dec 3.
|
||||
|
||||
@ -143,9 +148,19 @@ ml_updatechunk() is slow when retrying for another encoding. (John Little,
|
||||
Patch to add a different escape sequence for replace mode.
|
||||
(Omar Sandoval, 2014 Nov 30)
|
||||
|
||||
Calling setreg() with an empty list doesn't work.
|
||||
Patch by Yasuhiro Matsumoto, 2014 Dec 14.
|
||||
|
||||
Extended file attributes lost on write (backupcopy=no). Issue 306.
|
||||
|
||||
Window height computed incorrectly when Vim is minimized.
|
||||
Patch to fix this. (Ingo Karkat, 2014 Dec 19)
|
||||
|
||||
Patch to allow values greater than 255 for ctermfg/ctermbg on Windows.
|
||||
(Yasuhiro Matsumoto, 2014 Dec 5)
|
||||
|
||||
Mixup of highlighting when there is a match and SpellBad. (ZyX, 2015 Jan 1)
|
||||
|
||||
When 'balloonexpr' returns a list the result has a trailing newline.
|
||||
Just remove one trailing newline. (lcd, 2014 Oct 17)
|
||||
|
||||
@ -190,6 +205,10 @@ was already defined.
|
||||
|
||||
Patch to make closed folds line up. (Charles Campbell, 2014 Sep 12)
|
||||
Remark from Roland Eggner: does it cause crashes? (2014 Dec 12)
|
||||
Updated patch by Roland Eggner, Dec 16
|
||||
Updated patch from Charles, Dec 29.
|
||||
|
||||
Patch to open folds for 'incsearch'. (Christian Brabandt, 2015 Jan 6)
|
||||
|
||||
Patch for building a 32bit Vim with 64bit MingW compiler.
|
||||
(Michael Soyka, 2014 Oct 15)
|
||||
@ -200,6 +219,8 @@ Redo only remembers the last change. Could use "{count}g." to redo an older
|
||||
change. How does the user know which change? At least have a way to list
|
||||
them: ":repeats".
|
||||
|
||||
Patch for glob(), adding slash to normal files. (Ingo Karkat, 2014 Dec 22)
|
||||
|
||||
Using "." to repeat an Ex command puts that command in history. Probably
|
||||
should not happen. If the command is the result of a mapping it's not put in
|
||||
history either. (Jacob Niehus, 2014 Nov 2)
|
||||
@ -233,6 +254,9 @@ Spell files use a latin single quote. Unicode also has another single quote:
|
||||
New OpenOffice spell files support this with ICONV. But they are not
|
||||
compatible with Vim spell files. The old files can no longer be downloaded.
|
||||
|
||||
Patch to make FocusGained and FocusLost work in modern terminals. (Hayaki
|
||||
Saito, 2013 Apr 24)
|
||||
|
||||
Win32: patch to use 64 bit stat() if possible. (Ken Takata, 2014 May 12)
|
||||
More tests May 14. Update May 29. Update Aug 10.
|
||||
|
||||
@ -567,9 +591,6 @@ Patch to improve equivalence classes in regexp patterns.
|
||||
Patch with suggestions for starting.txt. (Tony Mechelynck, 2012 Oct 24)
|
||||
But use Gnome instead of GTK?
|
||||
|
||||
Patch to make FocusGained and FocusLost work in modern terminals. (Hayaki
|
||||
Saito, 2013 Apr 24)
|
||||
|
||||
Should be possible to enable/disable matchparen per window or buffer.
|
||||
Add a check for b:no_match_paren in Highlight_matching_Pair() (Marcin
|
||||
Szamotulski, 2012 Nov 8)
|
||||
@ -5076,8 +5097,6 @@ Argument list:
|
||||
|
||||
Registers:
|
||||
8 Don't display empty registers with ":display". (Etienne)
|
||||
8 Make the # register writable, so that it can be restored after jumping
|
||||
around in windows.
|
||||
8 Add put command that overwrites existing text. Should also work for
|
||||
blocks. Useful to move text around in a table. Works like using "R ^R r"
|
||||
for every line.
|
||||
|
@ -1,7 +1,7 @@
|
||||
" Vim support file to detect file types
|
||||
"
|
||||
" Maintainer: Bram Moolenaar <Bram@vim.org>
|
||||
" Last Change: 2014 Dec 06
|
||||
" Last Change: 2015 Jan 07
|
||||
|
||||
" Listen very carefully, I will say this only once
|
||||
if exists("did_load_filetypes")
|
||||
@ -1052,6 +1052,9 @@ au BufNewFile,BufRead *.ldif setf ldif
|
||||
" Ld loader
|
||||
au BufNewFile,BufRead *.ld setf ld
|
||||
|
||||
" Less
|
||||
au BufNewFile,BufRead *.less setf less
|
||||
|
||||
" Lex
|
||||
au BufNewFile,BufRead *.lex,*.l,*.lxx,*.l++ setf lex
|
||||
|
||||
|
20
runtime/ftplugin/less.vim
Normal file
20
runtime/ftplugin/less.vim
Normal file
@ -0,0 +1,20 @@
|
||||
" Vim filetype plugin
|
||||
" Language: less
|
||||
" Maintainer: Alessandro Vioni <jenoma@gmail.com>
|
||||
" URL: https://github.com/genoma/vim-less
|
||||
" Last Change: 2014 November 24
|
||||
|
||||
" Only do this when not done yet for this buffer
|
||||
if exists("b:did_ftplugin")
|
||||
finish
|
||||
endif
|
||||
let b:did_ftplugin = 1
|
||||
|
||||
let b:undo_ftplugin = "setl cms< def< inc< inex< ofu< sua<"
|
||||
|
||||
setlocal formatoptions-=t formatoptions+=croql
|
||||
|
||||
setlocal comments=:// commentstring=//\ %s
|
||||
|
||||
setlocal omnifunc=csscomplete#CompleteCSS
|
||||
setlocal suffixesadd=.less
|
@ -1,7 +1,7 @@
|
||||
" Vim filetype plugin file
|
||||
" Language: man
|
||||
" Maintainer: SungHyun Nam <goweol@gmail.com>
|
||||
" Last Change: 2014 Nov 12
|
||||
" Last Change: 2014 Dec 29
|
||||
|
||||
" To make the ":Man" command available before editing a manual page, source
|
||||
" this script from your startup vimrc file.
|
||||
@ -159,10 +159,10 @@ func <SID>GetPage(...)
|
||||
silent exec "r!/usr/bin/man ".s:GetCmdArg(sect, page)." | col -b"
|
||||
" Remove blank lines from top and bottom.
|
||||
while getline(1) =~ '^\s*$'
|
||||
silent norm ggdd
|
||||
silent keepj norm ggdd
|
||||
endwhile
|
||||
while getline('$') =~ '^\s*$'
|
||||
silent norm Gdd
|
||||
silent keepj norm Gdd
|
||||
endwhile
|
||||
1
|
||||
setl ft=man nomod
|
||||
|
@ -1,7 +1,10 @@
|
||||
" Vim filetype plugin file
|
||||
" Language: matlab
|
||||
" Maintainer: Jake Wasserman <jwasserman at gmail dot com>
|
||||
" Last Changed: 2006 Jan 12
|
||||
" Last Changed: 2014 Dec 30
|
||||
|
||||
" Contributors:
|
||||
" Charles Campbell
|
||||
|
||||
if exists("b:did_ftplugin")
|
||||
finish
|
||||
@ -12,10 +15,11 @@ let s:save_cpo = &cpo
|
||||
set cpo-=C
|
||||
|
||||
if exists("loaded_matchit")
|
||||
let s:conditionalEnd = '\(([^()]*\)\@!\<end\>\([^()]*)\)\@!'
|
||||
let b:match_words = '\<if\>\|\<while\>\|\<for\>\|\<switch\>:' .
|
||||
\ s:conditionalEnd . ',\<if\>:\<elseif\>:\<else\>:' .
|
||||
\ s:conditionalEnd
|
||||
let s:conditionalEnd = '\%(([^()]*\)\@!\<end\>\%([^()]*)\)\@!'
|
||||
let b:match_words=
|
||||
\ '\<\%(if\|switch\|for\|while\)\>:\<\%(elseif\|case\|break\|continue\|else\|otherwise\)\>:'.s:conditionalEnd.','.
|
||||
\ '\<function\>:\<return\>:\<endfunction\>'
|
||||
unlet s:conditionalEnd
|
||||
endif
|
||||
|
||||
setlocal suffixesadd=.m
|
||||
|
13
runtime/indent/less.vim
Normal file
13
runtime/indent/less.vim
Normal file
@ -0,0 +1,13 @@
|
||||
" Vim indent file
|
||||
" Language: less
|
||||
" Maintainer: Alessandro Vioni <jenoma@gmail.com>
|
||||
" URL: https://github.com/genoma/vim-less
|
||||
" Last Change: 2014 November 24
|
||||
|
||||
if exists("b:did_indent")
|
||||
finish
|
||||
endif
|
||||
|
||||
runtime! indent/css.vim
|
||||
|
||||
" vim:set sw=2:
|
@ -1,6 +1,6 @@
|
||||
" netrwPlugin.vim: Handles file transfer and remote directory listing across a network
|
||||
" PLUGIN SECTION
|
||||
" Date: Jan 22, 2014
|
||||
" Date: Nov 07, 2014
|
||||
" Maintainer: Charles E Campbell <NdrOchip@ScampbellPfamily.AbizM-NOSPAM>
|
||||
" GetLatestVimScripts: 1075 1 :AutoInstall: netrw.vim
|
||||
" Copyright: Copyright (C) 1999-2013 Charles E. Campbell {{{1
|
||||
@ -20,7 +20,7 @@
|
||||
if &cp || exists("g:loaded_netrwPlugin")
|
||||
finish
|
||||
endif
|
||||
let g:loaded_netrwPlugin = "v152"
|
||||
let g:loaded_netrwPlugin = "v153"
|
||||
if v:version < 702
|
||||
echohl WarningMsg
|
||||
echo "***warning*** you need vim version 7.2 for this version of netrw"
|
||||
@ -54,15 +54,15 @@ augroup END
|
||||
" Network Browsing Reading Writing: {{{2
|
||||
augroup Network
|
||||
au!
|
||||
au BufReadCmd file://* call netrw#FileUrlRead(expand("<amatch>"))
|
||||
au BufReadCmd ftp://*,rcp://*,scp://*,http://*,https://*,dav://*,davs://*,rsync://*,sftp://* exe "sil doau BufReadPre ".fnameescape(expand("<amatch>"))|call netrw#Nread(2,expand("<amatch>"))|exe "sil doau BufReadPost ".fnameescape(expand("<amatch>"))
|
||||
au FileReadCmd ftp://*,rcp://*,scp://*,http://*,https://*,dav://*,davs://*,rsync://*,sftp://* exe "sil doau FileReadPre ".fnameescape(expand("<amatch>"))|call netrw#Nread(1,expand("<amatch>"))|exe "sil doau FileReadPost ".fnameescape(expand("<amatch>"))
|
||||
au BufWriteCmd ftp://*,rcp://*,scp://*,http://*,dav://*,davs://*,rsync://*,sftp://* exe "sil doau BufWritePre ".fnameescape(expand("<amatch>"))|exe 'Nwrite '.fnameescape(expand("<amatch>"))|exe "sil doau BufWritePost ".fnameescape(expand("<amatch>"))
|
||||
au FileWriteCmd ftp://*,rcp://*,scp://*,http://*,dav://*,davs://*,rsync://*,sftp://* exe "sil doau FileWritePre ".fnameescape(expand("<amatch>"))|exe "'[,']".'Nwrite '.fnameescape(expand("<amatch>"))|exe "sil doau FileWritePost ".fnameescape(expand("<amatch>"))
|
||||
try
|
||||
au SourceCmd ftp://*,rcp://*,scp://*,http://*,https://*,dav://*,davs://*,rsync://*,sftp://* exe 'Nsource '.fnameescape(expand("<amatch>"))
|
||||
catch /^Vim\%((\a\+)\)\=:E216/
|
||||
au SourcePre ftp://*,rcp://*,scp://*,http://*,https://*,dav://*,davs://*,rsync://*,sftp://* exe 'Nsource '.fnameescape(expand("<amatch>"))
|
||||
au BufReadCmd file://* call netrw#FileUrlRead(expand("<amatch>"))
|
||||
au BufReadCmd ftp://*,rcp://*,scp://*,http://*,file://*,https://*,dav://*,davs://*,rsync://*,sftp://* exe "sil doau BufReadPre ".fnameescape(expand("<amatch>"))|call netrw#Nread(2,expand("<amatch>"))|exe "sil doau BufReadPost ".fnameescape(expand("<amatch>"))
|
||||
au FileReadCmd ftp://*,rcp://*,scp://*,http://*,file://*,https://*,dav://*,davs://*,rsync://*,sftp://* exe "sil doau FileReadPre ".fnameescape(expand("<amatch>"))|call netrw#Nread(1,expand("<amatch>"))|exe "sil doau FileReadPost ".fnameescape(expand("<amatch>"))
|
||||
au BufWriteCmd ftp://*,rcp://*,scp://*,http://*,file://*,dav://*,davs://*,rsync://*,sftp://* exe "sil doau BufWritePre ".fnameescape(expand("<amatch>"))|exe 'Nwrite '.fnameescape(expand("<amatch>"))|exe "sil doau BufWritePost ".fnameescape(expand("<amatch>"))
|
||||
au FileWriteCmd ftp://*,rcp://*,scp://*,http://*,file://*,dav://*,davs://*,rsync://*,sftp://* exe "sil doau FileWritePre ".fnameescape(expand("<amatch>"))|exe "'[,']".'Nwrite '.fnameescape(expand("<amatch>"))|exe "sil doau FileWritePost ".fnameescape(expand("<amatch>"))
|
||||
try
|
||||
au SourceCmd ftp://*,rcp://*,scp://*,http://*,file://*,https://*,dav://*,davs://*,rsync://*,sftp://* exe 'Nsource '.fnameescape(expand("<amatch>"))
|
||||
catch /^Vim\%((\a\+)\)\=:E216/
|
||||
au SourcePre ftp://*,rcp://*,scp://*,http://*,file://*,https://*,dav://*,davs://*,rsync://*,sftp://* exe 'Nsource '.fnameescape(expand("<amatch>"))
|
||||
endtry
|
||||
augroup END
|
||||
|
||||
@ -81,18 +81,26 @@ com! -nargs=* -bar -bang -count=0 -complete=dir Vexplore call netrw#Explore(<cou
|
||||
com! -nargs=* -bar -count=0 -complete=dir Texplore call netrw#Explore(<count>,0,6 ,<q-args>)
|
||||
com! -nargs=* -bar -bang Nexplore call netrw#Explore(-1,0,0,<q-args>)
|
||||
com! -nargs=* -bar -bang Pexplore call netrw#Explore(-2,0,0,<q-args>)
|
||||
com! -nargs=* -bar -complete=dir Lexplore call netrw#Lexplore(<q-args>)
|
||||
com! -nargs=* -bar -bang -count=0 -complete=dir Lexplore call netrw#Lexplore(<count>,<bang>0,<q-args>)
|
||||
|
||||
" Commands: NetrwSettings {{{2
|
||||
com! -nargs=0 NetrwSettings call netrwSettings#NetrwSettings()
|
||||
com! -bang NetrwClean call netrw#Clean(<bang>0)
|
||||
|
||||
" Maps:
|
||||
if !exists("g:netrw_nogx") && maparg('gx','n') == ""
|
||||
if !hasmapto('<Plug>NetrwBrowseX')
|
||||
nmap <unique> gx <Plug>NetrwBrowseX
|
||||
if !exists("g:netrw_nogx")
|
||||
if maparg('gx','n') == ""
|
||||
if !hasmapto('<Plug>NetrwBrowseX')
|
||||
nmap <unique> gx <Plug>NetrwBrowseX
|
||||
endif
|
||||
nno <silent> <Plug>NetrwBrowseX :call netrw#BrowseX(expand((exists("g:netrw_gx")? g:netrw_gx : '<cfile>')),netrw#CheckIfRemote())<cr>
|
||||
endif
|
||||
if maparg('gx','v') == ""
|
||||
if !hasmapto('<Plug>NetrwBrowseXVis')
|
||||
vmap <unique> gx <Plug>NetrwBrowseXVis
|
||||
endif
|
||||
vno <silent> <Plug>NetrwBrowseXVis :<c-u>call netrw#BrowseXVis()<cr>
|
||||
endif
|
||||
nno <silent> <Plug>NetrwBrowseX :call netrw#NetrwBrowseX(expand("<cfile>"),0)<cr>
|
||||
endif
|
||||
|
||||
" ---------------------------------------------------------------------
|
||||
@ -119,7 +127,7 @@ fun! s:LocalBrowse(dirname)
|
||||
" call Decho("(LocalBrowse) dirname<".a:dirname."> (isdirectory, amiga)")
|
||||
if a:dirname != '' && isdirectory(a:dirname)
|
||||
sil! call netrw#LocalBrowseCheck(a:dirname)
|
||||
if exists("w:netrw_bannercnt")
|
||||
if exists("w:netrw_bannercnt") && line('.') < w:netrw_bannercnt
|
||||
exe w:netrw_bannercnt
|
||||
endif
|
||||
endif
|
||||
@ -128,7 +136,7 @@ fun! s:LocalBrowse(dirname)
|
||||
" call Decho("(LocalBrowse) dirname<".a:dirname."> ft=".&ft." (isdirectory, not amiga)")
|
||||
" call Dredir("LocalBrowse ft last set: ","verbose set ft")
|
||||
sil! call netrw#LocalBrowseCheck(a:dirname)
|
||||
if exists("w:netrw_bannercnt")
|
||||
if exists("w:netrw_bannercnt") && line('.') < w:netrw_bannercnt
|
||||
exe w:netrw_bannercnt
|
||||
endif
|
||||
|
||||
|
@ -2,7 +2,7 @@
|
||||
" Language: Diff (context or unified)
|
||||
" Maintainer: Bram Moolenaar <Bram@vim.org>
|
||||
" Translations by Jakson Alves de Aquino.
|
||||
" Last Change: 2014 Nov 12
|
||||
" Last Change: 2015 Jan 07
|
||||
|
||||
" Quit when a (custom) syntax file was already loaded
|
||||
if exists("b:current_syntax")
|
||||
@ -18,6 +18,9 @@ syn match diffIsA "^File .* is a .* while file .* is a .*"
|
||||
syn match diffNoEOL "^\\ No newline at end of file .*"
|
||||
syn match diffCommon "^Common subdirectories: .*"
|
||||
|
||||
" Disable the translations by setting diff_translations to zero.
|
||||
if !exists("diff_translations") || diff_translations
|
||||
|
||||
" ca
|
||||
syn match diffOnly "^Només a .*"
|
||||
syn match diffIdentical "^Els fitxers .* i .* són idèntics$"
|
||||
@ -320,6 +323,8 @@ syn match diffIsA "^檔案 .* 是.*而檔案 .* 是.*"
|
||||
syn match diffNoEOL "^\\ 檔案末沒有 newline 字元"
|
||||
syn match diffCommon "^.* 和 .* 有共同的副目錄$"
|
||||
|
||||
endif
|
||||
|
||||
|
||||
syn match diffRemoved "^-.*"
|
||||
syn match diffRemoved "^<.*"
|
||||
|
@ -2,7 +2,8 @@
|
||||
" Language: HTML
|
||||
" Maintainer: Claudio Fleiner <claudio@fleiner.com>
|
||||
" URL: http://www.fleiner.com/vim/syntax/html.vim
|
||||
" Last Change: 2012 Oct 05
|
||||
" Last Change: 2015 Jan 07
|
||||
" included patch from David Felix
|
||||
|
||||
" Please check :help html.vim for some comments and a description of the options
|
||||
|
||||
@ -168,7 +169,7 @@ if main_syntax != 'java' || exists("java_javascript")
|
||||
" JAVA SCRIPT
|
||||
syn include @htmlJavaScript syntax/javascript.vim
|
||||
unlet b:current_syntax
|
||||
syn region javaScript start=+<script\_[^>]*>+ keepend end=+</script>+me=s-1 contains=@htmlJavaScript,htmlCssStyleComment,htmlScriptTag,@htmlPreproc
|
||||
syn region javaScript start=+<script\_[^>]*>+ keepend end=+</script\_[^>]*>+me=s-1 contains=@htmlJavaScript,htmlCssStyleComment,htmlScriptTag,@htmlPreproc
|
||||
syn region htmlScriptTag contained start=+<script+ end=+>+ fold contains=htmlTagN,htmlString,htmlArg,htmlValue,htmlTagError,htmlEvent
|
||||
HtmlHiLink htmlScriptTag htmlTag
|
||||
|
||||
@ -193,7 +194,7 @@ if main_syntax != 'java' || exists("java_vb")
|
||||
" VB SCRIPT
|
||||
syn include @htmlVbScript syntax/vb.vim
|
||||
unlet b:current_syntax
|
||||
syn region javaScript start=+<script \_[^>]*language *=\_[^>]*vbscript\_[^>]*>+ keepend end=+</script>+me=s-1 contains=@htmlVbScript,htmlCssStyleComment,htmlScriptTag,@htmlPreproc
|
||||
syn region javaScript start=+<script \_[^>]*language *=\_[^>]*vbscript\_[^>]*>+ keepend end=+</script\_[^>]*>+me=s-1 contains=@htmlVbScript,htmlCssStyleComment,htmlScriptTag,@htmlPreproc
|
||||
endif
|
||||
|
||||
syn cluster htmlJavaScript add=@htmlPreproc
|
||||
|
79
runtime/syntax/less.vim
Normal file
79
runtime/syntax/less.vim
Normal file
@ -0,0 +1,79 @@
|
||||
" Vim syntax file
|
||||
" Language: less
|
||||
" Maintainer: Alessandro Vioni <jenoma@gmail.com>
|
||||
" URL: https://github.com/genoma/vim-less
|
||||
" Last Change: 2014 November 24
|
||||
|
||||
if exists("b:current_syntax")
|
||||
finish
|
||||
endif
|
||||
|
||||
runtime! syntax/css.vim
|
||||
runtime! after/syntax/css.vim
|
||||
|
||||
syn case ignore
|
||||
|
||||
syn cluster lessCssProperties contains=cssFontProp,cssFontDescriptorProp,cssColorProp,cssTextProp,cssBoxProp,cssGeneratedContentProp,cssPagingProp,cssUIProp,cssRenderProp,cssAuralProp,cssTableProp
|
||||
syn cluster lessCssAttributes contains=css.*Attr,lessEndOfLineComment,lessComment,cssValue.*,cssColor,cssURL,lessDefault,cssImportant,cssError,cssStringQ,cssStringQQ,cssFunction,cssUnicodeEscape,cssRenderProp
|
||||
|
||||
syn region lessDefinition matchgroup=cssBraces start="{" end="}" contains=TOP
|
||||
|
||||
syn match lessProperty "\%([{};]\s*\|^\)\@<=\%([[:alnum:]-]\|#{[^{}]*}\)\+\s*:" contains=css.*Prop skipwhite nextgroup=lessCssAttribute contained containedin=lessDefinition
|
||||
syn match lessProperty "^\s*\zs\s\%(\%([[:alnum:]-]\|#{[^{}]*}\)\+\s*:\|:[[:alnum:]-]\+\)"hs=s+1 contains=css.*Prop skipwhite nextgroup=lessCssAttribute
|
||||
syn match lessProperty "^\s*\zs\s\%(:\=[[:alnum:]-]\+\s*=\)"hs=s+1 contains=css.*Prop skipwhite nextgroup=lessCssAttribute
|
||||
syn match lessCssAttribute +\%("\%([^"]\|\\"\)*"\|'\%([^']\|\\'\)*'\|#{[^{}]*}\|[^{};]\)*+ contained contains=@lessCssAttributes,lessVariable,lessFunction,lessInterpolation
|
||||
syn match lessDefault "!default\>" contained
|
||||
|
||||
" less variables and media queries
|
||||
syn match lessVariable "@[[:alnum:]_-]\+" nextgroup=lessCssAttribute skipwhite
|
||||
syn match lessMedia "@media" nextgroup=lessCssAttribute skipwhite
|
||||
|
||||
" Less functions
|
||||
syn match lessFunction "\<\%(escape\|e\|unit\)\>(\@=" contained
|
||||
syn match lessFunction "\<\%(ceil\|floor\|percentage\|round\|sqrt\|abs\|sin\|asin\|cos\|acos\|tan\|atan\|pi\|pow\|min\|max\)\>(\@=" contained
|
||||
syn match lessFunction "\<\%(rgb\|rgba\|argb\|argb\|hsl\|hsla\|hsv\|hsva\)\>(\@=" contained
|
||||
syn match lessFunction "\<\%(hue\|saturation\|lightness\|red\|green\|blue\|alpha\|luma\)\>(\@=" contained
|
||||
syn match lessFunction "\<\%(saturate\|desaturate\|lighten\|darken\|fadein\|fadeout\|fade\|spin\|mix\|greyscale\|contrast\)\>(\@=" contained
|
||||
syn match lessFunction "\<\%(multiply\|screen\|overlay\|softlight\|hardlight\|difference\|exclusion\|average\|negation\)\>(\@=" contained
|
||||
|
||||
" Less id class visualization
|
||||
syn match lessIdChar "#[[:alnum:]_-]\@=" nextgroup=lessId,lessClassIdCall
|
||||
syn match lessId "[[:alnum:]_-]\+" contained
|
||||
syn match lessClassIdCall "[[:alnum:]_-]\+()" contained
|
||||
|
||||
syn match lessClassChar "\.[[:alnum:]_-]\@=" nextgroup=lessClass,lessClassCall
|
||||
syn match lessClass "[[:alnum:]_-]\+" contained
|
||||
syn match lessClassCall "[[:alnum:]_-]\+()" contained
|
||||
|
||||
syn match lessAmpersand "&" contains=lessIdChar,lessClassChar
|
||||
|
||||
syn region lessInclude start="@import" end=";\|$" contains=lessComment,cssURL,cssUnicodeEscape,cssMediaType,cssStringQ,cssStringQQ
|
||||
|
||||
syn keyword lessTodo FIXME NOTE TODO OPTIMIZE XXX contained
|
||||
syn region lessComment start="^\z(\s*\)//" end="^\%(\z1 \)\@!" contains=lessTodo,@Spell
|
||||
syn region lessCssComment start="^\z(\s*\)/\*" end="^\%(\z1 \)\@!" contains=lessTodo,@Spell
|
||||
syn match lessEndOfLineComment "//.*" contains=lessComment,lessTodo,@Spell
|
||||
|
||||
hi def link lessEndOfLineComment lessComment
|
||||
hi def link lessCssComment lessComment
|
||||
hi def link lessComment Comment
|
||||
hi def link lessDefault cssImportant
|
||||
hi def link lessVariable Identifier
|
||||
hi def link lessFunction PreProc
|
||||
hi def link lessTodo Todo
|
||||
hi def link lessInclude Include
|
||||
hi def link lessIdChar Special
|
||||
hi def link lessClassChar Special
|
||||
hi def link lessAmpersand Character
|
||||
hi def link lessId Identifier
|
||||
hi def link lessClass Type
|
||||
hi def link lessCssAttribute PreProc
|
||||
hi def link lessClassCall Type
|
||||
hi def link lessClassIdCall Type
|
||||
hi def link lessTagName cssTagName
|
||||
hi def link lessDeprecated cssDeprecated
|
||||
hi def link lessMedia cssMedia
|
||||
|
||||
let b:current_syntax = "less"
|
||||
|
||||
" vim:set sw=2:
|
@ -1,7 +1,7 @@
|
||||
" Language : Netrw Remote-Directory Listing Syntax
|
||||
" Maintainer : Charles E. Campbell, Jr.
|
||||
" Last change: Mar 07, 2014
|
||||
" Version : 18
|
||||
" Maintainer : Charles E. Campbell
|
||||
" Last change: Oct 06, 2014
|
||||
" Version : 19
|
||||
" ---------------------------------------------------------------------
|
||||
|
||||
" Syntax Clearing: {{{1
|
||||
@ -16,7 +16,7 @@ endif
|
||||
syn cluster NetrwGroup contains=netrwHide,netrwSortBy,netrwSortSeq,netrwQuickHelp,netrwVersion,netrwCopyTgt
|
||||
syn cluster NetrwTreeGroup contains=netrwDir,netrwSymLink,netrwExe
|
||||
|
||||
syn match netrwPlain "\(\S\+ \)*\S\+" contains=@NoSpell
|
||||
syn match netrwPlain "\(\S\+ \)*\S\+" contains=netrwLink,@NoSpell
|
||||
syn match netrwSpecial "\%(\S\+ \)*\S\+[*|=]\ze\%(\s\{2,}\|$\)" contains=netrwClassify,@NoSpell
|
||||
syn match netrwDir "\.\{1,2}/" contains=netrwClassify,@NoSpell
|
||||
"syn match netrwDir "\%(\S\+ \)*\S\+/" contains=netrwClassify,@NoSpell
|
||||
@ -24,7 +24,11 @@ syn match netrwDir "\%(\S\+ \)*\S\+/\ze\%(\s\{2,}\|$\)" contains=netrwClassi
|
||||
syn match netrwSizeDate "\<\d\+\s\d\{1,2}/\d\{1,2}/\d\{4}\s" skipwhite contains=netrwDateSep,@NoSpell nextgroup=netrwTime
|
||||
syn match netrwSymLink "\%(\S\+ \)*\S\+@\ze\%(\s\{2,}\|$\)" contains=netrwClassify,@NoSpell
|
||||
syn match netrwExe "\%(\S\+ \)*\S*[^~]\*\ze\%(\s\{2,}\|$\)" contains=netrwClassify,@NoSpell
|
||||
if has("gui_running") && (&enc == 'utf-8' || &enc == 'utf-16' || &enc == 'ucs-4')
|
||||
syn match netrwTreeBar "^\%([-+|│] \)\+" contains=netrwTreeBarSpace nextgroup=@netrwTreeGroup
|
||||
else
|
||||
syn match netrwTreeBar "^\%([-+|] \)\+" contains=netrwTreeBarSpace nextgroup=@netrwTreeGroup
|
||||
endif
|
||||
syn match netrwTreeBarSpace " " contained
|
||||
|
||||
syn match netrwClassify "[*=|@/]\ze\%(\s\{2,}\|$\)" contained
|
||||
@ -44,10 +48,11 @@ syn match netrwList ".*$" contained contains=netrwComma,@NoSpell
|
||||
syn match netrwComma "," contained
|
||||
syn region netrwQuickHelp matchgroup=Comment start="Quick Help:\s\+" end="$" contains=netrwHelpCmd,netrwQHTopic,@NoSpell keepend contained
|
||||
syn match netrwHelpCmd "\S\+\ze:" contained skipwhite contains=@NoSpell nextgroup=netrwCmdSep
|
||||
syn match netrwQHTopic "-\a\+-" contained skipwhite
|
||||
syn match netrwQHTopic "([a-zA-Z &]\+)" contained skipwhite
|
||||
syn match netrwCmdSep ":" contained nextgroup=netrwCmdNote
|
||||
syn match netrwCmdNote ".\{-}\ze " contained contains=@NoSpell
|
||||
syn match netrwVersion "(netrw.*)" contained contains=@NoSpell
|
||||
syn match netrwLink "-->" contained skipwhite
|
||||
|
||||
" -----------------------------
|
||||
" Special filetype highlighting {{{1
|
||||
@ -95,6 +100,7 @@ if !exists("did_drchip_netrwlist_syntax")
|
||||
hi default link netrwComma netrwComment
|
||||
hi default link netrwHide netrwComment
|
||||
hi default link netrwMarkFile TabLineSel
|
||||
hi default link netrwLink Special
|
||||
|
||||
" special syntax highlighting (see :he g:netrw_special_syntax)
|
||||
hi default link netrwBak NonText
|
||||
|
@ -3,12 +3,11 @@
|
||||
" Maintainer: Jakson Aquino <jalvesaq@gmail.com>
|
||||
" Former Maintainers: Vaidotas Zemlys <zemlys@gmail.com>
|
||||
" Tom Payne <tom@tompayne.org>
|
||||
" Last Change: Wed Jul 09, 2014 10:29PM
|
||||
" Last Change: Wed Dec 31, 2014 12:36AM
|
||||
" Filenames: *.R *.r *.Rhistory *.Rt
|
||||
"
|
||||
" NOTE: The highlighting of R functions is defined in the
|
||||
" r-plugin/functions.vim, which is part of vim-r-plugin2:
|
||||
" http://www.vim.org/scripts/script.php?script_id=2628
|
||||
"
|
||||
" NOTE: The highlighting of R functions is defined in
|
||||
" runtime files created by a filetype plugin, if installed.
|
||||
"
|
||||
" CONFIGURATION:
|
||||
" syntax folding can be turned on by
|
||||
@ -37,9 +36,9 @@ syn match rComment contains=@Spell,rCommentTodo "#.*"
|
||||
syn match rOKeyword contained "@\(param\|return\|name\|rdname\|examples\|include\|docType\)"
|
||||
syn match rOKeyword contained "@\(S3method\|TODO\|aliases\|alias\|assignee\|author\|callGraphDepth\|callGraph\)"
|
||||
syn match rOKeyword contained "@\(callGraphPrimitives\|concept\|exportClass\|exportMethod\|exportPattern\|export\|formals\)"
|
||||
syn match rOKeyword contained "@\(format\|importClassesFrom\|importFrom\|importMethodsFrom\|import\|keywords\)"
|
||||
syn match rOKeyword contained "@\(format\|importClassesFrom\|importFrom\|importMethodsFrom\|import\|keywords\|useDynLib\)"
|
||||
syn match rOKeyword contained "@\(method\|noRd\|note\|references\|seealso\|setClass\|slot\|source\|title\|usage\)"
|
||||
syn match rOKeyword contained "@\(family\|template\|templateVar\|description\|details\|inheritsParams\)"
|
||||
syn match rOKeyword contained "@\(family\|template\|templateVar\|description\|details\|inheritParams\)"
|
||||
syn match rOComment contains=@Spell,rOKeyword "#'.*"
|
||||
|
||||
|
||||
@ -79,12 +78,12 @@ syn keyword rRepeat for in repeat while
|
||||
syn keyword rConstant T F LETTERS letters month.abb month.name pi
|
||||
syn keyword rConstant R.version.string
|
||||
|
||||
syn keyword rNumber NA_integer_ NA_real_ NA_complex_ NA_character_
|
||||
syn keyword rNumber NA_integer_ NA_real_ NA_complex_ NA_character_
|
||||
|
||||
" Constants
|
||||
syn keyword rConstant NULL
|
||||
syn keyword rBoolean FALSE TRUE
|
||||
syn keyword rNumber NA Inf NaN
|
||||
syn keyword rNumber NA Inf NaN
|
||||
|
||||
" integer
|
||||
syn match rInteger "\<\d\+L"
|
||||
@ -93,7 +92,7 @@ syn match rInteger "\<\d\+[Ee]+\=\d\+L"
|
||||
|
||||
" number with no fractional part or exponent
|
||||
syn match rNumber "\<\d\+\>"
|
||||
" hexadecimal number
|
||||
" hexadecimal number
|
||||
syn match rNumber "\<0x\([0-9]\|[a-f]\|[A-F]\)\+"
|
||||
|
||||
" floating point number with integer and fractional parts and optional exponent
|
||||
@ -111,17 +110,19 @@ syn match rComplex "\<\d\+\.\d*\([Ee][-+]\=\d\+\)\=i"
|
||||
syn match rComplex "\<\.\d\+\([Ee][-+]\=\d\+\)\=i"
|
||||
syn match rComplex "\<\d\+[Ee][-+]\=\d\+i"
|
||||
|
||||
syn match rAssign '='
|
||||
syn match rOperator "&"
|
||||
syn match rOperator '-'
|
||||
syn match rOperator '\*'
|
||||
syn match rOperator '+'
|
||||
syn match rOperator '='
|
||||
if &filetype != "rmd" && &filetype != "rrst"
|
||||
syn match rOperator "[|!<>^~/:]"
|
||||
else
|
||||
syn match rOperator "[|!<>^~`/:]"
|
||||
endif
|
||||
syn match rOperator "%\{2}\|%\S\{-}%"
|
||||
syn match rOperator '\([!><]\)\@<=='
|
||||
syn match rOperator '=='
|
||||
syn match rOpError '\*\{3}'
|
||||
syn match rOpError '//'
|
||||
syn match rOpError '&&&'
|
||||
@ -129,8 +130,8 @@ syn match rOpError '|||'
|
||||
syn match rOpError '<<'
|
||||
syn match rOpError '>>'
|
||||
|
||||
syn match rArrow "<\{1,2}-"
|
||||
syn match rArrow "->\{1,2}"
|
||||
syn match rAssign "<\{1,2}-"
|
||||
syn match rAssign "->\{1,2}"
|
||||
|
||||
" Special
|
||||
syn match rDelimiter "[,;:]"
|
||||
@ -151,9 +152,14 @@ syn match rBraceError "[)}]" contained
|
||||
syn match rCurlyError "[)\]]" contained
|
||||
syn match rParenError "[\]}]" contained
|
||||
|
||||
" Source list of R functions. The list is produced by the Vim-R-plugin
|
||||
" http://www.vim.org/scripts/script.php?script_id=2628
|
||||
runtime r-plugin/functions.vim
|
||||
" Source list of R functions produced by a filetype plugin (if installed)
|
||||
if has("nvim")
|
||||
" Nvim-R
|
||||
runtime R/functions.vim
|
||||
else
|
||||
" Vim-R-plugin
|
||||
runtime r-plugin/functions.vim
|
||||
endif
|
||||
|
||||
syn match rDollar display contained "\$"
|
||||
syn match rDollar display contained "@"
|
||||
@ -171,7 +177,7 @@ if &filetype == "rhelp"
|
||||
endif
|
||||
|
||||
" Type
|
||||
syn keyword rType array category character complex double function integer list logical matrix numeric vector data.frame
|
||||
syn keyword rType array category character complex double function integer list logical matrix numeric vector data.frame
|
||||
|
||||
" Name of object with spaces
|
||||
if &filetype != "rmd" && &filetype != "rrst"
|
||||
@ -179,13 +185,19 @@ if &filetype != "rmd" && &filetype != "rrst"
|
||||
endif
|
||||
|
||||
if &filetype == "rhelp"
|
||||
syn match rhPreProc "^#ifdef.*"
|
||||
syn match rhPreProc "^#endif.*"
|
||||
syn match rhPreProc "^#ifdef.*"
|
||||
syn match rhPreProc "^#endif.*"
|
||||
syn match rhSection "\\dontrun\>"
|
||||
endif
|
||||
|
||||
if exists("r_syn_minlines")
|
||||
exe "syn sync minlines=" . r_syn_minlines
|
||||
else
|
||||
syn sync minlines=40
|
||||
endif
|
||||
|
||||
" Define the default highlighting.
|
||||
hi def link rArrow Statement
|
||||
hi def link rAssign Statement
|
||||
hi def link rBoolean Boolean
|
||||
hi def link rBraceError Error
|
||||
hi def link rComment Comment
|
||||
@ -204,7 +216,7 @@ hi def link rHelpIdent Identifier
|
||||
hi def link rhPreProc PreProc
|
||||
hi def link rhSection PreCondit
|
||||
hi def link rInteger Number
|
||||
hi def link rLstElmt Normal
|
||||
hi def link rLstElmt Normal
|
||||
hi def link rNameWSpace Normal
|
||||
hi def link rNumber Number
|
||||
hi def link rOperator Operator
|
||||
|
976
runtime/tutor/tutor.uk.utf-8
Normal file
976
runtime/tutor/tutor.uk.utf-8
Normal file
@ -0,0 +1,976 @@
|
||||
===============================================================================
|
||||
= Ласкаво простимо в уроки VIM =
|
||||
===============================================================================
|
||||
|
||||
Vim дуже потужний редактор, що має багато команд. Всі команди неможливо
|
||||
помістити в підручнику на зразок цього, але цих уроків достатньо, щоб
|
||||
ви навчились з легкістю користуватись Vim як універсальним редактором.
|
||||
|
||||
УВАГА:
|
||||
Уроки цього підручника вимагають зміни тексту. Зробіть копію файлу, щоб
|
||||
практикуватись на ньому.
|
||||
|
||||
Важливо пам'ятати, що цей підручник має на меті навчання на практиці.
|
||||
Це означає що ви маєте застосовувати команди щоб вивчити їх. Просто
|
||||
прочитавши текст, ви забудете команди.
|
||||
|
||||
Кнопки на клавіатурі, будемо позначати квадратними дужками: [кнопка].
|
||||
|
||||
А зараз переконайтесь, що включена англійська розкладка і не затиснутий
|
||||
Caps Lock, і натисніть кнопку j щоб переміститись до першого уроку.
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
Урок 1.1: ПЕРЕМІЩЕННЯ КУРСОРА
|
||||
|
||||
|
||||
** Щоб переміщати курсор використовуйте кнопки [h],[j],[k],[l],
|
||||
як вказано на схемі:
|
||||
^
|
||||
[k]
|
||||
<[h] [l]>
|
||||
[j]
|
||||
v
|
||||
|
||||
Таке розміщення спочатку може видатись трохи дивним. Як наприклад те, що
|
||||
кнопка [l] переміщує курсор вправо. Але клавіші розміщені так, щоб
|
||||
мінімізувати кількість рухів. Найчастіша дія яку користувач робить з
|
||||
текстовим файлом - це читає його. А при читанні прокручують текст вниз.
|
||||
Тому вниз прокручує [j] - вона знаходиться якраз під вказівним пальцем
|
||||
правої руки.
|
||||
|
||||
Курсор можна переміщувати і класичним способом (курсорними клавішами), але
|
||||
зручніше буде, якщо ви опануєте спосіб Vim. (Особливо якщо ви вже вмієте
|
||||
набирати всліпу).
|
||||
|
||||
1. Попереміщуйте курсор по екрану, поки не призвичаїтесь.
|
||||
|
||||
2. Перемістіться до наступного уроку.
|
||||
|
||||
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
Урок 1.2: Вихід з Vim
|
||||
|
||||
|
||||
Увага! Перед тим як виконувати цей урок прочитайте його повністю.
|
||||
|
||||
1. Натисніть [ESC] (щоб впевнитись що ви в звичайному режимі).
|
||||
|
||||
2. Наберіть: :q! [ENTER].
|
||||
Це завершує роботу, відкидаючи всі зміни які ви здійснили.
|
||||
|
||||
3. Коли ви побачите привітання терміналу введіть команду яку ви використали
|
||||
щоб відкрити цей підручник. Скоріш за все це було: vim tutor.txt [ENTER]
|
||||
|
||||
4. Якщо ви запам'ятали кроки з 1 по 3, виконайте їх, і переходьте до
|
||||
наступного уроку.
|
||||
|
||||
Зауваження: Команда :q! [ENTER] завершує роботу і відкидає всі зміни. Через
|
||||
кілька уроків ви навчитесь зберігати зміни в файл.
|
||||
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
Урок 1.3:РЕДАГУВАННЯ ТЕКСТУ. ВИДАЛЕННЯ.
|
||||
|
||||
|
||||
** Натисніть [x] щоб видалити символ під курсором. **
|
||||
|
||||
1. Перемістіть курсор до лінії нижче, яка позначена так: --->.
|
||||
|
||||
2. Щоб виправити помилки перемістіть курсор так, щоб він став над
|
||||
символом який треба видалити.
|
||||
|
||||
3. Натисніть [x] щоб видалити непотрібний символ.
|
||||
|
||||
4. Повторіть кроки з другого по четвертий, поки речення не стане правильним.
|
||||
|
||||
---> Ккоровва перрестрибнуууууула ччерезз мііісяццць.
|
||||
|
||||
5. Тепер, коли речення правильне, можна перейти до уроку 1.4.
|
||||
|
||||
Зауваження: Протягом навчання не старайтесь запам'ятати все.
|
||||
Вчіться практикою.
|
||||
|
||||
|
||||
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
Урок 1.4: РЕДАГУВАННЯ ТЕКСТУ. ВСТАВКА
|
||||
|
||||
|
||||
** Натисніть [i] щоб вставити текст. **
|
||||
|
||||
1. Перемістіть курсор на перший рядок позначений: --->.
|
||||
|
||||
2. Перемістіть курсор на символ, ПІСЛЯ якого потрібно вставити текст.
|
||||
|
||||
3. Натисніть [i] і наберіть необхідні вставки.
|
||||
|
||||
4. Коли всі помилки виправлені натисніть [ESC] щоб повернутись в звичайний
|
||||
режим.
|
||||
|
||||
---> З прав текст.
|
||||
---> З цього рядка пропав деякий текст.
|
||||
|
||||
5. Коли призвичаїтесь вставляти текст - переходьте до уроку 1.5.
|
||||
|
||||
|
||||
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
Урок 1.5: РЕДАГУВАННЯ ТЕКСТУ. ДОДАВАННЯ.
|
||||
|
||||
|
||||
** Натисніть [A] щоб додати текст. **
|
||||
|
||||
Увага! Тут і далі, коли мають наувазі клавішу з буквою в верхньому
|
||||
регістрі, то це означає що її натискають з затиснутою [SHIFT].
|
||||
|
||||
1. Перемістіть курсор до першої лінії внизу позначеної --->.
|
||||
Не має значення над яким символом знаходиться курсор.
|
||||
|
||||
2. Натисніть [A] і введіть необхідне доповнення.
|
||||
|
||||
3. Коли додавання завершене натисніть [ESC] щоб повернутись в
|
||||
звичайний режим.
|
||||
|
||||
4. Перемістіть курсор до другої лінії позначеної ---> і повторіть
|
||||
кроки 2 і 3 щоб виправити речення.
|
||||
|
||||
---> З цього рядка пропущ
|
||||
З цього рядка пропущений текст.
|
||||
---> З цього рядка також
|
||||
З цього рядка також пропущений текст.
|
||||
|
||||
5. Після виконання вправ, переходьте до наступного уроку.
|
||||
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
Урок 1.6: РЕДАГУВАННЯ ФАЙЛУ
|
||||
|
||||
** Використайте :wq щоб зберегти файл і вийти.**
|
||||
|
||||
Увага! Перед виконанням уроку прочитайте його повністю.
|
||||
|
||||
1. Вийдіть з цього підручника як ви робили в уроці 1.2: :q![ENTER]
|
||||
Або якщо ви маєте доступ до іншого терміналу виконуйте наступні
|
||||
дії в ньому.
|
||||
|
||||
2. В терміналі наберіть команду: vim НазваФайлу [ENTER]
|
||||
'vim' - команда для запуску редактора, НазваФайлу - файл який будемо
|
||||
редагувати. Якщо ввести неіснуючий файл, то він створиться
|
||||
|
||||
3. Відредагуйте текст, як навчились у попередніх уроках.
|
||||
|
||||
4. Щоб зберегти зміни у файлі, і вийти з Vim наберіть: :wq [ENTER]
|
||||
|
||||
5. Якщо ви вийшли з підручника на першому кроці, то зайдіть в нього
|
||||
знову і переходьте до підсумку.
|
||||
|
||||
6. Після прочитання і засвоєння попередніх кроків виконайте їх.
|
||||
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
ПІДСУМОК УРОКУ 1
|
||||
|
||||
|
||||
1. Курсор керується курсорними клавішами, або клавішами [h][j][k][l]
|
||||
[h] (вліво) [j] (вниз) [k] (вверх) [l] (вправо)
|
||||
|
||||
2. Щоб запустити Vim з терміналу наберіть: vim Назва файлу [ENTER]
|
||||
|
||||
3. Щоб вийти з Vim наберіть: [ESC] :q! [ENTER] щоб відкинути всі зміни.
|
||||
або наберіть: [ESC] :wq [ENTER] щоб зберегти всі зміни.
|
||||
|
||||
4. Щоб видалити символ під курсором натисніть [x].
|
||||
|
||||
5. Щоб вставити, чи доповнити текст наберіть:
|
||||
[i] текст що вставляєтсья [ESC] вставиться перед курсором
|
||||
[A] текст до додається [ESC] додасть текст до рядка
|
||||
|
||||
Зауваження: Натискання [ESC] перенесе вас в звичайний режим, чи відмінить
|
||||
не до кінця введену команду.
|
||||
|
||||
Тепер переходьте до уроку 2.
|
||||
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
Урок 2.1: КОМАНДИ ВИДАЛЕННЯ
|
||||
|
||||
|
||||
** Введіть dw щоб видалити слово. **
|
||||
|
||||
1. Натисніть [ESC], щоб переконатись що ви в звичайному режимі.
|
||||
|
||||
2. Перемістіть курсор до лінії нижче позначеної --->.
|
||||
|
||||
3. Перемістіть курсор до початку слова що має бути видалене.
|
||||
|
||||
4. Введіть dw щоб слово пропало.
|
||||
|
||||
Зауваження: Буква d з'явиться в останньому рядку екрану, якщо ви її натиснули.
|
||||
Vim чекає введення наступного символа. Якщо з'явилось щось інше
|
||||
значить ви щось не так ввели. Натисніть [ESC] і почніть спочатку.
|
||||
|
||||
---> Є деякі слова весело, які не потрібні папір в цьому реченні.
|
||||
|
||||
5. Повторюйте кроки 3 і 4 поки речення не стане правильне, а тоді переходьте
|
||||
до уроку 2.2.
|
||||
|
||||
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
Урок 2.2: БІЛЬШЕ КОМАНД ВИДАЛЕННЯ
|
||||
|
||||
|
||||
** Наберіть d$ щоб видалити символи від курсора до кінця рядка. **
|
||||
|
||||
1. Натисніть [ESC] щоб переконатись що ви в звичайному режимі.
|
||||
|
||||
2. Перемістіть курсор до лінії нижче, що позначена --->.
|
||||
|
||||
3. Перемістіть курсор до кінця правильного рядка (ПІСЛЯ першої крапки).
|
||||
|
||||
4. Введіть d$ щоб видалити все до кінця рядка.
|
||||
|
||||
---> Хтось надрукував кінець цього рядка двічі. кінець цього рядка двічі.
|
||||
|
||||
|
||||
5. Перейдіть до уроку 2.3 щоб розібратись в цьому детальніше.
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
Урок 2.3:ОПЕРАТОРИ І ПЕРЕМІЩЕННЯ
|
||||
|
||||
|
||||
Багато команд що змінюють текст утворені з оператора і переміщення.
|
||||
Формат команди видалення з оператором d подано нижче:
|
||||
|
||||
d переміщення
|
||||
|
||||
Де:
|
||||
d - оператор видалення.
|
||||
переміщення - з чим працює оператор (описано нижче).
|
||||
|
||||
Короткий список переміщень:
|
||||
w - до початку наступного слова, НЕ ВКЛЮЧАЮЧИ його перший символ.
|
||||
e - до кінця поточного слова, ВКЛЮЧАЮЧИ останній символ.
|
||||
$ - до кінця рядка, ВКЛЮЧАЮЧИ останній символ.
|
||||
|
||||
Тому введення de видалить символи від курсора, до кінця слова.
|
||||
|
||||
Зауваження: Натискання тільки переміщення в звичайному режимі відповідно
|
||||
переміщує курсор.
|
||||
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
Урок 2.4: ВИКОРИСТАННЯ ЛІЧИЛЬНИКА ДЛЯ ПЕРЕМІЩЕННЯ
|
||||
|
||||
|
||||
** Введення числа перед переміщенням повторює його стільки раз. **
|
||||
|
||||
1. Перемістіть курсор до початку рядка позначеного --->
|
||||
|
||||
2. Введіть 2w щоб перемістити курсор на два слова вперед.
|
||||
|
||||
3. Введіть 3e щоб перемістити курсор в кінець третього слова.
|
||||
|
||||
4. Введіть 0 (нуль) щоб переміститись на початок рядка.
|
||||
|
||||
5. Повторіть кроки 2 і 3 з різними числами.
|
||||
|
||||
---> А це просто рядок зі словами, серед яких можна рухати курсором.
|
||||
|
||||
6. Переходьте до уроку 2.5.
|
||||
|
||||
|
||||
|
||||
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
Урок 2.5: БАГАТОРАЗОВЕ ВИДАЛЕННЯ
|
||||
|
||||
|
||||
** Введення числа з оператором повторює його стільки ж разів. **
|
||||
|
||||
В комбінації з оператором видалення, і переміщення з лічильника можна
|
||||
видаляти потрібне число елементів.
|
||||
Для цього введіть
|
||||
d число переміщення
|
||||
|
||||
1. Перемістіться до першого слова в ВЕРХНЬОМУ РЕГІСТРІ в рядку
|
||||
позначеному --->.
|
||||
|
||||
2. Введіть d2w щоб видалити два слова.
|
||||
|
||||
3. Повторіть кроки 1 і 2 з різними числами, щоб видалити все зайве.
|
||||
|
||||
---> цей ABC DE рядок FGHI JK LMN OP слів Q RS TUV почищений.
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
Урок 2.6: ОПЕРАЦІЇ З РЯДКАМИ
|
||||
|
||||
|
||||
** Введіть dd щоб видалити весь рядок. **
|
||||
|
||||
Через те, що видалення всього рядка є доволі частою дією розробники Vi
|
||||
вирішили що для цієї операції потрібна проста команда, як dd.
|
||||
|
||||
1. Перемістіть курсор до другого рядка в вірші нижче.
|
||||
2. Введіть dd щоб видалити рядок.
|
||||
3. Потім перемістіться до четвертого рядка.
|
||||
4. Введіть 2dd щоб видалити два рядки.
|
||||
|
||||
---> 1) Троянди червоні,
|
||||
---> 2) Багнюка весела,
|
||||
---> 3) Волошки голубі,
|
||||
---> 4) В мене є машина,
|
||||
---> 5) Годинник каже час,
|
||||
---> 6) Цукерки солодкі,
|
||||
---> 7) Дарую тобі.
|
||||
|
||||
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
Урок 2.7: ВІДКИНУТИ ЗМІНИ
|
||||
|
||||
|
||||
** Натисніть u щоб скасувати останні команди, U щоб виправити ввесь рядок. **
|
||||
|
||||
1. Перемістіть курсор до рядка нижче позначеного ---> на місце першої помилки.
|
||||
2. Натисніть x щоб видалити непотрібний символ.
|
||||
3. Потім натисніть u щоб відмінити виправлення.
|
||||
4. Цього разу виправте всі помилки в рядку використовуючи команду x .
|
||||
5. Після цього введіть U, і відкиньте всі зміни в цілому рядку.
|
||||
6. Натисніть u кілька разів, щоб відмінити U і попередні команди.
|
||||
7. Тепер натисніть CTRL-R кілька разів, щоб повторити відмінені команди
|
||||
(відмінити відміну).
|
||||
|
||||
---> Вииправте помилки наа цьоому рядку і вііідмініть їх.
|
||||
|
||||
8. Тепер можна переходити до підсумків другого уроку.
|
||||
|
||||
|
||||
|
||||
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
ПІДСУМОК УРОКУ 2
|
||||
|
||||
|
||||
1. Щоб видалити все від курсора аж до початку наступного слова введіть: dw
|
||||
2. Щоб видалити від курсора до кінця рядка: d$
|
||||
3. Щоб видалити увесь рядок: dd
|
||||
|
||||
4. Щоб повторити переміщення, поставте перед ним число повторів: 2w
|
||||
5. Формат команди зміни:
|
||||
оператор [число] переміщення
|
||||
де:
|
||||
оператор - що робити, як наприклад d для видалення
|
||||
[число] - кількість повторів
|
||||
переміщення - куди переміститись перед виконанням оператора, як
|
||||
як наприклад w (слово), $ (кінець рядка), і т.і.
|
||||
|
||||
6. Щоб переміститись до початку рядка використовуйте нуль: 0
|
||||
|
||||
7. Щоб відмінити попередню дію введіть: u (u в нижньому регістрі)
|
||||
Щоб відмінити всі зміни рядка введіть: U (U в верхньому регістрі)
|
||||
Щоб скасувати відміну натисніть: CTRL-R
|
||||
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
Урок 3.1: КОМАНДА PUT
|
||||
|
||||
|
||||
** Введіть p щоб вставити перед тим видалений текст після курсору. **
|
||||
|
||||
1. Перемістіть курсор до першої ---> лінії внизу.
|
||||
|
||||
2. Введіть dd щоб видалити рядок і зберегти його в регістрі Vim.
|
||||
|
||||
3. Перемістіть курсор до рядка в), НАД тим місцем де має бути видалений рядок.
|
||||
|
||||
4. Натисніть p щоб вставити рядок під курсором.
|
||||
|
||||
5. Повторіть кроки від 2 до 4 щоб вставити всі рядки в правильному порядку.
|
||||
|
||||
---> г) всіх до кузні іззива.
|
||||
---> б) а в коваля серце тепле,
|
||||
---> в) а він клепче та й співа,
|
||||
---> а) А в тій кузні коваль клепле,
|
||||
|
||||
|
||||
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
Урок 3.2: Команда заміни
|
||||
|
||||
|
||||
** Наберіть rx щоб замінити символ під курсором на x . **
|
||||
|
||||
1. Перемістіть курсор до першого рядка нижче, позначеного --->.
|
||||
|
||||
2. Помістіть курсор над першою помилкою.
|
||||
|
||||
3. Наберіть r а потім символ який має стояти там.
|
||||
|
||||
4. Повторіть кроки з 2 по 3 поки перший рядок не стане еквівалентним другому.
|
||||
|
||||
---> Коли ця лігія набираламт. хтось наьтснкв геправмльні унопкм!
|
||||
---> Коли ця лінія набиралась, хтось натиснув неправильні кнопки!
|
||||
|
||||
5. Зараз переходьте до уроку 3.3.
|
||||
|
||||
Примітка: Ви маєте вчитись діями, а не простим заучуванням, пам'ятаєте?
|
||||
|
||||
|
||||
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
Урок 3.3: ОПЕРАТОР ЗАМІНИ
|
||||
|
||||
|
||||
** Щоб зробити заміну до кінця слова введіть ce . **
|
||||
|
||||
1. Перемістіть курсор до першого рядка позначеного --->.
|
||||
|
||||
2. Помістіть курсор над у в слові рукра.
|
||||
|
||||
3. Введіть ce і правильне закінчення слова (ядок в цьому випадку).
|
||||
|
||||
4. Натисніть [ESC] і переходьте до наступного символа, який потрібно замінити.
|
||||
|
||||
5. Повторюйте кроки 3 і 4 поки перше речення не стане таким самим як і друге.
|
||||
|
||||
---> Цей рукра має кілька слів що потретамув заміни за допоцкщшг оператора.
|
||||
---> Цей рядок має кілька слів що потребують заміни за допомогою оператора.
|
||||
|
||||
Зауважте що ce видаляє слово, і поміщає вас в режим вставки.
|
||||
|
||||
|
||||
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
Урок 3.4: БІЛЬШЕ ЗМІН З c
|
||||
|
||||
|
||||
** Оператор заміни використовується з тими ж переміщеннями що і видалення. **
|
||||
|
||||
1. Оператор заміни працює в такий же спосіб що і видалення. Формат:
|
||||
|
||||
c [число] переміщення
|
||||
|
||||
2. Переміщення ті ж самі, такі як w (слово) і $ (кінець рядка).
|
||||
|
||||
3. Перемістіться до першого рядка позначеного --->.
|
||||
|
||||
4. Перемістіть курсор до першої помилки.
|
||||
|
||||
5. Наберіть c$ і решту рядка, щоб він став таким як другий і натисніть [ESC].
|
||||
|
||||
---> Кінець цього рядка потребує якихось дій щоб стати таким як кінець другого.
|
||||
---> Кінець цього рядка можна виправити за допомогою команди c$.
|
||||
|
||||
Примітка: Можна використовувати кнопку Backspace щоб виправляти опечатки при
|
||||
наборі.
|
||||
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
ПІДСУМОК УРОКУ 3
|
||||
|
||||
|
||||
1. Щоб вставити текст який був видалений наберіть p . Це вставляє
|
||||
видалений текст ПІСЛЯ курсора (якщо був видалений рядок, вставка
|
||||
продовжиться з рядка під курсором).
|
||||
|
||||
2. Щоб замінити символ під курсором наберіть r і необхідний символ.
|
||||
|
||||
3. Оператор заміни дозволяє робити заміну тексту від курсору, до потрібного
|
||||
переміщення. Наприклад щоб замінити все від курсора до кінця слова
|
||||
вводять ce . Щоб замінити закінчення рядка тиснуть c$ .
|
||||
|
||||
4. Формат заміни:
|
||||
|
||||
c [число] переміщення
|
||||
|
||||
Почнемо наступний урок.
|
||||
|
||||
|
||||
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
Урок 4.1: ПОЗИЦІЯ КУРСОРА І СТАТУС ФАЙЛУ
|
||||
|
||||
** Введіть CTRL-G щоб побачити вашу позицію в файлі, і його статус.
|
||||
Введіть G щоб переміститись на потрібний рядок файлу. **
|
||||
|
||||
ПРИМІТКА: Прочитайте увесь урок перед виконанням будь-яких кроків!!
|
||||
|
||||
1. Затисніть кнопку Ctrl і натисніть g . Це називається CTRL-G.
|
||||
Внизу з'явиться повідомлення з назвою файлу, і позицією в файлі.
|
||||
Запам'ятайте номер рядка для кроку 3.
|
||||
|
||||
ПРИМІТКА: Ви бачите позицію курсора в нижньому правому кутку екрану.
|
||||
Це трапляється коли включена опція 'ruler' (читайте :help 'ruler' )
|
||||
|
||||
2. Натисніть G щоб переміститись до кінця файлу.
|
||||
Наберіть gg щоб переміститись до початку файлу.
|
||||
|
||||
3. Наберіть номер рядка де ви були а потім G. Це перенесе вас до потрібного
|
||||
рядка.
|
||||
|
||||
4. Якщо ви запам'ятали три попередні кроки, то виконуйте.
|
||||
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
Урок 4.2: КОМАНДА ПОШУКУ
|
||||
|
||||
|
||||
** Введіть / (слеш) і фразу, щоб шукати її в тексті. **
|
||||
|
||||
1. В звичайному режимі введіть символ / . Зауважте що він і курсор
|
||||
з'являються в низу екрану, як і з командою : .
|
||||
|
||||
2. Тепер введіть 'очепятка' <ENTER>. Це буде словом яке ви шукатимете.
|
||||
|
||||
3. Щоб здійснити пошук цієї фрази ще раз введіть n .
|
||||
Щоб шукати в протилежному напрямку введіть N .
|
||||
|
||||
4. Щоб шукати фразу в зворотньому напрямку використайте ? замість / .
|
||||
|
||||
5. Щоб переміститись назад до того місця звідки прийшли натисніть CTRL-O.
|
||||
Повторіть щоб повернутись ще далі. (Це як кнопка назад в браузері)
|
||||
CTRL-I переміщує вперед.
|
||||
|
||||
---> "очепятка" не є способом написати опечатка; очепятка це опечатка.
|
||||
Примітка: Коли пошук досягає кінця файлу він продовжує з початку, хіба що
|
||||
опція 'wrapscan' була виключена.
|
||||
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
Урок 4.3: ПОШУК ПАРНИХ ДУЖОК
|
||||
|
||||
|
||||
** Введіть % щоб знайти парну ),], чи } . **
|
||||
|
||||
1. Помістіть курсор над будь-якою (, [, чи { в рядку нижче позначеному --->.
|
||||
|
||||
2. Тепер введіть символ % .
|
||||
|
||||
3. Курсор переміститься до відповідної дужки.
|
||||
|
||||
4. Введіть % щоб перемістити курсор до іншої парної дужки.
|
||||
|
||||
5. Спробуйте з іншими дужками, і подивіться що вийде.
|
||||
|
||||
---> Це ( тестовий рядок ( з такими [ такими ] і такими { дужками } в ньому. ))
|
||||
|
||||
|
||||
Примітка: Це корисно при відлагоджуванні програми з неправильними дужками.
|
||||
І взагалі в кожному тексті дужки мають стояти правильно!
|
||||
|
||||
|
||||
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
Урок 4.4: КОМАНДА ЗАМІНИ
|
||||
|
||||
|
||||
** Наберіть :s/старе/нове/g щоб замінити 'старе' на 'нове'. **
|
||||
|
||||
1. Перемістіть курсор до лінії нижче позначеної --->.
|
||||
|
||||
2. Введіть :s/(біп)/блять [ENTER] . Зауважте що ця команда змінює тільки перше
|
||||
входження (біп) в рядку.
|
||||
|
||||
3. Потім наберіть :s/(біп)/блять/g . Додавання g вказує що заміни
|
||||
робляться у всьому рядку глобально.
|
||||
|
||||
---> люди не лю(біп), коли в слові "лю(біп)" "(біп)" заміняють на "(бiп)".
|
||||
|
||||
4. Щоб замінити кожне входження послідовності символів між двома рядками
|
||||
наберіть :#,#s/старе/нове/g де #,# діапазон рядків в яких робиться
|
||||
заміна.
|
||||
Введіть :%s/старе/нове/g щоб змінити кожне входження у цілому файлі.
|
||||
Введіть :%s/старе/нове/gc щоб замінити, кожне входження у файлі з
|
||||
підтвердженням кожної заміни.
|
||||
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
ПІДСУМОК УРОКУ 4
|
||||
|
||||
|
||||
1. CTRL-G виводить вашу позицію в файлі і назву файлу.
|
||||
G переміщує в кінець файлу.
|
||||
число G переміщує до рядка з вказаним номером.
|
||||
gg переміщує до першого рядка.
|
||||
|
||||
2. Ввід / і послідовності символів шукає послідовність ПІСЛЯ курсора.
|
||||
Ввід ? і послідовності символів шукає послідовність ПЕРЕД курсором.
|
||||
|
||||
Після пошуку введіть n щоб знайти наступне входження в тому ж напрямку
|
||||
або N щоб шукати в протилежному напрямку.
|
||||
CTRL-O відносить вас до старішої позиції, CTRL-I до новішої позиції.
|
||||
|
||||
3. Ввід % коли курсор знаходиться над дужкою (,),[,],{, чи } переносить
|
||||
курсор до протилежної дужки.
|
||||
|
||||
4. Щоб замінити перше входження старого слова на нове :s/старе/нове
|
||||
Щоб замінити всі старі слова рядка на нові :s/старе/нове/g
|
||||
Щоб замінити фрази між двома рядками :#,#s/старе/нове/g
|
||||
Щоб замінити всі входження в файлі :%s/старе/нове/g
|
||||
Щоб щоразу підтверджувати заміну додайте 'c' :%s/старе/нове/gc
|
||||
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
Урок 5.1: ЯК ВИКОНАТИ ЗОВНІШНЮ КОМАНДУ
|
||||
|
||||
|
||||
** Введіть :! і зовнішню команду, щоб виконати ту команду. **
|
||||
|
||||
1. Введіть відому команду : щоб встановити курсор в низу екрану.
|
||||
Це дозволяє вводити команди командного рядка.
|
||||
|
||||
2. Тепер введіть ! (символ знаку оклику) . Це дозволить вам виконати
|
||||
будь-яку зовнішню команду.
|
||||
|
||||
3. Як приклад введіть :!ls [ENTER]. Це покаже список файлів каталогу, так
|
||||
так ніби ви знаходитесь в оболонці терміналу. Або використайте :!dir
|
||||
якщо ви раптом знаходитесь в Windows.
|
||||
|
||||
Примітка: Можна запускати будь-яку зовнішню команду таким способом, навіть з
|
||||
аргументами.
|
||||
|
||||
Примітка: Всі команди що починаються з : мають закінчуватись натисканням
|
||||
[ENTER]. Більше на цьому не наголошуватиметься.
|
||||
|
||||
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
Урок 5.2: ЩЕ ПРО ЗАПИС ФАЙЛІВ
|
||||
|
||||
|
||||
** Щоб зберегти змінений текст, введіть :w НАЗВА_ФАЙЛУ **
|
||||
|
||||
1. Введіть :!dir чи :!ls щоб переглянути вміст вашої директорії.
|
||||
Вам вже казали що після цього тиснуть [ENTER].
|
||||
|
||||
2. Виберіть ім'я файлу яке ще не використовується, наприклад TEST.
|
||||
(Взагалі то це не обов'язково, якщо вміст обраного файлу не
|
||||
є цінним)
|
||||
|
||||
3. Тепер введіть: :w TEST (де TEST це назва яку ви обрали.)
|
||||
|
||||
4. Це зберігає увесь файл (підручник Vim ) під ім'ям TEST.
|
||||
Щоб перевірити знову наберіть :!ls щоб побачити зміни в каталозі.
|
||||
|
||||
Примітка: Якщо ви вийдете з Vim і запустите його знову командою vim TEST,
|
||||
файл що ви відкриєте буде точною копією цього, коли ви його зберегли.
|
||||
|
||||
5. Зараз видаліть файл ввівши (Unix): :!rm TEST
|
||||
чи (MS-DOS): :!del TEST
|
||||
|
||||
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
Урок 5.3: ВИБІР ТЕКСТУ ДЛЯ ЗАПИСУ
|
||||
|
||||
|
||||
** Щоб зберегти частину файлу, наберіть v переміщення :w НАЗВА_ФАЙЛУ **
|
||||
|
||||
1. Перемістіть курсор до цього рядка.
|
||||
|
||||
2. Натисніть v і перемістіть курсор на п'ять пунктів нижче. Зауважте, що
|
||||
текст виділяється.
|
||||
|
||||
3. Натисніть символ : . Внизу екрану з'являються символи :'<,'> .
|
||||
|
||||
4. Введіть w TEST , де TEST назва файлу що ще не використовується.
|
||||
Переконайтесь що ви бачите :'<,'>w TEST перед тим як натиснути [ENTER].
|
||||
|
||||
5. Vim запише вибрані рядки в файл TEST. Використайте :!dir чи !ls
|
||||
щоб побачити це. Поки що не видаляйте його! Ми використаємо TEST в
|
||||
наступному уроці.
|
||||
|
||||
Зауваження: Натискання v починає режим візуального виділення. Ви можете
|
||||
переміщувати курсор щоб змінити розмір вибраної частини.
|
||||
Потім можна використати оператор щоб зробити щось з текстом.
|
||||
Наприклад d видалить текст.
|
||||
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
Урок 5.4: ОТРИМАННЯ І ЗЛИТТЯ ФАЙЛІВ
|
||||
|
||||
|
||||
** Щоб вставити вміст файлу введіть :r НАЗВА_ФАЙЛУ **
|
||||
|
||||
1. Помістіть курсор десь над цим рядком.
|
||||
|
||||
Зауваження: Після виконання кроку 2 ви побачите текст з уроку 5.3. Тоді
|
||||
перемістіться вниз, щоб побачити вміст цього уроку знову.
|
||||
|
||||
2. Тоді отримайте вміст вашого файлу TEST використавши команду :r TEST ,
|
||||
де TEST назва файлу що ви використали.
|
||||
Файл що ви отримуєте поміщується під рядком курсора.
|
||||
|
||||
3. Щоб перевірити що файл вставлено, прокрутіть текст назад, і переконаєтесь
|
||||
що тепер є дві копії урок 5.3, the original and the file version.
|
||||
|
||||
Примітка: Також ви можете вставляти вивід зовнішньої програми. Наприклад
|
||||
:r !ls читає вивід команди ls і вставляє його під курсором.
|
||||
|
||||
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
Підсумок 5 уроку
|
||||
|
||||
|
||||
1. :!команда виконує зовнішню команду.
|
||||
|
||||
2. :w НАЗВА_ФАЙЛУ записує поточний файл на диск під назвою НАЗВА_ФАЙЛУ.
|
||||
|
||||
3. v переміщення :w НАЗВА_ФАЙЛУ зберігає візуально виділену частину тексту
|
||||
в файл НАЗВА_ФАЙЛУ.
|
||||
|
||||
4. :r НАЗВА_ФАЙЛУ отримує з диску файл НАЗВА_ФАЙЛУ і вставляє його під
|
||||
курсором.
|
||||
|
||||
5. :r !ls читає вивід команди ls і вставляє її під поточною позицією курсора
|
||||
|
||||
|
||||
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
Урок 6.1: КОМАНДА ВСТАВКИ
|
||||
|
||||
|
||||
** Введіть o щоб вставити новий рядок під курсором. **
|
||||
|
||||
1. Перемістіть курсор на рядок нижче, позначений --->.
|
||||
|
||||
2. Натисніть o щоб вставити новий рядок ПІД курсором та перейти в
|
||||
режим вставки.
|
||||
|
||||
3. Тепер введіть текст і натисніть [ESC] щоб вийти з режиму вставки.
|
||||
|
||||
---> Після натискання o курсор ставиться на наступний рядок в режимі вставки.
|
||||
|
||||
4. Щоб вставити рядок НАД ABOVE курсором пишуть O в верхньому регістрі,
|
||||
замість o. Спробуйте на рядку нижче.
|
||||
|
||||
---> Щоб вставити рядок над цим введіть O .
|
||||
|
||||
|
||||
|
||||
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
Урок 6.2: КОМАНДА ДОПИСУВАННЯ
|
||||
|
||||
|
||||
** Натисніть a щоб вставити текст після курсору. **
|
||||
|
||||
1. Перемістіть курсор до початку рядка внизу позначеного --->.
|
||||
|
||||
2. Тисніть e поки курсор не буде в кінці ря .
|
||||
|
||||
3. Натисніть a (маленьке) щоб додати текст ПІСЛЯ курсору.
|
||||
|
||||
4. Допишіть слова як рядок внизу. Натисніть [ESC] щоб вийти з режиму
|
||||
вставки.
|
||||
|
||||
5. Використайте e щоб переміститись до наступного неповного слова та
|
||||
to move to the next incomplete word and repeat steps 3 and 4.
|
||||
|
||||
---> Цей ря дозволить вам попрактикува в дописува тексту до рядка.
|
||||
---> Цей рядок дозволить вам попрактикуватись в дописуванні тексту до рядка.
|
||||
|
||||
Примітка: a, i і A переходять в один і той же режим вставки, єдиною різницею
|
||||
є тільки те, де вставляються символи.
|
||||
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
Урок 6.3: ІНШИЙ СПОСІБ ЗАМІНИ
|
||||
|
||||
|
||||
** Введіть велику R щоб замінити більш ніж один символ. **
|
||||
|
||||
1. Перемістіть курсор до першого рядка внизу позначеного --->.
|
||||
Перемістіть курсор до першого xxx .
|
||||
|
||||
2. Тепер натисніть R і введіть номер під ним з другого рядка, так що він
|
||||
замінює xxx .
|
||||
|
||||
3. Натисніть [ESC] щоб покинути режим заміни. Зауважте, що решта рядка
|
||||
залишається незмінною.
|
||||
|
||||
4. Повторіть кроки від 1 до 3 щоб замінити всі xxx на числа з другого рядка.
|
||||
|
||||
---> Додавання 123 до xxx дає xxx.
|
||||
---> Додавання 123 до 456 дає 579.
|
||||
|
||||
Зауваження: Режим заміни подібний до режиму вставки, тільки кожен введений
|
||||
символ видаляє символ який стояв на його місці.
|
||||
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
Урок 6.4: КОПІЮВАННЯ І ВСТАВКА
|
||||
|
||||
|
||||
** Використайте оператор y щоб копіювати текст і p щоб його вставити **
|
||||
|
||||
1. Перейдіть до рядка нижче позначеного ---> і покладіть курсор після "а)".
|
||||
|
||||
2. Перейдіть в візуальний режим за допомогою клавіші v і перемістіть курсор
|
||||
якраз перед словом "один".
|
||||
|
||||
3. Введіть y щоб копіювати (yank) виділений текст.
|
||||
|
||||
4. Перемістіть курсор до кінця наступного рядка: j$
|
||||
|
||||
5. Натисніть p щоб вставити (put) текст. Тоді введіть : два [ESC] .
|
||||
|
||||
6. так само додайте третій рядочок.
|
||||
|
||||
---> а) це рядок номер один
|
||||
б)
|
||||
|
||||
Зауваження: також можна використовувати y як оператор;
|
||||
yw копіює одне слово.
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
Урок 6.5: ВСТАНОВЛЕННЯ ОПЦІЙ
|
||||
|
||||
|
||||
** Встановити опцію так що пошук чи заміна буде ігнорувати регістр **
|
||||
|
||||
1. Знайдіть слово 'ігнорувати' ввівши : /ігнорувати
|
||||
Повторіть кілька разів натискаючи n .
|
||||
|
||||
2. Встановіть опцію ігнорування регістру 'ic' (Ignore case) ввівши: :set ic
|
||||
|
||||
3. Тепер пошукайте 'ігнорувати' знову ввівши n
|
||||
Зауважте що Ігнорувати та ІГНОРУВАТИ тепер також знаходяться.
|
||||
|
||||
4. Ввімкніть 'hlsearch' (підсвітку пошуку) і 'incsearch' (інтерактивність)
|
||||
командою :set hls is .
|
||||
|
||||
5. Тепер пошукайте щось знову і зауважте зміни: /ігнорувати [ENTER]
|
||||
|
||||
6. Щоб вимкнути ігнорування регістру напишіть: :set noic
|
||||
|
||||
Примітка: Щоб вимкнути підсвітку співпадінь введіть: :nohlsearch
|
||||
Примітка: Якщо ви хочете не брати до уваги регістр тільки під час одного пошуку
|
||||
використайте ключ \c. Наприклад: /ігнорувати\c [ENTER]
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
ПІДСУМОК УРОКУ 6
|
||||
|
||||
1. Введіть о щоб додати рядок ПІД курсором і почати режим вставки.
|
||||
Введіть O щоб додати рядок НАД курсором.
|
||||
|
||||
2. Введіть a щоб вставити текст ПІСЛЯ курсора.
|
||||
Введіть A щоб додати текст до рядка.
|
||||
|
||||
3. Переміщення e переміщує нас до кінця слова.
|
||||
|
||||
4. Оператор y копіює текст, p вставляє його.
|
||||
|
||||
5. Введення R переносить нас в режим заміни до натискання [ESC].
|
||||
|
||||
6. Набір ":set xxx" встановлює опцію "xxx". Деякі опції:
|
||||
'ic' 'ignorecase' ігнорувати верхній/нижній регістр при пошуку
|
||||
'is' 'incsearch' показувати співпадіння пошуку під час введення
|
||||
фрази
|
||||
'hls' 'hlsearch' пісвічувати всі співпадіння
|
||||
Можна одночасно використовувати і коротку і довгу форму запису опції.
|
||||
|
||||
7. Використайте префікс "no" щоб вимкнути опцію: :set noic
|
||||
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
Урок 7.1: ОТРИМАННЯ ДОПОМОГИ
|
||||
|
||||
|
||||
** Використання вбудованої довідкової системи **
|
||||
|
||||
Vim має всеосяжну систему довідки. Щоб ознайомитись з нею спробуйте один з
|
||||
таких способів:
|
||||
- натисніть кнопку [HELP] (якщо така є)
|
||||
- натисніть [F1]
|
||||
- наберіть :help
|
||||
|
||||
Прочитайте текст в вікні допомоги, щоб вияснити як вона працює.
|
||||
Натисніть CTRL-W двічі щоб змінити вікно
|
||||
Наберіть :q щоб закрити вікно довідки.
|
||||
|
||||
Можна знайти довідку майже на будь-яку тему додаючи аргумент після команди
|
||||
":help" . Спробуйте одну з наступних (не забувайте натискати [ENTER]):
|
||||
|
||||
:help w
|
||||
:help c_CTRL-D
|
||||
:help insert-index
|
||||
:help user-manual
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
Урок 7.2: СТВОРЕННЯ СКРИПТА АВТОЗАПУСКУ
|
||||
|
||||
|
||||
** Ввімкнення додаткових функцій Vim **
|
||||
|
||||
Vim має набагато більше функцій ніж Vi, але більшість з них відключені за
|
||||
замовчуванням. Щоб почати використання додаткових функцій потрібно створити
|
||||
файл "vimrc".
|
||||
|
||||
1. Почніть редагування файлу "vimrc" . Це залежить від вашої системи:
|
||||
:e ~/.vimrc для Unix
|
||||
:e $VIM/_vimrc для MS-Windows
|
||||
|
||||
2. Тепер прочитайте приклад вмісту "vimrc" :
|
||||
:r $VIMRUNTIME/vimrc_example.vim
|
||||
|
||||
3. Збережіть файл:
|
||||
:w
|
||||
|
||||
Наступного разу коли ви запустите Vim він буде використовувати підсвітку
|
||||
синтаксису. Можна додати всі ваші улюблені налаштування в цей файл. Для більш
|
||||
детальної інформації введіть :help vimrc-intro
|
||||
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
Урок 7.3: АВТОДОПОВНЕННЯ
|
||||
|
||||
|
||||
** Автодоповнення за допомогою CTRL-D і [TAB] **
|
||||
|
||||
1. Переконайтесь що в Vim не включена зворотня сумісність: :set nocp
|
||||
|
||||
2. Подивіться що за файли існують в каталозі: :!ls чи :!dir
|
||||
|
||||
3. Введіть початок команди: :e
|
||||
|
||||
4. Натисніть CTRL-D і Vim покаже список команд що починаються з "e".
|
||||
|
||||
5. Натисніть [TAB] і Vim доповнить команду до ":edit".
|
||||
|
||||
6. Тепер додайте пропуск і початок існуючого імені файлу: :edit FIL
|
||||
|
||||
7. Натисніть [TAB]. Vim доповнить ім'я (якщо воно унікальне).
|
||||
|
||||
Зауваження: Доповнення працює для багатьох команд. Просто натискайте CTRL-D і
|
||||
[TAB]. Це особливо корисно для команди :help .
|
||||
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
ПІДСУМОК УРОКУ 7
|
||||
|
||||
|
||||
1. Введіть :help або натисніть [F1] щоб відкрити вікно довідки.
|
||||
|
||||
2. Введіть :help тема щоб знайти довідку про тему .
|
||||
|
||||
3. Введіть CTRL-W CTRL-W щоб змінити вікно.
|
||||
|
||||
4. Наберіть :q щоб закрити вікно
|
||||
|
||||
5. Створіть скрипт vimrc щоб змінювати ваші налаштування при запуску.
|
||||
|
||||
6. При наборі команди що починається з двокрапки : натисніть CTRL-D
|
||||
щоб побачити можливі доповнення. Натисніть [TAB] щоб побачити одне з
|
||||
доповнень.
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
Це завершує уроки Vim . Вони були націлені щоб дати вам короткий вступ в
|
||||
редактор Vim, достатній для того щоб використовувати редактор комфортно.
|
||||
Ці уроки зовсім далеко від повних, бо Vim має набагато більше команд. Можна
|
||||
прочитати інструкцію користувача : ":help user-manual".
|
||||
|
||||
Для подальшого читання і вивчення рекомендується така книжка:
|
||||
Vim - Vi Improved - by Steve Oualline
|
||||
Publisher: New Riders
|
||||
Особливо корисна для початківців.
|
||||
Там багато прикладів і ілюстрацій.
|
||||
Дивіться http://iccf-holland.org/click5.html
|
||||
|
||||
Ці уроки були написані Майклом С. Пірсом та Робертом Уаром.
|
||||
|
||||
Модифіковано для Vim Бремом Муленаром.
|
||||
|
||||
|
||||
Переклад на українську Буник Т.
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
Reference in New Issue
Block a user