home *** CD-ROM | disk | FTP | other *** search
/ vim.ftp.fu-berlin.de / 2015-02-03.vim.ftp.fu-berlin.de.tar / vim.ftp.fu-berlin.de / patches / old / 5.5.013 < prev    next >
Encoding:
Internet Message Format  |  1999-10-01  |  6.6 KB

  1. To: vim-dev@vim.org
  2. Subject: Patch 5.5.013
  3. Fcc: outbox
  4. From: Bram Moolenaar <Bram@moolenaar.net>
  5. ------------
  6.  
  7. Patch 5.5.013
  8. Problem:    The ":append" and ":insert" commands allow using a leading
  9.             backslash in a line.  The ":source" command concatenates those
  10.             lines. (Heinlein)
  11. Solution:   Add the 'C' flag in 'cpoptions' to switch off concatenation.
  12. Files:      src/ex_docmd.c, src/option.h, runtime/doc/options.txt,
  13.         runtime/filetype.vim, runtime/scripts.vim
  14.  
  15.  
  16. *** ../vim-5.5.12/src/ex_docmd.c    Sat Sep 25 20:56:51 1999
  17. --- src/ex_docmd.c    Sat Oct  2 15:34:10 1999
  18. ***************
  19. *** 4375,4381 ****
  20.       if (is_vimrc)
  21.       vimrc_found();
  22.   
  23.   #ifdef USE_CRNL
  24.       /* If no automatic file format: Set default to CR-NL. */
  25.       if (*p_ffs == NUL)
  26. --- 4375,4380 ----
  27. ***************
  28. *** 4486,4504 ****
  29.        * one now.
  30.        */
  31.       if (sp->nextline == NULL)
  32. -     {
  33.       line = get_one_sourceline(sp);
  34. -     --sourcing_lnum;
  35. -     }
  36.       else
  37.       {
  38.       line = sp->nextline;
  39.       sp->nextline = NULL;
  40.       }
  41.   
  42. !     /* concatenate lines that start with a backslash */
  43. !     if (line != NULL)
  44.       {
  45.       for (;;)
  46.       {
  47.           sp->nextline = get_one_sourceline(sp);
  48. --- 4485,4504 ----
  49.        * one now.
  50.        */
  51.       if (sp->nextline == NULL)
  52.       line = get_one_sourceline(sp);
  53.       else
  54.       {
  55.       line = sp->nextline;
  56.       sp->nextline = NULL;
  57. +     ++sourcing_lnum;
  58.       }
  59.   
  60. !     /* Only concatenate lines starting with a \ when 'cpoptions' doesn't
  61. !      * contain the 'C' flag. */
  62. !     if (line != NULL && (vim_strchr(p_cpo, CPO_CONCAT) == NULL))
  63.       {
  64. +     /* compensate for the one line read-ahead */
  65. +     --sourcing_lnum;
  66.       for (;;)
  67.       {
  68.           sp->nextline = get_one_sourceline(sp);
  69. *** ../vim-5.5.12/src/option.h    Wed Sep 22 10:06:20 1999
  70. --- src/option.h    Sat Oct  2 14:27:41 1999
  71. ***************
  72. *** 105,110 ****
  73. --- 105,111 ----
  74.   #define CPO_BAR        'b'    /* "\|" ends a mapping */
  75.   #define CPO_BSLASH    'B'    /* backslash in mapping is not special */
  76.   #define CPO_SEARCH    'c'
  77. + #define CPO_CONCAT    'C'    /* Don't concatenate sourced lines */
  78.   #define CPO_DOTTAG    'd'    /* "./tags" in 'tags' is in current dir */
  79.   #define CPO_EXECBUF    'e'
  80.   #define CPO_EMPTYREGION    'E'    /* operating on empty region is an error */
  81. ***************
  82. *** 135,141 ****
  83.   #define CPO_STAR    '*'    /* ":*" means ":@" */
  84.   #define CPO_SPECI    '<'    /* don't recognize <> in mappings */
  85.   #define CPO_DEFAULT    "aABceFs"
  86. ! #define CPO_ALL        "aAbBcdeEfFjJkKlLmoOprsStuwWxy$!%*<"
  87.   
  88.   /* characters for p_ww option: */
  89.   #define WW_ALL        "bshl<>[],~"
  90. --- 136,142 ----
  91.   #define CPO_STAR    '*'    /* ":*" means ":@" */
  92.   #define CPO_SPECI    '<'    /* don't recognize <> in mappings */
  93.   #define CPO_DEFAULT    "aABceFs"
  94. ! #define CPO_ALL        "aAbBcCdeEfFjJkKlLmoOprsStuwWxy$!%*<"
  95.   
  96.   /* characters for p_ww option: */
  97.   #define WW_ALL        "bshl<>[],~"
  98. *** ../vim-5.5.12/runtime/doc/options.txt    Wed Sep 22 10:06:41 1999
  99. --- runtime/doc/options.txt    Sat Oct  2 14:39:29 1999
  100. ***************
  101. *** 1,4 ****
  102. ! *options.txt*   For Vim version 5.5.  Last change: 1999 Sep 18
  103.   
  104.   
  105.             VIM REFERENCE MANUAL    by Bram Moolenaar
  106. --- 1,4 ----
  107. ! *options.txt*   For Vim version 5.5.  Last change: 1999 Oct 02
  108.   
  109.   
  110.             VIM REFERENCE MANUAL    by Bram Moolenaar
  111. ***************
  112. *** 974,979 ****
  113. --- 974,981 ----
  114.                   'B' included:    "\^["    (^[ is a real <Esc>)
  115.                   'B' excluded:   "<Esc>"  (5 characters)
  116.                   ('<' excluded in both cases)
  117. +         C    Do not concatenate sourced lines that start with a
  118. +             backslash.  See |line-continuation|.
  119.           <    Disable the recognition of special key codes in |<>|
  120.               form in mappings, abbreviations, and the "to" part of
  121.               menu commands.  For example, the command
  122. *** ../vim-5.5.12/runtime/filetype.vim    Wed Sep 22 10:06:46 1999
  123. --- runtime/filetype.vim    Sat Oct  2 15:35:48 1999
  124. ***************
  125. *** 1,11 ****
  126.   " Vim support file to detect file types
  127.   "
  128.   " Maintainer:    Bram Moolenaar <Bram@vim.org>
  129. ! " Last change:    1999 Sep 12
  130.   
  131.   if !exists("did_load_filetypes")
  132.   let did_load_filetypes = 1
  133.   
  134.   augroup filetype
  135.   
  136.   " Ignored extensions
  137. --- 1,15 ----
  138.   " Vim support file to detect file types
  139.   "
  140.   " Maintainer:    Bram Moolenaar <Bram@vim.org>
  141. ! " Last change:    1999 Oct 02
  142.   
  143.   if !exists("did_load_filetypes")
  144.   let did_load_filetypes = 1
  145.   
  146. + " Line continuation is used here, remove 'C' from 'cpoptions'
  147. + let ft_cpo_save = &cpo
  148. + set cpo-=C
  149.   augroup filetype
  150.   
  151.   " Ignored extensions
  152. ***************
  153. *** 550,555 ****
  154. --- 562,571 ----
  155.   if has("gui_running") && !exists("did_install_syntax_menu") && &guioptions !~# "M"
  156.     source <sfile>:p:h/menu.vim
  157.   endif
  158. + " Restore 'cpoptions'
  159. + let &cpo = ft_cpo_save
  160. + unlet ft_cpo_save
  161.   
  162.   
  163.   endif " !exists("did_load_filetypes")
  164. *** ../vim-5.5.12/runtime/scripts.vim    Wed Sep 22 10:06:46 1999
  165. --- runtime/scripts.vim    Sat Oct  2 15:38:42 1999
  166. ***************
  167. *** 1,7 ****
  168.   " Vim support file to detect file types in scripts
  169.   "
  170.   " Maintainer:    Bram Moolenaar <Bram@vim.org>
  171. ! " Last change:    1999 Jul 09
  172.   
  173.   " This file is called by an autocommand for every file that has just been
  174.   " loaded into a buffer.  It checks if the type of file can be recognized by
  175. --- 1,7 ----
  176.   " Vim support file to detect file types in scripts
  177.   "
  178.   " Maintainer:    Bram Moolenaar <Bram@vim.org>
  179. ! " Last change:    1999 Oct 02
  180.   
  181.   " This file is called by an autocommand for every file that has just been
  182.   " loaded into a buffer.  It checks if the type of file can be recognized by
  183. ***************
  184. *** 17,22 ****
  185. --- 17,26 ----
  186.   " Only do this when the FileType autocommand has not been triggered yet
  187.   if !did_filetype()
  188.   
  189. + " Line continuation is used here, remove 'C' from 'cpoptions'
  190. + let scr_cpo_save = &cpo
  191. + set cpo-=C
  192.   " Bourne-like shell scripts: sh ksh bash
  193.   if getline(1) =~ '^#!.*[/\\][bk]\=a\=sh\>'
  194.     if exists("is_bash")
  195. ***************
  196. *** 125,135 ****
  197. --- 129,147 ----
  198.   elseif getline(1) =~ '^\*\*\*\*  Purify'
  199.     set ft=purifylog
  200.   
  201. + " XML
  202. + elseif getline(1) =~ '<?\s*xml.*?>'
  203. +   set ft=xml
  204.   " XXD output
  205.   elseif getline(1) =~ '^\x\{7}: \x\{4} \x\{4} '
  206.     set ft=xxd
  207.   
  208.   endif
  209. + " Restore 'cpoptions'
  210. + let &cpo = scr_cpo_save
  211. + unlet scr_cpo_save
  212.   
  213.   endif " !did_filetype()
  214.   
  215. *** ../vim-5.5.12/src/version.c    Sat Oct  2 16:00:01 1999
  216. --- src/version.c    Sat Oct  2 15:59:39 1999
  217. ***************
  218. *** 420,420 ****
  219. --- 420,421 ----
  220.   {   /* Add new patch number below this line */
  221. +     13,
  222.  
  223. --
  224. ARTHUR: This new learning amazes me, Sir Bedevere.  Explain again how sheep's
  225.         bladders may be employed to prevent earthquakes.
  226.                  "Monty Python and the Holy Grail" PYTHON (MONTY) PICTURES LTD
  227.  
  228. --/-/---- Bram Moolenaar ---- Bram@moolenaar.net ---- Bram@vim.org ---\-\--
  229.   \ \    www.vim.org/iccf      www.moolenaar.net       www.vim.org    / /
  230.