r758 - in /trunk/packages/vim: debian/README debian/changelog
upstream/patches/7.0.077 upstream/patches/7.0.078 upstream/patches/7.0.079
upstream/patches/7.0.080 upstream/patches/7.0.081 upstream/patches/7.0.082
upstream/patches/7.0.083
zack at users.alioth.debian.org
zack at users.alioth.debian.org
Sun Sep 3 20:52:26 UTC 2006
Author: zack
Date: Sun Sep 3 20:52:25 2006
New Revision: 758
URL: http://svn.debian.org/wsvn/pkg-vim/?sc=1&rev=758
Log:
patches up to 83
Added:
trunk/packages/vim/upstream/patches/7.0.077
trunk/packages/vim/upstream/patches/7.0.078
trunk/packages/vim/upstream/patches/7.0.079
trunk/packages/vim/upstream/patches/7.0.080
trunk/packages/vim/upstream/patches/7.0.081
trunk/packages/vim/upstream/patches/7.0.082
trunk/packages/vim/upstream/patches/7.0.083
Modified:
trunk/packages/vim/debian/README
trunk/packages/vim/debian/changelog
Modified: trunk/packages/vim/debian/README
URL: http://svn.debian.org/wsvn/pkg-vim/trunk/packages/vim/debian/README?rev=758&op=diff
==============================================================================
--- trunk/packages/vim/debian/README (original)
+++ trunk/packages/vim/debian/README Sun Sep 3 20:52:25 2006
@@ -101,3 +101,10 @@
6819 7.0.074 (extra) Win32: tooltips can be in the wrong encoding
1495 7.0.075 winsaveview() could store wrong desired cursor column
2635 7.0.076 (after 7.0.010) could not get spell files from non-ftp server
+ 2799 7.0.077 crash when unletting a v: variable
+ 1968 7.0.078 there are two error messages called E46
+ 51669 7.0.079 vimtutor doesn't work for Russian when 'encoding' is utf-8
+ 1759 7.0.080 compile error when CFLAGS contains a backslash
+ 2043 7.0.081 command line completion doesn't work for ":!/path"
+ 2850 7.0.082 crash when using List or Dict argument and waiting for input
+ 3001 7.0.083 mouse doesn't work for all entries with inputlist()
Modified: trunk/packages/vim/debian/changelog
URL: http://svn.debian.org/wsvn/pkg-vim/trunk/packages/vim/debian/changelog?rev=758&op=diff
==============================================================================
--- trunk/packages/vim/debian/changelog (original)
+++ trunk/packages/vim/debian/changelog Sun Sep 3 20:52:25 2006
@@ -1,7 +1,7 @@
vim (1:7.0-076+1) UNRELEASED; urgency=medium
[ Debian Vim Maintainers ]
- * New upstream patches (036 - 076), see README.gz for details.
+ * New upstream patches (036 - 083), see README.gz for details.
* Urgency medium because of the fix to vim-lesstif's crash bug.
[ James Vega ]
Added: trunk/packages/vim/upstream/patches/7.0.077
URL: http://svn.debian.org/wsvn/pkg-vim/trunk/packages/vim/upstream/patches/7.0.077?rev=758&op=file
==============================================================================
--- trunk/packages/vim/upstream/patches/7.0.077 (added)
+++ trunk/packages/vim/upstream/patches/7.0.077 Sun Sep 3 20:52:25 2006
@@ -1,0 +1,98 @@
+To: vim-dev at vim.org
+Subject: Patch 7.0.077
+Fcc: outbox
+From: Bram Moolenaar <Bram at moolenaar.net>
+Mime-Version: 1.0
+Content-Type: text/plain; charset=ISO-8859-1
+Content-Transfer-Encoding: 8bit
+------------
+
+Patch 7.0.077
+Problem: ":unlet v:this_session" causes a crash. (Marius Roets)
+Solution: When trying to unlet a fixed variable give an error message.
+Files: src/eval.c
+
+
+*** ../vim-7.0.076/src/eval.c Tue Aug 29 21:59:25 2006
+--- src/eval.c Sat Sep 2 13:43:20 2006
+***************
+*** 701,706 ****
+--- 701,707 ----
+ static void list_one_var_a __ARGS((char_u *prefix, char_u *name, int type, char_u *string));
+ static void set_var __ARGS((char_u *name, typval_T *varp, int copy));
+ static int var_check_ro __ARGS((int flags, char_u *name));
++ static int var_check_fixed __ARGS((int flags, char_u *name));
+ static int tv_check_lock __ARGS((int lock, char_u *name));
+ static void copy_tv __ARGS((typval_T *from, typval_T *to));
+ static int item_copy __ARGS((typval_T *from, typval_T *to, int deep, int copyID));
+***************
+*** 3364,3369 ****
+--- 3365,3372 ----
+ hi = hash_find(ht, varname);
+ if (!HASHITEM_EMPTY(hi))
+ {
++ if (var_check_fixed(HI2DI(hi)->di_flags, name))
++ return FAIL;
+ if (var_check_ro(HI2DI(hi)->di_flags, name))
+ return FAIL;
+ delete_var(ht, hi);
+***************
+*** 17818,17824 ****
+ }
+
+ /*
+! * Return TRUE if di_flags "flags" indicate read-only variable "name".
+ * Also give an error message.
+ */
+ static int
+--- 17821,17827 ----
+ }
+
+ /*
+! * Return TRUE if di_flags "flags" indicates variable "name" is read-only.
+ * Also give an error message.
+ */
+ static int
+***************
+*** 17834,17839 ****
+--- 17837,17859 ----
+ if ((flags & DI_FLAGS_RO_SBX) && sandbox)
+ {
+ EMSG2(_(e_readonlysbx), name);
++ return TRUE;
++ }
++ return FALSE;
++ }
++
++ /*
++ * Return TRUE if di_flags "flags" indicates variable "name" is fixed.
++ * Also give an error message.
++ */
++ static int
++ var_check_fixed(flags, name)
++ int flags;
++ char_u *name;
++ {
++ if (flags & DI_FLAGS_FIX)
++ {
++ EMSG2(_("E795: Cannot delete variable %s"), name);
+ return TRUE;
+ }
+ return FALSE;
+*** ../vim-7.0.076/src/version.c Tue Aug 29 22:35:11 2006
+--- src/version.c Sat Sep 2 13:39:36 2006
+***************
+*** 668,669 ****
+--- 668,671 ----
+ { /* Add new patch number below this line */
++ /**/
++ 77,
+ /**/
+
+--
+ ### Hiroshima 45, Chernobyl 86, Windows 95 ###
+
+ /// Bram Moolenaar -- Bram at Moolenaar.net -- http://www.Moolenaar.net \\\
+/// sponsor Vim, vote for features -- http://www.Vim.org/sponsor/ \\\
+\\\ download, build and distribute -- http://www.A-A-P.org ///
+ \\\ help me help AIDS victims -- http://ICCF-Holland.org ///
Added: trunk/packages/vim/upstream/patches/7.0.078
URL: http://svn.debian.org/wsvn/pkg-vim/trunk/packages/vim/upstream/patches/7.0.078?rev=758&op=file
==============================================================================
--- trunk/packages/vim/upstream/patches/7.0.078 (added)
+++ trunk/packages/vim/upstream/patches/7.0.078 Sun Sep 3 20:52:25 2006
@@ -1,0 +1,52 @@
+To: vim-dev at vim.org
+Subject: Patch 7.0.078
+Fcc: outbox
+From: Bram Moolenaar <Bram at moolenaar.net>
+Mime-Version: 1.0
+Content-Type: text/plain; charset=ISO-8859-1
+Content-Transfer-Encoding: 8bit
+------------
+
+Patch 7.0.078
+Problem: There are two error messages E46.
+Solution: Change the number for the sandbox message to E794.
+Files: src/globals.h
+
+
+*** ../vim-7.0.077/src/globals.h Sun Apr 30 20:32:38 2006
+--- src/globals.h Sat Sep 2 13:12:55 2006
+***************
+*** 1441,1447 ****
+ EXTERN char_u e_readonly[] INIT(= N_("E45: 'readonly' option is set (add ! to override)"));
+ #ifdef FEAT_EVAL
+ EXTERN char_u e_readonlyvar[] INIT(= N_("E46: Cannot change read-only variable \"%s\""));
+! EXTERN char_u e_readonlysbx[] INIT(= N_("E46: Cannot set variable in the sandbox: \"%s\""));
+ #endif
+ #ifdef FEAT_QUICKFIX
+ EXTERN char_u e_readerrf[] INIT(= N_("E47: Error while reading errorfile"));
+--- 1441,1447 ----
+ EXTERN char_u e_readonly[] INIT(= N_("E45: 'readonly' option is set (add ! to override)"));
+ #ifdef FEAT_EVAL
+ EXTERN char_u e_readonlyvar[] INIT(= N_("E46: Cannot change read-only variable \"%s\""));
+! EXTERN char_u e_readonlysbx[] INIT(= N_("E794: Cannot set variable in the sandbox: \"%s\""));
+ #endif
+ #ifdef FEAT_QUICKFIX
+ EXTERN char_u e_readerrf[] INIT(= N_("E47: Error while reading errorfile"));
+*** ../vim-7.0.077/src/version.c Sat Sep 2 13:45:01 2006
+--- src/version.c Sat Sep 2 14:08:12 2006
+***************
+*** 668,669 ****
+--- 668,671 ----
+ { /* Add new patch number below this line */
++ /**/
++ 78,
+ /**/
+
+--
+"Intelligence has much less practical application than you'd think."
+ -- Scott Adams, Dilbert.
+
+ /// Bram Moolenaar -- Bram at Moolenaar.net -- http://www.Moolenaar.net \\\
+/// sponsor Vim, vote for features -- http://www.Vim.org/sponsor/ \\\
+\\\ download, build and distribute -- http://www.A-A-P.org ///
+ \\\ help me help AIDS victims -- http://ICCF-Holland.org ///
Added: trunk/packages/vim/upstream/patches/7.0.079
URL: http://svn.debian.org/wsvn/pkg-vim/trunk/packages/vim/upstream/patches/7.0.079?rev=758&op=file
==============================================================================
--- trunk/packages/vim/upstream/patches/7.0.079 (added)
+++ trunk/packages/vim/upstream/patches/7.0.079 Sun Sep 3 20:52:25 2006
@@ -1,0 +1,957 @@
+To: vim-dev at vim.org
+Subject: Patch 7.0.079
+Fcc: outbox
+From: Bram Moolenaar <Bram at moolenaar.net>
+Mime-Version: 1.0
+Content-Type: text/plain; charset=ISO-8859-1
+Content-Transfer-Encoding: 8bit
+------------
+
+Patch 7.0.079
+Problem: Russian tutor doesn't work when 'encoding' is "utf-8".
+Solution: Use tutor.ru.utf-8 as the master, and generate the other encodings
+ from it. Select the right tutor depending on 'encoding'. (Alexey
+ Froloff)
+Files: runtime/tutor/Makefile, runtime/tutor/tutor.vim,
+ runtime/tutor/tutor.ru.utf-8
+
+
+*** ../vim-7.0.079/runtime/tutor/Makefile Sun Jun 13 20:35:48 2004
+--- runtime/tutor/Makefile Fri Sep 1 20:38:20 2006
+***************
+*** 2,9 ****
+ #
+ # The Japanese tutor exists in three encodings. Use the UTF-8 version as the
+ # original and create the others with conversion.
+
+! all: tutor.ja.sjis tutor.ja.euc tutor.ko.euc
+
+ tutor.ja.sjis: tutor.ja.utf-8
+ nkf -WXs tutor.ja.utf-8 > tutor.ja.sjis
+--- 2,13 ----
+ #
+ # The Japanese tutor exists in three encodings. Use the UTF-8 version as the
+ # original and create the others with conversion.
++ #
++ # Similarly for Russian and Korean
+
+! all: tutor.ja.sjis tutor.ja.euc \
+! tutor.ko.euc \
+! tutor.ru tutor.ru.cp1251
+
+ tutor.ja.sjis: tutor.ja.utf-8
+ nkf -WXs tutor.ja.utf-8 > tutor.ja.sjis
+***************
+*** 13,15 ****
+--- 17,25 ----
+
+ tutor.ko.euc: tutor.ko.utf-8
+ iconv -f UTF-8 -t EUC-KR tutor.ko.utf-8 > tutor.ko.euc
++
++ tutor.ru: tutor.ru.utf-8
++ iconv -f UTF-8 -t KOI8-R tutor.ru.utf-8 > tutor.ru
++
++ tutor.ru.cp1251: tutor.ru.utf-8
++ iconv -f UTF-8 -t cp1251 tutor.ru.utf-8 > tutor.ru.cp1251
+*** ../vim-7.0.079/runtime/tutor/tutor.vim Sat Mar 18 22:36:12 2006
+--- runtime/tutor/tutor.vim Sat Sep 2 12:06:47 2006
+***************
+*** 1,6 ****
+ " Vim tutor support file
+ " Author: Eduardo F. Amatria <eferna1 at platea.pntic.mec.es>
+! " Last Change: 2006 Mar 18
+
+ " This small source file is used for detecting if a translation of the
+ " tutor file exist, i.e., a tutor.xx file, where xx is the language.
+--- 1,6 ----
+ " Vim tutor support file
+ " Author: Eduardo F. Amatria <eferna1 at platea.pntic.mec.es>
+! " Last Change: 2006 Sep 02
+
+ " This small source file is used for detecting if a translation of the
+ " tutor file exist, i.e., a tutor.xx file, where xx is the language.
+***************
+*** 103,113 ****
+ let s:ext = ".sk.cp1250"
+ endif
+
+! " The Russian tutor is available in two encodings, guess which one to use.
+! " This segment is from the above lines and modified by
+! " Alexey I. Froloff <raorn at altlinux.org> for Russian vim tutorial
+! if s:ext =~? '\.ru' && &enc =~ 1251
+! let s:ext = ".ru.cp1251"
+ endif
+
+ " Somehow ".ge" (Germany) is sometimes used for ".de" (Deutsch).
+--- 103,117 ----
+ let s:ext = ".sk.cp1250"
+ endif
+
+! " The Russian tutor is available in three encodings, guess which one to use.
+! if s:ext =~? '\.ru'
+! if &enc == 'utf-8'
+! let s:ext = '.ru.utf-8'
+! elseif &enc =~ '1251'
+! let s:ext = '.ru.cp1251'
+! elseif &enc =~ 'koi8'
+! let s:ext = '.ru'
+! endif
+ endif
+
+ " Somehow ".ge" (Germany) is sometimes used for ".de" (Deutsch).
+*** ../vim-7.0.079/runtime/tutor/tutor.ru.utf-8 Sat Sep 2 14:53:18 2006
+--- runtime/tutor/tutor.ru.utf-8 Fri Sep 1 20:33:59 2006
+***************
+*** 0 ****
+--- 1,834 ----
++ ===============================================================================
++ = Ро б Ñ Ð¾ п о ж а л о в а Ñ Ñ Ð² Ñ Ñ Ðµ б н и к VIM - ÐеÑÑÐ¸Ñ 1.5 =
++ ===============================================================================
++ Vim --- ÑÑо оÑÐµÐ½Ñ Ð¼Ð¾ÑнÑй ÑедакÑоÑ, имеÑÑий множеÑÑво команд, ÑлиÑком
++ много Ð´Ð»Ñ Ñого, ÑÑÐ¾Ð±Ñ Ð¸Ñ
вÑе можно бÑло опиÑаÑÑ Ð² Ñаком ÑÑебнике, как
++ ÑÑоÑ. ÐÑÐ¾Ñ ÑÑебник пÑизван обÑÑÑниÑÑ Ð´Ð¾ÑÑаÑоÑное ÑиÑло команд Ð´Ð»Ñ Ñого,
++ ÑÑÐ¾Ð±Ñ ÐÑ Ð¼Ð¾Ð³Ð»Ð¸ Ñ Ð»ÐµÐ³ÐºÐ¾ÑÑÑÑ Ð¸ÑполÑзоваÑÑ Vim в каÑеÑÑве ÑедакÑоÑа обÑего
++ назнаÑениÑ.
++
++ Ðам поÑÑебÑеÑÑÑ Ð¿ÑиблизиÑелÑно 25-30 минÑÑ Ð½Ð° оÑвоение данного ÑÑебника в
++ завиÑимоÑÑи Ð¾Ñ Ñого, ÑколÑко вÑемени ÐÑ Ð¿Ð¾ÑÑаÑиÑе на ÑкÑпеÑименÑÑ.
++
++ ÐÐ¾Ð¼Ð°Ð½Ð´Ñ Ð² ÑÑокаÑ
бÑдÑÑ Ð¼Ð¾Ð´Ð¸ÑиÑиÑоваÑÑ ÑекÑÑ. СоздайÑе ÐºÐ¾Ð¿Ð¸Ñ ÑÑого Ñайла,
++ ÑÑÐ¾Ð±Ñ Ð¿Ð¾Ð¿ÑакÑиковаÑÑÑÑ Ð½Ð° ней (еÑли ÐÑ Ð·Ð°Ð¿ÑÑÑили "vimtutor", Ñо ÑÑо Ñже
++ копиÑ).
++
++ Ðажно помниÑÑ, ÑÑо ÑÑÐ¾Ñ ÑÑебник пÑедназнаÑен Ð´Ð»Ñ Ð¾Ð±ÑÑÐµÐ½Ð¸Ñ Ð² пÑоÑеÑÑе
++ иÑполÑзованиÑ. ÐÑо ознаÑаеÑ, ÑÑо ÐÑ Ð´Ð¾Ð»Ð¶Ð½Ñ Ð·Ð°Ð¿ÑÑкаÑÑ ÐºÐ¾Ð¼Ð°Ð½Ð´Ñ Ð´Ð»Ñ Ñого,
++ ÑÑÐ¾Ð±Ñ ÐºÐ°Ðº ÑледÑÐµÑ Ð¸Ñ
изÑÑиÑÑ. ÐÑли ÐÑ Ð¿ÑоÑÑо пÑоÑиÑаеÑе ÑекÑÑ, Ñо
++ забÑдеÑе командÑ!
++
++ ТепеÑÑ ÑбедиÑеÑÑ Ð² Ñом, ÑÑо клавиÑа CapsLock не вклÑÑена и нажмиÑе
++ клавиÑÑ j неÑколÑко Ñаз, Ñак, ÑÑÐ¾Ð±Ñ Ð£Ñок 1.1 полноÑÑÑÑ Ð¿Ð¾Ð¼ÐµÑÑилÑÑ Ð½Ð°
++ ÑкÑане.
++ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
++ УÑок 1.1: ÐÐÐ ÐÐÐЩÐÐÐÐ ÐУРСÐÐ Ð
++
++ ** ÐÐ»Ñ Ð¿ÐµÑемеÑÐµÐ½Ð¸Ñ ÐºÑÑÑоÑа нажмиÑе клавиÑи h,j,k,l Ñак, как показано ниже. **
++ ^
++ k СовеÑÑ: ÐлавиÑа h наÑ
одиÑÑÑ Ñлева и пеÑемеÑÐ°ÐµÑ Ð²Ð»ÐµÐ²Ð¾.
++ < h l > ÐлавиÑа l наÑ
одиÑÑÑ ÑпÑава и пеÑемеÑÐ°ÐµÑ Ð²Ð¿Ñаво.
++ j ÐлавиÑа j поÑ
ожа на ÑÑÑÐµÐ»ÐºÑ `вниз'.
++ v
++ 1. ÐодвигайÑе кÑÑÑÐ¾Ñ Ð¿Ð¾ ÑкÑанÑ, пока не поÑÑвÑÑвÑеÑе ÑÐµÐ±Ñ ÑвеÑенно.
++
++ 2. ÐадавиÑе клавиÑÑ `вниз' (j) пока она не наÑÐ½ÐµÑ Ð¿Ð¾Ð²ÑоÑÑÑÑÑÑ.
++ ---> ТепеÑÑ ÐÑ Ð·Ð½Ð°ÐµÑе, как пеÑейÑи к ÑледÑÑÑÐµÐ¼Ñ ÑÑокÑ.
++
++ 3. ÐÑполÑзÑÑ ÐºÐ»Ð°Ð²Ð¸ÑÑ `вниз' пеÑейдиÑе к УÑÐ¾ÐºÑ 1.2.
++
++ ÐамеÑание: ÐÑли Ð²Ñ Ð¿Ð¾ÐºÐ° не ÑвеÑÐµÐ½Ñ Ð² Ñом, ÑÑо набиÑаеÑе, нажмиÑе <ESC> длÑ
++ пеÑеÑ
ода в обÑÑнÑй Ñежим (Normal mode). ÐоÑле ÑÑого пеÑенабеÑиÑе
++ ÑÑебÑемÑÑ ÐºÐ¾Ð¼Ð°Ð½Ð´Ñ.
++
++ ÐамеÑание: ÐбÑÑнÑе клавиÑи ÑпÑÐ°Ð²Ð»ÐµÐ½Ð¸Ñ ÐºÑÑÑоÑом (ÑÑÑелки) Ñакже должнÑ
++ ÑабоÑаÑÑ. Ðднако, клавиÑи hjkl позволÑÑ Ðам пеÑемеÑаÑÑÑÑ
++ знаÑиÑелÑно бÑÑÑÑее, как ÑолÑко ÐÑ Ð½Ð°ÑÑиÑеÑÑ Ð¸Ð¼Ð¸ полÑзоваÑÑÑÑ.
++ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
++ УÑок 1.2: ÐÐÐУСРРÐÐÐÐРШÐÐÐÐ Ð ÐÐÐТЫ С VIM
++
++ !! ÐÐÐÐÐÐÐÐ! ÐÑежде, Ñем вÑполнÑÑÑ Ð»Ñбой из опиÑаннÑÑ
ниже Ñагов, пÑоÑÑиÑе
++ ÑÑок Ñеликом !!
++
++ 1. ÐажмиÑе клавиÑÑ <ESC> (Ð´Ð»Ñ Ñого, ÑÑÐ¾Ð±Ñ ÑдоÑÑовеÑиÑÑÑÑ, ÑÑо ÐÑ Ð² обÑÑном
++ Ñежиме (Normal mode)).
++
++ 2. ÐабеÑиÑе: :q! <ENTER>.
++
++ ---> ÐÑо Ð¿Ð¾Ð·Ð²Ð¾Ð»Ð¸Ñ Ðам вÑйÑи из ÑедакÑоÑа ÐÐРСÐХРÐÐÐÐÐЯ лÑбÑÑ
ÑделаннÑÑ
++ изменений. ÐÑли ÐÑ Ñ
оÑиÑе ÑоÑ
ÑаниÑÑ Ð¸Ð·Ð¼ÐµÐ½ÐµÐ½Ð¸Ñ Ð¸ вÑйÑи:
++ :wq <ENTER>
++
++ 3. Ðогда ÐÑ ÑвидиÑе пÑиглаÑение командной оболоÑки, набеÑиÑе командÑ,
++ коÑоÑÐ°Ñ Ð¿Ñивела ÐÐ°Ñ Ð² ÑÑÐ¾Ñ ÑÑебник. ÐÑо Ð¼Ð¾Ð¶ÐµÑ Ð±ÑÑÑ
++ vimtutor ru <ENTER>
++ ÐбÑÑно можно иÑполÑзоваÑÑ: vim tutor.ru <ENTER>
++
++ ---> 'vim' позволÑÐµÑ Ð·Ð°Ð¿ÑÑÑиÑÑ ÑедакÑÐ¾Ñ vim, 'tutor.ru' --- ÑÑо Ñайл, коÑоÑÑй
++ ÐÑ Ð±ÑдеÑе ÑедакÑиÑоваÑÑ.
++
++ 4. ÐÑли ÐÑ ÑвеÑÐµÐ½Ñ Ð² Ñом, ÑÑо запомнили ÑÑи Ñаги, вÑполниÑе Ñаги Ð¾Ñ 1 до 3
++ ÑÑÐ¾Ð±Ñ Ð²ÑйÑи Ñнова запÑÑÑиÑÑ ÑедакÑоÑ. ÐаÑем пеÑемеÑÑиÑе кÑÑÑÐ¾Ñ Ð²Ð½Ð¸Ð· к
++ УÑÐ¾ÐºÑ 1.3.
++ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
++ УÑок 1.3: Ð ÐÐÐÐТÐÐ ÐÐÐÐÐРТÐÐСТР- УÐÐÐÐÐÐÐ
++
++
++ ** ÐаÑ
одÑÑÑ Ð² обÑÑном Ñежиме нажмиÑе x, ÑÑÐ¾Ð±Ñ ÑдалиÑÑ Ñимвол под кÑÑÑоÑом. **
++
++ 1. ÐеÑемеÑÑиÑе кÑÑÑÐ¾Ñ Ðº ÑÑÑоке внизÑ, помеÑенной --->.
++
++ 2. ÐÐ»Ñ Ð¸ÑпÑÐ°Ð²Ð»ÐµÐ½Ð¸Ñ Ð¾Ñибок, пеÑемеÑÑиÑе кÑÑÑоÑ, пока он не окажеÑÑÑ Ð½Ð°Ð´
++ ÑдалÑемÑм Ñимволом.
++
++ 3. ÐажмиÑе клавиÑÑ x Ð´Ð»Ñ ÑÐ´Ð°Ð»ÐµÐ½Ð¸Ñ ÑÑебÑемого Ñимвола.
++
++ 4. ÐовÑоÑиÑе Ñаги 2--4 пока ÑÑÑока не бÑÐ´ÐµÑ Ð¸ÑпÑавлена.
++
++ ---> ÐÑ ÑÑÑопоÑа копÑÑÑ Ð¿Ð¿Ð¿ÑÐ»Ñ Ð¿Ð¿Ð¾ Ð¿Ð¿Ð¿Ð¾Ð»Ñ Ð»ÐµÑÑиÑÑ.
++
++ 5. ТепеÑÑ, когда ÑÑÑока оÑкоÑÑекÑиÑована, пеÑеÑ
одиÑе к ÑÑÐ¾ÐºÑ 1.4.
++
++ ÐÐÐÐЧÐÐÐÐ: Ð Ñ
оде оÑÐ²Ð¾ÐµÐ½Ð¸Ñ ÑÑого ÑÑебника не пÑÑайÑеÑÑ Ð·Ð°Ð¿Ð¾Ð¼Ð¸Ð½Ð°ÑÑ, ÑÑиÑе
++ в пÑоÑеÑÑе иÑполÑзованиÑ.
++
++
++ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
++ УÑок 1.4: Ð ÐÐÐÐТÐÐ ÐÐÐÐÐРТÐÐСТР- ÐСТÐÐÐÐ
++
++
++ ** ÐаÑ
одÑÑÑ Ð² обÑÑном Ñежиме (Normal mode), нажмиÑе i Ð´Ð»Ñ Ð²ÑÑавки ÑекÑÑа. **
++
++ 1. ÐеÑемеÑÑиÑе кÑÑÑÐ¾Ñ Ðº пеÑвой ÑÑÑоке внизÑ, помеÑенной --->.
++
++ 2. ÐÐ»Ñ Ñого, ÑÑÐ¾Ð±Ñ ÑделаÑÑ Ð¿ÐµÑвÑÑ ÑÑÑÐ¾ÐºÑ Ð¸Ð´ÐµÐ½ÑиÑной вÑоÑой, помеÑÑиÑе
++ кÑÑÑÐ¾Ñ Ð½Ð° Ñимвол ÐÐÐ ÐРкоÑоÑÑм ÑледÑÐµÑ Ð²ÑÑавиÑÑ ÑекÑÑ.
++
++ 3. ÐажмиÑе i и набеÑиÑе ÑÑебÑемÑе добавлениÑ.
++
++ 4. ÐоÑле иÑпÑÐ°Ð²Ð»ÐµÐ½Ð¸Ñ Ð²ÑеÑ
оÑибок нажмиÑе <ESC> Ð´Ð»Ñ Ð²Ð¾Ð·Ð²ÑаÑа в обÑÑнÑй Ñежим.
++ ÐовÑоÑиÑе Ñаги 2--4, пока ÑÑаза не бÑÐ´ÐµÑ Ð¸ÑпÑавлена полноÑÑÑÑ.
++
++ ---> ЧаÑÑÑ ÑекÑÑа в ÑÑÑоке беÑледно .
++ ---> ЧаÑÑÑ ÑекÑÑа в ÑÑой ÑÑÑоке беÑÑледно пÑопала.
++
++ 5. Ðогда оÑвоиÑе вÑÑÐ°Ð²ÐºÑ ÑекÑÑа, пеÑеÑ
одиÑе далÑÑе к РезÑме.
++
++
++
++ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
++ Ð ÐÐЮÐРУРÐÐÐ 1
++
++ 1. ÐÑÑÑÐ¾Ñ Ð¿ÐµÑемеÑаеÑÑÑ Ð»Ð¸Ð±Ð¾ клавиÑами Ñо ÑÑÑелками, либо клавиÑами hjkl.
++ h (влево) j (вниз) k (ввеÑÑ
) l (впÑаво)
++
++ 2. ÐÐ»Ñ Ð·Ð°Ð¿ÑÑка Vim (из пÑиглаÑÐµÐ½Ð¸Ñ % командной оболоÑки) набеÑиÑе:
++ vim ÐÐЯ_ФÐÐÐÐ <ENTER>
++
++ 3. ÐÐ»Ñ Ð·Ð°Ð²ÐµÑÑÐµÐ½Ð¸Ñ ÑабоÑÑ Ñ Vim набеÑиÑе:
++ <ESC> :q! <ENTER> ÑÑÐ¾Ð±Ñ Ð¾ÑказаÑÑÑÑ Ð¾Ñ ÑоÑ
ÑÐ°Ð½ÐµÐ½Ð¸Ñ Ð¸Ð·Ð¼ÐµÐ½ÐµÐ½Ð¸Ð¹.
++ Ðли набеÑиÑе:
++ <ESC> :wq <ENTER> ÑÑÐ¾Ð±Ñ ÑоÑ
ÑаниÑÑ Ð¸Ð·Ð¼ÐµÐ½ÐµÐ½Ð¸Ñ.
++
++ 4. ÐÐ»Ñ ÑÐ´Ð°Ð»ÐµÐ½Ð¸Ñ Ñимвола под кÑÑÑоÑом в обÑÑном Ñежиме, набеÑиÑе: x
++
++ 5. ЧÑÐ¾Ð±Ñ Ð²ÑÑавиÑÑ ÑекÑÑ Ð¿ÐµÑед кÑÑÑоÑом в обÑÑном Ñежиме, набеÑиÑе:
++ i вводиÑе ÑекÑÑ <ESC>
++
++ ÐÐÐÐЧÐÐÐÐ: ÐажаÑие <ESC> пеÑемеÑÑÐ¸Ñ ÐÐ°Ñ Ð² обÑÑнÑй Ñежим (Normal mode) либо
++ пÑеÑÐ²ÐµÑ Ð½ÐµÐ¶ÐµÐ»Ð°ÑелÑнÑÑ Ð¸ ÑаÑÑиÑно завеÑÑеннÑÑ ÐºÐ¾Ð¼Ð°Ð½Ð´Ñ.
++
++ ТепеÑÑ Ð¿ÐµÑеÑ
одим к УÑÐ¾ÐºÑ 2.
++
++ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
++ УÑок 2.1: ÐÐÐÐÐÐЫ УÐÐÐÐÐÐЯ
++
++
++ ** ÐабеÑиÑе dw Ð´Ð»Ñ ÑÐ´Ð°Ð»ÐµÐ½Ð¸Ñ ÑÑаÑÑка ÑекÑÑа до конÑа Ñлова. **
++
++ 1. ÐажмиÑе <ESC>, ÑÑÐ¾Ð±Ñ Ð¿ÐµÑейÑи в обÑÑнÑй Ñежим.
++
++ 2. ÐеÑемеÑÑиÑе кÑÑÑÐ¾Ñ Ð²Ð½Ð¸Ð·, к ÑÑÑоке, помеÑенной --->.
++
++ 3. ÐеÑемеÑÑиÑе кÑÑÑÐ¾Ñ Ð² наÑало Ñлова, коÑоÑое ÑледÑÐµÑ ÑдалиÑÑ.
++
++ 4. ÐабеÑиÑе dw , ÑÑÐ¾Ð±Ñ ÑдалиÑÑ ÑÑо Ñлово.
++
++ ÐÐÐÐЧÐÐÐÐ: Ðо вÑÐµÐ¼Ñ Ð½Ð°Ð±Ð¾Ñа бÑÐºÐ²Ñ dw поÑвÑÑÑÑ Ð² поÑледней ÑÑÑоке ÑкÑана. ÐÑли
++ ÐÑ ÑÑо-Ñо набеÑеÑе непÑавилÑно, нажмиÑе <ESC> и наÑниÑе ÑнаÑала.
++
++ ---> ÐеÑколÑко Ñлов ÑаÑинад в ÑÑом пÑедложении авÑокÑан излиÑни.
++
++ 5. ÐовÑоÑиÑе Ñаги 3 и 4, пока не иÑпÑавиÑе вÑе оÑибки и пеÑеÑ
одиÑе к
++ УÑÐ¾ÐºÑ 2.2.
++
++
++ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
++ УÑок 2.2: ÐÐÐÐÐÐÐТÐÐЬÐЫРÐÐÐÐÐÐЫ УÐÐÐÐÐÐЯ
++
++
++ ** ÐабеÑиÑе d$ Ð´Ð»Ñ ÑÐ´Ð°Ð»ÐµÐ½Ð¸Ñ ÑекÑÑа до конÑа ÑÑÑоки. **
++
++ 1. ÐажмиÑе <ESC>, ÑÑÐ¾Ð±Ñ Ð¿ÐµÑейÑи в обÑÑнÑй Ñежим.
++
++ 2. ÐеÑемеÑÑиÑе кÑÑÑÐ¾Ñ Ð²Ð½Ð¸Ð·, к ÑÑÑоке, помеÑенной --->.
++
++ 3. ÐеÑемеÑÑиÑе кÑÑÑÐ¾Ñ Ðº конÑÑ Ð¿ÑавилÑной ÑÑÑоки (ÐÐСÐРпеÑвой . ).
++
++ 4. ЧÑÐ¾Ð±Ñ ÑдалиÑÑ Ð¾ÑÑаÑок ÑÑÑоки, набеÑиÑе d$ .
++
++ ---> ÐÑо-Ñо набÑал оконÑание ÑÑой ÑÑÑоки дваждÑ. оконÑание ÑÑой ÑÑÑоки дваждÑ.
++
++
++ 5.ЧÑÐ¾Ð±Ñ Ð»ÑÑÑе ÑазобÑаÑÑÑÑ Ð² ÑÑом, пеÑеÑ
одиÑе к УÑÐ¾ÐºÑ 2.3.
++
++
++
++
++
++ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
++ УÑок 2.3: ÐÐÐÐÐÐЫ Ð ÐÐЪÐÐТЫ
++
++
++ ФоÑÐ¼Ð°Ñ ÐºÐ¾Ð¼Ð°Ð½Ð´Ñ `Ñдаление' d Ñаков:
++
++ [ÑиÑло] d обÑÐµÐºÑ ÐÐÐ d [ÑиÑло] обÑекÑ
++ ÐдеÑÑ:
++ ÑиÑло - ÑколÑко Ñаз иÑполниÑÑ ÐºÐ¾Ð¼Ð°Ð½Ð´Ñ (необÑзаÑелÑно, по ÑмолÑаниÑ=1).
++ d - команда ÑдалениÑ.
++ обÑÐµÐºÑ - Ñ Ñем команда должна бÑÑÑ Ð²Ñполнена (пеÑеÑиÑлено ниже).
++
++ ÐÑаÑкий ÑпиÑок обÑекÑов:
++ w - Ð¾Ñ ÐºÑÑÑоÑа до конÑа Ñлова, вклÑÑÐ°Ñ Ð·Ð°Ð²ÐµÑÑаÑÑий пÑобел.
++ e - Ð¾Ñ ÐºÑÑÑоÑа до конÑа Ñлова, ÐРвклÑÑÐ°Ñ Ð·Ð°Ð²ÐµÑÑаÑÑий пÑобел.
++ $ - Ð¾Ñ ÐºÑÑÑоÑа до конÑа ÑÑÑоки.
++ ^ - Ð¾Ñ ÐºÑÑÑоÑа до наÑала ÑÑÑоки.
++
++ ÐÐÐÐЧÐÐÐÐ: ÐÑоÑÑое нажаÑие на Ñимвол обÑекÑа в обÑÑном Ñежиме (Normal mode)
++ без дополниÑелÑнÑÑ
команд пеÑÐµÐ´Ð²Ð¸Ð½ÐµÑ ÐºÑÑÑÐ¾Ñ Ñак, как Ñказано в
++ ÑпиÑке обÑекÑов.
++
++
++
++ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
++ УÑок 2.4: ÐСÐÐЮЧÐÐÐÐ ÐÐ ÐÐ ÐÐÐÐÐ `ÐÐÐÐÐÐÐ-ÐÐЪÐÐТ'
++
++
++ ** ÐабеÑиÑе dd Ð´Ð»Ñ ÑÐ´Ð°Ð»ÐµÐ½Ð¸Ñ Ð²Ñей ÑÑÑоки. **
++
++ ÐÑледÑÑвие ÑаÑÑого пÑÐ¸Ð¼ÐµÐ½ÐµÐ½Ð¸Ñ Ð¾Ð¿ÐµÑаÑии ÑÐ´Ð°Ð»ÐµÐ½Ð¸Ñ Ð²Ñей ÑÑÑоки, ÑазÑабоÑÑики
++ Vim ÑеÑили, ÑÑо Ð´Ð»Ñ ÑÑого пÑоÑе вÑего пÑоÑÑо набÑаÑÑ d дваждÑ.
++
++ 1. ÐеÑемеÑÑиÑе кÑÑÑÐ¾Ñ Ð²Ð½Ð¸Ð·, ко вÑоÑой ÑÑÑоке ÑÑазÑ.
++ 2. ÐабеÑиÑе dd Ð´Ð»Ñ ÑÐ´Ð°Ð»ÐµÐ½Ð¸Ñ ÑÑÑоки.
++ 3. ТепеÑÑ Ð¿ÐµÑемеÑÑиÑеÑÑ Ðº ÑеÑвеÑÑой ÑÑÑоке.
++ 4. ÐабеÑиÑе 2dd (вÑпомниÑе пÑавило `ÑиÑло-команда-обÑекÑ'), ÑÑÐ¾Ð±Ñ ÑдалиÑÑ
++ две ÑÑÑоки.
++
++ 1) ÐеÑом Ñ Ñ
Ð¾Ð¶Ñ Ð½Ð° ÑÑадион,
++ 2) Ð, как внезапно конÑилÑÑ Ð´Ð¸Ð²Ð°Ð½!
++ 3) Я Ð±Ð¾Ð»ÐµÑ Ð·Ð° ``ÐениÑ'', ``ÐениÑ'' --- Ñемпион!
++ 4) ÐеÑалÑно Ñ Ð³Ð»ÑÐ¶Ñ Ð½Ð° наÑе поколение!
++ 5) Ðго гÑÑдÑÑее Ð¸Ð»Ñ Ð¿ÑÑÑо Ð¸Ð»Ñ Ñемно...
++ 6) Я ÑÐ¸Ð¶Ñ Ð½Ð° Ñкамейке в ложе `Ð'
++ 7) РигÑÐ°Ñ Ð½Ð° болÑÑой жеÑÑÑной ÑÑÑбе.
++
++ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
++ УÑок 2.5: ÐÐÐÐÐÐÐ `ÐТÐÐТ'
++
++
++ ** ÐажмиÑе u Ð´Ð»Ñ Ð¾ÑÐ¼ÐµÐ½Ñ ÑезÑлÑÑаÑа ÑабоÑÑ Ð¿ÑедÑдÑÑей командÑ, U Ð´Ð»Ñ Ð¾ÑменÑ
++ иÑпÑавлений во вÑей ÑÑÑоке. **
++
++ 1. ÐеÑемеÑÑиÑе кÑÑÑÐ¾Ñ Ð²Ð½Ð¸Ð·, к ÑÑÑоке, помеÑенной ---> и ÑÑÑановиÑе его на
++ пеÑвÑÑ Ð¾ÑибкÑ.
++ 2. ÐажмиÑе x Ð´Ð»Ñ ÑÐ´Ð°Ð»ÐµÐ½Ð¸Ñ Ð¿ÐµÑвого непÑавилÑного Ñимвола.
++ 3. ТепеÑÑ Ð½Ð°Ð¶Ð¼Ð¸Ñе u Ð´Ð»Ñ Ð¾ÑÐ¼ÐµÐ½Ñ (оÑкаÑа) поÑледней вÑполненной командÑ.
++ 4. ÐÑпÑавÑÑе вÑе оÑибки в ÑÑÑоке, иÑполÑзÑÑ ÐºÐ¾Ð¼Ð°Ð½Ð´Ñ x .
++ 5. ТепеÑÑ Ð½Ð°Ð¶Ð¼Ð¸Ñе заглавнÑÑ U Ð´Ð»Ñ Ñого, ÑÑÐ¾Ð±Ñ Ð²ÐµÑнÑÑÑ Ð²ÑÑ ÑÑÑÐ¾ÐºÑ Ð² иÑÑ
одное
++ ÑоÑÑоÑние.
++ 6. ÐажмиÑе u неÑколÑко Ñаз Ð´Ð»Ñ Ð¾ÑÐ¼ÐµÐ½Ñ ÐºÐ¾Ð¼Ð°Ð½Ð´Ñ U и пÑедÑдÑÑиÑ
команд.
++ 7. ÐажмиÑе ÑепеÑÑ CTRL-R (ÑдеÑживайÑе клавиÑÑ CTRL нажаÑой в Ð¼Ð¾Ð¼ÐµÐ½Ñ Ð½Ð°Ð¶Ð°ÑиÑ
++ R) неÑколÑко Ñаз Ð´Ð»Ñ Ð²Ð¾Ð·Ð²ÑаÑа команд (оÑÐºÐ°Ñ Ð¾ÑкаÑа).
++
++ ---> ÐÑпÑÑавÑÑе ооÑибки в ÑÑойй ÑÑÑоке и веÑниÑÑе иÑ
ÑÑ Ð¿Ð¾Ð¼Ð¾ÑÑÑÑ `оÑкаÑа'.
++
++ 8. ÐÑо бÑли оÑÐµÐ½Ñ Ð¿Ð¾Ð»ÐµÐ·Ð½Ñе командÑ. Ðалее пеÑеÑ
одиÑе к РезÑме УÑока 2.
++
++
++ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
++ Ð ÐÐЮÐРУРÐÐÐ 2
++
++
++ 1. ÐÐ»Ñ ÑÐ´Ð°Ð»ÐµÐ½Ð¸Ñ ÑекÑÑа Ð¾Ñ ÐºÑÑÑоÑа до конÑа Ñлова набеÑиÑе: dw
++
++ 2. ÐÐ»Ñ ÑÐ´Ð°Ð»ÐµÐ½Ð¸Ñ ÑекÑÑа Ð¾Ñ ÐºÑÑÑоÑа до конÑа ÑÑÑоки набеÑиÑе: d$
++
++ 3. ÐÐ»Ñ ÑÐ´Ð°Ð»ÐµÐ½Ð¸Ñ Ð²Ñей ÑÑÑоки набеÑиÑе: dd
++
++ 4. ФоÑÐ¼Ð°Ñ ÐºÐ¾Ð¼Ð°Ð½Ð´Ñ Ð² обÑÑном Ñежиме Ð¸Ð¼ÐµÐµÑ Ð²Ð¸Ð´:
++
++ [ÑиÑло] команда обÑÐµÐºÑ ÐÐРкоманда [ÑиÑло] обÑекÑ
++ где:
++ ÑиÑло - ÑколÑко Ñаз повÑоÑиÑÑ Ð²Ñполнение командÑ
++ команда - ÑÑо вÑполниÑÑ, напÑÐ¸Ð¼ÐµÑ d Ð´Ð»Ñ ÑдалениÑ
++ обÑÐµÐºÑ - на ÑÑо должна воздейÑÑвоваÑÑ ÐºÐ¾Ð¼Ð°Ð½Ð´Ð°, напÑÐ¸Ð¼ÐµÑ w (Ñлово),
++ $ (до конÑа ÑÑÑоки), и Ñ.д.
++
++ 5. ÐÐ»Ñ Ð¾ÑÐ¼ÐµÐ½Ñ (оÑкаÑа) пÑедÑеÑÑвÑÑÑиÑ
дейÑÑвий набеÑиÑе: u (ÑÑÑоÑÐ½Ð°Ñ u)
++ ÐÐ»Ñ Ð¾ÑÐ¼ÐµÐ½Ñ (оÑкаÑа) вÑеÑ
изменений в ÑÑÑоке набеÑиÑе: U (пÑопиÑÐ½Ð°Ñ U)
++ ÐÐ»Ñ Ð¾ÑÐ¼ÐµÐ½Ñ Ð¾ÑкаÑа набеÑиÑе: CTRL-R
++
++ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
++ УÑок 3.1: ÐÐÐÐÐÐÐ ÐСТÐÐÐÐ
++
++
++ ** ÐабеÑиÑе p Ð´Ð»Ñ Ð²ÑÑавки поÑледнего Ñдаленного ÑекÑÑа поÑле кÑÑÑоÑа. **
++
++ 1. ÐеÑемеÑÑиÑе кÑÑÑÐ¾Ñ Ð²Ð½Ð¸Ð· к поÑледней ÑÑÑоке из набоÑа.
++
++ 2. ÐабеÑиÑе dd Ð´Ð»Ñ ÑÐ´Ð°Ð»ÐµÐ½Ð¸Ñ ÑÑÑоки и ее ÑоÑ
ÑÐ°Ð½ÐµÐ½Ð¸Ñ Ð² бÑÑеÑе Vim'а.
++
++ 3. ÐеÑемеÑÑиÑе кÑÑÑÐ¾Ñ Ðº ÑÑÑоке ÐÐÐ Ñем меÑÑом, кÑда ÑледÑÐµÑ Ð²ÑÑавиÑÑ
++ ÑдаленнÑÑ ÑÑÑокÑ.
++
++ 4. ÐаÑ
одÑÑÑ Ð² обÑÑном Ñежиме набеÑиÑе p Ð´Ð»Ñ Ð·Ð°Ð¼ÐµÐ½Ñ ÑÑÑоки.
++
++ 5. ÐовÑоÑиÑе Ñаги 2--4, пока не ÑаÑÑÑавиÑе вÑе ÑÑÑоки в нÑжном поÑÑдке.
++
++ г) РлÑÑÑе вÑдÑмаÑÑ Ð½Ðµ мог.
++ б) Ðогда не в ÑÑÑÐºÑ Ð·Ð°Ð½ÐµÐ¼Ð¾Ð³,
++ в) Ðн ÑважаÑÑ ÑÐµÐ±Ñ Ð·Ð°ÑÑавил
++ а) Ðой дÑÐ´Ñ ÑамÑÑ
ÑеÑÑнÑÑ
пÑавил
++
++
++ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
++ УÑок 3.2: ÐÐÐÐÐÐÐ ÐÐÐÐÐЫ
++
++
++ ** ÐабеÑиÑе r и Ñимвол, заменÑÑÑий Ñимвол под кÑÑÑоÑом. **
++
++ 1. ÐеÑемеÑÑиÑе кÑÑÑÐ¾Ñ Ð²Ð½Ð¸Ð·, к ÑÑÑоке, помеÑенной --->.
++
++ 2. УÑÑановиÑе кÑÑÑÐ¾Ñ Ñак, ÑÑÐ¾Ð±Ñ Ð¾Ð½ наÑ
одилÑÑ Ð½Ð°Ð´ пеÑвой оÑибкой.
++
++ 3. ÐабеÑиÑе r и заÑем Ñимвол, иÑпÑавлÑÑÑий оÑибкÑ.
++
++ 4. ÐовÑоÑиÑе Ñаги 2 и 3, пока пеÑÐ²Ð°Ñ ÑÑÑока не бÑÐ´ÐµÑ Ð¸ÑпÑавлена.
++
++ ---> Ð Ð¼Ð¾Ð¼ÐµÐ³Ñ Ð½Ð°Ð±ÑÑа ÑÑой ÑÑÑоки кое0кÑо Ñ ÑÑÑдом попвдал по клваиÑам!
++ ---> Ð Ð¼Ð¾Ð¼ÐµÐ½Ñ Ð½Ð°Ð±Ð¾Ñа ÑÑой ÑÑÑоки кое-кÑо Ñ ÑÑÑдом попадал по клавиÑам!
++
++ 5. ТепеÑÑ Ð¿ÐµÑеÑ
одиÑе к УÑÐ¾ÐºÑ 3.2.
++
++ ÐÐÐÐЧÐÐÐÐ: ÐомниÑе, ÑÑо Ð²Ñ Ð´Ð¾Ð»Ð¶Ð½Ñ ÑÑиÑÑÑÑ Ð² пÑоÑеÑÑе ÑабоÑÑ, а не пÑоÑÑо
++ запоминаÑ.
++
++
++ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
++ УÑок 3.3: ÐÐÐÐÐÐÐ ÐÐÐÐÐÐÐÐЯ
++
++
++ ** ÐÐ»Ñ Ð¸Ð·Ð¼ÐµÐ½ÐµÐ½Ð¸Ñ ÑаÑÑи Ñлова набеÑиÑе cw . **
++
++ 1. ÐеÑемеÑÑиÑе кÑÑÑÐ¾Ñ Ð²Ð½Ð¸Ð·, к ÑÑÑоке, помеÑенной --->.
++
++ 2. РаÑположиÑе кÑÑÑÐ¾Ñ Ð½Ð°Ð´ бÑквой `o' в Ñлове `Ñола'.
++
++ 3. ÐабеÑиÑе cw и иÑпÑавÑÑе Ñлово (в данном ÑлÑÑае, набеÑиÑе `лов'.)
++
++ 4. ÐажмиÑе <ESC> и пеÑеÑ
одиÑе к ÑледÑÑÑей оÑибке (к пеÑÐ²Ð¾Ð¼Ñ ÑимволÑ, коÑоÑÑй
++ надо измениÑÑ.)
++
++ 5. ÐовÑоÑиÑе Ñаги 3--4 пока пеÑвое пÑедложение не ÑÑÐ°Ð½ÐµÑ Ð¸Ð´ÐµÐ½ÑиÑнÑм вÑоÑомÑ.
++
++ ---> ÐеÑколÑко Ñола в ÑÑÐ³Ñ ÑÑÑоке ÑпгÑÑÐ±Ñ ÑедалзкÑÑиеÑвÑ
.
++ ---> ÐеÑколÑко Ñлов в ÑÑой ÑÑÑоке ÑÑебÑÑÑ ÑедакÑиÑованиÑ.
++
++ ÐбÑаÑиÑе внимание, ÑÑо cw не ÑолÑко заменÑÐµÑ Ñлово, но и пеÑÐµÐ²Ð¾Ð´Ð¸Ñ Ð²Ð°Ñ Ð² Ñежим
++ вÑÑавки.
++
++
++ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
++ УÑок 3.4: ÐÐ ÐÐÐÐÐÐÐÐ ÐÐÐÐÐЯТЬ С ÐÐÐÐÐÐÐÐ c
++
++
++ ** Ðоманда Ð·Ð°Ð¼ÐµÐ½Ñ Ð¸ÑполÑзÑеÑÑÑ Ñ Ñеми же обÑекÑами, ÑÑо и команда ÑдалениÑ. **
++
++ 1. Ðоманда Ð¸Ð·Ð¼ÐµÐ½ÐµÐ½Ð¸Ñ Ð¿ÑименÑеÑÑÑ Ñаким же обÑазом, как и команда ÑдалениÑ.
++ Ðе ÑоÑÐ¼Ð°Ñ Ñаков:
++
++ [ÑиÑло] c обÑÐµÐºÑ ÐÐÐ c [ÑиÑло] обÑекÑ
++
++ 2. ÐбÑекÑÑ Ñакже ÑовпадаÑÑ: w (Ñлово), $ (ÐºÐ¾Ð½ÐµÑ ÑÑÑоки) и Ñ.п.
++
++ 3. ÐеÑемеÑÑиÑе кÑÑÑÐ¾Ñ Ð²Ð½Ð¸Ð·, к ÑÑÑоке, помеÑенной --->.
++
++ 4. ÐеÑейдиÑе к пеÑвой оÑибке.
++
++ 5. ÐабеÑиÑе c$ и оÑÑедакÑиÑÑйÑе пеÑвÑÑ ÑÑÑÐ¾ÐºÑ Ñак, ÑÑÐ¾Ð±Ñ Ð¾Ð½Ð° Ñовпадала Ñо
++ вÑоÑой, поÑле Ñего нажмиÑе <ESC>.
++
++ ---> ÐÐ¾Ð½ÐµÑ ÑÑой ÑÑÑоки нÑждаеÑÑÑ Ð² помоÑи, ÑÑÐ¾Ð±Ñ ÑÑаÑÑ Ð¿Ð¾Ñ
ожим на вÑоÑой.
++ ---> ÐÐ¾Ð½ÐµÑ ÑÑой ÑÑÑоки нÑждаеÑÑÑ Ð² помоÑи ÐºÐ¾Ð¼Ð°Ð½Ð´Ñ c$ .
++
++
++ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
++ Ð ÐÐЮÐРУРÐÐÐ 3
++
++
++ 1. ÐÐ»Ñ Ð²ÑÑавки ÑекÑÑа, коÑоÑÑй ÑолÑко ÑÑо бÑл Ñдален, набеÑиÑе p . ÐÑа
++ команда вÑÑÐ°Ð²Ð¸Ñ ÑдаленнÑй ÑекÑÑ ÐÐСÐРкÑÑÑоÑа (еÑли бÑла Ñдалена ÑÑÑока,
++ Ñо она бÑÐ´ÐµÑ Ð¿Ð¾Ð¼ÐµÑена в ÑÑÑоке под кÑÑÑоÑом).
++
++ 2. ÐÐ»Ñ Ð·Ð°Ð¼ÐµÐ½Ñ Ñимвола под кÑÑÑоÑом набеÑиÑе r и заÑем заменÑÑÑий Ñимвол.
++
++ 3. Ðоманда Ð¸Ð·Ð¼ÐµÐ½ÐµÐ½Ð¸Ñ Ð¿Ð¾Ð·Ð²Ð¾Ð»ÑÐµÑ Ðам измениÑÑ ÑказаннÑй обÑÐµÐºÑ Ð¾Ñ ÐºÑÑÑоÑа до
++ конÑа ÑÑого обÑекÑа. ÐапÑимеÑ, набеÑиÑе cw Ð´Ð»Ñ Ð·Ð°Ð¼ÐµÐ½Ñ Ð¾Ñ ÐºÑÑÑоÑа до
++ конÑа Ñлова, c$ Ð´Ð»Ñ Ð¸Ð·Ð¼ÐµÐ½ÐµÐ½Ð¸Ñ Ð´Ð¾ конÑа ÑÑÑоки.
++
++ 4. ФоÑÐ¼Ð°Ñ ÐºÐ¾Ð¼Ð°Ð½Ð´Ñ Ð¸Ð·Ð¼ÐµÐ½ÐµÐ½Ð¸Ñ Ñаков:
++
++ [ÑиÑло] c обÑÐµÐºÑ ÐÐÐ c [ÑиÑло] обÑекÑ
++
++ ТепеÑÑ Ð¾ÑпÑавлÑйÑеÑÑ Ðº ÑледÑÑÑÐµÐ¼Ñ ÑÑокÑ.
++
++
++
++
++
++ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
++ УÑок 4.1: ÐÐФÐÐ ÐÐЦÐЯ РФÐÐÐÐ Ð Ð ÐСÐÐÐÐÐÐÐÐÐ Ð ÐÐÐ
++
++
++ ** ÐабеÑиÑе CTRL-g ÑÑÐ¾Ð±Ñ ÑвидеÑÑ ÐаÑе меÑÑоÑаÑположение в Ñайле и инÑоÑмаÑиÑ
++ о нем.
++ ÐабеÑиÑе SHIFT-G Ð´Ð»Ñ Ð¿ÐµÑемеÑÐµÐ½Ð¸Ñ Ðº заданной ÑÑÑоке в Ñайле. **
++
++ ÐамеÑание: ÐÑоÑиÑайÑе веÑÑ ÑÑок пÑежде Ñем вÑполнÑÑÑ Ð»ÑбÑе командÑ!!
++
++ 1. УдеÑÐ¶Ð¸Ð²Ð°Ñ ÐºÐ»Ð°Ð²Ð¸ÑÑ Ctrl нажмиÑе g . ÐÐ½Ð¸Ð·Ñ ÑкÑана поÑвиÑÑÑ ÑÑÑока ÑÑаÑÑÑа Ñ
++ именем Ñайла и номеÑом ÑÑÑоки, в коÑоÑой ÐÑ Ð½Ð°Ñ
одиÑеÑÑ. ÐапомниÑе номеÑ
++ ÑÑÑоки, он поÑÑебÑеÑÑÑ Ð½Ð° Шаге 3.
++
++ 2. ÐажмиÑе shift-G Ð´Ð»Ñ Ð¿ÐµÑемеÑÐµÐ½Ð¸Ñ Ðº конÑÑ Ñайла.
++
++ 3. ÐабеÑиÑе Ð½Ð¾Ð¼ÐµÑ ÑÑÑоки, в коÑоÑой Ð²Ñ Ð½Ð°Ñ
одилиÑÑ Ð¸ заÑем shift-G. ÐÑо
++ веÑÐ½ÐµÑ ÐÐ°Ñ Ðº ÑÑÑоке, в коÑоÑой ÐÑ Ð±Ñли, когда в пеÑвÑй Ñаз нажали Ctrl-g.
++ (Ðогда ÐÑ Ð±ÑдеÑе набиÑаÑÑ ÑиÑÑÑ, они ÐРоÑобÑазÑÑÑÑ Ð½Ð° ÑкÑане.)
++
++ 4. ÐÑли ÐÑ Ð·Ð°Ð¿Ð¾Ð¼Ð½Ð¸Ð»Ð¸ вÑе вÑÑеÑказанное, вÑполниÑе Ñаги 1--3.
++
++
++ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
++ УÑок 4.2: ÐÐÐÐÐÐÐ ÐÐÐСÐÐ
++
++ ** ÐабеÑиÑе / и заÑем введиÑе иÑкомÑÑ ÑÑазÑ. **
++
++ 1. РобÑÑном Ñежиме (Normal mode) набеÑиÑе Ñимвол / . ÐбÑаÑиÑе внимание,
++ ÑÑо он вмеÑÑе Ñ ÐºÑÑÑоÑом поÑвиÑÑÑ Ð²Ð½Ð¸Ð·Ñ ÑкÑана, как ÑÑо пÑоиÑÑ
Ð¾Ð´Ð¸Ñ Ñ
++ командой : .
++
++ 2. ТепеÑÑ Ð½Ð°Ð±ÐµÑиÑе 'оÑÑÑибка' <ENTER>. ÐÑо Ñо Ñлово, коÑоÑое ÐÑ Ð±ÑдеÑе
++ иÑкаÑÑ.
++
++ 3. ÐÐ»Ñ Ñого, ÑÑÐ¾Ð±Ñ Ð¿Ð¾Ð²ÑоÑиÑÑ Ð¿Ð¾Ð¸Ñк, пÑоÑÑо нажмиÑе n .
++ ÐÐ»Ñ Ð¿Ð¾Ð¸Ñка ÑÑой ÑÑÐ°Ð·Ñ Ð² обÑаÑном напÑавлении, нажмиÑе Shift-N .
++
++ 4. ÐÑли ÐÑ Ð¶ÐµÐ»Ð°ÐµÑе ÑÑÐ°Ð·Ñ Ð¸ÑкаÑÑ Ð² обÑаÑном напÑавлении, иÑполÑзÑйÑе
++ ÐºÐ¾Ð¼Ð°Ð½Ð´Ñ ? вмеÑÑо / .
++
++ ---> Ðогда ÐÑ Ð¿Ñи поиÑке доÑÑигнеÑе конÑа Ñайла, поиÑк бÑÐ´ÐµÑ Ð¿Ñодолжен Ñ
++ наÑала.
++
++ "оÑÑÑибка" ÑÑо не ÑпоÑоб пÑоизнеÑÐµÐ½Ð¸Ñ Ñлова `оÑибка'; оÑÑÑибка ÑÑо оÑибка.
++
++ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
++ УÑок 4.3: ÐÐÐСРÐÐÐ ÐЫХ СÐÐÐÐÐ
++
++
++ ** ÐабеÑиÑе % Ð´Ð»Ñ Ð¿Ð¾Ð¸Ñка паÑнÑÑ
),] или } . **
++
++ 1. ÐомеÑÑиÑе кÑÑÑÐ¾Ñ Ð½Ð°Ð´ лÑбой из (, [ или { в ÑÑÑоке внизÑ, помеÑенной --->.
++
++ 2. ТепеÑÑ Ð½Ð°Ð±ÐµÑиÑе Ñимвол % .
++
++ 3. ÐÑÑÑÐ¾Ñ Ð´Ð¾Ð»Ð¶ÐµÐ½ пеÑеÑкоÑиÑÑ Ð½Ð° паÑнÑÑ ÑкобкÑ.
++
++ 4. ÐабеÑиÑе % Ð´Ð»Ñ Ð²Ð¾Ð·Ð²ÑаÑа кÑÑÑоÑа назад к пеÑвой Ñкобке.
++
++ ---> ÐÑо ( ÑÑÑока, ÑодеÑжаÑÐ°Ñ Ñакие (, Ñакие [ ] и Ñакие { } Ñкобки. ))
++
++ ÐамеÑание: ÐÑо оÑÐµÐ½Ñ Ñдобно пÑи оÑладке пÑогÑамм Ñ Ð¿ÑопÑÑеннÑми Ñкобками!
++
++
++
++
++
++
++ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
++ УÑок 4.4: СÐÐСÐÐ ÐСÐÐ ÐÐÐÐÐÐЯ ÐШÐÐÐÐ
++
++
++ ** ÐабеÑиÑе :s/бÑло/ÑÑало/g Ð´Ð»Ñ Ð·Ð°Ð¼ÐµÐ½Ñ 'бÑло' на 'ÑÑало'. **
++
++ 1. ÐеÑемеÑÑиÑе кÑÑÑÐ¾Ñ Ð²Ð½Ð¸Ð·, к ÑÑÑоке, помеÑенной --->.
++
++ 2. ÐабеÑиÑе :s/ÑводÑ/ÑÐ²Ð¾Ð¶Ñ <ENTER> . ÐбÑаÑиÑе внимание на Ñо, ÑÑо ÑÑа команда
++ Ð·Ð°Ð¼ÐµÐ½Ð¸Ñ ÑолÑко пеÑвое найденное вÑ
ождение в ÑÑÑоке.
++
++ 3. ТепеÑÑ Ð½Ð°Ð±ÐµÑиÑе :s/ÑводÑ/ÑвожÑ/g , ознаÑаÑÑее подÑÑÐ°Ð½Ð¾Ð²ÐºÑ Ð³Ð»Ð¾Ð±Ð°Ð»Ñно во
++ вÑей ÑÑÑоке. ÐÑо Ð·Ð°Ð¼ÐµÐ½Ð¸Ñ Ð²Ñе найденнÑе в ÑÑÑоке вÑ
ождениÑ.
++
++ ---> Я ÑÐ²Ð¾Ð´Ñ Ðº оÑвеÑженнÑм ÑеленÑÑм, Ñ ÑÐ²Ð¾Ð´Ñ ÑÐºÐ²Ð¾Ð·Ñ Ð²ÐµÐºÐ¾Ð²ÐµÑнÑй ÑÑон, Ñ ÑÐ²Ð¾Ð´Ñ Ðº
++ забÑÑÑм поколенÑÑм.
++
++ 4. ÐÐ»Ñ Ð·Ð°Ð¼ÐµÐ½Ñ Ð²ÑеÑ
вÑ
ождений поÑледоваÑелÑноÑÑи Ñимволов Ð¼ÐµÐ¶Ð´Ñ Ð´Ð²ÑмÑ
++ ÑÑÑоками,
++ набеÑиÑе :#,#s/бÑло/ÑÑало/g где #,# --- номеÑа ÑÑиÑ
ÑÑÑок.
++ ÐабеÑиÑе :%s/бÑло/ÑÑало/g Ð´Ð»Ñ Ð·Ð°Ð¼ÐµÐ½Ñ Ð²ÑеÑ
вÑ
ождений во вÑем Ñайле.
++
++
++ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
++ Ð ÐÐЮÐРУРÐÐÐ 4
++ 1. Ctrl-g показÑÐ²Ð°ÐµÑ Ð²Ð°Ñе положение в Ñайле и инÑоÑмаÑÐ¸Ñ Ð¾ нем.
++ Shift-G пеÑемеÑÐ°ÐµÑ ÐÐ°Ñ Ð² ÐºÐ¾Ð½ÐµÑ Ñайла. ÐомеÑ, за коÑоÑÑм ÑледÑÐµÑ Shift-G
++ позволÑÐµÑ Ð¿ÐµÑейÑи к ÑÑÑоке Ñ ÑÑим номеÑом.
++
++ 2. ÐажаÑие / и заÑем ввод ÑÑÑоки позволÑÐµÑ Ð¿ÑоизвеÑÑи поиÑк ÑÑой ÑÑÑоки
++ ÐÐÐÐ ÐРпо ÑекÑÑÑ.
++ ÐажаÑие ? и заÑем ввод ÑÑÑоки позволÑÐµÑ Ð¿ÑоизвеÑÑи поиÑк ÑÑой ÑÑÑоки
++ ÐÐÐÐРпо ÑекÑÑÑ.
++ ÐоÑле поиÑка набеÑиÑе n Ð´Ð»Ñ Ð¿ÐµÑеÑ
ода к ÑледÑÑÑÐµÐ¼Ñ Ð²Ñ
Ð¾Ð¶Ð´ÐµÐ½Ð¸Ñ Ð¸Ñкомой
++ ÑÑÑоки в Ñом же напÑавлении или Shift-N Ð´Ð»Ñ Ð¿ÐµÑеÑ
ода в пÑоÑивоположном
++ напÑавлении.
++
++ 3. ÐажаÑие % , когда кÑÑÑÐ¾Ñ Ð½Ð°Ñ
одиÑÑÑ Ð½Ð° (,),[,],{, или } позволÑÐµÑ Ð½Ð°Ð¹Ñи
++ паÑнÑÑ ÑкобкÑ.
++
++ 4. ÐÐ»Ñ Ð¿Ð¾Ð´ÑÑановки `ÑÑало' вмеÑÑо пеÑвого `бÑло' в ÑÑÑоке, набеÑиÑе
++ :s/old/new
++ ÐÐ»Ñ Ð¿Ð¾Ð´ÑÑановки `ÑÑало' вмеÑÑо вÑеÑ
`бÑло' в ÑÑÑоке, набеÑиÑе
++ :s/old/new/g
++ ÐÐ»Ñ Ð·Ð°Ð¼ÐµÐ½Ñ Ð² инÑеÑвале Ð¼ÐµÐ¶Ð´Ñ Ð´Ð²ÑÐ¼Ñ ÑÑÑоками, набеÑиÑе
++ :#,#s/old/new/g
++ ÐÐ»Ñ Ð·Ð°Ð¼ÐµÐ½Ñ Ð²ÑеÑ
вÑ
ождений `бÑло' на `ÑÑало' в Ñайле, набеÑиÑе
++ :%s/old/new/g
++ ЧÑÐ¾Ð±Ñ ÑедакÑÐ¾Ñ ÐºÐ°Ð¶Ð´Ñй Ñаз запÑаÑивал подÑвеÑждение, добавÑÑе 'c'
++ :%s/old/new/gc
++ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
++ УÑок 5.1: ÐÐÐ ÐЫÐÐÐÐÐТЬ ÐÐÐШÐЮЮ ÐÐÐÐÐÐУ
++
++
++ ** ÐабеÑиÑе :! и заÑем внеÑнÑÑ ÐºÐ¾Ð¼Ð°Ð½Ð´Ñ, коÑоÑÑÑ ÑледÑÐµÑ Ð²ÑполниÑÑ. **
++
++ 1. ÐабеÑиÑе Ñже знакомÑÑ Ðам ÐºÐ¾Ð¼Ð°Ð½Ð´Ñ : Ð´Ð»Ñ ÑÑÑановки кÑÑÑоÑа в команднÑÑ
++ ÑÑÑÐ¾ÐºÑ ÑедакÑоÑа. ÐÑо Ð¿Ð¾Ð·Ð²Ð¾Ð»Ð¸Ñ Ðам ввеÑÑи командÑ.
++
++ 2. ТепеÑÑ Ð½Ð°Ð±ÐµÑиÑе Ñимвол ! (воÑклиÑаÑелÑнÑй знак). ТепеÑÑ Ð¼Ð¾Ð¶Ð½Ð¾ иÑполниÑÑ
++ внеÑнÑÑ ÐºÐ¾Ð¼Ð°Ð½Ð´Ñ, иÑполÑзÑÑ ÐºÐ¾Ð¼Ð°Ð½Ð´Ð½ÑÑ Ð¾Ð±Ð¾Ð»Ð¾ÑкÑ.
++
++ 3. ÐÐ»Ñ Ð¿ÑимеÑа набеÑиÑе ls поÑле ! и нажмиÑе <ENTER>. ÐÑа команда вÑведеÑ
++ ÑпиÑок Ñайлов в ÑекÑÑем каÑалоге, ÑоÑно Ñакже, как еÑли Ð±Ñ ÐÑ Ð²Ð²ÐµÐ»Ð¸ ÑÑÑ
++ ÐºÐ¾Ð¼Ð°Ð½Ð´Ñ Ð² пÑиглаÑении оболоÑки. Ðли попÑобÑйÑе :!dir , еÑли пÑедÑдÑÑаÑ
++ команда не ÑÑабоÑала.
++
++ ---> ÐамеÑание: Таким ÑпоÑобом можно вÑполниÑÑ Ð»ÑбÑÑ Ð²Ð½ÐµÑнÑÑ ÐºÐ¾Ð¼Ð°Ð½Ð´Ñ.
++
++ ---> ÐамеÑание: ÐÑе командÑ, наÑинаÑÑиеÑÑ Ñ : , Ð´Ð¾Ð»Ð¶Ð½Ñ Ð·Ð°Ð²ÐµÑÑаÑÑÑÑ Ð½Ð°Ð¶Ð°Ñием
++ <ENTER>.
++
++
++ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
++ УÑок 5.2: ÐÐÐ ÐÐÐÐСÐТЬ ФÐÐÐ
++
++
++ ** ÐÐ»Ñ ÑоÑ
ÑÐ°Ð½ÐµÐ½Ð¸Ñ Ð¸Ð·Ð¼ÐµÐ½ÐµÐ½Ð¸Ð¹, пÑоизведеннÑÑ
в Ñайле, набеÑиÑе :w ÐÐЯ_ФÐÐÐÐ. **
++
++ 1. ÐабеÑиÑе :!dir или :!ls Ð´Ð»Ñ Ð¿Ð¾Ð»ÑÑÐµÐ½Ð¸Ñ ÑпиÑка Ñайлов в ÑекÑÑем каÑалоге.
++ Ðак Ðам Ñже извеÑÑно, ÐÑ Ð´Ð¾Ð»Ð¶Ð½Ñ Ð½Ð°Ð¶Ð°ÑÑ <ENTER> поÑле ввода ÑÑиÑ
команд.
++
++ 2. ÐÑидÑмайÑе название Ð´Ð»Ñ Ñайла, коÑоÑое еÑе не ÑÑÑеÑÑвÑеÑ, напÑÐ¸Ð¼ÐµÑ TEST.
++
++ 3. ТепеÑÑ Ð½Ð°Ð±ÐµÑиÑе :w TEST (где TEST --- ÑÑо Ð¸Ð¼Ñ Ñайла, пÑидÑманное Ðами.)
++
++ 4. ÐÑа команда ÑоÑ
ÑÐ°Ð½Ð¸Ñ Ð²ÐµÑÑ Ñайл (УÑебник по Vim) под именем TEST. ЧÑобÑ
++ ÑдоÑÑовеÑиÑÑÑÑ Ð² ÑÑом, Ñнова набеÑиÑе :!dir и пÑоÑмоÑÑиÑе каÑалог.
++
++ ---> ÐамеÑÑÑе, ÑÑо еÑли ÐÑ Ð²ÑйдеÑе из Vim и заÑем запÑÑÑиÑе его Ñнова Ñ
++ Ñайлом TEST, ÑÑÐ¾Ñ Ñайл бÑÐ´ÐµÑ ÑоÑной копией ÑÑебника в ÑÐ¾Ñ Ð¼Ð¾Ð¼ÐµÐ½Ñ, когда
++ ÐÑ ÐµÐ³Ð¾ ÑоÑ
Ñанили.
++
++ 5. ТепеÑÑ ÑдалиÑе ÑÑÐ¾Ñ Ñайл, набÑав :!del TEST
++
++
++ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
++ УÑок 5.3: ÐЫÐÐÐ ÐЧÐÐРСÐХРÐÐÐÐÐÐ
++
++
++ ** ÐÐ»Ñ ÑоÑ
ÑÐ°Ð½ÐµÐ½Ð¸Ñ ÑаÑÑи Ñайла, набеÑиÑе :#,# w ÐÐЯ_ФÐÐÐÐ **
++
++ 1. ÐÑе Ñаз набеÑиÑе :!dir или :!ls Ð´Ð»Ñ Ð¿Ð¾Ð»ÑÑÐµÐ½Ð¸Ñ ÑпиÑка Ñайлов в ÑекÑÑем
++ каÑалоге и вÑбеÑиÑе подÑ
одÑÑее имÑ, напÑÐ¸Ð¼ÐµÑ TEST.
++
++ 2. ÐеÑемеÑÑиÑе кÑÑÑÐ¾Ñ Ðº наÑÐ°Ð»Ñ ÑÑой ÑÑÑаниÑÑ Ð¸ нажмиÑе Ctrl-g Ð´Ð»Ñ Ð½Ð°Ñ
ождениÑ
++ номеÑа ÑÑÑокиto. ÐÐÐÐÐÐÐТРÐТÐТ ÐÐÐÐÐ !
++
++ 3. ТепеÑÑ Ð¿ÐµÑемеÑÑиÑеÑÑ Ð² ÐºÐ¾Ð½ÐµÑ ÑÑÑаниÑÑ Ð¸ Ð²Ð½Ð¾Ð²Ñ Ð½Ð°Ð±ÐµÑиÑе Ctrl-g. ÐÐÐÐÐÐÐТÐ
++ Ð ÐТÐТ ÐÐÐÐРТÐÐÐ!
++
++ 4. ÐÐ»Ñ ÑоÑ
ÑÐ°Ð½ÐµÐ½Ð¸Ñ Ð¢ÐÐЬÐРЧÐСТРÑайла набеÑиÑе :#,# w TEST , где #,# --- ÑÑо
++ номеÑа, коÑоÑÑе ÐÑ Ð·Ð°Ð¿Ð¾Ð¼Ð½Ð¸Ð»Ð¸ (наÑало, конеÑ), а TEST --- Ð¸Ð¼Ñ Ð²Ð°Ñего Ñайла.
++
++ 5. Ðак и пÑежде, ÑбедиÑеÑÑ Ð² налиÑии ÑÑого Ñайла командой :!dir , но ÐÐ
++ УÐÐÐЯÐТРего.
++
++
++
++ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
++ УÑок 5.4: ЧТÐÐÐÐ Ð ÐÐЪÐÐÐÐÐÐÐРФÐÐÐÐÐ
++
++ ** ÐÐ»Ñ Ð²ÑÑавки ÑодеÑжимого Ñайла, набеÑиÑе :r FILENAME **
++
++ 1. ÐабеÑиÑе :!dir Ð´Ð»Ñ Ñого, ÑÑÐ¾Ð±Ñ ÑбедиÑÑÑÑ Ð² Ñом, ÑÑо Ñайл TEST вÑе еÑе
++ ÑÑÑеÑÑвÑеÑ.
++
++ 2. УÑÑановиÑе кÑÑÑÐ¾Ñ Ð² веÑÑ
ней ÑаÑÑи ÑÑой ÑÑÑаниÑÑ.
++
++ ÐамеÑание: ÐоÑле вÑÐ¿Ð¾Ð»Ð½ÐµÐ½Ð¸Ñ Ñага 3 ÐÑ ÑвидиÑе УÑок 5.3. ÐоÑле ÑÑого
++ пеÑемеÑайÑеÑÑ ÐÐÐÐ, Ñнова к ÑÑÐ¾Ð¼Ñ ÑÑокÑ.
++
++ 3. ТепеÑÑ Ð¿ÑоÑиÑайÑе ÐÐ°Ñ Ñайл TEST, иÑполÑзÑÑ ÐºÐ¾Ð¼Ð°Ð½Ð´Ñ :r TEST , где
++ TEST --- ÑÑо Ð¸Ð¼Ñ Ñайла.
++
++ ÐамеÑание: ÐÑоÑиÑаннÑй Ðами Ñайл бÑÐ´ÐµÑ Ð²ÑÑавлен в Ñом меÑÑе, где наÑ
одиÑÑÑ
++ кÑÑÑоÑ.
++
++ 4. ЧÑÐ¾Ð±Ñ ÑбедиÑÑÑÑ Ð² Ñом, ÑÑо Ñайл пÑоÑиÑан, пеÑемеÑÑиÑеÑÑ Ð½ÐµÐ¼Ð½Ð¾Ð³Ð¾ назад по
++ ÑекÑÑÑ Ð¸ [A[BзамеÑÑÑе, ÑÑо ÑепеÑÑ ÑÑÑеÑÑвÑÑÑ Ð´Ð²Ðµ копии УÑока 5.3, иÑÑ
однаÑ
++ и полÑÑÐµÐ½Ð½Ð°Ñ Ð¸Ð· Ñайла.
++
++ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
++ Ð ÐÐЮÐРУРÐÐÐ 5
++
++
++ 1. :!команда иÑполнÑÐµÑ Ð²Ð½ÐµÑнÑÑ ÐºÐ¾Ð¼Ð°Ð½Ð´Ñ.
++
++ ÐекоÑоÑÑе полезнÑе пÑимеÑÑ:
++ :!dir --- вÑÐ²Ð¾Ð´Ð¸Ñ ÑпиÑок Ñайлов в каÑалоге.
++ :!del FILENAME --- ÑдалÑÐµÑ Ñайл FILENAME.
++
++ 2. :w FILENAME запиÑÑÐ²Ð°ÐµÑ ÑекÑÑий ÑедакÑиÑÑемÑй Ñайл на диÑк
++ под именем FILENAME.
++
++ 3. :#,#w FILENAME ÑоÑ
ÑанÑÐµÑ ÑÑÑоки Ð¾Ñ # до # в Ñайл FILENAME.
++
++ 4. :r FILENAME ÑÑиÑÑÐ²Ð°ÐµÑ Ñ Ð´Ð¸Ñка Ñайл FILENAME и помеÑÐ°ÐµÑ ÐµÐ³Ð¾ в ÑекÑÑий
++ Ñайл Ñледом за позиÑией кÑÑÑоÑа.
++
++
++
++
++
++
++
++ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
++ УÑок 6.1: ÐÐÐÐÐÐРСÐÐÐÐÐÐЯ
++
++
++ ** ÐабеÑиÑе o ÑÑÐ¾Ð±Ñ ÑоздаÑÑ Ð¿ÑÑÑÑÑ ÑÑÑÐ¾ÐºÑ Ð¿Ð¾Ð´ кÑÑÑоÑом и пеÑейÑи в Ñежим
++ вÑÑавки (Insert mode) **
++
++ 1. ÐеÑемеÑÑиÑе кÑÑÑÐ¾Ñ Ð²Ð½Ð¸Ð·, к ÑÑÑоке, помеÑенной --->.
++
++ 2. ÐабеÑиÑе o (в нижнем ÑегиÑÑÑе) Ð´Ð»Ñ Ñого, ÑÑÐ¾Ð±Ñ ÑоздаÑÑ Ð¿ÑÑÑÑÑ ÑÑÑокÑ
++ ÐÐÐРкÑÑÑоÑа и пеÑейÑи в Ñежим вÑÑавки (Insert mode).
++
++ 3. ТепеÑÑ ÑкопиÑÑйÑе помеÑеннÑÑ ---> ÑÑÑÐ¾ÐºÑ Ð¸ нажмиÑе <ESC> Ð´Ð»Ñ Ð²ÑÑ
ода из
++ Ñежима вÑÑавки.
++
++ ---> ÐоÑле нажаÑÐ¸Ñ o кÑÑÑÐ¾Ñ Ð¿ÐµÑÐµÐ¹Ð´ÐµÑ Ð½Ð° новÑÑ Ð¿ÑÑÑÑÑ ÑÑÑÐ¾ÐºÑ Ð² Ñежиме вÑÑавки.
++
++ 4. ÐÐ»Ñ ÑÐ¾Ð·Ð´Ð°Ð½Ð¸Ñ ÑÑÑоки ÐЫШРкÑÑÑоÑа, пÑоÑÑо набеÑиÑе заглавнÑÑ O, вмеÑÑо
++ ÑÑÑоÑной o. ÐопÑобÑйÑе пÑоделаÑÑ ÑÑо Ñ Ð½Ð¸Ð¶ÐµÑледÑÑÑей ÑÑÑокой.
++ СоздайÑе новÑÑ ÑÑÑÐ¾ÐºÑ Ð½Ð°Ð´ ÑÑой, нажав Shift-O, помеÑÑив кÑÑÑÐ¾Ñ Ð½Ð° ÑÑÑ ÑÑÑокÑ.
++
++
++
++
++ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
++ УÑок 6.2: ÐÐÐÐÐÐÐ ÐÐÐÐÐÐÐÐÐЯ
++
++ ** ÐабеÑиÑе a , ÑÑÐ¾Ð±Ñ Ð²ÑÑавиÑÑ ÑекÑÑ ÐÐСÐРкÑÑÑоÑа. **
++
++ 1. ÐеÑемеÑÑиÑе кÑÑÑÐ¾Ñ Ð²Ð½Ð¸Ð·, в ÐºÐ¾Ð½ÐµÑ Ð¿ÐµÑвой ÑÑÑоки, помеÑенной ---> ,
++ набÑав $ в обÑÑном Ñежиме (Normal mode).
++
++ 2. ÐабеÑиÑе a (в нижнем ÑегиÑÑÑе) Ð´Ð»Ñ Ð´Ð¾Ð±Ð°Ð²Ð»ÐµÐ½Ð¸Ñ ÑекÑÑа ÐÐСÐÐ Ñимвола,
++ наÑ
одÑÑегоÑÑ Ð¿Ð¾Ð´ кÑÑÑоÑом. (ÐÐ°Ð³Ð»Ð°Ð²Ð½Ð°Ñ A позволÑÐµÑ Ð´Ð¾Ð±Ð°Ð²Ð¸ÑÑ Ð² конеÑ
++ ÑÑÑоки.)
++
++ ÐамеÑание: ÐÑо позволÑÐµÑ Ð¸Ð·Ð±ÐµÐ¶Ð°ÑÑ Ð½Ð°Ð¶Ð°ÑÐ¸Ñ i , поÑледнего Ñимвола, ÑекÑÑа длÑ
++ вÑÑавки, <ESC>, кÑÑÑоÑ-впÑаво, и, наконеÑ, x , пÑоÑÑо Ð´Ð»Ñ Ñого,
++ ÑÑÐ¾Ð±Ñ Ð´Ð¾Ð±Ð°Ð²Ð¸ÑÑ ÑеÑÑ Ð² ÐºÐ¾Ð½ÐµÑ ÑÑÑоки!
++
++ 3. ТепеÑÑ Ð·Ð°Ð²ÐµÑÑиÑе пеÑвÑÑ ÑÑÑокÑ. ÐамеÑÑÑе Ñакже, ÑÑо добавление ÑÑо в
++ ÑоÑноÑÑи Ñо же Ñамое, ÑÑо и Ñежим вÑÑавки, за иÑклÑÑением позиÑии, в
++ коÑоÑÑÑ Ð±ÑÐ´ÐµÑ Ð²ÑÑавлен ÑекÑÑ.
++
++ ---> ÐÑа ÑÑÑоÑка Ð¿Ð¾Ð·Ð²Ð¾Ð»Ð¸Ñ Ðам попÑакÑиковаÑÑÑÑ
++ ---> ÐÑа ÑÑÑоÑка Ð¿Ð¾Ð·Ð²Ð¾Ð»Ð¸Ñ Ðам попÑакÑиковаÑÑÑÑ Ð² добавлении ÑекÑÑа в конеÑ
++ ÑÑÑоки.
++ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
++ УÑок 6.3: ÐЩРÐÐÐРСÐÐСÐÐ ÐÐÐÐÐЫ
++
++
++ ** ÐабеÑиÑе заглавнÑÑ R Ð´Ð»Ñ Ð·Ð°Ð¼ÐµÐ½Ñ Ð±Ð¾Ð»ÐµÐµ, Ñем одного Ñимвола. **
++
++ 1. ÐеÑемеÑÑиÑе кÑÑÑÐ¾Ñ Ð²Ð½Ð¸Ð·, к ÑÑÑоке, помеÑенной --->.
++
++ 2. РаÑположиÑе кÑÑÑÐ¾Ñ Ð² наÑале пеÑвого Ñлова, оÑлиÑаÑÑегоÑÑ Ð¾Ñ
++ ÑооÑвеÑÑÑвÑÑÑего в ÑледÑÑÑей ÑÑÑоке, помеÑенной ---> (Ñлово 'поÑледней').
++
++ 3. ТепеÑÑ Ð½Ð°Ð±ÐµÑиÑе R и замениÑе оÑÑаÑок ÑекÑÑа в пеÑвой ÑÑÑоке, набÑав
++ повеÑÑ
ÑÑаÑого ÑекÑÑа Ñак, ÑÑÐ¾Ð±Ñ Ð¾Ð±Ðµ ÑÑÑоки ÑÑали одинаковÑми.
++
++ ---> ÐеÑвÑÑ ÑÑÑÐ¾ÐºÑ Ð¼Ð¾Ð¶Ð½Ð¾ ÑÑавнÑÑÑ Ñ Ð¿Ð¾Ñледней, иÑполÑзÑÑ ÐºÐ»Ð°Ð²Ð¸Ñи.
++ ---> ÐеÑвÑÑ ÑÑÑÐ¾ÐºÑ Ð¼Ð¾Ð¶Ð½Ð¾ ÑÑавнÑÑÑ Ñ Ð²ÑоÑой, иÑполÑзÑÑ R и набÑав новÑй ÑекÑÑ.
++
++ 4. ÐбÑаÑиÑе внимание, ÑÑо пÑи нажаÑии <ESC> Ð´Ð»Ñ Ð·Ð°Ð²ÐµÑÑениÑ, лÑбой
++ не измененнÑй ÑекÑÑ ÑоÑ
ÑаниÑÑÑ.
++
++
++
++
++ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
++ УÑок 6.4: УСТÐÐÐÐÐÐ ÐÐÐ ÐÐÐТРÐÐ
++
++
++ ** УÑÑановим паÑамеÑÑÑ Ñак, ÑÑÐ¾Ð±Ñ Ð¸Ð³Ð½Ð¾ÑиÑоваÑÑ ÑегиÑÑÑ Ð¿Ñи поиÑке или замене **
++
++
++ 1. ÐоиÑиÑе Ñлово 'игноÑиÑоваÑÑ', набÑав:
++ /игноÑиÑоваÑÑ
++ ÐовÑоÑиÑе поиÑк неÑколÑко Ñаз, Ð½Ð°Ð¶Ð¸Ð¼Ð°Ñ ÐºÐ»Ð°Ð²Ð¸ÑÑ n
++
++ 2. ÐклÑÑиÑе паÑамеÑÑ 'ic' (ÐгноÑиÑоваÑÑ ÑегиÑÑÑ), набÑав:
++ :set ic
++
++ 3. ТепеÑÑ Ñнова ÑделайÑе поиÑк Ñлова 'игноÑиÑоваÑÑ', нажав: n
++ ÐовÑоÑиÑе поиÑк неÑколÑко Ñаз, Ð½Ð°Ð¶Ð¸Ð¼Ð°Ñ ÐºÐ»Ð°Ð²Ð¸ÑÑ n
++
++ 4. ÐклÑÑиÑе паÑамеÑÑÑ 'hlsearch' и 'incsearch':
++ :set hls is
++
++ 5. ТепеÑÑ Ð¾Ð¿ÑÑÑ Ð²Ð²ÐµÐ´Ð¸Ñе ÐºÐ¾Ð¼Ð°Ð½Ð´Ñ Ð¿Ð¾Ð¸Ñка и поÑмоÑÑиÑе, ÑÑо полÑÑиÑÑÑ:
++ /игноÑиÑоваÑÑ
++
++
++
++ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
++ Ð ÐÐЮÐРУРÐÐÐ 6
++
++
++ 1. ÐажаÑие o ÑÐ¾Ð·Ð´Ð°ÐµÑ ÑÑÑÐ¾ÐºÑ ÐÐÐРкÑÑÑоÑа и пеÑемеÑÐ°ÐµÑ ÐºÑÑÑÐ¾Ñ Ð² нее в Ñежиме
++ вÑÑавки.
++ ÐажаÑие заглавной O ÑÐ¾Ð·Ð´Ð°ÐµÑ ÑÑÑÐ¾ÐºÑ ÐЫШРÑÑÑоки, в коÑоÑой наÑ
одиÑÑÑ
++ кÑÑÑоÑ.
++
++ 2. ÐабеÑиÑе a Ð´Ð»Ñ Ð²ÑÑавки ÑекÑÑа ÐÐСÐÐ Ñимвола, на коÑоÑом наÑ
одиÑÑÑ ÐºÑÑÑоÑ.
++ ÐажаÑие заглавной A авÑомаÑиÑеÑки пеÑемеÑÐ°ÐµÑ ÐÐ°Ñ Ð´Ð»Ñ Ð´Ð¾Ð±Ð°Ð²Ð»ÐµÐ½Ð¸Ñ ÑекÑÑа
++ в ÐºÐ¾Ð½ÐµÑ ÑÑÑоки.
++
++ 3. ÐажаÑие заглавной R пеÑÐµÐ²Ð¾Ð´Ð¸Ñ ÐÐ°Ñ Ð² Ñежим Ð·Ð°Ð¼ÐµÐ½Ñ Ð´Ð¾ ÑеÑ
поÑ, пока не
++ бÑÐ´ÐµÑ Ð½Ð°Ð¶Ð°Ñа клавиÑа <ESC> Ð´Ð»Ñ Ð·Ð°Ð²ÐµÑÑениÑ.
++
++ 4. ÐабÑав ":set xxx" Ð²Ñ ÑможеÑе вклÑÑиÑÑ Ð¿Ð°ÑамеÑÑ "xxx"
++
++
++
++
++
++
++
++ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
++ УÑок 7: ÐÐÐÐÐÐЫ ÐÐÐУЧÐÐÐЯ ÐСТРÐÐÐÐÐРСÐÐ ÐÐÐÐ
++
++ ** ÐÑполÑзÑйÑе вÑÑÑоеннÑÑ ÑпÑавоÑнÑÑ ÑиÑÑÐµÐ¼Ñ **
++
++ Vim Ð¾Ð±Ð»Ð°Ð´Ð°ÐµÑ Ð¼Ð¾Ñной вÑÑÑоенной ÑпÑавоÑной ÑиÑÑемой. ÐÐ»Ñ Ð½Ð°Ñала попÑобÑйÑе
++ один из ÑÑеÑ
ваÑианÑов:
++ - нажмиÑе клавиÑÑ <HELP> (еÑли ÑÐ°ÐºÐ¾Ð²Ð°Ñ Ð¸Ð¼ÐµÐµÑÑÑ Ð½Ð° клавиаÑÑÑе)
++ - нажмиÑе клавиÑÑ <F1> (еÑли ÑÐ°ÐºÐ¾Ð²Ð°Ñ Ð¸Ð¼ÐµÐµÑÑÑ Ð½Ð° клавиаÑÑÑе)
++ - набеÑиÑе :help <ENTER>
++
++ ÐабеÑиÑе :q <ENTER> ÑÑÐ¾Ð±Ñ Ð·Ð°ÐºÑÑÑÑ Ð¾ÐºÐ½Ð¾ ÑпÑавки.
++
++ ÐÑ Ð¼Ð¾Ð¶ÐµÑе найÑи ÑпÑÐ°Ð²ÐºÑ Ð´Ð»Ñ Ð»Ñбого понÑÑÐ¸Ñ Ð¸Ð»Ð¸ командÑ, пÑоÑÑо задав
++ ÑооÑвеÑÑÑвÑÑÑий аÑгÑÐ¼ÐµÐ½Ñ ÐºÐ¾Ð¼Ð°Ð½Ð´Ðµ ":help". ÐопÑобÑйÑе ÑледÑÑÑее (не забÑдÑÑе
++ нажаÑÑ <ENTER>):
++
++ :help w
++ :help c_<T
++ :help insert-index
++
++
++
++
++
++ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
++ УÑок 8: СÐÐÐÐÐÐРСТÐРТÐÐÐÐРСÐÐ ÐÐТÐ
++
++ ** ÐклÑÑим возможноÑÑи Vim **
++
++ Vim Ð¸Ð¼ÐµÐµÑ Ð½Ð°Ð¼Ð½Ð¾Ð³Ð¾ болÑÑе возможноÑÑей, Ñем Vi, однако болÑÑинÑÑвао из ниÑ
++ вÑклÑÑÐµÐ½Ñ Ð¿Ð¾ ÑмолÑаниÑ. ÐÐ»Ñ Ñого, ÑÑÐ¾Ð±Ñ Ð½Ð°ÑаÑÑ Ð¸ÑполÑзоваÑÑ Ð½Ð¾Ð²Ñе
++ возможноÑÑи Ðам ÑледÑÐµÑ ÑоздаÑÑ Ñайл "vimrc".
++
++ 1. ÐÑÑедакÑиÑÑйÑе Ñайл "vimrc", его ÑаÑположение завиÑÐ¸Ñ Ð¾Ñ Ð¸ÑполÑзÑемой
++ ÑиÑÑемÑ:
++
++ :edit ~/.vimrc Ð´Ð»Ñ Unix
++ :edit $VIM/_vimrc Ð´Ð»Ñ MS-Windows
++
++ 2. ТепеÑÑ Ð¿ÑоÑиÑайÑе пÑÐ¸Ð¼ÐµÑ Ñайла "vimrc":
++
++ :read $VIMRUNTIME/vimrc_example.vim
++
++ 3. ÐапиÑиÑе Ñайл:
++
++ :write
++
++ ТепеÑÑ Ð¿Ñи ÑледÑÑÑем запÑÑке Vim бÑÐ´ÐµÑ Ð²ÐºÐ»ÑÑена подÑвеÑка ÑинÑакÑиÑа. ÐÑе
++ наÑÑÑойки, пÑедпоÑиÑаемÑе Ðами, могÑÑ Ð±ÑÑÑ Ð´Ð¾Ð±Ð°Ð²Ð»ÐµÐ½Ñ Ð² Ñайл "vimrc".
++
++ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
++ Ðа ÑÑом завеÑÑаеÑÑÑ Ð£Ñебник Vim. Ðн бÑл пÑедназнаÑен Ð´Ð»Ñ Ñого, ÑÑÐ¾Ð±Ñ Ð´Ð°ÑÑ
++ обÑее пÑедÑÑавление о ÑедакÑоÑе Vim, доÑÑаÑоÑное Ð´Ð»Ñ Ñого, ÑÑÐ¾Ð±Ñ Ñ Ð»ÐµÐ³ÐºÐ¾ÑÑÑÑ
++ иÑполÑзоваÑÑ ÐµÐ³Ð¾. УÑебник далек Ð¾Ñ Ð¿Ð¾Ð»Ð½Ð¾ÑÑ, поÑколÑÐºÑ Vim Ð¸Ð¼ÐµÐµÑ Ð¾ÑÐµÐ½Ñ Ð¼Ð½Ð¾Ð³Ð¾
++ команд. ÐÑоÑиÑайÑе ÑепеÑÑ ÑÑководÑÑво полÑзоваÑелÑ: ":help user-manual".
++
++ ÐÐ»Ñ Ð´Ð°Ð»ÑнейÑего ÑÑÐµÐ½Ð¸Ñ ÑекомендÑеÑÑÑ ÐºÐ½Ð¸Ð³Ð°:
++ Vim - Vi Improved - ÐвÑоÑ: Steve Oualline
++ ÐздаÑелÑ: New Riders
++ ÐÑа книга полноÑÑÑÑ Ð¿Ð¾ÑвÑÑена Vim. ÐÑобенно полезна новиÑкам. СодеÑжиÑ
++ множеÑÑво пÑимеÑов и иллÑÑÑÑаÑий.
++ ÐзглÑниÑе на See http://iccf-holland.org/click5.html
++
++ СледÑÑÑÐ°Ñ ÐºÐ½Ð¸Ð³Ð° более поÑÑенного возÑаÑÑа и поÑвÑÑена болÑÑе 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 State
++ University. E-mail: bware at mines.colorado.edu.
++
++ ÐоÑабоÑано Ð´Ð»Ñ Vim Bram Moolenaar.
++
++ ÐеÑевод: ÐндÑей ÐиÑелев <a_kissel at eudoramail.com>, 2002.
++ Translator: Andrey Kiselev <a_kissel at eudoramail.com>, 2002.
++ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+*** ../vim-7.0.079/src/version.c Sat Sep 2 14:53:09 2006
+--- src/version.c Sat Sep 2 14:20:15 2006
+***************
+*** 668,669 ****
+--- 668,671 ----
+ { /* Add new patch number below this line */
++ /**/
++ 79,
+ /**/
+
+--
+Eight Megabytes And Continually Swapping.
+
+ /// Bram Moolenaar -- Bram at Moolenaar.net -- http://www.Moolenaar.net \\\
+/// sponsor Vim, vote for features -- http://www.Vim.org/sponsor/ \\\
+\\\ download, build and distribute -- http://www.A-A-P.org ///
+ \\\ help me help AIDS victims -- http://ICCF-Holland.org ///
Added: trunk/packages/vim/upstream/patches/7.0.080
URL: http://svn.debian.org/wsvn/pkg-vim/trunk/packages/vim/upstream/patches/7.0.080?rev=758&op=file
==============================================================================
--- trunk/packages/vim/upstream/patches/7.0.080 (added)
+++ trunk/packages/vim/upstream/patches/7.0.080 Sun Sep 3 20:52:25 2006
@@ -1,0 +1,57 @@
+To: vim-dev at vim.org
+Subject: Patch 7.0.080
+Fcc: outbox
+From: Bram Moolenaar <Bram at moolenaar.net>
+Mime-Version: 1.0
+Content-Type: text/plain; charset=ISO-8859-1
+Content-Transfer-Encoding: 8bit
+------------
+
+Patch 7.0.080
+Problem: Generating auto/pathdef.c fails for CFLAGS with a backslash.
+Solution: Double backslashes in the string. (Alexey Froloff)
+Files: src/Makefile
+
+
+*** ../vim-7.0.079/src/Makefile Sat Sep 2 15:31:29 2006
+--- src/Makefile Fri Sep 1 21:00:29 2006
+***************
+*** 2261,2267 ****
+ auto/osdef.h: auto/config.h osdef.sh osdef1.h.in osdef2.h.in
+ CC="$(CC) $(OSDEF_CFLAGS)" srcdir=$(srcdir) sh $(srcdir)/osdef.sh
+
+! QUOTESED = sed -e 's/"/\\"/g' -e 's/\\"/"/' -e 's/\\";$$/";/'
+ auto/pathdef.c: Makefile auto/config.mk
+ - at echo creating $@
+ - at echo '/* pathdef.c */' > $@
+--- 2262,2268 ----
+ auto/osdef.h: auto/config.h osdef.sh osdef1.h.in osdef2.h.in
+ CC="$(CC) $(OSDEF_CFLAGS)" srcdir=$(srcdir) sh $(srcdir)/osdef.sh
+
+! QUOTESED = sed -e 's/[\\"]/\\&/g' -e 's/\\"/"/' -e 's/\\";$$/";/'
+ auto/pathdef.c: Makefile auto/config.mk
+ - at echo creating $@
+ - at echo '/* pathdef.c */' > $@
+*** ../vim-7.0.079/src/version.c Sat Sep 2 14:54:17 2006
+--- src/version.c Sat Sep 2 16:35:50 2006
+***************
+*** 668,669 ****
+--- 668,671 ----
+ { /* Add new patch number below this line */
++ /**/
++ 80,
+ /**/
+
+--
+E M A C S
+s e l o h
+c t t n i
+a a t f
+p r t
+e o
+ l
+
+ /// Bram Moolenaar -- Bram at Moolenaar.net -- http://www.Moolenaar.net \\\
+/// sponsor Vim, vote for features -- http://www.Vim.org/sponsor/ \\\
+\\\ download, build and distribute -- http://www.A-A-P.org ///
+ \\\ help me help AIDS victims -- http://ICCF-Holland.org ///
Added: trunk/packages/vim/upstream/patches/7.0.081
URL: http://svn.debian.org/wsvn/pkg-vim/trunk/packages/vim/upstream/patches/7.0.081?rev=758&op=file
==============================================================================
--- trunk/packages/vim/upstream/patches/7.0.081 (added)
+++ trunk/packages/vim/upstream/patches/7.0.081 Sun Sep 3 20:52:25 2006
@@ -1,0 +1,67 @@
+To: vim-dev at vim.org
+Subject: Patch 7.0.081
+Fcc: outbox
+From: Bram Moolenaar <Bram at moolenaar.net>
+Mime-Version: 1.0
+Content-Type: text/plain; charset=ISO-8859-1
+Content-Transfer-Encoding: 8bit
+------------
+
+Patch 7.0.081
+Problem: Command line completion doesn't work for a shell command with an
+ absolute path.
+Solution: Don't use $PATH when there is an absolute path.
+Files: src/ex_getln.c
+
+
+*** ../vim-7.0.080/src/ex_getln.c Wed Aug 16 16:24:58 2006
+--- src/ex_getln.c Sat Sep 2 17:51:03 2006
+***************
+*** 4521,4527 ****
+ flags |= EW_FILE | EW_EXEC;
+
+ /* For an absolute name we don't use $PATH. */
+! if ((pat[0] == '.' && (vim_ispathsep(pat[1])
+ || (pat[1] == '.' && vim_ispathsep(pat[2])))))
+ path = (char_u *)".";
+ else
+--- 4521,4529 ----
+ flags |= EW_FILE | EW_EXEC;
+
+ /* For an absolute name we don't use $PATH. */
+! if (mch_isFullName(pat))
+! path = (char_u *)" ";
+! else if ((pat[0] == '.' && (vim_ispathsep(pat[1])
+ || (pat[1] == '.' && vim_ispathsep(pat[2])))))
+ path = (char_u *)".";
+ else
+***************
+*** 4534,4539 ****
+--- 4536,4544 ----
+ ga_init2(&ga, (int)sizeof(char *), 10);
+ for (s = path; *s != NUL; s = e)
+ {
++ if (*s == ' ')
++ ++s; /* Skip space used for absolute path name. */
++
+ #if defined(MSDOS) || defined(MSWIN) || defined(OS2)
+ e = vim_strchr(s, ';');
+ #else
+*** ../vim-7.0.080/src/version.c Sat Sep 2 16:36:46 2006
+--- src/version.c Sat Sep 2 17:54:35 2006
+***************
+*** 668,669 ****
+--- 668,671 ----
+ { /* Add new patch number below this line */
++ /**/
++ 81,
+ /**/
+
+--
+TALL KNIGHT OF NI: Ni!
+ "Monty Python and the Holy Grail" PYTHON (MONTY) PICTURES LTD
+
+ /// Bram Moolenaar -- Bram at Moolenaar.net -- http://www.Moolenaar.net \\\
+/// sponsor Vim, vote for features -- http://www.Vim.org/sponsor/ \\\
+\\\ download, build and distribute -- http://www.A-A-P.org ///
+ \\\ help me help AIDS victims -- http://ICCF-Holland.org ///
Added: trunk/packages/vim/upstream/patches/7.0.082
URL: http://svn.debian.org/wsvn/pkg-vim/trunk/packages/vim/upstream/patches/7.0.082?rev=758&op=file
==============================================================================
--- trunk/packages/vim/upstream/patches/7.0.082 (added)
+++ trunk/packages/vim/upstream/patches/7.0.082 Sun Sep 3 20:52:25 2006
@@ -1,0 +1,103 @@
+To: vim-dev at vim.org
+Subject: Patch 7.0.082
+Fcc: outbox
+From: Bram Moolenaar <Bram at moolenaar.net>
+Mime-Version: 1.0
+Content-Type: text/plain; charset=ISO-8859-1
+Content-Transfer-Encoding: 8bit
+------------
+
+Patch 7.0.082
+Problem: Calling a function that waits for input may cause List and
+ Dictionary arguments to be freed by the garbage collector.
+Solution: Keep a list of all arguments to internal functions.
+Files: src/eval.c
+
+
+*** ../vim-7.0.081/src/eval.c Sat Sep 2 13:45:01 2006
+--- src/eval.c Sun Sep 3 15:36:10 2006
+***************
+*** 248,253 ****
+--- 248,264 ----
+ };
+
+ /*
++ * Struct used to make a list of all arguments used in internal functions.
++ */
++ typedef struct av_list_item_S av_list_item_T;
++ struct av_list_item_S {
++ av_list_item_T *avl_next;
++ typval_T *avl_argvars;
++ };
++
++ av_list_item_T *argvars_list = NULL;
++
++ /*
+ * Info used by a ":for" loop.
+ */
+ typedef struct
+***************
+*** 6058,6063 ****
+--- 6069,6075 ----
+ int i;
+ funccall_T *fc;
+ int did_free = FALSE;
++ av_list_item_T *av;
+ #ifdef FEAT_WINDOWS
+ tabpage_T *tp;
+ #endif
+***************
+*** 6094,6099 ****
+--- 6106,6116 ----
+ set_ref_in_ht(&fc->l_avars.dv_hashtab, copyID);
+ }
+
++ /* arguments for internal functions */
++ for (av = argvars_list; av != NULL; av = av->avl_next)
++ for (i = 0; av->avl_argvars[i].v_type != VAR_UNKNOWN; ++i)
++ set_ref_in_item(&av->avl_argvars[i], copyID);
++
+ /*
+ * 2. Go through the list of dicts and free items without the copyID.
+ */
+***************
+*** 7537,7545 ****
+--- 7554,7574 ----
+ error = ERROR_TOOMANY;
+ else
+ {
++ av_list_item_T av_list_item;
++
++ /* Add the arguments to the "argvars_list" to avoid the
++ * garbage collector not seeing them. This isn't needed
++ * for user functions, because the arguments are available
++ * in the a: hashtab. */
++ av_list_item.avl_argvars = argvars;
++ av_list_item.avl_next = argvars_list;
++ argvars_list = &av_list_item;
++
+ argvars[argcount].v_type = VAR_UNKNOWN;
+ functions[i].f_func(argvars, rettv);
+ error = ERROR_NONE;
++
++ argvars_list = av_list_item.avl_next;
+ }
+ }
+ }
+*** ../vim-7.0.081/src/version.c Sat Sep 2 17:58:36 2006
+--- src/version.c Sun Sep 3 15:35:16 2006
+***************
+*** 668,669 ****
+--- 668,671 ----
+ { /* Add new patch number below this line */
++ /**/
++ 82,
+ /**/
+
+--
+Just think of all the things we haven't thought of yet.
+
+ /// Bram Moolenaar -- Bram at Moolenaar.net -- http://www.Moolenaar.net \\\
+/// sponsor Vim, vote for features -- http://www.Vim.org/sponsor/ \\\
+\\\ download, build and distribute -- http://www.A-A-P.org ///
+ \\\ help me help AIDS victims -- http://ICCF-Holland.org ///
Added: trunk/packages/vim/upstream/patches/7.0.083
URL: http://svn.debian.org/wsvn/pkg-vim/trunk/packages/vim/upstream/patches/7.0.083?rev=758&op=file
==============================================================================
--- trunk/packages/vim/upstream/patches/7.0.083 (added)
+++ trunk/packages/vim/upstream/patches/7.0.083 Sun Sep 3 20:52:25 2006
@@ -1,0 +1,91 @@
+To: vim-dev at vim.org
+Subject: Patch 7.0.083
+Fcc: outbox
+From: Bram Moolenaar <Bram at moolenaar.net>
+Mime-Version: 1.0
+Content-Type: text/plain; charset=ISO-8859-1
+Content-Transfer-Encoding: 8bit
+------------
+
+Patch 7.0.083
+Problem: Clicking with the mouse on an item for inputlist() doesn't work
+ when 'compatible' is set and/or when 'cmdheight' is more than one.
+ (Christian J. Robinson)
+Solution: Also decrement "lines_left" when 'more' isn't set. Set
+ "cmdline_row" to zero to get all mouse events.
+Files: src/message.c, src/misc1.c
+
+
+*** ../vim-7.0.082/src/message.c Sat May 13 13:12:49 2006
+--- src/message.c Sun Sep 3 14:32:00 2006
+***************
+*** 1925,1931 ****
+ * If screen is completely filled and 'more' is set then wait
+ * for a character.
+ */
+! if (p_more && --lines_left == 0 && State != HITRETURN
+ && !msg_no_more && !exmode_active)
+ {
+ #ifdef FEAT_CON_DIALOG
+--- 1925,1932 ----
+ * If screen is completely filled and 'more' is set then wait
+ * for a character.
+ */
+! --lines_left;
+! if (p_more && lines_left == 0 && State != HITRETURN
+ && !msg_no_more && !exmode_active)
+ {
+ #ifdef FEAT_CON_DIALOG
+*** ../vim-7.0.082/src/misc1.c Tue Aug 15 22:26:04 2006
+--- src/misc1.c Sun Sep 3 16:33:48 2006
+***************
+*** 3196,3209 ****
+ else
+ MSG_PUTS(_("Choice number (<Enter> cancels): "));
+
+! /* Set the state such that text can be selected/copied/pasted. */
+ save_cmdline_row = cmdline_row;
+! cmdline_row = Rows - 1;
+ save_State = State;
+! if (mouse_used == NULL)
+! State = CMDLINE;
+! else
+! State = NORMAL;
+
+ i = get_number(TRUE, mouse_used);
+ if (KeyTyped)
+--- 3196,3207 ----
+ else
+ MSG_PUTS(_("Choice number (<Enter> cancels): "));
+
+! /* Set the state such that text can be selected/copied/pasted and we still
+! * get mouse events. */
+ save_cmdline_row = cmdline_row;
+! cmdline_row = 0;
+ save_State = State;
+! State = CMDLINE;
+
+ i = get_number(TRUE, mouse_used);
+ if (KeyTyped)
+*** ../vim-7.0.082/src/version.c Sun Sep 3 15:38:02 2006
+--- src/version.c Sun Sep 3 16:36:58 2006
+***************
+*** 668,669 ****
+--- 668,671 ----
+ { /* Add new patch number below this line */
++ /**/
++ 83,
+ /**/
+
+--
+ "To whoever finds this note -
+ I have been imprisoned by my father who wishes me to marry
+ against my will. Please please please please come and rescue me.
+ I am in the tall tower of Swamp Castle."
+ SIR LAUNCELOT's eyes light up with holy inspiration.
+ "Monty Python and the Holy Grail" PYTHON (MONTY) PICTURES LTD
+
+ /// Bram Moolenaar -- Bram at Moolenaar.net -- http://www.Moolenaar.net \\\
+/// sponsor Vim, vote for features -- http://www.Vim.org/sponsor/ \\\
+\\\ download, build and distribute -- http://www.A-A-P.org ///
+ \\\ help me help AIDS victims -- http://ICCF-Holland.org ///
More information about the pkg-vim-maintainers
mailing list