- Update to vim-7.1

- drop ~230 patches ;-)
This commit is contained in:
Karsten Hopp 2007-06-05 10:46:37 +00:00
parent e74cc66d97
commit 44a6bac34e
244 changed files with 32 additions and 28696 deletions

52
7.0.001
View File

@ -1,52 +0,0 @@
To: vim-dev@vim.org
Subject: Patch 7.0.001
Fcc: outbox
From: Bram Moolenaar <Bram@moolenaar.net>
Mime-Version: 1.0
Content-Type: text/plain; charset=ISO-8859-1
Content-Transfer-Encoding: 8bit
------------
Patch 7.0.001
Problem: ":set spellsuggest+=10" does not work. (Suresh Govindachar)
Solution: Add P_COMMA to the 'spellsuggest' flags.
Files: src/option.c
*** ../vim-7.0.000/src/option.c Wed May 3 23:26:04 2006
--- src/option.c Sun May 7 17:54:46 2006
***************
*** 2294,2300 ****
{(char_u *)0L, (char_u *)0L}
#endif
},
! {"spellsuggest", "sps", P_STRING|P_VI_DEF|P_EXPAND|P_SECURE,
#ifdef FEAT_SPELL
(char_u *)&p_sps, PV_NONE,
{(char_u *)"best", (char_u *)0L}
--- 2294,2300 ----
{(char_u *)0L, (char_u *)0L}
#endif
},
! {"spellsuggest", "sps", P_STRING|P_VI_DEF|P_EXPAND|P_SECURE|P_COMMA,
#ifdef FEAT_SPELL
(char_u *)&p_sps, PV_NONE,
{(char_u *)"best", (char_u *)0L}
*** ../vim-7.0.000/src/version.c Wed May 3 00:04:24 2006
--- src/version.c Tue May 9 14:23:20 2006
***************
*** 668,669 ****
--- 668,671 ----
{ /* Add new patch number below this line */
+ /**/
+ 1,
/**/
--
hundred-and-one symptoms of being an internet addict:
70. ISDN lines are added to your house on a hourly basis
/// Bram Moolenaar -- Bram@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 ///

70
7.0.002
View File

@ -1,70 +0,0 @@
To: vim-dev@vim.org
Subject: Patch 7.0.002
Fcc: outbox
From: Bram Moolenaar <Bram@moolenaar.net>
Mime-Version: 1.0
Content-Type: text/plain; charset=ISO-8859-1
Content-Transfer-Encoding: 8bit
------------
Patch 7.0.002
Problem: C omni completion has a problem with tags files with a path
containing "#" or "%".
Solution: Escape these characters. (Sebastian Baberowski)
Files: runtime/autoload/ccomplete.vim
*** ../vim-7.0.001/runtime/autoload/ccomplete.vim Wed May 10 15:22:54 2006
--- runtime/autoload/ccomplete.vim Mon May 8 13:52:07 2006
***************
*** 1,7 ****
" Vim completion script
" Language: C
" Maintainer: Bram Moolenaar <Bram@vim.org>
! " Last Change: 2006 May 03
" This function is used for the 'omnifunc' option.
--- 1,7 ----
" Vim completion script
" Language: C
" Maintainer: Bram Moolenaar <Bram@vim.org>
! " Last Change: 2006 May 08
" This function is used for the 'omnifunc' option.
***************
*** 458,464 ****
" member.
function! s:StructMembers(typename, items, all)
" Todo: What about local structures?
! let fnames = join(map(tagfiles(), 'escape(v:val, " \\")'))
if fnames == ''
return []
endif
--- 458,464 ----
" member.
function! s:StructMembers(typename, items, all)
" Todo: What about local structures?
! let fnames = join(map(tagfiles(), 'escape(v:val, " \\#%")'))
if fnames == ''
return []
endif
*** ../vim-7.0.001/src/version.c Wed May 10 15:22:50 2006
--- src/version.c Wed May 10 15:24:42 2006
***************
*** 668,669 ****
--- 668,671 ----
{ /* Add new patch number below this line */
+ /**/
+ 2,
/**/
--
From "know your smileys":
=):-) Uncle Sam
/// Bram Moolenaar -- Bram@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 ///

62
7.0.003
View File

@ -1,62 +0,0 @@
To: vim-dev@vim.org
Subject: Patch 7.0.003
Fcc: outbox
From: Bram Moolenaar <Bram@moolenaar.net>
Mime-Version: 1.0
Content-Type: text/plain; charset=ISO-8859-1
Content-Transfer-Encoding: 8bit
------------
Patch 7.0.003
Problem: GUI: clicking in the lower part of a label in the tab pages line
while 'mousefocus' is set may warp the mouse pointer. (Robert
Webb)
Solution: Check for a negative mouse position.
Files: src/gui.c
*** ../vim-7.0.002/src/gui.c Wed May 10 15:22:49 2006
--- src/gui.c Mon May 8 16:31:49 2006
***************
*** 4603,4613 ****
/* Don't move the mouse when it's left or right of the Vim window */
if (x < 0 || x > Columns * gui.char_width)
return;
# ifdef FEAT_WINDOWS
! if (Y_2_ROW(y) >= tabline_height())
! # else
! if (y >= 0)
# endif
wp = xy2win(x, y);
if (wp != curwin && wp != NULL) /* If in other than current window */
{
--- 4603,4613 ----
/* Don't move the mouse when it's left or right of the Vim window */
if (x < 0 || x > Columns * gui.char_width)
return;
+ if (y >= 0
# ifdef FEAT_WINDOWS
! && Y_2_ROW(y) >= tabline_height()
# endif
+ )
wp = xy2win(x, y);
if (wp != curwin && wp != NULL) /* If in other than current window */
{
*** ../vim-7.0.002/src/version.c Wed May 10 15:25:45 2006
--- src/version.c Wed May 10 17:12:27 2006
***************
*** 668,669 ****
--- 668,671 ----
{ /* Add new patch number below this line */
+ /**/
+ 3,
/**/
--
From "know your smileys":
2B|^2B Message from Shakespeare
/// Bram Moolenaar -- Bram@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 ///

52
7.0.004
View File

@ -1,52 +0,0 @@
To: vim-dev@vim.org
Subject: Patch 7.0.004
Fcc: outbox
From: Bram Moolenaar <Bram@moolenaar.net>
Mime-Version: 1.0
Content-Type: text/plain; charset=ISO-8859-1
Content-Transfer-Encoding: 8bit
------------
Patch 7.0.004
Problem: Compiler warning for debug_saved used before set. (Todd Blumer)
Solution: Remove the "else" for calling save_dbg_stuff().
Files: src/ex_docmd.c
*** ../vim-7.0.003/src/ex_docmd.c Wed May 10 15:22:49 2006
--- src/ex_docmd.c Mon May 8 16:43:34 2006
***************
*** 833,839 ****
* If requested, store and reset the global values controlling the
* exception handling (used when debugging).
*/
! else if (flags & DOCMD_EXCRESET)
save_dbg_stuff(&debug_saved);
initial_trylevel = trylevel;
--- 833,839 ----
* If requested, store and reset the global values controlling the
* exception handling (used when debugging).
*/
! if (flags & DOCMD_EXCRESET)
save_dbg_stuff(&debug_saved);
initial_trylevel = trylevel;
*** ../vim-7.0.003/src/version.c Wed May 10 17:12:51 2006
--- src/version.c Wed May 10 17:14:34 2006
***************
*** 668,669 ****
--- 668,671 ----
{ /* Add new patch number below this line */
+ /**/
+ 4,
/**/
--
From "know your smileys":
:-D Big smile
/// Bram Moolenaar -- Bram@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 ///

56
7.0.005
View File

@ -1,56 +0,0 @@
To: vim-dev@vim.org
Subject: Patch 7.0.005 (extra)
Fcc: outbox
From: Bram Moolenaar <Bram@moolenaar.net>
Mime-Version: 1.0
Content-Type: text/plain; charset=ISO-8859-1
Content-Transfer-Encoding: 8bit
------------
Patch 7.0.005 (extra)
Problem: Win32: The installer doesn't remove the "autoload" and "spell"
directories. (David Fishburn)
Solution: Add the directories to the list to be removed.
Files: nsis/gvim.nsi
*** ../vim-7.0.004/nsis/gvim.nsi Wed May 10 15:22:50 2006
--- nsis/gvim.nsi Mon May 8 17:57:28 2006
***************
*** 391,396 ****
--- 391,397 ----
ClearErrors
# Remove everything but *.dll files. Avoids that
# a lot remains when gvimext.dll cannot be deleted.
+ RMDir /r $0\autoload
RMDir /r $0\colors
RMDir /r $0\compiler
RMDir /r $0\doc
***************
*** 398,403 ****
--- 399,405 ----
RMDir /r $0\indent
RMDir /r $0\macros
RMDir /r $0\plugin
+ RMDir /r $0\spell
RMDir /r $0\syntax
RMDir /r $0\tools
RMDir /r $0\tutor
*** ../vim-7.0.004/src/version.c Wed May 10 17:15:05 2006
--- src/version.c Wed May 10 17:24:02 2006
***************
*** 668,669 ****
--- 668,671 ----
{ /* Add new patch number below this line */
+ /**/
+ 5,
/**/
--
From "know your smileys":
:-& Eating spaghetti
/// Bram Moolenaar -- Bram@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 ///

46
7.0.006
View File

@ -1,46 +0,0 @@
To: vim-dev@vim.org
Subject: Patch 7.0.006
Fcc: outbox
From: Bram Moolenaar <Bram@moolenaar.net>
Mime-Version: 1.0
Content-Type: text/plain; charset=ISO-8859-1
Content-Transfer-Encoding: 8bit
------------
Patch 7.0.006
Problem: Mac: "make shadow" doesn't make a link for infplist.xml. (Axel
Kielhorn)
Solution: Make the link.
Files: src/Makefile
*** ../vim-7.0.005/src/Makefile Wed May 10 15:22:49 2006
--- src/Makefile Wed May 10 17:26:19 2006
***************
*** 2177,2182 ****
--- 2177,2183 ----
cd $(SHADOWDIR)/xxd; ln -s ../../xxd/*.[ch] ../../xxd/Make* .
if test -d $(RSRC_DIR); then \
cd $(SHADOWDIR); \
+ ln -s ../infplist.xml .; \
ln -s ../$(RSRC_DIR) ../os_mac.rsr.hqx ../dehqx.py .; \
fi
mkdir $(SHADOWDIR)/testdir
*** ../vim-7.0.005/src/version.c Wed May 10 17:24:26 2006
--- src/version.c Wed May 10 17:26:09 2006
***************
*** 668,669 ****
--- 668,671 ----
{ /* Add new patch number below this line */
+ /**/
+ 6,
/**/
--
From "know your smileys":
@:-() Elvis Presley
/// Bram Moolenaar -- Bram@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 ///

68
7.0.007
View File

@ -1,68 +0,0 @@
To: vim-dev@vim.org
Subject: Patch 7.0.007
Fcc: outbox
From: Bram Moolenaar <Bram@moolenaar.net>
Mime-Version: 1.0
Content-Type: text/plain; charset=ISO-8859-1
Content-Transfer-Encoding: 8bit
------------
Patch 7.0.007
Problem: AIX: compiling fails for message.c. (Ruediger Hornig)
Solution: Move the #if outside of memchr().
Files: src/message.c
*** ../vim-7.0.006/src/message.c Wed May 10 15:22:50 2006
--- src/message.c Tue May 9 10:36:56 2006
***************
*** 4175,4189 ****
str_arg_l = 0;
else
{
! /* memchr on HP does not like n > 2^31 !!! */
! char *q = memchr(str_arg, '\0',
#if SIZEOF_INT <= 2
! precision
#else
! precision <= (size_t)0x7fffffffL ? precision
! : (size_t)0x7fffffffL
#endif
- );
str_arg_l = (q == NULL) ? precision : q - str_arg;
}
break;
--- 4175,4190 ----
str_arg_l = 0;
else
{
! /* Don't put the #if inside memchr(), it can be a
! * macro. */
#if SIZEOF_INT <= 2
! char *q = memchr(str_arg, '\0', precision);
#else
! /* memchr on HP does not like n > 2^31 !!! */
! char *q = memchr(str_arg, '\0',
! precision <= (size_t)0x7fffffffL ? precision
! : (size_t)0x7fffffffL);
#endif
str_arg_l = (q == NULL) ? precision : q - str_arg;
}
break;
*** ../vim-7.0.006/src/version.c Wed May 10 17:26:37 2006
--- src/version.c Wed May 10 17:36:03 2006
***************
*** 668,669 ****
--- 668,671 ----
{ /* Add new patch number below this line */
+ /**/
+ 7,
/**/
--
Momento mori, ergo carpe diem
/// Bram Moolenaar -- Bram@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 ///

74
7.0.008
View File

@ -1,74 +0,0 @@
To: vim-dev@vim.org
Subject: Patch 7.0.008
Fcc: outbox
From: Bram Moolenaar <Bram@moolenaar.net>
Mime-Version: 1.0
Content-Type: text/plain; charset=ISO-8859-1
Content-Transfer-Encoding: 8bit
------------
Patch 7.0.008
Problem: Can't call a function that uses both <SID> and {expr}. (Thomas)
Solution: Check both the expanded and unexpanded name for <SID>.
Files: src/eval.c
*** ../vim-7.0.007/src/eval.c Wed May 10 15:22:49 2006
--- src/eval.c Wed May 10 12:11:42 2006
***************
*** 11372,11378 ****
if (argvars[2].v_type != VAR_UNKNOWN)
{
char_u *xp_name;
! int xp_namelen;
long argt;
rettv->vval.v_string = NULL;
--- 11372,11378 ----
if (argvars[2].v_type != VAR_UNKNOWN)
{
char_u *xp_name;
! int xp_namelen;
long argt;
rettv->vval.v_string = NULL;
***************
*** 18963,18969 ****
else if (lead > 0)
{
lead = 3;
! if (eval_fname_sid(lv.ll_exp_name != NULL ? lv.ll_exp_name : *pp))
{
/* It's "s:" or "<SID>" */
if (current_SID <= 0)
--- 18963,18970 ----
else if (lead > 0)
{
lead = 3;
! if ((lv.ll_exp_name != NULL && eval_fname_sid(lv.ll_exp_name))
! || eval_fname_sid(*pp))
{
/* It's "s:" or "<SID>" */
if (current_SID <= 0)
*** ../vim-7.0.007/src/version.c Wed May 10 17:38:05 2006
--- src/version.c Wed May 10 17:39:46 2006
***************
*** 668,669 ****
--- 668,671 ----
{ /* Add new patch number below this line */
+ /**/
+ 8,
/**/
--
From "know your smileys":
% Bike accident. A bit far-fetched, I suppose; although...
o _ _ _
_o /\_ _ \\o (_)\__/o (_)
_< \_ _>(_) (_)/<_ \_| \ _|/' \/
(_)>(_) (_) (_) (_) (_)' _\o_
/// Bram Moolenaar -- Bram@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 ///

54
7.0.009
View File

@ -1,54 +0,0 @@
To: vim-dev@vim.org
Subject: Patch 7.0.009
Fcc: outbox
From: Bram Moolenaar <Bram@moolenaar.net>
Mime-Version: 1.0
Content-Type: text/plain; charset=ISO-8859-1
Content-Transfer-Encoding: 8bit
------------
Patch 7.0.009
Problem: ml_get errors with both 'sidescroll' and 'spell' set.
Solution: Use ml_get_buf() instead of ml_get(), get the line from the right
buffer, not the current one.
Files: src/spell.c
*** ../vim-7.0.008/src/spell.c Wed May 10 15:22:50 2006
--- src/spell.c Tue May 9 18:55:04 2006
***************
*** 2108,2114 ****
* possible. */
STRCPY(buf, line);
if (lnum < wp->w_buffer->b_ml.ml_line_count)
! spell_cat_line(buf + STRLEN(buf), ml_get(lnum + 1), MAXWLEN);
p = buf + skip;
endp = buf + len;
--- 2108,2115 ----
* possible. */
STRCPY(buf, line);
if (lnum < wp->w_buffer->b_ml.ml_line_count)
! spell_cat_line(buf + STRLEN(buf),
! ml_get_buf(wp->w_buffer, lnum + 1, FALSE), MAXWLEN);
p = buf + skip;
endp = buf + len;
*** ../vim-7.0.008/src/version.c Wed May 10 17:40:17 2006
--- src/version.c Wed May 10 17:50:20 2006
***************
*** 668,669 ****
--- 668,671 ----
{ /* Add new patch number below this line */
+ /**/
+ 9,
/**/
--
I AM THANKFUL...
...for the taxes that I pay because it means that I am employed.
/// Bram Moolenaar -- Bram@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 ///

118
7.0.010
View File

@ -1,118 +0,0 @@
To: vim-dev@vim.org
Subject: Patch 7.0.010
Fcc: outbox
From: Bram Moolenaar <Bram@moolenaar.net>
Mime-Version: 1.0
Content-Type: text/plain; charset=ISO-8859-1
Content-Transfer-Encoding: 8bit
------------
Patch 7.0.010
Problem: The spellfile plugin required typing login name and password.
Solution: Use "anonymous" and "vim7user" by default. No need to setup a
.netrc file.
Files: runtime/autoload/spellfile.vim
*** ../vim-7.0.009/runtime/autoload/spellfile.vim Wed May 10 15:22:54 2006
--- runtime/autoload/spellfile.vim Wed May 10 17:55:15 2006
***************
*** 1,9 ****
" Vim script to download a missing spell file
" Maintainer: Bram Moolenaar <Bram@vim.org>
! " Last Change: 2006 Feb 01
if !exists('g:spellfile_URL')
! let g:spellfile_URL = 'ftp://ftp.vim.org/pub/vim/unstable/runtime/spell'
endif
let s:spellfile_URL = '' " Start with nothing so that s:donedict is reset.
--- 1,9 ----
" Vim script to download a missing spell file
" Maintainer: Bram Moolenaar <Bram@vim.org>
! " Last Change: 2006 May 10
if !exists('g:spellfile_URL')
! let g:spellfile_URL = 'ftp://ftp.vim.org/pub/vim/runtime/spell'
endif
let s:spellfile_URL = '' " Start with nothing so that s:donedict is reset.
***************
*** 61,73 ****
new
setlocal bin
echo 'Downloading ' . fname . '...'
! exe 'Nread ' g:spellfile_URL . '/' . fname
if getline(2) !~ 'VIMspell'
" Didn't work, perhaps there is an ASCII one.
g/^/d
let fname = a:lang . '.ascii.spl'
echo 'Could not find it, trying ' . fname . '...'
! exe 'Nread ' g:spellfile_URL . '/' . fname
if getline(2) !~ 'VIMspell'
echo 'Sorry, downloading failed'
bwipe!
--- 61,73 ----
new
setlocal bin
echo 'Downloading ' . fname . '...'
! call spellfile#Nread(fname)
if getline(2) !~ 'VIMspell'
" Didn't work, perhaps there is an ASCII one.
g/^/d
let fname = a:lang . '.ascii.spl'
echo 'Could not find it, trying ' . fname . '...'
! call spellfile#Nread(fname)
if getline(2) !~ 'VIMspell'
echo 'Sorry, downloading failed'
bwipe!
***************
*** 95,101 ****
g/^/d
let fname = substitute(fname, '\.spl$', '.sug', '')
echo 'Downloading ' . fname . '...'
! exe 'Nread ' g:spellfile_URL . '/' . fname
if getline(2) !~ 'VIMsug'
echo 'Sorry, downloading failed'
else
--- 95,101 ----
g/^/d
let fname = substitute(fname, '\.spl$', '.sug', '')
echo 'Downloading ' . fname . '...'
! call spellfile#Nread(fname)
if getline(2) !~ 'VIMsug'
echo 'Sorry, downloading failed'
else
***************
*** 108,111 ****
--- 108,118 ----
bwipe
endif
+ endfunc
+
+ " Read "fname" from the ftp server.
+ function! spellfile#Nread(fname)
+ let machine = substitute(g:spellfile_URL, 'ftp://\([^/]*\).*', '\1', '')
+ let dir = substitute(g:spellfile_URL, 'ftp://[^/]*/\(.*\)', '\1', '')
+ exe 'Nread "' . machine . ' anonymous vim7user ' . dir . '/' . a:fname . '"'
endfunc
*** ../vim-7.0.009/src/version.c Wed May 10 17:51:22 2006
--- src/version.c Wed May 10 17:53:53 2006
***************
*** 668,669 ****
--- 668,671 ----
{ /* Add new patch number below this line */
+ /**/
+ 10,
/**/
--
I AM THANKFUL...
...for the mess to clean after a party because it means I have
been surrounded by friends.
/// Bram Moolenaar -- Bram@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 ///

65
7.0.011
View File

@ -1,65 +0,0 @@
To: vim-dev@vim.org
Subject: Patch 7.0.011
Fcc: outbox
From: Bram Moolenaar <Bram@moolenaar.net>
Mime-Version: 1.0
Content-Type: text/plain; charset=ISO-8859-1
Content-Transfer-Encoding: 8bit
------------
Patch 7.0.011
Problem: Can't compile without the folding and with the eval feature.
Solution: Add an #ifdef. (Vallimar)
Files: src/option.c
*** ../vim-7.0.010/src/option.c Wed May 10 15:22:50 2006
--- src/option.c Wed May 10 19:37:10 2006
***************
*** 5227,5239 ****
case PV_STL: return &curwin->w_p_stl_flags;
#endif
#ifdef FEAT_EVAL
case PV_FDE: return &curwin->w_p_fde_flags;
case PV_FDT: return &curwin->w_p_fdt_flags;
# ifdef FEAT_BEVAL
case PV_BEXPR: return &curbuf->b_p_bexpr_flags;
# endif
- #endif
- #if defined(FEAT_EVAL)
# if defined(FEAT_CINDENT)
case PV_INDE: return &curbuf->b_p_inde_flags;
# endif
--- 5227,5239 ----
case PV_STL: return &curwin->w_p_stl_flags;
#endif
#ifdef FEAT_EVAL
+ # ifdef FEAT_FOLDING
case PV_FDE: return &curwin->w_p_fde_flags;
case PV_FDT: return &curwin->w_p_fdt_flags;
+ # endif
# ifdef FEAT_BEVAL
case PV_BEXPR: return &curbuf->b_p_bexpr_flags;
# endif
# if defined(FEAT_CINDENT)
case PV_INDE: return &curbuf->b_p_inde_flags;
# endif
*** ../vim-7.0.010/src/version.c Wed May 10 17:55:37 2006
--- src/version.c Thu May 11 19:22:54 2006
***************
*** 668,669 ****
--- 668,671 ----
{ /* Add new patch number below this line */
+ /**/
+ 11,
/**/
--
hundred-and-one symptoms of being an internet addict:
112. You are amazed that anyone uses a phone without a modem on it...let
alone hear actual voices.
/// Bram Moolenaar -- Bram@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 ///

84
7.0.012
View File

@ -1,84 +0,0 @@
To: vim-dev@vim.org
Subject: Patch 7.0.012
Fcc: outbox
From: Bram Moolenaar <Bram@moolenaar.net>
Mime-Version: 1.0
Content-Type: text/plain; charset=ISO-8859-1
Content-Transfer-Encoding: 8bit
------------
Patch 7.0.012
Problem: Using the matchparen plugin, moving the cursor in Insert mode to a
shorter line that ends in a brace, changes the preferred column
Solution: Use winsaveview()/winrestview() instead of getpos()/setpos().
Files: runtime/plugin/matchparen.vim
*** ../vim-7.0.011/runtime/plugin/matchparen.vim Wed May 10 15:22:55 2006
--- runtime/plugin/matchparen.vim Thu May 11 14:42:55 2006
***************
*** 1,6 ****
" Vim plugin for showing matching parens
" Maintainer: Bram Moolenaar <Bram@vim.org>
! " Last Change: 2006 Apr 27
" Exit quickly when:
" - this plugin was already loaded (or disabled)
--- 1,6 ----
" Vim plugin for showing matching parens
" Maintainer: Bram Moolenaar <Bram@vim.org>
! " Last Change: 2006 May 11
" Exit quickly when:
" - this plugin was already loaded (or disabled)
***************
*** 90,96 ****
" Find the match. When it was just before the cursor move it there for a
" moment.
if before > 0
! let save_cursor = getpos('.')
call cursor(c_lnum, c_col - before)
endif
--- 90,96 ----
" Find the match. When it was just before the cursor move it there for a
" moment.
if before > 0
! let save_cursor = winsaveview()
call cursor(c_lnum, c_col - before)
endif
***************
*** 102,108 ****
let [m_lnum, m_col] = searchpairpos(c, '', c2, s_flags, s_skip, stopline)
if before > 0
! call setpos('.', save_cursor)
endif
" If a match is found setup match highlighting.
--- 102,108 ----
let [m_lnum, m_col] = searchpairpos(c, '', c2, s_flags, s_skip, stopline)
if before > 0
! call winrestview(save_cursor)
endif
" If a match is found setup match highlighting.
*** ../vim-7.0.011/src/version.c Thu May 11 19:24:16 2006
--- src/version.c Thu May 11 19:29:58 2006
***************
*** 668,669 ****
--- 668,671 ----
{ /* Add new patch number below this line */
+ /**/
+ 12,
/**/
--
Corduroy pillows: They're making headlines!
/// Bram Moolenaar -- Bram@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 ///

154
7.0.013
View File

@ -1,154 +0,0 @@
To: vim-dev@vim.org
Subject: Patch 7.0.013
Fcc: outbox
From: Bram Moolenaar <Bram@moolenaar.net>
Mime-Version: 1.0
Content-Type: text/plain; charset=ISO-8859-1
Content-Transfer-Encoding: 8bit
------------
Patch 7.0.013
Problem: Insert mode completion: using CTRL-L to add an extra character
also deselects the current match, making it impossible to use
CTRL-L a second time.
Solution: Keep the current match. Also make CTRL-L work at the original
text, using the first displayed match.
Files: src/edit.c
*** ../vim-7.0.012/src/edit.c Wed May 10 15:22:49 2006
--- src/edit.c Thu May 11 10:38:54 2006
***************
*** 751,757 ****
continue;
}
! /* Pressing CTRL-Y selects the current match. Shen
* compl_enter_selects is set the Enter key does the same. */
if (c == Ctrl_Y || (compl_enter_selects
&& (c == CAR || c == K_KENTER || c == NL)))
--- 751,757 ----
continue;
}
! /* Pressing CTRL-Y selects the current match. When
* compl_enter_selects is set the Enter key does the same. */
if (c == Ctrl_Y || (compl_enter_selects
&& (c == CAR || c == K_KENTER || c == NL)))
***************
*** 3046,3052 ****
ins_compl_delete();
ins_bytes(compl_leader + curwin->w_cursor.col - compl_col);
compl_used_match = FALSE;
- compl_enter_selects = FALSE;
if (compl_started)
ins_compl_set_original_text(compl_leader);
--- 3046,3051 ----
***************
*** 3076,3081 ****
--- 3075,3081 ----
compl_restarting = FALSE;
}
+ #if 0 /* disabled, made CTRL-L, BS and typing char jump to original text. */
if (!compl_used_match)
{
/* Go to the original text, since none of the matches is inserted. */
***************
*** 3087,3092 ****
--- 3087,3094 ----
compl_curr_match = compl_shown_match;
compl_shows_dir = compl_direction;
}
+ #endif
+ compl_enter_selects = !compl_used_match;
/* Show the popup menu with a different set of matches. */
ins_compl_show_pum();
***************
*** 3175,3184 ****
char_u *p;
int len = curwin->w_cursor.col - compl_col;
int c;
p = compl_shown_match->cp_str;
if ((int)STRLEN(p) <= len) /* the match is too short */
! return;
p += len;
#ifdef FEAT_MBYTE
c = mb_ptr2char(p);
--- 3177,3208 ----
char_u *p;
int len = curwin->w_cursor.col - compl_col;
int c;
+ compl_T *cp;
p = compl_shown_match->cp_str;
if ((int)STRLEN(p) <= len) /* the match is too short */
! {
! /* When still at the original match use the first entry that matches
! * the leader. */
! if (compl_shown_match->cp_flags & ORIGINAL_TEXT)
! {
! p = NULL;
! for (cp = compl_shown_match->cp_next; cp != NULL
! && cp != compl_first_match; cp = cp->cp_next)
! {
! if (ins_compl_equal(cp, compl_leader,
! (int)STRLEN(compl_leader)))
! {
! p = cp->cp_str;
! break;
! }
! }
! if (p == NULL || (int)STRLEN(p) <= len)
! return;
! }
! else
! return;
! }
p += len;
#ifdef FEAT_MBYTE
c = mb_ptr2char(p);
***************
*** 4100,4105 ****
--- 4124,4144 ----
&& compl_shown_match->cp_next != NULL
&& compl_shown_match->cp_next != compl_first_match)
compl_shown_match = compl_shown_match->cp_next;
+
+ /* If we didn't find it searching forward, and compl_shows_dir is
+ * backward, find the last match. */
+ if (compl_shows_dir == BACKWARD
+ && !ins_compl_equal(compl_shown_match,
+ compl_leader, (int)STRLEN(compl_leader))
+ && (compl_shown_match->cp_next == NULL
+ || compl_shown_match->cp_next == compl_first_match))
+ {
+ while (!ins_compl_equal(compl_shown_match,
+ compl_leader, (int)STRLEN(compl_leader))
+ && compl_shown_match->cp_prev != NULL
+ && compl_shown_match->cp_prev != compl_first_match)
+ compl_shown_match = compl_shown_match->cp_prev;
+ }
}
if (allow_get_expansion && insert_match
*** ../vim-7.0.012/src/version.c Thu May 11 19:30:09 2006
--- src/version.c Fri May 12 19:03:32 2006
***************
*** 668,669 ****
--- 668,671 ----
{ /* Add new patch number below this line */
+ /**/
+ 13,
/**/
--
I'm writing a book. I've got the page numbers done.
/// Bram Moolenaar -- Bram@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 ///

189
7.0.014
View File

@ -1,189 +0,0 @@
To: vim-dev@vim.org
Subject: Patch 7.0.014
Fcc: outbox
From: Bram Moolenaar <Bram@moolenaar.net>
Mime-Version: 1.0
Content-Type: text/plain; charset=ISO-8859-1
Content-Transfer-Encoding: 8bit
------------
Patch 7.0.014
Problem: Compiling gui_xmebw.c fails on Dec Alpha Tru64. (Rolfe)
Solution: Disable some code for Motif 1.2 and older.
Files: src/gui_xmebw.c
*** ../vim-7.0.013/src/gui_xmebw.c Wed May 10 15:22:49 2006
--- src/gui_xmebw.c Thu May 11 19:09:32 2006
***************
*** 480,486 ****
|| (eb->core.height <= 2 * eb->primitive.highlight_thickness))
return;
! #ifndef LESSTIF_VERSION
{
XmDisplay dpy;
--- 480,486 ----
|| (eb->core.height <= 2 * eb->primitive.highlight_thickness))
return;
! #if !defined(LESSTIF_VERSION) && (XmVersion > 1002)
{
XmDisplay dpy;
***************
*** 641,647 ****
GC tmp_gc = NULL;
Boolean replaceGC = False;
Boolean deadjusted = False;
! #ifndef LESSTIF_VERSION
XmDisplay dpy = (XmDisplay)XmGetXmDisplay(XtDisplay(eb));
Boolean etched_in = dpy->display.enable_etched_in_menu;
#else
--- 641,647 ----
GC tmp_gc = NULL;
Boolean replaceGC = False;
Boolean deadjusted = False;
! #if !defined(LESSTIF_VERSION) && (XmVersion > 1002)
XmDisplay dpy = (XmDisplay)XmGetXmDisplay(XtDisplay(eb));
Boolean etched_in = dpy->display.enable_etched_in_menu;
#else
***************
*** 726,732 ****
if ((((ShellWidget) XtParent(XtParent(eb)))->shell.popped_up)
&& _XmGetInDragMode((Widget) eb))
{
! #ifndef LESSTIF_VERSION
XmDisplay dpy = (XmDisplay) XmGetXmDisplay(XtDisplay(wid));
Boolean etched_in = dpy->display.enable_etched_in_menu;
#else
--- 726,732 ----
if ((((ShellWidget) XtParent(XtParent(eb)))->shell.popped_up)
&& _XmGetInDragMode((Widget) eb))
{
! #if !defined(LESSTIF_VERSION) && (XmVersion > 1002)
XmDisplay dpy = (XmDisplay) XmGetXmDisplay(XtDisplay(wid));
Boolean etched_in = dpy->display.enable_etched_in_menu;
#else
***************
*** 810,816 ****
if (Lab_IsMenupane(eb))
{
! #ifndef LESSTIF_VERSION
XmDisplay dpy = (XmDisplay) XmGetXmDisplay(XtDisplay(wid));
Boolean etched_in = dpy->display.enable_etched_in_menu;
#else
--- 810,816 ----
if (Lab_IsMenupane(eb))
{
! #if !defined(LESSTIF_VERSION) && (XmVersion > 1002)
XmDisplay dpy = (XmDisplay) XmGetXmDisplay(XtDisplay(wid));
Boolean etched_in = dpy->display.enable_etched_in_menu;
#else
***************
*** 1150,1156 ****
Redisplay(Widget w, XEvent *event, Region region)
{
XmEnhancedButtonWidget eb = (XmEnhancedButtonWidget) w;
! #ifndef LESSTIF_VERSION
XmDisplay dpy;
XtEnum default_button_emphasis;
#endif
--- 1150,1156 ----
Redisplay(Widget w, XEvent *event, Region region)
{
XmEnhancedButtonWidget eb = (XmEnhancedButtonWidget) w;
! #if !defined(LESSTIF_VERSION) && (XmVersion > 1002)
XmDisplay dpy;
XtEnum default_button_emphasis;
#endif
***************
*** 1162,1168 ****
if (!XtIsRealized((Widget)eb))
return;
! #ifndef LESSTIF_VERSION
dpy = (XmDisplay)XmGetXmDisplay(XtDisplay(eb));
default_button_emphasis = dpy->display.default_button_emphasis;
#endif
--- 1162,1168 ----
if (!XtIsRealized((Widget)eb))
return;
! #if !defined(LESSTIF_VERSION) && (XmVersion > 1002)
dpy = (XmDisplay)XmGetXmDisplay(XtDisplay(eb));
default_button_emphasis = dpy->display.default_button_emphasis;
#endif
***************
*** 1241,1247 ****
{
int adjust = 0;
! #ifndef LESSTIF_VERSION
/*
* NOTE: PushButton has two types of shadows: primitive-shadow and
* default-button-shadow. If pushbutton is in a menu only primitive
--- 1241,1247 ----
{
int adjust = 0;
! #if !defined(LESSTIF_VERSION) && (XmVersion > 1002)
/*
* NOTE: PushButton has two types of shadows: primitive-shadow and
* default-button-shadow. If pushbutton is in a menu only primitive
***************
*** 1289,1295 ****
adjust, adjust, rectwidth, rectheight, borderwidth);
}
! #ifndef LESSTIF_VERSION
switch (default_button_emphasis)
{
case XmINTERNAL_HIGHLIGHT:
--- 1289,1295 ----
adjust, adjust, rectwidth, rectheight, borderwidth);
}
! #if !defined(LESSTIF_VERSION) && (XmVersion > 1002)
switch (default_button_emphasis)
{
case XmINTERNAL_HIGHLIGHT:
***************
*** 1365,1371 ****
default_button_shadow_thickness =
eb->pushbutton.default_button_shadow_thickness;
! #ifndef LESSTIF_VERSION
/*
* Compute location of bounding box to contain the
* defaultButtonShadow.
--- 1365,1371 ----
default_button_shadow_thickness =
eb->pushbutton.default_button_shadow_thickness;
! #if !defined(LESSTIF_VERSION) && (XmVersion > 1002)
/*
* Compute location of bounding box to contain the
* defaultButtonShadow.
*** ../vim-7.0.013/src/version.c Fri May 12 19:10:03 2006
--- src/version.c Fri May 12 19:23:12 2006
***************
*** 668,669 ****
--- 668,671 ----
{ /* Add new patch number below this line */
+ /**/
+ 14,
/**/
--
hundred-and-one symptoms of being an internet addict:
126. You brag to all of your friends about your date Saturday night...but
you don't tell them it was only in a chat room.
/// Bram Moolenaar -- Bram@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 ///

204
7.0.015
View File

@ -1,204 +0,0 @@
To: vim-dev@vim.org
Subject: Patch 7.0.015
Fcc: outbox
From: Bram Moolenaar <Bram@moolenaar.net>
Mime-Version: 1.0
Content-Type: text/plain; charset=ISO-8859-1
Content-Transfer-Encoding: 8bit
------------
Patch 7.0.015
Problem: Athena: compilation problems with modern compiler.
Solution: Avoid type casts for lvalue. (Alexey Froloff)
Files: src/gui_at_fs.c
*** ../vim-7.0.014/src/gui_at_fs.c Wed May 10 15:22:49 2006
--- src/gui_at_fs.c Fri May 12 11:26:24 2006
***************
*** 1861,1887 ****
XtPointer pnew;
{
SFDir *dir;
! int nw;
dir = &(SFdirs[SFdirPtr + (int)(long)n]);
#ifdef FEAT_GUI_NEXTAW
! if ((int)(long)pnew < 0)
{
! if ((int)(long)pnew > -SFvScrollHeight)
! (int)(long)pnew = -1;
else
! (int)(long)pnew = -SFlistSize;
}
! else if ((int)(long)pnew > 0)
{
! if ((int)(long)pnew < SFvScrollHeight)
! (int)(long)pnew = 1;
else
! (int)(long)pnew = SFlistSize;
}
#endif
! nw = dir->vOrigin + (int)(long)pnew;
if (nw > dir->nEntries - SFlistSize)
nw = dir->nEntries - SFlistSize;
--- 1861,1887 ----
XtPointer pnew;
{
SFDir *dir;
! int nw = (int)(long)pnew;
dir = &(SFdirs[SFdirPtr + (int)(long)n]);
#ifdef FEAT_GUI_NEXTAW
! if (nw < 0)
{
! if (nw > -SFvScrollHeight)
! nw = -1;
else
! nw = -SFlistSize;
}
! else if (nw > 0)
{
! if (nw < SFvScrollHeight)
! nw = 1;
else
! nw = SFlistSize;
}
#endif
! nw += dir->vOrigin;
if (nw > dir->nEntries - SFlistSize)
nw = dir->nEntries - SFlistSize;
***************
*** 1941,1967 ****
XtPointer pnew;
{
SFDir *dir;
! int nw;
dir = &(SFdirs[SFdirPtr + (int)(long)n]);
#ifdef FEAT_GUI_NEXTAW
! if ((int)(long)pnew < 0)
{
! if ((int)(long)pnew > -SFhScrollWidth)
! (int)(long)pnew = -1;
else
! (int)(long)pnew = -SFcharsPerEntry;
}
! else if ((int)(long)pnew > 0)
{
! if ((int)(long)pnew < SFhScrollWidth)
! (int)(long)pnew = 1;
else
! (int)(long)pnew = SFcharsPerEntry;
}
#endif
! nw = dir->hOrigin + (int)(long)pnew;
if (nw > dir->nChars - SFcharsPerEntry)
nw = dir->nChars - SFcharsPerEntry;
--- 1941,1967 ----
XtPointer pnew;
{
SFDir *dir;
! int nw = (int)(long)pnew;
dir = &(SFdirs[SFdirPtr + (int)(long)n]);
#ifdef FEAT_GUI_NEXTAW
! if (nw < 0)
{
! if (nw > -SFhScrollWidth)
! nw = -1;
else
! nw = -SFcharsPerEntry;
}
! else if (nw > 0)
{
! if (nw < SFhScrollWidth)
! nw = 1;
else
! nw = SFcharsPerEntry;
}
#endif
! nw += dir->hOrigin;
if (nw > dir->nChars - SFcharsPerEntry)
nw = dir->nChars - SFcharsPerEntry;
***************
*** 2038,2063 ****
XtPointer client_data;
XtPointer pnew;
{
! int nw;
float f;
#ifdef FEAT_GUI_NEXTAW
! if ((int)(long)pnew < 0)
{
! if ((int)(long)pnew > -SFpathScrollWidth)
! (int)(long)pnew = -1;
else
! (int)(long)pnew = -3;
}
! else if ((int)(long)pnew > 0)
{
! if ((int)(long)pnew < SFpathScrollWidth)
! (int)(long)pnew = 1;
else
! (int)(long)pnew = 3;
}
#endif
! nw = SFdirPtr + (int)(long)pnew;
if (nw > SFdirEnd - 3)
nw = SFdirEnd - 3;
--- 2038,2063 ----
XtPointer client_data;
XtPointer pnew;
{
! int nw = (int)(long)pnew;
float f;
#ifdef FEAT_GUI_NEXTAW
! if (nw < 0)
{
! if (nw > -SFpathScrollWidth)
! nw = -1;
else
! nw = -3;
}
! else if (nw > 0)
{
! if (nw < SFpathScrollWidth)
! nw = 1;
else
! nw = 3;
}
#endif
! nw += SFdirPtr;
if (nw > SFdirEnd - 3)
nw = SFdirEnd - 3;
*** ../vim-7.0.014/src/version.c Fri May 12 19:24:33 2006
--- src/version.c Fri May 12 19:25:57 2006
***************
*** 668,669 ****
--- 668,671 ----
{ /* Add new patch number below this line */
+ /**/
+ 15,
/**/
--
hundred-and-one symptoms of being an internet addict:
127. You bring your laptop and cellular phone to church.
/// Bram Moolenaar -- Bram@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 ///

67
7.0.016
View File

@ -1,67 +0,0 @@
To: vim-dev@vim.org
Subject: Patch 7.0.016
Fcc: outbox
From: Bram Moolenaar <Bram@moolenaar.net>
Mime-Version: 1.0
Content-Type: text/plain; charset=ISO-8859-1
Content-Transfer-Encoding: 8bit
------------
Patch 7.0.016
Problem: Printing doesn't work for "dec-mcs" encoding.
Solution: Add "dec-mcs", "mac-roman" and "hp-roman8" to the list of
recognized 8-bit encodings. (Mike Williams)
Files: src/mbyte.c
*** ../vim-7.0.015/src/mbyte.c Wed May 10 15:22:50 2006
--- src/mbyte.c Sat May 13 09:12:43 2006
***************
*** 311,317 ****
#define IDX_MACROMAN 57
{"macroman", ENC_8BIT + ENC_MACROMAN, 0}, /* Mac OS */
! #define IDX_COUNT 58
};
/*
--- 311,321 ----
#define IDX_MACROMAN 57
{"macroman", ENC_8BIT + ENC_MACROMAN, 0}, /* Mac OS */
! #define IDX_DECMCS 58
! {"dec-mcs", ENC_8BIT, 0}, /* DEC MCS */
! #define IDX_HPROMAN8 59
! {"hp-roman8", ENC_8BIT, 0}, /* HP Roman8 */
! #define IDX_COUNT 60
};
/*
***************
*** 386,391 ****
--- 390,396 ----
{"950", IDX_BIG5},
#endif
{"mac", IDX_MACROMAN},
+ {"mac-roman", IDX_MACROMAN},
{NULL, 0}
};
*** ../vim-7.0.015/src/version.c Fri May 12 19:27:55 2006
--- src/version.c Sat May 13 09:11:27 2006
***************
*** 668,669 ****
--- 668,671 ----
{ /* Add new patch number below this line */
+ /**/
+ 16,
/**/
--
hundred-and-one symptoms of being an internet addict:
135. You cut classes or miss work so you can stay home and browse the web.
/// Bram Moolenaar -- Bram@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 ///

64
7.0.017
View File

@ -1,64 +0,0 @@
To: vim-dev@vim.org
Subject: Patch 7.0.017
Fcc: outbox
From: Bram Moolenaar <Bram@moolenaar.net>
Mime-Version: 1.0
Content-Type: text/plain; charset=ISO-8859-1
Content-Transfer-Encoding: 8bit
------------
Patch 7.0.017 (after 7.0.014)
Problem: Linking gui_xmebw.c fails on Dec Alpha Tru64. (Rolfe)
Solution: Adjust defines for Motif 1.2 and older.
Files: src/gui_xmebw.c
*** ../vim-7.0.016/src/gui_xmebw.c Fri May 12 19:24:33 2006
--- src/gui_xmebw.c Sat May 13 12:55:01 2006
***************
*** 47,59 ****
#include "gui_xmebwp.h"
/* Provide some missing wrappers, which are missed from the LessTif
! * implementation.
*
* We neither use XmeGetPixmapData or _XmGetPixmapData, since with LessTif the
* pixmap will not appear in it's caches properly. We cache the interresting
* values in XmEnhancedButtonPart instead ourself.
*/
! #ifdef LESSTIF_VERSION
# ifndef Lab_IsMenupane
# define Lab_IsMenupane(w) (Lab_MenuType(w) == (int)XmMENU_POPUP || \
Lab_MenuType(w) == (int)XmMENU_PULLDOWN)
--- 47,59 ----
#include "gui_xmebwp.h"
/* Provide some missing wrappers, which are missed from the LessTif
! * implementation. Also missing in Motif 1.2 and earlier.
*
* We neither use XmeGetPixmapData or _XmGetPixmapData, since with LessTif the
* pixmap will not appear in it's caches properly. We cache the interresting
* values in XmEnhancedButtonPart instead ourself.
*/
! #if defined(LESSTIF_VERSION) || (XmVersion <= 1002)
# ifndef Lab_IsMenupane
# define Lab_IsMenupane(w) (Lab_MenuType(w) == (int)XmMENU_POPUP || \
Lab_MenuType(w) == (int)XmMENU_PULLDOWN)
*** ../vim-7.0.016/src/version.c Sat May 13 09:16:38 2006
--- src/version.c Sat May 13 13:00:03 2006
***************
*** 668,669 ****
--- 668,671 ----
{ /* Add new patch number below this line */
+ /**/
+ 17,
/**/
--
hundred-and-one symptoms of being an internet addict:
141. You'd rather go to http://www.weather.com/ than look out your window.
/// Bram Moolenaar -- Bram@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 ///

54
7.0.018
View File

@ -1,54 +0,0 @@
To: vim-dev@vim.org
Subject: Patch 7.0.018
Fcc: outbox
From: Bram Moolenaar <Bram@moolenaar.net>
Mime-Version: 1.0
Content-Type: text/plain; charset=ISO-8859-1
Content-Transfer-Encoding: 8bit
------------
Patch 7.0.018
Problem: VMS: plugins are not loaded on startup.
Solution: Remove "**" from the path. (Zoltan Arpadffy)
Files: src/main.c
*** ../vim-7.0.017/src/main.c Wed May 3 23:28:15 2006
--- src/main.c Mon Jun 19 10:54:40 2006
***************
*** 564,570 ****
--- 564,574 ----
*/
if (p_lpl)
{
+ # ifdef VMS /* Somehow VMS doesn't handle the "**". */
+ source_runtime((char_u *)"plugin/*.vim", TRUE);
+ # else
source_runtime((char_u *)"plugin/**/*.vim", TRUE);
+ # endif
TIME_MSG("loading plugins");
}
#endif
*** ../vim-7.0.017/src/version.c Sat May 13 17:26:10 2006
--- src/version.c Mon Jun 19 10:55:29 2006
***************
*** 668,669 ****
--- 668,671 ----
{ /* Add new patch number below this line */
+ /**/
+ 18,
/**/
--
BLACK KNIGHT: Come on you pansy!
[hah] [parry thrust]
[ARTHUR chops the BLACK KNIGHT's right arm off]
ARTHUR: Victory is mine! [kneeling]
We thank thee Lord, that in thy merc-
[Black Knight kicks Arthur in the head while he is praying]
The Quest for the Holy Grail (Monty Python)
/// Bram Moolenaar -- Bram@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 ///

46
7.0.019
View File

@ -1,46 +0,0 @@
To: vim-dev@vim.org
Subject: Patch 7.0.019
Fcc: outbox
From: Bram Moolenaar <Bram@moolenaar.net>
Mime-Version: 1.0
Content-Type: text/plain; charset=ISO-8859-1
Content-Transfer-Encoding: 8bit
------------
Patch 7.0.019
Problem: Repeating "VjA789" may cause a crash. (James Vega)
Solution: Check the cursor column after moving it to another line.
Files: src/ops.c
*** ../vim-7.0.018/src/ops.c Sun Apr 30 20:45:12 2006
--- src/ops.c Tue Jun 20 12:49:46 2006
***************
*** 2413,2418 ****
--- 2413,2419 ----
else
{
curwin->w_cursor = oap->end;
+ check_cursor_col();
/* Works just like an 'i'nsert on the next character. */
if (!lineempty(curwin->w_cursor.lnum)
*** ../vim-7.0.018/src/version.c Mon Jun 19 10:56:20 2006
--- src/version.c Tue Jun 20 12:55:10 2006
***************
*** 668,669 ****
--- 668,671 ----
{ /* Add new patch number below this line */
+ /**/
+ 19,
/**/
--
Two cows are standing together in a field. One asks the other:
"So what do you think about this Mad Cow Disease?"
The other replies: "That doesn't concern me. I'm a helicopter."
/// Bram Moolenaar -- Bram@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 ///

52
7.0.020
View File

@ -1,52 +0,0 @@
To: vim-dev@vim.org
Subject: Patch 7.0.020
Fcc: outbox
From: Bram Moolenaar <Bram@moolenaar.net>
Mime-Version: 1.0
Content-Type: text/plain; charset=ISO-8859-1
Content-Transfer-Encoding: 8bit
------------
Patch 7.0.020
Problem: Crash when using 'mousefocus'. (William Fulton)
Solution: Make buffer for mouse coordinates 2 bytes longer. (Juergen Weigert)
Files: src/gui.c
*** ../vim-7.0.019/src/gui.c Sat May 13 12:15:09 2006
--- src/gui.c Tue Jun 20 16:27:02 2006
***************
*** 4515,4521 ****
int y;
{
win_T *wp;
! char_u st[6];
/* Ignore this while still starting up. */
if (!gui.in_use || gui.starting)
--- 4515,4521 ----
int y;
{
win_T *wp;
! char_u st[8];
/* Ignore this while still starting up. */
if (!gui.in_use || gui.starting)
*** ../vim-7.0.019/src/version.c Tue Jun 20 12:56:11 2006
--- src/version.c Tue Jun 20 16:32:28 2006
***************
*** 668,669 ****
--- 668,671 ----
{ /* Add new patch number below this line */
+ /**/
+ 20,
/**/
--
Michael: There is no such thing as a dump question.
Bernard: Sure there is. For example "what is a core dump?"
/// Bram Moolenaar -- Bram@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 ///

139
7.0.021
View File

@ -1,139 +0,0 @@
To: vim-dev@vim.org
Subject: Patch 7.0.021
Fcc: outbox
From: Bram Moolenaar <Bram@moolenaar.net>
Mime-Version: 1.0
Content-Type: text/plain; charset=ISO-8859-1
Content-Transfer-Encoding: 8bit
------------
Patch 7.0.021
Problem: Crash when using "\\[" and "\\]" in 'errorformat'. (Marc Weber)
Solution: Check for valid submatches after matching the pattern.
Files: src/quickfix.c
*** ../vim-7.0.020/src/quickfix.c Wed May 3 23:23:30 2006
--- src/quickfix.c Tue Jun 20 17:04:20 2006
***************
*** 602,614 ****
else
type = 0;
/*
! * Extract error message data from matched line
*/
if ((i = (int)fmt_ptr->addr[0]) > 0) /* %f */
{
! int c = *regmatch.endp[i];
/* Expand ~/file and $HOME/file to full path. */
*regmatch.endp[i] = NUL;
expand_env(regmatch.startp[i], namebuf, CMDBUFFSIZE);
*regmatch.endp[i] = c;
--- 602,620 ----
else
type = 0;
/*
! * Extract error message data from matched line.
! * We check for an actual submatch, because "\[" and "\]" in
! * the 'errorformat' may cause the wrong submatch to be used.
*/
if ((i = (int)fmt_ptr->addr[0]) > 0) /* %f */
{
! int c;
!
! if (regmatch.startp[i] == NULL || regmatch.endp[i] == NULL)
! continue;
/* Expand ~/file and $HOME/file to full path. */
+ c = *regmatch.endp[i];
*regmatch.endp[i] = NUL;
expand_env(regmatch.startp[i], namebuf, CMDBUFFSIZE);
*regmatch.endp[i] = c;
***************
*** 618,652 ****
--- 624,686 ----
continue;
}
if ((i = (int)fmt_ptr->addr[1]) > 0) /* %n */
+ {
+ if (regmatch.startp[i] == NULL)
+ continue;
enr = (int)atol((char *)regmatch.startp[i]);
+ }
if ((i = (int)fmt_ptr->addr[2]) > 0) /* %l */
+ {
+ if (regmatch.startp[i] == NULL)
+ continue;
lnum = atol((char *)regmatch.startp[i]);
+ }
if ((i = (int)fmt_ptr->addr[3]) > 0) /* %c */
+ {
+ if (regmatch.startp[i] == NULL)
+ continue;
col = (int)atol((char *)regmatch.startp[i]);
+ }
if ((i = (int)fmt_ptr->addr[4]) > 0) /* %t */
+ {
+ if (regmatch.startp[i] == NULL)
+ continue;
type = *regmatch.startp[i];
+ }
if (fmt_ptr->flags == '+' && !multiscan) /* %+ */
STRCPY(errmsg, IObuff);
else if ((i = (int)fmt_ptr->addr[5]) > 0) /* %m */
{
+ if (regmatch.startp[i] == NULL || regmatch.endp[i] == NULL)
+ continue;
len = (int)(regmatch.endp[i] - regmatch.startp[i]);
vim_strncpy(errmsg, regmatch.startp[i], len);
}
if ((i = (int)fmt_ptr->addr[6]) > 0) /* %r */
+ {
+ if (regmatch.startp[i] == NULL)
+ continue;
tail = regmatch.startp[i];
+ }
if ((i = (int)fmt_ptr->addr[7]) > 0) /* %p */
{
+ if (regmatch.startp[i] == NULL || regmatch.endp[i] == NULL)
+ continue;
col = (int)(regmatch.endp[i] - regmatch.startp[i] + 1);
if (*((char_u *)regmatch.startp[i]) != TAB)
use_viscol = TRUE;
}
if ((i = (int)fmt_ptr->addr[8]) > 0) /* %v */
{
+ if (regmatch.startp[i] == NULL)
+ continue;
col = (int)atol((char *)regmatch.startp[i]);
use_viscol = TRUE;
}
if ((i = (int)fmt_ptr->addr[9]) > 0) /* %s */
{
+ if (regmatch.startp[i] == NULL || regmatch.endp[i] == NULL)
+ continue;
len = (int)(regmatch.endp[i] - regmatch.startp[i]);
if (len > CMDBUFFSIZE - 5)
len = CMDBUFFSIZE - 5;
*** ../vim-7.0.020/src/version.c Tue Jun 20 16:33:21 2006
--- src/version.c Tue Jun 20 17:07:25 2006
***************
*** 668,669 ****
--- 668,671 ----
{ /* Add new patch number below this line */
+ /**/
+ 21,
/**/
--
TALL KNIGHT: We are now no longer the Knights Who Say Ni!
ONE KNIGHT: Ni!
OTHERS: Sh!
ONE KNIGHT: (whispers) Sorry.
"Monty Python and the Holy Grail" PYTHON (MONTY) PICTURES LTD
/// Bram Moolenaar -- Bram@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 ///

234
7.0.022
View File

@ -1,234 +0,0 @@
To: vim-dev@vim.org
Subject: Patch 7.0.022
Fcc: outbox
From: Bram Moolenaar <Bram@moolenaar.net>
Mime-Version: 1.0
Content-Type: text/plain; charset=ISO-8859-1
Content-Transfer-Encoding: 8bit
------------
Patch 7.0.022
Problem: Using buffer.append() in Ruby may append the line to the wrong
buffer. (Alex Norman)
Solution: Properly switch to the buffer to do the appending. Also for
buffer.delete() and setting a buffer line.
Files: src/if_ruby.c
*** ../vim-7.0.021/src/if_ruby.c Sun Apr 30 20:25:42 2006
--- src/if_ruby.c Tue Jun 20 21:01:23 2006
***************
*** 643,653 ****
static VALUE set_buffer_line(buf_T *buf, linenr_T n, VALUE str)
{
! buf_T *savebuf = curbuf;
! char *line = STR2CSTR(str);
! if (n > 0 && n <= buf->b_ml.ml_line_count && line != NULL) {
curbuf = buf;
if (u_savesub(n) == OK) {
ml_replace(n, (char_u *)line, TRUE);
changed();
--- 643,665 ----
static VALUE set_buffer_line(buf_T *buf, linenr_T n, VALUE str)
{
! char *line = STR2CSTR(str);
! #ifdef FEAT_AUTOCMD
! aco_save_T aco;
! #else
! buf_T *save_curbuf = curbuf;
! #endif
! if (n > 0 && n <= buf->b_ml.ml_line_count && line != NULL)
! {
! #ifdef FEAT_AUTOCMD
! /* set curwin/curbuf for "buf" and save some things */
! aucmd_prepbuf(&aco, buf);
! #else
curbuf = buf;
+ curwin->w_buffer = buf;
+ #endif
+
if (u_savesub(n) == OK) {
ml_replace(n, (char_u *)line, TRUE);
changed();
***************
*** 655,664 ****
syn_changed(n); /* recompute syntax hl. for this line */
#endif
}
! curbuf = savebuf;
update_curbuf(NOT_VALID);
}
! else {
rb_raise(rb_eIndexError, "index %d out of buffer", n);
return Qnil; /* For stop warning */
}
--- 667,685 ----
syn_changed(n); /* recompute syntax hl. for this line */
#endif
}
!
! #ifdef FEAT_AUTOCMD
! /* restore curwin/curbuf and a few other things */
! aucmd_restbuf(&aco);
! /* Careful: autocommands may have made "buf" invalid! */
! #else
! curwin->w_buffer = save_curbuf;
! curbuf = save_curbuf;
! #endif
update_curbuf(NOT_VALID);
}
! else
! {
rb_raise(rb_eIndexError, "index %d out of buffer", n);
return Qnil; /* For stop warning */
}
***************
*** 676,687 ****
static VALUE buffer_delete(VALUE self, VALUE num)
{
! buf_T *buf = get_buf(self);
! buf_T *savebuf = curbuf;
! long n = NUM2LONG(num);
! if (n > 0 && n <= buf->b_ml.ml_line_count) {
curbuf = buf;
if (u_savedel(n, 1) == OK) {
ml_delete(n, 0);
--- 697,720 ----
static VALUE buffer_delete(VALUE self, VALUE num)
{
! buf_T *buf = get_buf(self);
! long n = NUM2LONG(num);
! #ifdef FEAT_AUTOCMD
! aco_save_T aco;
! #else
! buf_T *save_curbuf = curbuf;
! #endif
! if (n > 0 && n <= buf->b_ml.ml_line_count)
! {
! #ifdef FEAT_AUTOCMD
! /* set curwin/curbuf for "buf" and save some things */
! aucmd_prepbuf(&aco, buf);
! #else
curbuf = buf;
+ curwin->w_buffer = buf;
+ #endif
+
if (u_savedel(n, 1) == OK) {
ml_delete(n, 0);
***************
*** 691,700 ****
changed();
}
! curbuf = savebuf;
update_curbuf(NOT_VALID);
}
! else {
rb_raise(rb_eIndexError, "index %d out of buffer", n);
}
return Qnil;
--- 724,742 ----
changed();
}
!
! #ifdef FEAT_AUTOCMD
! /* restore curwin/curbuf and a few other things */
! aucmd_restbuf(&aco);
! /* Careful: autocommands may have made "buf" invalid! */
! #else
! curwin->w_buffer = save_curbuf;
! curbuf = save_curbuf;
! #endif
update_curbuf(NOT_VALID);
}
! else
! {
rb_raise(rb_eIndexError, "index %d out of buffer", n);
}
return Qnil;
***************
*** 702,714 ****
static VALUE buffer_append(VALUE self, VALUE num, VALUE str)
{
! buf_T *buf = get_buf(self);
! buf_T *savebuf = curbuf;
! char *line = STR2CSTR(str);
! long n = NUM2LONG(num);
! if (n >= 0 && n <= buf->b_ml.ml_line_count && line != NULL) {
curbuf = buf;
if (u_inssub(n + 1) == OK) {
ml_append(n, (char_u *) line, (colnr_T) 0, FALSE);
--- 744,768 ----
static VALUE buffer_append(VALUE self, VALUE num, VALUE str)
{
! buf_T *buf = get_buf(self);
! char *line = STR2CSTR(str);
! long n = NUM2LONG(num);
! #ifdef FEAT_AUTOCMD
! aco_save_T aco;
! #else
! buf_T *save_curbuf = curbuf;
! #endif
! if (n >= 0 && n <= buf->b_ml.ml_line_count && line != NULL)
! {
! #ifdef FEAT_AUTOCMD
! /* set curwin/curbuf for "buf" and save some things */
! aucmd_prepbuf(&aco, buf);
! #else
curbuf = buf;
+ curwin->w_buffer = buf;
+ #endif
+
if (u_inssub(n + 1) == OK) {
ml_append(n, (char_u *) line, (colnr_T) 0, FALSE);
***************
*** 718,724 ****
changed();
}
! curbuf = savebuf;
update_curbuf(NOT_VALID);
}
else {
--- 772,786 ----
changed();
}
!
! #ifdef FEAT_AUTOCMD
! /* restore curwin/curbuf and a few other things */
! aucmd_restbuf(&aco);
! /* Careful: autocommands may have made "buf" invalid! */
! #else
! curwin->w_buffer = save_curbuf;
! curbuf = save_curbuf;
! #endif
update_curbuf(NOT_VALID);
}
else {
*** ../vim-7.0.021/src/version.c Tue Jun 20 20:49:42 2006
--- src/version.c Tue Jun 20 18:42:35 2006
***************
*** 668,669 ****
--- 668,671 ----
{ /* Add new patch number below this line */
+ /**/
+ 22,
/**/

170
7.0.023
View File

@ -1,170 +0,0 @@
To: vim-dev@vim.org
Subject: Patch 7.0.023
Fcc: outbox
From: Bram Moolenaar <Bram@moolenaar.net>
Mime-Version: 1.0
Content-Type: text/plain; charset=ISO-8859-1
Content-Transfer-Encoding: 8bit
------------
Patch 7.0.023
Problem: Crash when doing spell completion in an empty line and pressing
CTRL-E.
Solution: Check for a zero pointer. (James Vega)
Also handle a situation without a matching pattern better, report
"No matches" instead of remaining in undefined CTRL-X mode. And
get out of CTRL-X mode when typing a letter.
Files: src/edit.c
*** ../vim-7.0.022/src/edit.c Sat May 13 15:27:57 2006
--- src/edit.c Thu Jun 22 16:44:01 2006
***************
*** 719,727 ****
#ifdef FEAT_INS_EXPAND
/*
* Special handling of keys while the popup menu is visible or wanted
! * and the cursor is still in the completed word.
*/
! if (compl_started && pum_wanted() && curwin->w_cursor.col >= compl_col)
{
/* BS: Delete one character from "compl_leader". */
if ((c == K_BS || c == Ctrl_H)
--- 721,734 ----
#ifdef FEAT_INS_EXPAND
/*
* Special handling of keys while the popup menu is visible or wanted
! * and the cursor is still in the completed word. Only when there is
! * a match, skip this when no matches were found.
*/
! if (compl_started
! && pum_wanted()
! && curwin->w_cursor.col >= compl_col
! && (compl_shown_match == NULL
! || compl_shown_match != compl_shown_match->cp_next))
{
/* BS: Delete one character from "compl_leader". */
if ((c == K_BS || c == Ctrl_H)
***************
*** 3393,3408 ****
ptr = compl_leader;
else
ptr = compl_orig_text;
! p = compl_orig_text;
! for (temp = 0; p[temp] != NUL && p[temp] == ptr[temp]; ++temp)
! ;
#ifdef FEAT_MBYTE
! if (temp > 0)
! temp -= (*mb_head_off)(compl_orig_text, p + temp);
#endif
! for (p += temp; *p != NUL; mb_ptr_adv(p))
! AppendCharToRedobuff(K_BS);
! AppendToRedobuffLit(ptr + temp, -1);
}
#ifdef FEAT_CINDENT
--- 3401,3421 ----
ptr = compl_leader;
else
ptr = compl_orig_text;
! if (compl_orig_text != NULL)
! {
! p = compl_orig_text;
! for (temp = 0; p[temp] != NUL && p[temp] == ptr[temp];
! ++temp)
! ;
#ifdef FEAT_MBYTE
! if (temp > 0)
! temp -= (*mb_head_off)(compl_orig_text, p + temp);
#endif
! for (p += temp; *p != NUL; mb_ptr_adv(p))
! AppendCharToRedobuff(K_BS);
! }
! if (ptr != NULL)
! AppendToRedobuffLit(ptr + temp, -1);
}
#ifdef FEAT_CINDENT
***************
*** 4650,4659 ****
(int)STRLEN(compl_pattern), curs_col);
if (compl_xp.xp_context == EXPAND_UNSUCCESSFUL
|| compl_xp.xp_context == EXPAND_NOTHING)
! return FAIL;
! startcol = (int)(compl_xp.xp_pattern - compl_pattern);
! compl_col = startcol;
! compl_length = curs_col - startcol;
}
else if (ctrl_x_mode == CTRL_X_FUNCTION || ctrl_x_mode == CTRL_X_OMNI)
{
--- 4663,4680 ----
(int)STRLEN(compl_pattern), curs_col);
if (compl_xp.xp_context == EXPAND_UNSUCCESSFUL
|| compl_xp.xp_context == EXPAND_NOTHING)
! {
! compl_col = curs_col;
! compl_length = 0;
! vim_free(compl_pattern);
! compl_pattern = NULL;
! }
! else
! {
! startcol = (int)(compl_xp.xp_pattern - compl_pattern);
! compl_col = startcol;
! compl_length = curs_col - startcol;
! }
}
else if (ctrl_x_mode == CTRL_X_FUNCTION || ctrl_x_mode == CTRL_X_OMNI)
{
***************
*** 4707,4717 ****
else
compl_col = spell_word_start(startcol);
if (compl_col >= (colnr_T)startcol)
! return FAIL;
! spell_expand_check_cap(compl_col);
/* Need to obtain "line" again, it may have become invalid. */
line = ml_get(curwin->w_cursor.lnum);
- compl_length = (int)curs_col - compl_col;
compl_pattern = vim_strnsave(line + compl_col, compl_length);
if (compl_pattern == NULL)
#endif
--- 4728,4744 ----
else
compl_col = spell_word_start(startcol);
if (compl_col >= (colnr_T)startcol)
! {
! compl_length = 0;
! compl_col = curs_col;
! }
! else
! {
! spell_expand_check_cap(compl_col);
! compl_length = (int)curs_col - compl_col;
! }
/* Need to obtain "line" again, it may have become invalid. */
line = ml_get(curwin->w_cursor.lnum);
compl_pattern = vim_strnsave(line + compl_col, compl_length);
if (compl_pattern == NULL)
#endif
*** ../vim-7.0.022/src/version.c Tue Jun 20 21:08:02 2006
--- src/version.c Thu Jun 22 16:34:42 2006
***************
*** 668,669 ****
--- 668,671 ----
{ /* Add new patch number below this line */
+ /**/
+ 23,
/**/
--
BEDEVERE: Look! It's the old man from scene 24 - what's he Doing here?
ARTHUR: He is the keeper of the Bridge. He asks each traveler five
questions ...
GALAHAD: Three questions.
"Monty Python and the Holy Grail" PYTHON (MONTY) PICTURES LTD
/// Bram Moolenaar -- Bram@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 ///

53
7.0.024
View File

@ -1,53 +0,0 @@
To: vim-dev@vim.org
Subject: Patch 7.0.024
Fcc: outbox
From: Bram Moolenaar <Bram@moolenaar.net>
Mime-Version: 1.0
Content-Type: text/plain; charset=ISO-8859-1
Content-Transfer-Encoding: 8bit
------------
Patch 7.0.024
Problem: It is possible to set arbitrary "v:" variables.
Solution: Disallow setting "v:" variables that are not predefined.
Files: src/eval.c
*** ../vim-7.0.023/src/eval.c Sat May 13 13:36:47 2006
--- src/eval.c Thu Jun 22 17:27:51 2006
***************
*** 17759,17764 ****
--- 17763,17775 ----
}
else /* add a new variable */
{
+ /* Can't add "v:" variable. */
+ if (ht == &vimvarht)
+ {
+ EMSG2(_(e_illvar), name);
+ return;
+ }
+
/* Make sure the variable name is valid. */
for (p = varname; *p != NUL; ++p)
if (!eval_isnamec1(*p) && (p == varname || !VIM_ISDIGIT(*p))
*** ../vim-7.0.023/src/version.c Thu Jun 22 16:48:43 2006
--- src/version.c Thu Jun 22 17:30:59 2006
***************
*** 668,669 ****
--- 668,671 ----
{ /* Add new patch number below this line */
+ /**/
+ 24,
/**/
--
ARTHUR: No, hang on! Just answer the five questions ...
GALAHAD: Three questions ...
ARTHUR: Three questions ... And we shall watch ... and pray.
"Monty Python and the Holy Grail" PYTHON (MONTY) PICTURES LTD
/// Bram Moolenaar -- Bram@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 ///

80
7.0.025
View File

@ -1,80 +0,0 @@
To: vim-dev@vim.org
Subject: Patch 7.0.025
Fcc: outbox
From: Bram Moolenaar <Bram@moolenaar.net>
Mime-Version: 1.0
Content-Type: text/plain; charset=ISO-8859-1
Content-Transfer-Encoding: 8bit
------------
Patch 7.0.025
Problem: Crash when removing an element of a:000. (Nikolai Weibull)
Solution: Mark the a:000 list with VAR_FIXED.
Files: src/eval.c
*** ../vim-7.0.024/src/eval.c Thu Jun 22 17:33:49 2006
--- src/eval.c Thu Jun 22 17:56:50 2006
***************
*** 13250,13256 ****
if (argvars[2].v_type != VAR_UNKNOWN)
EMSG2(_(e_toomanyarg), "remove()");
else if ((d = argvars[0].vval.v_dict) != NULL
! && !tv_check_lock(d->dv_lock, (char_u *)"remove()"))
{
key = get_tv_string_chk(&argvars[1]);
if (key != NULL)
--- 13254,13260 ----
if (argvars[2].v_type != VAR_UNKNOWN)
EMSG2(_(e_toomanyarg), "remove()");
else if ((d = argvars[0].vval.v_dict) != NULL
! && !tv_check_lock(d->dv_lock, (char_u *)"remove() argument"))
{
key = get_tv_string_chk(&argvars[1]);
if (key != NULL)
***************
*** 13270,13276 ****
else if (argvars[0].v_type != VAR_LIST)
EMSG2(_(e_listdictarg), "remove()");
else if ((l = argvars[0].vval.v_list) != NULL
! && !tv_check_lock(l->lv_lock, (char_u *)"remove()"))
{
int error = FALSE;
--- 13274,13280 ----
else if (argvars[0].v_type != VAR_LIST)
EMSG2(_(e_listdictarg), "remove()");
else if ((l = argvars[0].vval.v_list) != NULL
! && !tv_check_lock(l->lv_lock, (char_u *)"remove() argument"))
{
int error = FALSE;
***************
*** 19693,19698 ****
--- 19697,19703 ----
v->di_tv.vval.v_list = &fc.l_varlist;
vim_memset(&fc.l_varlist, 0, sizeof(list_T));
fc.l_varlist.lv_refcount = 99999;
+ fc.l_varlist.lv_lock = VAR_FIXED;
/*
* Set a:firstline to "firstline" and a:lastline to "lastline".
*** ../vim-7.0.024/src/version.c Thu Jun 22 17:33:49 2006
--- src/version.c Thu Jun 22 17:59:17 2006
***************
*** 668,669 ****
--- 668,671 ----
{ /* Add new patch number below this line */
+ /**/
+ 25,
/**/
--
BRIDGEKEEPER: What is your favorite colour?
GAWAIN: Blue ... No yelloooooww!
"Monty Python and the Holy Grail" PYTHON (MONTY) PICTURES LTD
/// Bram Moolenaar -- Bram@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 ///

60
7.0.026
View File

@ -1,60 +0,0 @@
To: vim-dev@vim.org
Subject: Patch 7.0.026
Fcc: outbox
From: Bram Moolenaar <Bram@moolenaar.net>
Mime-Version: 1.0
Content-Type: text/plain; charset=ISO-8859-1
Content-Transfer-Encoding: 8bit
------------
Patch 7.0.026
Problem: Using libcall() may show an old error.
Solution: Invoke dlerror() to clear a previous error. (Yukihiro Nakadaira)
Files: src/os_unix.c
*** ../vim-7.0.025/src/os_unix.c Wed May 3 00:01:30 2006
--- src/os_unix.c Sat Jun 17 21:00:14 2006
***************
*** 5757,5764 ****
int retval_int = 0;
int success = FALSE;
! /* Get a handle to the DLL module. */
# if defined(USE_DLOPEN)
hinstLib = dlopen((char *)libname, RTLD_LAZY
# ifdef RTLD_LOCAL
| RTLD_LOCAL
--- 5758,5770 ----
int retval_int = 0;
int success = FALSE;
! /*
! * Get a handle to the DLL module.
! */
# if defined(USE_DLOPEN)
+ /* First clear any error, it's not cleared by the dlopen() call. */
+ (void)dlerror();
+
hinstLib = dlopen((char *)libname, RTLD_LAZY
# ifdef RTLD_LOCAL
| RTLD_LOCAL
*** ../vim-7.0.025/src/version.c Thu Jun 22 18:02:06 2006
--- src/version.c Thu Jun 22 18:05:10 2006
***************
*** 668,669 ****
--- 668,671 ----
{ /* Add new patch number below this line */
+ /**/
+ 26,
/**/
--
BRIDGEKEEPER: What is your favorite editor?
GAWAIN: Emacs ... No, Viiiiiiiiiiimmmmmmm!
"Monty Python and the Holy editor wars" PYTHON (MONTY) SOFTWARE LTD
/// Bram Moolenaar -- Bram@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 ///

48
7.0.027
View File

@ -1,48 +0,0 @@
To: vim-dev@vim.org
Subject: Patch 7.0.027 (extra)
Fcc: outbox
From: Bram Moolenaar <Bram@moolenaar.net>
Mime-Version: 1.0
Content-Type: text/plain; charset=ISO-8859-1
Content-Transfer-Encoding: 8bit
------------
Patch 7.0.027 (extra)
Problem: Win32: When compiled with SNIFF gvim may hang on exit.
Solution: Translate and dispatch the WM_USER message. (Mathias Michaelis)
Files: src/gui_w48.c
*** ../vim-7.0.026/src/gui_w48.c Thu Apr 27 01:52:16 2006
--- src/gui_w48.c Sat Jun 17 13:23:26 2006
***************
*** 1664,1670 ****
--- 1664,1674 ----
/* request is handled in normal.c */
}
if (msg.message == WM_USER)
+ {
+ MyTranslateMessage(&msg)
+ DispatchMessage(&msg);
return;
+ }
#endif
#ifdef MSWIN_FIND_REPLACE
*** ../vim-7.0.026/src/version.c Thu Jun 22 18:06:48 2006
--- src/version.c Thu Jun 22 18:20:40 2006
***************
*** 668,669 ****
--- 668,671 ----
{ /* Add new patch number below this line */
+ /**/
+ 27,
/**/
--
SIGFUN -- signature too funny (core dumped)
/// Bram Moolenaar -- Bram@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 ///

90
7.0.028
View File

@ -1,90 +0,0 @@
To: vim-dev@vim.org
Subject: Patch 7.0.028 (extra)
Fcc: outbox
From: Bram Moolenaar <Bram@moolenaar.net>
Mime-Version: 1.0
Content-Type: text/plain; charset=ISO-8859-1
Content-Transfer-Encoding: 8bit
------------
Patch 7.0.028 (extra)
Problem: OS/2: Vim doesn't compile with gcc 3.2.1.
Solution: Add argument to after_pathsep(), don't define vim_handle_signal(),
define HAVE_STDARG_H. (David Sanders)
Files: src/os_unix.c, src/vim.h, src/os_os2_cfg.h
*** ../vim-7.0.027/src/os_unix.c Thu Jun 22 18:06:48 2006
--- src/os_unix.c Sat Jun 17 21:00:14 2006
***************
*** 4971,4977 ****
if (((*file)[*num_file] = alloc(len + 2)) != NULL)
{
STRCPY((*file)[*num_file], p);
! if (!after_pathsep((*file)[*num_file] + len))
{
(*file)[*num_file][len] = psepc;
(*file)[*num_file][len + 1] = NUL;
--- 4971,4978 ----
if (((*file)[*num_file] = alloc(len + 2)) != NULL)
{
STRCPY((*file)[*num_file], p);
! if (!after_pathsep((*file)[*num_file],
! (*file)[*num_file] + len))
{
(*file)[*num_file][len] = psepc;
(*file)[*num_file][len + 1] = NUL;
*** ../vim-7.0.027/src/vim.h Sun Apr 30 20:27:22 2006
--- src/vim.h Sat Jun 17 20:59:31 2006
***************
*** 1983,1989 ****
/* values for vim_handle_signal() that are not a signal */
#define SIGNAL_BLOCK -1
#define SIGNAL_UNBLOCK -2
! #if !defined(UNIX) && !defined(VMS)
# define vim_handle_signal(x) 0
#endif
--- 1983,1989 ----
/* values for vim_handle_signal() that are not a signal */
#define SIGNAL_BLOCK -1
#define SIGNAL_UNBLOCK -2
! #if !defined(UNIX) && !defined(VMS) && !defined(OS2)
# define vim_handle_signal(x) 0
#endif
*** ../vim-7.0.027/src/os_os2_cfg.h Sun Jun 13 18:47:02 2004
--- src/os_os2_cfg.h Sat Jun 17 20:58:56 2006
***************
*** 183,188 ****
--- 183,191 ----
/* Define if you have the ANSI C header files. */
/* #undef STDC_HEADERS */
+ /* added by David Sanders */
+ #define HAVE_STDARG_H 1
+
/* instead, we check a few STDC things ourselves */
#define HAVE_STDLIB_H 1
#undef HAVE_STRING_H /* On EMX it is better to use strings.h */
*** ../vim-7.0.027/src/version.c Thu Jun 22 19:34:23 2006
--- src/version.c Thu Jun 22 19:41:06 2006
***************
*** 668,669 ****
--- 668,671 ----
{ /* Add new patch number below this line */
+ /**/
+ 28,
/**/
--
BRIDGEKEEPER: What is the air-speed velocity of an unladen swallow?
ARTHUR: What do you mean? An African or European swallow?
BRIDGEKEEPER: Er ... I don't know that ... Aaaaarrrrrrggghhh!
BRIDGEKEEPER is cast into the gorge.
"Monty Python and the Holy Grail" PYTHON (MONTY) PICTURES LTD
/// Bram Moolenaar -- Bram@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 ///

48
7.0.029
View File

@ -1,48 +0,0 @@
To: vim-dev@vim.org
Subject: Patch 7.0.029
Fcc: outbox
From: Bram Moolenaar <Bram@moolenaar.net>
Mime-Version: 1.0
Content-Type: text/plain; charset=ISO-8859-1
Content-Transfer-Encoding: 8bit
------------
Patch 7.0.029
Problem: getchar() may not position the cursor after a space.
Solution: Position the cursor explicitly.
Files: src/eval.c
*** ../vim-7.0.028/src/eval.c Thu Jun 22 18:02:06 2006
--- src/eval.c Thu Jun 22 21:00:00 2006
***************
*** 9792,9797 ****
--- 9792,9800 ----
varnumber_T n;
int error = FALSE;
+ /* Position the cursor. Needed after a message that ends in a space. */
+ windgoto(msg_row, msg_col);
+
++no_mapping;
++allow_keys;
if (argvars[0].v_type == VAR_UNKNOWN)
*** ../vim-7.0.028/src/version.c Thu Jun 22 19:47:11 2006
--- src/version.c Thu Jun 22 20:55:43 2006
***************
*** 668,669 ****
--- 668,671 ----
{ /* Add new patch number below this line */
+ /**/
+ 29,
/**/
--
BEDEVERE: How do you know so much about swallows?
ARTHUR: Well you have to know these things when you're a king, you know.
"Monty Python and the Holy Grail" PYTHON (MONTY) PICTURES LTD
/// Bram Moolenaar -- Bram@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 ///

52
7.0.030
View File

@ -1,52 +0,0 @@
To: vim-dev@vim.org
Subject: Patch 7.0.030
Fcc: outbox
From: Bram Moolenaar <Bram@moolenaar.net>
Mime-Version: 1.0
Content-Type: text/plain; charset=ISO-8859-1
Content-Transfer-Encoding: 8bit
------------
Patch 7.0.030
Problem: The ":compiler" command can't be used in a FileChangedRO event.
(Hari Krishna Dara)
Solution: Add the CMDWIN flag to the ":compiler" command.
Files: src/ex_cmds.h
*** ../vim-7.0.029/src/ex_cmds.h Fri Apr 7 23:40:07 2006
--- src/ex_cmds.h Sun Jun 18 22:44:01 2006
***************
*** 262,268 ****
EX(CMD_comclear, "comclear", ex_comclear,
TRLBAR|CMDWIN),
EX(CMD_compiler, "compiler", ex_compiler,
! BANG|TRLBAR|WORD1),
EX(CMD_continue, "continue", ex_continue,
TRLBAR|SBOXOK|CMDWIN),
EX(CMD_confirm, "confirm", ex_wrongmodifier,
--- 262,268 ----
EX(CMD_comclear, "comclear", ex_comclear,
TRLBAR|CMDWIN),
EX(CMD_compiler, "compiler", ex_compiler,
! BANG|TRLBAR|WORD1|CMDWIN),
EX(CMD_continue, "continue", ex_continue,
TRLBAR|SBOXOK|CMDWIN),
EX(CMD_confirm, "confirm", ex_wrongmodifier,
*** ../vim-7.0.029/src/version.c Thu Jun 22 21:01:19 2006
--- src/version.c Thu Jun 22 21:08:12 2006
***************
*** 668,669 ****
--- 668,671 ----
{ /* Add new patch number below this line */
+ /**/
+ 30,
/**/
--
Every person is responsible for the choices he makes.
/// Bram Moolenaar -- Bram@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 ///

58
7.0.031
View File

@ -1,58 +0,0 @@
To: vim-dev@vim.org
Subject: Patch 7.0.031
Fcc: outbox
From: Bram Moolenaar <Bram@moolenaar.net>
Mime-Version: 1.0
Content-Type: text/plain; charset=ISO-8859-1
Content-Transfer-Encoding: 8bit
------------
Patch 7.0.031
Problem: When deleting a buffer the buffer-local mappings for Select mode
remain.
Solution: Add the Select mode bit to MAP_ALL_MODES. (Edwin Steiner)
Files: src/vim.h
*** ../vim-7.0.030/src/vim.h Thu Jun 22 19:47:11 2006
--- src/vim.h Fri Jun 23 16:29:03 2006
***************
*** 585,591 ****
#define INSERT 0x10 /* Insert mode */
#define LANGMAP 0x20 /* Language mapping, can be combined with
INSERT and CMDLINE */
- #define MAP_ALL_MODES 0x3f /* all mode bits used for mapping */
#define REPLACE_FLAG 0x40 /* Replace mode flag */
#define REPLACE (REPLACE_FLAG + INSERT)
--- 585,590 ----
***************
*** 604,609 ****
--- 603,611 ----
#define SHOWMATCH (0x700 + INSERT) /* show matching paren */
#define CONFIRM 0x800 /* ":confirm" prompt */
#define SELECTMODE 0x1000 /* Select mode, only for mappings */
+
+ #define MAP_ALL_MODES (0x3f | SELECTMODE) /* all mode bits used for
+ * mapping */
/* directions */
#define FORWARD 1
*** ../vim-7.0.030/src/version.c Thu Jun 22 21:15:46 2006
--- src/version.c Fri Jun 23 16:33:25 2006
***************
*** 668,669 ****
--- 668,671 ----
{ /* Add new patch number below this line */
+ /**/
+ 31,
/**/
--
Why don't cannibals eat clowns?
Because they taste funny.
/// Bram Moolenaar -- Bram@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 ///

53
7.0.032
View File

@ -1,53 +0,0 @@
To: vim-dev@vim.org
Subject: Patch 7.0.032 (extra)
Fcc: outbox
From: Bram Moolenaar <Bram@moolenaar.net>
Mime-Version: 1.0
Content-Type: text/plain; charset=ISO-8859-1
Content-Transfer-Encoding: 8bit
------------
Patch 7.0.032 (extra, after 7.0.027)
Problem: Missing semicolon.
Solution: Add the semicolon.
Files: src/gui_w48.c
*** ../vim-7.0.031/src/gui_w48.c Thu Jun 22 19:34:23 2006
--- src/gui_w48.c Fri Jun 23 16:36:09 2006
***************
*** 1665,1671 ****
}
if (msg.message == WM_USER)
{
! MyTranslateMessage(&msg)
DispatchMessage(&msg);
return;
}
--- 1665,1671 ----
}
if (msg.message == WM_USER)
{
! MyTranslateMessage(&msg);
DispatchMessage(&msg);
return;
}
*** ../vim-7.0.031/src/version.c Fri Jun 23 16:33:41 2006
--- src/version.c Fri Jun 23 16:37:24 2006
***************
*** 668,669 ****
--- 668,671 ----
{ /* Add new patch number below this line */
+ /**/
+ 32,
/**/
--
Snoring is prohibited unless all bedroom windows are closed and securely
locked.
[real standing law in Massachusetts, United States of America]
/// Bram Moolenaar -- Bram@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 ///

69
7.0.033
View File

@ -1,69 +0,0 @@
To: vim-dev@vim.org
Subject: Patch 7.0.033
Fcc: outbox
From: Bram Moolenaar <Bram@moolenaar.net>
Mime-Version: 1.0
Content-Type: text/plain; charset=ISO-8859-1
Content-Transfer-Encoding: 8bit
------------
Patch 7.0.033
Problem: When pasting text, with the menu or CTRL-V, autoindent is removed.
Solution: Use "x<BS>" to avoid indent to be removed. (Benji Fisher)
Files: runtime/autoload/paste.vim
*** ../vim-7.0.032/runtime/autoload/paste.vim Fri Apr 21 23:57:39 2006
--- runtime/autoload/paste.vim Fri Jun 23 17:18:48 2006
***************
*** 1,6 ****
" Vim support file to help with paste mappings and menus
" Maintainer: Bram Moolenaar <Bram@vim.org>
! " Last Change: 2006 Apr 21
" Define the string to use for items that are present both in Edit, Popup and
" Toolbar menu. Also used in mswin.vim and macmap.vim.
--- 1,6 ----
" Vim support file to help with paste mappings and menus
" Maintainer: Bram Moolenaar <Bram@vim.org>
! " Last Change: 2006 Jun 23
" Define the string to use for items that are present both in Edit, Popup and
" Toolbar menu. Also used in mswin.vim and macmap.vim.
***************
*** 12,18 ****
if has("virtualedit")
let paste#paste_cmd = {'n': ":call paste#Paste()<CR>"}
let paste#paste_cmd['v'] = '"-c<Esc>' . paste#paste_cmd['n']
! let paste#paste_cmd['i'] = '<Esc>' . paste#paste_cmd['n'] . 'gi'
func! paste#Paste()
let ove = &ve
--- 12,18 ----
if has("virtualedit")
let paste#paste_cmd = {'n': ":call paste#Paste()<CR>"}
let paste#paste_cmd['v'] = '"-c<Esc>' . paste#paste_cmd['n']
! let paste#paste_cmd['i'] = 'x<BS><Esc>' . paste#paste_cmd['n'] . 'gi'
func! paste#Paste()
let ove = &ve
*** ../vim-7.0.032/src/version.c Fri Jun 23 16:44:32 2006
--- src/version.c Fri Jun 23 17:18:56 2006
***************
*** 668,669 ****
--- 668,671 ----
{ /* Add new patch number below this line */
+ /**/
+ 33,
/**/
--
Yesterday, all my deadlines seemed so far away
now it looks as though it's freeze in four days
oh I believe in cvs..
[ CVS log "Beatles style" for FreeBSD ports/INDEX, Satoshi Asami ]
/// Bram Moolenaar -- Bram@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 ///

63
7.0.034
View File

@ -1,63 +0,0 @@
To: vim-dev@vim.org
Subject: Patch 7.0.034
Fcc: outbox
From: Bram Moolenaar <Bram@moolenaar.net>
Mime-Version: 1.0
Content-Type: text/plain; charset=ISO-8859-1
Content-Transfer-Encoding: 8bit
------------
Patch 7.0.034
Problem: After doing completion and typing more characters or using BS
repeating with "." didn't work properly. (Martin Stubenschrott)
Solution: Don't put BS and other characters in the redo buffer right away,
do this when finishing completion.
Files: src/edit.c
*** ../vim-7.0.033/src/edit.c Thu Jun 22 16:48:43 2006
--- src/edit.c Fri Jun 23 17:50:47 2006
***************
*** 3020,3028 ****
if ((int)(p - line) - (int)compl_col <= 0)
return K_BS;
- /* For redo we need to repeat this backspace. */
- AppendCharToRedobuff(K_BS);
-
/* Deleted more than what was used to find matches or didn't finish
* finding all matches: need to look for matches all over again. */
if (curwin->w_cursor.col <= compl_col + compl_length
--- 3020,3025 ----
***************
*** 3121,3130 ****
else
#endif
ins_char(c);
-
- /* For redo we need to count this character so that the number of
- * backspaces is correct. */
- AppendCharToRedobuff(c);
/* If we didn't complete finding matches we must search again. */
if (compl_was_interrupted)
--- 3118,3123 ----
*** ../vim-7.0.033/src/version.c Fri Jun 23 17:26:02 2006
--- src/version.c Fri Jun 23 17:59:04 2006
***************
*** 668,669 ****
--- 668,671 ----
{ /* Add new patch number below this line */
+ /**/
+ 34,
/**/
--
A parent can be arrested if his child cannot hold back a burp during a church
service.
[real standing law in Nebraska, United States of America]
/// Bram Moolenaar -- Bram@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 ///

205
7.0.035
View File

@ -1,205 +0,0 @@
To: vim-dev@vim.org
Subject: Patch 7.0.035
Fcc: outbox
From: Bram Moolenaar <Bram@moolenaar.net>
Mime-Version: 1.0
Content-Type: text/plain; charset=ISO-8859-1
Content-Transfer-Encoding: 8bit
------------
Patch 7.0.035
Problem: Insert mode completion works when typed but not when replayed from
a register. (Hari Krishna Dara)
Also: Mappings for Insert mode completion don't always work.
Solution: When finding a non-completion key in the input don't interrupt
completion when it wasn't typed.
Do use mappings when checking for typeahead while still finding
completions. Avoids that completion is interrupted too soon.
Use "compl_pending" in a different way.
Files: src/edit.c
*** ../vim-7.0.034/src/edit.c Fri Jun 23 17:59:26 2006
--- src/edit.c Fri Jun 23 21:32:42 2006
***************
*** 4166,4173 ****
{
if (compl_shows_dir == FORWARD && compl_shown_match->cp_next != NULL)
{
- if (compl_pending != 0)
- --compl_pending;
compl_shown_match = compl_shown_match->cp_next;
found_end = (compl_first_match != NULL
&& (compl_shown_match->cp_next == compl_first_match
--- 4166,4171 ----
***************
*** 4176,4189 ****
else if (compl_shows_dir == BACKWARD
&& compl_shown_match->cp_prev != NULL)
{
- if (compl_pending != 0)
- ++compl_pending;
found_end = (compl_shown_match == compl_first_match);
compl_shown_match = compl_shown_match->cp_prev;
found_end |= (compl_shown_match == compl_first_match);
}
else
{
if (advance)
{
if (compl_shows_dir == BACKWARD)
--- 4174,4197 ----
else if (compl_shows_dir == BACKWARD
&& compl_shown_match->cp_prev != NULL)
{
found_end = (compl_shown_match == compl_first_match);
compl_shown_match = compl_shown_match->cp_prev;
found_end |= (compl_shown_match == compl_first_match);
}
else
{
+ if (!allow_get_expansion)
+ {
+ if (advance)
+ {
+ if (compl_shows_dir == BACKWARD)
+ compl_pending -= todo + 1;
+ else
+ compl_pending += todo + 1;
+ }
+ return -1;
+ }
+
if (advance)
{
if (compl_shows_dir == BACKWARD)
***************
*** 4191,4204 ****
else
++compl_pending;
}
- if (!allow_get_expansion)
- return -1;
/* Find matches. */
num_matches = ins_compl_get_exp(&compl_startpos);
! if (compl_pending != 0 && compl_direction == compl_shows_dir
&& advance)
! compl_shown_match = compl_curr_match;
found_end = FALSE;
}
if ((compl_shown_match->cp_flags & ORIGINAL_TEXT) == 0
--- 4199,4225 ----
else
++compl_pending;
}
/* Find matches. */
num_matches = ins_compl_get_exp(&compl_startpos);
!
! /* handle any pending completions */
! while (compl_pending != 0 && compl_direction == compl_shows_dir
&& advance)
! {
! if (compl_pending > 0 && compl_shown_match->cp_next != NULL)
! {
! compl_shown_match = compl_shown_match->cp_next;
! --compl_pending;
! }
! if (compl_pending < 0 && compl_shown_match->cp_prev != NULL)
! {
! compl_shown_match = compl_shown_match->cp_prev;
! ++compl_pending;
! }
! else
! break;
! }
found_end = FALSE;
}
if ((compl_shown_match->cp_flags & ORIGINAL_TEXT) == 0
***************
*** 4307,4315 ****
return;
count = 0;
! ++no_mapping;
c = vpeekc_any();
- --no_mapping;
if (c != NUL)
{
if (vim_is_ctrl_x_key(c) && c != Ctrl_X && c != Ctrl_R)
--- 4328,4336 ----
return;
count = 0;
! /* Check for a typed key. Do use mappings, otherwise vim_is_ctrl_x_key()
! * can't do its work correctly. */
c = vpeekc_any();
if (c != NUL)
{
if (vim_is_ctrl_x_key(c) && c != Ctrl_X && c != Ctrl_R)
***************
*** 4319,4330 ****
(void)ins_compl_next(FALSE, ins_compl_key2count(c),
c != K_UP && c != K_DOWN);
}
! else if (c != Ctrl_R)
! compl_interrupted = TRUE;
}
if (compl_pending != 0 && !got_int)
! (void)ins_compl_next(FALSE, compl_pending > 0
! ? compl_pending : -compl_pending, TRUE);
}
/*
--- 4340,4366 ----
(void)ins_compl_next(FALSE, ins_compl_key2count(c),
c != K_UP && c != K_DOWN);
}
! else
! {
! /* Need to get the character to have KeyTyped set. We'll put it
! * back with vungetc() below. */
! c = safe_vgetc();
!
! /* Don't interrupt completion when the character wasn't typed,
! * e.g., when doing @q to replay keys. */
! if (c != Ctrl_R && KeyTyped)
! compl_interrupted = TRUE;
!
! vungetc(c);
! }
}
if (compl_pending != 0 && !got_int)
! {
! int todo = compl_pending > 0 ? compl_pending : -compl_pending;
!
! compl_pending = 0;
! (void)ins_compl_next(FALSE, todo, TRUE);
! }
}
/*
*** ../vim-7.0.034/src/version.c Fri Jun 23 17:59:26 2006
--- src/version.c Fri Jun 23 21:35:39 2006
***************
*** 668,669 ****
--- 668,671 ----
{ /* Add new patch number below this line */
+ /**/
+ 35,
/**/
--
So when I saw the post to comp.editors, I rushed over to the FTP site to
grab it. So I yank apart the tarball, light x candles, where x= the
vim version multiplied by the md5sum of the source divided by the MAC of
my NIC (8A3FA78155A8A1D346C3C4A), put on black robes, dim the lights,
wave a dead chicken over the hard drive, and summon the power of GNU GCC
with the magic words "make config ; make!".
[Jason Spence, compiling Vim 5.0]
/// Bram Moolenaar -- Bram@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 ///

140
7.0.036
View File

@ -1,140 +0,0 @@
To: vim-dev@vim.org
Subject: Patch 7.0.036
Fcc: outbox
From: Bram Moolenaar <Bram@moolenaar.net>
Mime-Version: 1.0
Content-Type: text/plain; charset=ISO-8859-1
Content-Transfer-Encoding: 8bit
------------
Patch 7.0.036
Problem: Can't compile with small features and syntax highlighting or the
diff feature.
Solution: Define LINE_ATTR whenever syntax highlighting or the diff feature
is enabled.
Files: src/screen.c
*** ../vim-7.0.035/src/screen.c Fri May 5 23:13:04 2006
--- src/screen.c Tue Jul 11 21:33:53 2006
***************
*** 2612,2618 ****
#ifdef FEAT_LINEBREAK
int need_showbreak = FALSE;
#endif
! #if defined(FEAT_SIGNS) || (defined(FEAT_QUICKFIX) && defined(FEAT_WINDOWS))
# define LINE_ATTR
int line_attr = 0; /* atrribute for the whole line */
#endif
--- 2612,2619 ----
#ifdef FEAT_LINEBREAK
int need_showbreak = FALSE;
#endif
! #if defined(FEAT_SIGNS) || (defined(FEAT_QUICKFIX) && defined(FEAT_WINDOWS)) \
! || defined(FEAT_SYN_HL) || defined(FEAT_DIFF)
# define LINE_ATTR
int line_attr = 0; /* atrribute for the whole line */
#endif
***************
*** 2626,2632 ****
int prev_c = 0; /* previous Arabic character */
int prev_c1 = 0; /* first composing char for prev_c */
#endif
! #if defined(FEAT_DIFF) || defined(LINE_ATTR)
int did_line_attr = 0;
#endif
--- 2627,2633 ----
int prev_c = 0; /* previous Arabic character */
int prev_c1 = 0; /* first composing char for prev_c */
#endif
! #if defined(LINE_ATTR)
int did_line_attr = 0;
#endif
***************
*** 4116,4132 ****
--ptr; /* put it back at the NUL */
}
#endif
! #if defined(FEAT_DIFF) || defined(LINE_ATTR)
else if ((
# ifdef FEAT_DIFF
! diff_hlf != (hlf_T)0
! # ifdef LINE_ATTR
! ||
! # endif
# endif
- # ifdef LINE_ATTR
line_attr != 0
- # endif
) && (
# ifdef FEAT_RIGHTLEFT
wp->w_p_rl ? (col >= 0) :
--- 4117,4128 ----
--ptr; /* put it back at the NUL */
}
#endif
! #if defined(LINE_ATTR)
else if ((
# ifdef FEAT_DIFF
! diff_hlf != (hlf_T)0 ||
# endif
line_attr != 0
) && (
# ifdef FEAT_RIGHTLEFT
wp->w_p_rl ? (col >= 0) :
***************
*** 4237,4243 ****
* At end of the text line or just after the last character.
*/
if (c == NUL
! #if defined(FEAT_DIFF) || defined(LINE_ATTR)
|| did_line_attr == 1
#endif
)
--- 4233,4239 ----
* At end of the text line or just after the last character.
*/
if (c == NUL
! #if defined(LINE_ATTR)
|| did_line_attr == 1
#endif
)
***************
*** 4258,4264 ****
|| prevcol == (long)match_hl[0].startcol
|| prevcol == (long)match_hl[1].startcol
|| prevcol == (long)match_hl[2].startcol)
! # if defined(FEAT_DIFF) || defined(LINE_ATTR)
&& did_line_attr <= 1
# endif
)
--- 4254,4260 ----
|| prevcol == (long)match_hl[0].startcol
|| prevcol == (long)match_hl[1].startcol
|| prevcol == (long)match_hl[2].startcol)
! # if defined(LINE_ATTR)
&& did_line_attr <= 1
# endif
)
*** ../vim-7.0.035/src/version.c Fri Jun 23 21:36:49 2006
--- src/version.c Tue Jul 11 21:36:50 2006
***************
*** 668,669 ****
--- 668,671 ----
{ /* Add new patch number below this line */
+ /**/
+ 36,
/**/
--
Every engineer dreams about saving the universe and having sex with aliens.
This is much more glamorous than the real life of an engineer, which consists
of hiding from the universe and having sex without the participation of other
life forms. (Scott Adams - The Dilbert principle)
/// Bram Moolenaar -- Bram@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 ///

63
7.0.037
View File

@ -1,63 +0,0 @@
To: vim-dev@vim.org
Subject: Patch 7.0.037
Fcc: outbox
From: Bram Moolenaar <Bram@moolenaar.net>
Mime-Version: 1.0
Content-Type: text/plain; charset=ISO-8859-1
Content-Transfer-Encoding: 8bit
------------
Patch 7.0.037
Problem: Crash when resizing the GUI window vertically when there is a line
that doesn't fit.
Solution: Don't redraw while the screen data is invalid.
Files: src/screen.c
*** ../vim-7.0.036/src/screen.c Tue Jul 11 22:36:19 2006
--- src/screen.c Tue Jul 11 21:33:53 2006
***************
*** 7129,7134 ****
--- 7129,7140 ----
return;
entered = TRUE;
+ /*
+ * Note that the window sizes are updated before reallocating the arrays,
+ * thus we must not redraw here!
+ */
+ ++RedrawingDisabled;
+
win_new_shellsize(); /* fit the windows in the new sized shell */
comp_col(); /* recompute columns for shown command and ruler */
***************
*** 7363,7368 ****
--- 7369,7375 ----
#endif
entered = FALSE;
+ --RedrawingDisabled;
#ifdef FEAT_AUTOCMD
if (starting == 0)
*** ../vim-7.0.036/src/version.c Tue Jul 11 22:36:19 2006
--- src/version.c Tue Jul 11 22:38:39 2006
***************
*** 668,669 ****
--- 668,671 ----
{ /* Add new patch number below this line */
+ /**/
+ 37,
/**/
--
For society, it's probably a good thing that engineers value function over
appearance. For example, you wouldn't want engineers to build nuclear power
plants that only _look_ like they would keep all the radiation inside.
(Scott Adams - The Dilbert principle)
/// Bram Moolenaar -- Bram@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 ///

95
7.0.038
View File

@ -1,95 +0,0 @@
To: vim-dev@vim.org
Subject: Patch 7.0.038
Fcc: outbox
From: Bram Moolenaar <Bram@moolenaar.net>
Mime-Version: 1.0
Content-Type: text/plain; charset=ISO-8859-1
Content-Transfer-Encoding: 8bit
------------
Patch 7.0.038
Problem: When calling complete() from an Insert mode expression mapping
text could be inserted in an improper way.
Solution: Make undo_allowed() global and use it in complete().
Files: src/undo.c, src/proto/undo.pro, src/eval.c
*** ../vim-7.0.037/src/undo.c Sat Apr 22 00:01:05 2006
--- src/undo.c Mon Jul 3 22:23:22 2006
***************
*** 84,90 ****
static void u_unch_branch __ARGS((u_header_T *uhp));
static u_entry_T *u_get_headentry __ARGS((void));
static void u_getbot __ARGS((void));
- static int undo_allowed __ARGS((void));
static int u_savecommon __ARGS((linenr_T, linenr_T, linenr_T));
static void u_doit __ARGS((int count));
static void u_undoredo __ARGS((int undo));
--- 84,89 ----
***************
*** 196,202 ****
* Return TRUE when undo is allowed. Otherwise give an error message and
* return FALSE.
*/
! static int
undo_allowed()
{
/* Don't allow changes when 'modifiable' is off. */
--- 195,201 ----
* Return TRUE when undo is allowed. Otherwise give an error message and
* return FALSE.
*/
! int
undo_allowed()
{
/* Don't allow changes when 'modifiable' is off. */
*** ../vim-7.0.037/src/proto/undo.pro Mon Apr 10 16:38:50 2006
--- src/proto/undo.pro Mon Jul 3 22:25:07 2006
***************
*** 4,9 ****
--- 4,10 ----
extern int u_savesub __ARGS((linenr_T lnum));
extern int u_inssub __ARGS((linenr_T lnum));
extern int u_savedel __ARGS((linenr_T lnum, long nlines));
+ extern int undo_allowed __ARGS((void));
extern void u_undo __ARGS((int count));
extern void u_redo __ARGS((int count));
extern void undo_time __ARGS((long step, int sec, int absolute));
*** ../vim-7.0.037/src/eval.c Thu Jun 22 21:01:19 2006
--- src/eval.c Mon Jul 10 23:03:13 2006
***************
*** 8252,8257 ****
--- 8252,8263 ----
EMSG(_("E785: complete() can only be used in Insert mode"));
return;
}
+
+ /* Check for undo allowed here, because if something was already inserted
+ * the line was already saved for undo and this check isn't done. */
+ if (!undo_allowed())
+ return;
+
if (argvars[1].v_type != VAR_LIST || argvars[1].vval.v_list == NULL)
{
EMSG(_(e_invarg));
*** ../vim-7.0.037/src/version.c Tue Jul 11 22:59:04 2006
--- src/version.c Wed Jul 12 20:31:49 2006
***************
*** 668,669 ****
--- 668,671 ----
{ /* Add new patch number below this line */
+ /**/
+ 38,
/**/
--
If someone questions your market projections, simply point out that your
target market is "People who are nuts" and "People who will buy any damn
thing". Nobody is going to tell you there aren't enough of those people
to go around.
(Scott Adams - The Dilbert principle)
/// Bram Moolenaar -- Bram@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 ///

129
7.0.039
View File

@ -1,129 +0,0 @@
To: vim-dev@vim.org
Subject: Patch 7.0.039
Fcc: outbox
From: Bram Moolenaar <Bram@moolenaar.net>
Mime-Version: 1.0
Content-Type: text/plain; charset=ISO-8859-1
Content-Transfer-Encoding: 8bit
------------
Patch 7.0.039
Problem: Calling inputdialog() with a third argument in the console doesn't
work.
Solution: Make a separate function for input() and inputdialog(). (Yegappan
Lakshmanan)
Files: src/eval.c
*** ../vim-7.0.038/src/eval.c Wed Jul 12 21:48:56 2006
--- src/eval.c Mon Jul 10 23:03:13 2006
***************
*** 11321,11334 ****
static int inputsecret_flag = 0;
/*
! * "input()" function
! * Also handles inputsecret() when inputsecret is set.
*/
static void
! f_input(argvars, rettv)
typval_T *argvars;
typval_T *rettv;
{
char_u *prompt = get_tv_string_chk(&argvars[0]);
char_u *p = NULL;
--- 11321,11339 ----
static int inputsecret_flag = 0;
+ static void get_user_input __ARGS((typval_T *argvars, typval_T *rettv, int inputdialog));
+
/*
! * This function is used by f_input() and f_inputdialog() functions. The third
! * argument to f_input() specifies the type of completion to use at the
! * prompt. The third argument to f_inputdialog() specifies the value to return
! * when the user cancels the prompt.
*/
static void
! get_user_input(argvars, rettv, inputdialog)
typval_T *argvars;
typval_T *rettv;
+ int inputdialog;
{
char_u *prompt = get_tv_string_chk(&argvars[0]);
char_u *p = NULL;
***************
*** 11378,11384 ****
if (defstr != NULL)
stuffReadbuffSpec(defstr);
! if (argvars[2].v_type != VAR_UNKNOWN)
{
char_u *xp_name;
int xp_namelen;
--- 11383,11389 ----
if (defstr != NULL)
stuffReadbuffSpec(defstr);
! if (!inputdialog && argvars[2].v_type != VAR_UNKNOWN)
{
char_u *xp_name;
int xp_namelen;
***************
*** 11413,11418 ****
--- 11418,11435 ----
}
/*
+ * "input()" function
+ * Also handles inputsecret() when inputsecret is set.
+ */
+ static void
+ f_input(argvars, rettv)
+ typval_T *argvars;
+ typval_T *rettv;
+ {
+ get_user_input(argvars, rettv, FALSE);
+ }
+
+ /*
* "inputdialog()" function
*/
static void
***************
*** 11452,11458 ****
}
else
#endif
! f_input(argvars, rettv);
}
/*
--- 11469,11475 ----
}
else
#endif
! get_user_input(argvars, rettv, TRUE);
}
/*
*** ../vim-7.0.038/src/version.c Wed Jul 12 21:48:56 2006
--- src/version.c Wed Jul 12 21:56:30 2006
***************
*** 668,669 ****
--- 668,671 ----
{ /* Add new patch number below this line */
+ /**/
+ 39,
/**/
--
A consultant is a person who takes your money and annoys your employees while
tirelessly searching for the best way to extend the consulting contract.
(Scott Adams - The Dilbert principle)
/// Bram Moolenaar -- Bram@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 ///

60
7.0.040
View File

@ -1,60 +0,0 @@
To: vim-dev@vim.org
Subject: Patch 7.0.040
Fcc: outbox
From: Bram Moolenaar <Bram@moolenaar.net>
Mime-Version: 1.0
Content-Type: text/plain; charset=ISO-8859-1
Content-Transfer-Encoding: 8bit
------------
Patch 7.0.040
Problem: When 'cmdheight' is larger than 1 using inputlist() or selecting
a spell suggestion with the mouse gets the wrong entry.
Solution: Start listing the first alternative on the last line of the screen.
Files: src/eval.c, src/spell.c
*** ../vim-7.0.039/src/eval.c Thu Jul 13 08:30:50 2006
--- src/eval.c Mon Jul 10 23:03:13 2006
***************
*** 11497,11502 ****
--- 11497,11503 ----
}
msg_start();
+ msg_row = Rows - 1; /* for when 'cmdheight' > 1 */
lines_left = Rows; /* avoid more prompt */
msg_scroll = TRUE;
msg_clr_eos();
*** ../vim-7.0.039/src/spell.c Sat May 13 14:12:51 2006
--- src/spell.c Mon Jul 10 23:03:04 2006
***************
*** 10071,10076 ****
--- 10071,10077 ----
/* List the suggestions. */
msg_start();
+ msg_row = Rows - 1; /* for when 'cmdheight' > 1 */
lines_left = Rows; /* avoid more prompt */
vim_snprintf((char *)IObuff, IOSIZE, _("Change \"%.*s\" to:"),
sug.su_badlen, sug.su_badptr);
*** ../vim-7.0.039/src/version.c Thu Jul 13 08:30:50 2006
--- src/version.c Sun Jul 23 21:51:04 2006
***************
*** 668,669 ****
--- 668,671 ----
{ /* Add new patch number below this line */
+ /**/
+ 40,
/**/
--
hundred-and-one symptoms of being an internet addict:
40. You tell the cab driver you live at
http://123.elm.street/house/bluetrim.html
41. You actually try that 123.elm.street address.
/// Bram Moolenaar -- Bram@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 ///

81
7.0.041
View File

@ -1,81 +0,0 @@
To: vim-dev@vim.org
Subject: Patch 7.0.041
Fcc: outbox
From: Bram Moolenaar <Bram@moolenaar.net>
Mime-Version: 1.0
Content-Type: text/plain; charset=ISO-8859-1
Content-Transfer-Encoding: 8bit
------------
Patch 7.0.041
Problem: cursor([1, 1]) doesn't work. (Peter Hodge)
Solution: Allow leaving out the third item of the list and use zero for the
virtual column offset.
Files: src/eval.c
*** ../vim-7.0.040/src/eval.c Sun Jul 23 21:52:16 2006
--- src/eval.c Mon Jul 10 23:03:13 2006
***************
*** 16465,16473 ****
long i = 0;
long n;
! /* List must be: [fnum, lnum, col, coladd] */
! if (arg->v_type != VAR_LIST || l == NULL
! || l->lv_len != (fnump == NULL ? 3 : 4))
return FAIL;
if (fnump != NULL)
--- 16465,16476 ----
long i = 0;
long n;
! /* List must be: [fnum, lnum, col, coladd], where "fnum" is only there
! * when "fnump" isn't NULL and "coladd" is optional. */
! if (arg->v_type != VAR_LIST
! || l == NULL
! || l->lv_len < (fnump == NULL ? 2 : 3)
! || l->lv_len > (fnump == NULL ? 3 : 4))
return FAIL;
if (fnump != NULL)
***************
*** 16493,16500 ****
#ifdef FEAT_VIRTUALEDIT
n = list_find_nr(l, i, NULL);
if (n < 0)
! return FAIL;
! posp->coladd = n;
#endif
return OK;
--- 16496,16504 ----
#ifdef FEAT_VIRTUALEDIT
n = list_find_nr(l, i, NULL);
if (n < 0)
! posp->coladd = 0;
! else
! posp->coladd = n;
#endif
return OK;
*** ../vim-7.0.040/src/version.c Sun Jul 23 21:52:16 2006
--- src/version.c Sun Jul 23 21:59:43 2006
***************
*** 668,669 ****
--- 668,671 ----
{ /* Add new patch number below this line */
+ /**/
+ 41,
/**/
--
hundred-and-one symptoms of being an internet addict:
43. You tell the kids they can't use the computer because "Daddy's got work to
do" and you don't even have a job.
/// Bram Moolenaar -- Bram@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 ///

54
7.0.042
View File

@ -1,54 +0,0 @@
To: vim-dev@vim.org
Subject: Patch 7.0.042
Fcc: outbox
From: Bram Moolenaar <Bram@moolenaar.net>
Mime-Version: 1.0
Content-Type: text/plain; charset=ISO-8859-1
Content-Transfer-Encoding: 8bit
------------
Patch 7.0.042
Problem: When pasting a block of text in Insert mode Vim hangs or crashes.
(Noam Halevy)
Solution: Avoid that the cursor is positioned past the NUL of a line.
Files: src/ops.c
*** ../vim-7.0.041/src/ops.c Tue Jun 20 20:29:13 2006
--- src/ops.c Sun Jul 23 22:36:39 2006
***************
*** 3493,3500 ****
--- 3493,3507 ----
# endif
if (flags & PUT_CURSEND)
{
+ colnr_T len;
+
curwin->w_cursor = curbuf->b_op_end;
curwin->w_cursor.col++;
+
+ /* in Insert mode we might be after the NUL, correct for that */
+ len = (colnr_T)STRLEN(ml_get_curline());
+ if (curwin->w_cursor.col > len)
+ curwin->w_cursor.col = len;
}
else
curwin->w_cursor.lnum = lnum;
*** ../vim-7.0.041/src/version.c Sun Jul 23 22:07:55 2006
--- src/version.c Sun Jul 23 22:35:13 2006
***************
*** 668,669 ****
--- 668,671 ----
{ /* Add new patch number below this line */
+ /**/
+ 42,
/**/
--
hundred-and-one symptoms of being an internet addict:
45. You buy a Captain Kirk chair with a built-in keyboard and mouse.
/// Bram Moolenaar -- Bram@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 ///

52
7.0.043
View File

@ -1,52 +0,0 @@
To: vim-dev@vim.org
Subject: Patch 7.0.043
Fcc: outbox
From: Bram Moolenaar <Bram@moolenaar.net>
Mime-Version: 1.0
Content-Type: text/plain; charset=ISO-8859-1
Content-Transfer-Encoding: 8bit
------------
Patch 7.0.043
Problem: Using "%!" at the start of 'statusline' doesn't work.
Solution: Recognize the special item when the option is being set.
Files: src/option.c
*** ../vim-7.0.042/src/option.c Sat May 13 14:41:15 2006
--- src/option.c Mon Jul 10 22:41:20 2006
***************
*** 6325,6331 ****
else
errmsg = check_stl_option(p_ruf);
}
! else
errmsg = check_stl_option(s);
if (varp == &p_ruf && errmsg == NULL)
comp_col();
--- 6325,6332 ----
else
errmsg = check_stl_option(p_ruf);
}
! /* check 'statusline' only if it doesn't start with "%!" */
! else if (varp != &p_stl || s[0] != '%' || s[1] != '!')
errmsg = check_stl_option(s);
if (varp == &p_ruf && errmsg == NULL)
comp_col();
*** ../vim-7.0.042/src/version.c Sun Jul 23 22:37:29 2006
--- src/version.c Tue Aug 8 16:29:24 2006
***************
*** 668,669 ****
--- 668,671 ----
{ /* Add new patch number below this line */
+ /**/
+ 43,
/**/
--
There's no place like $(HOME)!
/// Bram Moolenaar -- Bram@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 ///

211
7.0.044
View File

@ -1,211 +0,0 @@
To: vim-dev@vim.org
Subject: Patch 7.0.044
Fcc: outbox
From: Bram Moolenaar <Bram@moolenaar.net>
Mime-Version: 1.0
Content-Type: text/plain; charset=ISO-8859-1
Content-Transfer-Encoding: 8bit
------------
Patch 7.0.044
Problem: Perl: setting a buffer line in another buffer may result in
changing the current buffer.
Solution: Properly change to the buffer to be changed.
Files: src/if_perl.xs
*** ../vim-7.0.043/src/if_perl.xs Tue Mar 7 00:18:16 2006
--- src/if_perl.xs Thu Jun 22 21:22:18 2006
***************
*** 1056,1062 ****
int i;
long lnum;
char *line;
- buf_T *savebuf;
PPCODE:
if (buf_valid(vimbuf))
{
--- 1056,1061 ----
***************
*** 1069,1082 ****
line = SvPV(ST(i),PL_na);
if (lnum > 0 && lnum <= vimbuf->b_ml.ml_line_count && line != NULL)
{
! savebuf = curbuf;
curbuf = vimbuf;
if (u_savesub(lnum) == OK)
{
ml_replace(lnum, (char_u *)line, TRUE);
changed_bytes(lnum, 0);
}
! curbuf = savebuf;
}
}
}
--- 1068,1098 ----
line = SvPV(ST(i),PL_na);
if (lnum > 0 && lnum <= vimbuf->b_ml.ml_line_count && line != NULL)
{
! #ifdef FEAT_AUTOCMD
! aco_save_T aco;
!
! /* set curwin/curbuf for "vimbuf" and save some things */
! aucmd_prepbuf(&aco, vimbuf);
! #else
! buf_T *save_curbuf = curbuf;
!
curbuf = vimbuf;
+ curwin->w_buffer = vimbuf;
+ #endif
if (u_savesub(lnum) == OK)
{
ml_replace(lnum, (char_u *)line, TRUE);
changed_bytes(lnum, 0);
}
!
! #ifdef FEAT_AUTOCMD
! /* restore curwin/curbuf and a few other things */
! aucmd_restbuf(&aco);
! /* Careful: autocommands may have made "vimbuf" invalid! */
! #else
! curwin->w_buffer = save_curbuf;
! curbuf = save_curbuf;
! #endif
}
}
}
***************
*** 1087,1093 ****
PREINIT:
long i, lnum = 0, count = 0;
- buf_T *savebuf;
PPCODE:
if (buf_valid(vimbuf))
{
--- 1103,1108 ----
***************
*** 1114,1129 ****
{
if (lnum > 0 && lnum <= vimbuf->b_ml.ml_line_count)
{
! savebuf = curbuf;
curbuf = vimbuf;
if (u_savedel(lnum, 1) == OK)
{
ml_delete(lnum, 0);
deleted_lines_mark(lnum, 1L);
! if (savebuf == curbuf)
check_cursor();
}
! curbuf = savebuf;
update_curbuf(VALID);
}
}
--- 1129,1159 ----
{
if (lnum > 0 && lnum <= vimbuf->b_ml.ml_line_count)
{
! buf_T *save_curbuf = curbuf;
! #ifdef FEAT_AUTOCMD
! aco_save_T aco;
!
! /* set curwin/curbuf for "vimbuf" and save some things */
! aucmd_prepbuf(&aco, vimbuf);
! #else
curbuf = vimbuf;
+ curwin->w_buffer = vimbuf;
+ #endif
if (u_savedel(lnum, 1) == OK)
{
ml_delete(lnum, 0);
deleted_lines_mark(lnum, 1L);
! if (save_curbuf == curbuf)
check_cursor();
}
! #ifdef FEAT_AUTOCMD
! /* restore curwin/curbuf and a few other things */
! aucmd_restbuf(&aco);
! /* Careful: autocommands may have made "vimbuf" invalid! */
! #else
! curwin->w_buffer = save_curbuf;
! curbuf = save_curbuf;
! #endif
update_curbuf(VALID);
}
}
***************
*** 1138,1144 ****
int i;
long lnum;
char *line;
- buf_T *savebuf;
PPCODE:
if (buf_valid(vimbuf))
{
--- 1168,1173 ----
***************
*** 1151,1164 ****
line = SvPV(ST(i),PL_na);
if (lnum >= 0 && lnum <= vimbuf->b_ml.ml_line_count && line != NULL)
{
! savebuf = curbuf;
curbuf = vimbuf;
if (u_inssub(lnum + 1) == OK)
{
ml_append(lnum, (char_u *)line, (colnr_T)0, FALSE);
appended_lines_mark(lnum, 1L);
}
! curbuf = savebuf;
update_curbuf(VALID);
}
}
--- 1180,1210 ----
line = SvPV(ST(i),PL_na);
if (lnum >= 0 && lnum <= vimbuf->b_ml.ml_line_count && line != NULL)
{
! #ifdef FEAT_AUTOCMD
! aco_save_T aco;
!
! /* set curwin/curbuf for "vimbuf" and save some things */
! aucmd_prepbuf(&aco, vimbuf);
! #else
! buf_T *save_curbuf = curbuf;
!
curbuf = vimbuf;
+ curwin->w_buffer = vimbuf;
+ #endif
if (u_inssub(lnum + 1) == OK)
{
ml_append(lnum, (char_u *)line, (colnr_T)0, FALSE);
appended_lines_mark(lnum, 1L);
}
!
! #ifdef FEAT_AUTOCMD
! /* restore curwin/curbuf and a few other things */
! aucmd_restbuf(&aco);
! /* Careful: autocommands may have made "vimbuf" invalid! */
! #else
! curwin->w_buffer = save_curbuf;
! curbuf = save_curbuf;
! #endif
update_curbuf(VALID);
}
}
*** ../vim-7.0.043/src/version.c Tue Aug 8 16:30:51 2006
--- src/version.c Tue Aug 8 16:45:40 2006
***************
*** 668,669 ****
--- 668,671 ----
{ /* Add new patch number below this line */
+ /**/
+ 44,
/**/
--
Momento mori, ergo carpe diem
/// Bram Moolenaar -- Bram@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 ///

67
7.0.045
View File

@ -1,67 +0,0 @@
To: vim-dev@vim.org
Subject: Patch 7.0.045 (extra)
Fcc: outbox
From: Bram Moolenaar <Bram@moolenaar.net>
Mime-Version: 1.0
Content-Type: text/plain; charset=ISO-8859-1
Content-Transfer-Encoding: 8bit
------------
Patch 7.0.045 (extra)
Problem: Win32: Warnings when compiling OLE version with MSVC 2005.
Solution: Move including vim.h to before windows.h. (Ilya Bobir)
Files: src/if_ole.cpp
*** ../vim-7.0.044/src/if_ole.cpp Wed May 3 23:18:50 2006
--- src/if_ole.cpp Sat Jun 24 13:36:52 2006
***************
*** 13,23 ****
* See os_mswin.c for the client side.
*/
#include <windows.h>
#include <oleauto.h>
extern "C" {
- #include "vim.h"
extern HWND s_hwnd;
extern HWND vim_parent_hwnd;
}
--- 13,26 ----
* See os_mswin.c for the client side.
*/
+ extern "C" {
+ #include "vim.h"
+ }
+
#include <windows.h>
#include <oleauto.h>
extern "C" {
extern HWND s_hwnd;
extern HWND vim_parent_hwnd;
}
*** ../vim-7.0.044/src/version.c Tue Aug 8 16:47:38 2006
--- src/version.c Tue Aug 8 17:04:14 2006
***************
*** 668,669 ****
--- 668,671 ----
{ /* Add new patch number below this line */
+ /**/
+ 45,
/**/
--
From "know your smileys":
% Bike accident. A bit far-fetched, I suppose; although...
o _ _ _
_o /\_ _ \\o (_)\__/o (_)
_< \_ _>(_) (_)/<_ \_| \ _|/' \/
(_)>(_) (_) (_) (_) (_)' _\o_
/// Bram Moolenaar -- Bram@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 ///

68
7.0.046
View File

@ -1,68 +0,0 @@
To: vim-dev@vim.org
Subject: Patch 7.0.046
Fcc: outbox
From: Bram Moolenaar <Bram@moolenaar.net>
Mime-Version: 1.0
Content-Type: text/plain; charset=ISO-8859-1
Content-Transfer-Encoding: 8bit
------------
Patch 7.0.046
Problem: The matchparen plugin ignores parens in strings, but not in single
quotes, often marked with "character".
Solution: Also ignore parens in syntax items matching "character".
Files: runtime/plugin/matchparen.vim
*** ../vim-7.0.045/runtime/plugin/matchparen.vim Sat May 13 14:52:02 2006
--- runtime/plugin/matchparen.vim Mon Jun 26 10:53:35 2006
***************
*** 1,6 ****
" Vim plugin for showing matching parens
" Maintainer: Bram Moolenaar <Bram@vim.org>
! " Last Change: 2006 May 11
" Exit quickly when:
" - this plugin was already loaded (or disabled)
--- 1,6 ----
" Vim plugin for showing matching parens
" Maintainer: Bram Moolenaar <Bram@vim.org>
! " Last Change: 2006 Jun 26
" Exit quickly when:
" - this plugin was already loaded (or disabled)
***************
*** 96,102 ****
" When not in a string or comment ignore matches inside them.
let s_skip ='synIDattr(synID(line("."), col("."), 0), "name") ' .
! \ '=~? "string\\|comment"'
execute 'if' s_skip '| let s_skip = 0 | endif'
let [m_lnum, m_col] = searchpairpos(c, '', c2, s_flags, s_skip, stopline)
--- 96,102 ----
" When not in a string or comment ignore matches inside them.
let s_skip ='synIDattr(synID(line("."), col("."), 0), "name") ' .
! \ '=~? "string\\|character\\|singlequote\\|comment"'
execute 'if' s_skip '| let s_skip = 0 | endif'
let [m_lnum, m_col] = searchpairpos(c, '', c2, s_flags, s_skip, stopline)
*** ../vim-7.0.045/src/version.c Tue Aug 8 17:06:21 2006
--- src/version.c Tue Aug 8 18:07:37 2006
***************
*** 668,669 ****
--- 668,671 ----
{ /* Add new patch number below this line */
+ /**/
+ 46,
/**/
--
I AM THANKFUL...
...for the taxes that I pay because it means that I am employed.
/// Bram Moolenaar -- Bram@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 ///

64
7.0.047
View File

@ -1,64 +0,0 @@
To: vim-dev@vim.org
Subject: Patch 7.0.047
Fcc: outbox
From: Bram Moolenaar <Bram@moolenaar.net>
Mime-Version: 1.0
Content-Type: text/plain; charset=ISO-8859-1
Content-Transfer-Encoding: 8bit
------------
Patch 7.0.047
Problem: When running configure the exit status is wrong.
Solution: Handle the exit status properly. (Matthew Woehlke)
Files: configure, src/configure
*** ../vim-7.0.046/configure Sun Jun 13 21:32:42 2004
--- configure Mon Jul 10 20:26:26 2006
***************
*** 3,6 ****
# This is just a stub for the Unix configure script, to provide support for
# doing "./configure" in the top Vim directory.
! cd src && ./configure "$@"
--- 3,6 ----
# This is just a stub for the Unix configure script, to provide support for
# doing "./configure" in the top Vim directory.
! cd src && exec ./configure "$@"
*** ../vim-7.0.046/src/configure Thu Dec 22 23:38:38 2005
--- src/configure Mon Jul 10 20:26:53 2006
***************
*** 2,6 ****
--- 2,10 ----
# run the automatically generated configure script
CONFIG_STATUS=auto/config.status \
auto/configure "$@" --srcdir="${srcdir:-.}" --cache-file=auto/config.cache
+ result=$?
+
# Stupid autoconf 2.5x causes this file to be left behind.
if test -f configure.lineno; then rm -f configure.lineno; fi
+
+ exit $result
*** ../vim-7.0.046/src/version.c Tue Aug 8 18:08:54 2006
--- src/version.c Tue Aug 8 19:09:54 2006
***************
*** 668,669 ****
--- 668,671 ----
{ /* Add new patch number below this line */
+ /**/
+ 47,
/**/
--
The primary purpose of the DATA statement is to give names to constants;
instead of referring to pi as 3.141592653589793 at every appearance, the
variable PI can be given that value with a DATA statement and used instead
of the longer form of the constant. This also simplifies modifying the
program, should the value of pi change.
-- FORTRAN manual for Xerox Computers
/// Bram Moolenaar -- Bram@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 ///

71
7.0.048
View File

@ -1,71 +0,0 @@
To: vim-dev@vim.org
Subject: Patch 7.0.048
Fcc: outbox
From: Bram Moolenaar <Bram@moolenaar.net>
Mime-Version: 1.0
Content-Type: text/plain; charset=ISO-8859-1
Content-Transfer-Encoding: 8bit
------------
Patch 7.0.048
Problem: Writing a compressed file fails when there are parens in the name.
(Wang Jian)
Solution: Put quotes around the temp file name.
Files: runtime/autoload/gzip.vim
*** ../vim-7.0.047/runtime/autoload/gzip.vim Wed Apr 5 22:17:15 2006
--- runtime/autoload/gzip.vim Wed Jul 19 23:53:52 2006
***************
*** 1,6 ****
" Vim autoload file for editing compressed files.
" Maintainer: Bram Moolenaar <Bram@vim.org>
! " Last Change: 2006 Mar 31
" These functions are used by the gzip plugin.
--- 1,6 ----
" Vim autoload file for editing compressed files.
" Maintainer: Bram Moolenaar <Bram@vim.org>
! " Last Change: 2006 Jul 19
" These functions are used by the gzip plugin.
***************
*** 127,135 ****
let nmt = s:tempname(nm)
if rename(nm, nmt) == 0
if exists("b:gzip_comp_arg")
! call system(a:cmd . " " . b:gzip_comp_arg . " " . nmt)
else
! call system(a:cmd . " " . nmt)
endif
call rename(nmt . "." . expand("<afile>:e"), nm)
endif
--- 127,135 ----
let nmt = s:tempname(nm)
if rename(nm, nmt) == 0
if exists("b:gzip_comp_arg")
! call system(a:cmd . " " . b:gzip_comp_arg . " '" . nmt . "'")
else
! call system(a:cmd . " '" . nmt . "'")
endif
call rename(nmt . "." . expand("<afile>:e"), nm)
endif
*** ../vim-7.0.047/src/version.c Tue Aug 8 19:10:35 2006
--- src/version.c Tue Aug 8 19:26:51 2006
***************
*** 668,669 ****
--- 668,671 ----
{ /* Add new patch number below this line */
+ /**/
+ 48,
/**/
--
A fool learns from his mistakes, a wise man from someone else's.
/// Bram Moolenaar -- Bram@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 ///

68
7.0.049
View File

@ -1,68 +0,0 @@
To: vim-dev@vim.org
Subject: Patch 7.0.049
Fcc: outbox
From: Bram Moolenaar <Bram@moolenaar.net>
Mime-Version: 1.0
Content-Type: text/plain; charset=ISO-8859-1
Content-Transfer-Encoding: 8bit
------------
Patch 7.0.049
Problem: Some TCL scripts are not recognized. (Steven Atkinson)
Solution: Check for "exec wish" in the file.
Files: runtime/scripts.vim
*** ../vim-7.0.048/runtime/scripts.vim Tue Mar 28 23:07:11 2006
--- runtime/scripts.vim Sat Jul 8 22:20:51 2006
***************
*** 1,7 ****
" Vim support file to detect file types in scripts
"
" Maintainer: Bram Moolenaar <Bram@vim.org>
! " Last change: 2006 Mar 28
" This file is called by an autocommand for every file that has just been
" loaded into a buffer. It checks if the type of file can be recognized by
--- 1,7 ----
" Vim support file to detect file types in scripts
"
" Maintainer: Bram Moolenaar <Bram@vim.org>
! " Last change: 2006 Jul 08
" This file is called by an autocommand for every file that has just been
" loaded into a buffer. It checks if the type of file can be recognized by
***************
*** 52,57 ****
--- 52,63 ----
let s:name = substitute(s:line1, '^#!\s*\([^/\\ ]*\>\).*', '\1', '')
else
let s:name = substitute(s:line1, '^#!\s*\S*[/\\]\(\i\+\).*', '\1', '')
+ endif
+
+ " tcl scripts may have #!/bin/sh in the first line and "exec wish" in the
+ " third line. Suggested by Steven Atkinson.
+ if getline(3) =~ '^exec wish'
+ let s:name = 'wish'
endif
" Bourne-like shell scripts: bash bash2 ksh ksh93 sh
*** ../vim-7.0.048/src/version.c Tue Aug 8 19:55:06 2006
--- src/version.c Tue Aug 8 20:53:58 2006
***************
*** 668,669 ****
--- 668,671 ----
{ /* Add new patch number below this line */
+ /**/
+ 49,
/**/
--
I AM THANKFUL...
...for the piles of laundry and ironing because it means I
have plenty of clothes to wear.
/// Bram Moolenaar -- Bram@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 ///

47
7.0.050
View File

@ -1,47 +0,0 @@
To: vim-dev@vim.org
Subject: Patch 7.0.050
Fcc: outbox
From: Bram Moolenaar <Bram@moolenaar.net>
Mime-Version: 1.0
Content-Type: text/plain; charset=ISO-8859-1
Content-Transfer-Encoding: 8bit
------------
Patch 7.0.050
Problem: After using the netbeans interface close command a stale pointer
may be used.
Solution: Clear the pointer to the closed buffer. (Xaview de Gaye)
Files: src/netbeans.c
*** ../vim-7.0.049/src/netbeans.c Sun Apr 23 00:21:07 2006
--- src/netbeans.c Fri Aug 4 23:02:54 2006
***************
*** 1986,1991 ****
--- 1986,1993 ----
if (buf->bufp != NULL)
do_buffer(DOBUF_WIPE, DOBUF_FIRST, FORWARD,
buf->bufp->b_fnum, TRUE);
+ buf->bufp = NULL;
+ buf->initDone = FALSE;
doupdate = 1;
/* =====================================================================*/
}
*** ../vim-7.0.049/src/version.c Tue Aug 8 20:56:11 2006
--- src/version.c Tue Aug 8 21:35:25 2006
***************
*** 668,669 ****
--- 668,671 ----
{ /* Add new patch number below this line */
+ /**/
+ 50,
/**/
--
From "know your smileys":
:-E Has major dental problems
/// Bram Moolenaar -- Bram@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 ///

227
7.0.051
View File

@ -1,227 +0,0 @@
To: vim-dev@vim.org
Subject: Patch 7.0.051
Fcc: outbox
From: Bram Moolenaar <Bram@moolenaar.net>
Mime-Version: 1.0
Content-Type: text/plain; charset=ISO-8859-1
Content-Transfer-Encoding: 8bit
------------
Patch 7.0.051 (after 7.0.44)
Problem: The Perl interface doesn't compile or doesn't work properly.
Solution: Remove the spaces before #ifdef and avoid an empty line above it.
Files: src/if_perl.xs
*** ../vim-7.0.050/src/if_perl.xs Tue Aug 8 16:47:38 2006
--- src/if_perl.xs Fri Aug 11 22:51:01 2006
***************
*** 1068,1098 ****
line = SvPV(ST(i),PL_na);
if (lnum > 0 && lnum <= vimbuf->b_ml.ml_line_count && line != NULL)
{
! #ifdef FEAT_AUTOCMD
aco_save_T aco;
/* set curwin/curbuf for "vimbuf" and save some things */
aucmd_prepbuf(&aco, vimbuf);
! #else
buf_T *save_curbuf = curbuf;
curbuf = vimbuf;
curwin->w_buffer = vimbuf;
! #endif
if (u_savesub(lnum) == OK)
{
ml_replace(lnum, (char_u *)line, TRUE);
changed_bytes(lnum, 0);
}
!
! #ifdef FEAT_AUTOCMD
/* restore curwin/curbuf and a few other things */
aucmd_restbuf(&aco);
/* Careful: autocommands may have made "vimbuf" invalid! */
! #else
curwin->w_buffer = save_curbuf;
curbuf = save_curbuf;
! #endif
}
}
}
--- 1068,1097 ----
line = SvPV(ST(i),PL_na);
if (lnum > 0 && lnum <= vimbuf->b_ml.ml_line_count && line != NULL)
{
! #ifdef FEAT_AUTOCMD
aco_save_T aco;
/* set curwin/curbuf for "vimbuf" and save some things */
aucmd_prepbuf(&aco, vimbuf);
! #else
buf_T *save_curbuf = curbuf;
curbuf = vimbuf;
curwin->w_buffer = vimbuf;
! #endif
if (u_savesub(lnum) == OK)
{
ml_replace(lnum, (char_u *)line, TRUE);
changed_bytes(lnum, 0);
}
! #ifdef FEAT_AUTOCMD
/* restore curwin/curbuf and a few other things */
aucmd_restbuf(&aco);
/* Careful: autocommands may have made "vimbuf" invalid! */
! #else
curwin->w_buffer = save_curbuf;
curbuf = save_curbuf;
! #endif
}
}
}
***************
*** 1130,1144 ****
if (lnum > 0 && lnum <= vimbuf->b_ml.ml_line_count)
{
buf_T *save_curbuf = curbuf;
! #ifdef FEAT_AUTOCMD
aco_save_T aco;
/* set curwin/curbuf for "vimbuf" and save some things */
aucmd_prepbuf(&aco, vimbuf);
! #else
curbuf = vimbuf;
curwin->w_buffer = vimbuf;
! #endif
if (u_savedel(lnum, 1) == OK)
{
ml_delete(lnum, 0);
--- 1129,1143 ----
if (lnum > 0 && lnum <= vimbuf->b_ml.ml_line_count)
{
buf_T *save_curbuf = curbuf;
! #ifdef FEAT_AUTOCMD
aco_save_T aco;
/* set curwin/curbuf for "vimbuf" and save some things */
aucmd_prepbuf(&aco, vimbuf);
! #else
curbuf = vimbuf;
curwin->w_buffer = vimbuf;
! #endif
if (u_savedel(lnum, 1) == OK)
{
ml_delete(lnum, 0);
***************
*** 1146,1159 ****
if (save_curbuf == curbuf)
check_cursor();
}
! #ifdef FEAT_AUTOCMD
/* restore curwin/curbuf and a few other things */
aucmd_restbuf(&aco);
/* Careful: autocommands may have made "vimbuf" invalid! */
! #else
curwin->w_buffer = save_curbuf;
curbuf = save_curbuf;
! #endif
update_curbuf(VALID);
}
}
--- 1145,1158 ----
if (save_curbuf == curbuf)
check_cursor();
}
! #ifdef FEAT_AUTOCMD
/* restore curwin/curbuf and a few other things */
aucmd_restbuf(&aco);
/* Careful: autocommands may have made "vimbuf" invalid! */
! #else
curwin->w_buffer = save_curbuf;
curbuf = save_curbuf;
! #endif
update_curbuf(VALID);
}
}
***************
*** 1180,1210 ****
line = SvPV(ST(i),PL_na);
if (lnum >= 0 && lnum <= vimbuf->b_ml.ml_line_count && line != NULL)
{
! #ifdef FEAT_AUTOCMD
aco_save_T aco;
/* set curwin/curbuf for "vimbuf" and save some things */
aucmd_prepbuf(&aco, vimbuf);
! #else
buf_T *save_curbuf = curbuf;
curbuf = vimbuf;
curwin->w_buffer = vimbuf;
! #endif
if (u_inssub(lnum + 1) == OK)
{
ml_append(lnum, (char_u *)line, (colnr_T)0, FALSE);
appended_lines_mark(lnum, 1L);
}
!
! #ifdef FEAT_AUTOCMD
/* restore curwin/curbuf and a few other things */
aucmd_restbuf(&aco);
/* Careful: autocommands may have made "vimbuf" invalid! */
! #else
curwin->w_buffer = save_curbuf;
curbuf = save_curbuf;
! #endif
update_curbuf(VALID);
}
}
--- 1179,1208 ----
line = SvPV(ST(i),PL_na);
if (lnum >= 0 && lnum <= vimbuf->b_ml.ml_line_count && line != NULL)
{
! #ifdef FEAT_AUTOCMD
aco_save_T aco;
/* set curwin/curbuf for "vimbuf" and save some things */
aucmd_prepbuf(&aco, vimbuf);
! #else
buf_T *save_curbuf = curbuf;
curbuf = vimbuf;
curwin->w_buffer = vimbuf;
! #endif
if (u_inssub(lnum + 1) == OK)
{
ml_append(lnum, (char_u *)line, (colnr_T)0, FALSE);
appended_lines_mark(lnum, 1L);
}
! #ifdef FEAT_AUTOCMD
/* restore curwin/curbuf and a few other things */
aucmd_restbuf(&aco);
/* Careful: autocommands may have made "vimbuf" invalid! */
! #else
curwin->w_buffer = save_curbuf;
curbuf = save_curbuf;
! #endif
update_curbuf(VALID);
}
}
*** ../vim-7.0.050/src/version.c Tue Aug 8 21:36:15 2006
--- src/version.c Fri Aug 11 22:55:25 2006
***************
*** 668,669 ****
--- 668,671 ----
{ /* Add new patch number below this line */
+ /**/
+ 51,
/**/
--
"A clear conscience is usually the sign of a bad memory."
-- Steven Wright
/// Bram Moolenaar -- Bram@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 ///

66
7.0.052
View File

@ -1,66 +0,0 @@
To: vim-dev@vim.org
Subject: Patch 7.0.052
Fcc: outbox
From: Bram Moolenaar <Bram@moolenaar.net>
Mime-Version: 1.0
Content-Type: text/plain; charset=ISO-8859-1
Content-Transfer-Encoding: 8bit
------------
Patch 7.0.052
Problem: The user may not be aware that the Vim server allows others more
functionality than desired.
Solution: When running Vim as root don't become a Vim server without an
explicit --servername argument.
Files: src/main.c
*** ../vim-7.0.051/src/main.c Mon Jun 19 10:56:20 2006
--- src/main.c Tue Aug 8 11:02:44 2006
***************
*** 3212,3221 ****
* Register for remote command execution with :serversend and --remote
* unless there was a -X or a --servername '' on the command line.
* Only register nongui-vim's with an explicit --servername argument.
*/
if (X_DISPLAY != NULL && parmp->servername != NULL && (
# ifdef FEAT_GUI
! gui.in_use ||
# endif
parmp->serverName_arg != NULL))
{
--- 3212,3226 ----
* Register for remote command execution with :serversend and --remote
* unless there was a -X or a --servername '' on the command line.
* Only register nongui-vim's with an explicit --servername argument.
+ * When running as root --servername is also required.
*/
if (X_DISPLAY != NULL && parmp->servername != NULL && (
# ifdef FEAT_GUI
! (gui.in_use
! # ifdef UNIX
! && getuid() != 0
! # endif
! ) ||
# endif
parmp->serverName_arg != NULL))
{
*** ../vim-7.0.051/src/version.c Fri Aug 11 22:56:44 2006
--- src/version.c Tue Aug 15 21:41:24 2006
***************
*** 668,669 ****
--- 668,671 ----
{ /* Add new patch number below this line */
+ /**/
+ 52,
/**/
--
hundred-and-one symptoms of being an internet addict:
148. You find it easier to dial-up the National Weather Service
Weather/your_town/now.html than to simply look out the window.
/// Bram Moolenaar -- Bram@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 ///

53
7.0.053
View File

@ -1,53 +0,0 @@
To: vim-dev@vim.org
Subject: Patch 7.0.053
Fcc: outbox
From: Bram Moolenaar <Bram@moolenaar.net>
Mime-Version: 1.0
Content-Type: text/plain; charset=ISO-8859-1
Content-Transfer-Encoding: 8bit
------------
Patch 7.0.053
Problem: Shortening a directory name may fail when there are multi-byte
characters.
Solution: Copy the correct bytes. (Titov Anatoly)
Files: src/misc1.c
*** ../vim-7.0.052/src/misc1.c Sun Apr 30 20:49:14 2006
--- src/misc1.c Tue Aug 8 11:23:45 2006
***************
*** 4492,4498 ****
int l = mb_ptr2len(s);
while (--l > 0)
! *d++ = *s++;
}
# endif
}
--- 4492,4498 ----
int l = mb_ptr2len(s);
while (--l > 0)
! *d++ = *++s;
}
# endif
}
*** ../vim-7.0.052/src/version.c Tue Aug 15 21:42:18 2006
--- src/version.c Tue Aug 15 22:23:44 2006
***************
*** 668,669 ****
--- 668,671 ----
{ /* Add new patch number below this line */
+ /**/
+ 53,
/**/
--
hundred-and-one symptoms of being an internet addict:
150. You find yourself counting emoticons to get to sleep.
/// Bram Moolenaar -- Bram@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 ///

89
7.0.054
View File

@ -1,89 +0,0 @@
To: vim-dev@vim.org
Subject: Patch 7.0.054
Fcc: outbox
From: Bram Moolenaar <Bram@moolenaar.net>
Mime-Version: 1.0
Content-Type: text/plain; charset=ISO-8859-1
Content-Transfer-Encoding: 8bit
------------
Patch 7.0.054
Problem: Mac: Using a menu name that only has a mnemonic or accelerator
causes a crash. (Elliot Shank)
Solution: Check for an empty menu name. Also delete empty submenus that
were created before detecting the error.
Files: src/menu.c
*** ../vim-7.0.053/src/menu.c Wed May 3 23:28:47 2006
--- src/menu.c Tue Aug 8 20:53:25 2006
***************
*** 511,516 ****
--- 511,524 ----
* name (without mnemonic and accelerator text). */
next_name = menu_name_skip(name);
dname = menu_text(name, NULL, NULL);
+ if (dname == NULL)
+ goto erret;
+ if (*dname == NUL)
+ {
+ /* Only a mnemonic or accelerator is not valid. */
+ EMSG(_("E792: Empty menu name"));
+ goto erret;
+ }
/* See if it's already there */
lower_pri = menup;
***************
*** 704,709 ****
--- 712,718 ----
parent = menu;
name = next_name;
vim_free(dname);
+ dname = NULL;
if (pri_tab[pri_idx + 1] != -1)
++pri_idx;
}
***************
*** 793,798 ****
--- 802,823 ----
erret:
vim_free(path_name);
vim_free(dname);
+
+ /* Delete any empty submenu we added before discovering the error. Repeat
+ * for higher levels. */
+ while (parent != NULL && parent->children == NULL)
+ {
+ if (parent->parent == NULL)
+ menup = &root_menu;
+ else
+ menup = &parent->parent->children;
+ for ( ; *menup != NULL && *menup != parent; menup = &((*menup)->next))
+ ;
+ if (*menup == NULL) /* safety check */
+ break;
+ parent = parent->parent;
+ free_menu(menup);
+ }
return FAIL;
}
*** ../vim-7.0.053/src/version.c Tue Aug 15 22:26:04 2006
--- src/version.c Wed Aug 16 15:53:39 2006
***************
*** 668,669 ****
--- 668,671 ----
{ /* Add new patch number below this line */
+ /**/
+ 54,
/**/
--
hundred-and-one symptoms of being an internet addict:
156. You forget your friend's name but not her e-mail address.
/// Bram Moolenaar -- Bram@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 ///

71
7.0.055
View File

@ -1,71 +0,0 @@
To: vim-dev@vim.org
Subject: Patch 7.0.055
Fcc: outbox
From: Bram Moolenaar <Bram@moolenaar.net>
Mime-Version: 1.0
Content-Type: text/plain; charset=ISO-8859-1
Content-Transfer-Encoding: 8bit
------------
Patch 7.0.055
Problem: ":startinsert" in a CmdwinEnter autocommand doesn't take immediate
effect. (Bradley White)
Solution: Put a NOP key in the typeahead buffer. Also avoid that using
CTRL-C to go back to the command line moves the cursor left.
Files: src/edit.c, src/ex_getln.c
*** ../vim-7.0.054/src/edit.c Fri Jun 23 21:36:49 2006
--- src/edit.c Wed Aug 16 16:17:29 2006
***************
*** 882,887 ****
--- 882,888 ----
/* Close the cmdline window. */
cmdwin_result = K_IGNORE;
got_int = FALSE; /* don't stop executing autocommands et al. */
+ nomove = TRUE;
goto doESCkey;
}
#endif
***************
*** 2414,2419 ****
--- 2415,2421 ----
compl_matches = ins_compl_make_cyclic();
compl_started = TRUE;
compl_used_match = TRUE;
+ compl_cont_status = 0;
compl_curr_match = compl_first_match;
ins_complete(Ctrl_N);
*** ../vim-7.0.054/src/ex_getln.c Sun Apr 30 20:43:17 2006
--- src/ex_getln.c Wed Aug 16 16:07:04 2006
***************
*** 5982,5987 ****
--- 5982,5989 ----
typestr[0] = cmdwin_type;
typestr[1] = NUL;
apply_autocmds(EVENT_CMDWINENTER, typestr, typestr, FALSE, curbuf);
+ if (restart_edit != 0) /* autocmd with ":startinsert" */
+ stuffcharReadbuff(K_NOP);
# endif
i = RedrawingDisabled;
*** ../vim-7.0.054/src/version.c Wed Aug 16 15:56:58 2006
--- src/version.c Wed Aug 16 16:21:45 2006
***************
*** 668,669 ****
--- 668,671 ----
{ /* Add new patch number below this line */
+ /**/
+ 55,
/**/
--
hundred-and-one symptoms of being an internet addict:
157. You fum through a magazine, you first check to see if it has a web
address.
/// Bram Moolenaar -- Bram@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 ///

49
7.0.056
View File

@ -1,49 +0,0 @@
To: vim-dev@vim.org
Subject: Patch 7.0.056
Fcc: outbox
From: Bram Moolenaar <Bram@moolenaar.net>
Mime-Version: 1.0
Content-Type: text/plain; charset=ISO-8859-1
Content-Transfer-Encoding: 8bit
------------
Patch 7.0.056
Problem: "#!something" gives an error message.
Solution: Ignore this line, so that it can be used in an executable Vim
script.
Files: src/ex_docmd.c
*** ../vim-7.0.055/src/ex_docmd.c Sat May 13 12:36:18 2006
--- src/ex_docmd.c Thu Aug 10 23:50:32 2006
***************
*** 1709,1714 ****
--- 1712,1721 ----
*/
save_cmdmod = cmdmod;
vim_memset(&cmdmod, 0, sizeof(cmdmod));
+
+ /* "#!anything" is handled like a comment. */
+ if ((*cmdlinep)[0] == '#' && (*cmdlinep)[1] == '!')
+ goto doend;
/*
* Repeat until no more command modifiers are found.
*** ../vim-7.0.055/src/version.c Wed Aug 16 16:24:58 2006
--- src/version.c Wed Aug 16 17:05:35 2006
***************
*** 668,669 ****
--- 668,671 ----
{ /* Add new patch number below this line */
+ /**/
+ 56,
/**/
--
hundred-and-one symptoms of being an internet addict:
158. You get a tuner card so you can watch TV while surfing.
/// Bram Moolenaar -- Bram@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 ///

74
7.0.057
View File

@ -1,74 +0,0 @@
To: vim-dev@vim.org
Subject: Patch 7.0.057 (extra)
Fcc: outbox
From: Bram Moolenaar <Bram@moolenaar.net>
Mime-Version: 1.0
Content-Type: text/plain; charset=ISO-8859-1
Content-Transfer-Encoding: 8bit
------------
Patch 7.0.057 (extra, after 7.0.45)
Problem: Win32: Compilation problem with Borland C 5.5.
Solution: Include vim.h as before. (Mark S. Williams)
Files: src/if_ole.cpp
*** ../vim-7.0.056/src/if_ole.cpp Tue Aug 8 17:06:21 2006
--- src/if_ole.cpp Sun Aug 13 12:57:24 2006
***************
*** 13,26 ****
* See os_mswin.c for the client side.
*/
extern "C" {
! #include "vim.h"
}
#include <windows.h>
#include <oleauto.h>
extern "C" {
extern HWND s_hwnd;
extern HWND vim_parent_hwnd;
}
--- 13,35 ----
* See os_mswin.c for the client side.
*/
+ /*
+ * We have some trouble with order of includes here. For Borland it needs to
+ * be different from MSVC...
+ */
+ #ifndef __BORLANDC__
extern "C" {
! # include "vim.h"
}
+ #endif
#include <windows.h>
#include <oleauto.h>
extern "C" {
+ #ifdef __BORLANDC__
+ # include "vim.h"
+ #endif
extern HWND s_hwnd;
extern HWND vim_parent_hwnd;
}
*** ../vim-7.0.056/src/version.c Wed Aug 16 17:06:22 2006
--- src/version.c Wed Aug 16 17:35:57 2006
***************
*** 668,669 ****
--- 668,671 ----
{ /* Add new patch number below this line */
+ /**/
+ 57,
/**/
--
Send $25.00 for handy leaflet on how to make money by selling leaflets
/// Bram Moolenaar -- Bram@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 ///

46
7.0.058
View File

@ -1,46 +0,0 @@
To: vim-dev@vim.org
Subject: Patch 7.0.058
Fcc: outbox
From: Bram Moolenaar <Bram@moolenaar.net>
Mime-Version: 1.0
Content-Type: text/plain; charset=ISO-8859-1
Content-Transfer-Encoding: 8bit
------------
Patch 7.0.058
Problem: The gbk and and gb18030 encodings are not recognized.
Solution: Add aliases to cp936. (Edward L. Fox)
Files: src/mbyte.c
*** ../vim-7.0.057/src/mbyte.c Sat May 13 17:10:00 2006
--- src/mbyte.c Sat Aug 12 22:59:55 2006
***************
*** 363,368 ****
--- 363,370 ----
{"932", IDX_CP932},
{"949", IDX_CP949},
{"936", IDX_CP936},
+ {"gbk", IDX_CP936},
+ {"gb18030", IDX_CP936}, /* only 99% the same */
{"950", IDX_CP950},
{"eucjp", IDX_EUC_JP},
{"unix-jis", IDX_EUC_JP},
*** ../vim-7.0.057/src/version.c Wed Aug 16 17:36:21 2006
--- src/version.c Wed Aug 16 18:04:14 2006
***************
*** 668,669 ****
--- 668,671 ----
{ /* Add new patch number below this line */
+ /**/
+ 58,
/**/
--
hundred-and-one symptoms of being an internet addict:
162. You go outside and look for a brightness knob to turn down the sun.
/// Bram Moolenaar -- Bram@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 ///

55
7.0.059
View File

@ -1,55 +0,0 @@
To: vim-dev@vim.org
Subject: Patch 7.0.059
Fcc: outbox
From: Bram Moolenaar <Bram@moolenaar.net>
Mime-Version: 1.0
Content-Type: text/plain; charset=ISO-8859-1
Content-Transfer-Encoding: 8bit
------------
Patch 7.0.059
Problem: The Perl interface doesn't compile with ActiveState Perl 5.8.8.
Solution: Remove the __attribute__() items. (Edward L. Fox)
Files: src/if_perl.xs
*** ../vim-7.0.058/src/if_perl.xs Fri Aug 11 22:56:44 2006
--- src/if_perl.xs Wed Aug 16 14:45:15 2006
***************
*** 155,162 ****
static int (*perl_run)(PerlInterpreter*);
static int (*perl_parse)(PerlInterpreter*, XSINIT_t, int, char**, char**);
static void* (*Perl_get_context)(void);
! static void (*Perl_croak)(pTHX_ const char*, ...) __attribute__((noreturn));
! static void (*Perl_croak_nocontext)(const char*, ...) __attribute__((noreturn));
static I32 (*Perl_dowantarray)(pTHX);
static void (*Perl_free_tmps)(pTHX);
static HV* (*Perl_gv_stashpv)(pTHX_ const char*, I32);
--- 155,162 ----
static int (*perl_run)(PerlInterpreter*);
static int (*perl_parse)(PerlInterpreter*, XSINIT_t, int, char**, char**);
static void* (*Perl_get_context)(void);
! static void (*Perl_croak)(pTHX_ const char*, ...);
! static void (*Perl_croak_nocontext)(const char*, ...);
static I32 (*Perl_dowantarray)(pTHX);
static void (*Perl_free_tmps)(pTHX);
static HV* (*Perl_gv_stashpv)(pTHX_ const char*, I32);
*** ../vim-7.0.058/src/version.c Wed Aug 16 18:05:36 2006
--- src/version.c Wed Aug 16 18:18:35 2006
***************
*** 668,669 ****
--- 668,671 ----
{ /* Add new patch number below this line */
+ /**/
+ 59,
/**/
--
hundred-and-one symptoms of being an internet addict:
163. You go outside for the fresh air (at -30 degrees) but open the
window first to hear new mail arrive.
/// Bram Moolenaar -- Bram@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 ///

723
7.0.060
View File

@ -1,723 +0,0 @@
To: vim-dev@vim.org
Subject: Patch 7.0.060
Fcc: outbox
From: Bram Moolenaar <Bram@moolenaar.net>
Mime-Version: 1.0
Content-Type: text/plain; charset=ISO-8859-1
Content-Transfer-Encoding: 8bit
------------
Patch 7.0.060 (after 7.0.51)
Problem: Code for temporarily switching to another buffer is duplicated in
quite a few places.
Solution: Use aucmd_prepbuf() and aucmd_restbuf() also when FEAT_AUTOCMD is
not defined.
Files: src/buffer.c, src/eval.c, src/fileio.c, src/if_ruby.c,
src/if_perl.xs, src/quickfix.c, src/structs.h
*** ../vim-7.0.059/src/buffer.c Thu Apr 27 01:49:30 2006
--- src/buffer.c Wed Aug 16 14:36:17 2006
***************
*** 5420,5430 ****
buf_T *newbuf;
int differ = TRUE;
linenr_T lnum;
- #ifdef FEAT_AUTOCMD
aco_save_T aco;
- #else
- buf_T *old_curbuf = curbuf;
- #endif
exarg_T ea;
/* Allocate a buffer without putting it in the buffer list. */
--- 5420,5426 ----
***************
*** 5439,5451 ****
return TRUE;
}
- #ifdef FEAT_AUTOCMD
/* set curwin/curbuf to buf and save a few things */
aucmd_prepbuf(&aco, newbuf);
- #else
- curbuf = newbuf;
- curwin->w_buffer = newbuf;
- #endif
if (ml_open(curbuf) == OK
&& readfile(buf->b_ffname, buf->b_fname,
--- 5435,5442 ----
***************
*** 5466,5478 ****
}
vim_free(ea.cmd);
- #ifdef FEAT_AUTOCMD
/* restore curwin/curbuf and a few other things */
aucmd_restbuf(&aco);
- #else
- curbuf = old_curbuf;
- curwin->w_buffer = old_curbuf;
- #endif
if (curbuf != newbuf) /* safety check */
wipe_buffer(newbuf, FALSE);
--- 5457,5464 ----
*** ../vim-7.0.059/src/eval.c Sun Jul 23 22:07:55 2006
--- src/eval.c Wed Aug 16 14:38:32 2006
***************
*** 14184,14194 ****
typval_T *rettv;
{
buf_T *buf;
- #ifdef FEAT_AUTOCMD
aco_save_T aco;
- #else
- buf_T *save_curbuf;
- #endif
char_u *varname, *bufvarname;
typval_T *varp;
char_u nbuf[NUMBUFLEN];
--- 14184,14190 ----
***************
*** 14205,14216 ****
if (buf != NULL && varname != NULL && varp != NULL)
{
/* set curbuf to be our buf, temporarily */
- #ifdef FEAT_AUTOCMD
aucmd_prepbuf(&aco, buf);
- #else
- save_curbuf = curbuf;
- curbuf = buf;
- #endif
if (*varname == '&')
{
--- 14201,14207 ----
***************
*** 14237,14247 ****
}
/* reset notion of buffer */
- #ifdef FEAT_AUTOCMD
aucmd_restbuf(&aco);
- #else
- curbuf = save_curbuf;
- #endif
}
}
--- 14228,14234 ----
*** ../vim-7.0.059/src/fileio.c Sun Apr 30 20:33:48 2006
--- src/fileio.c Wed Aug 16 14:39:23 2006
***************
*** 6450,6466 ****
int old_ro = buf->b_p_ro;
buf_T *savebuf;
int saved = OK;
- #ifdef FEAT_AUTOCMD
aco_save_T aco;
/* set curwin/curbuf for "buf" and save some things */
aucmd_prepbuf(&aco, buf);
- #else
- buf_T *save_curbuf = curbuf;
-
- curbuf = buf;
- curwin->w_buffer = buf;
- #endif
/* We only want to read the text from the file, not reset the syntax
* highlighting, clear marks, diff status, etc. Force the fileformat
--- 6450,6459 ----
***************
*** 6573,6586 ****
curbuf->b_p_ro |= old_ro;
}
- #ifdef FEAT_AUTOCMD
/* restore curwin/curbuf and a few other things */
aucmd_restbuf(&aco);
/* Careful: autocommands may have made "buf" invalid! */
- #else
- curwin->w_buffer = save_curbuf;
- curbuf = save_curbuf;
- #endif
}
/*ARGSUSED*/
--- 6566,6574 ----
***************
*** 8088,8093 ****
--- 8076,8082 ----
* Search a window for the current buffer. Save the cursor position and
* screen offset.
* Set "curbuf" and "curwin" to match "buf".
+ * When FEAT_AUTOCMD is not defined another version is used, see below.
*/
void
aucmd_prepbuf(aco, buf)
***************
*** 8151,8156 ****
--- 8140,8146 ----
/*
* Cleanup after executing autocommands for a (hidden) buffer.
* Restore the window as it was (if possible).
+ * When FEAT_AUTOCMD is not defined another version is used, see below.
*/
void
aucmd_restbuf(aco)
***************
*** 9063,9069 ****
--- 9053,9089 ----
return retval;
}
+ #else /* FEAT_AUTOCMD */
+
+ /*
+ * Prepare for executing commands for (hidden) buffer "buf".
+ * This is the non-autocommand version, it simply saves "curbuf" and sets
+ * "curbuf" and "curwin" to match "buf".
+ */
+ void
+ aucmd_prepbuf(aco, buf)
+ aco_save_T *aco; /* structure to save values in */
+ buf_T *buf; /* new curbuf */
+ {
+ aco->save_buf = buf;
+ curbuf = buf;
+ curwin->w_buffer = buf;
+ }
+
+ /*
+ * Restore after executing commands for a (hidden) buffer.
+ * This is the non-autocommand version.
+ */
+ void
+ aucmd_restbuf(aco)
+ aco_save_T *aco; /* structure holding saved values */
+ {
+ curbuf = aco->save_buf;
+ curwin->w_buffer = curbuf;
+ }
+
#endif /* FEAT_AUTOCMD */
+
#if defined(FEAT_AUTOCMD) || defined(FEAT_WILDIGN) || defined(PROTO)
/*
*** ../vim-7.0.059/src/if_ruby.c Tue Jun 20 21:08:02 2006
--- src/if_ruby.c Wed Aug 16 14:41:11 2006
***************
*** 644,664 ****
static VALUE set_buffer_line(buf_T *buf, linenr_T n, VALUE str)
{
char *line = STR2CSTR(str);
- #ifdef FEAT_AUTOCMD
aco_save_T aco;
- #else
- buf_T *save_curbuf = curbuf;
- #endif
if (n > 0 && n <= buf->b_ml.ml_line_count && line != NULL)
{
- #ifdef FEAT_AUTOCMD
/* set curwin/curbuf for "buf" and save some things */
aucmd_prepbuf(&aco, buf);
- #else
- curbuf = buf;
- curwin->w_buffer = buf;
- #endif
if (u_savesub(n) == OK) {
ml_replace(n, (char_u *)line, TRUE);
--- 644,655 ----
***************
*** 668,681 ****
#endif
}
- #ifdef FEAT_AUTOCMD
/* restore curwin/curbuf and a few other things */
aucmd_restbuf(&aco);
/* Careful: autocommands may have made "buf" invalid! */
! #else
! curwin->w_buffer = save_curbuf;
! curbuf = save_curbuf;
! #endif
update_curbuf(NOT_VALID);
}
else
--- 659,668 ----
#endif
}
/* restore curwin/curbuf and a few other things */
aucmd_restbuf(&aco);
/* Careful: autocommands may have made "buf" invalid! */
!
update_curbuf(NOT_VALID);
}
else
***************
*** 699,719 ****
{
buf_T *buf = get_buf(self);
long n = NUM2LONG(num);
- #ifdef FEAT_AUTOCMD
aco_save_T aco;
- #else
- buf_T *save_curbuf = curbuf;
- #endif
if (n > 0 && n <= buf->b_ml.ml_line_count)
{
- #ifdef FEAT_AUTOCMD
/* set curwin/curbuf for "buf" and save some things */
aucmd_prepbuf(&aco, buf);
- #else
- curbuf = buf;
- curwin->w_buffer = buf;
- #endif
if (u_savedel(n, 1) == OK) {
ml_delete(n, 0);
--- 686,697 ----
***************
*** 725,738 ****
changed();
}
- #ifdef FEAT_AUTOCMD
/* restore curwin/curbuf and a few other things */
aucmd_restbuf(&aco);
/* Careful: autocommands may have made "buf" invalid! */
! #else
! curwin->w_buffer = save_curbuf;
! curbuf = save_curbuf;
! #endif
update_curbuf(NOT_VALID);
}
else
--- 703,712 ----
changed();
}
/* restore curwin/curbuf and a few other things */
aucmd_restbuf(&aco);
/* Careful: autocommands may have made "buf" invalid! */
!
update_curbuf(NOT_VALID);
}
else
***************
*** 747,767 ****
buf_T *buf = get_buf(self);
char *line = STR2CSTR(str);
long n = NUM2LONG(num);
- #ifdef FEAT_AUTOCMD
aco_save_T aco;
- #else
- buf_T *save_curbuf = curbuf;
- #endif
if (n >= 0 && n <= buf->b_ml.ml_line_count && line != NULL)
{
- #ifdef FEAT_AUTOCMD
/* set curwin/curbuf for "buf" and save some things */
aucmd_prepbuf(&aco, buf);
- #else
- curbuf = buf;
- curwin->w_buffer = buf;
- #endif
if (u_inssub(n + 1) == OK) {
ml_append(n, (char_u *) line, (colnr_T) 0, FALSE);
--- 721,732 ----
***************
*** 773,786 ****
changed();
}
- #ifdef FEAT_AUTOCMD
/* restore curwin/curbuf and a few other things */
aucmd_restbuf(&aco);
/* Careful: autocommands may have made "buf" invalid! */
! #else
! curwin->w_buffer = save_curbuf;
! curbuf = save_curbuf;
! #endif
update_curbuf(NOT_VALID);
}
else {
--- 738,747 ----
changed();
}
/* restore curwin/curbuf and a few other things */
aucmd_restbuf(&aco);
/* Careful: autocommands may have made "buf" invalid! */
!
update_curbuf(NOT_VALID);
}
else {
*** ../vim-7.0.059/src/if_perl.xs Wed Aug 16 18:19:41 2006
--- src/if_perl.xs Wed Aug 16 14:45:15 2006
***************
*** 1068,1097 ****
line = SvPV(ST(i),PL_na);
if (lnum > 0 && lnum <= vimbuf->b_ml.ml_line_count && line != NULL)
{
- #ifdef FEAT_AUTOCMD
aco_save_T aco;
/* set curwin/curbuf for "vimbuf" and save some things */
aucmd_prepbuf(&aco, vimbuf);
- #else
- buf_T *save_curbuf = curbuf;
- curbuf = vimbuf;
- curwin->w_buffer = vimbuf;
- #endif
if (u_savesub(lnum) == OK)
{
ml_replace(lnum, (char_u *)line, TRUE);
changed_bytes(lnum, 0);
}
! #ifdef FEAT_AUTOCMD
/* restore curwin/curbuf and a few other things */
aucmd_restbuf(&aco);
/* Careful: autocommands may have made "vimbuf" invalid! */
- #else
- curwin->w_buffer = save_curbuf;
- curbuf = save_curbuf;
- #endif
}
}
}
--- 1068,1087 ----
line = SvPV(ST(i),PL_na);
if (lnum > 0 && lnum <= vimbuf->b_ml.ml_line_count && line != NULL)
{
aco_save_T aco;
/* set curwin/curbuf for "vimbuf" and save some things */
aucmd_prepbuf(&aco, vimbuf);
if (u_savesub(lnum) == OK)
{
ml_replace(lnum, (char_u *)line, TRUE);
changed_bytes(lnum, 0);
}
!
/* restore curwin/curbuf and a few other things */
aucmd_restbuf(&aco);
/* Careful: autocommands may have made "vimbuf" invalid! */
}
}
}
***************
*** 1128,1158 ****
{
if (lnum > 0 && lnum <= vimbuf->b_ml.ml_line_count)
{
- buf_T *save_curbuf = curbuf;
- #ifdef FEAT_AUTOCMD
aco_save_T aco;
/* set curwin/curbuf for "vimbuf" and save some things */
aucmd_prepbuf(&aco, vimbuf);
! #else
! curbuf = vimbuf;
! curwin->w_buffer = vimbuf;
! #endif
if (u_savedel(lnum, 1) == OK)
{
ml_delete(lnum, 0);
deleted_lines_mark(lnum, 1L);
! if (save_curbuf == curbuf)
check_cursor();
}
! #ifdef FEAT_AUTOCMD
/* restore curwin/curbuf and a few other things */
aucmd_restbuf(&aco);
/* Careful: autocommands may have made "vimbuf" invalid! */
! #else
! curwin->w_buffer = save_curbuf;
! curbuf = save_curbuf;
! #endif
update_curbuf(VALID);
}
}
--- 1118,1140 ----
{
if (lnum > 0 && lnum <= vimbuf->b_ml.ml_line_count)
{
aco_save_T aco;
/* set curwin/curbuf for "vimbuf" and save some things */
aucmd_prepbuf(&aco, vimbuf);
!
if (u_savedel(lnum, 1) == OK)
{
ml_delete(lnum, 0);
deleted_lines_mark(lnum, 1L);
! if (aco.save_buf == curbuf)
check_cursor();
}
!
/* restore curwin/curbuf and a few other things */
aucmd_restbuf(&aco);
/* Careful: autocommands may have made "vimbuf" invalid! */
!
update_curbuf(VALID);
}
}
***************
*** 1179,1208 ****
line = SvPV(ST(i),PL_na);
if (lnum >= 0 && lnum <= vimbuf->b_ml.ml_line_count && line != NULL)
{
- #ifdef FEAT_AUTOCMD
aco_save_T aco;
/* set curwin/curbuf for "vimbuf" and save some things */
aucmd_prepbuf(&aco, vimbuf);
- #else
- buf_T *save_curbuf = curbuf;
- curbuf = vimbuf;
- curwin->w_buffer = vimbuf;
- #endif
if (u_inssub(lnum + 1) == OK)
{
ml_append(lnum, (char_u *)line, (colnr_T)0, FALSE);
appended_lines_mark(lnum, 1L);
}
! #ifdef FEAT_AUTOCMD
/* restore curwin/curbuf and a few other things */
aucmd_restbuf(&aco);
/* Careful: autocommands may have made "vimbuf" invalid! */
! #else
! curwin->w_buffer = save_curbuf;
! curbuf = save_curbuf;
! #endif
update_curbuf(VALID);
}
}
--- 1161,1181 ----
line = SvPV(ST(i),PL_na);
if (lnum >= 0 && lnum <= vimbuf->b_ml.ml_line_count && line != NULL)
{
aco_save_T aco;
/* set curwin/curbuf for "vimbuf" and save some things */
aucmd_prepbuf(&aco, vimbuf);
if (u_inssub(lnum + 1) == OK)
{
ml_append(lnum, (char_u *)line, (colnr_T)0, FALSE);
appended_lines_mark(lnum, 1L);
}
!
/* restore curwin/curbuf and a few other things */
aucmd_restbuf(&aco);
/* Careful: autocommands may have made "vimbuf" invalid! */
!
update_curbuf(VALID);
}
}
*** ../vim-7.0.059/src/quickfix.c Tue Jun 20 20:49:42 2006
--- src/quickfix.c Wed Aug 16 14:43:06 2006
***************
*** 2463,2494 ****
qf_info_T *qi;
{
buf_T *buf;
- #ifdef FEAT_AUTOCMD
aco_save_T aco;
- #else
- buf_T *save_curbuf;
- #endif
/* Check if a buffer for the quickfix list exists. Update it. */
buf = qf_find_buf(qi);
if (buf != NULL)
{
- #ifdef FEAT_AUTOCMD
/* set curwin/curbuf to buf and save a few things */
aucmd_prepbuf(&aco, buf);
- #else
- save_curbuf = curbuf;
- curbuf = buf;
- #endif
qf_fill_buffer(qi);
- #ifdef FEAT_AUTOCMD
/* restore curwin/curbuf and a few other things */
aucmd_restbuf(&aco);
- #else
- curbuf = save_curbuf;
- #endif
(void)qf_win_pos_update(qi, 0);
}
--- 2463,2481 ----
***************
*** 2977,2986 ****
#if defined(FEAT_AUTOCMD) && defined(FEAT_SYN_HL)
char_u *save_ei = NULL;
#endif
- #ifndef FEAT_AUTOCMD
- buf_T *save_curbuf;
- #else
aco_save_T aco;
char_u *au_name = NULL;
int flags = 0;
colnr_T col;
--- 2964,2971 ----
#if defined(FEAT_AUTOCMD) && defined(FEAT_SYN_HL)
char_u *save_ei = NULL;
#endif
aco_save_T aco;
+ #ifdef FEAT_AUTOCMD
char_u *au_name = NULL;
int flags = 0;
colnr_T col;
***************
*** 3201,3224 ****
* need to be done now, in that buffer. And the modelines
* need to be done (again). But not the window-local
* options! */
- #if defined(FEAT_AUTOCMD)
aucmd_prepbuf(&aco, buf);
- #else
- save_curbuf = curbuf;
- curbuf = buf;
- curwin->w_buffer = curbuf;
- #endif
#if defined(FEAT_AUTOCMD) && defined(FEAT_SYN_HL)
apply_autocmds(EVENT_FILETYPE, buf->b_p_ft,
buf->b_fname, TRUE, buf);
#endif
do_modelines(OPT_NOWIN);
- #if defined(FEAT_AUTOCMD)
aucmd_restbuf(&aco);
- #else
- curbuf = save_curbuf;
- curwin->w_buffer = curbuf;
- #endif
}
}
}
--- 3186,3198 ----
***************
*** 3319,3329 ****
{
buf_T *newbuf;
int failed = TRUE;
- #ifdef FEAT_AUTOCMD
aco_save_T aco;
- #else
- buf_T *old_curbuf = curbuf;
- #endif
/* Allocate a buffer without putting it in the buffer list. */
newbuf = buflist_new(NULL, NULL, (linenr_T)1, BLN_DUMMY);
--- 3293,3299 ----
***************
*** 3333,3345 ****
/* Init the options. */
buf_copy_options(newbuf, BCO_ENTER | BCO_NOHELP);
- #ifdef FEAT_AUTOCMD
/* set curwin/curbuf to buf and save a few things */
aucmd_prepbuf(&aco, newbuf);
- #else
- curbuf = newbuf;
- curwin->w_buffer = newbuf;
- #endif
/* Need to set the filename for autocommands. */
(void)setfname(curbuf, fname, NULL, FALSE);
--- 3303,3310 ----
***************
*** 3370,3382 ****
}
}
- #ifdef FEAT_AUTOCMD
/* restore curwin/curbuf and a few other things */
aucmd_restbuf(&aco);
- #else
- curbuf = old_curbuf;
- curwin->w_buffer = old_curbuf;
- #endif
if (!buf_valid(newbuf))
return NULL;
--- 3335,3342 ----
*** ../vim-7.0.059/src/structs.h Sun Apr 9 23:52:16 2006
--- src/structs.h Wed Aug 16 19:30:48 2006
***************
*** 2213,2230 ****
/*
* Struct to save values in before executing autocommands for a buffer that is
! * not the current buffer.
*/
typedef struct
{
buf_T *save_buf; /* saved curbuf */
buf_T *new_curbuf; /* buffer to be used */
win_T *save_curwin; /* saved curwin, NULL if it didn't change */
win_T *new_curwin; /* new curwin if save_curwin != NULL */
pos_T save_cursor; /* saved cursor pos of save_curwin */
linenr_T save_topline; /* saved topline of save_curwin */
! #ifdef FEAT_DIFF
int save_topfill; /* saved topfill of save_curwin */
#endif
} aco_save_T;
--- 2213,2232 ----
/*
* Struct to save values in before executing autocommands for a buffer that is
! * not the current buffer. Without FEAT_AUTOCMD only "curbuf" is remembered.
*/
typedef struct
{
buf_T *save_buf; /* saved curbuf */
+ #ifdef FEAT_AUTOCMD
buf_T *new_curbuf; /* buffer to be used */
win_T *save_curwin; /* saved curwin, NULL if it didn't change */
win_T *new_curwin; /* new curwin if save_curwin != NULL */
pos_T save_cursor; /* saved cursor pos of save_curwin */
linenr_T save_topline; /* saved topline of save_curwin */
! # ifdef FEAT_DIFF
int save_topfill; /* saved topfill of save_curwin */
+ # endif
#endif
} aco_save_T;
*** ../vim-7.0.059/src/version.c Wed Aug 16 18:19:41 2006
--- src/version.c Wed Aug 16 19:31:01 2006
***************
*** 668,669 ****
--- 668,671 ----
{ /* Add new patch number below this line */
+ /**/
+ 60,
/**/
--
hundred-and-one symptoms of being an internet addict:
164. You got out to buy software, instead of going out for a beer.
/// Bram Moolenaar -- Bram@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 ///

70
7.0.061
View File

@ -1,70 +0,0 @@
To: vim-dev@vim.org
Subject: Patch 7.0.061
Fcc: outbox
From: Bram Moolenaar <Bram@moolenaar.net>
Mime-Version: 1.0
Content-Type: text/plain; charset=ISO-8859-1
Content-Transfer-Encoding: 8bit
------------
Patch 7.0.061
Problem: Insert mode completion for Vim commands may crash if there is
nothing to complete.
Solution: Instead of freeing the pattern make it empty, so that a "not
found" error is given. (Yukihiro Nakadaira)
Files: src/edit.c
*** ../vim-7.0.060/src/edit.c Wed Aug 16 16:24:58 2006
--- src/edit.c Wed Aug 16 21:20:29 2006
***************
*** 4691,4708 ****
(int)STRLEN(compl_pattern), curs_col);
if (compl_xp.xp_context == EXPAND_UNSUCCESSFUL
|| compl_xp.xp_context == EXPAND_NOTHING)
! {
compl_col = curs_col;
- compl_length = 0;
- vim_free(compl_pattern);
- compl_pattern = NULL;
- }
else
! {
! startcol = (int)(compl_xp.xp_pattern - compl_pattern);
! compl_col = startcol;
! compl_length = curs_col - startcol;
! }
}
else if (ctrl_x_mode == CTRL_X_FUNCTION || ctrl_x_mode == CTRL_X_OMNI)
{
--- 4692,4703 ----
(int)STRLEN(compl_pattern), curs_col);
if (compl_xp.xp_context == EXPAND_UNSUCCESSFUL
|| compl_xp.xp_context == EXPAND_NOTHING)
! /* No completion possible, use an empty pattern to get a
! * "pattern not found" message. */
compl_col = curs_col;
else
! compl_col = (int)(compl_xp.xp_pattern - compl_pattern);
! compl_length = curs_col - compl_col;
}
else if (ctrl_x_mode == CTRL_X_FUNCTION || ctrl_x_mode == CTRL_X_OMNI)
{
*** ../vim-7.0.060/src/version.c Wed Aug 16 19:34:59 2006
--- src/version.c Wed Aug 16 21:25:03 2006
***************
*** 668,669 ****
--- 668,671 ----
{ /* Add new patch number below this line */
+ /**/
+ 61,
/**/
--
hundred-and-one symptoms of being an internet addict:
165. You have a web page burned into your glasses
/// Bram Moolenaar -- Bram@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 ///

120
7.0.062
View File

@ -1,120 +0,0 @@
To: vim-dev@vim.org
Subject: Patch 7.0.062
Fcc: outbox
From: Bram Moolenaar <Bram@moolenaar.net>
Mime-Version: 1.0
Content-Type: text/plain; charset=ISO-8859-1
Content-Transfer-Encoding: 8bit
------------
Patch 7.0.062
Problem: Mac: Crash when using the popup menu for spell correction. The
popup menu appears twice when letting go of the right mouse button
early.
Solution: Don't show the popup menu on the release of the right mouse
button. Also check that a menu pointer is actually valid.
Files: src/proto/menu.pro, src/menu.c, src/normal.c, src/term.c
*** ../vim-7.0.061/src/proto/menu.pro Fri Mar 24 23:37:59 2006
--- src/proto/menu.pro Wed Aug 16 20:25:57 2006
***************
*** 10,15 ****
--- 10,16 ----
extern int menu_is_child_of_popup __ARGS((vimmenu_T *menu));
extern int menu_is_toolbar __ARGS((char_u *name));
extern int menu_is_separator __ARGS((char_u *name));
+ extern int check_menu_pointer __ARGS((vimmenu_T *root, vimmenu_T *menu_to_check));
extern void gui_create_initial_menus __ARGS((vimmenu_T *menu));
extern void gui_update_menus __ARGS((int modes));
extern int gui_is_menu_shortcut __ARGS((int key));
*** ../vim-7.0.061/src/menu.c Wed Aug 16 15:56:58 2006
--- src/menu.c Wed Aug 16 20:35:09 2006
***************
*** 1778,1783 ****
--- 1778,1804 ----
}
/*
+ * Check that a pointer appears in the menu tree. Used to protect from using
+ * a menu that was deleted after it was selected but before the event was
+ * handled.
+ * Return OK or FAIL. Used recursively.
+ */
+ int
+ check_menu_pointer(root, menu_to_check)
+ vimmenu_T *root;
+ vimmenu_T *menu_to_check;
+ {
+ vimmenu_T *p;
+
+ for (p = root; p != NULL; p = p->next)
+ if (p == menu_to_check
+ || (p->children != NULL
+ && check_menu_pointer(p->children, menu_to_check) == OK))
+ return OK;
+ return FAIL;
+ }
+
+ /*
* After we have started the GUI, then we can create any menus that have been
* defined. This is done once here. add_menu_path() may have already been
* called to define these menus, and may be called again. This function calls
*** ../vim-7.0.061/src/normal.c Sat Apr 29 23:53:55 2006
--- src/normal.c Wed Aug 16 19:54:04 2006
***************
*** 2504,2510 ****
* NOTE: Ignore right button down and drag mouse events.
* Windows only shows the popup menu on the button up event.
*/
! #if defined(FEAT_GUI_MOTIF) || defined(FEAT_GUI_GTK) || defined(FEAT_GUI_PHOTON)
if (!is_click)
return FALSE;
#endif
--- 2504,2511 ----
* NOTE: Ignore right button down and drag mouse events.
* Windows only shows the popup menu on the button up event.
*/
! #if defined(FEAT_GUI_MOTIF) || defined(FEAT_GUI_GTK) \
! || defined(FEAT_GUI_PHOTON) || defined(FEAT_GUI_MAC)
if (!is_click)
return FALSE;
#endif
*** ../vim-7.0.061/src/term.c Wed May 3 23:26:49 2006
--- src/term.c Wed Aug 16 21:24:21 2006
***************
*** 4783,4788 ****
--- 4783,4796 ----
return -1;
current_menu = (vimmenu_T *)val;
slen += num_bytes;
+
+ /* The menu may have been deleted right after it was used, check
+ * for that. */
+ if (check_menu_pointer(root_menu, current_menu) == FAIL)
+ {
+ key_name[0] = KS_EXTRA;
+ key_name[1] = (int)KE_IGNORE;
+ }
}
# endif
# ifdef FEAT_GUI_TABLINE
*** ../vim-7.0.061/src/version.c Wed Aug 16 21:26:19 2006
--- src/version.c Wed Aug 16 21:40:37 2006
***************
*** 668,669 ****
--- 668,671 ----
{ /* Add new patch number below this line */
+ /**/
+ 62,
/**/
--
hundred-and-one symptoms of being an internet addict:
166. You have been on your computer soo long that you didn't realize
you had grandchildren.
/// Bram Moolenaar -- Bram@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 ///

45
7.0.063
View File

@ -1,45 +0,0 @@
To: vim-dev@vim.org
Subject: Patch 7.0.063
Fcc: outbox
From: Bram Moolenaar <Bram@moolenaar.net>
Mime-Version: 1.0
Content-Type: text/plain; charset=ISO-8859-1
Content-Transfer-Encoding: 8bit
------------
Patch 7.0.063
Problem: Tiny chance for a memory leak. (coverity)
Solution: Free pointer when next memory allocation fails.
Files: src/eval.c
*** ../vim-7.0.062/src/eval.c Wed Aug 16 19:34:59 2006
--- src/eval.c Wed Aug 16 21:33:24 2006
***************
*** 18811,18816 ****
--- 18811,18817 ----
if (dict_add(fudi.fd_dict, fudi.fd_di) == FAIL)
{
vim_free(fudi.fd_di);
+ vim_free(fp);
goto erret;
}
}
*** ../vim-7.0.062/src/version.c Wed Aug 16 21:42:34 2006
--- src/version.c Wed Aug 16 22:02:57 2006
***************
*** 668,669 ****
--- 668,671 ----
{ /* Add new patch number below this line */
+ /**/
+ 63,
/**/
--
hundred-and-one symptoms of being an internet addict:
167. You have more than 200 websites bookmarked.
/// Bram Moolenaar -- Bram@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 ///

66
7.0.064
View File

@ -1,66 +0,0 @@
To: vim-dev@vim.org
Subject: Patch 7.0.064
Fcc: outbox
From: Bram Moolenaar <Bram@moolenaar.net>
Mime-Version: 1.0
Content-Type: text/plain; charset=ISO-8859-1
Content-Transfer-Encoding: 8bit
------------
Patch 7.0.064
Problem: Using uninitialized variable. (Tony Mechelynck)
Solution: When not used set "temp" to zero. Also avoid a warning for
"files" in ins_compl_dictionaries().
Files: src/edit.c
*** ../vim-7.0.063/src/edit.c Wed Aug 16 21:26:19 2006
--- src/edit.c Thu Aug 17 22:28:34 2006
***************
*** 2760,2765 ****
--- 2760,2766 ----
}
else
# endif
+ if (count > 0) /* avoid warning for using "files" uninit */
{
ins_compl_files(count, files, thesaurus, flags,
&regmatch, buf, &dir);
***************
*** 3222,3228 ****
int c;
{
char_u *ptr;
- int temp;
int want_cindent;
int retval = FALSE;
--- 3223,3228 ----
***************
*** 3378,3383 ****
--- 3378,3384 ----
if (compl_curr_match != NULL || compl_leader != NULL || c == Ctrl_E)
{
char_u *p;
+ int temp = 0;
/*
* If any of the original typed text has been changed, eg when
*** ../vim-7.0.063/src/version.c Wed Aug 16 22:03:35 2006
--- src/version.c Tue Aug 22 19:56:05 2006
***************
*** 668,669 ****
--- 668,671 ----
{ /* Add new patch number below this line */
+ /**/
+ 64,
/**/
--
hundred-and-one symptoms of being an internet addict:
200. You really believe in the concept of a "paperless" office.
/// Bram Moolenaar -- Bram@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 ///

52
7.0.065
View File

@ -1,52 +0,0 @@
To: vim-dev@vim.org
Subject: Patch 7.0.065 (extra)
Fcc: outbox
From: Bram Moolenaar <Bram@moolenaar.net>
Mime-Version: 1.0
Content-Type: text/plain; charset=ISO-8859-1
Content-Transfer-Encoding: 8bit
------------
Patch 7.0.065 (extra)
Problem: Mac: left-right movement of the scrollwheel causes up-down
scrolling.
Solution: Ignore mouse wheel events that are not up-down. (Nicolas Weber)
Files: src/gui_mac.c
*** ../vim-7.0.064/src/gui_mac.c Wed May 3 00:03:26 2006
--- src/gui_mac.c Tue Aug 22 13:41:12 2006
***************
*** 2480,2485 ****
--- 2480,2491 ----
UInt32 mod;
SInt32 delta;
int_u vim_mod;
+ EventMouseWheelAxis axis;
+
+ if (noErr == GetEventParameter(theEvent, kEventParamMouseWheelAxis,
+ typeMouseWheelAxis, NULL, sizeof(axis), NULL, &axis)
+ && axis != kEventMouseWheelAxisY)
+ goto bail; /* Vim only does up-down scrolling */
if (noErr != GetEventParameter(theEvent, kEventParamMouseWheelDelta,
typeSInt32, NULL, sizeof(SInt32), NULL, &delta))
*** ../vim-7.0.064/src/version.c Tue Aug 22 19:58:22 2006
--- src/version.c Tue Aug 22 21:38:07 2006
***************
*** 668,669 ****
--- 668,671 ----
{ /* Add new patch number below this line */
+ /**/
+ 65,
/**/
--
Spam seems to be something useful to novices. Later you realize that
it's a bunch of indigestable junk that only clogs your system.
Applies to both the food and the e-mail!
/// Bram Moolenaar -- Bram@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 ///

49
7.0.066
View File

@ -1,49 +0,0 @@
To: vim-dev@vim.org
Subject: Patch 7.0.066
Fcc: outbox
From: Bram Moolenaar <Bram@moolenaar.net>
Mime-Version: 1.0
Content-Type: text/plain; charset=ISO-8859-1
Content-Transfer-Encoding: 8bit
------------
Patch 7.0.066
Problem: After the popup menu for Insert mode completion overlaps the tab
pages line it is not completely removed.
Solution: Redraw the tab pages line after removing the popup menu. (Ori
Avtalion)
Files: src/popupmnu.c
*** ../vim-7.0.065/src/popupmnu.c Fri Apr 21 00:12:29 2006
--- src/popupmnu.c Tue Aug 22 16:10:55 2006
***************
*** 552,557 ****
--- 552,560 ----
{
pum_array = NULL;
redraw_all_later(SOME_VALID);
+ #ifdef FEAT_WINDOWS
+ redraw_tabline = TRUE;
+ #endif
status_redraw_all();
}
*** ../vim-7.0.065/src/version.c Tue Aug 22 21:39:18 2006
--- src/version.c Tue Aug 22 21:50:34 2006
***************
*** 668,669 ****
--- 668,671 ----
{ /* Add new patch number below this line */
+ /**/
+ 66,
/**/
--
panic("Foooooooood fight!");
-- In the kernel source aha1542.c, after detecting a bad segment list
/// Bram Moolenaar -- Bram@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 ///

95
7.0.067
View File

@ -1,95 +0,0 @@
To: vim-dev@vim.org
Subject: Patch 7.0.067
Fcc: outbox
From: Bram Moolenaar <Bram@moolenaar.net>
Mime-Version: 1.0
Content-Type: text/plain; charset=ISO-8859-1
Content-Transfer-Encoding: 8bit
------------
Patch 7.0.067
Problem: Undo doesn't always work properly when using "scim" input method.
Undo is split up when using preediting.
Solution: Reset xim_has_preediting also when preedit_start_col is not
MAXCOL. Don't split undo when <Left> is used while preediting.
(Yukihiro Nakadaira)
Files: src/edit.c, src/mbyte.c
*** ../vim-7.0.066/src/edit.c Tue Aug 22 19:58:22 2006
--- src/edit.c Tue Aug 29 14:57:46 2006
***************
*** 8597,8603 ****
tpos = curwin->w_cursor;
if (oneleft() == OK)
{
! start_arrow(&tpos);
#ifdef FEAT_RIGHTLEFT
/* If exit reversed string, position is fixed */
if (revins_scol != -1 && (int)curwin->w_cursor.col >= revins_scol)
--- 8597,8608 ----
tpos = curwin->w_cursor;
if (oneleft() == OK)
{
! #if defined(FEAT_XIM) && defined(FEAT_GUI_GTK)
! /* Only call start_arrow() when not busy with preediting, it will
! * break undo. K_LEFT is inserted in im_correct_cursor(). */
! if (!im_is_preediting())
! #endif
! start_arrow(&tpos);
#ifdef FEAT_RIGHTLEFT
/* If exit reversed string, position is fixed */
if (revins_scol != -1 && (int)curwin->w_cursor.col >= revins_scol)
*** ../vim-7.0.066/src/mbyte.c Wed Aug 16 18:05:36 2006
--- src/mbyte.c Tue Aug 29 14:41:45 2006
***************
*** 3514,3519 ****
--- 3514,3524 ----
add_to_input_buf(delkey, (int)sizeof(delkey));
}
+ /*
+ * Move the cursor left by "num_move_back" characters.
+ * Note that ins_left() checks im_is_preediting() to avoid breaking undo for
+ * these K_LEFT keys.
+ */
static void
im_correct_cursor(int num_move_back)
{
***************
*** 3741,3748 ****
}
else if (cursor_index == 0 && preedit_string[0] == '\0')
{
! if (preedit_start_col == MAXCOL)
! xim_has_preediting = FALSE;
/* If at the start position (after typing backspace)
* preedit_start_col must be reset. */
--- 3746,3752 ----
}
else if (cursor_index == 0 && preedit_string[0] == '\0')
{
! xim_has_preediting = FALSE;
/* If at the start position (after typing backspace)
* preedit_start_col must be reset. */
*** ../vim-7.0.066/src/version.c Tue Aug 22 21:51:18 2006
--- src/version.c Tue Aug 29 16:09:35 2006
***************
*** 668,669 ****
--- 668,671 ----
{ /* Add new patch number below this line */
+ /**/
+ 67,
/**/
--
hundred-and-one symptoms of being an internet addict:
265. Your reason for not staying in touch with family is that
they do not have e-mail addresses.
/// Bram Moolenaar -- Bram@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 ///

194
7.0.068
View File

@ -1,194 +0,0 @@
To: vim-dev@vim.org
Subject: Patch 7.0.068
Fcc: outbox
From: Bram Moolenaar <Bram@moolenaar.net>
Mime-Version: 1.0
Content-Type: text/plain; charset=ISO-8859-1
Content-Transfer-Encoding: 8bit
------------
Patch 7.0.068
Problem: When 'ignorecase' is set and using Insert mode completion,
typing characters to change the list of matches, case is not
ignored. (Hugo Ahlenius)
Solution: Store the 'ignorecase' flag with the matches where needed.
Files: src/edit.c, src/search.c, src/spell.c
*** ../vim-7.0.067/src/edit.c Tue Aug 29 16:10:54 2006
--- src/edit.c Tue Aug 29 14:57:46 2006
***************
*** 2405,2411 ****
/* compl_pattern doesn't need to be set */
compl_orig_text = vim_strnsave(ml_get_curline() + compl_col, compl_length);
if (compl_orig_text == NULL || ins_compl_add(compl_orig_text,
! -1, FALSE, NULL, NULL, 0, ORIGINAL_TEXT, FALSE) != OK)
return;
/* Handle like dictionary completion. */
--- 2405,2411 ----
/* compl_pattern doesn't need to be set */
compl_orig_text = vim_strnsave(ml_get_curline() + compl_col, compl_length);
if (compl_orig_text == NULL || ins_compl_add(compl_orig_text,
! -1, p_ic, NULL, NULL, 0, ORIGINAL_TEXT, FALSE) != OK)
return;
/* Handle like dictionary completion. */
***************
*** 2821,2827 ****
ptr = find_word_end(ptr);
add_r = ins_compl_add_infercase(regmatch->startp[0],
(int)(ptr - regmatch->startp[0]),
! FALSE, files[i], *dir, 0);
if (thesaurus)
{
char_u *wstart;
--- 2821,2827 ----
ptr = find_word_end(ptr);
add_r = ins_compl_add_infercase(regmatch->startp[0],
(int)(ptr - regmatch->startp[0]),
! p_ic, files[i], *dir, 0);
if (thesaurus)
{
char_u *wstart;
***************
*** 2857,2863 ****
ptr = find_word_end(ptr);
add_r = ins_compl_add_infercase(wstart,
(int)(ptr - wstart),
! FALSE, files[i], *dir, 0);
}
}
if (add_r == OK)
--- 2857,2863 ----
ptr = find_word_end(ptr);
add_r = ins_compl_add_infercase(wstart,
(int)(ptr - wstart),
! p_ic, files[i], *dir, 0);
}
}
if (add_r == OK)
***************
*** 3826,3832 ****
TAG_INS_COMP | (ctrl_x_mode ? TAG_VERBOSE : 0),
TAG_MANY, curbuf->b_ffname) == OK && num_matches > 0)
{
! ins_compl_add_matches(num_matches, matches, FALSE);
}
p_ic = save_p_ic;
break;
--- 3826,3832 ----
TAG_INS_COMP | (ctrl_x_mode ? TAG_VERBOSE : 0),
TAG_MANY, curbuf->b_ffname) == OK && num_matches > 0)
{
! ins_compl_add_matches(num_matches, matches, p_ic);
}
p_ic = save_p_ic;
break;
***************
*** 3867,3873 ****
num_matches = expand_spelling(first_match_pos.lnum,
first_match_pos.col, compl_pattern, &matches);
if (num_matches > 0)
! ins_compl_add_matches(num_matches, matches, FALSE);
#endif
break;
--- 3867,3873 ----
num_matches = expand_spelling(first_match_pos.lnum,
first_match_pos.col, compl_pattern, &matches);
if (num_matches > 0)
! ins_compl_add_matches(num_matches, matches, p_ic);
#endif
break;
***************
*** 4001,4007 ****
continue;
}
}
! if (ins_compl_add_infercase(ptr, len, FALSE,
ins_buf == curbuf ? NULL : ins_buf->b_sfname,
0, flags) != NOTDONE)
{
--- 4001,4007 ----
continue;
}
}
! if (ins_compl_add_infercase(ptr, len, p_ic,
ins_buf == curbuf ? NULL : ins_buf->b_sfname,
0, flags) != NOTDONE)
{
***************
*** 4809,4815 ****
vim_free(compl_orig_text);
compl_orig_text = vim_strnsave(line + compl_col, compl_length);
if (compl_orig_text == NULL || ins_compl_add(compl_orig_text,
! -1, FALSE, NULL, NULL, 0, ORIGINAL_TEXT, FALSE) != OK)
{
vim_free(compl_pattern);
compl_pattern = NULL;
--- 4809,4815 ----
vim_free(compl_orig_text);
compl_orig_text = vim_strnsave(line + compl_col, compl_length);
if (compl_orig_text == NULL || ins_compl_add(compl_orig_text,
! -1, p_ic, NULL, NULL, 0, ORIGINAL_TEXT, FALSE) != OK)
{
vim_free(compl_pattern);
compl_pattern = NULL;
*** ../vim-7.0.067/src/search.c Fri May 5 23:15:17 2006
--- src/search.c Tue Aug 29 14:56:15 2006
***************
*** 4871,4877 ****
goto exit_matched;
}
! add_r = ins_compl_add_infercase(aux, i, FALSE,
curr_fname == curbuf->b_fname ? NULL : curr_fname,
dir, reuse);
if (add_r == OK)
--- 4876,4882 ----
goto exit_matched;
}
! add_r = ins_compl_add_infercase(aux, i, p_ic,
curr_fname == curbuf->b_fname ? NULL : curr_fname,
dir, reuse);
if (add_r == OK)
*** ../vim-7.0.067/src/spell.c Sun Jul 23 21:52:16 2006
--- src/spell.c Tue Aug 29 14:56:26 2006
***************
*** 15658,15664 ****
? MB_STRNICMP(p, pat, STRLEN(pat)) == 0
: STRNCMP(p, pat, STRLEN(pat)) == 0)
&& ins_compl_add_infercase(p, (int)STRLEN(p),
! FALSE, NULL, *dir, 0) == OK)
/* if dir was BACKWARD then honor it just once */
*dir = FORWARD;
}
--- 15662,15668 ----
? MB_STRNICMP(p, pat, STRLEN(pat)) == 0
: STRNCMP(p, pat, STRLEN(pat)) == 0)
&& ins_compl_add_infercase(p, (int)STRLEN(p),
! p_ic, NULL, *dir, 0) == OK)
/* if dir was BACKWARD then honor it just once */
*dir = FORWARD;
}
*** ../vim-7.0.067/src/version.c Tue Aug 29 16:10:54 2006
--- src/version.c Tue Aug 29 16:13:49 2006
***************
*** 668,669 ****
--- 668,671 ----
{ /* Add new patch number below this line */
+ /**/
+ 68,
/**/
--
hundred-and-one symptoms of being an internet addict:
266. You hear most of your jokes via e-mail instead of in person.
/// Bram Moolenaar -- Bram@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 ///

53
7.0.069
View File

@ -1,53 +0,0 @@
To: vim-dev@vim.org
Subject: Patch 7.0.069
Fcc: outbox
From: Bram Moolenaar <Bram@moolenaar.net>
Mime-Version: 1.0
Content-Type: text/plain; charset=ISO-8859-1
Content-Transfer-Encoding: 8bit
------------
Patch 7.0.069
Problem: Setting 'guitablabel' to %!expand(\%) causes Vim to free an
invalid pointer. (Kim Schulz)
Solution: Don't try freeing a constant string pointer.
Files: src/buffer.c
*** ../vim-7.0.068/src/buffer.c Wed Aug 16 19:34:59 2006
--- src/buffer.c Tue Aug 29 16:23:49 2006
***************
*** 3324,3330 ****
{
usefmt = eval_to_string_safe(fmt + 2, NULL, use_sandbox);
if (usefmt == NULL)
! usefmt = (char_u *)"";
}
#endif
--- 3324,3330 ----
{
usefmt = eval_to_string_safe(fmt + 2, NULL, use_sandbox);
if (usefmt == NULL)
! usefmt = fmt;
}
#endif
*** ../vim-7.0.068/src/version.c Tue Aug 29 16:33:23 2006
--- src/version.c Tue Aug 29 16:48:08 2006
***************
*** 668,669 ****
--- 668,671 ----
{ /* Add new patch number below this line */
+ /**/
+ 69,
/**/
--
Two fish in a tank. One says to the other:
"Do you know how to drive this thing?"
/// Bram Moolenaar -- Bram@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 ///

2603
7.0.070

File diff suppressed because it is too large Load Diff

52
7.0.071
View File

@ -1,52 +0,0 @@
To: vim-dev@vim.org
Subject: Patch 7.0.071
Fcc: outbox
From: Bram Moolenaar <Bram@moolenaar.net>
Mime-Version: 1.0
Content-Type: text/plain; charset=ISO-8859-1
Content-Transfer-Encoding: 8bit
------------
Patch 7.0.071
Problem: Using an empty search pattern may cause a crash.
Solution: Avoid using a NULL pointer.
Files: src/search.c
*** ../vim-7.0.070/src/search.c Tue Aug 29 17:28:56 2006
--- src/search.c Tue Aug 29 14:56:15 2006
***************
*** 1259,1265 ****
/*
* Add character and/or line offset
*/
! if (!(options & SEARCH_NOOF) || *pat == ';')
{
if (spats[0].off.line) /* Add the offset to the line number. */
{
--- 1259,1265 ----
/*
* Add character and/or line offset
*/
! if (!(options & SEARCH_NOOF) || (pat != NULL && *pat == ';'))
{
if (spats[0].off.line) /* Add the offset to the line number. */
{
*** ../vim-7.0.070/src/version.c Tue Aug 29 17:28:56 2006
--- src/version.c Tue Aug 29 17:59:24 2006
***************
*** 668,669 ****
--- 668,671 ----
{ /* Add new patch number below this line */
+ /**/
+ 71,
/**/
--
hundred-and-one symptoms of being an internet addict:
268. You get up in the morning and go online before getting your coffee.
/// Bram Moolenaar -- Bram@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 ///

83
7.0.072
View File

@ -1,83 +0,0 @@
To: vim-dev@vim.org
Subject: Patch 7.0.072
Fcc: outbox
From: Bram Moolenaar <Bram@moolenaar.net>
Mime-Version: 1.0
Content-Type: text/plain; charset=ISO-8859-1
Content-Transfer-Encoding: 8bit
------------
Patch 7.0.072
Problem: When starting the GUI fails there is no way to adjust settings or
do something else.
Solution: Add the GUIFailed autocommand event.
Files: src/fileio.c, src/gui.c, src/vim.h
*** ../vim-7.0.071/src/fileio.c Wed Aug 16 19:34:59 2006
--- src/fileio.c Tue Aug 29 10:11:35 2006
***************
*** 6980,6985 ****
--- 6980,6986 ----
{"FocusLost", EVENT_FOCUSLOST},
{"FuncUndefined", EVENT_FUNCUNDEFINED},
{"GUIEnter", EVENT_GUIENTER},
+ {"GUIFailed", EVENT_GUIFAILED},
{"InsertChange", EVENT_INSERTCHANGE},
{"InsertEnter", EVENT_INSERTENTER},
{"InsertLeave", EVENT_INSERTLEAVE},
*** ../vim-7.0.071/src/gui.c Tue Jun 20 20:39:32 2006
--- src/gui.c Tue Aug 29 10:12:32 2006
***************
*** 187,195 ****
#endif
#ifdef FEAT_AUTOCMD
! /* If the GUI started successfully, trigger the GUIEnter event */
! if (gui.in_use)
! apply_autocmds(EVENT_GUIENTER, NULL, NULL, FALSE, curbuf);
#endif
--recursive;
--- 187,196 ----
#endif
#ifdef FEAT_AUTOCMD
! /* If the GUI started successfully, trigger the GUIEnter event, otherwise
! * the GUIFailed event. */
! apply_autocmds(gui.in_use ? EVENT_GUIENTER : EVENT_GUIFAILED,
! NULL, NULL, FALSE, curbuf);
#endif
--recursive;
*** ../vim-7.0.071/src/vim.h Fri Jun 23 16:33:41 2006
--- src/vim.h Tue Aug 29 10:12:47 2006
***************
*** 1120,1125 ****
--- 1120,1126 ----
EVENT_FOCUSGAINED, /* got the focus */
EVENT_FOCUSLOST, /* lost the focus to another app */
EVENT_GUIENTER, /* after starting the GUI */
+ EVENT_GUIFAILED, /* after starting the GUI failed */
EVENT_INSERTCHANGE, /* when changing Insert/Replace mode */
EVENT_INSERTENTER, /* when entering Insert mode */
EVENT_INSERTLEAVE, /* when leaving Insert mode */
*** ../vim-7.0.071/src/version.c Tue Aug 29 18:01:39 2006
--- src/version.c Tue Aug 29 18:15:13 2006
***************
*** 668,669 ****
--- 668,671 ----
{ /* Add new patch number below this line */
+ /**/
+ 72,
/**/
--
hundred-and-one symptoms of being an internet addict:
269. You receive an e-mail from the wife of a deceased president, offering
to send you twenty million dollar, and you are not even surprised.
/// Bram Moolenaar -- Bram@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 ///

50
7.0.073
View File

@ -1,50 +0,0 @@
To: vim-dev@vim.org
Subject: Patch 7.0.073
Fcc: outbox
From: Bram Moolenaar <Bram@moolenaar.net>
Mime-Version: 1.0
Content-Type: text/plain; charset=ISO-8859-1
Content-Transfer-Encoding: 8bit
------------
Patch 7.0.073
Problem: Insert mode completion: Typing <CR> sometimes selects the original
text instead of keeping what was typed. (Justin Constantino)
Solution: Don't let <CR> select the original text if there is no popup menu.
Files: src/edit.c
*** ../vim-7.0.072/src/edit.c Tue Aug 29 17:28:56 2006
--- src/edit.c Tue Aug 29 17:40:06 2006
***************
*** 3097,3102 ****
--- 3097,3106 ----
/* Show the popup menu with a different set of matches. */
ins_compl_show_pum();
+
+ /* Don't let Enter select the original text when there is no popup menu. */
+ if (compl_match_array == NULL)
+ compl_enter_selects = FALSE;
}
/*
*** ../vim-7.0.072/src/version.c Tue Aug 29 18:16:37 2006
--- src/version.c Tue Aug 29 18:35:33 2006
***************
*** 668,669 ****
--- 668,671 ----
{ /* Add new patch number below this line */
+ /**/
+ 73,
/**/
--
hundred-and-one symptoms of being an internet addict:
269. You wonder how you can make your dustbin produce Sesame Street's
Oscar's the Garbage Monster song when you empty it.
/// Bram Moolenaar -- Bram@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 ///

270
7.0.074
View File

@ -1,270 +0,0 @@
To: vim-dev@vim.org
Subject: Patch 7.0.074 (extra)
Fcc: outbox
From: Bram Moolenaar <Bram@moolenaar.net>
Mime-Version: 1.0
Content-Type: text/plain; charset=ISO-8859-1
Content-Transfer-Encoding: 8bit
------------
Patch 7.0.074 (extra)
Problem: Win32: tooltips were not converted from 'encoding' to Unicode.
Solution: Set the tooltip to use Unicode and do the conversion. Also
cleanup the code for the tab pages tooltips. (Yukihiro Nakadaira)
Files: src/gui_w32.c, src/gui_w48.c
*** ../vim-7.0.073/src/gui_w32.c Sat May 6 23:43:11 2006
--- src/gui_w32.c Tue Aug 29 21:16:58 2006
***************
*** 889,1005 ****
# ifdef FEAT_MBYTE
case TTN_GETDISPINFOW:
# endif
! case TTN_NEEDTEXT:
! # ifdef FEAT_GUI_TABLINE
! if (gui_mch_showing_tabline()
! && ((LPNMHDR)lParam)->hwndFrom ==
! TabCtrl_GetToolTips(s_tabhwnd))
{
! LPNMTTDISPINFO lpdi;
! POINT pt;
! static char *tt_text = NULL;
! static int tt_text_len = 0;
!
! /*
! * Mouse is over the GUI tabline. Display the tooltip
! * for the tab under the cursor
! */
! lpdi = (LPNMTTDISPINFO)lParam;
! lpdi->hinst = NULL;
! lpdi->szText[0] = '\0';
!
! /*
! * Get the cursor position within the tab control
! */
! GetCursorPos(&pt);
! if (ScreenToClient(s_tabhwnd, &pt) != 0)
! {
! TCHITTESTINFO htinfo;
! int idx;
/*
! * Get the tab under the cursor
*/
! htinfo.pt.x = pt.x;
! htinfo.pt.y = pt.y;
! idx = TabCtrl_HitTest(s_tabhwnd, &htinfo);
! if (idx != -1)
{
! tabpage_T *tp;
! tp = find_tabpage(idx + 1);
! if (tp != NULL)
{
! # ifdef FEAT_MBYTE
! WCHAR *wstr = NULL;
! # endif
! get_tabline_label(tp, TRUE);
! # ifdef FEAT_MBYTE
! if (enc_codepage >= 0
! && (int)GetACP() != enc_codepage)
! {
! wstr = enc_to_ucs2(NameBuff, NULL);
! if (wstr != NULL)
! {
! int wlen;
!
! wlen = ((int)wcslen(wstr) + 1)
! * sizeof(WCHAR);
! if (tt_text_len < wlen)
! {
! tt_text = vim_realloc(tt_text,
! wlen);
! if (tt_text != NULL)
! tt_text_len = wlen;
! }
! if (tt_text != NULL)
! wcscpy((WCHAR *)tt_text, wstr);
! lpdi->lpszText = tt_text;
! vim_free(wstr);
! }
! }
! if (wstr == NULL)
! # endif
! {
! int len;
! len = (int)STRLEN(NameBuff) + 1;
! if (tt_text_len < len)
! {
! tt_text = vim_realloc(tt_text, len);
! if (tt_text != NULL)
! tt_text_len = len;
! }
! if (tt_text != NULL)
! STRCPY(tt_text, NameBuff);
! lpdi->lpszText = tt_text;
}
}
}
}
- }
- else
# endif
- {
# ifdef FEAT_TOOLBAR
! LPTOOLTIPTEXT lpttt;
! UINT idButton;
! int idx;
! vimmenu_T *pMenu;
!
! lpttt = (LPTOOLTIPTEXT)lParam;
! idButton = (UINT) lpttt->hdr.idFrom;
! pMenu = gui_mswin_find_menu(root_menu, idButton);
! if (pMenu)
{
! idx = MENU_INDEX_TIP;
! if (pMenu->strings[idx])
{
! lpttt->hinst = NULL; /* string, not resource */
! lpttt->lpszText = pMenu->strings[idx];
}
! }
# endif
}
break;
# ifdef FEAT_GUI_TABLINE
--- 889,978 ----
# ifdef FEAT_MBYTE
case TTN_GETDISPINFOW:
# endif
! case TTN_GETDISPINFO:
{
! LPNMHDR hdr = (LPNMHDR)lParam;
! char_u *str = NULL;
! static void *tt_text = NULL;
!
! vim_free(tt_text);
! tt_text = NULL;
+ # ifdef FEAT_GUI_TABLINE
+ if (gui_mch_showing_tabline()
+ && hdr->hwndFrom == TabCtrl_GetToolTips(s_tabhwnd))
+ {
+ POINT pt;
/*
! * Mouse is over the GUI tabline. Display the
! * tooltip for the tab under the cursor
! *
! * Get the cursor position within the tab control
*/
! GetCursorPos(&pt);
! if (ScreenToClient(s_tabhwnd, &pt) != 0)
{
! TCHITTESTINFO htinfo;
! int idx;
! /*
! * Get the tab under the cursor
! */
! htinfo.pt.x = pt.x;
! htinfo.pt.y = pt.y;
! idx = TabCtrl_HitTest(s_tabhwnd, &htinfo);
! if (idx != -1)
{
! tabpage_T *tp;
! tp = find_tabpage(idx + 1);
! if (tp != NULL)
! {
! get_tabline_label(tp, TRUE);
! str = NameBuff;
}
}
}
}
# endif
# ifdef FEAT_TOOLBAR
! # ifdef FEAT_GUI_TABLINE
! else
! # endif
! {
! UINT idButton;
! vimmenu_T *pMenu;
!
! idButton = (UINT) hdr->idFrom;
! pMenu = gui_mswin_find_menu(root_menu, idButton);
! if (pMenu)
! str = pMenu->strings[MENU_INDEX_TIP];
! }
! # endif
! if (str != NULL)
{
! # ifdef FEAT_MBYTE
! if (hdr->code == TTN_GETDISPINFOW)
{
! LPNMTTDISPINFOW lpdi = (LPNMTTDISPINFOW)lParam;
!
! tt_text = enc_to_ucs2(str, NULL);
! lpdi->lpszText = tt_text;
! /* can't show tooltip if failed */
}
! else
# endif
+ {
+ LPNMTTDISPINFO lpdi = (LPNMTTDISPINFO)lParam;
+
+ if (STRLEN(str) < sizeof(lpdi->szText)
+ || ((tt_text = vim_strsave(str)) == NULL))
+ vim_strncpy(lpdi->szText, str,
+ sizeof(lpdi->szText) - 1);
+ else
+ lpdi->lpszText = tt_text;
+ }
+ }
}
break;
# ifdef FEAT_GUI_TABLINE
*** ../vim-7.0.073/src/gui_w48.c Fri Jun 23 16:44:32 2006
--- src/gui_w48.c Tue Aug 29 21:14:31 2006
***************
*** 2194,2200 ****
--- 2194,2211 ----
return;
if (showit)
+ {
+ # ifdef FEAT_MBYTE
+ # ifndef TB_SETUNICODEFORMAT
+ /* For older compilers. We assume this never changes. */
+ # define TB_SETUNICODEFORMAT 0x2005
+ # endif
+ /* Enable/disable unicode support */
+ int uu = (enc_codepage >= 0 && (int)GetACP() != enc_codepage);
+ SendMessage(s_toolbarhwnd, TB_SETUNICODEFORMAT, (WPARAM)uu, (LPARAM)0);
+ # endif
ShowWindow(s_toolbarhwnd, SW_SHOW);
+ }
else
ShowWindow(s_toolbarhwnd, SW_HIDE);
}
*** ../vim-7.0.073/src/version.c Tue Aug 29 18:36:55 2006
--- src/version.c Tue Aug 29 21:28:00 2006
***************
*** 668,669 ****
--- 668,671 ----
{ /* Add new patch number below this line */
+ /**/
+ 74,
/**/
--
hundred-and-one symptoms of being an internet addict:
271. You collect hilarious signatures from all 250 mailing lists you
are subscribed to.
/// Bram Moolenaar -- Bram@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 ///

45
7.0.075
View File

@ -1,45 +0,0 @@
To: vim-dev@vim.org
Subject: Patch 7.0.075
Fcc: outbox
From: Bram Moolenaar <Bram@moolenaar.net>
Mime-Version: 1.0
Content-Type: text/plain; charset=ISO-8859-1
Content-Transfer-Encoding: 8bit
------------
Patch 7.0.075
Problem: winsaveview() did not store the actual value of the desired cursor
column. This could move the cursor in the matchparen plugin.
Solution: Call update_curswant() before using the value w_curswant.
Files: src/eval.c
*** ../vim-7.0.074/src/eval.c Tue Aug 29 17:28:56 2006
--- src/eval.c Tue Aug 29 21:53:26 2006
***************
*** 16232,16237 ****
--- 16232,16238 ----
#ifdef FEAT_VIRTUALEDIT
dict_add_nr_str(dict, "coladd", (long)curwin->w_cursor.coladd, NULL);
#endif
+ update_curswant();
dict_add_nr_str(dict, "curswant", (long)curwin->w_curswant, NULL);
dict_add_nr_str(dict, "topline", (long)curwin->w_topline, NULL);
*** ../vim-7.0.074/src/version.c Tue Aug 29 21:30:15 2006
--- src/version.c Tue Aug 29 21:57:03 2006
***************
*** 668,669 ****
--- 668,671 ----
{ /* Add new patch number below this line */
+ /**/
+ 75,
/**/
--
Women are probably the main cause of free software starvation.
/// Bram Moolenaar -- Bram@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 ///

76
7.0.076
View File

@ -1,76 +0,0 @@
To: vim-dev@vim.org
Subject: Patch 7.0.076
Fcc: outbox
From: Bram Moolenaar <Bram@moolenaar.net>
Mime-Version: 1.0
Content-Type: text/plain; charset=ISO-8859-1
Content-Transfer-Encoding: 8bit
------------
Patch 7.0.076 (after 7.0.010)
Problem: Automatic downloading of spell files only works for ftp.
Solution: Don't add login and password for non-ftp URLs. (Alexander Patrakov)
Files: runtime/autoload/spellfile.vim
*** ../vim-7.0.075/runtime/autoload/spellfile.vim Sat May 13 14:29:16 2006
--- runtime/autoload/spellfile.vim Tue Aug 29 22:17:03 2006
***************
*** 1,6 ****
" Vim script to download a missing spell file
" Maintainer: Bram Moolenaar <Bram@vim.org>
! " Last Change: 2006 May 10
if !exists('g:spellfile_URL')
let g:spellfile_URL = 'ftp://ftp.vim.org/pub/vim/runtime/spell'
--- 1,6 ----
" Vim script to download a missing spell file
" Maintainer: Bram Moolenaar <Bram@vim.org>
! " Last Change: 2006 Aug 29
if !exists('g:spellfile_URL')
let g:spellfile_URL = 'ftp://ftp.vim.org/pub/vim/runtime/spell'
***************
*** 110,118 ****
endif
endfunc
! " Read "fname" from the ftp server.
function! spellfile#Nread(fname)
! let machine = substitute(g:spellfile_URL, 'ftp://\([^/]*\).*', '\1', '')
! let dir = substitute(g:spellfile_URL, 'ftp://[^/]*/\(.*\)', '\1', '')
! exe 'Nread "' . machine . ' anonymous vim7user ' . dir . '/' . a:fname . '"'
endfunc
--- 110,123 ----
endif
endfunc
! " Read "fname" from the server.
function! spellfile#Nread(fname)
! if g:spellfile_URL =~ '^ftp://'
! " for an ftp server use a default login and password to avoid a prompt
! let machine = substitute(g:spellfile_URL, 'ftp://\([^/]*\).*', '\1', '')
! let dir = substitute(g:spellfile_URL, 'ftp://[^/]*/\(.*\)', '\1', '')
! exe 'Nread "' . machine . ' anonymous vim7user ' . dir . '/' . a:fname . '"'
! else
! exe 'Nread ' g:spellfile_URL . '/' . a:fname
! endif
endfunc
*** ../vim-7.0.075/src/version.c Tue Aug 29 21:59:25 2006
--- src/version.c Tue Aug 29 22:31:45 2006
***************
*** 668,669 ****
--- 668,671 ----
{ /* Add new patch number below this line */
+ /**/
+ 76,
/**/
--
This sentence is not sure that it exists, but if it does, it will
certainly consider the possibility that other sentences exist.
/// Bram Moolenaar -- Bram@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 ///

98
7.0.077
View File

@ -1,98 +0,0 @@
To: vim-dev@vim.org
Subject: Patch 7.0.077
Fcc: outbox
From: Bram Moolenaar <Bram@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@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 ///

52
7.0.078
View File

@ -1,52 +0,0 @@
To: vim-dev@vim.org
Subject: Patch 7.0.078
Fcc: outbox
From: Bram Moolenaar <Bram@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@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 ///

View File

@ -1,72 +0,0 @@
To: vim-dev@vim.org
Subject: Patch 7.0.079
Fcc: outbox
From: Bram Moolenaar <Bram@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/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@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 ///

57
7.0.080
View File

@ -1,57 +0,0 @@
To: vim-dev@vim.org
Subject: Patch 7.0.080
Fcc: outbox
From: Bram Moolenaar <Bram@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
-@echo creating $@
-@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
-@echo creating $@
-@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@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 ///

67
7.0.081
View File

@ -1,67 +0,0 @@
To: vim-dev@vim.org
Subject: Patch 7.0.081
Fcc: outbox
From: Bram Moolenaar <Bram@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@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 ///

103
7.0.082
View File

@ -1,103 +0,0 @@
To: vim-dev@vim.org
Subject: Patch 7.0.082
Fcc: outbox
From: Bram Moolenaar <Bram@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@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 ///

91
7.0.083
View File

@ -1,91 +0,0 @@
To: vim-dev@vim.org
Subject: Patch 7.0.083
Fcc: outbox
From: Bram Moolenaar <Bram@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@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 ///

221
7.0.084
View File

@ -1,221 +0,0 @@
To: vim-dev@vim.org
Subject: Patch 7.0.084
Fcc: outbox
From: Bram Moolenaar <Bram@moolenaar.net>
Mime-Version: 1.0
Content-Type: text/plain; charset=ISO-8859-1
Content-Transfer-Encoding: 8bit
------------
Patch 7.0.084
Problem: The garbage collector may do its work while some Lists or
Dictionaries are used internally, e.g., by ":echo" that runs into
the more-prompt or ":echo [garbagecollect()]".
Solution: Only do garbage collection when waiting for a character at the
toplevel. Let garbagecollect() set a flag that is handled at the
toplevel before waiting for a character.
Files: src/eval.c, src/getchar.c, src/globals.h, src/main.c
*** ../vim-7.0.083/src/eval.c Sun Sep 3 15:38:02 2006
--- src/eval.c Tue Sep 5 11:49:38 2006
***************
*** 6074,6079 ****
--- 6074,6083 ----
tabpage_T *tp;
#endif
+ /* Only do this once. */
+ want_garbage_collect = FALSE;
+ may_garbage_collect = FALSE;
+
/*
* 1. Go through all accessible variables and mark all lists and dicts
* with copyID.
***************
*** 9636,9642 ****
typval_T *argvars;
typval_T *rettv;
{
! garbage_collect();
}
/*
--- 9640,9648 ----
typval_T *argvars;
typval_T *rettv;
{
! /* This is postponed until we are back at the toplevel, because we may be
! * using Lists and Dicts internally. E.g.: ":echo [garbagecollect()]". */
! want_garbage_collect = TRUE;
}
/*
*** ../vim-7.0.083/src/getchar.c Wed May 3 23:19:24 2006
--- src/getchar.c Tue Sep 5 12:55:54 2006
***************
*** 1451,1457 ****
{
updatescript(0);
#ifdef FEAT_EVAL
! garbage_collect();
#endif
}
--- 1451,1458 ----
{
updatescript(0);
#ifdef FEAT_EVAL
! if (may_garbage_collect)
! garbage_collect();
#endif
}
***************
*** 1502,1507 ****
--- 1503,1515 ----
int i;
#endif
+ #ifdef FEAT_EVAL
+ /* Do garbage collection when garbagecollect() was called previously and
+ * we are now at the toplevel. */
+ if (may_garbage_collect && want_garbage_collect)
+ garbage_collect();
+ #endif
+
/*
* If a character was put back with vungetc, it was already processed.
* Return it directly.
***************
*** 1511,1523 ****
c = old_char;
old_char = -1;
mod_mask = old_mod_mask;
- return c;
}
!
! mod_mask = 0x0;
! last_recorded_len = 0;
! for (;;) /* this is done twice if there are modifiers */
{
if (mod_mask) /* no mapping after modifier has been read */
{
++no_mapping;
--- 1519,1531 ----
c = old_char;
old_char = -1;
mod_mask = old_mod_mask;
}
! else
{
+ mod_mask = 0x0;
+ last_recorded_len = 0;
+ for (;;) /* this is done twice if there are modifiers */
+ {
if (mod_mask) /* no mapping after modifier has been read */
{
++no_mapping;
***************
*** 1695,1702 ****
}
#endif
! return c;
}
}
/*
--- 1703,1722 ----
}
#endif
! break;
! }
}
+
+ #ifdef FEAT_EVAL
+ /*
+ * In the main loop "may_garbage_collect" can be set to do garbage
+ * collection in the first next vgetc(). It's disabled after that to
+ * avoid internally used Lists and Dicts to be freed.
+ */
+ may_garbage_collect = FALSE;
+ #endif
+
+ return c;
}
/*
*** ../vim-7.0.083/src/globals.h Sat Sep 2 14:52:41 2006
--- src/globals.h Tue Sep 5 11:46:10 2006
***************
*** 300,308 ****
#endif
#ifdef FEAT_EVAL
! EXTERN scid_T current_SID INIT(= 0); /* ID of script being sourced or
! was sourced to define the
! current function. */
#endif
#if defined(FEAT_EVAL) || defined(FEAT_SYN_HL)
--- 300,315 ----
#endif
#ifdef FEAT_EVAL
! /* Garbage collection can only take place when we are sure there are no Lists
! * or Dictionaries being used internally. This is flagged with
! * "may_garbage_collect" when we are at the toplevel.
! * "want_garbage_collect" is set by the garbagecollect() function, which means
! * we do garbage collection before waiting for a char at the toplevel. */
! EXTERN int may_garbage_collect INIT(= FALSE);
! EXTERN int want_garbage_collect INIT(= FALSE);
!
! /* ID of script being sourced or was sourced to define the current function. */
! EXTERN scid_T current_SID INIT(= 0);
#endif
#if defined(FEAT_EVAL) || defined(FEAT_SYN_HL)
*** ../vim-7.0.083/src/main.c Tue Aug 29 17:28:56 2006
--- src/main.c Tue Sep 5 12:33:47 2006
***************
*** 1130,1135 ****
--- 1130,1145 ----
*/
update_curswant();
+ #ifdef FEAT_EVAL
+ /*
+ * May perform garbage collection when waiting for a character, but
+ * only at the very toplevel. Otherwise we may be using a List or
+ * Dict internally somewhere.
+ * "may_garbage_collect" is reset in vgetc() which is invoked through
+ * do_exmode() and normal_cmd().
+ */
+ may_garbage_collect = (!cmdwin && !noexmode);
+ #endif
/*
* If we're invoked as ex, do a round of ex commands.
* Otherwise, get and execute a normal mode command.
*** ../vim-7.0.083/src/version.c Sun Sep 3 16:39:51 2006
--- src/version.c Tue Sep 5 12:51:28 2006
***************
*** 668,669 ****
--- 668,671 ----
{ /* Add new patch number below this line */
+ /**/
+ 84,
/**/
--
LAUNCELOT: At last! A call! A cry of distress ...
(he draws his sword, and turns to CONCORDE)
Concorde! Brave, Concorde ... you shall not have died in vain!
CONCORDE: I'm not quite dead, sir ...
"Monty Python and the Holy Grail" PYTHON (MONTY) PICTURES LTD
/// Bram Moolenaar -- Bram@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 ///

53
7.0.085
View File

@ -1,53 +0,0 @@
To: vim-dev@vim.org
Subject: Patch 7.0.085
Fcc: outbox
From: Bram Moolenaar <Bram@moolenaar.net>
Mime-Version: 1.0
Content-Type: text/plain; charset=ISO-8859-1
Content-Transfer-Encoding: 8bit
------------
Patch 7.0.085
Problem: When doing "make test" the viminfo file is modified.
Solution: Use another viminfo file after setting 'compatible.
Files: src/testdir/test56.in
*** ../vim-7.0.084/src/testdir/test56.in Thu May 19 00:21:20 2005
--- src/testdir/test56.in Sun Sep 3 16:28:41 2006
***************
*** 3,9 ****
STARTTEST
:so small.vim
:"
! :set nocp
:/^start:/+1,/^end:/-1w! Xtest.vim
:source Xtest.vim
_x
--- 3,9 ----
STARTTEST
:so small.vim
:"
! :set nocp viminfo+=nviminfo
:/^start:/+1,/^end:/-1w! Xtest.vim
:source Xtest.vim
_x
*** ../vim-7.0.084/src/version.c Tue Sep 5 12:57:14 2006
--- src/version.c Tue Sep 5 13:33:22 2006
***************
*** 668,669 ****
--- 668,671 ----
{ /* Add new patch number below this line */
+ /**/
+ 85,
/**/
--
Apologies for taking up the bandwidth with the apology. Anything else I
can apologise for ...... er no can't think of anything, sorry about that.
Andy Hunt (Member of British Olympic Apology Squad)
/// Bram Moolenaar -- Bram@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 ///

57
7.0.086
View File

@ -1,57 +0,0 @@
To: vim-dev@vim.org
Subject: Patch 7.0.086
Fcc: outbox
From: Bram Moolenaar <Bram@moolenaar.net>
Mime-Version: 1.0
Content-Type: text/plain; charset=ISO-8859-1
Content-Transfer-Encoding: 8bit
------------
Patch 7.0.086
Problem: getqflist() returns entries for pattern and text with the number
zero. Passing these to setqflist() results in the string "0".
Solution: Use an empty string instead of the number zero.
Files: src/quickfix.c
*** ../vim-7.0.085/src/quickfix.c Tue Aug 29 17:28:56 2006
--- src/quickfix.c Mon Sep 4 20:18:48 2006
***************
*** 3426,3433 ****
|| dict_add_nr_str(dict, "col", (long)qfp->qf_col, NULL) == FAIL
|| dict_add_nr_str(dict, "vcol", (long)qfp->qf_viscol, NULL) == FAIL
|| dict_add_nr_str(dict, "nr", (long)qfp->qf_nr, NULL) == FAIL
! || dict_add_nr_str(dict, "pattern", 0L, qfp->qf_pattern) == FAIL
! || dict_add_nr_str(dict, "text", 0L, qfp->qf_text) == FAIL
|| dict_add_nr_str(dict, "type", 0L, buf) == FAIL
|| dict_add_nr_str(dict, "valid", (long)qfp->qf_valid, NULL) == FAIL)
return FAIL;
--- 3426,3435 ----
|| dict_add_nr_str(dict, "col", (long)qfp->qf_col, NULL) == FAIL
|| dict_add_nr_str(dict, "vcol", (long)qfp->qf_viscol, NULL) == FAIL
|| dict_add_nr_str(dict, "nr", (long)qfp->qf_nr, NULL) == FAIL
! || dict_add_nr_str(dict, "pattern", 0L,
! qfp->qf_pattern == NULL ? (char_u *)"" : qfp->qf_pattern) == FAIL
! || dict_add_nr_str(dict, "text", 0L,
! qfp->qf_text == NULL ? (char_u *)"" : qfp->qf_text) == FAIL
|| dict_add_nr_str(dict, "type", 0L, buf) == FAIL
|| dict_add_nr_str(dict, "valid", (long)qfp->qf_valid, NULL) == FAIL)
return FAIL;
*** ../vim-7.0.085/src/version.c Tue Sep 5 13:34:30 2006
--- src/version.c Tue Sep 5 15:35:40 2006
***************
*** 668,669 ****
--- 668,671 ----
{ /* Add new patch number below this line */
+ /**/
+ 86,
/**/
--
A vacation is a period of travel during which you find that you
took twice as many clothes and half as much money as you needed.
/// Bram Moolenaar -- Bram@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 ///

262
7.0.087
View File

@ -1,262 +0,0 @@
To: vim-dev@vim.org
Subject: Patch 7.0.087
Fcc: outbox
From: Bram Moolenaar <Bram@moolenaar.net>
Mime-Version: 1.0
Content-Type: text/plain; charset=ISO-8859-1
Content-Transfer-Encoding: 8bit
------------
Patch 7.0.087
Problem: After ":file fname" and ":saveas fname" the 'autochdir' option
does not take effect. (Yakov Lerner)
Commands for handling 'autochdir' are repeated many times.
Solution: Add the DO_AUTOCHDIR macro and do_autochdir(). Use it for
":file fname" and ":saveas fname".
Files: src/proto/buffer.pro, src/buffer.c, src/ex_cmds.c, src/macros.h,
src/option.c, src/window.c
*** ../vim-7.0.086/src/proto/buffer.pro Sun Apr 30 20:25:32 2006
--- src/proto/buffer.pro Tue Sep 5 16:25:40 2006
***************
*** 10,15 ****
--- 10,16 ----
extern int do_buffer __ARGS((int action, int start, int dir, int count, int forceit));
extern void set_curbuf __ARGS((buf_T *buf, int action));
extern void enter_buffer __ARGS((buf_T *buf));
+ extern void do_autochdir __ARGS((void));
extern buf_T *buflist_new __ARGS((char_u *ffname, char_u *sfname, linenr_T lnum, int flags));
extern void free_buf_options __ARGS((buf_T *buf, int free_p_ff));
extern int buflist_getfile __ARGS((int n, linenr_T lnum, int options, int forceit));
*** ../vim-7.0.086/src/buffer.c Tue Aug 29 16:52:01 2006
--- src/buffer.c Tue Sep 5 15:18:19 2006
***************
*** 434,445 ****
if (usingNetbeans)
netbeans_file_closed(buf);
#endif
! #ifdef FEAT_AUTOCHDIR
! /* Change directories when the acd option is set on. */
! if (p_acd && curbuf->b_ffname != NULL
! && vim_chdirfile(curbuf->b_ffname) == OK)
! shorten_fnames(TRUE);
! #endif
/*
* Remove the buffer from the list.
--- 434,441 ----
if (usingNetbeans)
netbeans_file_closed(buf);
#endif
! /* Change directories when the 'acd' option is set. */
! DO_AUTOCHDIR
/*
* Remove the buffer from the list.
***************
*** 1422,1433 ****
netbeans_file_activated(curbuf);
#endif
! #ifdef FEAT_AUTOCHDIR
! /* Change directories when the acd option is set on. */
! if (p_acd && curbuf->b_ffname != NULL
! && vim_chdirfile(curbuf->b_ffname) == OK)
! shorten_fnames(TRUE);
! #endif
#ifdef FEAT_KEYMAP
if (curbuf->b_kmap_state & KEYMAP_INIT)
--- 1418,1425 ----
netbeans_file_activated(curbuf);
#endif
! /* Change directories when the 'acd' option is set. */
! DO_AUTOCHDIR
#ifdef FEAT_KEYMAP
if (curbuf->b_kmap_state & KEYMAP_INIT)
***************
*** 1435,1440 ****
--- 1427,1444 ----
#endif
redraw_later(NOT_VALID);
}
+
+ #if defined(FEAT_AUTOCHDIR) || defined(PROTO)
+ /*
+ * Change to the directory of the current buffer.
+ */
+ void
+ do_autochdir()
+ {
+ if (curbuf->b_ffname != NULL && vim_chdirfile(curbuf->b_ffname) == OK)
+ shorten_fnames(TRUE);
+ }
+ #endif
/*
* functions for dealing with the buffer list
*** ../vim-7.0.086/src/ex_cmds.c Tue Aug 29 17:28:56 2006
--- src/ex_cmds.c Tue Sep 5 15:24:58 2006
***************
*** 2458,2463 ****
--- 2458,2465 ----
#ifdef FEAT_AUTOCMD
apply_autocmds(EVENT_BUFFILEPOST, NULL, NULL, FALSE, curbuf);
#endif
+ /* Change directories when the 'acd' option is set. */
+ DO_AUTOCHDIR
}
/* print full file name if :cd used */
fileinfo(FALSE, FALSE, eap->forceit);
***************
*** 2675,2682 ****
eap, eap->append, eap->forceit, TRUE, FALSE);
/* After ":saveas fname" reset 'readonly'. */
! if (eap->cmdidx == CMD_saveas && retval == OK)
! curbuf->b_p_ro = FALSE;
}
theend:
--- 2677,2689 ----
eap, eap->append, eap->forceit, TRUE, FALSE);
/* After ":saveas fname" reset 'readonly'. */
! if (eap->cmdidx == CMD_saveas)
! {
! if (retval == OK)
! curbuf->b_p_ro = FALSE;
! /* Change directories when the 'acd' option is set. */
! DO_AUTOCHDIR
! }
}
theend:
***************
*** 3547,3557 ****
foldUpdateAll(curwin);
#endif
! #ifdef FEAT_AUTOCHDIR
! if (p_acd && curbuf->b_ffname != NULL
! && vim_chdirfile(curbuf->b_ffname) == OK)
! shorten_fnames(TRUE);
! #endif
/*
* Careful: open_buffer() and apply_autocmds() may change the current
* buffer and window.
--- 3554,3562 ----
foldUpdateAll(curwin);
#endif
! /* Change directories when the 'acd' option is set. */
! DO_AUTOCHDIR
!
/*
* Careful: open_buffer() and apply_autocmds() may change the current
* buffer and window.
***************
*** 3718,3729 ****
if (p_im)
need_start_insertmode = TRUE;
! #ifdef FEAT_AUTOCHDIR
! /* Change directories when the acd option is set on. */
! if (p_acd && curbuf->b_ffname != NULL
! && vim_chdirfile(curbuf->b_ffname) == OK)
! shorten_fnames(TRUE);
! #endif
#if defined(FEAT_SUN_WORKSHOP) || defined(FEAT_NETBEANS_INTG)
if (gui.in_use && curbuf->b_ffname != NULL)
--- 3723,3730 ----
if (p_im)
need_start_insertmode = TRUE;
! /* Change directories when the 'acd' option is set. */
! DO_AUTOCHDIR
#if defined(FEAT_SUN_WORKSHOP) || defined(FEAT_NETBEANS_INTG)
if (gui.in_use && curbuf->b_ffname != NULL)
*** ../vim-7.0.086/src/macros.h Wed Mar 1 23:00:25 2006
--- src/macros.h Tue Sep 5 15:15:30 2006
***************
*** 276,278 ****
--- 276,284 ----
# define MB_CHARLEN(p) STRLEN(p)
# define PTR2CHAR(p) ((int)*(p))
#endif
+
+ #ifdef FEAT_AUTOCHDIR
+ # define DO_AUTOCHDIR if (p_acd) do_autochdir();
+ #else
+ # define DO_AUTOCHDIR
+ #endif
*** ../vim-7.0.086/src/option.c Tue Aug 29 17:28:56 2006
--- src/option.c Tue Sep 5 15:20:04 2006
***************
*** 7326,7334 ****
#ifdef FEAT_AUTOCHDIR
else if ((int *)varp == &p_acd)
{
! if (p_acd && curbuf->b_ffname != NULL
! && vim_chdirfile(curbuf->b_ffname) == OK)
! shorten_fnames(TRUE);
}
#endif
--- 7326,7333 ----
#ifdef FEAT_AUTOCHDIR
else if ((int *)varp == &p_acd)
{
! /* Change directories when the 'acd' option is set now. */
! DO_AUTOCHDIR
}
#endif
*** ../vim-7.0.086/src/window.c Tue Aug 29 17:28:56 2006
--- src/window.c Tue Sep 5 15:20:35 2006
***************
*** 3954,3966 ****
setmouse(); /* in case jumped to/from help buffer */
#endif
! #ifdef FEAT_AUTOCHDIR
! /* Change directories when the 'acd' option is set on and after
! * switching windows. */
! if (p_acd && curbuf->b_ffname != NULL
! && vim_chdirfile(curbuf->b_ffname) == OK)
! shorten_fnames(TRUE);
! #endif
}
#endif /* FEAT_WINDOWS */
--- 3954,3961 ----
setmouse(); /* in case jumped to/from help buffer */
#endif
! /* Change directories when the 'acd' option is set. */
! DO_AUTOCHDIR
}
#endif /* FEAT_WINDOWS */
*** ../vim-7.0.086/src/version.c Tue Sep 5 15:36:30 2006
--- src/version.c Tue Sep 5 15:52:45 2006
***************
*** 668,669 ****
--- 668,671 ----
{ /* Add new patch number below this line */
+ /**/
+ 87,
/**/
--
Overflow on /dev/null, please empty the bit bucket.
/// Bram Moolenaar -- Bram@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 ///

84
7.0.088
View File

@ -1,84 +0,0 @@
To: vim-dev@vim.org
Subject: Patch 7.0.088
Fcc: outbox
From: Bram Moolenaar <Bram@moolenaar.net>
Mime-Version: 1.0
Content-Type: text/plain; charset=ISO-8859-1
Content-Transfer-Encoding: 8bit
------------
Patch 7.0.088
Problem: When compiled with Perl the generated prototypes have "extern"
unnecessarily added.
Solution: Remove the "-pipe" argument from PERL_CFLAGS.
Files: src/auto/configure, src/configure.in
*** ../vim-7.0.087/src/auto/configure Thu May 4 23:52:03 2006
--- src/auto/configure Tue Sep 5 17:09:55 2006
***************
*** 4014,4020 ****
LDFLAGS=$ldflags_save
if test $perl_ok = yes; then
if test "X$perlcppflags" != "X"; then
! PERL_CFLAGS="$perlcppflags"
fi
if test "X$perlldflags" != "X"; then
LDFLAGS="$perlldflags $LDFLAGS"
--- 4014,4020 ----
LDFLAGS=$ldflags_save
if test $perl_ok = yes; then
if test "X$perlcppflags" != "X"; then
! PERL_CFLAGS=`echo "$perlcppflags" | sed 's/-pipe //'`
fi
if test "X$perlldflags" != "X"; then
LDFLAGS="$perlldflags $LDFLAGS"
*** ../vim-7.0.087/src/configure.in Thu May 4 23:52:32 2006
--- src/configure.in Tue Sep 5 17:09:50 2006
***************
*** 508,514 ****
LDFLAGS=$ldflags_save
if test $perl_ok = yes; then
if test "X$perlcppflags" != "X"; then
! PERL_CFLAGS="$perlcppflags"
fi
if test "X$perlldflags" != "X"; then
LDFLAGS="$perlldflags $LDFLAGS"
--- 508,515 ----
LDFLAGS=$ldflags_save
if test $perl_ok = yes; then
if test "X$perlcppflags" != "X"; then
! dnl remove -pipe, it confuses cproto
! PERL_CFLAGS=`echo "$perlcppflags" | sed 's/-pipe //'`
fi
if test "X$perlldflags" != "X"; then
LDFLAGS="$perlldflags $LDFLAGS"
*** ../vim-7.0.087/src/version.c Tue Sep 5 16:29:38 2006
--- src/version.c Tue Sep 5 17:27:33 2006
***************
*** 668,669 ****
--- 668,671 ----
{ /* Add new patch number below this line */
+ /**/
+ 88,
/**/
--
** Hello and Welcome to the Psychiatric Hotline **
If you are obsessive-compulsive, please press 1 repeatedly.
If you are co-dependent, please ask someone to press 2.
If you have multiple personalities, please press 3, 4, 5 and 6.
If you are paranoid-delusional, we know who you are and what you want
- just stay on the line so we can trace the call.
If you are schizophrenic, listen carefully and a little voice will
tell you which number to press next.
If you are manic-depressive, it doesn't matter which number you press
- no one will answer.
If you suffer from panic attacks, push every button you can find.
If you are sane, please hold on - we have the rest of humanity on the
other line and they desparately want to ask you a few questions.
/// Bram Moolenaar -- Bram@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 ///

97
7.0.089
View File

@ -1,97 +0,0 @@
To: vim-dev@vim.org
Subject: Patch 7.0.089
Fcc: outbox
From: Bram Moolenaar <Bram@moolenaar.net>
Mime-Version: 1.0
Content-Type: text/plain; charset=ISO-8859-1
Content-Transfer-Encoding: 8bit
------------
Patch 7.0.089
Problem: "ga" does not work properly for a non-Unicode multi-byte encoding.
Solution: Only check for composing chars for utf-8. (Taro Muraoka)
Files: src/ex_cmds.c
*** ../vim-7.0.088/src/ex_cmds.c Tue Sep 5 16:29:38 2006
--- src/ex_cmds.c Tue Sep 5 18:12:41 2006
***************
*** 95,101 ****
_("<%s>%s%s %d, Hex %02x, Octal %03o"),
transchar(c), buf1, buf2, c, c, c);
#ifdef FEAT_MBYTE
! c = cc[ci++];
#endif
}
--- 95,104 ----
_("<%s>%s%s %d, Hex %02x, Octal %03o"),
transchar(c), buf1, buf2, c, c, c);
#ifdef FEAT_MBYTE
! if (enc_utf8)
! c = cc[ci++];
! else
! c = 0;
#endif
}
***************
*** 108,114 ****
if (len > 0)
IObuff[len++] = ' ';
IObuff[len++] = '<';
! if (utf_iscomposing(c)
# ifdef USE_GUI
&& !gui.in_use
# endif
--- 111,117 ----
if (len > 0)
IObuff[len++] = ' ';
IObuff[len++] = '<';
! if (enc_utf8 && utf_iscomposing(c)
# ifdef USE_GUI
&& !gui.in_use
# endif
***************
*** 120,126 ****
: _("> %d, Hex %08x, Octal %o"), c, c, c);
if (ci == MAX_MCO)
break;
! c = cc[ci++];
}
#endif
--- 123,132 ----
: _("> %d, Hex %08x, Octal %o"), c, c, c);
if (ci == MAX_MCO)
break;
! if (enc_utf8)
! c = cc[ci++];
! else
! c = 0;
}
#endif
*** ../vim-7.0.088/src/version.c Tue Sep 5 17:30:25 2006
--- src/version.c Tue Sep 5 18:19:42 2006
***************
*** 668,669 ****
--- 668,671 ----
{ /* Add new patch number below this line */
+ /**/
+ 89,
/**/
--
[clop clop]
GUARD #1: Halt! Who goes there?
ARTHUR: It is I, Arthur, son of Uther Pendragon, from the castle of
Camelot. King of the Britons, defeator of the Saxons, sovereign of
all England!
GUARD #1: Pull the other one!
The Quest for the Holy Grail (Monty Python)
/// Bram Moolenaar -- Bram@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 ///

81
7.0.090
View File

@ -1,81 +0,0 @@
To: vim-dev@vim.org
Subject: Patch 7.0.090
Fcc: outbox
From: Bram Moolenaar <Bram@moolenaar.net>
Mime-Version: 1.0
Content-Type: text/plain; charset=ISO-8859-1
Content-Transfer-Encoding: 8bit
------------
Patch 7.0.090
Problem: Cancelling the conform() dialog on the console with Esc requires
typing it twice. (Benji Fisher)
Solution: When the start of an escape sequence is found use 'timeoutlen' or
'ttimeoutlen'.
Files: src/misc1.c
*** ../vim-7.0.089/src/misc1.c Sun Sep 3 16:39:51 2006
--- src/misc1.c Tue Sep 5 20:31:43 2006
***************
*** 3016,3021 ****
--- 3016,3022 ----
int len = 0;
int n;
int save_mapped_ctrl_c = mapped_ctrl_c;
+ int waited = 0;
mapped_ctrl_c = FALSE; /* mappings are not used here */
for (;;)
***************
*** 3034,3044 ****
/* Replace zero and CSI by a special key code. */
n = fix_input_buffer(buf + len, n, FALSE);
len += n;
}
! /* incomplete termcode: get more characters */
! if ((n = check_termcode(1, buf, len)) < 0)
continue;
/* found a termcode: adjust length */
if (n > 0)
len = n;
--- 3035,3050 ----
/* Replace zero and CSI by a special key code. */
n = fix_input_buffer(buf + len, n, FALSE);
len += n;
+ waited = 0;
}
+ else if (len > 0)
+ ++waited; /* keep track of the waiting time */
! /* Incomplete termcode and not timed out yet: get more characters */
! if ((n = check_termcode(1, buf, len)) < 0
! && (!p_ttimeout || waited * 100L < (p_ttm < 0 ? p_tm : p_ttm)))
continue;
+
/* found a termcode: adjust length */
if (n > 0)
len = n;
*** ../vim-7.0.089/src/version.c Tue Sep 5 18:28:45 2006
--- src/version.c Tue Sep 5 20:49:01 2006
***************
*** 668,669 ****
--- 668,671 ----
{ /* Add new patch number below this line */
+ /**/
+ 90,
/**/
--
GUARD #1: Where'd you get the coconut?
ARTHUR: We found them.
GUARD #1: Found them? In Mercea? The coconut's tropical!
ARTHUR: What do you mean?
GUARD #1: Well, this is a temperate zone.
The Quest for the Holy Grail (Monty Python)
/// Bram Moolenaar -- Bram@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 ///

52
7.0.091
View File

@ -1,52 +0,0 @@
To: vim-dev@vim.org
Subject: Patch 7.0.091
Fcc: outbox
From: Bram Moolenaar <Bram@moolenaar.net>
Mime-Version: 1.0
Content-Type: text/plain; charset=ISO-8859-1
Content-Transfer-Encoding: 8bit
------------
Patch 7.0.091
Problem: Using winrestview() while 'showcmd' is set causes the cursor to be
displayed in the wrong position. (Yakov Lerner)
Solution: Set the window topline properly.
Files: src/eval.c
*** ../vim-7.0.090/src/eval.c Tue Sep 5 12:57:14 2006
--- src/eval.c Tue Sep 5 21:21:37 2006
***************
*** 16225,16231 ****
curwin->w_curswant = get_dict_number(dict, (char_u *)"curswant");
curwin->w_set_curswant = FALSE;
! curwin->w_topline = get_dict_number(dict, (char_u *)"topline");
#ifdef FEAT_DIFF
curwin->w_topfill = get_dict_number(dict, (char_u *)"topfill");
#endif
--- 16225,16231 ----
curwin->w_curswant = get_dict_number(dict, (char_u *)"curswant");
curwin->w_set_curswant = FALSE;
! set_topline(curwin, get_dict_number(dict, (char_u *)"topline"));
#ifdef FEAT_DIFF
curwin->w_topfill = get_dict_number(dict, (char_u *)"topfill");
#endif
*** ../vim-7.0.090/src/version.c Tue Sep 5 20:56:11 2006
--- src/version.c Wed Sep 6 22:12:31 2006
***************
*** 668,669 ****
--- 668,671 ----
{ /* Add new patch number below this line */
+ /**/
+ 91,
/**/
--
Shit makes the flowers grow and that's beautiful
/// Bram Moolenaar -- Bram@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 ///

104
7.0.092
View File

@ -1,104 +0,0 @@
To: vim-dev@vim.org
Subject: Patch 7.0.092
Fcc: outbox
From: Bram Moolenaar <Bram@moolenaar.net>
Mime-Version: 1.0
Content-Type: text/plain; charset=ISO-8859-1
Content-Transfer-Encoding: 8bit
------------
Patch 7.0.092 (after 7.0.082 and 7.0.084)
Problem: The list of internal function arguments is obsolete now that
garbage collection is only done at the toplevel.
Solution: Remove the list of all arguments to internal functions.
Files: src/eval.c
*** ../vim-7.0.091/src/eval.c Wed Sep 6 22:14:42 2006
--- src/eval.c Sat Sep 9 12:00:28 2006
***************
*** 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
--- 248,253 ----
***************
*** 6069,6075 ****
int i;
funccall_T *fc;
int did_free = FALSE;
- av_list_item_T *av;
#ifdef FEAT_WINDOWS
tabpage_T *tp;
#endif
--- 6058,6063 ----
***************
*** 6110,6120 ****
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.
*/
--- 6098,6103 ----
***************
*** 7558,7578 ****
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;
}
}
}
--- 7541,7549 ----
*** ../vim-7.0.091/src/version.c Wed Sep 6 22:14:42 2006
--- src/version.c Sat Sep 9 12:04:55 2006
***************
*** 668,669 ****
--- 668,671 ----
{ /* Add new patch number below this line */
+ /**/
+ 92,
/**/
--
"Hegel was right when he said that we learn from history that man can
never learn anything from history." (George Bernard Shaw)
/// Bram Moolenaar -- Bram@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 ///

74
7.0.093
View File

@ -1,74 +0,0 @@
To: vim-dev@vim.org
Subject: Patch 7.0.093
Fcc: outbox
From: Bram Moolenaar <Bram@moolenaar.net>
Mime-Version: 1.0
Content-Type: text/plain; charset=ISO-8859-1
Content-Transfer-Encoding: 8bit
------------
Patch 7.0.093
Problem: The matchparen plugin can't handle a 'matchpairs' value where a
colon is matched.
Solution: Change the split() that is used to change 'matchpairs' into a
List.
Files: runtime/plugin/matchparen.vim
*** ../vim-7.0.092/runtime/plugin/matchparen.vim Wed Sep 6 22:13:48 2006
--- runtime/plugin/matchparen.vim Sat Sep 9 13:35:54 2006
***************
*** 1,6 ****
" Vim plugin for showing matching parens
" Maintainer: Bram Moolenaar <Bram@vim.org>
! " Last Change: 2006 Jun 26
" Exit quickly when:
" - this plugin was already loaded (or disabled)
--- 1,6 ----
" Vim plugin for showing matching parens
" Maintainer: Bram Moolenaar <Bram@vim.org>
! " Last Change: 2006 Sep 09
" Exit quickly when:
" - this plugin was already loaded (or disabled)
***************
*** 44,50 ****
let before = 0
let c = getline(c_lnum)[c_col - 1]
! let plist = split(&matchpairs, ':\|,')
let i = index(plist, c)
if i < 0
" not found, in Insert mode try character before the cursor
--- 44,50 ----
let before = 0
let c = getline(c_lnum)[c_col - 1]
! let plist = split(&matchpairs, '.\zs[:,]')
let i = index(plist, c)
if i < 0
" not found, in Insert mode try character before the cursor
*** ../vim-7.0.092/src/version.c Sat Sep 9 12:05:39 2006
--- src/version.c Sat Sep 9 13:29:58 2006
***************
*** 668,669 ****
--- 668,671 ----
{ /* Add new patch number below this line */
+ /**/
+ 93,
/**/
--
BLACK KNIGHT: I move for no man.
ARTHUR: So be it!
[hah] [parry thrust]
[ARTHUR chops the BLACK KNIGHT's left arm off]
ARTHUR: Now stand aside, worthy adversary.
BLACK KNIGHT: 'Tis but a scratch.
The Quest for the Holy Grail (Monty Python)
/// Bram Moolenaar -- Bram@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 ///

73
7.0.094
View File

@ -1,73 +0,0 @@
To: vim-dev@vim.org
Subject: Patch 7.0.094
Fcc: outbox
From: Bram Moolenaar <Bram@moolenaar.net>
Mime-Version: 1.0
Content-Type: text/plain; charset=ISO-8859-1
Content-Transfer-Encoding: 8bit
------------
Patch 7.0.094
Problem: When a hidden buffer is made the current buffer and another file
edited later, the file message will still be given. Using
":silent" also doesn't prevent the file message. (Marvin Renich)
Solution: Reset the need_fileinfo flag when reading a file. Don't set
need_fileinfo when msg_silent is set.
Files: src/buffer.c, src/fileio.c
*** ../vim-7.0.093/src/buffer.c Tue Sep 5 16:29:38 2006
--- src/buffer.c Thu Sep 7 21:43:41 2006
***************
*** 1386,1392 ****
}
else
{
! need_fileinfo = TRUE; /* display file info after redraw */
(void)buf_check_timestamp(curbuf, FALSE); /* check if file changed */
#ifdef FEAT_AUTOCMD
curwin->w_topline = 1;
--- 1386,1393 ----
}
else
{
! if (!msg_silent)
! need_fileinfo = TRUE; /* display file info after redraw */
(void)buf_check_timestamp(curbuf, FALSE); /* check if file changed */
#ifdef FEAT_AUTOCMD
curwin->w_topline = 1;
*** ../vim-7.0.093/src/fileio.c Tue Aug 29 18:16:37 2006
--- src/fileio.c Wed Sep 6 22:54:19 2006
***************
*** 316,321 ****
--- 316,324 ----
* display the line. */
ex_no_reprint = TRUE;
+ /* don't display the file info for another buffer now */
+ need_fileinfo = FALSE;
+
/*
* For Unix: Use the short file name whenever possible.
* Avoids problems with networks and when directory names are changed.
*** ../vim-7.0.093/src/version.c Sat Sep 9 13:36:51 2006
--- src/version.c Sat Sep 9 14:19:04 2006
***************
*** 668,669 ****
--- 668,671 ----
{ /* Add new patch number below this line */
+ /**/
+ 94,
/**/
--
ARTHUR: A scratch? Your arm's off!
BLACK KNIGHT: No, it isn't.
ARTHUR: Well, what's that then?
BLACK KNIGHT: I've had worse.
The Quest for the Holy Grail (Monty Python)
/// Bram Moolenaar -- Bram@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 ///

View File

@ -1,70 +0,0 @@
To: vim-dev@vim.org
Subject: Patch 7.0.095
Fcc: outbox
From: Bram Moolenaar <Bram@moolenaar.net>
Mime-Version: 1.0
Content-Type: text/plain; charset=ISO-8859-1
Content-Transfer-Encoding: 8bit
------------
Patch 7.0.095
Problem: The Greek tutor is not available in utf-8. "el" is used for the
language, only "gr" for the country is recognized.
Solution: Add the utf-8 Greek tutor. Use it for conversion to iso-8859-7
and cp737. (Lefteris Dimitroulakis)
Files: runtime/tutor/Makefile, runtime/tutor/tutor.gr.utf-8,
runtime/tutor/tutor.vim
*** ../vim-7.0.094/runtime/tutor/Makefile Sat Sep 2 14:54:17 2006
--- runtime/tutor/Makefile Sun Sep 10 11:56:54 2006
***************
*** 7,13 ****
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
--- 7,14 ----
all: tutor.ja.sjis tutor.ja.euc \
tutor.ko.euc \
! tutor.ru tutor.ru.cp1251 \
! tutor.gr tutor.gr.cp737
tutor.ja.sjis: tutor.ja.utf-8
nkf -WXs tutor.ja.utf-8 > tutor.ja.sjis
***************
*** 23,25 ****
--- 24,32 ----
tutor.ru.cp1251: tutor.ru.utf-8
iconv -f UTF-8 -t cp1251 tutor.ru.utf-8 > tutor.ru.cp1251
+
+ tutor.gr: tutor.gr.utf-8
+ iconv -f UTF-8 -t ISO-8859-7 tutor.gr.utf-8 > tutor.gr
+
+ tutor.gr.cp737: tutor.gr.utf-8
+ iconv -f UTF-8 -t cp737 tutor.gr.utf-8 > tutor.gr.cp737
*** ../vim-7.0.094/src/version.c Sat Sep 9 14:51:43 2006
--- src/version.c Sun Sep 10 13:19:23 2006
***************
*** 668,669 ****
--- 668,671 ----
{ /* Add new patch number below this line */
+ /**/
+ 95,
/**/
--
FATHER: You killed eight wedding guests in all!
LAUNCELOT: Er, Well ... the thing is ... I thought your son was a lady.
FATHER: I can understand that.
"Monty Python and the Holy Grail" PYTHON (MONTY) PICTURES LTD
/// Bram Moolenaar -- Bram@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 ///

82
7.0.096
View File

@ -1,82 +0,0 @@
To: vim-dev@vim.org
Subject: Patch 7.0.096
Fcc: outbox
From: Bram Moolenaar <Bram@moolenaar.net>
Mime-Version: 1.0
Content-Type: text/plain; charset=ISO-8859-1
Content-Transfer-Encoding: 8bit
------------
Patch 7.0.096
Problem: taglist() returns the filename relative to the tags file, while
the directory of the tags file is unknown. (Hari Krishna Dara)
Solution: Expand the file name. (Yegappan Lakshmanan)
Files: src/tag.c
*** ../vim-7.0.095/src/tag.c Thu Apr 27 23:40:34 2006
--- src/tag.c Sun Sep 10 13:42:41 2006
***************
*** 3787,3792 ****
--- 3787,3793 ----
{
int num_matches, i, ret;
char_u **matches, *p;
+ char_u *full_fname;
dict_T *dict;
tagptrs_T tp;
long is_static;
***************
*** 3809,3823 ****
if (list_append_dict(list, dict) == FAIL)
ret = FAIL;
if (add_tag_field(dict, "name", tp.tagname, tp.tagname_end) == FAIL
! || add_tag_field(dict, "filename", tp.fname,
! tp.fname_end) == FAIL
|| add_tag_field(dict, "cmd", tp.command,
tp.command_end) == FAIL
|| add_tag_field(dict, "kind", tp.tagkind,
tp.tagkind_end) == FAIL
|| dict_add_nr_str(dict, "static", is_static, NULL) == FAIL)
ret = FAIL;
if (tp.command_end != NULL)
{
--- 3810,3827 ----
if (list_append_dict(list, dict) == FAIL)
ret = FAIL;
+ full_fname = tag_full_fname(&tp);
if (add_tag_field(dict, "name", tp.tagname, tp.tagname_end) == FAIL
! || add_tag_field(dict, "filename", full_fname,
! NULL) == FAIL
|| add_tag_field(dict, "cmd", tp.command,
tp.command_end) == FAIL
|| add_tag_field(dict, "kind", tp.tagkind,
tp.tagkind_end) == FAIL
|| dict_add_nr_str(dict, "static", is_static, NULL) == FAIL)
ret = FAIL;
+
+ vim_free(full_fname);
if (tp.command_end != NULL)
{
*** ../vim-7.0.095/src/version.c Sun Sep 10 13:22:26 2006
--- src/version.c Sun Sep 10 13:52:01 2006
***************
*** 668,669 ****
--- 668,671 ----
{ /* Add new patch number below this line */
+ /**/
+ 96,
/**/
--
The early bird gets the worm. If you want something else for
breakfast, get up later.
/// Bram Moolenaar -- Bram@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 ///

113
7.0.097
View File

@ -1,113 +0,0 @@
To: vim-dev@vim.org
Subject: Patch 7.0.097
Fcc: outbox
From: Bram Moolenaar <Bram@moolenaar.net>
Mime-Version: 1.0
Content-Type: text/plain; charset=ISO-8859-1
Content-Transfer-Encoding: 8bit
------------
Patch 7.0.097
Problem: ":tabclose N" that closes another tab page does not remove the tab
pages line. Same problem when using the mouse.
Solution: Adjust the tab pages line when needed in tabpage_close_other().
Files: src/ex_docmd.c
*** ../vim-7.0.096/src/ex_docmd.c Tue Aug 29 17:28:56 2006
--- src/ex_docmd.c Sun Sep 10 15:47:33 2006
***************
*** 6296,6302 ****
exarg_T *eap;
{
tabpage_T *tp;
- int h = tabline_height();
# ifdef FEAT_CMDWIN
if (cmdwin_type != 0)
--- 6296,6301 ----
***************
*** 6328,6336 ****
)
tabpage_close(eap->forceit);
}
-
- if (h != tabline_height())
- shell_new_rows();
}
/*
--- 6327,6332 ----
***************
*** 6342,6348 ****
{
tabpage_T *tp;
int done;
- int h = tabline_height();
# ifdef FEAT_CMDWIN
if (cmdwin_type != 0)
--- 6338,6343 ----
***************
*** 6371,6379 ****
break;
}
}
-
- if (h != tabline_height())
- shell_new_rows();
}
/*
--- 6366,6371 ----
***************
*** 6397,6402 ****
--- 6389,6396 ----
/*
* Close tab page "tp", which is not the current tab page.
* Note that autocommands may make "tp" invalid.
+ * Also takes care of the tab pages line disappearing when closing the
+ * last-but-one tab page.
*/
void
tabpage_close_other(tp, forceit)
***************
*** 6405,6410 ****
--- 6399,6405 ----
{
int done = 0;
win_T *wp;
+ int h = tabline_height();
/* Limit to 1000 windows, autocommands may add a window while we close
* one. OK, so I'm paranoid... */
***************
*** 6418,6424 ****
--- 6413,6422 ----
if (!valid_tabpage(tp) || tp->tp_firstwin == wp)
break;
}
+
redraw_tabline = TRUE;
+ if (h != tabline_height())
+ shell_new_rows();
}
/*
*** ../vim-7.0.096/src/version.c Sun Sep 10 13:56:06 2006
--- src/version.c Sun Sep 10 15:44:24 2006
***************
*** 668,669 ****
--- 668,671 ----
{ /* Add new patch number below this line */
+ /**/
+ 97,
/**/
--
Advice to worms: Sleep late.
/// Bram Moolenaar -- Bram@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 ///

71
7.0.098
View File

@ -1,71 +0,0 @@
To: vim-dev@vim.org
Subject: Patch 7.0.098
Fcc: outbox
From: Bram Moolenaar <Bram@moolenaar.net>
Mime-Version: 1.0
Content-Type: text/plain; charset=ISO-8859-1
Content-Transfer-Encoding: 8bit
------------
Patch 7.0.098
Problem: Redirecting command output in a cmdline completion function
doesn't work. (Hari Krishna Dara)
Solution: Enable redirection when redirection is started.
Files: src/ex_docmd.c, src/ex_getln.c
*** ../vim-7.0.097/src/ex_docmd.c Sun Sep 10 15:50:32 2006
--- src/ex_docmd.c Sun Sep 10 20:59:46 2006
***************
*** 8422,8427 ****
--- 8422,8436 ----
else
EMSG2(_(e_invarg2), eap->arg);
}
+
+ /* Make sure redirection is not off. Can happen for cmdline completion
+ * that indirectly invokes a command to catch its output. */
+ if (redir_fd != NULL
+ #ifdef FEAT_EVAL
+ || redir_reg || redir_vname
+ #endif
+ )
+ redir_off = FALSE;
}
/*
*** ../vim-7.0.097/src/ex_getln.c Sat Sep 2 17:58:36 2006
--- src/ex_getln.c Sun Sep 10 21:04:57 2006
***************
*** 324,329 ****
--- 324,332 ----
*/
for (;;)
{
+ redir_off = TRUE; /* Don't redirect the typed command.
+ Repeated, because a ":redir" inside
+ completion may switch it on. */
#ifdef USE_ON_FLY_SCROLL
dont_scroll = FALSE; /* allow scrolling here */
#endif
*** ../vim-7.0.097/src/version.c Sun Sep 10 15:50:32 2006
--- src/version.c Sun Sep 10 20:58:17 2006
***************
*** 668,669 ****
--- 668,671 ----
{ /* Add new patch number below this line */
+ /**/
+ 98,
/**/
--
GUEST: He's killed the best man!
SECOND GUEST: (holding a limp WOMAN) He's killed my auntie.
FATHER: No, please! This is supposed to be a happy occasion! Let's
not bicker and argue about who killed who ...
"Monty Python and the Holy Grail" PYTHON (MONTY) PICTURES LTD
/// Bram Moolenaar -- Bram@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 ///

70
7.0.099
View File

@ -1,70 +0,0 @@
To: vim-dev@vim.org
Subject: Patch 7.0.099
Fcc: outbox
From: Bram Moolenaar <Bram@moolenaar.net>
Mime-Version: 1.0
Content-Type: text/plain; charset=ISO-8859-1
Content-Transfer-Encoding: 8bit
------------
Patch 7.0.099
Problem: GUI: When the popup menu is visible using the scrollbar messes up
the display.
Solution: Disallow scrolling the current window. Redraw the popup menu
after scrolling another window.
Files: src/gui.c
*** ../vim-7.0.098/src/gui.c Tue Aug 29 18:16:37 2006
--- src/gui.c Sun Sep 10 21:28:57 2006
***************
*** 3734,3739 ****
--- 3734,3745 ----
if (dont_scroll || input_available())
return;
#endif
+ #ifdef FEAT_INS_EXPAND
+ /* Disallow scrolling the current window when the completion popup menu is
+ * visible. */
+ if ((sb->wp == NULL || sb->wp == curwin) && pum_visible())
+ return;
+ #endif
#ifdef FEAT_RIGHTLEFT
if (sb->wp == NULL && curwin->w_p_rl)
***************
*** 4207,4212 ****
--- 4213,4224 ----
redraw_win_later(wp, VALID);
updateWindow(wp); /* update window, status line, and cmdline */
}
+
+ #ifdef FEAT_INS_EXPAND
+ /* May need to redraw the popup menu. */
+ if (pum_visible())
+ pum_redraw();
+ #endif
return (wp == curwin && !equalpos(curwin->w_cursor, old_cursor));
}
*** ../vim-7.0.098/src/version.c Sun Sep 10 21:05:39 2006
--- src/version.c Sun Sep 10 21:35:27 2006
***************
*** 668,669 ****
--- 668,671 ----
{ /* Add new patch number below this line */
+ /**/
+ 99,
/**/
--
FATHER: We are here today to witness the union of two young people in the
joyful bond of the holy wedlock. Unfortunately, one of them, my son
Herbert, has just fallen to his death.
[Murmurs from CROWD; the BRIDE smiles with relief, coughs.]
"Monty Python and the Holy Grail" PYTHON (MONTY) PICTURES LTD
/// Bram Moolenaar -- Bram@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 ///

64
7.0.100
View File

@ -1,64 +0,0 @@
To: vim-dev@vim.org
Subject: Patch 7.0.100
Fcc: outbox
From: Bram Moolenaar <Bram@moolenaar.net>
Mime-Version: 1.0
Content-Type: text/plain; charset=ISO-8859-1
Content-Transfer-Encoding: 8bit
------------
Patch 7.0.100
Problem: "zug" may report the wrong filename. (Lawrence Kesteloot)
Solution: Call home_replace() to fill NameBuff[].
Files: src/spell.c
*** ../vim-7.0.099/src/spell.c Tue Aug 29 17:28:56 2006
--- src/spell.c Mon Sep 11 20:45:35 2006
***************
*** 1483,1489 ****
else if ((mode == FIND_COMPOUND || mode == FIND_KEEPCOMPOUND
|| !word_ends))
{
! /* If there is no flag or the word is shorter than
* COMPOUNDMIN reject it quickly.
* Makes you wonder why someone puts a compound flag on a word
* that's too short... Myspell compatibility requires this
--- 1483,1489 ----
else if ((mode == FIND_COMPOUND || mode == FIND_KEEPCOMPOUND
|| !word_ends))
{
! /* If there is no compound flag or the word is shorter than
* COMPOUNDMIN reject it quickly.
* Makes you wonder why someone puts a compound flag on a word
* that's too short... Myspell compatibility requires this
***************
*** 9336,9342 ****
--- 9336,9345 ----
{
fputc('#', fd);
if (undo)
+ {
+ home_replace(NULL, fname, NameBuff, MAXPATHL, TRUE);
smsg((char_u *)_("Word removed from %s"), NameBuff);
+ }
}
fseek(fd, fpos_next, SEEK_SET);
}
*** ../vim-7.0.099/src/version.c Sun Sep 10 21:38:48 2006
--- src/version.c Mon Sep 11 21:36:13 2006
***************
*** 668,669 ****
--- 668,671 ----
{ /* Add new patch number below this line */
+ /**/
+ 100,
/**/
--
Be nice to your kids... they'll be the ones choosing your nursing home.
/// Bram Moolenaar -- Bram@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 ///

Some files were not shown because too many files have changed in this diff Show More