- vim 7.2
- drop 330 patches
This commit is contained in:
parent
749c8268ad
commit
d598421286
@ -1,3 +1,3 @@
|
||||
vim-7.1-extra.tar.gz
|
||||
vim-7.1-lang.tar.gz
|
||||
vim-7.1.tar.bz2
|
||||
vim-7.2.tar.bz2
|
||||
vim-7.2-lang.tar.gz
|
||||
vim-7.2-extra.tar.gz
|
||||
|
75
7.1.001
75
7.1.001
@ -1,75 +0,0 @@
|
||||
To: vim-dev@vim.org
|
||||
Subject: patch 7.1.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.1.001
|
||||
Problem: Still can't build with Gnome libraries.
|
||||
Solution: Fix typo in bind_textdomain_codeset. (Mike Kelly)
|
||||
Files: src/gui_gtk.c, src/gui_gtk_x11.c
|
||||
|
||||
|
||||
*** ../vim-7.1.000/src/gui_gtk.c Thu May 10 20:27:29 2007
|
||||
--- src/gui_gtk.c Mon May 14 14:40:54 2007
|
||||
***************
|
||||
*** 53,60 ****
|
||||
# ifdef bindtextdomain
|
||||
# undef bindtextdomain
|
||||
# endif
|
||||
! # ifdef bindtextdomain_codeset
|
||||
! # undef bindtextdomain_codeset
|
||||
# endif
|
||||
# if defined(FEAT_GETTEXT) && !defined(ENABLE_NLS)
|
||||
# define ENABLE_NLS /* so the texts in the dialog boxes are translated */
|
||||
--- 53,60 ----
|
||||
# ifdef bindtextdomain
|
||||
# undef bindtextdomain
|
||||
# endif
|
||||
! # ifdef bind_textdomain_codeset
|
||||
! # undef bind_textdomain_codeset
|
||||
# endif
|
||||
# if defined(FEAT_GETTEXT) && !defined(ENABLE_NLS)
|
||||
# define ENABLE_NLS /* so the texts in the dialog boxes are translated */
|
||||
*** ../vim-7.1.000/src/gui_gtk_x11.c Thu May 10 21:17:51 2007
|
||||
--- src/gui_gtk_x11.c Mon May 14 14:41:06 2007
|
||||
***************
|
||||
*** 36,43 ****
|
||||
# ifdef bindtextdomain
|
||||
# undef bindtextdomain
|
||||
# endif
|
||||
! # ifdef bindtextdomain_codeset
|
||||
! # undef bindtextdomain_codeset
|
||||
# endif
|
||||
# if defined(FEAT_GETTEXT) && !defined(ENABLE_NLS)
|
||||
# define ENABLE_NLS /* so the texts in the dialog boxes are translated */
|
||||
--- 36,43 ----
|
||||
# ifdef bindtextdomain
|
||||
# undef bindtextdomain
|
||||
# endif
|
||||
! # ifdef bind_textdomain_codeset
|
||||
! # undef bind_textdomain_codeset
|
||||
# endif
|
||||
# if defined(FEAT_GETTEXT) && !defined(ENABLE_NLS)
|
||||
# define ENABLE_NLS /* so the texts in the dialog boxes are translated */
|
||||
*** ../vim-7.1.000/src/version.c Sat May 12 16:34:15 2007
|
||||
--- src/version.c Mon May 14 14:42:19 2007
|
||||
***************
|
||||
*** 668,669 ****
|
||||
--- 668,671 ----
|
||||
{ /* Add new patch number below this line */
|
||||
+ /**/
|
||||
+ 1,
|
||||
/**/
|
||||
|
||||
--
|
||||
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 ///
|
69
7.1.002
69
7.1.002
@ -1,69 +0,0 @@
|
||||
To: vim-dev@vim.org
|
||||
Subject: patch 7.1.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.1.002
|
||||
Problem: Oracle Pro*C/C++ files are not detected.
|
||||
Solution: Add the missing star. (Micah J. Cowan)
|
||||
Files: runtime/filetype.vim
|
||||
|
||||
|
||||
*** ../vim-7.1.001/runtime/filetype.vim Thu May 10 20:42:30 2007
|
||||
--- runtime/filetype.vim Tue May 15 09:12:06 2007
|
||||
***************
|
||||
*** 1,7 ****
|
||||
" Vim support file to detect file types
|
||||
"
|
||||
" Maintainer: Bram Moolenaar <Bram@vim.org>
|
||||
! " Last Change: 2007 May 10
|
||||
|
||||
" Listen very carefully, I will say this only once
|
||||
if exists("did_load_filetypes")
|
||||
--- 1,7 ----
|
||||
" Vim support file to detect file types
|
||||
"
|
||||
" Maintainer: Bram Moolenaar <Bram@vim.org>
|
||||
! " Last Change: 2007 May 15
|
||||
|
||||
" Listen very carefully, I will say this only once
|
||||
if exists("did_load_filetypes")
|
||||
***************
|
||||
*** 1286,1292 ****
|
||||
au BufNewFile,BufRead *.it,*.ih setf ppwiz
|
||||
|
||||
" Oracle Pro*C/C++
|
||||
! au BufNewFile,BufRead .pc setf proc
|
||||
|
||||
" Privoxy actions file
|
||||
au BufNewFile,BufRead *.action setf privoxy
|
||||
--- 1286,1292 ----
|
||||
au BufNewFile,BufRead *.it,*.ih setf ppwiz
|
||||
|
||||
" Oracle Pro*C/C++
|
||||
! au BufNewFile,BufRead *.pc setf proc
|
||||
|
||||
" Privoxy actions file
|
||||
au BufNewFile,BufRead *.action setf privoxy
|
||||
*** ../vim-7.1.001/src/version.c Mon May 14 19:35:51 2007
|
||||
--- src/version.c Tue May 15 09:13:11 2007
|
||||
***************
|
||||
*** 668,669 ****
|
||||
--- 668,671 ----
|
||||
{ /* Add new patch number below this line */
|
||||
+ /**/
|
||||
+ 2,
|
||||
/**/
|
||||
|
||||
--
|
||||
hundred-and-one symptoms of being an internet addict:
|
||||
132. You come back and check this list every half-hour.
|
||||
|
||||
/// 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.1.003
48
7.1.003
@ -1,48 +0,0 @@
|
||||
To: vim-dev@vim.org
|
||||
Subject: patch 7.1.003 (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.1.003 (extra)
|
||||
Problem: The "Tear off this menu" message appears in the message history
|
||||
when using a menu. (Yongwei Wu)
|
||||
Solution: Disable message history when displaying the menu tip.
|
||||
Files: src/gui_w32.c
|
||||
|
||||
|
||||
*** ../vim-7.1.002/src/gui_w32.c Thu May 10 22:17:22 2007
|
||||
--- src/gui_w32.c Sat Jun 9 13:43:07 2007
|
||||
***************
|
||||
*** 1051,1057 ****
|
||||
--- 1051,1059 ----
|
||||
if (pMenu != NULL && pMenu->strings[MENU_INDEX_TIP] != 0
|
||||
&& GetMenuState(s_menuBar, pMenu->id, MF_BYCOMMAND) != -1)
|
||||
{
|
||||
+ ++msg_hist_off;
|
||||
msg(pMenu->strings[MENU_INDEX_TIP]);
|
||||
+ --msg_hist_off;
|
||||
setcursor();
|
||||
out_flush();
|
||||
did_menu_tip = TRUE;
|
||||
*** ../vim-7.1.002/src/version.c Tue May 15 09:14:33 2007
|
||||
--- src/version.c Tue Jun 19 10:08:17 2007
|
||||
***************
|
||||
*** 668,669 ****
|
||||
--- 668,671 ----
|
||||
{ /* Add new patch number below this line */
|
||||
+ /**/
|
||||
+ 3,
|
||||
/**/
|
||||
|
||||
--
|
||||
In his lifetime van Gogh painted 486 oil paintings. Oddly enough, 8975
|
||||
of them are to be found in the United States.
|
||||
|
||||
/// 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.1.004
73
7.1.004
@ -1,73 +0,0 @@
|
||||
To: vim-dev@vim.org
|
||||
Subject: patch 7.1.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.1.004
|
||||
Problem: Crash when doing ":next directory". (Raphael Finkel)
|
||||
Solution: Do not use "buf", it may be invalid after autocommands.
|
||||
Files: src/ex_cmds.c
|
||||
|
||||
|
||||
*** ../vim-7.1.003/src/ex_cmds.c Thu May 10 21:24:24 2007
|
||||
--- src/ex_cmds.c Mon Jun 18 22:03:56 2007
|
||||
***************
|
||||
*** 3367,3373 ****
|
||||
* was in this window (or another window). If not used
|
||||
* before, reset the local window options to the global
|
||||
* values. Also restores old folding stuff. */
|
||||
! get_winopts(buf);
|
||||
#ifdef FEAT_SPELL
|
||||
did_get_winopts = TRUE;
|
||||
#endif
|
||||
--- 3367,3373 ----
|
||||
* was in this window (or another window). If not used
|
||||
* before, reset the local window options to the global
|
||||
* values. Also restores old folding stuff. */
|
||||
! get_winopts(curbuf);
|
||||
#ifdef FEAT_SPELL
|
||||
did_get_winopts = TRUE;
|
||||
#endif
|
||||
***************
|
||||
*** 3649,3656 ****
|
||||
#ifdef FEAT_SPELL
|
||||
/* If the window options were changed may need to set the spell language.
|
||||
* Can only do this after the buffer has been properly setup. */
|
||||
! if (did_get_winopts && curwin->w_p_spell && *buf->b_p_spl != NUL)
|
||||
! did_set_spelllang(buf);
|
||||
#endif
|
||||
|
||||
if (command == NULL)
|
||||
--- 3649,3656 ----
|
||||
#ifdef FEAT_SPELL
|
||||
/* If the window options were changed may need to set the spell language.
|
||||
* Can only do this after the buffer has been properly setup. */
|
||||
! if (did_get_winopts && curwin->w_p_spell && *curbuf->b_p_spl != NUL)
|
||||
! did_set_spelllang(curbuf);
|
||||
#endif
|
||||
|
||||
if (command == NULL)
|
||||
*** ../vim-7.1.003/src/version.c Tue Jun 19 10:09:15 2007
|
||||
--- src/version.c Tue Jun 19 11:53:34 2007
|
||||
***************
|
||||
*** 668,669 ****
|
||||
--- 668,671 ----
|
||||
{ /* Add new patch number below this line */
|
||||
+ /**/
|
||||
+ 4,
|
||||
/**/
|
||||
|
||||
--
|
||||
FIRST HEAD: Oh! quick! get the sword out I want to cut his head off.
|
||||
THIRD HEAD: Oh, cut your own head off.
|
||||
SECOND HEAD: Yes - do us all a favour.
|
||||
"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 ///
|
149
7.1.005
149
7.1.005
@ -1,149 +0,0 @@
|
||||
To: vim-dev@vim.org
|
||||
Subject: patch 7.1.005
|
||||
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.1.005
|
||||
Problem: "cit" used on <foo></foo> deletes <foo>. Should not delete
|
||||
anything and start insertion, like "ci'" does on "". (Michal
|
||||
Bozon)
|
||||
Solution: Handle an empty object specifically. Made it work consistent for
|
||||
various text objects.
|
||||
Files: src/search.c
|
||||
|
||||
|
||||
*** ../vim-7.1.004/src/search.c Thu May 10 20:54:46 2007
|
||||
--- src/search.c Mon Jun 4 12:31:04 2007
|
||||
***************
|
||||
*** 3600,3612 ****
|
||||
{
|
||||
oap->start = start_pos;
|
||||
oap->motion_type = MCHAR;
|
||||
if (sol)
|
||||
- {
|
||||
incl(&curwin->w_cursor);
|
||||
! oap->inclusive = FALSE;
|
||||
! }
|
||||
! else
|
||||
oap->inclusive = TRUE;
|
||||
}
|
||||
|
||||
return OK;
|
||||
--- 3600,3615 ----
|
||||
{
|
||||
oap->start = start_pos;
|
||||
oap->motion_type = MCHAR;
|
||||
+ oap->inclusive = FALSE;
|
||||
if (sol)
|
||||
incl(&curwin->w_cursor);
|
||||
! else if (lt(start_pos, curwin->w_cursor))
|
||||
! /* Include the character under the cursor. */
|
||||
oap->inclusive = TRUE;
|
||||
+ else
|
||||
+ /* End is before the start (no text in between <>, [], etc.): don't
|
||||
+ * operate on any text. */
|
||||
+ curwin->w_cursor = start_pos;
|
||||
}
|
||||
|
||||
return OK;
|
||||
***************
|
||||
*** 3734,3740 ****
|
||||
|
||||
if (in_html_tag(FALSE))
|
||||
{
|
||||
! /* cursor on start tag, move to just after it */
|
||||
while (*ml_get_cursor() != '>')
|
||||
if (inc_cursor() < 0)
|
||||
break;
|
||||
--- 3737,3743 ----
|
||||
|
||||
if (in_html_tag(FALSE))
|
||||
{
|
||||
! /* cursor on start tag, move to its '>' */
|
||||
while (*ml_get_cursor() != '>')
|
||||
if (inc_cursor() < 0)
|
||||
break;
|
||||
***************
|
||||
*** 3838,3844 ****
|
||||
/* Exclude the start tag. */
|
||||
curwin->w_cursor = start_pos;
|
||||
while (inc_cursor() >= 0)
|
||||
! if (*ml_get_cursor() == '>' && lt(curwin->w_cursor, end_pos))
|
||||
{
|
||||
inc_cursor();
|
||||
start_pos = curwin->w_cursor;
|
||||
--- 3841,3847 ----
|
||||
/* Exclude the start tag. */
|
||||
curwin->w_cursor = start_pos;
|
||||
while (inc_cursor() >= 0)
|
||||
! if (*ml_get_cursor() == '>')
|
||||
{
|
||||
inc_cursor();
|
||||
start_pos = curwin->w_cursor;
|
||||
***************
|
||||
*** 3860,3866 ****
|
||||
#ifdef FEAT_VISUAL
|
||||
if (VIsual_active)
|
||||
{
|
||||
! if (*p_sel == 'e')
|
||||
++curwin->w_cursor.col;
|
||||
VIsual = start_pos;
|
||||
VIsual_mode = 'v';
|
||||
--- 3863,3873 ----
|
||||
#ifdef FEAT_VISUAL
|
||||
if (VIsual_active)
|
||||
{
|
||||
! /* If the end is before the start there is no text between tags, select
|
||||
! * the char under the cursor. */
|
||||
! if (lt(end_pos, start_pos))
|
||||
! curwin->w_cursor = start_pos;
|
||||
! else if (*p_sel == 'e')
|
||||
++curwin->w_cursor.col;
|
||||
VIsual = start_pos;
|
||||
VIsual_mode = 'v';
|
||||
***************
|
||||
*** 3872,3878 ****
|
||||
{
|
||||
oap->start = start_pos;
|
||||
oap->motion_type = MCHAR;
|
||||
! oap->inclusive = TRUE;
|
||||
}
|
||||
retval = OK;
|
||||
|
||||
--- 3879,3893 ----
|
||||
{
|
||||
oap->start = start_pos;
|
||||
oap->motion_type = MCHAR;
|
||||
! if (lt(end_pos, start_pos))
|
||||
! {
|
||||
! /* End is before the start: there is no text between tags; operate
|
||||
! * on an empty area. */
|
||||
! curwin->w_cursor = start_pos;
|
||||
! oap->inclusive = FALSE;
|
||||
! }
|
||||
! else
|
||||
! oap->inclusive = TRUE;
|
||||
}
|
||||
retval = OK;
|
||||
|
||||
*** ../vim-7.1.004/src/version.c Tue Jun 19 11:54:23 2007
|
||||
--- src/version.c Tue Jun 19 12:57:03 2007
|
||||
***************
|
||||
*** 668,669 ****
|
||||
--- 668,671 ----
|
||||
{ /* Add new patch number below this line */
|
||||
+ /**/
|
||||
+ 5,
|
||||
/**/
|
||||
|
||||
--
|
||||
Life would be so much easier if we could just look at the source code.
|
||||
|
||||
/// 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 ///
|
85
7.1.006
85
7.1.006
@ -1,85 +0,0 @@
|
||||
To: vim-dev@vim.org
|
||||
Subject: patch 7.1.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.1.006
|
||||
Problem: Resetting 'modified' in a StdinReadPost autocommand doesn't work.
|
||||
Solution: Set 'modified' before the autocommands instead of after it.
|
||||
Files: src/buffer.c
|
||||
|
||||
|
||||
*** ../vim-7.1.005/src/buffer.c Thu May 10 18:43:46 2007
|
||||
--- src/buffer.c Fri Jun 8 20:59:04 2007
|
||||
***************
|
||||
*** 171,176 ****
|
||||
--- 171,183 ----
|
||||
/* Put the cursor on the first line. */
|
||||
curwin->w_cursor.lnum = 1;
|
||||
curwin->w_cursor.col = 0;
|
||||
+
|
||||
+ /* Set or reset 'modified' before executing autocommands, so that
|
||||
+ * it can be changed there. */
|
||||
+ if (!readonlymode && !bufempty())
|
||||
+ changed();
|
||||
+ else if (retval != FAIL)
|
||||
+ unchanged(curbuf, FALSE);
|
||||
#ifdef FEAT_AUTOCMD
|
||||
# ifdef FEAT_EVAL
|
||||
apply_autocmds_retval(EVENT_STDINREADPOST, NULL, NULL, FALSE,
|
||||
***************
|
||||
*** 194,209 ****
|
||||
/* When reading stdin, the buffer contents always needs writing, so set
|
||||
* the changed flag. Unless in readonly mode: "ls | gview -".
|
||||
* When interrupted and 'cpoptions' contains 'i' set changed flag. */
|
||||
! if ((read_stdin && !readonlymode && !bufempty())
|
||||
#ifdef FEAT_AUTOCMD
|
||||
|| modified_was_set /* ":set modified" used in autocmd */
|
||||
# ifdef FEAT_EVAL
|
||||
|| (aborting() && vim_strchr(p_cpo, CPO_INTMOD) != NULL)
|
||||
# endif
|
||||
#endif
|
||||
! || (got_int && vim_strchr(p_cpo, CPO_INTMOD) != NULL))
|
||||
changed();
|
||||
! else if (retval != FAIL)
|
||||
unchanged(curbuf, FALSE);
|
||||
save_file_ff(curbuf); /* keep this fileformat */
|
||||
|
||||
--- 201,216 ----
|
||||
/* When reading stdin, the buffer contents always needs writing, so set
|
||||
* the changed flag. Unless in readonly mode: "ls | gview -".
|
||||
* When interrupted and 'cpoptions' contains 'i' set changed flag. */
|
||||
! if ((got_int && vim_strchr(p_cpo, CPO_INTMOD) != NULL)
|
||||
#ifdef FEAT_AUTOCMD
|
||||
|| modified_was_set /* ":set modified" used in autocmd */
|
||||
# ifdef FEAT_EVAL
|
||||
|| (aborting() && vim_strchr(p_cpo, CPO_INTMOD) != NULL)
|
||||
# endif
|
||||
#endif
|
||||
! )
|
||||
changed();
|
||||
! else if (retval != FAIL && !read_stdin)
|
||||
unchanged(curbuf, FALSE);
|
||||
save_file_ff(curbuf); /* keep this fileformat */
|
||||
|
||||
*** ../vim-7.1.005/src/version.c Tue Jun 19 12:58:55 2007
|
||||
--- src/version.c Tue Jun 19 15:37:53 2007
|
||||
***************
|
||||
*** 668,669 ****
|
||||
--- 668,671 ----
|
||||
{ /* Add new patch number below this line */
|
||||
+ /**/
|
||||
+ 6,
|
||||
/**/
|
||||
|
||||
--
|
||||
If I tell you "you have a beautiful body", would you hold it against me?
|
||||
|
||||
/// 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.1.007
221
7.1.007
@ -1,221 +0,0 @@
|
||||
To: vim-dev@vim.org
|
||||
Subject: patch 7.1.007 (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.1.007 (extra)
|
||||
Problem: Mac: Context menu doesn't work on Intel Macs.
|
||||
Scrollbars are not dimmed when Vim is not the active application.
|
||||
Solution: Remove the test whether context menus are supported. They are
|
||||
always there in OS/X. Handle the dimming. (Nicolas Weber)
|
||||
Files: src/gui_mac.c, src/gui.h
|
||||
|
||||
|
||||
*** ../vim-7.1.006/src/gui_mac.c Thu May 10 20:07:25 2007
|
||||
--- src/gui_mac.c Sat Jun 9 14:19:25 2007
|
||||
***************
|
||||
*** 1676,1688 ****
|
||||
/* TODO: NEEDED? */
|
||||
clickIsPopup = FALSE;
|
||||
|
||||
! if ((gui.MacOSHaveCntxMenu) && (mouse_model_popup()))
|
||||
! if (IsShowContextualMenuClick(theEvent))
|
||||
! {
|
||||
! vimMouseButton = MOUSE_RIGHT;
|
||||
! vimModifiers &= ~MOUSE_CTRL;
|
||||
! clickIsPopup = TRUE;
|
||||
! }
|
||||
|
||||
/* Is it a double click ? */
|
||||
dblClick = ((theEvent->when - lastMouseTick) < GetDblTime());
|
||||
--- 1676,1687 ----
|
||||
/* TODO: NEEDED? */
|
||||
clickIsPopup = FALSE;
|
||||
|
||||
! if (mouse_model_popup() && IsShowContextualMenuClick(theEvent))
|
||||
! {
|
||||
! vimMouseButton = MOUSE_RIGHT;
|
||||
! vimModifiers &= ~MOUSE_CTRL;
|
||||
! clickIsPopup = TRUE;
|
||||
! }
|
||||
|
||||
/* Is it a double click ? */
|
||||
dblClick = ((theEvent->when - lastMouseTick) < GetDblTime());
|
||||
***************
|
||||
*** 1920,1943 ****
|
||||
WindowPtr whichWindow;
|
||||
|
||||
whichWindow = (WindowPtr) event->message;
|
||||
! if ((event->modifiers) & activeFlag)
|
||||
! /* Activate */
|
||||
! gui_focus_change(TRUE);
|
||||
! else
|
||||
{
|
||||
! /* Deactivate */
|
||||
! gui_focus_change(FALSE);
|
||||
! /* DON'T KNOW what the code below was doing
|
||||
! found in the deactivate clause, but the
|
||||
! clause writing TRUE into in_focus (BUG)
|
||||
! */
|
||||
!
|
||||
! #if 0 /* Removed by Dany as per above June 2001 */
|
||||
! a_bool = false;
|
||||
! SetPreserveGlyph(a_bool);
|
||||
! SetOutlinePreferred(a_bool);
|
||||
! #endif
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
--- 1919,1937 ----
|
||||
WindowPtr whichWindow;
|
||||
|
||||
whichWindow = (WindowPtr) event->message;
|
||||
! /* Dim scrollbars */
|
||||
! if (whichWindow == gui.VimWindow)
|
||||
{
|
||||
! ControlRef rootControl;
|
||||
! GetRootControl(gui.VimWindow, &rootControl);
|
||||
! if ((event->modifiers) & activeFlag)
|
||||
! ActivateControl(rootControl);
|
||||
! else
|
||||
! DeactivateControl(rootControl);
|
||||
}
|
||||
+
|
||||
+ /* Activate */
|
||||
+ gui_focus_change((event->modifiers) & activeFlag);
|
||||
}
|
||||
|
||||
|
||||
***************
|
||||
*** 2559,2574 ****
|
||||
OSErr error;
|
||||
|
||||
/* Handle contextual menu right now (if needed) */
|
||||
! if (gui.MacOSHaveCntxMenu)
|
||||
! if (IsShowContextualMenuClick(event))
|
||||
! {
|
||||
# if 0
|
||||
! gui_mac_handle_contextual_menu(event);
|
||||
# else
|
||||
! gui_mac_doMouseDownEvent(event);
|
||||
# endif
|
||||
! return;
|
||||
! }
|
||||
|
||||
/* Handle normal event */
|
||||
switch (event->what)
|
||||
--- 2553,2567 ----
|
||||
OSErr error;
|
||||
|
||||
/* Handle contextual menu right now (if needed) */
|
||||
! if (IsShowContextualMenuClick(event))
|
||||
! {
|
||||
# if 0
|
||||
! gui_mac_handle_contextual_menu(event);
|
||||
# else
|
||||
! gui_mac_doMouseDownEvent(event);
|
||||
# endif
|
||||
! return;
|
||||
! }
|
||||
|
||||
/* Handle normal event */
|
||||
switch (event->what)
|
||||
***************
|
||||
*** 2782,2795 ****
|
||||
(void) InstallAEHandlers();
|
||||
#endif
|
||||
|
||||
- if (Gestalt(gestaltContextualMenuAttr, &gestalt_rc) == noErr)
|
||||
- gui.MacOSHaveCntxMenu = BitTst(&gestalt_rc, 31-gestaltContextualMenuTrapAvailable);
|
||||
- else
|
||||
- gui.MacOSHaveCntxMenu = false;
|
||||
-
|
||||
- if (gui.MacOSHaveCntxMenu)
|
||||
- gui.MacOSHaveCntxMenu = (InitContextualMenus()==noErr);
|
||||
-
|
||||
pomme = NewMenu(256, "\p\024"); /* 0x14= = Apple Menu */
|
||||
|
||||
AppendMenu(pomme, "\pAbout VIM");
|
||||
--- 2775,2780 ----
|
||||
***************
|
||||
*** 2941,2946 ****
|
||||
--- 2926,2932 ----
|
||||
#ifdef USE_CARBONKEYHANDLER
|
||||
EventHandlerRef keyEventHandlerRef;
|
||||
#endif
|
||||
+ ControlRef rootControl;
|
||||
|
||||
if (Gestalt(gestaltSystemVersion, &gMacSystemVersion) != noErr)
|
||||
gMacSystemVersion = 0x1000; /* TODO: Default to minimum sensible value */
|
||||
***************
|
||||
*** 2954,2968 ****
|
||||
(void) InstallAEHandlers();
|
||||
#endif
|
||||
|
||||
- /* Ctrl click */
|
||||
- if (Gestalt(gestaltContextualMenuAttr, &gestalt_rc) == noErr)
|
||||
- gui.MacOSHaveCntxMenu = BitTst(&gestalt_rc, 31-gestaltContextualMenuTrapAvailable);
|
||||
- else
|
||||
- gui.MacOSHaveCntxMenu = false;
|
||||
-
|
||||
- if (gui.MacOSHaveCntxMenu)
|
||||
- gui.MacOSHaveCntxMenu = (InitContextualMenus()==noErr);
|
||||
-
|
||||
pomme = NewMenu(256, "\p\024"); /* 0x14= = Apple Menu */
|
||||
|
||||
AppendMenu(pomme, "\pAbout VIM");
|
||||
--- 2940,2945 ----
|
||||
***************
|
||||
*** 2981,2986 ****
|
||||
--- 2958,2964 ----
|
||||
gui.VimWindow = NewCWindow(nil, &windRect, "\pgVim on Macintosh", true,
|
||||
zoomDocProc,
|
||||
(WindowPtr)-1L, true, 0);
|
||||
+ CreateRootControl(gui.VimWindow, &rootControl);
|
||||
InstallReceiveHandler((DragReceiveHandlerUPP)receiveHandler,
|
||||
gui.VimWindow, NULL);
|
||||
SetPortWindowPort(gui.VimWindow);
|
||||
*** ../vim-7.1.006/src/gui.h Thu May 10 19:18:46 2007
|
||||
--- src/gui.h Sat Jun 9 14:10:34 2007
|
||||
***************
|
||||
*** 460,466 ****
|
||||
WindowPtr VimWindow;
|
||||
MenuHandle MacOSHelpMenu; /* Help menu provided by the MacOS */
|
||||
int MacOSHelpItems; /* Nr of help-items supplied by MacOS */
|
||||
- int MacOSHaveCntxMenu; /* Contextual menu available */
|
||||
WindowPtr wid; /* Window id of text area */
|
||||
int visibility; /* Is window partially/fully obscured? */
|
||||
#endif
|
||||
--- 460,465 ----
|
||||
*** ../vim-7.1.006/src/version.c Tue Jun 19 15:40:51 2007
|
||||
--- src/version.c Tue Jun 19 15:44:15 2007
|
||||
***************
|
||||
*** 668,669 ****
|
||||
--- 668,671 ----
|
||||
{ /* Add new patch number below this line */
|
||||
+ /**/
|
||||
+ 7,
|
||||
/**/
|
||||
|
||||
--
|
||||
When danger reared its ugly head,
|
||||
He bravely turned his tail and fled
|
||||
Yes, Brave Sir Robin turned about
|
||||
And gallantly he chickened out
|
||||
Bravely taking to his feet
|
||||
He beat a very brave retreat
|
||||
Bravest of the brave Sir Robin
|
||||
Petrified of being dead
|
||||
Soiled his pants then brave Sir Robin
|
||||
Turned away and fled.
|
||||
"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.1.008
82
7.1.008
@ -1,82 +0,0 @@
|
||||
To: vim-dev@vim.org
|
||||
Subject: patch 7.1.008 (correction
|
||||
Fcc: outbox
|
||||
From: Bram Moolenaar <Bram@moolenaar.net>
|
||||
Mime-Version: 1.0
|
||||
Content-Type: text/plain; charset=ISO-8859-1
|
||||
Content-Transfer-Encoding: 8bit
|
||||
------------
|
||||
|
||||
Oops, forgot the src/version.c change.
|
||||
|
||||
Patch 7.1.008
|
||||
Problem: getfsize() returns a negative number for very big files.
|
||||
Solution: Check for overflow and return -2.
|
||||
Files: runtime/doc/eval.txt, src/eval.c
|
||||
|
||||
|
||||
*** ../vim-7.1.007/runtime/doc/eval.txt Sat May 12 16:38:23 2007
|
||||
--- runtime/doc/eval.txt Sat Jun 9 15:48:40 2007
|
||||
***************
|
||||
*** 1,4 ****
|
||||
! *eval.txt* For Vim version 7.1. Last change: 2007 May 11
|
||||
|
||||
|
||||
VIM REFERENCE MANUAL by Bram Moolenaar
|
||||
--- 1,4 ----
|
||||
! *eval.txt* For Vim version 7.1. Last change: 2007 Jun 09
|
||||
|
||||
|
||||
VIM REFERENCE MANUAL by Bram Moolenaar
|
||||
***************
|
||||
*** 2824,2829 ****
|
||||
--- 2824,2831 ----
|
||||
given file {fname}.
|
||||
If {fname} is a directory, 0 is returned.
|
||||
If the file {fname} can't be found, -1 is returned.
|
||||
+ If the size of {fname} is too big to fit in a Number then -2
|
||||
+ is returned.
|
||||
|
||||
getfontname([{name}]) *getfontname()*
|
||||
Without an argument returns the name of the normal font being
|
||||
*** ../vim-7.1.007/src/eval.c Thu May 10 21:30:00 2007
|
||||
--- src/eval.c Sat Jun 9 15:46:46 2007
|
||||
***************
|
||||
*** 10136,10142 ****
|
||||
--- 10136,10148 ----
|
||||
if (mch_isdir(fname))
|
||||
rettv->vval.v_number = 0;
|
||||
else
|
||||
+ {
|
||||
rettv->vval.v_number = (varnumber_T)st.st_size;
|
||||
+
|
||||
+ /* non-perfect check for overflow */
|
||||
+ if ((off_t)rettv->vval.v_number != (off_t)st.st_size)
|
||||
+ rettv->vval.v_number = -2;
|
||||
+ }
|
||||
}
|
||||
else
|
||||
rettv->vval.v_number = -1;
|
||||
*** ../vim-7.1.007/src/version.c Tue Jun 19 16:33:53 2007
|
||||
--- src/version.c Tue Jun 19 17:30:50 2007
|
||||
***************
|
||||
*** 668,669 ****
|
||||
--- 668,671 ----
|
||||
{ /* Add new patch number below this line */
|
||||
+ /**/
|
||||
+ 8,
|
||||
/**/
|
||||
|
||||
|
||||
--
|
||||
ZOOT: I'm afraid our life must seem very dull and quiet compared to yours.
|
||||
We are but eightscore young blondes, all between sixteen and
|
||||
nineteen-and-a-half, cut off in this castle, with no one to protect us.
|
||||
Oooh. It is a lonely life ... bathing ... dressing ... undressing ...
|
||||
making exciting underwear....
|
||||
"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 ///
|
58
7.1.009
58
7.1.009
@ -1,58 +0,0 @@
|
||||
To: vim-dev@vim.org
|
||||
Subject: patch 7.1.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.1.009
|
||||
Problem: In diff mode, displaying the difference between a tab and spaces
|
||||
is not highlighted correctly.
|
||||
Solution: Only change highlighting at the end of displaying a tab.
|
||||
Files: src/screen.c
|
||||
|
||||
|
||||
*** ../vim-7.1.008/src/screen.c Thu May 10 20:15:31 2007
|
||||
--- src/screen.c Mon Jun 11 21:49:44 2007
|
||||
***************
|
||||
*** 3459,3467 ****
|
||||
#ifdef FEAT_DIFF
|
||||
if (diff_hlf != (hlf_T)0)
|
||||
{
|
||||
! if (diff_hlf == HLF_CHD && ptr - line >= change_start)
|
||||
diff_hlf = HLF_TXD; /* changed text */
|
||||
! if (diff_hlf == HLF_TXD && ptr - line > change_end)
|
||||
diff_hlf = HLF_CHD; /* changed line */
|
||||
line_attr = hl_attr(diff_hlf);
|
||||
}
|
||||
--- 3459,3469 ----
|
||||
#ifdef FEAT_DIFF
|
||||
if (diff_hlf != (hlf_T)0)
|
||||
{
|
||||
! if (diff_hlf == HLF_CHD && ptr - line >= change_start
|
||||
! && n_extra == 0)
|
||||
diff_hlf = HLF_TXD; /* changed text */
|
||||
! if (diff_hlf == HLF_TXD && ptr - line > change_end
|
||||
! && n_extra == 0)
|
||||
diff_hlf = HLF_CHD; /* changed line */
|
||||
line_attr = hl_attr(diff_hlf);
|
||||
}
|
||||
*** ../vim-7.1.008/src/version.c Tue Jun 19 17:33:52 2007
|
||||
--- src/version.c Tue Jun 19 17:36:36 2007
|
||||
***************
|
||||
*** 668,669 ****
|
||||
--- 668,671 ----
|
||||
{ /* Add new patch number below this line */
|
||||
+ /**/
|
||||
+ 9,
|
||||
/**/
|
||||
|
||||
--
|
||||
Linux is just like a wigwam: no Windows, no Gates and an Apache inside.
|
||||
|
||||
/// 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 ///
|
75
7.1.010
75
7.1.010
@ -1,75 +0,0 @@
|
||||
To: vim-dev@vim.org
|
||||
Subject: patch 7.1.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.1.010
|
||||
Problem: The Gnome session file doesn't restore tab pages.
|
||||
Solution: Add SSOP_TABPAGES to the session flags. (Matias D'Ambrosio)
|
||||
Files: src/gui_gtk_x11.c
|
||||
|
||||
|
||||
*** ../vim-7.1.009/src/gui_gtk_x11.c Mon May 14 19:35:51 2007
|
||||
--- src/gui_gtk_x11.c Sat Jun 9 16:54:13 2007
|
||||
***************
|
||||
*** 2188,2195 ****
|
||||
escaped_filename = vim_strsave_escaped(filename, escape_chars);
|
||||
if (escaped_filename == NULL)
|
||||
return FALSE;
|
||||
! mksession_cmdline = g_strconcat("mksession ", (char *)escaped_filename, NULL);
|
||||
vim_free(escaped_filename);
|
||||
/*
|
||||
* Use a reasonable hardcoded set of 'sessionoptions' flags to avoid
|
||||
* unpredictable effects when the session is saved automatically. Also,
|
||||
--- 2188,2197 ----
|
||||
escaped_filename = vim_strsave_escaped(filename, escape_chars);
|
||||
if (escaped_filename == NULL)
|
||||
return FALSE;
|
||||
! mksession_cmdline = g_strconcat("mksession ", (char *)escaped_filename,
|
||||
! NULL);
|
||||
vim_free(escaped_filename);
|
||||
+
|
||||
/*
|
||||
* Use a reasonable hardcoded set of 'sessionoptions' flags to avoid
|
||||
* unpredictable effects when the session is saved automatically. Also,
|
||||
***************
|
||||
*** 2199,2205 ****
|
||||
*/
|
||||
save_ssop_flags = ssop_flags;
|
||||
ssop_flags = (SSOP_BLANK|SSOP_CURDIR|SSOP_FOLDS|SSOP_GLOBALS
|
||||
! |SSOP_HELP|SSOP_OPTIONS|SSOP_WINSIZE);
|
||||
|
||||
do_cmdline_cmd((char_u *)"let Save_VV_this_session = v:this_session");
|
||||
failed = (do_cmdline_cmd((char_u *)mksession_cmdline) == FAIL);
|
||||
--- 2201,2207 ----
|
||||
*/
|
||||
save_ssop_flags = ssop_flags;
|
||||
ssop_flags = (SSOP_BLANK|SSOP_CURDIR|SSOP_FOLDS|SSOP_GLOBALS
|
||||
! |SSOP_HELP|SSOP_OPTIONS|SSOP_WINSIZE|SSOP_TABPAGES);
|
||||
|
||||
do_cmdline_cmd((char_u *)"let Save_VV_this_session = v:this_session");
|
||||
failed = (do_cmdline_cmd((char_u *)mksession_cmdline) == FAIL);
|
||||
*** ../vim-7.1.009/src/version.c Tue Jun 19 17:49:12 2007
|
||||
--- src/version.c Tue Jun 19 18:07:09 2007
|
||||
***************
|
||||
*** 668,669 ****
|
||||
--- 668,671 ----
|
||||
{ /* Add new patch number below this line */
|
||||
+ /**/
|
||||
+ 10,
|
||||
/**/
|
||||
|
||||
--
|
||||
GALAHAD: No look, really, this isn't nescess ...
|
||||
PIGLET: We must examine you.
|
||||
GALAHAD: There's nothing wrong with ... 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 ///
|
58
7.1.011
58
7.1.011
@ -1,58 +0,0 @@
|
||||
To: vim-dev@vim.org
|
||||
Subject: patch 7.1.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.1.011
|
||||
Problem: Possible buffer overflow when $VIMRUNTIME is very long. (Victor
|
||||
Stinner)
|
||||
Solution: Use vim_snprintf().
|
||||
Files: src/main.c
|
||||
|
||||
|
||||
*** ../vim-7.1.010/src/main.c Thu May 10 21:12:25 2007
|
||||
--- src/main.c Sat Jun 9 22:37:46 2007
|
||||
***************
|
||||
*** 1360,1367 ****
|
||||
p = vim_getenv((char_u *)"VIMRUNTIME", &mustfree);
|
||||
if (p != NULL && *p != NUL)
|
||||
{
|
||||
! STRCPY(NameBuff, p);
|
||||
! STRCAT(NameBuff, "/lang");
|
||||
bindtextdomain(VIMPACKAGE, (char *)NameBuff);
|
||||
}
|
||||
if (mustfree)
|
||||
--- 1360,1366 ----
|
||||
p = vim_getenv((char_u *)"VIMRUNTIME", &mustfree);
|
||||
if (p != NULL && *p != NUL)
|
||||
{
|
||||
! vim_snprintf((char *)NameBuff, MAXPATHL, "%s/lang", p);
|
||||
bindtextdomain(VIMPACKAGE, (char *)NameBuff);
|
||||
}
|
||||
if (mustfree)
|
||||
*** ../vim-7.1.010/src/version.c Tue Jun 19 18:07:52 2007
|
||||
--- src/version.c Tue Jun 19 20:29:44 2007
|
||||
***************
|
||||
*** 668,669 ****
|
||||
--- 668,671 ----
|
||||
{ /* Add new patch number below this line */
|
||||
+ /**/
|
||||
+ 11,
|
||||
/**/
|
||||
|
||||
--
|
||||
GALAHAD hurries to the door and pushes through it. As he leaves the room
|
||||
we CUT TO the reverse to show that he is now in a room full of bathing
|
||||
and romping GIRLIES, all innocent, wide-eyed and beautiful. They smile
|
||||
enchantingly at him as he tries to keep walking without being diverted by
|
||||
the lovely sights assaulting his eyeballs.
|
||||
"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 ///
|
62
7.1.012
62
7.1.012
@ -1,62 +0,0 @@
|
||||
To: vim-dev@vim.org
|
||||
Subject: patch 7.1.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.1.012
|
||||
Problem: ":let &shiftwidth = 'asdf'" doesn't produce an error message.
|
||||
Solution: Check for a string argument. (Chris Lubinski)
|
||||
Files: src/option.c
|
||||
|
||||
|
||||
*** ../vim-7.1.011/src/option.c Sun May 6 15:37:32 2007
|
||||
--- src/option.c Tue Jun 19 20:56:36 2007
|
||||
***************
|
||||
*** 8219,8224 ****
|
||||
--- 8219,8243 ----
|
||||
varp = get_varp(&options[opt_idx]);
|
||||
if (varp != NULL) /* hidden option is not changed */
|
||||
{
|
||||
+ if (number == 0 && string != NULL)
|
||||
+ {
|
||||
+ int index;
|
||||
+
|
||||
+ /* Either we are given a string or we are setting option
|
||||
+ * to zero. */
|
||||
+ for (index = 0; string[index] == '0'; ++index)
|
||||
+ ;
|
||||
+ if (string[index] != NUL || index == 0)
|
||||
+ {
|
||||
+ /* There's another character after zeros or the string
|
||||
+ * is empty. In both cases, we are trying to set a
|
||||
+ * num option using a string. */
|
||||
+ EMSG3(_("E521: Number required: &%s = '%s'"),
|
||||
+ name, string);
|
||||
+ return; /* do nothing as we hit an error */
|
||||
+
|
||||
+ }
|
||||
+ }
|
||||
if (flags & P_NUM)
|
||||
(void)set_num_option(opt_idx, varp, number,
|
||||
NULL, 0, opt_flags);
|
||||
*** ../vim-7.1.011/src/version.c Tue Jun 19 20:30:46 2007
|
||||
--- src/version.c Tue Jun 19 20:53:15 2007
|
||||
***************
|
||||
*** 668,669 ****
|
||||
--- 668,671 ----
|
||||
{ /* Add new patch number below this line */
|
||||
+ /**/
|
||||
+ 12,
|
||||
/**/
|
||||
|
||||
--
|
||||
Ten million Linux users can't be wrong!
|
||||
|
||||
/// 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.1.013
60
7.1.013
@ -1,60 +0,0 @@
|
||||
To: vim-dev@vim.org
|
||||
Subject: patch 7.1.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.1.013
|
||||
Problem: ":syn include" only loads the first file, while it is documented
|
||||
as doing the equivalent of ":runtime!".
|
||||
Solution: Change the argument to source_runtime(). (James Vega)
|
||||
Files: src/syntax.c
|
||||
|
||||
|
||||
*** ../vim-7.1.012/src/syntax.c Thu May 10 20:54:33 2007
|
||||
--- src/syntax.c Sun Jun 17 22:03:30 2007
|
||||
***************
|
||||
*** 4460,4467 ****
|
||||
current_syn_inc_tag = ++running_syn_inc_tag;
|
||||
prev_toplvl_grp = curbuf->b_syn_topgrp;
|
||||
curbuf->b_syn_topgrp = sgl_id;
|
||||
! if (source ? do_source(eap->arg, FALSE, FALSE) == FAIL
|
||||
! : source_runtime(eap->arg, DOSO_NONE) == FAIL)
|
||||
EMSG2(_(e_notopen), eap->arg);
|
||||
curbuf->b_syn_topgrp = prev_toplvl_grp;
|
||||
current_syn_inc_tag = prev_syn_inc_tag;
|
||||
--- 4460,4467 ----
|
||||
current_syn_inc_tag = ++running_syn_inc_tag;
|
||||
prev_toplvl_grp = curbuf->b_syn_topgrp;
|
||||
curbuf->b_syn_topgrp = sgl_id;
|
||||
! if (source ? do_source(eap->arg, FALSE, DOSO_NONE) == FAIL
|
||||
! : source_runtime(eap->arg, TRUE) == FAIL)
|
||||
EMSG2(_(e_notopen), eap->arg);
|
||||
curbuf->b_syn_topgrp = prev_toplvl_grp;
|
||||
current_syn_inc_tag = prev_syn_inc_tag;
|
||||
*** ../vim-7.1.012/src/version.c Tue Jun 19 20:56:52 2007
|
||||
--- src/version.c Thu Jun 28 11:58:25 2007
|
||||
***************
|
||||
*** 668,669 ****
|
||||
--- 668,671 ----
|
||||
{ /* Add new patch number below this line */
|
||||
+ /**/
|
||||
+ 13,
|
||||
/**/
|
||||
|
||||
--
|
||||
MORTICIAN: What?
|
||||
CUSTOMER: Nothing -- here's your nine pence.
|
||||
DEAD PERSON: I'm not dead!
|
||||
MORTICIAN: Here -- he says he's not dead!
|
||||
CUSTOMER: Yes, he is.
|
||||
DEAD PERSON: I'm not!
|
||||
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.1.014
46
7.1.014
@ -1,46 +0,0 @@
|
||||
To: vim-dev@vim.org
|
||||
Subject: patch 7.1.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.1.014
|
||||
Problem: Crash when doing C indenting. (Chris Monson)
|
||||
Solution: Obtain the current line again after invoking cin_islabel().
|
||||
Files: src/edit.c
|
||||
|
||||
|
||||
*** ../vim-7.1.013/src/edit.c Thu May 10 20:44:18 2007
|
||||
--- src/edit.c Wed Jun 20 18:25:54 2007
|
||||
***************
|
||||
*** 7215,7220 ****
|
||||
--- 7215,7222 ----
|
||||
p = ml_get_curline();
|
||||
if (cin_iscase(p) || cin_isscopedecl(p) || cin_islabel(30))
|
||||
return TRUE;
|
||||
+ /* Need to get the line again after cin_islabel(). */
|
||||
+ p = ml_get_curline();
|
||||
if (curwin->w_cursor.col > 2
|
||||
&& p[curwin->w_cursor.col - 1] == ':'
|
||||
&& p[curwin->w_cursor.col - 2] == ':')
|
||||
*** ../vim-7.1.013/src/version.c Thu Jun 28 11:59:13 2007
|
||||
--- src/version.c Thu Jun 28 12:26:52 2007
|
||||
***************
|
||||
*** 668,669 ****
|
||||
--- 668,671 ----
|
||||
{ /* Add new patch number below this line */
|
||||
+ /**/
|
||||
+ 14,
|
||||
/**/
|
||||
|
||||
--
|
||||
Have you heard about the new Barbie doll? It's called Divorce
|
||||
Barbie. It comes with all of Ken's stuff.
|
||||
|
||||
/// 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.1.015
97
7.1.015
@ -1,97 +0,0 @@
|
||||
To: vim-dev@vim.org
|
||||
Subject: patch 7.1.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.1.015
|
||||
Problem: MzScheme interface: current-library-collection-paths produces no
|
||||
list. Interface doesn't build on a Mac.
|
||||
Solution: Use a list instead of a pair. (Bernhard Fisseni) Use "-framework"
|
||||
argument for MZSCHEME_LIBS in configure.
|
||||
Files: src/configure.in, src/if_mzsch.c, src/auto/configure
|
||||
|
||||
|
||||
*** ../vim-7.1.014/src/configure.in Sat May 12 16:30:49 2007
|
||||
--- src/configure.in Sun Jun 10 16:47:43 2007
|
||||
***************
|
||||
*** 423,429 ****
|
||||
fi
|
||||
|
||||
if test "X$vi_cv_path_mzscheme_pfx" != "X"; then
|
||||
! if test -f "${vi_cv_path_mzscheme_pfx}/lib/libmzgc.a"; then
|
||||
MZSCHEME_LIBS="${vi_cv_path_mzscheme_pfx}/lib/libmzscheme.a ${vi_cv_path_mzscheme_pfx}/lib/libmzgc.a"
|
||||
else
|
||||
MZSCHEME_LIBS="-L${vi_cv_path_mzscheme_pfx}/lib -lmzscheme -lmzgc"
|
||||
--- 423,431 ----
|
||||
fi
|
||||
|
||||
if test "X$vi_cv_path_mzscheme_pfx" != "X"; then
|
||||
! if test "x$MACOSX" = "xyes"; then
|
||||
! MZSCHEME_LIBS="-framework PLT_MzScheme"
|
||||
! elif test -f "${vi_cv_path_mzscheme_pfx}/lib/libmzgc.a"; then
|
||||
MZSCHEME_LIBS="${vi_cv_path_mzscheme_pfx}/lib/libmzscheme.a ${vi_cv_path_mzscheme_pfx}/lib/libmzgc.a"
|
||||
else
|
||||
MZSCHEME_LIBS="-L${vi_cv_path_mzscheme_pfx}/lib -lmzscheme -lmzgc"
|
||||
*** ../vim-7.1.014/src/if_mzsch.c Sat May 12 17:29:20 2007
|
||||
--- src/if_mzsch.c Sun Jun 10 16:39:51 2007
|
||||
***************
|
||||
*** 773,780 ****
|
||||
#ifdef MZSCHEME_COLLECTS
|
||||
/* setup 'current-library-collection-paths' parameter */
|
||||
scheme_set_param(scheme_config, MZCONFIG_COLLECTION_PATHS,
|
||||
! scheme_make_pair(scheme_make_string(MZSCHEME_COLLECTS),
|
||||
! scheme_null));
|
||||
#endif
|
||||
#ifdef HAVE_SANDBOX
|
||||
/* setup sandbox guards */
|
||||
--- 773,779 ----
|
||||
#ifdef MZSCHEME_COLLECTS
|
||||
/* setup 'current-library-collection-paths' parameter */
|
||||
scheme_set_param(scheme_config, MZCONFIG_COLLECTION_PATHS,
|
||||
! scheme_build_list(0, scheme_make_string(MZSCHEME_COLLECTS)));
|
||||
#endif
|
||||
#ifdef HAVE_SANDBOX
|
||||
/* setup sandbox guards */
|
||||
*** ../vim-7.1.014/src/auto/configure Sat May 12 16:23:27 2007
|
||||
--- src/auto/configure Sun Jun 10 16:49:58 2007
|
||||
***************
|
||||
*** 3843,3849 ****
|
||||
fi
|
||||
|
||||
if test "X$vi_cv_path_mzscheme_pfx" != "X"; then
|
||||
! if test -f "${vi_cv_path_mzscheme_pfx}/lib/libmzgc.a"; then
|
||||
MZSCHEME_LIBS="${vi_cv_path_mzscheme_pfx}/lib/libmzscheme.a ${vi_cv_path_mzscheme_pfx}/lib/libmzgc.a"
|
||||
else
|
||||
MZSCHEME_LIBS="-L${vi_cv_path_mzscheme_pfx}/lib -lmzscheme -lmzgc"
|
||||
--- 3843,3851 ----
|
||||
fi
|
||||
|
||||
if test "X$vi_cv_path_mzscheme_pfx" != "X"; then
|
||||
! if test "x$MACOSX" = "xyes"; then
|
||||
! MZSCHEME_LIBS="-framework PLT_MzScheme"
|
||||
! elif test -f "${vi_cv_path_mzscheme_pfx}/lib/libmzgc.a"; then
|
||||
MZSCHEME_LIBS="${vi_cv_path_mzscheme_pfx}/lib/libmzscheme.a ${vi_cv_path_mzscheme_pfx}/lib/libmzgc.a"
|
||||
else
|
||||
MZSCHEME_LIBS="-L${vi_cv_path_mzscheme_pfx}/lib -lmzscheme -lmzgc"
|
||||
*** ../vim-7.1.014/src/version.c Thu Jun 28 12:44:56 2007
|
||||
--- src/version.c Thu Jun 28 13:00:52 2007
|
||||
***************
|
||||
*** 668,669 ****
|
||||
--- 668,671 ----
|
||||
{ /* Add new patch number below this line */
|
||||
+ /**/
|
||||
+ 15,
|
||||
/**/
|
||||
|
||||
--
|
||||
You know you use Vim too much when you have this alias in your
|
||||
~/.bashrc file: alias :e=/bin/vim (Eljay Love-Jensen)
|
||||
|
||||
/// 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 ///
|
72
7.1.016
72
7.1.016
@ -1,72 +0,0 @@
|
||||
To: vim-dev@vim.org
|
||||
Subject: patch 7.1.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.1.016 (after patch 7.1.012)
|
||||
Problem: Error message about setting 'diff' to a string.
|
||||
Solution: Don't pass an empty string to set_option_value() when setting
|
||||
'diff'.
|
||||
Files: src/quickfix.c, src/popupmnu.c
|
||||
|
||||
|
||||
*** ../vim-7.1.015/src/quickfix.c Sun Feb 4 02:58:00 2007
|
||||
--- src/quickfix.c Thu Jun 28 18:56:16 2007
|
||||
***************
|
||||
*** 2331,2337 ****
|
||||
set_option_value((char_u *)"bt", 0L, (char_u *)"quickfix",
|
||||
OPT_LOCAL);
|
||||
set_option_value((char_u *)"bh", 0L, (char_u *)"wipe", OPT_LOCAL);
|
||||
! set_option_value((char_u *)"diff", 0L, (char_u *)"", OPT_LOCAL);
|
||||
}
|
||||
|
||||
/* Only set the height when still in the same tab page and there is no
|
||||
--- 2331,2337 ----
|
||||
set_option_value((char_u *)"bt", 0L, (char_u *)"quickfix",
|
||||
OPT_LOCAL);
|
||||
set_option_value((char_u *)"bh", 0L, (char_u *)"wipe", OPT_LOCAL);
|
||||
! set_option_value((char_u *)"diff", 0L, NULL, OPT_LOCAL);
|
||||
}
|
||||
|
||||
/* Only set the height when still in the same tab page and there is no
|
||||
*** ../vim-7.1.015/src/popupmnu.c Tue Mar 27 12:42:05 2007
|
||||
--- src/popupmnu.c Thu Jun 28 19:00:51 2007
|
||||
***************
|
||||
*** 466,472 ****
|
||||
set_option_value((char_u *)"bh", 0L,
|
||||
(char_u *)"wipe", OPT_LOCAL);
|
||||
set_option_value((char_u *)"diff", 0L,
|
||||
! (char_u *)"", OPT_LOCAL);
|
||||
}
|
||||
}
|
||||
if (res == OK)
|
||||
--- 466,472 ----
|
||||
set_option_value((char_u *)"bh", 0L,
|
||||
(char_u *)"wipe", OPT_LOCAL);
|
||||
set_option_value((char_u *)"diff", 0L,
|
||||
! NULL, OPT_LOCAL);
|
||||
}
|
||||
}
|
||||
if (res == OK)
|
||||
*** ../vim-7.1.015/src/version.c Thu Jun 28 13:02:22 2007
|
||||
--- src/version.c Thu Jun 28 21:20:20 2007
|
||||
***************
|
||||
*** 668,669 ****
|
||||
--- 668,671 ----
|
||||
{ /* Add new patch number below this line */
|
||||
+ /**/
|
||||
+ 16,
|
||||
/**/
|
||||
|
||||
--
|
||||
We do not stumble over mountains, but over molehills.
|
||||
Confucius
|
||||
|
||||
/// 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 ///
|
212
7.1.017
212
7.1.017
@ -1,212 +0,0 @@
|
||||
To: vim-dev@vim.org
|
||||
Subject: patch 7.1.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.1.017
|
||||
Problem: ":confirm w" does give a prompt when 'readonly' is set, but not
|
||||
when the file permissions are read-only. (Michael Schaap)
|
||||
Solution: Provide a dialog in both situations. (Chris Lubinski)
|
||||
Files: src/ex_cmds.c, src/fileio.c, src/proto/fileio.pro
|
||||
|
||||
|
||||
*** ../vim-7.1.016/src/ex_cmds.c Tue Jun 19 11:54:23 2007
|
||||
--- src/ex_cmds.c Tue Jun 19 22:37:25 2007
|
||||
***************
|
||||
*** 2912,2933 ****
|
||||
}
|
||||
|
||||
/*
|
||||
! * Check if a buffer is read-only. Ask for overruling in a dialog.
|
||||
! * Return TRUE and give an error message when the buffer is readonly.
|
||||
*/
|
||||
static int
|
||||
check_readonly(forceit, buf)
|
||||
int *forceit;
|
||||
buf_T *buf;
|
||||
{
|
||||
! if (!*forceit && buf->b_p_ro)
|
||||
{
|
||||
#if defined(FEAT_GUI_DIALOG) || defined(FEAT_CON_DIALOG)
|
||||
if ((p_confirm || cmdmod.confirm) && buf->b_fname != NULL)
|
||||
{
|
||||
char_u buff[IOSIZE];
|
||||
|
||||
! dialog_msg(buff, _("'readonly' option is set for \"%s\".\nDo you wish to write anyway?"),
|
||||
buf->b_fname);
|
||||
|
||||
if (vim_dialog_yesno(VIM_QUESTION, NULL, buff, 2) == VIM_YES)
|
||||
--- 2912,2946 ----
|
||||
}
|
||||
|
||||
/*
|
||||
! * Check if a buffer is read-only (either 'readonly' option is set or file is
|
||||
! * read-only). Ask for overruling in a dialog. Return TRUE and give an error
|
||||
! * message when the buffer is readonly.
|
||||
*/
|
||||
static int
|
||||
check_readonly(forceit, buf)
|
||||
int *forceit;
|
||||
buf_T *buf;
|
||||
{
|
||||
! struct stat st;
|
||||
!
|
||||
! /* Handle a file being readonly when the 'readonly' option is set or when
|
||||
! * the file exists and permissions are read-only.
|
||||
! * We will send 0777 to check_file_readonly(), as the "perm" variable is
|
||||
! * important for device checks but not here. */
|
||||
! if (!*forceit && (buf->b_p_ro
|
||||
! || (mch_stat((char *)buf->b_ffname, &st) >= 0
|
||||
! && check_file_readonly(buf->b_ffname, 0777))))
|
||||
{
|
||||
#if defined(FEAT_GUI_DIALOG) || defined(FEAT_CON_DIALOG)
|
||||
if ((p_confirm || cmdmod.confirm) && buf->b_fname != NULL)
|
||||
{
|
||||
char_u buff[IOSIZE];
|
||||
|
||||
! if (buf->b_p_ro)
|
||||
! dialog_msg(buff, _("'readonly' option is set for \"%s\".\nDo you wish to write anyway?"),
|
||||
! buf->b_fname);
|
||||
! else
|
||||
! dialog_msg(buff, _("File permissions of \"%s\" are read-only.\nIt may still be possible to write it.\nDo you wish to try?"),
|
||||
buf->b_fname);
|
||||
|
||||
if (vim_dialog_yesno(VIM_QUESTION, NULL, buff, 2) == VIM_YES)
|
||||
***************
|
||||
*** 2941,2949 ****
|
||||
--- 2954,2967 ----
|
||||
}
|
||||
else
|
||||
#endif
|
||||
+ if (buf->b_p_ro)
|
||||
EMSG(_(e_readonly));
|
||||
+ else
|
||||
+ EMSG2(_("E505: \"%s\" is read-only (add ! to override)"),
|
||||
+ buf->b_fname);
|
||||
return TRUE;
|
||||
}
|
||||
+
|
||||
return FALSE;
|
||||
}
|
||||
|
||||
*** ../vim-7.1.016/src/fileio.c Thu May 10 19:32:17 2007
|
||||
--- src/fileio.c Thu Jun 28 21:54:18 2007
|
||||
***************
|
||||
*** 424,430 ****
|
||||
*/
|
||||
if (!p_odev && mch_nodetype(fname) == NODE_WRITABLE)
|
||||
{
|
||||
! filemess(curbuf, fname, (char_u *)_("is a device (disabled with 'opendevice' option"), 0);
|
||||
msg_end();
|
||||
msg_scroll = msg_save;
|
||||
return FAIL;
|
||||
--- 424,430 ----
|
||||
*/
|
||||
if (!p_odev && mch_nodetype(fname) == NODE_WRITABLE)
|
||||
{
|
||||
! filemess(curbuf, fname, (char_u *)_("is a device (disabled with 'opendevice' option)"), 0);
|
||||
msg_end();
|
||||
msg_scroll = msg_save;
|
||||
return FAIL;
|
||||
***************
|
||||
*** 2734,2739 ****
|
||||
--- 2734,2765 ----
|
||||
#endif
|
||||
|
||||
/*
|
||||
+ * Return TRUE if a file appears to be read-only from the file permissions.
|
||||
+ */
|
||||
+ int
|
||||
+ check_file_readonly(fname, perm)
|
||||
+ char_u *fname; /* full path to file */
|
||||
+ int perm; /* known permissions on file */
|
||||
+ {
|
||||
+ #ifndef USE_MCH_ACCESS
|
||||
+ int fd = 0;
|
||||
+ #endif
|
||||
+
|
||||
+ return (
|
||||
+ #ifdef USE_MCH_ACCESS
|
||||
+ # ifdef UNIX
|
||||
+ (perm & 0222) == 0 ||
|
||||
+ # endif
|
||||
+ mch_access((char *)fname, W_OK)
|
||||
+ #else
|
||||
+ (fd = mch_open((char *)fname, O_RDWR | O_EXTRA, 0)) < 0
|
||||
+ ? TRUE : (close(fd), FALSE)
|
||||
+ #endif
|
||||
+ );
|
||||
+ }
|
||||
+
|
||||
+
|
||||
+ /*
|
||||
* buf_write() - write to file "fname" lines "start" through "end"
|
||||
*
|
||||
* We do our own buffering here because fwrite() is so slow.
|
||||
***************
|
||||
*** 3219,3235 ****
|
||||
* Check if the file is really writable (when renaming the file to
|
||||
* make a backup we won't discover it later).
|
||||
*/
|
||||
! file_readonly = (
|
||||
! # ifdef USE_MCH_ACCESS
|
||||
! # ifdef UNIX
|
||||
! (perm & 0222) == 0 ||
|
||||
! # endif
|
||||
! mch_access((char *)fname, W_OK)
|
||||
! # else
|
||||
! (fd = mch_open((char *)fname, O_RDWR | O_EXTRA, 0)) < 0
|
||||
! ? TRUE : (close(fd), FALSE)
|
||||
! # endif
|
||||
! );
|
||||
if (!forceit && file_readonly)
|
||||
{
|
||||
if (vim_strchr(p_cpo, CPO_FWRITE) != NULL)
|
||||
--- 3245,3252 ----
|
||||
* Check if the file is really writable (when renaming the file to
|
||||
* make a backup we won't discover it later).
|
||||
*/
|
||||
! file_readonly = check_file_readonly(fname, (int)perm);
|
||||
!
|
||||
if (!forceit && file_readonly)
|
||||
{
|
||||
if (vim_strchr(p_cpo, CPO_FWRITE) != NULL)
|
||||
*** ../vim-7.1.016/src/proto/fileio.pro Sat May 5 19:59:00 2007
|
||||
--- src/proto/fileio.pro Thu Jun 28 21:09:59 2007
|
||||
***************
|
||||
*** 2,7 ****
|
||||
--- 2,8 ----
|
||||
void filemess __ARGS((buf_T *buf, char_u *name, char_u *s, int attr));
|
||||
int readfile __ARGS((char_u *fname, char_u *sfname, linenr_T from, linenr_T lines_to_skip, linenr_T lines_to_read, exarg_T *eap, int flags));
|
||||
int prep_exarg __ARGS((exarg_T *eap, buf_T *buf));
|
||||
+ int check_file_readonly __ARGS((char_u *fname, int perm));
|
||||
int buf_write __ARGS((buf_T *buf, char_u *fname, char_u *sfname, linenr_T start, linenr_T end, exarg_T *eap, int append, int forceit, int reset_changed, int filtering));
|
||||
void msg_add_fname __ARGS((buf_T *buf, char_u *fname));
|
||||
void msg_add_lines __ARGS((int insert_space, long lnum, long nchars));
|
||||
*** ../vim-7.1.016/src/version.c Thu Jun 28 21:23:52 2007
|
||||
--- src/version.c Thu Jun 28 21:49:29 2007
|
||||
***************
|
||||
*** 668,669 ****
|
||||
--- 668,671 ----
|
||||
{ /* Add new patch number below this line */
|
||||
+ /**/
|
||||
+ 17,
|
||||
/**/
|
||||
|
||||
--
|
||||
CUSTOMER: Well, can you hang around a couple of minutes? He won't be
|
||||
long.
|
||||
MORTICIAN: Naaah, I got to go on to Robinson's -- they've lost nine today.
|
||||
CUSTOMER: Well, when is your next round?
|
||||
MORTICIAN: Thursday.
|
||||
DEAD PERSON: I think I'll go for a walk.
|
||||
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 ///
|
60
7.1.018
60
7.1.018
@ -1,60 +0,0 @@
|
||||
To: vim-dev@vim.org
|
||||
Subject: patch 7.1.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.1.018
|
||||
Problem: When 'virtualedit' is set a "p" of a block just past the end of
|
||||
the line inserts before the cursor. (Engelke)
|
||||
Solution: Check for the cursor being just after the line (Chris Lubinski)
|
||||
Files: src/ops.c
|
||||
|
||||
|
||||
*** ../vim-7.1.017/src/ops.c Thu May 10 20:34:55 2007
|
||||
--- src/ops.c Tue Jun 19 22:40:45 2007
|
||||
***************
|
||||
*** 3404,3410 ****
|
||||
|
||||
#ifdef FEAT_VIRTUALEDIT
|
||||
col += curwin->w_cursor.coladd;
|
||||
! if (ve_flags == VE_ALL && curwin->w_cursor.coladd > 0)
|
||||
{
|
||||
if (dir == FORWARD && c == NUL)
|
||||
++col;
|
||||
--- 3404,3412 ----
|
||||
|
||||
#ifdef FEAT_VIRTUALEDIT
|
||||
col += curwin->w_cursor.coladd;
|
||||
! if (ve_flags == VE_ALL
|
||||
! && (curwin->w_cursor.coladd > 0
|
||||
! || endcol2 == curwin->w_cursor.col))
|
||||
{
|
||||
if (dir == FORWARD && c == NUL)
|
||||
++col;
|
||||
*** ../vim-7.1.017/src/version.c Thu Jun 28 21:57:08 2007
|
||||
--- src/version.c Thu Jun 28 22:12:49 2007
|
||||
***************
|
||||
*** 668,669 ****
|
||||
--- 668,671 ----
|
||||
{ /* Add new patch number below this line */
|
||||
+ /**/
|
||||
+ 18,
|
||||
/**/
|
||||
|
||||
--
|
||||
[clop clop]
|
||||
MORTICIAN: Who's that then?
|
||||
CUSTOMER: I don't know.
|
||||
MORTICIAN: Must be a king.
|
||||
CUSTOMER: Why?
|
||||
MORTICIAN: He hasn't got shit all over him.
|
||||
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 ///
|
55
7.1.019
55
7.1.019
@ -1,55 +0,0 @@
|
||||
To: vim-dev@vim.org
|
||||
Subject: patch 7.1.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.1.019
|
||||
Problem: ":py" asks for an argument, ":py asd" then gives the error that
|
||||
":py" isn't implemented. Should already happen for ":py".
|
||||
Solution: Compare with ex_script_ni. (Chris Lubinski)
|
||||
Files: src/ex_docmd.c
|
||||
|
||||
|
||||
*** ../vim-7.1.018/src/ex_docmd.c Thu May 10 18:53:03 2007
|
||||
--- src/ex_docmd.c Sat Jun 23 13:36:37 2007
|
||||
***************
|
||||
*** 2118,2124 ****
|
||||
#ifdef FEAT_USR_CMDS
|
||||
!USER_CMDIDX(ea.cmdidx) &&
|
||||
#endif
|
||||
! cmdnames[ea.cmdidx].cmd_func == ex_ni);
|
||||
|
||||
#ifndef FEAT_EVAL
|
||||
/*
|
||||
--- 2118,2125 ----
|
||||
#ifdef FEAT_USR_CMDS
|
||||
!USER_CMDIDX(ea.cmdidx) &&
|
||||
#endif
|
||||
! (cmdnames[ea.cmdidx].cmd_func == ex_ni
|
||||
! || cmdnames[ea.cmdidx].cmd_func == ex_script_ni));
|
||||
|
||||
#ifndef FEAT_EVAL
|
||||
/*
|
||||
*** ../vim-7.1.018/src/version.c Thu Jun 28 22:14:28 2007
|
||||
--- src/version.c Thu Jul 5 09:48:11 2007
|
||||
***************
|
||||
*** 668,669 ****
|
||||
--- 668,671 ----
|
||||
{ /* Add new patch number below this line */
|
||||
+ /**/
|
||||
+ 19,
|
||||
/**/
|
||||
|
||||
--
|
||||
MARTHA'S WAY: Don't throw out all that leftover wine. Freeze into ice cubes
|
||||
for future use in casseroles and sauces.
|
||||
MY WAY: What leftover wine?
|
||||
|
||||
/// 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 ///
|
115
7.1.020
115
7.1.020
@ -1,115 +0,0 @@
|
||||
To: vim-dev@vim.org
|
||||
Subject: patch 7.1.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.1.020
|
||||
Problem: Reading from uninitialized memory when using a dialog. (Dominique
|
||||
Pelle)
|
||||
Solution: In msg_show_console_dialog() append a NUL after every appended
|
||||
character.
|
||||
Files: src/message.c
|
||||
|
||||
|
||||
*** ../vim-7.1.019/src/message.c Thu May 10 18:49:39 2007
|
||||
--- src/message.c Sun Jul 1 12:06:52 2007
|
||||
***************
|
||||
*** 3456,3466 ****
|
||||
/* advance to next hotkey and set default hotkey */
|
||||
#ifdef FEAT_MBYTE
|
||||
if (has_mbyte)
|
||||
! hotkp += (*mb_ptr2len)(hotkp);
|
||||
else
|
||||
#endif
|
||||
++hotkp;
|
||||
! (void)copy_char(r + 1, hotkp, TRUE);
|
||||
if (dfltbutton)
|
||||
--dfltbutton;
|
||||
|
||||
--- 3456,3466 ----
|
||||
/* advance to next hotkey and set default hotkey */
|
||||
#ifdef FEAT_MBYTE
|
||||
if (has_mbyte)
|
||||
! hotkp += STRLEN(hotkp);
|
||||
else
|
||||
#endif
|
||||
++hotkp;
|
||||
! hotkp[copy_char(r + 1, hotkp, TRUE)] = NUL;
|
||||
if (dfltbutton)
|
||||
--dfltbutton;
|
||||
|
||||
***************
|
||||
*** 3493,3499 ****
|
||||
*msgp++ = (dfltbutton == 1) ? ']' : ')';
|
||||
|
||||
/* redefine hotkey */
|
||||
! (void)copy_char(r, hotkp, TRUE);
|
||||
}
|
||||
}
|
||||
else
|
||||
--- 3493,3499 ----
|
||||
*msgp++ = (dfltbutton == 1) ? ']' : ')';
|
||||
|
||||
/* redefine hotkey */
|
||||
! hotkp[copy_char(r, hotkp, TRUE)] = NUL;
|
||||
}
|
||||
}
|
||||
else
|
||||
***************
|
||||
*** 3519,3526 ****
|
||||
*msgp++ = ':';
|
||||
*msgp++ = ' ';
|
||||
*msgp = NUL;
|
||||
- mb_ptr_adv(hotkp);
|
||||
- *hotkp = NUL;
|
||||
}
|
||||
else
|
||||
{
|
||||
--- 3519,3524 ----
|
||||
***************
|
||||
*** 3555,3562 ****
|
||||
msgp = confirm_msg + 1 + STRLEN(message);
|
||||
hotkp = hotk;
|
||||
|
||||
! /* define first default hotkey */
|
||||
! (void)copy_char(buttons, hotkp, TRUE);
|
||||
|
||||
/* Remember where the choices start, displaying starts here when
|
||||
* "hotkp" typed at the more prompt. */
|
||||
--- 3553,3561 ----
|
||||
msgp = confirm_msg + 1 + STRLEN(message);
|
||||
hotkp = hotk;
|
||||
|
||||
! /* Define first default hotkey. Keep the hotkey string NUL
|
||||
! * terminated to avoid reading past the end. */
|
||||
! hotkp[copy_char(buttons, hotkp, TRUE)] = NUL;
|
||||
|
||||
/* Remember where the choices start, displaying starts here when
|
||||
* "hotkp" typed at the more prompt. */
|
||||
*** ../vim-7.1.019/src/version.c Thu Jul 5 09:53:20 2007
|
||||
--- src/version.c Thu Jul 5 10:09:34 2007
|
||||
***************
|
||||
*** 668,669 ****
|
||||
--- 668,671 ----
|
||||
{ /* Add new patch number below this line */
|
||||
+ /**/
|
||||
+ 20,
|
||||
/**/
|
||||
|
||||
--
|
||||
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 ///
|
92
7.1.021
92
7.1.021
@ -1,92 +0,0 @@
|
||||
To: vim-dev@vim.org
|
||||
Subject: patch 7.1.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.1.021 (after 7.1.015)
|
||||
Problem: Mzscheme interface doesn't compile on Win32.
|
||||
Solution: Fix the problem that 7.1.015 fixed in a better way. (Sergey Khorev)
|
||||
Files: src/if_mzsch.c
|
||||
|
||||
|
||||
*** ../vim-7.1.020/src/if_mzsch.c Thu Jun 28 13:02:22 2007
|
||||
--- src/if_mzsch.c Sun Jul 1 18:44:49 2007
|
||||
***************
|
||||
*** 308,313 ****
|
||||
--- 308,315 ----
|
||||
static Scheme_Config *(*dll_scheme_current_config)(void);
|
||||
static Scheme_Object *(*dll_scheme_char_string_to_byte_string)
|
||||
(Scheme_Object *s);
|
||||
+ static Scheme_Object *(*dll_scheme_char_string_to_path)
|
||||
+ (Scheme_Object *s);
|
||||
# endif
|
||||
|
||||
/* arrays are imported directly */
|
||||
***************
|
||||
*** 398,403 ****
|
||||
--- 400,407 ----
|
||||
# define scheme_current_config dll_scheme_current_config
|
||||
# define scheme_char_string_to_byte_string \
|
||||
dll_scheme_char_string_to_byte_string
|
||||
+ # define scheme_char_string_to_path \
|
||||
+ dll_scheme_char_string_to_path
|
||||
# endif
|
||||
|
||||
typedef struct
|
||||
***************
|
||||
*** 498,503 ****
|
||||
--- 502,509 ----
|
||||
{"scheme_current_config", (void **)&dll_scheme_current_config},
|
||||
{"scheme_char_string_to_byte_string",
|
||||
(void **)&dll_scheme_char_string_to_byte_string},
|
||||
+ {"scheme_char_string_to_path",
|
||||
+ (void **)&dll_scheme_char_string_to_path},
|
||||
# endif
|
||||
{NULL, NULL}};
|
||||
|
||||
***************
|
||||
*** 773,779 ****
|
||||
#ifdef MZSCHEME_COLLECTS
|
||||
/* setup 'current-library-collection-paths' parameter */
|
||||
scheme_set_param(scheme_config, MZCONFIG_COLLECTION_PATHS,
|
||||
! scheme_build_list(0, scheme_make_string(MZSCHEME_COLLECTS)));
|
||||
#endif
|
||||
#ifdef HAVE_SANDBOX
|
||||
/* setup sandbox guards */
|
||||
--- 779,793 ----
|
||||
#ifdef MZSCHEME_COLLECTS
|
||||
/* setup 'current-library-collection-paths' parameter */
|
||||
scheme_set_param(scheme_config, MZCONFIG_COLLECTION_PATHS,
|
||||
! scheme_make_pair(
|
||||
! # if MZSCHEME_VERSION_MAJOR >= 299
|
||||
! scheme_char_string_to_path(
|
||||
! scheme_byte_string_to_char_string(
|
||||
! scheme_make_byte_string(MZSCHEME_COLLECTS))),
|
||||
! # else
|
||||
! scheme_make_string(MZSCHEME_COLLECTS),
|
||||
! # endif
|
||||
! scheme_null));
|
||||
#endif
|
||||
#ifdef HAVE_SANDBOX
|
||||
/* setup sandbox guards */
|
||||
*** ../vim-7.1.020/src/version.c Thu Jul 5 10:10:29 2007
|
||||
--- src/version.c Fri Jul 6 19:41:04 2007
|
||||
***************
|
||||
*** 668,669 ****
|
||||
--- 668,671 ----
|
||||
{ /* Add new patch number below this line */
|
||||
+ /**/
|
||||
+ 21,
|
||||
/**/
|
||||
|
||||
--
|
||||
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 ///
|
67
7.1.022
67
7.1.022
@ -1,67 +0,0 @@
|
||||
To: vim-dev@vim.org
|
||||
Subject: patch 7.1.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.1.022
|
||||
Problem: When setting 'keymap' twice the b:keymap_name variable isn't set.
|
||||
(Milan Berta)
|
||||
Solution: Don't unlet b:keymap_name for ":loadkeymap". (Martin Toft)
|
||||
Files: src/digraph.c
|
||||
|
||||
|
||||
*** ../vim-7.1.021/src/digraph.c Wed May 3 00:07:11 2006
|
||||
--- src/digraph.c Mon Jul 2 21:24:30 2007
|
||||
***************
|
||||
*** 2349,2356 ****
|
||||
|
||||
if (*curbuf->b_p_keymap == NUL)
|
||||
{
|
||||
! /* Stop any active keymap and clear the table. */
|
||||
keymap_unload();
|
||||
}
|
||||
else
|
||||
{
|
||||
--- 2349,2358 ----
|
||||
|
||||
if (*curbuf->b_p_keymap == NUL)
|
||||
{
|
||||
! /* Stop any active keymap and clear the table. Also remove
|
||||
! * b:keymap_unload, as no keymap is active now. */
|
||||
keymap_unload();
|
||||
+ do_cmdline_cmd((char_u *)"unlet! b:keymap_name");
|
||||
}
|
||||
else
|
||||
{
|
||||
***************
|
||||
*** 2500,2506 ****
|
||||
|
||||
ga_clear(&curbuf->b_kmap_ga);
|
||||
curbuf->b_kmap_state &= ~KEYMAP_LOADED;
|
||||
- do_cmdline_cmd((char_u *)"unlet! b:keymap_name");
|
||||
#ifdef FEAT_WINDOWS
|
||||
status_redraw_curbuf();
|
||||
#endif
|
||||
--- 2502,2507 ----
|
||||
*** ../vim-7.1.021/src/version.c Fri Jul 6 19:42:09 2007
|
||||
--- src/version.c Sat Jul 7 13:56:52 2007
|
||||
***************
|
||||
*** 668,669 ****
|
||||
--- 668,671 ----
|
||||
{ /* Add new patch number below this line */
|
||||
+ /**/
|
||||
+ 22,
|
||||
/**/
|
||||
|
||||
--
|
||||
If your life is a hard drive,
|
||||
Christ can be your backup.
|
||||
|
||||
/// 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.1.023
54
7.1.023
@ -1,54 +0,0 @@
|
||||
To: vim-dev@vim.org
|
||||
Subject: patch 7.1.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.1.023
|
||||
Problem: "dw" in a line with one character deletes the line. Vi and nvi
|
||||
don't do this. (Kjell Arne Rekaa)
|
||||
Solution: Check for one-character words especially.
|
||||
Files: src/search.c
|
||||
|
||||
|
||||
*** ../vim-7.1.022/src/search.c Tue Jun 19 12:58:55 2007
|
||||
--- src/search.c Thu Jul 5 21:18:55 2007
|
||||
***************
|
||||
*** 2795,2801 ****
|
||||
i = inc_cursor();
|
||||
if (i == -1 || (i >= 1 && last_line)) /* started at last char in file */
|
||||
return FAIL;
|
||||
! if (i == 1 && eol && count == 0) /* started at last char in line */
|
||||
return OK;
|
||||
|
||||
/*
|
||||
--- 2802,2808 ----
|
||||
i = inc_cursor();
|
||||
if (i == -1 || (i >= 1 && last_line)) /* started at last char in file */
|
||||
return FAIL;
|
||||
! if (i >= 1 && eol && count == 0) /* started at last char in line */
|
||||
return OK;
|
||||
|
||||
/*
|
||||
*** ../vim-7.1.022/src/version.c Sat Jul 7 13:57:39 2007
|
||||
--- src/version.c Tue Jul 10 12:35:36 2007
|
||||
***************
|
||||
*** 668,669 ****
|
||||
--- 668,671 ----
|
||||
{ /* Add new patch number below this line */
|
||||
+ /**/
|
||||
+ 23,
|
||||
/**/
|
||||
|
||||
--
|
||||
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 ///
|
47
7.1.024
47
7.1.024
@ -1,47 +0,0 @@
|
||||
To: vim-dev@vim.org
|
||||
Subject: patch 7.1.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.1.024
|
||||
Problem: Using a pointer that has become invalid. (Chris Monson)
|
||||
Solution: Obtain the line pointer again after we looked at another line.
|
||||
Files: src/search.c
|
||||
|
||||
|
||||
*** ../vim-7.1.023/src/search.c Tue Jul 10 12:36:51 2007
|
||||
--- src/search.c Thu Jul 5 21:18:55 2007
|
||||
***************
|
||||
*** 2124,2129 ****
|
||||
--- 2128,2136 ----
|
||||
else if (!backwards)
|
||||
inquote = TRUE;
|
||||
}
|
||||
+
|
||||
+ /* ml_get() only keeps one line, need to get linep again */
|
||||
+ linep = ml_get(pos.lnum);
|
||||
}
|
||||
}
|
||||
}
|
||||
*** ../vim-7.1.023/src/version.c Tue Jul 10 12:36:51 2007
|
||||
--- src/version.c Tue Jul 10 13:06:02 2007
|
||||
***************
|
||||
*** 668,669 ****
|
||||
--- 668,671 ----
|
||||
{ /* Add new patch number below this line */
|
||||
+ /**/
|
||||
+ 24,
|
||||
/**/
|
||||
|
||||
--
|
||||
Q: Why does /dev/null accept only integers?
|
||||
A: You can't sink a float.
|
||||
|
||||
/// 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 ///
|
72
7.1.025
72
7.1.025
@ -1,72 +0,0 @@
|
||||
To: vim-dev@vim.org
|
||||
Subject: patch 7.1.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.1.025
|
||||
Problem: search() and searchpos() don't use match under cursor at start of
|
||||
line when using 'bc' flags. (Viktor Kojouharov)
|
||||
Solution: Don't go to the previous line when the 'c' flag is present.
|
||||
Also fix that "j" doesn't move the cursor to the right column.
|
||||
Files: src/eval.c, src/search.c
|
||||
|
||||
|
||||
*** ../vim-7.1.024/src/eval.c Tue Jun 19 17:23:46 2007
|
||||
--- src/eval.c Thu Jul 5 21:16:31 2007
|
||||
***************
|
||||
*** 13925,13930 ****
|
||||
--- 13925,13932 ----
|
||||
/* If 'n' flag is used: restore cursor position. */
|
||||
if (flags & SP_NOMOVE)
|
||||
curwin->w_cursor = save_cursor;
|
||||
+ else
|
||||
+ curwin->w_set_curswant = TRUE;
|
||||
theend:
|
||||
p_ws = save_p_ws;
|
||||
|
||||
*** ../vim-7.1.024/src/search.c Tue Jul 10 13:07:08 2007
|
||||
--- src/search.c Thu Jul 5 21:18:55 2007
|
||||
***************
|
||||
*** 573,580 ****
|
||||
/*
|
||||
* Start searching in current line, unless searching backwards and
|
||||
* we're in column 0.
|
||||
*/
|
||||
! if (dir == BACKWARD && start_pos.col == 0)
|
||||
{
|
||||
lnum = pos->lnum - 1;
|
||||
at_first_line = FALSE;
|
||||
--- 573,584 ----
|
||||
/*
|
||||
* Start searching in current line, unless searching backwards and
|
||||
* we're in column 0.
|
||||
+ * If we are searching backwards, in column 0, and not including the
|
||||
+ * current position, gain some efficiency by skipping back a line.
|
||||
+ * Otherwise begin the search in the current line.
|
||||
*/
|
||||
! if (dir == BACKWARD && start_pos.col == 0
|
||||
! && (options & SEARCH_START) == 0)
|
||||
{
|
||||
lnum = pos->lnum - 1;
|
||||
at_first_line = FALSE;
|
||||
*** ../vim-7.1.024/src/version.c Tue Jul 10 13:07:08 2007
|
||||
--- src/version.c Tue Jul 10 13:26:13 2007
|
||||
***************
|
||||
*** 668,669 ****
|
||||
--- 668,671 ----
|
||||
{ /* Add new patch number below this line */
|
||||
+ /**/
|
||||
+ 25,
|
||||
/**/
|
||||
|
||||
--
|
||||
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 ///
|
55
7.1.026
55
7.1.026
@ -1,55 +0,0 @@
|
||||
To: vim-dev@vim.org
|
||||
Subject: patch 7.1.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.1.026
|
||||
Problem: "[p" doesn't work in Visual mode. (David Brown)
|
||||
Solution: Use checkclearop() instead of checkclearopq().
|
||||
Files: src/normal.c
|
||||
|
||||
|
||||
*** ../vim-7.1.025/src/normal.c Thu May 10 18:45:26 2007
|
||||
--- src/normal.c Wed Jul 4 21:16:36 2007
|
||||
***************
|
||||
*** 6379,6385 ****
|
||||
*/
|
||||
else if (cap->nchar == 'p' || cap->nchar == 'P')
|
||||
{
|
||||
! if (!checkclearopq(cap->oap))
|
||||
{
|
||||
prep_redo_cmd(cap);
|
||||
do_put(cap->oap->regname,
|
||||
--- 6379,6385 ----
|
||||
*/
|
||||
else if (cap->nchar == 'p' || cap->nchar == 'P')
|
||||
{
|
||||
! if (!checkclearop(cap->oap))
|
||||
{
|
||||
prep_redo_cmd(cap);
|
||||
do_put(cap->oap->regname,
|
||||
*** ../vim-7.1.025/src/version.c Tue Jul 10 13:27:46 2007
|
||||
--- src/version.c Tue Jul 10 14:01:52 2007
|
||||
***************
|
||||
*** 668,669 ****
|
||||
--- 668,671 ----
|
||||
{ /* Add new patch number below this line */
|
||||
+ /**/
|
||||
+ 26,
|
||||
/**/
|
||||
|
||||
--
|
||||
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 ///
|
120
7.1.027
120
7.1.027
@ -1,120 +0,0 @@
|
||||
To: vim-dev@vim.org
|
||||
Subject: patch 7.1.027
|
||||
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.1.027
|
||||
Problem: On Sun systems opening /dev/fd/N doesn't work, and they are used
|
||||
by process substitutions.
|
||||
Solution: Allow opening specific character special files for Sun systems.
|
||||
(Gary Johnson)
|
||||
Files: src/fileio.c, src/os_unix.h
|
||||
|
||||
|
||||
*** ../vim-7.1.026/src/fileio.c Thu Jun 28 21:57:08 2007
|
||||
--- src/fileio.c Mon Jul 9 11:19:50 2007
|
||||
***************
|
||||
*** 44,49 ****
|
||||
--- 44,53 ----
|
||||
/* Is there any system that doesn't have access()? */
|
||||
#define USE_MCH_ACCESS
|
||||
|
||||
+ #if defined(sun) && defined(S_ISCHR)
|
||||
+ # define OPEN_CHR_FILES
|
||||
+ static int is_dev_fd_file(char_u *fname);
|
||||
+ #endif
|
||||
#ifdef FEAT_MBYTE
|
||||
static char_u *next_fenc __ARGS((char_u **pp));
|
||||
# ifdef FEAT_EVAL
|
||||
***************
|
||||
*** 406,411 ****
|
||||
--- 410,419 ----
|
||||
# ifdef S_ISSOCK
|
||||
&& !S_ISSOCK(perm) /* ... or socket */
|
||||
# endif
|
||||
+ # ifdef OPEN_CHR_FILES
|
||||
+ && !(S_ISCHR(perm) && is_dev_fd_file(fname))
|
||||
+ /* ... or a character special file named /dev/fd/<n> */
|
||||
+ # endif
|
||||
)
|
||||
{
|
||||
if (S_ISDIR(perm))
|
||||
***************
|
||||
*** 2265,2270 ****
|
||||
--- 2273,2285 ----
|
||||
}
|
||||
# endif
|
||||
# endif
|
||||
+ # ifdef OPEN_CHR_FILES
|
||||
+ if (S_ISCHR(perm)) /* or character special */
|
||||
+ {
|
||||
+ STRCAT(IObuff, _("[character special]"));
|
||||
+ c = TRUE;
|
||||
+ }
|
||||
+ # endif
|
||||
#endif
|
||||
if (curbuf->b_p_ro)
|
||||
{
|
||||
***************
|
||||
*** 2463,2468 ****
|
||||
--- 2478,2502 ----
|
||||
return FAIL;
|
||||
return OK;
|
||||
}
|
||||
+
|
||||
+ #ifdef OPEN_CHR_FILES
|
||||
+ /*
|
||||
+ * Returns TRUE if the file name argument is of the form "/dev/fd/\d\+",
|
||||
+ * which is the name of files used for process substitution output by
|
||||
+ * some shells on some operating systems, e.g., bash on SunOS.
|
||||
+ * Do not accept "/dev/fd/[012]", opening these may hang Vim.
|
||||
+ */
|
||||
+ static int
|
||||
+ is_dev_fd_file(fname)
|
||||
+ char_u *fname;
|
||||
+ {
|
||||
+ return (STRNCMP(fname, "/dev/fd/", 8) == 0
|
||||
+ && VIM_ISDIGIT(fname[8])
|
||||
+ && *skipdigits(fname + 9) == NUL
|
||||
+ && (fname[9] != NUL
|
||||
+ || (fname[8] != '0' && fname[8] != '1' && fname[8] != '2')));
|
||||
+ }
|
||||
+ #endif
|
||||
|
||||
#ifdef FEAT_MBYTE
|
||||
|
||||
*** ../vim-7.1.026/src/os_unix.h Thu May 10 19:43:10 2007
|
||||
--- src/os_unix.h Sat Jul 7 13:08:56 2007
|
||||
***************
|
||||
*** 508,513 ****
|
||||
--- 508,516 ----
|
||||
#if !defined(S_ISFIFO) && defined(S_IFIFO)
|
||||
# define S_ISFIFO(m) (((m) & S_IFMT) == S_IFIFO)
|
||||
#endif
|
||||
+ #if !defined(S_ISCHR) && defined(S_IFCHR)
|
||||
+ # define S_ISCHR(m) (((m) & S_IFMT) == S_IFCHR)
|
||||
+ #endif
|
||||
|
||||
/* Note: Some systems need both string.h and strings.h (Savage). However,
|
||||
* some systems can't handle both, only use string.h in that case. */
|
||||
*** ../vim-7.1.026/src/version.c Tue Jul 10 14:02:51 2007
|
||||
--- src/version.c Tue Jul 10 17:00:43 2007
|
||||
***************
|
||||
*** 668,669 ****
|
||||
--- 668,671 ----
|
||||
{ /* Add new patch number below this line */
|
||||
+ /**/
|
||||
+ 27,
|
||||
/**/
|
||||
|
||||
--
|
||||
Every exit is an entrance into something else.
|
||||
|
||||
/// 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.1.028
71
7.1.028
@ -1,71 +0,0 @@
|
||||
To: vim-dev@vim.org
|
||||
Subject: patch 7.1.028
|
||||
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.1.028
|
||||
Problem: Can't use last search pattern for ":sort". (Brian McKee)
|
||||
Solution: When the pattern is emtpy use the last search pattern. (Martin
|
||||
Toft)
|
||||
Files: runtime/doc/change.txt, src/ex_cmds.c
|
||||
|
||||
|
||||
*** ../vim-7.1.027/runtime/doc/change.txt Sat May 12 16:10:12 2007
|
||||
--- runtime/doc/change.txt Tue Jul 10 11:30:56 2007
|
||||
***************
|
||||
*** 1571,1576 ****
|
||||
--- 1571,1580 ----
|
||||
in their original order, right before the sorted
|
||||
lines.
|
||||
|
||||
+ If {pattern} is empty (e.g. // is specified), the
|
||||
+ last search pattern is used. This allows trying out
|
||||
+ a pattern first.
|
||||
+
|
||||
Note that using ":sort" with ":global" doesn't sort the matching lines, it's
|
||||
quite useless.
|
||||
|
||||
*** ../vim-7.1.027/src/ex_cmds.c Thu Jun 28 21:57:08 2007
|
||||
--- src/ex_cmds.c Tue Jul 10 17:25:10 2007
|
||||
***************
|
||||
*** 408,414 ****
|
||||
goto sortend;
|
||||
}
|
||||
*s = NUL;
|
||||
! regmatch.regprog = vim_regcomp(p + 1, RE_MAGIC);
|
||||
if (regmatch.regprog == NULL)
|
||||
goto sortend;
|
||||
p = s; /* continue after the regexp */
|
||||
--- 408,418 ----
|
||||
goto sortend;
|
||||
}
|
||||
*s = NUL;
|
||||
! /* Use last search pattern if sort pattern is empty. */
|
||||
! if (s == p + 1 && last_search_pat() != NULL)
|
||||
! regmatch.regprog = vim_regcomp(last_search_pat(), RE_MAGIC);
|
||||
! else
|
||||
! regmatch.regprog = vim_regcomp(p + 1, RE_MAGIC);
|
||||
if (regmatch.regprog == NULL)
|
||||
goto sortend;
|
||||
p = s; /* continue after the regexp */
|
||||
*** ../vim-7.1.027/src/version.c Tue Jul 10 17:09:51 2007
|
||||
--- src/version.c Tue Jul 10 17:20:01 2007
|
||||
***************
|
||||
*** 668,669 ****
|
||||
--- 668,671 ----
|
||||
{ /* Add new patch number below this line */
|
||||
+ /**/
|
||||
+ 28,
|
||||
/**/
|
||||
|
||||
--
|
||||
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 ///
|
84
7.1.029
84
7.1.029
@ -1,84 +0,0 @@
|
||||
To: vim-dev@vim.org
|
||||
Subject: patch 7.1.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.1.029 (after 7.1.019)
|
||||
Problem: Can't compile when all interfaces are used. (Taylor Venable)
|
||||
Solution: Only check for ex_script_ni when it's defined.
|
||||
Files: src/ex_docmd.c
|
||||
|
||||
|
||||
*** ../vim-7.1.028/src/ex_docmd.c Thu Jul 5 09:53:20 2007
|
||||
--- src/ex_docmd.c Sun Jul 15 17:20:09 2007
|
||||
***************
|
||||
*** 133,138 ****
|
||||
--- 133,139 ----
|
||||
static void get_flags __ARGS((exarg_T *eap));
|
||||
#if !defined(FEAT_PERL) || !defined(FEAT_PYTHON) || !defined(FEAT_TCL) \
|
||||
|| !defined(FEAT_RUBY) || !defined(FEAT_MZSCHEME)
|
||||
+ # define HAVE_EX_SCRIPT_NI
|
||||
static void ex_script_ni __ARGS((exarg_T *eap));
|
||||
#endif
|
||||
static char_u *invalid_range __ARGS((exarg_T *eap));
|
||||
***************
|
||||
*** 2119,2125 ****
|
||||
!USER_CMDIDX(ea.cmdidx) &&
|
||||
#endif
|
||||
(cmdnames[ea.cmdidx].cmd_func == ex_ni
|
||||
! || cmdnames[ea.cmdidx].cmd_func == ex_script_ni));
|
||||
|
||||
#ifndef FEAT_EVAL
|
||||
/*
|
||||
--- 2120,2129 ----
|
||||
!USER_CMDIDX(ea.cmdidx) &&
|
||||
#endif
|
||||
(cmdnames[ea.cmdidx].cmd_func == ex_ni
|
||||
! #ifdef HAVE_EX_SCRIPT_NI
|
||||
! || cmdnames[ea.cmdidx].cmd_func == ex_script_ni
|
||||
! #endif
|
||||
! ));
|
||||
|
||||
#ifndef FEAT_EVAL
|
||||
/*
|
||||
***************
|
||||
*** 3998,4005 ****
|
||||
eap->errmsg = (char_u *)N_("E319: Sorry, the command is not available in this version");
|
||||
}
|
||||
|
||||
! #if !defined(FEAT_PERL) || !defined(FEAT_PYTHON) || !defined(FEAT_TCL) \
|
||||
! || !defined(FEAT_RUBY) || !defined(FEAT_MZSCHEME)
|
||||
/*
|
||||
* Function called for script command which is Not Implemented. NI!
|
||||
* Skips over ":perl <<EOF" constructs.
|
||||
--- 3999,4005 ----
|
||||
eap->errmsg = (char_u *)N_("E319: Sorry, the command is not available in this version");
|
||||
}
|
||||
|
||||
! #ifdef HAVE_EX_SCRIPT_NI
|
||||
/*
|
||||
* Function called for script command which is Not Implemented. NI!
|
||||
* Skips over ":perl <<EOF" constructs.
|
||||
*** ../vim-7.1.028/src/version.c Tue Jul 10 17:25:20 2007
|
||||
--- src/version.c Mon Jul 16 20:37:48 2007
|
||||
***************
|
||||
*** 668,669 ****
|
||||
--- 668,671 ----
|
||||
{ /* Add new patch number below this line */
|
||||
+ /**/
|
||||
+ 29,
|
||||
/**/
|
||||
|
||||
--
|
||||
I used to wonder about the meaning of life. But I looked it
|
||||
up in the dictionary under "L" and there it was - the meaning
|
||||
of life. It was less than I expected. - Dogbert
|
||||
|
||||
/// 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.1.030
80
7.1.030
@ -1,80 +0,0 @@
|
||||
To: vim-dev@vim.org
|
||||
Subject: patch 7.1.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.1.030
|
||||
Problem: The "vimtutor" shell script checks for "vim6" but not for "vim7".
|
||||
(Christian Robinson)
|
||||
Solution: Check for more versions, but prefer using "vim".
|
||||
Files: src/vimtutor
|
||||
|
||||
|
||||
*** ../vim-7.1.029/src/vimtutor Sun Jun 13 20:37:33 2004
|
||||
--- src/vimtutor Sun Jul 8 17:16:29 2007
|
||||
***************
|
||||
*** 39,56 ****
|
||||
# remove the copy of the tutor on exit
|
||||
trap "rm -rf $TODELETE" 0 1 2 3 9 11 13 15
|
||||
|
||||
! # Vim could be called "vim" or "vi". Also check for "vim6", for people who
|
||||
! # have Vim 5.x installed as "vim" and Vim 6.0 as "vim6".
|
||||
! testvim=`which vim6 2>/dev/null`
|
||||
! if test -f "$testvim"; then
|
||||
! VIM=vim6
|
||||
! else
|
||||
! testvim=`which vim`
|
||||
if test -f "$testvim"; then
|
||||
! VIM=vim
|
||||
! else
|
||||
! VIM=vi
|
||||
fi
|
||||
fi
|
||||
|
||||
# Use Vim to copy the tutor, it knows the value of $VIMRUNTIME
|
||||
--- 39,60 ----
|
||||
# remove the copy of the tutor on exit
|
||||
trap "rm -rf $TODELETE" 0 1 2 3 9 11 13 15
|
||||
|
||||
! # Vim could be called "vim" or "vi". Also check for "vimN", for people who
|
||||
! # have Vim installed with its version number.
|
||||
! # We anticipate up to a future Vim 8 version :-).
|
||||
! seq="vim vim8 vim75 vim74 vim73 vim72 vim71 vim70 vim7 vim6 vi"
|
||||
! for i in $seq; do
|
||||
! testvim=`which $i 2>/dev/null`
|
||||
if test -f "$testvim"; then
|
||||
! VIM=$i
|
||||
! break
|
||||
fi
|
||||
+ done
|
||||
+
|
||||
+ # When no Vim version was found fall back to "vim", you'll get an error message
|
||||
+ # below.
|
||||
+ if test -z "$VIM"; then
|
||||
+ VIM=vim
|
||||
fi
|
||||
|
||||
# Use Vim to copy the tutor, it knows the value of $VIMRUNTIME
|
||||
*** ../vim-7.1.029/src/version.c Mon Jul 16 20:38:56 2007
|
||||
--- src/version.c Tue Jul 17 14:30:51 2007
|
||||
***************
|
||||
*** 668,669 ****
|
||||
--- 668,671 ----
|
||||
{ /* Add new patch number below this line */
|
||||
+ /**/
|
||||
+ 30,
|
||||
/**/
|
||||
|
||||
--
|
||||
BLACK KNIGHT: I'm invincible!
|
||||
ARTHUR: You're a looney.
|
||||
"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 ///
|
191
7.1.031
191
7.1.031
@ -1,191 +0,0 @@
|
||||
To: vim-dev@vim.org
|
||||
Subject: patch 7.1.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.1.031
|
||||
Problem: virtcol([123, '$']) doesn't work. (Michael Schaap)
|
||||
Solution: When '$' is used for the column number get the last column.
|
||||
Files: runtime/doc/eval.txt, src/eval.c
|
||||
|
||||
|
||||
*** ../vim-7.1.030/runtime/doc/eval.txt Tue Jun 19 17:23:46 2007
|
||||
--- runtime/doc/eval.txt Wed Jul 11 21:21:28 2007
|
||||
***************
|
||||
*** 1,4 ****
|
||||
! *eval.txt* For Vim version 7.1. Last change: 2007 Jun 09
|
||||
|
||||
|
||||
VIM REFERENCE MANUAL by Bram Moolenaar
|
||||
--- 1,4 ----
|
||||
! *eval.txt* For Vim version 7.1. Last change: 2007 Jul 11
|
||||
|
||||
|
||||
VIM REFERENCE MANUAL by Bram Moolenaar
|
||||
***************
|
||||
*** 2020,2025 ****
|
||||
--- 2020,2029 ----
|
||||
number of characters in the cursor line plus one)
|
||||
'x position of mark x (if the mark is not set, 0 is
|
||||
returned)
|
||||
+ Additionally {expr} can be [lnum, col]: a |List| with the line
|
||||
+ and column number. Most useful when the column is "$", to get
|
||||
+ the las column of a specific line. When "lnum" or "col" is
|
||||
+ out of range then col() returns zero.
|
||||
To get the line number use |line()|. To get both use
|
||||
|getpos()|.
|
||||
For the screen column position use |virtcol()|.
|
||||
***************
|
||||
*** 5024,5037 ****
|
||||
position, the returned Number will be the column at the end of
|
||||
the <Tab>. For example, for a <Tab> in column 1, with 'ts'
|
||||
set to 8, it returns 8.
|
||||
! For the use of {expr} see |col()|. Additionally you can use
|
||||
! [lnum, col]: a |List| with the line and column number. When
|
||||
! "lnum" or "col" is out of range then virtcol() returns zero.
|
||||
! When 'virtualedit' is used it can be [lnum, col, off], where
|
||||
"off" is the offset in screen columns from the start of the
|
||||
character. E.g., a position within a <Tab> or after the last
|
||||
character.
|
||||
- For the byte position use |col()|.
|
||||
When Virtual editing is active in the current mode, a position
|
||||
beyond the end of the line can be returned. |'virtualedit'|
|
||||
The accepted positions are:
|
||||
--- 5029,5040 ----
|
||||
position, the returned Number will be the column at the end of
|
||||
the <Tab>. For example, for a <Tab> in column 1, with 'ts'
|
||||
set to 8, it returns 8.
|
||||
! For the byte position use |col()|.
|
||||
! For the use of {expr} see |col()|.
|
||||
! When 'virtualedit' is used {expr} can be [lnum, col, off], where
|
||||
"off" is the offset in screen columns from the start of the
|
||||
character. E.g., a position within a <Tab> or after the last
|
||||
character.
|
||||
When Virtual editing is active in the current mode, a position
|
||||
beyond the end of the line can be returned. |'virtualedit'|
|
||||
The accepted positions are:
|
||||
*** ../vim-7.1.030/src/eval.c Tue Jul 10 13:27:46 2007
|
||||
--- src/eval.c Wed Jul 11 19:50:27 2007
|
||||
***************
|
||||
*** 672,678 ****
|
||||
static void f_writefile __ARGS((typval_T *argvars, typval_T *rettv));
|
||||
|
||||
static int list2fpos __ARGS((typval_T *arg, pos_T *posp, int *fnump));
|
||||
! static pos_T *var2fpos __ARGS((typval_T *varp, int lnum, int *fnum));
|
||||
static int get_env_len __ARGS((char_u **arg));
|
||||
static int get_id_len __ARGS((char_u **arg));
|
||||
static int get_name_len __ARGS((char_u **arg, char_u **alias, int evaluate, int verbose));
|
||||
--- 672,678 ----
|
||||
static void f_writefile __ARGS((typval_T *argvars, typval_T *rettv));
|
||||
|
||||
static int list2fpos __ARGS((typval_T *arg, pos_T *posp, int *fnump));
|
||||
! static pos_T *var2fpos __ARGS((typval_T *varp, int dollar_lnum, int *fnum));
|
||||
static int get_env_len __ARGS((char_u **arg));
|
||||
static int get_id_len __ARGS((char_u **arg));
|
||||
static int get_name_len __ARGS((char_u **arg, char_u **alias, int evaluate, int verbose));
|
||||
***************
|
||||
*** 16505,16513 ****
|
||||
* Returns NULL when there is an error.
|
||||
*/
|
||||
static pos_T *
|
||||
! var2fpos(varp, lnum, fnum)
|
||||
typval_T *varp;
|
||||
! int lnum; /* TRUE when $ is last line */
|
||||
int *fnum; /* set to fnum for '0, 'A, etc. */
|
||||
{
|
||||
char_u *name;
|
||||
--- 16508,16516 ----
|
||||
* Returns NULL when there is an error.
|
||||
*/
|
||||
static pos_T *
|
||||
! var2fpos(varp, dollar_lnum, fnum)
|
||||
typval_T *varp;
|
||||
! int dollar_lnum; /* TRUE when $ is last line */
|
||||
int *fnum; /* set to fnum for '0, 'A, etc. */
|
||||
{
|
||||
char_u *name;
|
||||
***************
|
||||
*** 16520,16525 ****
|
||||
--- 16523,16529 ----
|
||||
list_T *l;
|
||||
int len;
|
||||
int error = FALSE;
|
||||
+ listitem_T *li;
|
||||
|
||||
l = varp->vval.v_list;
|
||||
if (l == NULL)
|
||||
***************
|
||||
*** 16535,16540 ****
|
||||
--- 16539,16552 ----
|
||||
if (error)
|
||||
return NULL;
|
||||
len = (long)STRLEN(ml_get(pos.lnum));
|
||||
+
|
||||
+ /* We accept "$" for the column number: last column. */
|
||||
+ li = list_find(l, 1L);
|
||||
+ if (li != NULL && li->li_tv.v_type == VAR_STRING
|
||||
+ && li->li_tv.vval.v_string != NULL
|
||||
+ && STRCMP(li->li_tv.vval.v_string, "$") == 0)
|
||||
+ pos.col = len + 1;
|
||||
+
|
||||
/* Accept a position up to the NUL after the line. */
|
||||
if (pos.col == 0 || (int)pos.col > len + 1)
|
||||
return NULL; /* invalid column number */
|
||||
***************
|
||||
*** 16567,16573 ****
|
||||
pos.coladd = 0;
|
||||
#endif
|
||||
|
||||
! if (name[0] == 'w' && lnum)
|
||||
{
|
||||
pos.col = 0;
|
||||
if (name[1] == '0') /* "w0": first visible line */
|
||||
--- 16579,16585 ----
|
||||
pos.coladd = 0;
|
||||
#endif
|
||||
|
||||
! if (name[0] == 'w' && dollar_lnum)
|
||||
{
|
||||
pos.col = 0;
|
||||
if (name[1] == '0') /* "w0": first visible line */
|
||||
***************
|
||||
*** 16585,16591 ****
|
||||
}
|
||||
else if (name[0] == '$') /* last column or line */
|
||||
{
|
||||
! if (lnum)
|
||||
{
|
||||
pos.lnum = curbuf->b_ml.ml_line_count;
|
||||
pos.col = 0;
|
||||
--- 16597,16603 ----
|
||||
}
|
||||
else if (name[0] == '$') /* last column or line */
|
||||
{
|
||||
! if (dollar_lnum)
|
||||
{
|
||||
pos.lnum = curbuf->b_ml.ml_line_count;
|
||||
pos.col = 0;
|
||||
*** ../vim-7.1.030/src/version.c Tue Jul 17 14:32:07 2007
|
||||
--- src/version.c Tue Jul 17 16:24:54 2007
|
||||
***************
|
||||
*** 668,669 ****
|
||||
--- 668,671 ----
|
||||
{ /* Add new patch number below this line */
|
||||
+ /**/
|
||||
+ 31,
|
||||
/**/
|
||||
|
||||
--
|
||||
CRONE: Who sent you?
|
||||
ARTHUR: The Knights Who Say GNU!
|
||||
CRONE: Aaaagh! (she looks around in rear) No! We have no licenses here.
|
||||
"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 ///
|
97
7.1.032
97
7.1.032
@ -1,97 +0,0 @@
|
||||
To: vim-dev@vim.org
|
||||
Subject: patch 7.1.032
|
||||
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.1.032
|
||||
Problem: Potential crash when editing a command line. (Chris Monson)
|
||||
Solution: Check the position to avoid access before the start of an array.
|
||||
Files: src/ex_getln.c
|
||||
|
||||
|
||||
*** ../vim-7.1.031/src/ex_getln.c Thu May 10 20:22:29 2007
|
||||
--- src/ex_getln.c Tue Jul 17 18:05:49 2007
|
||||
***************
|
||||
*** 484,490 ****
|
||||
if (xpc.xp_context == EXPAND_MENUNAMES && p_wmnu)
|
||||
{
|
||||
/* Hitting <Down> after "emenu Name.": complete submenu */
|
||||
! if (ccline.cmdbuff[ccline.cmdpos - 1] == '.' && c == K_DOWN)
|
||||
c = p_wc;
|
||||
else if (c == K_UP)
|
||||
{
|
||||
--- 486,493 ----
|
||||
if (xpc.xp_context == EXPAND_MENUNAMES && p_wmnu)
|
||||
{
|
||||
/* Hitting <Down> after "emenu Name.": complete submenu */
|
||||
! if (c == K_DOWN && ccline.cmdpos > 0
|
||||
! && ccline.cmdbuff[ccline.cmdpos - 1] == '.')
|
||||
c = p_wc;
|
||||
else if (c == K_UP)
|
||||
{
|
||||
***************
|
||||
*** 533,541 ****
|
||||
upseg[3] = PATHSEP;
|
||||
upseg[4] = NUL;
|
||||
|
||||
! if (ccline.cmdbuff[ccline.cmdpos - 1] == PATHSEP
|
||||
! && c == K_DOWN
|
||||
! && (ccline.cmdbuff[ccline.cmdpos - 2] != '.'
|
||||
|| ccline.cmdbuff[ccline.cmdpos - 3] != '.'))
|
||||
{
|
||||
/* go down a directory */
|
||||
--- 536,546 ----
|
||||
upseg[3] = PATHSEP;
|
||||
upseg[4] = NUL;
|
||||
|
||||
! if (c == K_DOWN
|
||||
! && ccline.cmdpos > 0
|
||||
! && ccline.cmdbuff[ccline.cmdpos - 1] == PATHSEP
|
||||
! && (ccline.cmdpos < 3
|
||||
! || ccline.cmdbuff[ccline.cmdpos - 2] != '.'
|
||||
|| ccline.cmdbuff[ccline.cmdpos - 3] != '.'))
|
||||
{
|
||||
/* go down a directory */
|
||||
***************
|
||||
*** 730,737 ****
|
||||
/* In Ex mode a backslash escapes a newline. */
|
||||
if (exmode_active
|
||||
&& c != ESC
|
||||
- && ccline.cmdpos > 0
|
||||
&& ccline.cmdpos == ccline.cmdlen
|
||||
&& ccline.cmdbuff[ccline.cmdpos - 1] == '\\')
|
||||
{
|
||||
if (c == K_KENTER)
|
||||
--- 735,742 ----
|
||||
/* In Ex mode a backslash escapes a newline. */
|
||||
if (exmode_active
|
||||
&& c != ESC
|
||||
&& ccline.cmdpos == ccline.cmdlen
|
||||
+ && ccline.cmdpos > 0
|
||||
&& ccline.cmdbuff[ccline.cmdpos - 1] == '\\')
|
||||
{
|
||||
if (c == K_KENTER)
|
||||
*** ../vim-7.1.031/src/version.c Tue Jul 17 16:31:15 2007
|
||||
--- src/version.c Tue Jul 17 18:10:37 2007
|
||||
***************
|
||||
*** 668,669 ****
|
||||
--- 668,671 ----
|
||||
{ /* Add new patch number below this line */
|
||||
+ /**/
|
||||
+ 32,
|
||||
/**/
|
||||
|
||||
--
|
||||
ALL: A witch! A witch!
|
||||
WITCH: It's a fair cop.
|
||||
ALL: Burn her! Burn her! Let's make her into a ladder.
|
||||
"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.1.033
48
7.1.033
@ -1,48 +0,0 @@
|
||||
To: vim-dev@vim.org
|
||||
Subject: patch 7.1.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.1.033
|
||||
Problem: A buffer is marked modified when it was first deleted and then
|
||||
added again using a ":next" command. (John Mullin)
|
||||
Solution: When checking if a buffer is modified use the BF_NEVERLOADED flag.
|
||||
Files: src/option.c
|
||||
|
||||
|
||||
*** ../vim-7.1.032/src/option.c Tue Jun 19 20:56:52 2007
|
||||
--- src/option.c Sun Jul 22 16:42:47 2007
|
||||
***************
|
||||
*** 10624,10629 ****
|
||||
--- 10624,10632 ----
|
||||
file_ff_differs(buf)
|
||||
buf_T *buf;
|
||||
{
|
||||
+ /* In a buffer that was never loaded the options are not valid. */
|
||||
+ if (buf->b_flags & BF_NEVERLOADED)
|
||||
+ return FALSE;
|
||||
if ((buf->b_flags & BF_NEW)
|
||||
&& buf->b_ml.ml_line_count == 1
|
||||
&& *ml_get_buf(buf, (linenr_T)1, FALSE) == NUL)
|
||||
*** ../vim-7.1.032/src/version.c Tue Jul 17 18:14:14 2007
|
||||
--- src/version.c Mon Jul 23 09:45:44 2007
|
||||
***************
|
||||
*** 668,669 ****
|
||||
--- 668,671 ----
|
||||
{ /* Add new patch number below this line */
|
||||
+ /**/
|
||||
+ 33,
|
||||
/**/
|
||||
|
||||
--
|
||||
How To Keep A Healthy Level Of Insanity:
|
||||
8. Don't use any punctuation marks.
|
||||
|
||||
/// 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 ///
|
116
7.1.034
116
7.1.034
@ -1,116 +0,0 @@
|
||||
To: vim-dev@vim.org
|
||||
Subject: patch 7.1.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.1.034
|
||||
Problem: Win64: A few compiler warnings. Problems with optimizer.
|
||||
Solution: Use int instead of size_t. Disable the optimizer in one function.
|
||||
(George V. Reilly)
|
||||
Files: src/eval.c, src/spell.c
|
||||
|
||||
|
||||
*** ../vim-7.1.033/src/eval.c Tue Jul 17 16:31:15 2007
|
||||
--- src/eval.c Wed Jul 11 19:50:27 2007
|
||||
***************
|
||||
*** 992,1011 ****
|
||||
char_u *value;
|
||||
int value_len;
|
||||
{
|
||||
! size_t len;
|
||||
|
||||
if (redir_lval == NULL)
|
||||
return;
|
||||
|
||||
if (value_len == -1)
|
||||
! len = STRLEN(value); /* Append the entire string */
|
||||
else
|
||||
! len = value_len; /* Append only "value_len" characters */
|
||||
|
||||
! if (ga_grow(&redir_ga, (int)len) == OK)
|
||||
{
|
||||
mch_memmove((char *)redir_ga.ga_data + redir_ga.ga_len, value, len);
|
||||
! redir_ga.ga_len += (int)len;
|
||||
}
|
||||
else
|
||||
var_redir_stop();
|
||||
--- 992,1011 ----
|
||||
char_u *value;
|
||||
int value_len;
|
||||
{
|
||||
! int len;
|
||||
|
||||
if (redir_lval == NULL)
|
||||
return;
|
||||
|
||||
if (value_len == -1)
|
||||
! len = (int)STRLEN(value); /* Append the entire string */
|
||||
else
|
||||
! len = value_len; /* Append only "value_len" characters */
|
||||
|
||||
! if (ga_grow(&redir_ga, len) == OK)
|
||||
{
|
||||
mch_memmove((char *)redir_ga.ga_data + redir_ga.ga_len, value, len);
|
||||
! redir_ga.ga_len += len;
|
||||
}
|
||||
else
|
||||
var_redir_stop();
|
||||
*** ../vim-7.1.033/src/spell.c Thu May 10 18:45:53 2007
|
||||
--- src/spell.c Sat Jul 14 17:17:52 2007
|
||||
***************
|
||||
*** 7829,7835 ****
|
||||
# if (_MSC_VER <= 1200)
|
||||
/* This line is required for VC6 without the service pack. Also see the
|
||||
* matching #pragma below. */
|
||||
! /* # pragma optimize("", off) */
|
||||
# endif
|
||||
#endif
|
||||
|
||||
--- 7829,7835 ----
|
||||
# if (_MSC_VER <= 1200)
|
||||
/* This line is required for VC6 without the service pack. Also see the
|
||||
* matching #pragma below. */
|
||||
! # pragma optimize("", off)
|
||||
# endif
|
||||
#endif
|
||||
|
||||
***************
|
||||
*** 7859,7865 ****
|
||||
|
||||
#ifdef _MSC_VER
|
||||
# if (_MSC_VER <= 1200)
|
||||
! /* # pragma optimize("", on) */
|
||||
# endif
|
||||
#endif
|
||||
|
||||
--- 7859,7865 ----
|
||||
|
||||
#ifdef _MSC_VER
|
||||
# if (_MSC_VER <= 1200)
|
||||
! # pragma optimize("", on)
|
||||
# endif
|
||||
#endif
|
||||
|
||||
*** ../vim-7.1.033/src/version.c Tue Jul 24 09:50:22 2007
|
||||
--- src/version.c Tue Jul 24 09:47:17 2007
|
||||
***************
|
||||
*** 668,669 ****
|
||||
--- 668,671 ----
|
||||
{ /* Add new patch number below this line */
|
||||
+ /**/
|
||||
+ 34,
|
||||
/**/
|
||||
|
||||
--
|
||||
How To Keep A Healthy Level Of Insanity:
|
||||
17. When the money comes out the ATM, scream "I won!, I won! 3rd
|
||||
time this week!!!!!"
|
||||
|
||||
/// 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.1.035
52
7.1.035
@ -1,52 +0,0 @@
|
||||
To: vim-dev@vim.org
|
||||
Subject: patch 7.1.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.1.035
|
||||
Problem: After ":s/./&/#" all listed lines have a line number. (Yakov
|
||||
Lerner)
|
||||
Solution: Reset the line number flag when not using the "&" flag.
|
||||
Files: src/ex_cmds.c
|
||||
|
||||
|
||||
*** ../vim-7.1.034/src/ex_cmds.c Tue Jul 10 17:25:20 2007
|
||||
--- src/ex_cmds.c Sat Jul 14 14:39:38 2007
|
||||
***************
|
||||
*** 4316,4321 ****
|
||||
--- 4316,4322 ----
|
||||
do_error = TRUE;
|
||||
do_print = FALSE;
|
||||
do_count = FALSE;
|
||||
+ do_number = FALSE;
|
||||
do_ic = 0;
|
||||
}
|
||||
while (*cmd)
|
||||
*** ../vim-7.1.034/src/version.c Tue Jul 24 10:44:10 2007
|
||||
--- src/version.c Tue Jul 24 11:15:09 2007
|
||||
***************
|
||||
*** 668,669 ****
|
||||
--- 668,671 ----
|
||||
{ /* Add new patch number below this line */
|
||||
+ /**/
|
||||
+ 35,
|
||||
/**/
|
||||
|
||||
--
|
||||
The startling truth finally became apparent, and it was this: Numbers
|
||||
written on restaurant checks within the confines of restaurants do not follow
|
||||
the same mathematical laws as numbers written on any other pieces of paper in
|
||||
any other parts of the Universe. This single statement took the scientific
|
||||
world by storm. So many mathematical conferences got held in such good
|
||||
restaurants that many of the finest minds of a generation died of obesity and
|
||||
heart failure, and the science of mathematics was put back by years.
|
||||
-- Douglas Adams, "The Hitchhiker's Guide to the Galaxy"
|
||||
|
||||
/// 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 ///
|
461
7.1.036
461
7.1.036
@ -1,461 +0,0 @@
|
||||
To: vim-dev@vim.org
|
||||
Subject: patch 7.1.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.1.036
|
||||
Problem: Completing ":echohl" argument should include "None". (Ori
|
||||
Avtalion) ":match" should have "none" too.
|
||||
Solution: Add flags to use expand_highlight(). Also fix that when disabling
|
||||
FEAT_CMDL_COMPL compilation fails. (Chris Lubinski)
|
||||
Files: src/eval.c, src/ex_docmd.c, src/ex_getln.c, src/proto/syntax.pro
|
||||
src/syntax.c
|
||||
|
||||
|
||||
*** ../vim-7.1.035/src/eval.c Tue Jul 24 10:44:10 2007
|
||||
--- src/eval.c Wed Jul 11 19:50:27 2007
|
||||
***************
|
||||
*** 1411,1417 ****
|
||||
}
|
||||
|
||||
|
||||
! #if (defined(FEAT_USR_CMDS) && defined(FEAT_CMDL_COMPL)) || defined(PROTO)
|
||||
/*
|
||||
* Call some vimL function and return the result in "*rettv".
|
||||
* Uses argv[argc] for the function arguments.
|
||||
--- 1411,1418 ----
|
||||
}
|
||||
|
||||
|
||||
! #if (defined(FEAT_USR_CMDS) && defined(FEAT_CMDL_COMPL)) \
|
||||
! || defined(FEAT_COMPL_FUNC) || defined(PROTO)
|
||||
/*
|
||||
* Call some vimL function and return the result in "*rettv".
|
||||
* Uses argv[argc] for the function arguments.
|
||||
***************
|
||||
*** 1484,1489 ****
|
||||
--- 1485,1491 ----
|
||||
return ret;
|
||||
}
|
||||
|
||||
+ # if (defined(FEAT_USR_CMDS) && defined(FEAT_CMDL_COMPL)) || defined(PROTO)
|
||||
/*
|
||||
* Call vimL function "func" and return the result as a string.
|
||||
* Returns NULL when calling the function fails.
|
||||
***************
|
||||
*** 1506,1513 ****
|
||||
clear_tv(&rettv);
|
||||
return retval;
|
||||
}
|
||||
|
||||
! #if defined(FEAT_COMPL_FUNC) || defined(PROTO)
|
||||
/*
|
||||
* Call vimL function "func" and return the result as a number.
|
||||
* Returns -1 when calling the function fails.
|
||||
--- 1508,1516 ----
|
||||
clear_tv(&rettv);
|
||||
return retval;
|
||||
}
|
||||
+ # endif
|
||||
|
||||
! # if defined(FEAT_COMPL_FUNC) || defined(PROTO)
|
||||
/*
|
||||
* Call vimL function "func" and return the result as a number.
|
||||
* Returns -1 when calling the function fails.
|
||||
***************
|
||||
*** 1530,1536 ****
|
||||
clear_tv(&rettv);
|
||||
return retval;
|
||||
}
|
||||
! #endif
|
||||
|
||||
/*
|
||||
* Call vimL function "func" and return the result as a list
|
||||
--- 1533,1539 ----
|
||||
clear_tv(&rettv);
|
||||
return retval;
|
||||
}
|
||||
! # endif
|
||||
|
||||
/*
|
||||
* Call vimL function "func" and return the result as a list
|
||||
***************
|
||||
*** 1556,1563 ****
|
||||
|
||||
return rettv.vval.v_list;
|
||||
}
|
||||
-
|
||||
#endif
|
||||
|
||||
/*
|
||||
* Save the current function call pointer, and set it to NULL.
|
||||
--- 1559,1566 ----
|
||||
|
||||
return rettv.vval.v_list;
|
||||
}
|
||||
#endif
|
||||
+
|
||||
|
||||
/*
|
||||
* Save the current function call pointer, and set it to NULL.
|
||||
*** ../vim-7.1.035/src/ex_docmd.c Mon Jul 16 20:38:56 2007
|
||||
--- src/ex_docmd.c Sun Jul 15 17:20:09 2007
|
||||
***************
|
||||
*** 3406,3419 ****
|
||||
case CMD_windo:
|
||||
return arg;
|
||||
|
||||
! #ifdef FEAT_SEARCH_EXTRA
|
||||
case CMD_match:
|
||||
if (*arg == NUL || !ends_excmd(*arg))
|
||||
{
|
||||
! /* Dummy call to clear variables. */
|
||||
! set_context_in_highlight_cmd(xp, (char_u *)"link n");
|
||||
! xp->xp_context = EXPAND_HIGHLIGHT;
|
||||
! xp->xp_pattern = arg;
|
||||
arg = skipwhite(skiptowhite(arg));
|
||||
if (*arg != NUL)
|
||||
{
|
||||
--- 3406,3418 ----
|
||||
case CMD_windo:
|
||||
return arg;
|
||||
|
||||
! #ifdef FEAT_CMDL_COMPL
|
||||
! # ifdef FEAT_SEARCH_EXTRA
|
||||
case CMD_match:
|
||||
if (*arg == NUL || !ends_excmd(*arg))
|
||||
{
|
||||
! /* also complete "None" */
|
||||
! set_context_in_echohl_cmd(xp, arg);
|
||||
arg = skipwhite(skiptowhite(arg));
|
||||
if (*arg != NUL)
|
||||
{
|
||||
***************
|
||||
*** 3422,3430 ****
|
||||
}
|
||||
}
|
||||
return find_nextcmd(arg);
|
||||
! #endif
|
||||
|
||||
- #ifdef FEAT_CMDL_COMPL
|
||||
/*
|
||||
* All completion for the +cmdline_compl feature goes here.
|
||||
*/
|
||||
--- 3421,3428 ----
|
||||
}
|
||||
}
|
||||
return find_nextcmd(arg);
|
||||
! # endif
|
||||
|
||||
/*
|
||||
* All completion for the +cmdline_compl feature goes here.
|
||||
*/
|
||||
***************
|
||||
*** 3622,3629 ****
|
||||
break;
|
||||
|
||||
case CMD_echohl:
|
||||
! xp->xp_context = EXPAND_HIGHLIGHT;
|
||||
! xp->xp_pattern = arg;
|
||||
break;
|
||||
#endif
|
||||
case CMD_highlight:
|
||||
--- 3620,3626 ----
|
||||
break;
|
||||
|
||||
case CMD_echohl:
|
||||
! set_context_in_echohl_cmd(xp, arg);
|
||||
break;
|
||||
#endif
|
||||
case CMD_highlight:
|
||||
*** ../vim-7.1.035/src/ex_getln.c Tue Jul 17 18:14:14 2007
|
||||
--- src/ex_getln.c Tue Jul 17 18:05:49 2007
|
||||
***************
|
||||
*** 268,274 ****
|
||||
--- 268,276 ----
|
||||
{
|
||||
xpc.xp_context = ccline.xp_context;
|
||||
xpc.xp_pattern = ccline.cmdbuff;
|
||||
+ # if defined(FEAT_USR_CMDS) && defined(FEAT_CMDL_COMPL)
|
||||
xpc.xp_arg = ccline.xp_arg;
|
||||
+ # endif
|
||||
}
|
||||
#endif
|
||||
|
||||
***************
|
||||
*** 4151,4163 ****
|
||||
--- 4153,4171 ----
|
||||
|
||||
#ifdef FEAT_EVAL
|
||||
if (ccline.cmdfirstc == '=')
|
||||
+ {
|
||||
+ # ifdef FEAT_CMDL_COMPL
|
||||
/* pass CMD_SIZE because there is no real command */
|
||||
set_context_for_expression(xp, str, CMD_SIZE);
|
||||
+ # endif
|
||||
+ }
|
||||
else if (ccline.input_fn)
|
||||
{
|
||||
xp->xp_context = ccline.xp_context;
|
||||
xp->xp_pattern = ccline.cmdbuff;
|
||||
+ # if defined(FEAT_USR_CMDS) && defined(FEAT_CMDL_COMPL)
|
||||
xp->xp_arg = ccline.xp_arg;
|
||||
+ # endif
|
||||
}
|
||||
else
|
||||
#endif
|
||||
***************
|
||||
*** 4504,4509 ****
|
||||
--- 4512,4523 ----
|
||||
/* Sort the results. Keep menu's in the specified order. */
|
||||
if (xp->xp_context != EXPAND_MENUNAMES && xp->xp_context != EXPAND_MENUS)
|
||||
sort_strings(*file, *num_file);
|
||||
+
|
||||
+ #ifdef FEAT_CMDL_COMPL
|
||||
+ /* Reset the variables used for special highlight names expansion, so that
|
||||
+ * they don't show up when getting normal highlight names by ID. */
|
||||
+ reset_expand_highlight();
|
||||
+ #endif
|
||||
|
||||
return OK;
|
||||
}
|
||||
*** ../vim-7.1.035/src/proto/syntax.pro Sat May 5 19:23:52 2007
|
||||
--- src/proto/syntax.pro Fri Jul 13 19:51:43 2007
|
||||
***************
|
||||
*** 8,13 ****
|
||||
--- 8,15 ----
|
||||
void syntax_clear __ARGS((buf_T *buf));
|
||||
void ex_syntax __ARGS((exarg_T *eap));
|
||||
int syntax_present __ARGS((buf_T *buf));
|
||||
+ void reset_expand_highlight __ARGS((void));
|
||||
+ void set_context_in_echohl_cmd __ARGS((expand_T *xp, char_u *arg));
|
||||
void set_context_in_syntax_cmd __ARGS((expand_T *xp, char_u *arg));
|
||||
char_u *get_syntax_name __ARGS((expand_T *xp, int idx));
|
||||
int syn_get_id __ARGS((win_T *wp, long lnum, colnr_T col, int trans, int *spellp));
|
||||
*** ../vim-7.1.035/src/syntax.c Thu Jun 28 11:59:13 2007
|
||||
--- src/syntax.c Fri Jul 13 19:51:39 2007
|
||||
***************
|
||||
*** 66,73 ****
|
||||
#define HL_TABLE() ((struct hl_group *)((highlight_ga.ga_data)))
|
||||
|
||||
#ifdef FEAT_CMDL_COMPL
|
||||
! static int include_default = FALSE; /* include "default" for expansion */
|
||||
! static int include_link = FALSE; /* include "link" for expansion */
|
||||
#endif
|
||||
|
||||
/*
|
||||
--- 66,75 ----
|
||||
#define HL_TABLE() ((struct hl_group *)((highlight_ga.ga_data)))
|
||||
|
||||
#ifdef FEAT_CMDL_COMPL
|
||||
! /* Flags to indicate an additional string for highlight name completion. */
|
||||
! static int include_none = 0; /* when 1 include "None" */
|
||||
! static int include_default = 0; /* when 1 include "default" */
|
||||
! static int include_link = 0; /* when 2 include "link" and "clear" */
|
||||
#endif
|
||||
|
||||
/*
|
||||
***************
|
||||
*** 5968,5973 ****
|
||||
--- 5970,5998 ----
|
||||
EXP_CASE /* expand ":syn case" arguments */
|
||||
} expand_what;
|
||||
|
||||
+ /*
|
||||
+ * Reset include_link, include_default, include_none to 0.
|
||||
+ * Called when we are done expanding.
|
||||
+ */
|
||||
+ void
|
||||
+ reset_expand_highlight()
|
||||
+ {
|
||||
+ include_link = include_default = include_none = 0;
|
||||
+ }
|
||||
+
|
||||
+ /*
|
||||
+ * Handle command line completion for :match and :echohl command: Add "None"
|
||||
+ * as highlight group.
|
||||
+ */
|
||||
+ void
|
||||
+ set_context_in_echohl_cmd(xp, arg)
|
||||
+ expand_T *xp;
|
||||
+ char_u *arg;
|
||||
+ {
|
||||
+ xp->xp_context = EXPAND_HIGHLIGHT;
|
||||
+ xp->xp_pattern = arg;
|
||||
+ include_none = 1;
|
||||
+ }
|
||||
|
||||
/*
|
||||
* Handle command line completion for :syntax command.
|
||||
***************
|
||||
*** 5983,5990 ****
|
||||
xp->xp_context = EXPAND_SYNTAX;
|
||||
expand_what = EXP_SUBCMD;
|
||||
xp->xp_pattern = arg;
|
||||
! include_link = FALSE;
|
||||
! include_default = FALSE;
|
||||
|
||||
/* (part of) subcommand already typed */
|
||||
if (*arg != NUL)
|
||||
--- 6008,6015 ----
|
||||
xp->xp_context = EXPAND_SYNTAX;
|
||||
expand_what = EXP_SUBCMD;
|
||||
xp->xp_pattern = arg;
|
||||
! include_link = 0;
|
||||
! include_default = 0;
|
||||
|
||||
/* (part of) subcommand already typed */
|
||||
if (*arg != NUL)
|
||||
***************
|
||||
*** 8949,8955 ****
|
||||
return OK;
|
||||
}
|
||||
|
||||
! #ifdef FEAT_CMDL_COMPL
|
||||
|
||||
static void highlight_list __ARGS((void));
|
||||
static void highlight_list_two __ARGS((int cnt, int attr));
|
||||
--- 8974,8980 ----
|
||||
return OK;
|
||||
}
|
||||
|
||||
! #if defined(FEAT_CMDL_COMPL) || defined(PROTO)
|
||||
|
||||
static void highlight_list __ARGS((void));
|
||||
static void highlight_list_two __ARGS((int cnt, int attr));
|
||||
***************
|
||||
*** 8967,8974 ****
|
||||
/* Default: expand group names */
|
||||
xp->xp_context = EXPAND_HIGHLIGHT;
|
||||
xp->xp_pattern = arg;
|
||||
! include_link = TRUE;
|
||||
! include_default = TRUE;
|
||||
|
||||
/* (part of) subcommand already typed */
|
||||
if (*arg != NUL)
|
||||
--- 8992,8999 ----
|
||||
/* Default: expand group names */
|
||||
xp->xp_context = EXPAND_HIGHLIGHT;
|
||||
xp->xp_pattern = arg;
|
||||
! include_link = 2;
|
||||
! include_default = 1;
|
||||
|
||||
/* (part of) subcommand already typed */
|
||||
if (*arg != NUL)
|
||||
***************
|
||||
*** 8976,8982 ****
|
||||
p = skiptowhite(arg);
|
||||
if (*p != NUL) /* past "default" or group name */
|
||||
{
|
||||
! include_default = FALSE;
|
||||
if (STRNCMP("default", arg, p - arg) == 0)
|
||||
{
|
||||
arg = skipwhite(p);
|
||||
--- 9001,9007 ----
|
||||
p = skiptowhite(arg);
|
||||
if (*p != NUL) /* past "default" or group name */
|
||||
{
|
||||
! include_default = 0;
|
||||
if (STRNCMP("default", arg, p - arg) == 0)
|
||||
{
|
||||
arg = skipwhite(p);
|
||||
***************
|
||||
*** 8985,8991 ****
|
||||
}
|
||||
if (*p != NUL) /* past group name */
|
||||
{
|
||||
! include_link = FALSE;
|
||||
if (arg[1] == 'i' && arg[0] == 'N')
|
||||
highlight_list();
|
||||
if (STRNCMP("link", arg, p - arg) == 0
|
||||
--- 9010,9016 ----
|
||||
}
|
||||
if (*p != NUL) /* past group name */
|
||||
{
|
||||
! include_link = 0;
|
||||
if (arg[1] == 'i' && arg[0] == 'N')
|
||||
highlight_list();
|
||||
if (STRNCMP("link", arg, p - arg) == 0
|
||||
***************
|
||||
*** 9045,9075 ****
|
||||
expand_T *xp;
|
||||
int idx;
|
||||
{
|
||||
- if (idx == highlight_ga.ga_len
|
||||
#ifdef FEAT_CMDL_COMPL
|
||||
! && include_link
|
||||
! #endif
|
||||
! )
|
||||
return (char_u *)"link";
|
||||
! if (idx == highlight_ga.ga_len + 1
|
||||
! #ifdef FEAT_CMDL_COMPL
|
||||
! && include_link
|
||||
! #endif
|
||||
! )
|
||||
return (char_u *)"clear";
|
||||
- if (idx == highlight_ga.ga_len + 2
|
||||
- #ifdef FEAT_CMDL_COMPL
|
||||
- && include_default
|
||||
#endif
|
||||
- )
|
||||
- return (char_u *)"default";
|
||||
if (idx < 0 || idx >= highlight_ga.ga_len)
|
||||
return NULL;
|
||||
return HL_TABLE()[idx].sg_name;
|
||||
}
|
||||
#endif
|
||||
|
||||
! #ifdef FEAT_GUI
|
||||
/*
|
||||
* Free all the highlight group fonts.
|
||||
* Used when quitting for systems which need it.
|
||||
--- 9070,9094 ----
|
||||
expand_T *xp;
|
||||
int idx;
|
||||
{
|
||||
#ifdef FEAT_CMDL_COMPL
|
||||
! if (idx == highlight_ga.ga_len && include_none != 0)
|
||||
! return (char_u *)"none";
|
||||
! if (idx == highlight_ga.ga_len + include_none && include_default != 0)
|
||||
! return (char_u *)"default";
|
||||
! if (idx == highlight_ga.ga_len + include_none + include_default
|
||||
! && include_link != 0)
|
||||
return (char_u *)"link";
|
||||
! if (idx == highlight_ga.ga_len + include_none + include_default + 1
|
||||
! && include_link != 0)
|
||||
return (char_u *)"clear";
|
||||
#endif
|
||||
if (idx < 0 || idx >= highlight_ga.ga_len)
|
||||
return NULL;
|
||||
return HL_TABLE()[idx].sg_name;
|
||||
}
|
||||
#endif
|
||||
|
||||
! #if defined(FEAT_GUI) || defined(PROTO)
|
||||
/*
|
||||
* Free all the highlight group fonts.
|
||||
* Used when quitting for systems which need it.
|
||||
*** ../vim-7.1.035/src/version.c Tue Jul 24 11:15:46 2007
|
||||
--- src/version.c Tue Jul 24 14:30:18 2007
|
||||
***************
|
||||
*** 668,669 ****
|
||||
--- 668,671 ----
|
||||
{ /* Add new patch number below this line */
|
||||
+ /**/
|
||||
+ 36,
|
||||
/**/
|
||||
|
||||
--
|
||||
Apparently, 1 in 5 people in the world are Chinese. And there are 5
|
||||
people in my family, so it must be one of them. It's either my mum
|
||||
or my dad. Or my older brother Colin. Or my younger brother
|
||||
Ho-Cha-Chu. But I think it's Colin.
|
||||
|
||||
/// 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.1.037
57
7.1.037
@ -1,57 +0,0 @@
|
||||
To: vim-dev@vim.org
|
||||
Subject: patch 7.1.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.1.037
|
||||
Problem: strcpy() used for overlapping strings. (Chris Monson)
|
||||
Solution: Use mch_memmove() instead.
|
||||
Files: src/option.c
|
||||
|
||||
|
||||
*** ../vim-7.1.036/src/option.c Tue Jul 24 09:50:22 2007
|
||||
--- src/option.c Sun Jul 22 16:42:47 2007
|
||||
***************
|
||||
*** 4628,4634 ****
|
||||
if ((!(flags & P_COMMA) || *s != ',')
|
||||
&& vim_strchr(s + 1, *s) != NULL)
|
||||
{
|
||||
! STRCPY(s, s + 1);
|
||||
--s;
|
||||
}
|
||||
}
|
||||
--- 4628,4634 ----
|
||||
if ((!(flags & P_COMMA) || *s != ',')
|
||||
&& vim_strchr(s + 1, *s) != NULL)
|
||||
{
|
||||
! mch_memmove(s, s + 1, STRLEN(s));
|
||||
--s;
|
||||
}
|
||||
}
|
||||
*** ../vim-7.1.036/src/version.c Tue Jul 24 14:32:44 2007
|
||||
--- src/version.c Tue Jul 24 14:56:03 2007
|
||||
***************
|
||||
*** 668,669 ****
|
||||
--- 668,671 ----
|
||||
{ /* Add new patch number below this line */
|
||||
+ /**/
|
||||
+ 37,
|
||||
/**/
|
||||
|
||||
--
|
||||
This planet has -- or rather had -- a problem, which was this: most
|
||||
of the people living on it were unhappy for pretty much of the time.
|
||||
Many solutions were suggested for this problem, but most of these
|
||||
were largely concerned with the movements of small green pieces of
|
||||
paper, which is odd because on the whole it wasn't the small green
|
||||
pieces of paper that were unhappy.
|
||||
-- Douglas Adams, "The Hitchhiker's Guide to the Galaxy"
|
||||
|
||||
/// 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.1.038
205
7.1.038
@ -1,205 +0,0 @@
|
||||
To: vim-dev@vim.org
|
||||
Subject: patch 7.1.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.1.038
|
||||
Problem: When 'expandtab' is set then a Tab copied for 'copyindent' is
|
||||
expanded to spaces, even when 'preserveindent' is set. (Alexei
|
||||
Alexandrov)
|
||||
Solution: Remove the check for 'expandtab'. Also fix that ">>" doesn't obey
|
||||
'preserveindent'. (Chris Lubinski)
|
||||
Files: src/misc1.c
|
||||
|
||||
|
||||
*** ../vim-7.1.037/src/misc1.c Thu May 10 21:03:33 2007
|
||||
--- src/misc1.c Tue Jul 24 15:24:50 2007
|
||||
***************
|
||||
*** 90,96 ****
|
||||
*/
|
||||
int
|
||||
set_indent(size, flags)
|
||||
! int size;
|
||||
int flags;
|
||||
{
|
||||
char_u *p;
|
||||
--- 90,96 ----
|
||||
*/
|
||||
int
|
||||
set_indent(size, flags)
|
||||
! int size; /* measured in spaces */
|
||||
int flags;
|
||||
{
|
||||
char_u *p;
|
||||
***************
|
||||
*** 98,109 ****
|
||||
char_u *oldline;
|
||||
char_u *s;
|
||||
int todo;
|
||||
! int ind_len;
|
||||
int line_len;
|
||||
int doit = FALSE;
|
||||
! int ind_done;
|
||||
int tab_pad;
|
||||
int retval = FALSE;
|
||||
|
||||
/*
|
||||
* First check if there is anything to do and compute the number of
|
||||
--- 98,111 ----
|
||||
char_u *oldline;
|
||||
char_u *s;
|
||||
int todo;
|
||||
! int ind_len; /* measured in characters */
|
||||
int line_len;
|
||||
int doit = FALSE;
|
||||
! int ind_done = 0; /* measured in spaces */
|
||||
int tab_pad;
|
||||
int retval = FALSE;
|
||||
+ int orig_char_len = 0; /* number of initial whitespace chars when
|
||||
+ 'et' and 'pi' are both set */
|
||||
|
||||
/*
|
||||
* First check if there is anything to do and compute the number of
|
||||
***************
|
||||
*** 116,123 ****
|
||||
/* Calculate the buffer size for the new indent, and check to see if it
|
||||
* isn't already set */
|
||||
|
||||
! /* if 'expandtab' isn't set: use TABs */
|
||||
! if (!curbuf->b_p_et)
|
||||
{
|
||||
/* If 'preserveindent' is set then reuse as much as possible of
|
||||
* the existing indent structure for the new indent */
|
||||
--- 118,127 ----
|
||||
/* Calculate the buffer size for the new indent, and check to see if it
|
||||
* isn't already set */
|
||||
|
||||
! /* if 'expandtab' isn't set: use TABs; if both 'expandtab' and
|
||||
! * 'preserveindent' are set count the number of characters at the
|
||||
! * beginning of the line to be copied */
|
||||
! if (!curbuf->b_p_et || (!(flags & SIN_INSERT) && curbuf->b_p_pi))
|
||||
{
|
||||
/* If 'preserveindent' is set then reuse as much as possible of
|
||||
* the existing indent structure for the new indent */
|
||||
***************
|
||||
*** 148,156 ****
|
||||
++p;
|
||||
}
|
||||
|
||||
/* Fill to next tabstop with a tab, if possible */
|
||||
tab_pad = (int)curbuf->b_p_ts - (ind_done % (int)curbuf->b_p_ts);
|
||||
! if (todo >= tab_pad)
|
||||
{
|
||||
doit = TRUE;
|
||||
todo -= tab_pad;
|
||||
--- 152,165 ----
|
||||
++p;
|
||||
}
|
||||
|
||||
+ /* Set initial number of whitespace chars to copy if we are
|
||||
+ * preserving indent but expandtab is set */
|
||||
+ if (curbuf->b_p_et)
|
||||
+ orig_char_len = ind_len;
|
||||
+
|
||||
/* Fill to next tabstop with a tab, if possible */
|
||||
tab_pad = (int)curbuf->b_p_ts - (ind_done % (int)curbuf->b_p_ts);
|
||||
! if (todo >= tab_pad && orig_char_len == 0)
|
||||
{
|
||||
doit = TRUE;
|
||||
todo -= tab_pad;
|
||||
***************
|
||||
*** 193,205 ****
|
||||
else
|
||||
p = skipwhite(p);
|
||||
line_len = (int)STRLEN(p) + 1;
|
||||
! newline = alloc(ind_len + line_len);
|
||||
! if (newline == NULL)
|
||||
! return FALSE;
|
||||
|
||||
/* Put the characters in the new line. */
|
||||
- s = newline;
|
||||
- todo = size;
|
||||
/* if 'expandtab' isn't set: use TABs */
|
||||
if (!curbuf->b_p_et)
|
||||
{
|
||||
--- 202,239 ----
|
||||
else
|
||||
p = skipwhite(p);
|
||||
line_len = (int)STRLEN(p) + 1;
|
||||
!
|
||||
! /* If 'preserveindent' and 'expandtab' are both set keep the original
|
||||
! * characters and allocate accordingly. We will fill the rest with spaces
|
||||
! * after the if (!curbuf->b_p_et) below. */
|
||||
! if (orig_char_len != 0)
|
||||
! {
|
||||
! newline = alloc(orig_char_len + size - ind_done + line_len);
|
||||
! if (newline == NULL)
|
||||
! return FALSE;
|
||||
! p = oldline;
|
||||
! s = newline;
|
||||
! while (orig_char_len > 0)
|
||||
! {
|
||||
! *s++ = *p++;
|
||||
! orig_char_len--;
|
||||
! }
|
||||
! /* Skip over any additional white space (useful when newindent is less
|
||||
! * than old) */
|
||||
! while (vim_iswhite(*p))
|
||||
! (void)*p++;
|
||||
! todo = size-ind_done;
|
||||
! }
|
||||
! else
|
||||
! {
|
||||
! todo = size;
|
||||
! newline = alloc(ind_len + line_len);
|
||||
! if (newline == NULL)
|
||||
! return FALSE;
|
||||
! s = newline;
|
||||
! }
|
||||
|
||||
/* Put the characters in the new line. */
|
||||
/* if 'expandtab' isn't set: use TABs */
|
||||
if (!curbuf->b_p_et)
|
||||
{
|
||||
***************
|
||||
*** 1320,1327 ****
|
||||
newindent += (int)curbuf->b_p_sw;
|
||||
}
|
||||
#endif
|
||||
! /* Copy the indent only if expand tab is disabled */
|
||||
! if (curbuf->b_p_ci && !curbuf->b_p_et)
|
||||
{
|
||||
(void)copy_indent(newindent, saved_line);
|
||||
|
||||
--- 1354,1361 ----
|
||||
newindent += (int)curbuf->b_p_sw;
|
||||
}
|
||||
#endif
|
||||
! /* Copy the indent */
|
||||
! if (curbuf->b_p_ci)
|
||||
{
|
||||
(void)copy_indent(newindent, saved_line);
|
||||
|
||||
*** ../vim-7.1.037/src/version.c Tue Jul 24 14:57:16 2007
|
||||
--- src/version.c Tue Jul 24 15:22:44 2007
|
||||
***************
|
||||
*** 668,669 ****
|
||||
--- 668,671 ----
|
||||
{ /* Add new patch number below this line */
|
||||
+ /**/
|
||||
+ 38,
|
||||
/**/
|
||||
|
||||
--
|
||||
Time is an illusion. Lunchtime doubly so.
|
||||
-- Ford Prefect, in Douglas Adams'
|
||||
"The Hitchhiker's Guide to the Galaxy"
|
||||
|
||||
/// 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.1.039
57
7.1.039
@ -1,57 +0,0 @@
|
||||
To: vim-dev@vim.org
|
||||
Subject: patch 7.1.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.1.039
|
||||
Problem: A tag in a help file that starts with "help-tags" and contains a
|
||||
percent sign may make Vim crash. (Ulf Harnhammar)
|
||||
Solution: Use puts() instead of fprintf().
|
||||
Files: src/ex_cmds.c
|
||||
|
||||
|
||||
*** ../vim-7.1.038/src/ex_cmds.c Tue Jul 24 11:15:46 2007
|
||||
--- src/ex_cmds.c Wed Jul 25 20:06:20 2007
|
||||
***************
|
||||
*** 6374,6382 ****
|
||||
for (i = 0; i < ga.ga_len; ++i)
|
||||
{
|
||||
s = ((char_u **)ga.ga_data)[i];
|
||||
! if (STRNCMP(s, "help-tags", 9) == 0)
|
||||
/* help-tags entry was added in formatted form */
|
||||
! fprintf(fd_tags, (char *)s);
|
||||
else
|
||||
{
|
||||
fprintf(fd_tags, "%s\t/*", s);
|
||||
--- 6374,6382 ----
|
||||
for (i = 0; i < ga.ga_len; ++i)
|
||||
{
|
||||
s = ((char_u **)ga.ga_data)[i];
|
||||
! if (STRNCMP(s, "help-tags\t", 10) == 0)
|
||||
/* help-tags entry was added in formatted form */
|
||||
! fputs((char *)s, fd_tags);
|
||||
else
|
||||
{
|
||||
fprintf(fd_tags, "%s\t/*", s);
|
||||
*** ../vim-7.1.038/src/version.c Tue Jul 24 15:25:27 2007
|
||||
--- src/version.c Wed Jul 25 22:41:18 2007
|
||||
***************
|
||||
*** 668,669 ****
|
||||
--- 668,671 ----
|
||||
{ /* Add new patch number below this line */
|
||||
+ /**/
|
||||
+ 39,
|
||||
/**/
|
||||
|
||||
--
|
||||
On the other hand, you have different fingers.
|
||||
-- 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 ///
|
133
7.1.041
133
7.1.041
@ -1,133 +0,0 @@
|
||||
To: vim-dev@vim.org
|
||||
Subject: patch 7.1.041 (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.1.041 (extra, after 7.1.040)
|
||||
Problem: Some changes for patch 7.1.0 are in extra files.
|
||||
Solution: Update the extra files.
|
||||
Files: src/testdir/Make_amiga.mak, src/testdir/Make_dos.mak,
|
||||
src/testdir/Make_os2.mak, src/testdir/Make_vms.mms
|
||||
|
||||
|
||||
*** ../vim-7.1.040/src/testdir/Make_amiga.mak Sun Apr 30 20:42:49 2006
|
||||
--- src/testdir/Make_amiga.mak Tue Jul 24 15:36:00 2007
|
||||
***************
|
||||
*** 25,31 ****
|
||||
test43.out test44.out test45.out test46.out test47.out \
|
||||
test48.out test51.out test53.out test54.out test55.out \
|
||||
test56.out test57.out test58.out test59.out test60.out \
|
||||
! test61.out test62.out
|
||||
|
||||
.SUFFIXES: .in .out
|
||||
|
||||
--- 25,31 ----
|
||||
test43.out test44.out test45.out test46.out test47.out \
|
||||
test48.out test51.out test53.out test54.out test55.out \
|
||||
test56.out test57.out test58.out test59.out test60.out \
|
||||
! test61.out test62.out test63.out
|
||||
|
||||
.SUFFIXES: .in .out
|
||||
|
||||
***************
|
||||
*** 107,109 ****
|
||||
--- 107,110 ----
|
||||
test60.out: test60.in
|
||||
test61.out: test61.in
|
||||
test62.out: test62.in
|
||||
+ test63.out: test63.in
|
||||
*** ../vim-7.1.040/src/testdir/Make_dos.mak Sun Apr 30 20:41:13 2006
|
||||
--- src/testdir/Make_dos.mak Tue Jul 24 15:37:47 2007
|
||||
***************
|
||||
*** 19,25 ****
|
||||
test44.out test45.out test46.out test47.out \
|
||||
test48.out test51.out test53.out test54.out \
|
||||
test55.out test56.out test57.out test58.out test59.out \
|
||||
! test60.out test61.out test62.out
|
||||
|
||||
SCRIPTS = test3.out test4.out test5.out test6.out test7.out \
|
||||
test8.out test9.out test11.out test13.out test14.out \
|
||||
--- 19,25 ----
|
||||
test44.out test45.out test46.out test47.out \
|
||||
test48.out test51.out test53.out test54.out \
|
||||
test55.out test56.out test57.out test58.out test59.out \
|
||||
! test60.out test61.out test62.out test63.out
|
||||
|
||||
SCRIPTS = test3.out test4.out test5.out test6.out test7.out \
|
||||
test8.out test9.out test11.out test13.out test14.out \
|
||||
*** ../vim-7.1.040/src/testdir/Make_os2.mak Sun Apr 30 20:29:29 2006
|
||||
--- src/testdir/Make_os2.mak Tue Jul 24 15:39:15 2007
|
||||
***************
|
||||
*** 25,31 ****
|
||||
test43.out test44.out test45.out test46.out test47.out \
|
||||
test48.out test51.out test53.out test54.out test55.out \
|
||||
test56.out test57.out test58.out test59.out test60.out \
|
||||
! test61.out test62.out
|
||||
|
||||
.SUFFIXES: .in .out
|
||||
|
||||
--- 25,31 ----
|
||||
test43.out test44.out test45.out test46.out test47.out \
|
||||
test48.out test51.out test53.out test54.out test55.out \
|
||||
test56.out test57.out test58.out test59.out test60.out \
|
||||
! test61.out test62.out test63.out
|
||||
|
||||
.SUFFIXES: .in .out
|
||||
|
||||
*** ../vim-7.1.040/src/testdir/Make_vms.mms Sun Apr 30 20:51:12 2006
|
||||
--- src/testdir/Make_vms.mms Tue Jul 24 15:39:23 2007
|
||||
***************
|
||||
*** 4,10 ****
|
||||
# Authors: Zoltan Arpadffy, <arpadffy@polarhome.com>
|
||||
# Sandor Kopanyi, <sandor.kopanyi@mailbox.hu>
|
||||
#
|
||||
! # Last change: 2006 Apr 30
|
||||
#
|
||||
# This has been tested on VMS 6.2 to 7.2 on DEC Alpha and VAX.
|
||||
# Edit the lines in the Configuration section below to select.
|
||||
--- 4,10 ----
|
||||
# Authors: Zoltan Arpadffy, <arpadffy@polarhome.com>
|
||||
# Sandor Kopanyi, <sandor.kopanyi@mailbox.hu>
|
||||
#
|
||||
! # Last change: 2007 Jul 24
|
||||
#
|
||||
# This has been tested on VMS 6.2 to 7.2 on DEC Alpha and VAX.
|
||||
# Edit the lines in the Configuration section below to select.
|
||||
***************
|
||||
*** 59,65 ****
|
||||
test43.out test44.out test45.out test46.out \
|
||||
test48.out test51.out test53.out test54.out test55.out \
|
||||
test56.out test57.out test58.out test59.out test60.out \
|
||||
! test61.out test62.out
|
||||
|
||||
.IFDEF WANT_GUI
|
||||
SCRIPT_GUI = test16.out
|
||||
--- 59,65 ----
|
||||
test43.out test44.out test45.out test46.out \
|
||||
test48.out test51.out test53.out test54.out test55.out \
|
||||
test56.out test57.out test58.out test59.out test60.out \
|
||||
! test61.out test62.out test63.out
|
||||
|
||||
.IFDEF WANT_GUI
|
||||
SCRIPT_GUI = test16.out
|
||||
*** ../vim-7.1.040/src/version.c Thu Jul 26 22:55:11 2007
|
||||
--- src/version.c Thu Jul 26 22:58:57 2007
|
||||
***************
|
||||
*** 668,669 ****
|
||||
--- 668,671 ----
|
||||
{ /* Add new patch number below this line */
|
||||
+ /**/
|
||||
+ 41,
|
||||
/**/
|
||||
|
||||
--
|
||||
Just remember...if the world didn't suck, we'd all fall off.
|
||||
|
||||
/// 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 ///
|
75
7.1.042
75
7.1.042
@ -1,75 +0,0 @@
|
||||
To: vim-dev@vim.org
|
||||
Subject: patch 7.1.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.1.042 (after 7.1.040)
|
||||
Problem: Internal error when using matchadd(). (David Larson)
|
||||
Solution: Check the third argument to be present before using the fourth
|
||||
argument. (Martin Toft)
|
||||
Files: src/eval.c
|
||||
|
||||
|
||||
*** ../vim-7.1.041/src/eval.c Thu Jul 26 22:55:11 2007
|
||||
--- src/eval.c Fri Jul 27 21:29:39 2007
|
||||
***************
|
||||
*** 7108,7114 ****
|
||||
{"getftype", 1, 1, f_getftype},
|
||||
{"getline", 1, 2, f_getline},
|
||||
{"getloclist", 1, 1, f_getqflist},
|
||||
! {"getmatches", 0, 0, f_getmatches},
|
||||
{"getpos", 1, 1, f_getpos},
|
||||
{"getqflist", 0, 0, f_getqflist},
|
||||
{"getreg", 0, 2, f_getreg},
|
||||
--- 7108,7114 ----
|
||||
{"getftype", 1, 1, f_getftype},
|
||||
{"getline", 1, 2, f_getline},
|
||||
{"getloclist", 1, 1, f_getqflist},
|
||||
! {"getmatches", 0, 0, f_getmatches},
|
||||
{"getpos", 1, 1, f_getpos},
|
||||
{"getqflist", 0, 0, f_getqflist},
|
||||
{"getreg", 0, 2, f_getreg},
|
||||
***************
|
||||
*** 12526,12534 ****
|
||||
if (grp == NULL || pat == NULL)
|
||||
return;
|
||||
if (argvars[2].v_type != VAR_UNKNOWN)
|
||||
prio = get_tv_number_chk(&argvars[2], &error);
|
||||
! if (argvars[3].v_type != VAR_UNKNOWN)
|
||||
! id = get_tv_number_chk(&argvars[3], &error);
|
||||
if (error == TRUE)
|
||||
return;
|
||||
if (id >= 1 && id <= 3)
|
||||
--- 12526,12536 ----
|
||||
if (grp == NULL || pat == NULL)
|
||||
return;
|
||||
if (argvars[2].v_type != VAR_UNKNOWN)
|
||||
+ {
|
||||
prio = get_tv_number_chk(&argvars[2], &error);
|
||||
! if (argvars[3].v_type != VAR_UNKNOWN)
|
||||
! id = get_tv_number_chk(&argvars[3], &error);
|
||||
! }
|
||||
if (error == TRUE)
|
||||
return;
|
||||
if (id >= 1 && id <= 3)
|
||||
*** ../vim-7.1.041/src/version.c Thu Jul 26 23:10:50 2007
|
||||
--- src/version.c Fri Jul 27 21:31:13 2007
|
||||
***************
|
||||
*** 668,669 ****
|
||||
--- 668,671 ----
|
||||
{ /* Add new patch number below this line */
|
||||
+ /**/
|
||||
+ 42,
|
||||
/**/
|
||||
|
||||
--
|
||||
The future isn't what it used to be.
|
||||
|
||||
/// 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.1.043
103
7.1.043
@ -1,103 +0,0 @@
|
||||
To: vim-dev@vim.org
|
||||
Subject: patch 7.1.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.1.043
|
||||
Problem: In Ex mode using CTRL-D twice may cause a crash. Cursor isn't
|
||||
positioned properly after CTRL-D.
|
||||
Solution: Set prev_char properly. Position the cursor correctly. (Antony
|
||||
Scriven)
|
||||
Files: src/ex_getln.c
|
||||
|
||||
|
||||
*** ../vim-7.1.042/src/ex_getln.c Tue Jul 24 14:32:44 2007
|
||||
--- src/ex_getln.c Wed Jul 25 20:57:05 2007
|
||||
***************
|
||||
*** 2095,2105 ****
|
||||
garray_T line_ga;
|
||||
char_u *pend;
|
||||
int startcol = 0;
|
||||
! int c1;
|
||||
int escaped = FALSE; /* CTRL-V typed */
|
||||
int vcol = 0;
|
||||
char_u *p;
|
||||
! int prev_char = 0;
|
||||
|
||||
/* Switch cursor on now. This avoids that it happens after the "\n", which
|
||||
* confuses the system function that computes tabstops. */
|
||||
--- 2095,2105 ----
|
||||
garray_T line_ga;
|
||||
char_u *pend;
|
||||
int startcol = 0;
|
||||
! int c1 = 0;
|
||||
int escaped = FALSE; /* CTRL-V typed */
|
||||
int vcol = 0;
|
||||
char_u *p;
|
||||
! int prev_char;
|
||||
|
||||
/* Switch cursor on now. This avoids that it happens after the "\n", which
|
||||
* confuses the system function that computes tabstops. */
|
||||
***************
|
||||
*** 2152,2157 ****
|
||||
--- 2152,2158 ----
|
||||
|
||||
/* Get one character at a time. Don't use inchar(), it can't handle
|
||||
* special characters. */
|
||||
+ prev_char = c1;
|
||||
c1 = vgetc();
|
||||
|
||||
/*
|
||||
***************
|
||||
*** 2209,2215 ****
|
||||
redraw:
|
||||
/* redraw the line */
|
||||
msg_col = startcol;
|
||||
- windgoto(msg_row, msg_col);
|
||||
vcol = 0;
|
||||
for (p = (char_u *)line_ga.ga_data;
|
||||
p < (char_u *)line_ga.ga_data + line_ga.ga_len; ++p)
|
||||
--- 2210,2215 ----
|
||||
***************
|
||||
*** 2228,2233 ****
|
||||
--- 2228,2234 ----
|
||||
}
|
||||
}
|
||||
msg_clr_eos();
|
||||
+ windgoto(msg_row, msg_col);
|
||||
continue;
|
||||
}
|
||||
|
||||
***************
|
||||
*** 2273,2279 ****
|
||||
if (IS_SPECIAL(c1))
|
||||
c1 = '?';
|
||||
((char_u *)line_ga.ga_data)[line_ga.ga_len] = c1;
|
||||
- prev_char = c1;
|
||||
if (c1 == '\n')
|
||||
msg_putchar('\n');
|
||||
else if (c1 == TAB)
|
||||
--- 2274,2279 ----
|
||||
*** ../vim-7.1.042/src/version.c Fri Jul 27 21:32:13 2007
|
||||
--- src/version.c Sat Jul 28 14:19:37 2007
|
||||
***************
|
||||
*** 668,669 ****
|
||||
--- 668,671 ----
|
||||
{ /* Add new patch number below this line */
|
||||
+ /**/
|
||||
+ 43,
|
||||
/**/
|
||||
|
||||
--
|
||||
hundred-and-one symptoms of being an internet addict:
|
||||
48. You get a tatoo that says "This body best viewed with Netscape 3.1 or
|
||||
higher."
|
||||
|
||||
/// 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.1.044
54
7.1.044
@ -1,54 +0,0 @@
|
||||
To: vim-dev@vim.org
|
||||
Subject: patch 7.1.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.1.044
|
||||
Problem: In Insert mode 0 CTRL-T deletes all indent, it should add indent.
|
||||
(Gautam Iyer)
|
||||
Solution: Check for CTRL-D typed.
|
||||
Files: src/edit.c
|
||||
|
||||
|
||||
*** ../vim-7.1.043/src/edit.c Thu Jun 28 12:44:56 2007
|
||||
--- src/edit.c Wed Jul 25 22:50:28 2007
|
||||
***************
|
||||
*** 8000,8006 ****
|
||||
/*
|
||||
* 0^D and ^^D: remove all indent.
|
||||
*/
|
||||
! if ((lastc == '0' || lastc == '^') && curwin->w_cursor.col)
|
||||
{
|
||||
--curwin->w_cursor.col;
|
||||
(void)del_char(FALSE); /* delete the '^' or '0' */
|
||||
--- 8000,8007 ----
|
||||
/*
|
||||
* 0^D and ^^D: remove all indent.
|
||||
*/
|
||||
! if (c == Ctrl_D && (lastc == '0' || lastc == '^')
|
||||
! && curwin->w_cursor.col > 0)
|
||||
{
|
||||
--curwin->w_cursor.col;
|
||||
(void)del_char(FALSE); /* delete the '^' or '0' */
|
||||
*** ../vim-7.1.043/src/version.c Sat Jul 28 14:21:04 2007
|
||||
--- src/version.c Sun Jul 29 14:14:36 2007
|
||||
***************
|
||||
*** 668,669 ****
|
||||
--- 668,671 ----
|
||||
{ /* Add new patch number below this line */
|
||||
+ /**/
|
||||
+ 44,
|
||||
/**/
|
||||
|
||||
--
|
||||
hundred-and-one symptoms of being an internet addict:
|
||||
54. You start tilting your head sideways to 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 ///
|
101
7.1.045
101
7.1.045
@ -1,101 +0,0 @@
|
||||
To: vim-dev@vim.org
|
||||
Subject: patch 7.1.045
|
||||
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.1.045
|
||||
Problem: Unnecessary screen redrawing. (Jjgod Jiang)
|
||||
Solution: Reset "must_redraw" after clearing the screen.
|
||||
Files: src/screen.c
|
||||
|
||||
|
||||
*** ../vim-7.1.044/src/screen.c Thu Jul 26 22:55:11 2007
|
||||
--- src/screen.c Mon Jul 30 21:39:32 2007
|
||||
***************
|
||||
*** 331,336 ****
|
||||
--- 331,341 ----
|
||||
{
|
||||
if (type < must_redraw) /* use maximal type */
|
||||
type = must_redraw;
|
||||
+
|
||||
+ /* must_redraw is reset here, so that when we run into some weird
|
||||
+ * reason to redraw while busy redrawing (e.g., asynchronous
|
||||
+ * scrolling), or update_topline() in win_update() will cause a
|
||||
+ * scroll, the screen will be redrawn later or in win_update(). */
|
||||
must_redraw = 0;
|
||||
}
|
||||
|
||||
***************
|
||||
*** 1019,1024 ****
|
||||
--- 1024,1036 ----
|
||||
type = VALID;
|
||||
}
|
||||
|
||||
+ /* Trick: we want to avoid clearning the screen twice. screenclear() will
|
||||
+ * set "screen_cleared" to TRUE. The special value MAYBE (which is still
|
||||
+ * non-zero and thus not FALSE) will indicate that screenclear() was not
|
||||
+ * called. */
|
||||
+ if (screen_cleared)
|
||||
+ screen_cleared = MAYBE;
|
||||
+
|
||||
/*
|
||||
* If there are no changes on the screen that require a complete redraw,
|
||||
* handle three cases:
|
||||
***************
|
||||
*** 1220,1226 ****
|
||||
mid_end = wp->w_height;
|
||||
if (lastwin == firstwin)
|
||||
{
|
||||
! screenclear();
|
||||
#ifdef FEAT_WINDOWS
|
||||
/* The screen was cleared, redraw the tab pages line. */
|
||||
if (redraw_tabline)
|
||||
--- 1232,1242 ----
|
||||
mid_end = wp->w_height;
|
||||
if (lastwin == firstwin)
|
||||
{
|
||||
! /* Clear the screen when it was not done by win_del_lines() or
|
||||
! * win_ins_lines() above, "screen_cleared" is FALSE or MAYBE
|
||||
! * then. */
|
||||
! if (screen_cleared != TRUE)
|
||||
! screenclear();
|
||||
#ifdef FEAT_WINDOWS
|
||||
/* The screen was cleared, redraw the tab pages line. */
|
||||
if (redraw_tabline)
|
||||
***************
|
||||
*** 1228,1233 ****
|
||||
--- 1244,1256 ----
|
||||
#endif
|
||||
}
|
||||
}
|
||||
+
|
||||
+ /* When win_del_lines() or win_ins_lines() caused the screen to be
|
||||
+ * cleared (only happens for the first window) or when screenclear()
|
||||
+ * was called directly above, "must_redraw" will have been set to
|
||||
+ * NOT_VALID, need to reset it here to avoid redrawing twice. */
|
||||
+ if (screen_cleared == TRUE)
|
||||
+ must_redraw = 0;
|
||||
}
|
||||
else
|
||||
{
|
||||
*** ../vim-7.1.044/src/version.c Sun Jul 29 15:02:34 2007
|
||||
--- src/version.c Mon Jul 30 21:58:06 2007
|
||||
***************
|
||||
*** 668,669 ****
|
||||
--- 668,671 ----
|
||||
{ /* Add new patch number below this line */
|
||||
+ /**/
|
||||
+ 45,
|
||||
/**/
|
||||
|
||||
--
|
||||
Be thankful to be in a traffic jam, because it means you own a car.
|
||||
|
||||
/// 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.1.046
60
7.1.046
@ -1,60 +0,0 @@
|
||||
To: vim-dev@vim.org
|
||||
Subject: patch 7.1.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.1.046
|
||||
Problem: ":s" command removes combining characters. (Ron Aaron)
|
||||
Solution: Copy composing characters individually. (Chris Lubinski)
|
||||
Files: src/regexp.c
|
||||
|
||||
|
||||
*** ../vim-7.1.045/src/regexp.c Thu May 10 19:58:01 2007
|
||||
--- src/regexp.c Fri Jul 27 21:17:47 2007
|
||||
***************
|
||||
*** 7014,7020 ****
|
||||
#ifdef FEAT_MBYTE
|
||||
if (has_mbyte)
|
||||
{
|
||||
! int l = mb_ptr2len(s) - 1;
|
||||
|
||||
s += l;
|
||||
len -= l;
|
||||
--- 7014,7027 ----
|
||||
#ifdef FEAT_MBYTE
|
||||
if (has_mbyte)
|
||||
{
|
||||
! int l;
|
||||
!
|
||||
! /* Copy composing characters separately, one
|
||||
! * at a time. */
|
||||
! if (enc_utf8)
|
||||
! l = utf_ptr2len(s) - 1;
|
||||
! else
|
||||
! l = mb_ptr2len(s) - 1;
|
||||
|
||||
s += l;
|
||||
len -= l;
|
||||
*** ../vim-7.1.045/src/version.c Mon Jul 30 21:59:50 2007
|
||||
--- src/version.c Mon Jul 30 22:30:02 2007
|
||||
***************
|
||||
*** 668,669 ****
|
||||
--- 668,671 ----
|
||||
{ /* Add new patch number below this line */
|
||||
+ /**/
|
||||
+ 46,
|
||||
/**/
|
||||
|
||||
--
|
||||
hundred-and-one symptoms of being an internet addict:
|
||||
57. You begin to wonder how on earth your service provider is allowed to call
|
||||
200 hours per month "unlimited."
|
||||
|
||||
/// 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.1.047
52
7.1.047
@ -1,52 +0,0 @@
|
||||
To: vim-dev@vim.org
|
||||
Subject: patch 7.1.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.1.047
|
||||
Problem: vim_regcomp() called with invalid argument. (Xiaozhou Liu)
|
||||
Solution: Change TRUE to RE_MAGIC + RE_STRING.
|
||||
Files: src/ex_eval.c
|
||||
|
||||
|
||||
*** ../vim-7.1.046/src/ex_eval.c Thu May 10 20:23:50 2007
|
||||
--- src/ex_eval.c Sat Jul 28 13:09:00 2007
|
||||
***************
|
||||
*** 1551,1557 ****
|
||||
}
|
||||
save_cpo = p_cpo;
|
||||
p_cpo = (char_u *)"";
|
||||
! regmatch.regprog = vim_regcomp(pat, TRUE);
|
||||
regmatch.rm_ic = FALSE;
|
||||
if (end != NULL)
|
||||
*end = save_char;
|
||||
--- 1551,1557 ----
|
||||
}
|
||||
save_cpo = p_cpo;
|
||||
p_cpo = (char_u *)"";
|
||||
! regmatch.regprog = vim_regcomp(pat, RE_MAGIC + RE_STRING);
|
||||
regmatch.rm_ic = FALSE;
|
||||
if (end != NULL)
|
||||
*end = save_char;
|
||||
*** ../vim-7.1.046/src/version.c Mon Jul 30 22:32:11 2007
|
||||
--- src/version.c Wed Aug 1 15:46:28 2007
|
||||
***************
|
||||
*** 668,669 ****
|
||||
--- 668,671 ----
|
||||
{ /* Add new patch number below this line */
|
||||
+ /**/
|
||||
+ 47,
|
||||
/**/
|
||||
|
||||
--
|
||||
hundred-and-one symptoms of being an internet addict:
|
||||
80. At parties, you introduce your spouse as your "service provider."
|
||||
|
||||
/// 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 ///
|
135
7.1.048
135
7.1.048
@ -1,135 +0,0 @@
|
||||
To: vim-dev@vim.org
|
||||
Subject: patch 7.1.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.1.048
|
||||
Problem: The matchparen plugin doesn't update the match when scrolling with
|
||||
the mouse wheel. (Ilya Bobir)
|
||||
Solution: Set the match highlighting for text that can be scrolled into the
|
||||
viewable area without moving the cursor. (Chris Lubinski)
|
||||
Files: runtime/plugin/matchparen.vim
|
||||
|
||||
|
||||
*** ../vim-7.1.047/runtime/plugin/matchparen.vim Sun May 6 14:26:16 2007
|
||||
--- runtime/plugin/matchparen.vim Mon Jul 30 21:14:06 2007
|
||||
***************
|
||||
*** 1,6 ****
|
||||
" Vim plugin for showing matching parens
|
||||
" Maintainer: Bram Moolenaar <Bram@vim.org>
|
||||
! " Last Change: 2006 Oct 12
|
||||
|
||||
" 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: 2007 Jul 30
|
||||
|
||||
" Exit quickly when:
|
||||
" - this plugin was already loaded (or disabled)
|
||||
***************
|
||||
*** 62,86 ****
|
||||
" Figure out the arguments for searchpairpos().
|
||||
" Restrict the search to visible lines with "stopline".
|
||||
" And avoid searching very far (e.g., for closed folds and long lines)
|
||||
if i % 2 == 0
|
||||
let s_flags = 'nW'
|
||||
let c2 = plist[i + 1]
|
||||
if has("byte_offset") && has("syntax_items") && &smc > 0
|
||||
let stopbyte = min([line2byte("$"), line2byte(".") + col(".") + &smc * 2])
|
||||
! let stopline = min([line('w$'), byte2line(stopbyte)])
|
||||
else
|
||||
! let stopline = min([line('w$'), c_lnum + 100])
|
||||
endif
|
||||
else
|
||||
let s_flags = 'nbW'
|
||||
let c2 = c
|
||||
let c = plist[i - 1]
|
||||
if has("byte_offset") && has("syntax_items") && &smc > 0
|
||||
let stopbyte = max([1, line2byte(".") + col(".") - &smc * 2])
|
||||
! let stopline = max([line('w0'), byte2line(stopbyte)])
|
||||
else
|
||||
! let stopline = max([line('w0'), c_lnum - 100])
|
||||
endif
|
||||
endif
|
||||
if c == '['
|
||||
let c = '\['
|
||||
--- 62,98 ----
|
||||
" Figure out the arguments for searchpairpos().
|
||||
" Restrict the search to visible lines with "stopline".
|
||||
" And avoid searching very far (e.g., for closed folds and long lines)
|
||||
+ " The "viewable" variables give a range in which we can scroll while keeping
|
||||
+ " the cursor at the same position
|
||||
+ " adjustedScrolloff accounts for very large numbers of scrolloff
|
||||
+ let adjustedScrolloff = min([&scrolloff, (line('w$') - line('w0')) / 2])
|
||||
+ let bottom_viewable = min([line('$'), c_lnum + &lines - adjustedScrolloff - 2])
|
||||
+ let top_viewable = max([1, c_lnum-&lines+adjustedScrolloff + 2])
|
||||
+ " one of these stoplines will be adjusted below, but the current values are
|
||||
+ " minimal boundaries within the current window
|
||||
+ let stoplinebottom = line('w$')
|
||||
+ let stoplinetop = line('w0')
|
||||
if i % 2 == 0
|
||||
let s_flags = 'nW'
|
||||
let c2 = plist[i + 1]
|
||||
if has("byte_offset") && has("syntax_items") && &smc > 0
|
||||
let stopbyte = min([line2byte("$"), line2byte(".") + col(".") + &smc * 2])
|
||||
! let stopline = min([bottom_viewable, byte2line(stopbyte)])
|
||||
else
|
||||
! let stopline = min([bottom_viewable, c_lnum + 100])
|
||||
endif
|
||||
+ let stoplinebottom = stopline
|
||||
else
|
||||
let s_flags = 'nbW'
|
||||
let c2 = c
|
||||
let c = plist[i - 1]
|
||||
if has("byte_offset") && has("syntax_items") && &smc > 0
|
||||
let stopbyte = max([1, line2byte(".") + col(".") - &smc * 2])
|
||||
! let stopline = max([top_viewable, byte2line(stopbyte)])
|
||||
else
|
||||
! let stopline = max([top_viewable, c_lnum - 100])
|
||||
endif
|
||||
+ let stoplinetop = stopline
|
||||
endif
|
||||
if c == '['
|
||||
let c = '\['
|
||||
***************
|
||||
*** 106,112 ****
|
||||
endif
|
||||
|
||||
" If a match is found setup match highlighting.
|
||||
! if m_lnum > 0 && m_lnum >= line('w0') && m_lnum <= line('w$')
|
||||
exe '3match MatchParen /\(\%' . c_lnum . 'l\%' . (c_col - before) .
|
||||
\ 'c\)\|\(\%' . m_lnum . 'l\%' . m_col . 'c\)/'
|
||||
let w:paren_hl_on = 1
|
||||
--- 118,124 ----
|
||||
endif
|
||||
|
||||
" If a match is found setup match highlighting.
|
||||
! if m_lnum > 0 && m_lnum >= stoplinetop && m_lnum <= stoplinebottom
|
||||
exe '3match MatchParen /\(\%' . c_lnum . 'l\%' . (c_col - before) .
|
||||
\ 'c\)\|\(\%' . m_lnum . 'l\%' . m_col . 'c\)/'
|
||||
let w:paren_hl_on = 1
|
||||
*** ../vim-7.1.047/src/version.c Wed Aug 1 15:47:06 2007
|
||||
--- src/version.c Thu Aug 2 22:59:07 2007
|
||||
***************
|
||||
*** 668,669 ****
|
||||
--- 668,671 ----
|
||||
{ /* Add new patch number below this line */
|
||||
+ /**/
|
||||
+ 48,
|
||||
/**/
|
||||
|
||||
--
|
||||
hundred-and-one symptoms of being an internet addict:
|
||||
91. It's Saturday afternoon in the middle of May and you
|
||||
are on computer.
|
||||
|
||||
/// 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.1.049
52
7.1.049
@ -1,52 +0,0 @@
|
||||
To: vim-dev@vim.org
|
||||
Subject: patch 7.1.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.1.049
|
||||
Problem: Cannot compile GTK2 version with Hangul input feature.
|
||||
Solution: Don't define FEAT_XFONTSET when using GTK2.
|
||||
Files: src/feature.h
|
||||
|
||||
|
||||
*** ../vim-7.1.048/src/feature.h Thu May 10 19:43:24 2007
|
||||
--- src/feature.h Fri Aug 3 19:32:56 2007
|
||||
***************
|
||||
*** 673,679 ****
|
||||
# define ESC_CHG_TO_ENG_MODE /* if defined, when ESC pressed,
|
||||
* turn to english mode
|
||||
*/
|
||||
! # if !defined(FEAT_XFONTSET) && defined(HAVE_X11)
|
||||
# define FEAT_XFONTSET /* Hangul input requires xfontset */
|
||||
# endif
|
||||
# if defined(FEAT_XIM) && !defined(LINT)
|
||||
--- 673,679 ----
|
||||
# define ESC_CHG_TO_ENG_MODE /* if defined, when ESC pressed,
|
||||
* turn to english mode
|
||||
*/
|
||||
! # if !defined(FEAT_XFONTSET) && defined(HAVE_X11) && !defined(HAVE_GTK2)
|
||||
# define FEAT_XFONTSET /* Hangul input requires xfontset */
|
||||
# endif
|
||||
# if defined(FEAT_XIM) && !defined(LINT)
|
||||
*** ../vim-7.1.048/src/version.c Thu Aug 2 23:00:06 2007
|
||||
--- src/version.c Fri Aug 3 21:58:23 2007
|
||||
***************
|
||||
*** 668,669 ****
|
||||
--- 668,671 ----
|
||||
{ /* Add new patch number below this line */
|
||||
+ /**/
|
||||
+ 49,
|
||||
/**/
|
||||
|
||||
--
|
||||
From "know your smileys":
|
||||
:-O>-o Smiley American tourist (note big mouth and camera)
|
||||
|
||||
/// 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 ///
|
172
7.1.050
172
7.1.050
@ -1,172 +0,0 @@
|
||||
To: vim-dev@vim.org
|
||||
Subject: patch 7.1.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.1.050
|
||||
Problem: Possible crash when using C++ indenting. (Chris Monson)
|
||||
Solution: Keep the line pointer to the line to compare with. Avoid going
|
||||
past the end of line.
|
||||
Files: src/misc1.c
|
||||
|
||||
|
||||
*** ../vim-7.1.049/src/misc1.c Tue Jul 24 15:25:27 2007
|
||||
--- src/misc1.c Fri Aug 3 21:07:17 2007
|
||||
***************
|
||||
*** 4820,4826 ****
|
||||
static int cin_iswhileofdo __ARGS((char_u *, linenr_T, int));
|
||||
static int cin_iswhileofdo_end __ARGS((int terminated, int ind_maxparen, int ind_maxcomment));
|
||||
static int cin_isbreak __ARGS((char_u *));
|
||||
! static int cin_is_cpp_baseclass __ARGS((char_u *line, colnr_T *col));
|
||||
static int get_baseclass_amount __ARGS((int col, int ind_maxparen, int ind_maxcomment, int ind_cpp_baseclass));
|
||||
static int cin_ends_in __ARGS((char_u *, char_u *, char_u *));
|
||||
static int cin_skip2pos __ARGS((pos_T *trypos));
|
||||
--- 4820,4826 ----
|
||||
static int cin_iswhileofdo __ARGS((char_u *, linenr_T, int));
|
||||
static int cin_iswhileofdo_end __ARGS((int terminated, int ind_maxparen, int ind_maxcomment));
|
||||
static int cin_isbreak __ARGS((char_u *));
|
||||
! static int cin_is_cpp_baseclass __ARGS((colnr_T *col));
|
||||
static int get_baseclass_amount __ARGS((int col, int ind_maxparen, int ind_maxcomment, int ind_cpp_baseclass));
|
||||
static int cin_ends_in __ARGS((char_u *, char_u *, char_u *));
|
||||
static int cin_skip2pos __ARGS((pos_T *trypos));
|
||||
***************
|
||||
*** 5585,5597 ****
|
||||
* This is a lot of guessing. Watch out for "cond ? func() : foo".
|
||||
*/
|
||||
static int
|
||||
! cin_is_cpp_baseclass(line, col)
|
||||
! char_u *line;
|
||||
colnr_T *col; /* return: column to align with */
|
||||
{
|
||||
char_u *s;
|
||||
int class_or_struct, lookfor_ctor_init, cpp_base_class;
|
||||
linenr_T lnum = curwin->w_cursor.lnum;
|
||||
|
||||
*col = 0;
|
||||
|
||||
--- 5585,5597 ----
|
||||
* This is a lot of guessing. Watch out for "cond ? func() : foo".
|
||||
*/
|
||||
static int
|
||||
! cin_is_cpp_baseclass(col)
|
||||
colnr_T *col; /* return: column to align with */
|
||||
{
|
||||
char_u *s;
|
||||
int class_or_struct, lookfor_ctor_init, cpp_base_class;
|
||||
linenr_T lnum = curwin->w_cursor.lnum;
|
||||
+ char_u *line = ml_get_curline();
|
||||
|
||||
*col = 0;
|
||||
|
||||
***************
|
||||
*** 5619,5625 ****
|
||||
*/
|
||||
while (lnum > 1)
|
||||
{
|
||||
! s = skipwhite(ml_get(lnum - 1));
|
||||
if (*s == '#' || *s == NUL)
|
||||
break;
|
||||
while (*s != NUL)
|
||||
--- 5619,5626 ----
|
||||
*/
|
||||
while (lnum > 1)
|
||||
{
|
||||
! line = ml_get(lnum - 1);
|
||||
! s = skipwhite(line);
|
||||
if (*s == '#' || *s == NUL)
|
||||
break;
|
||||
while (*s != NUL)
|
||||
***************
|
||||
*** 5636,5642 ****
|
||||
--lnum;
|
||||
}
|
||||
|
||||
! s = cin_skipcomment(ml_get(lnum));
|
||||
for (;;)
|
||||
{
|
||||
if (*s == NUL)
|
||||
--- 5637,5644 ----
|
||||
--lnum;
|
||||
}
|
||||
|
||||
! line = ml_get(lnum);
|
||||
! s = cin_skipcomment(line);
|
||||
for (;;)
|
||||
{
|
||||
if (*s == NUL)
|
||||
***************
|
||||
*** 5644,5650 ****
|
||||
if (lnum == curwin->w_cursor.lnum)
|
||||
break;
|
||||
/* Continue in the cursor line. */
|
||||
! s = cin_skipcomment(ml_get(++lnum));
|
||||
}
|
||||
|
||||
if (s[0] == ':')
|
||||
--- 5646,5655 ----
|
||||
if (lnum == curwin->w_cursor.lnum)
|
||||
break;
|
||||
/* Continue in the cursor line. */
|
||||
! line = ml_get(++lnum);
|
||||
! s = cin_skipcomment(line);
|
||||
! if (*s == NUL)
|
||||
! continue;
|
||||
}
|
||||
|
||||
if (s[0] == ':')
|
||||
***************
|
||||
*** 7113,7119 ****
|
||||
n = FALSE;
|
||||
if (lookfor != LOOKFOR_TERM && ind_cpp_baseclass > 0)
|
||||
{
|
||||
! n = cin_is_cpp_baseclass(l, &col);
|
||||
l = ml_get_curline();
|
||||
}
|
||||
if (n)
|
||||
--- 7118,7124 ----
|
||||
n = FALSE;
|
||||
if (lookfor != LOOKFOR_TERM && ind_cpp_baseclass > 0)
|
||||
{
|
||||
! n = cin_is_cpp_baseclass(&col);
|
||||
l = ml_get_curline();
|
||||
}
|
||||
if (n)
|
||||
***************
|
||||
*** 7704,7710 ****
|
||||
n = FALSE;
|
||||
if (ind_cpp_baseclass != 0 && theline[0] != '{')
|
||||
{
|
||||
! n = cin_is_cpp_baseclass(l, &col);
|
||||
l = ml_get_curline();
|
||||
}
|
||||
if (n)
|
||||
--- 7709,7715 ----
|
||||
n = FALSE;
|
||||
if (ind_cpp_baseclass != 0 && theline[0] != '{')
|
||||
{
|
||||
! n = cin_is_cpp_baseclass(&col);
|
||||
l = ml_get_curline();
|
||||
}
|
||||
if (n)
|
||||
*** ../vim-7.1.049/src/version.c Fri Aug 3 22:01:35 2007
|
||||
--- src/version.c Sat Aug 4 12:11:51 2007
|
||||
***************
|
||||
*** 668,669 ****
|
||||
--- 668,671 ----
|
||||
{ /* Add new patch number below this line */
|
||||
+ /**/
|
||||
+ 50,
|
||||
/**/
|
||||
|
||||
--
|
||||
From "know your smileys":
|
||||
|-P Reaction to unusually ugly C code
|
||||
|
||||
/// 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 ///
|
86
7.1.051
86
7.1.051
@ -1,86 +0,0 @@
|
||||
To: vim-dev@vim.org
|
||||
Subject: patch 7.1.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.1.051
|
||||
Problem: Accessing uninitialized memory when finding spell suggestions.
|
||||
Solution: Don't try swapping characters at the end of a word.
|
||||
Files: src/spell.c
|
||||
|
||||
|
||||
*** ../vim-7.1.050/src/spell.c Tue Jul 24 10:44:10 2007
|
||||
--- src/spell.c Sun Aug 5 16:59:48 2007
|
||||
***************
|
||||
*** 12182,12188 ****
|
||||
{
|
||||
n = mb_cptr2len(p);
|
||||
c = mb_ptr2char(p);
|
||||
! if (!soundfold && !spell_iswordp(p + n, curbuf))
|
||||
c2 = c; /* don't swap non-word char */
|
||||
else
|
||||
c2 = mb_ptr2char(p + n);
|
||||
--- 12182,12190 ----
|
||||
{
|
||||
n = mb_cptr2len(p);
|
||||
c = mb_ptr2char(p);
|
||||
! if (p[n] == NUL)
|
||||
! c2 = NUL;
|
||||
! else if (!soundfold && !spell_iswordp(p + n, curbuf))
|
||||
c2 = c; /* don't swap non-word char */
|
||||
else
|
||||
c2 = mb_ptr2char(p + n);
|
||||
***************
|
||||
*** 12190,12199 ****
|
||||
else
|
||||
#endif
|
||||
{
|
||||
! if (!soundfold && !spell_iswordp(p + 1, curbuf))
|
||||
c2 = c; /* don't swap non-word char */
|
||||
else
|
||||
c2 = p[1];
|
||||
}
|
||||
|
||||
/* When characters are identical, swap won't do anything.
|
||||
--- 12192,12210 ----
|
||||
else
|
||||
#endif
|
||||
{
|
||||
! if (p[1] == NUL)
|
||||
! c2 = NUL;
|
||||
! else if (!soundfold && !spell_iswordp(p + 1, curbuf))
|
||||
c2 = c; /* don't swap non-word char */
|
||||
else
|
||||
c2 = p[1];
|
||||
+ }
|
||||
+
|
||||
+ /* When the second character is NUL we can't swap. */
|
||||
+ if (c2 == NUL)
|
||||
+ {
|
||||
+ sp->ts_state = STATE_REP_INI;
|
||||
+ break;
|
||||
}
|
||||
|
||||
/* When characters are identical, swap won't do anything.
|
||||
*** ../vim-7.1.050/src/version.c Sat Aug 4 12:14:04 2007
|
||||
--- src/version.c Sun Aug 5 18:31:09 2007
|
||||
***************
|
||||
*** 668,669 ****
|
||||
--- 668,671 ----
|
||||
{ /* Add new patch number below this line */
|
||||
+ /**/
|
||||
+ 51,
|
||||
/**/
|
||||
|
||||
--
|
||||
From "know your smileys":
|
||||
8<}} Glasses, big nose, beard
|
||||
|
||||
/// 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.1.052
89
7.1.052
@ -1,89 +0,0 @@
|
||||
To: vim-dev@vim.org
|
||||
Subject: patch 7.1.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.1.052
|
||||
Problem: When creating a new match not all fields are initialized, which
|
||||
may lead to unpredictable results.
|
||||
Solution: Initialise rmm_ic and rmm_maxcol.
|
||||
Files: src/window.c
|
||||
|
||||
|
||||
*** ../vim-7.1.051/src/window.c Thu Jul 26 22:55:11 2007
|
||||
--- src/window.c Sun Aug 5 17:17:51 2007
|
||||
***************
|
||||
*** 6200,6206 ****
|
||||
matchitem_T *prev;
|
||||
matchitem_T *m;
|
||||
int hlg_id;
|
||||
! regmmatch_T match;
|
||||
|
||||
if (*grp == NUL || *pat == NUL)
|
||||
return -1;
|
||||
--- 6243,6249 ----
|
||||
matchitem_T *prev;
|
||||
matchitem_T *m;
|
||||
int hlg_id;
|
||||
! regprog_T *regprog;
|
||||
|
||||
if (*grp == NUL || *pat == NUL)
|
||||
return -1;
|
||||
***************
|
||||
*** 6227,6233 ****
|
||||
EMSG2(_(e_nogroup), grp);
|
||||
return -1;
|
||||
}
|
||||
! if ((match.regprog = vim_regcomp(pat, RE_MAGIC)) == NULL)
|
||||
{
|
||||
EMSG2(_(e_invarg2), pat);
|
||||
return -1;
|
||||
--- 6270,6276 ----
|
||||
EMSG2(_(e_nogroup), grp);
|
||||
return -1;
|
||||
}
|
||||
! if ((regprog = vim_regcomp(pat, RE_MAGIC)) == NULL)
|
||||
{
|
||||
EMSG2(_(e_invarg2), pat);
|
||||
return -1;
|
||||
***************
|
||||
*** 6250,6256 ****
|
||||
m->priority = prio;
|
||||
m->pattern = vim_strsave(pat);
|
||||
m->hlg_id = hlg_id;
|
||||
! m->match.regprog = match.regprog;
|
||||
|
||||
/* Insert new match. The match list is in ascending order with regard to
|
||||
* the match priorities. */
|
||||
--- 6293,6301 ----
|
||||
m->priority = prio;
|
||||
m->pattern = vim_strsave(pat);
|
||||
m->hlg_id = hlg_id;
|
||||
! m->match.regprog = regprog;
|
||||
! m->match.rmm_ic = FALSE;
|
||||
! m->match.rmm_maxcol = 0;
|
||||
|
||||
/* Insert new match. The match list is in ascending order with regard to
|
||||
* the match priorities. */
|
||||
*** ../vim-7.1.051/src/version.c Sun Aug 5 18:32:21 2007
|
||||
--- src/version.c Sun Aug 5 18:47:55 2007
|
||||
***************
|
||||
*** 668,669 ****
|
||||
--- 668,671 ----
|
||||
{ /* Add new patch number below this line */
|
||||
+ /**/
|
||||
+ 52,
|
||||
/**/
|
||||
|
||||
--
|
||||
From "know your smileys":
|
||||
8-O "Omigod!!" (done "rm -rf *" ?)
|
||||
|
||||
/// 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.1.053
52
7.1.053
@ -1,52 +0,0 @@
|
||||
To: vim-dev@vim.org
|
||||
Subject: patch 7.1.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.1.053
|
||||
Problem: Accessing uninitialized memory when giving a message.
|
||||
Solution: Check going the length before checking for a NUL byte.
|
||||
Files: src/message.c
|
||||
|
||||
|
||||
*** ../vim-7.1.052/src/message.c Thu Jul 5 10:10:29 2007
|
||||
--- src/message.c Sat Aug 4 23:13:58 2007
|
||||
***************
|
||||
*** 1842,1848 ****
|
||||
int wrap;
|
||||
|
||||
did_wait_return = FALSE;
|
||||
! while (*s != NUL && (maxlen < 0 || (int)(s - str) < maxlen))
|
||||
{
|
||||
/*
|
||||
* We are at the end of the screen line when:
|
||||
--- 1842,1848 ----
|
||||
int wrap;
|
||||
|
||||
did_wait_return = FALSE;
|
||||
! while ((maxlen < 0 || (int)(s - str) < maxlen) && *s != NUL)
|
||||
{
|
||||
/*
|
||||
* We are at the end of the screen line when:
|
||||
*** ../vim-7.1.052/src/version.c Sun Aug 5 18:49:07 2007
|
||||
--- src/version.c Sun Aug 5 19:18:46 2007
|
||||
***************
|
||||
*** 668,669 ****
|
||||
--- 668,671 ----
|
||||
{ /* Add new patch number below this line */
|
||||
+ /**/
|
||||
+ 53,
|
||||
/**/
|
||||
|
||||
--
|
||||
From "know your smileys":
|
||||
<>:-) Bishop
|
||||
|
||||
/// 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 ///
|
148
7.1.054
148
7.1.054
@ -1,148 +0,0 @@
|
||||
To: vim-dev@vim.org
|
||||
Subject: patch 7.1.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.1.054
|
||||
Problem: Accessing uninitialized memory when displaying the fold column.
|
||||
Solution: Add a NUL to the extra array. (Dominique Pelle). Also do this in
|
||||
a couple of other situations.
|
||||
Files: src/screen.c
|
||||
|
||||
|
||||
*** ../vim-7.1.053/src/screen.c Mon Jul 30 21:59:50 2007
|
||||
--- src/screen.c Sun Aug 5 16:10:53 2007
|
||||
***************
|
||||
*** 2555,2561 ****
|
||||
|
||||
char_u extra[18]; /* "%ld" and 'fdc' must fit in here */
|
||||
int n_extra = 0; /* number of extra chars */
|
||||
! char_u *p_extra = NULL; /* string of extra chars */
|
||||
int c_extra = NUL; /* extra chars, all the same */
|
||||
int extra_attr = 0; /* attributes when n_extra != 0 */
|
||||
static char_u *at_end_str = (char_u *)""; /* used for p_extra when
|
||||
--- 2555,2561 ----
|
||||
|
||||
char_u extra[18]; /* "%ld" and 'fdc' must fit in here */
|
||||
int n_extra = 0; /* number of extra chars */
|
||||
! char_u *p_extra = NULL; /* string of extra chars, plus NUL */
|
||||
int c_extra = NUL; /* extra chars, all the same */
|
||||
int extra_attr = 0; /* attributes when n_extra != 0 */
|
||||
static char_u *at_end_str = (char_u *)""; /* used for p_extra when
|
||||
***************
|
||||
*** 3189,3198 ****
|
||||
if (cmdwin_type != 0 && wp == curwin)
|
||||
{
|
||||
/* Draw the cmdline character. */
|
||||
- *extra = cmdwin_type;
|
||||
n_extra = 1;
|
||||
! p_extra = extra;
|
||||
! c_extra = NUL;
|
||||
char_attr = hl_attr(HLF_AT);
|
||||
}
|
||||
}
|
||||
--- 3189,3196 ----
|
||||
if (cmdwin_type != 0 && wp == curwin)
|
||||
{
|
||||
/* Draw the cmdline character. */
|
||||
n_extra = 1;
|
||||
! c_extra = cmdwin_type;
|
||||
char_attr = hl_attr(HLF_AT);
|
||||
}
|
||||
}
|
||||
***************
|
||||
*** 3208,3213 ****
|
||||
--- 3206,3212 ----
|
||||
fill_foldcolumn(extra, wp, FALSE, lnum);
|
||||
n_extra = wp->w_p_fdc;
|
||||
p_extra = extra;
|
||||
+ p_extra[n_extra] = NUL;
|
||||
c_extra = NUL;
|
||||
char_attr = hl_attr(HLF_FC);
|
||||
}
|
||||
***************
|
||||
*** 3550,3558 ****
|
||||
* Get the next character to put on the screen.
|
||||
*/
|
||||
/*
|
||||
! * The 'extra' array contains the extra stuff that is inserted to
|
||||
! * represent special characters (non-printable stuff). When all
|
||||
! * characters are the same, c_extra is used.
|
||||
* For the '$' of the 'list' option, n_extra == 1, p_extra == "".
|
||||
*/
|
||||
if (n_extra > 0)
|
||||
--- 3549,3559 ----
|
||||
* Get the next character to put on the screen.
|
||||
*/
|
||||
/*
|
||||
! * The "p_extra" points to the extra stuff that is inserted to
|
||||
! * represent special characters (non-printable stuff) and other
|
||||
! * things. When all characters are the same, c_extra is used.
|
||||
! * "p_extra" must end in a NUL to avoid mb_ptr2len() reads past
|
||||
! * "p_extra[n_extra]".
|
||||
* For the '$' of the 'list' option, n_extra == 1, p_extra == "".
|
||||
*/
|
||||
if (n_extra > 0)
|
||||
***************
|
||||
*** 3808,3817 ****
|
||||
* a '<' in the first column. */
|
||||
if (n_skip > 0 && mb_l > 1)
|
||||
{
|
||||
- extra[0] = '<';
|
||||
- p_extra = extra;
|
||||
n_extra = 1;
|
||||
! c_extra = NUL;
|
||||
c = ' ';
|
||||
if (area_attr == 0 && search_attr == 0)
|
||||
{
|
||||
--- 3809,3816 ----
|
||||
* a '<' in the first column. */
|
||||
if (n_skip > 0 && mb_l > 1)
|
||||
{
|
||||
n_extra = 1;
|
||||
! c_extra = '<';
|
||||
c = ' ';
|
||||
if (area_attr == 0 && search_attr == 0)
|
||||
{
|
||||
***************
|
||||
*** 6204,6211 ****
|
||||
return;
|
||||
|
||||
off = LineOffset[row] + col;
|
||||
! while (*ptr != NUL && col < screen_Columns
|
||||
! && (len < 0 || (int)(ptr - text) < len))
|
||||
{
|
||||
c = *ptr;
|
||||
#ifdef FEAT_MBYTE
|
||||
--- 6203,6211 ----
|
||||
return;
|
||||
|
||||
off = LineOffset[row] + col;
|
||||
! while (col < screen_Columns
|
||||
! && (len < 0 || (int)(ptr - text) < len)
|
||||
! && *ptr != NUL)
|
||||
{
|
||||
c = *ptr;
|
||||
#ifdef FEAT_MBYTE
|
||||
*** ../vim-7.1.053/src/version.c Sun Aug 5 19:20:04 2007
|
||||
--- src/version.c Sun Aug 5 20:07:47 2007
|
||||
***************
|
||||
*** 668,669 ****
|
||||
--- 668,671 ----
|
||||
{ /* Add new patch number below this line */
|
||||
+ /**/
|
||||
+ 54,
|
||||
/**/
|
||||
|
||||
--
|
||||
From "know your smileys":
|
||||
+<(:-) The Pope
|
||||
|
||||
/// 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 ///
|
216
7.1.055
216
7.1.055
@ -1,216 +0,0 @@
|
||||
To: vim-dev@vim.org
|
||||
Subject: patch 7.1.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.1.055
|
||||
Problem: Using strcpy() with arguments that overlap.
|
||||
Solution: Use mch_memmove() instead.
|
||||
Files: src/buffer.c, src/charset.c, src/eval.c, src/ex_getln.c,
|
||||
src/misc1.c, src/regexp.c, src/termlib.c
|
||||
|
||||
|
||||
*** ../vim-7.1.054/src/buffer.c Tue Jun 19 15:40:51 2007
|
||||
--- src/buffer.c Sun Aug 5 16:14:03 2007
|
||||
***************
|
||||
*** 4860,4866 ****
|
||||
*/
|
||||
for (e = s; *e != ':' && *e != NUL; ++e)
|
||||
if (e[0] == '\\' && e[1] == ':')
|
||||
! STRCPY(e, e + 1);
|
||||
if (*e == NUL)
|
||||
end = TRUE;
|
||||
|
||||
--- 4860,4866 ----
|
||||
*/
|
||||
for (e = s; *e != ':' && *e != NUL; ++e)
|
||||
if (e[0] == '\\' && e[1] == ':')
|
||||
! mch_memmove(e, e + 1, STRLEN(e));
|
||||
if (*e == NUL)
|
||||
end = TRUE;
|
||||
|
||||
*** ../vim-7.1.054/src/charset.c Tue Mar 27 12:41:45 2007
|
||||
--- src/charset.c Sun Aug 5 21:53:44 2007
|
||||
***************
|
||||
*** 1898,1904 ****
|
||||
{
|
||||
for ( ; *p; ++p)
|
||||
if (rem_backslash(p))
|
||||
! STRCPY(p, p + 1);
|
||||
}
|
||||
|
||||
/*
|
||||
--- 1898,1904 ----
|
||||
{
|
||||
for ( ; *p; ++p)
|
||||
if (rem_backslash(p))
|
||||
! mch_memmove(p, p + 1, STRLEN(p));
|
||||
}
|
||||
|
||||
/*
|
||||
*** ../vim-7.1.054/src/eval.c Fri Jul 27 21:32:13 2007
|
||||
--- src/eval.c Sun Aug 5 16:25:03 2007
|
||||
***************
|
||||
*** 13807,13813 ****
|
||||
}
|
||||
/* Shorten "remain". */
|
||||
if (*q != NUL)
|
||||
! STRCPY(remain, q - 1);
|
||||
else
|
||||
{
|
||||
vim_free(remain);
|
||||
--- 13807,13813 ----
|
||||
}
|
||||
/* Shorten "remain". */
|
||||
if (*q != NUL)
|
||||
! mch_memmove(remain, q - 1, STRLEN(q - 1) + 1);
|
||||
else
|
||||
{
|
||||
vim_free(remain);
|
||||
*** ../vim-7.1.054/src/ex_getln.c Sat Jul 28 14:21:04 2007
|
||||
--- src/ex_getln.c Sun Aug 5 21:55:56 2007
|
||||
***************
|
||||
*** 4306,4315 ****
|
||||
&& pat[i + 1] == '\\'
|
||||
&& pat[i + 2] == '\\'
|
||||
&& pat[i + 3] == ' ')
|
||||
! STRCPY(pat + i, pat + i + 3);
|
||||
if (xp->xp_backslash == XP_BS_ONE
|
||||
&& pat[i + 1] == ' ')
|
||||
! STRCPY(pat + i, pat + i + 1);
|
||||
}
|
||||
}
|
||||
|
||||
--- 4306,4316 ----
|
||||
&& pat[i + 1] == '\\'
|
||||
&& pat[i + 2] == '\\'
|
||||
&& pat[i + 3] == ' ')
|
||||
! mch_memmove(pat + i, pat + i + 3,
|
||||
! STRLEN(pat + i + 3) + 1);
|
||||
if (xp->xp_backslash == XP_BS_ONE
|
||||
&& pat[i + 1] == ' ')
|
||||
! mch_memmove(pat + i, pat + i + 1, STRLEN(pat + i));
|
||||
}
|
||||
}
|
||||
|
||||
***************
|
||||
*** 4552,4558 ****
|
||||
pat = vim_strsave(filepat);
|
||||
for (i = 0; pat[i]; ++i)
|
||||
if (pat[i] == '\\' && pat[i + 1] == ' ')
|
||||
! STRCPY(pat + i, pat + i + 1);
|
||||
|
||||
flags |= EW_FILE | EW_EXEC;
|
||||
|
||||
--- 4553,4559 ----
|
||||
pat = vim_strsave(filepat);
|
||||
for (i = 0; pat[i]; ++i)
|
||||
if (pat[i] == '\\' && pat[i + 1] == ' ')
|
||||
! mch_memmove(pat + i, pat + i + 1, STRLEN(pat + i));
|
||||
|
||||
flags |= EW_FILE | EW_EXEC;
|
||||
|
||||
*** ../vim-7.1.054/src/misc1.c Sat Aug 4 12:14:04 2007
|
||||
--- src/misc1.c Sun Aug 5 21:57:15 2007
|
||||
***************
|
||||
*** 8635,8641 ****
|
||||
for (p = buf + wildoff; p < s; ++p)
|
||||
if (rem_backslash(p))
|
||||
{
|
||||
! STRCPY(p, p + 1);
|
||||
--e;
|
||||
--s;
|
||||
}
|
||||
--- 8635,8641 ----
|
||||
for (p = buf + wildoff; p < s; ++p)
|
||||
if (rem_backslash(p))
|
||||
{
|
||||
! mch_memmove(p, p + 1, STRLEN(p));
|
||||
--e;
|
||||
--s;
|
||||
}
|
||||
***************
|
||||
*** 8936,8942 ****
|
||||
for (p = buf + wildoff; p < s; ++p)
|
||||
if (rem_backslash(p))
|
||||
{
|
||||
! STRCPY(p, p + 1);
|
||||
--e;
|
||||
--s;
|
||||
}
|
||||
--- 8936,8942 ----
|
||||
for (p = buf + wildoff; p < s; ++p)
|
||||
if (rem_backslash(p))
|
||||
{
|
||||
! mch_memmove(p, p + 1, STRLEN(p));
|
||||
--e;
|
||||
--s;
|
||||
}
|
||||
*** ../vim-7.1.054/src/regexp.c Mon Jul 30 22:32:11 2007
|
||||
--- src/regexp.c Sun Aug 5 15:43:27 2007
|
||||
***************
|
||||
*** 6637,6645 ****
|
||||
}
|
||||
}
|
||||
else if (magic)
|
||||
! STRCPY(p, p + 1); /* remove '~' */
|
||||
else
|
||||
! STRCPY(p, p + 2); /* remove '\~' */
|
||||
--p;
|
||||
}
|
||||
else
|
||||
--- 6638,6646 ----
|
||||
}
|
||||
}
|
||||
else if (magic)
|
||||
! mch_memmove(p, p + 1, STRLEN(p)); /* remove '~' */
|
||||
else
|
||||
! mch_memmove(p, p + 2, STRLEN(p) - 1); /* remove '\~' */
|
||||
--p;
|
||||
}
|
||||
else
|
||||
*** ../vim-7.1.054/src/termlib.c Thu May 10 20:20:59 2007
|
||||
--- src/termlib.c Sun Aug 5 21:52:41 2007
|
||||
***************
|
||||
*** 191,197 ****
|
||||
lbuf[0] == '\t' &&
|
||||
lbuf[1] == ':')
|
||||
{
|
||||
! strcpy(lbuf, lbuf+2);
|
||||
llen -= 2;
|
||||
}
|
||||
if (lbuf[llen-2] == '\\') /* and continuations */
|
||||
--- 191,197 ----
|
||||
lbuf[0] == '\t' &&
|
||||
lbuf[1] == ':')
|
||||
{
|
||||
! mch_memmove(lbuf, lbuf + 2, strlen(lbuf + 2) + 1);
|
||||
llen -= 2;
|
||||
}
|
||||
if (lbuf[llen-2] == '\\') /* and continuations */
|
||||
*** ../vim-7.1.054/src/version.c Sun Aug 5 20:10:16 2007
|
||||
--- src/version.c Mon Aug 6 21:34:54 2007
|
||||
***************
|
||||
*** 668,669 ****
|
||||
--- 668,671 ----
|
||||
{ /* Add new patch number below this line */
|
||||
+ /**/
|
||||
+ 55,
|
||||
/**/
|
||||
|
||||
--
|
||||
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 ///
|
106
7.1.056
106
7.1.056
@ -1,106 +0,0 @@
|
||||
To: vim-dev@vim.org
|
||||
Subject: patch 7.1.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.1.056
|
||||
Problem: More prompt does not behave correctly after scrolling back.
|
||||
(Randall W. Morris)
|
||||
Solution: Avoid lines_left becomes negative. (Chris Lubinski) Don't check
|
||||
mp_last when deciding to show the more prompt. (Martin Toft)
|
||||
Files: src/message.c
|
||||
|
||||
|
||||
*** ../vim-7.1.055/src/message.c Sun Aug 5 19:20:04 2007
|
||||
--- src/message.c Tue Aug 7 21:52:10 2007
|
||||
***************
|
||||
*** 1878,1884 ****
|
||||
/* output postponed text */
|
||||
t_puts(&t_col, t_s, s, attr);
|
||||
|
||||
! /* When no more prompt an no more room, truncate here */
|
||||
if (msg_no_more && lines_left == 0)
|
||||
break;
|
||||
|
||||
--- 1878,1884 ----
|
||||
/* output postponed text */
|
||||
t_puts(&t_col, t_s, s, attr);
|
||||
|
||||
! /* When no more prompt and no more room, truncate here */
|
||||
if (msg_no_more && lines_left == 0)
|
||||
break;
|
||||
|
||||
***************
|
||||
*** 1927,1933 ****
|
||||
* 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)
|
||||
{
|
||||
--- 1927,1934 ----
|
||||
* If screen is completely filled and 'more' is set then wait
|
||||
* for a character.
|
||||
*/
|
||||
! if (lines_left > 0)
|
||||
! --lines_left;
|
||||
if (p_more && lines_left == 0 && State != HITRETURN
|
||||
&& !msg_no_more && !exmode_active)
|
||||
{
|
||||
***************
|
||||
*** 2234,2240 ****
|
||||
{
|
||||
msgchunk_T *mp;
|
||||
|
||||
! /* Only show somethign if there is more than one line, otherwise it looks
|
||||
* weird, typing a command without output results in one line. */
|
||||
mp = msg_sb_start(last_msgchunk);
|
||||
if (mp == NULL || mp->sb_prev == NULL)
|
||||
--- 2235,2241 ----
|
||||
{
|
||||
msgchunk_T *mp;
|
||||
|
||||
! /* Only show something if there is more than one line, otherwise it looks
|
||||
* weird, typing a command without output results in one line. */
|
||||
mp = msg_sb_start(last_msgchunk);
|
||||
if (mp == NULL || mp->sb_prev == NULL)
|
||||
***************
|
||||
*** 2622,2628 ****
|
||||
}
|
||||
}
|
||||
|
||||
! if (scroll < 0 || (scroll == 0 && mp_last != NULL))
|
||||
{
|
||||
/* displayed the requested text, more prompt again */
|
||||
screen_fill((int)Rows - 1, (int)Rows, 0,
|
||||
--- 2623,2629 ----
|
||||
}
|
||||
}
|
||||
|
||||
! if (scroll <= 0)
|
||||
{
|
||||
/* displayed the requested text, more prompt again */
|
||||
screen_fill((int)Rows - 1, (int)Rows, 0,
|
||||
*** ../vim-7.1.055/src/version.c Mon Aug 6 22:27:13 2007
|
||||
--- src/version.c Tue Aug 7 21:57:02 2007
|
||||
***************
|
||||
*** 668,669 ****
|
||||
--- 668,671 ----
|
||||
{ /* Add new patch number below this line */
|
||||
+ /**/
|
||||
+ 56,
|
||||
/**/
|
||||
|
||||
--
|
||||
From "know your smileys":
|
||||
:-| :-| Deja' vu!
|
||||
|
||||
/// 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.1.057
91
7.1.057
@ -1,91 +0,0 @@
|
||||
To: vim-dev@vim.org
|
||||
Subject: patch 7.1.057
|
||||
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.1.057
|
||||
Problem: Problem with CursorHoldI when using "r" in Visual mode (Max
|
||||
Dyckhoff)
|
||||
Solution: Ignore CursorHold(I) when getting a second character for a Normal
|
||||
mode command. Also abort the "r" command in Visual when a special
|
||||
key is typed.
|
||||
Files: src/normal.c
|
||||
|
||||
|
||||
*** ../vim-7.1.056/src/normal.c Tue Jul 10 14:02:51 2007
|
||||
--- src/normal.c Sun Aug 5 21:57:43 2007
|
||||
***************
|
||||
*** 889,894 ****
|
||||
--- 889,899 ----
|
||||
|
||||
++no_mapping;
|
||||
++allow_keys; /* no mapping for nchar, but allow key codes */
|
||||
+ #ifdef FEAT_AUTOCMD
|
||||
+ /* Don't generate a CursorHold event here, most commands can't handle
|
||||
+ * it, e.g., nv_replace(), nv_csearch(). */
|
||||
+ did_cursorhold = TRUE;
|
||||
+ #endif
|
||||
if (ca.cmdchar == 'g')
|
||||
{
|
||||
/*
|
||||
***************
|
||||
*** 6662,6667 ****
|
||||
--- 6668,6680 ----
|
||||
else
|
||||
had_ctrl_v = NUL;
|
||||
|
||||
+ /* Abort if the character is a special key. */
|
||||
+ if (IS_SPECIAL(cap->nchar))
|
||||
+ {
|
||||
+ clearopbeep(cap->oap);
|
||||
+ return;
|
||||
+ }
|
||||
+
|
||||
#ifdef FEAT_VISUAL
|
||||
/* Visual mode "r" */
|
||||
if (VIsual_active)
|
||||
***************
|
||||
*** 6688,6698 ****
|
||||
}
|
||||
#endif
|
||||
|
||||
! /*
|
||||
! * Check for a special key or not enough characters to replace.
|
||||
! */
|
||||
ptr = ml_get_cursor();
|
||||
! if (IS_SPECIAL(cap->nchar) || STRLEN(ptr) < (unsigned)cap->count1
|
||||
#ifdef FEAT_MBYTE
|
||||
|| (has_mbyte && mb_charlen(ptr) < cap->count1)
|
||||
#endif
|
||||
--- 6701,6709 ----
|
||||
}
|
||||
#endif
|
||||
|
||||
! /* Abort if not enough characters to replace. */
|
||||
ptr = ml_get_cursor();
|
||||
! if (STRLEN(ptr) < (unsigned)cap->count1
|
||||
#ifdef FEAT_MBYTE
|
||||
|| (has_mbyte && mb_charlen(ptr) < cap->count1)
|
||||
#endif
|
||||
*** ../vim-7.1.056/src/version.c Tue Aug 7 21:59:26 2007
|
||||
--- src/version.c Wed Aug 8 21:39:43 2007
|
||||
***************
|
||||
*** 668,669 ****
|
||||
--- 668,671 ----
|
||||
{ /* Add new patch number below this line */
|
||||
+ /**/
|
||||
+ 57,
|
||||
/**/
|
||||
|
||||
--
|
||||
hundred-and-one symptoms of being an internet addict:
|
||||
95. Only communication in your household is through email.
|
||||
|
||||
/// 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 ///
|
397
7.1.058
397
7.1.058
@ -1,397 +0,0 @@
|
||||
To: vim-dev@vim.org
|
||||
Subject: patch 7.1.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.1.058
|
||||
Problem: When 'rightleft' is set the completion menu is positioned wrong.
|
||||
(Baha-Eddine MOKADEM)
|
||||
Solution: Fix the completion menu. (Martin Toft)
|
||||
Files: src/popupmnu.c, src/proto/search.pro, src/search.c
|
||||
|
||||
|
||||
*** ../vim-7.1.057/src/popupmnu.c Thu Jun 28 21:23:52 2007
|
||||
--- src/popupmnu.c Wed Aug 1 15:43:06 2007
|
||||
***************
|
||||
*** 75,81 ****
|
||||
|
||||
row = curwin->w_cline_row + W_WINROW(curwin);
|
||||
height = curwin->w_cline_height;
|
||||
- col = curwin->w_wcol + W_WINCOL(curwin) - curwin->w_leftcol;
|
||||
|
||||
if (firstwin->w_p_pvw)
|
||||
top_clear = firstwin->w_height;
|
||||
--- 75,80 ----
|
||||
***************
|
||||
*** 167,172 ****
|
||||
--- 166,180 ----
|
||||
pum_base_width = max_width;
|
||||
pum_kind_width = kind_width;
|
||||
|
||||
+ /* Calculate column */
|
||||
+ #ifdef FEAT_RIGHTLEFT
|
||||
+ if (curwin->w_p_rl)
|
||||
+ col = W_WINCOL(curwin) + W_WIDTH(curwin) - curwin->w_wcol -
|
||||
+ curwin->w_leftcol - 1;
|
||||
+ else
|
||||
+ #endif
|
||||
+ col = W_WINCOL(curwin) + curwin->w_wcol - curwin->w_leftcol;
|
||||
+
|
||||
/* if there are more items than room we need a scrollbar */
|
||||
if (pum_height < size)
|
||||
{
|
||||
***************
|
||||
*** 179,189 ****
|
||||
if (def_width < max_width)
|
||||
def_width = max_width;
|
||||
|
||||
! if (col < Columns - PUM_DEF_WIDTH || col < Columns - max_width)
|
||||
{
|
||||
/* align pum column with "col" */
|
||||
pum_col = col;
|
||||
! pum_width = Columns - pum_col - pum_scrollbar;
|
||||
if (pum_width > max_width + kind_width + extra_width + 1
|
||||
&& pum_width > PUM_DEF_WIDTH)
|
||||
{
|
||||
--- 187,209 ----
|
||||
if (def_width < max_width)
|
||||
def_width = max_width;
|
||||
|
||||
! if (((col < Columns - PUM_DEF_WIDTH || col < Columns - max_width)
|
||||
! #ifdef FEAT_RIGHTLEFT
|
||||
! && !curwin->w_p_rl)
|
||||
! || (curwin->w_p_rl && (col > PUM_DEF_WIDTH || col > max_width)
|
||||
! #endif
|
||||
! ))
|
||||
{
|
||||
/* align pum column with "col" */
|
||||
pum_col = col;
|
||||
!
|
||||
! #ifdef FEAT_RIGHTLEFT
|
||||
! if (curwin->w_p_rl)
|
||||
! pum_width = pum_col - pum_scrollbar + 1;
|
||||
! else
|
||||
! #endif
|
||||
! pum_width = Columns - pum_col - pum_scrollbar;
|
||||
!
|
||||
if (pum_width > max_width + kind_width + extra_width + 1
|
||||
&& pum_width > PUM_DEF_WIDTH)
|
||||
{
|
||||
***************
|
||||
*** 195,208 ****
|
||||
else if (Columns < def_width)
|
||||
{
|
||||
/* not enough room, will use what we have */
|
||||
! pum_col = 0;
|
||||
pum_width = Columns - 1;
|
||||
}
|
||||
else
|
||||
{
|
||||
if (max_width > PUM_DEF_WIDTH)
|
||||
max_width = PUM_DEF_WIDTH; /* truncate */
|
||||
! pum_col = Columns - max_width;
|
||||
pum_width = max_width - pum_scrollbar;
|
||||
}
|
||||
|
||||
--- 215,238 ----
|
||||
else if (Columns < def_width)
|
||||
{
|
||||
/* not enough room, will use what we have */
|
||||
! #ifdef FEAT_RIGHTLEFT
|
||||
! if (curwin->w_p_rl)
|
||||
! pum_col = Columns - 1;
|
||||
! else
|
||||
! #endif
|
||||
! pum_col = 0;
|
||||
pum_width = Columns - 1;
|
||||
}
|
||||
else
|
||||
{
|
||||
if (max_width > PUM_DEF_WIDTH)
|
||||
max_width = PUM_DEF_WIDTH; /* truncate */
|
||||
! #ifdef FEAT_RIGHTLEFT
|
||||
! if (curwin->w_p_rl)
|
||||
! pum_col = max_width - 1;
|
||||
! else
|
||||
! #endif
|
||||
! pum_col = Columns - max_width;
|
||||
pum_width = max_width - pum_scrollbar;
|
||||
}
|
||||
|
||||
***************
|
||||
*** 255,262 ****
|
||||
attr = (idx == pum_selected) ? attr_select : attr_norm;
|
||||
|
||||
/* prepend a space if there is room */
|
||||
! if (pum_col > 0)
|
||||
! screen_putchar(' ', row, pum_col - 1, attr);
|
||||
|
||||
/* Display each entry, use two spaces for a Tab.
|
||||
* Do this 3 times: For the main text, kind and extra info */
|
||||
--- 285,300 ----
|
||||
attr = (idx == pum_selected) ? attr_select : attr_norm;
|
||||
|
||||
/* prepend a space if there is room */
|
||||
! #ifdef FEAT_RIGHTLEFT
|
||||
! if (curwin->w_p_rl)
|
||||
! {
|
||||
! if (pum_col < W_WINCOL(curwin) + W_WIDTH(curwin) - 1)
|
||||
! screen_putchar(' ', row, pum_col + 1, attr);
|
||||
! }
|
||||
! else
|
||||
! #endif
|
||||
! if (pum_col > 0)
|
||||
! screen_putchar(' ', row, pum_col - 1, attr);
|
||||
|
||||
/* Display each entry, use two spaces for a Tab.
|
||||
* Do this 3 times: For the main text, kind and extra info */
|
||||
***************
|
||||
*** 282,307 ****
|
||||
{
|
||||
/* Display the text that fits or comes before a Tab.
|
||||
* First convert it to printable characters. */
|
||||
! char_u *st;
|
||||
! int saved = *p;
|
||||
|
||||
*p = NUL;
|
||||
st = transstr(s);
|
||||
*p = saved;
|
||||
! if (st != NULL)
|
||||
{
|
||||
! screen_puts_len(st, (int)STRLEN(st), row, col,
|
||||
attr);
|
||||
! vim_free(st);
|
||||
}
|
||||
- col += width;
|
||||
|
||||
if (*p != TAB)
|
||||
break;
|
||||
|
||||
/* Display two spaces for a Tab. */
|
||||
! screen_puts_len((char_u *)" ", 2, row, col, attr);
|
||||
! col += 2;
|
||||
totwidth += 2;
|
||||
s = NULL; /* start text at next char */
|
||||
width = 0;
|
||||
--- 320,386 ----
|
||||
{
|
||||
/* Display the text that fits or comes before a Tab.
|
||||
* First convert it to printable characters. */
|
||||
! char_u *st;
|
||||
! int saved = *p;
|
||||
|
||||
*p = NUL;
|
||||
st = transstr(s);
|
||||
*p = saved;
|
||||
! #ifdef FEAT_RIGHTLEFT
|
||||
! if (curwin->w_p_rl)
|
||||
{
|
||||
! if (st != NULL)
|
||||
! {
|
||||
! char_u *rt = reverse_text(st);
|
||||
! char_u *rt_saved = rt;
|
||||
! int len, j;
|
||||
!
|
||||
! if (rt != NULL)
|
||||
! {
|
||||
! len = STRLEN(rt);
|
||||
! if (len > pum_width)
|
||||
! {
|
||||
! for (j = pum_width; j < len; ++j)
|
||||
! mb_ptr_adv(rt);
|
||||
! len = pum_width;
|
||||
! }
|
||||
! screen_puts_len(rt, len, row,
|
||||
! col - len + 1, attr);
|
||||
! vim_free(rt_saved);
|
||||
! }
|
||||
! vim_free(st);
|
||||
! }
|
||||
! col -= width;
|
||||
! }
|
||||
! else
|
||||
! #endif
|
||||
! {
|
||||
! if (st != NULL)
|
||||
! {
|
||||
! screen_puts_len(st, (int)STRLEN(st), row, col,
|
||||
attr);
|
||||
! vim_free(st);
|
||||
! }
|
||||
! col += width;
|
||||
}
|
||||
|
||||
if (*p != TAB)
|
||||
break;
|
||||
|
||||
/* Display two spaces for a Tab. */
|
||||
! #ifdef FEAT_RIGHTLEFT
|
||||
! if (curwin->w_p_rl)
|
||||
! {
|
||||
! screen_puts_len((char_u *)" ", 2, row, col - 1,
|
||||
! attr);
|
||||
! col -= 2;
|
||||
! }
|
||||
! else
|
||||
! #endif
|
||||
! {
|
||||
! screen_puts_len((char_u *)" ", 2, row, col, attr);
|
||||
! col += 2;
|
||||
! }
|
||||
totwidth += 2;
|
||||
s = NULL; /* start text at next char */
|
||||
width = 0;
|
||||
***************
|
||||
*** 322,338 ****
|
||||
&& pum_array[idx].pum_extra == NULL)
|
||||
|| pum_base_width + n >= pum_width)
|
||||
break;
|
||||
! screen_fill(row, row + 1, col, pum_col + pum_base_width + n,
|
||||
' ', ' ', attr);
|
||||
! col = pum_col + pum_base_width + n;
|
||||
totwidth = pum_base_width + n;
|
||||
}
|
||||
|
||||
! screen_fill(row, row + 1, col, pum_col + pum_width, ' ', ' ', attr);
|
||||
if (pum_scrollbar > 0)
|
||||
! screen_putchar(' ', row, pum_col + pum_width,
|
||||
! i >= thumb_pos && i < thumb_pos + thumb_heigth
|
||||
? attr_thumb : attr_scroll);
|
||||
|
||||
++row;
|
||||
}
|
||||
--- 401,444 ----
|
||||
&& pum_array[idx].pum_extra == NULL)
|
||||
|| pum_base_width + n >= pum_width)
|
||||
break;
|
||||
! #ifdef FEAT_RIGHTLEFT
|
||||
! if (curwin->w_p_rl)
|
||||
! {
|
||||
! screen_fill(row, row + 1, pum_col - pum_base_width - n + 1,
|
||||
! col + 1, ' ', ' ', attr);
|
||||
! col = pum_col - pum_base_width - n + 1;
|
||||
! }
|
||||
! else
|
||||
! #endif
|
||||
! {
|
||||
! screen_fill(row, row + 1, col, pum_col + pum_base_width + n,
|
||||
' ', ' ', attr);
|
||||
! col = pum_col + pum_base_width + n;
|
||||
! }
|
||||
totwidth = pum_base_width + n;
|
||||
}
|
||||
|
||||
! #ifdef FEAT_RIGHTLEFT
|
||||
! if (curwin->w_p_rl)
|
||||
! screen_fill(row, row + 1, pum_col - pum_width + 1, col + 1, ' ',
|
||||
! ' ', attr);
|
||||
! else
|
||||
! #endif
|
||||
! screen_fill(row, row + 1, col, pum_col + pum_width, ' ', ' ',
|
||||
! attr);
|
||||
if (pum_scrollbar > 0)
|
||||
! {
|
||||
! #ifdef FEAT_RIGHTLEFT
|
||||
! if (curwin->w_p_rl)
|
||||
! screen_putchar(' ', row, pum_col - pum_width,
|
||||
! i >= thumb_pos && i < thumb_pos + thumb_heigth
|
||||
? attr_thumb : attr_scroll);
|
||||
+ else
|
||||
+ #endif
|
||||
+ screen_putchar(' ', row, pum_col + pum_width,
|
||||
+ i >= thumb_pos && i < thumb_pos + thumb_heigth
|
||||
+ ? attr_thumb : attr_scroll);
|
||||
+ }
|
||||
|
||||
++row;
|
||||
}
|
||||
*** ../vim-7.1.057/src/proto/search.pro Sat May 5 20:20:36 2007
|
||||
--- src/proto/search.pro Wed Aug 1 12:41:25 2007
|
||||
***************
|
||||
*** 1,6 ****
|
||||
--- 1,7 ----
|
||||
/* search.c */
|
||||
int search_regcomp __ARGS((char_u *pat, int pat_save, int pat_use, int options, regmmatch_T *regmatch));
|
||||
char_u *get_search_pat __ARGS((void));
|
||||
+ char_u *reverse_text __ARGS((char_u *s));
|
||||
void save_search_patterns __ARGS((void));
|
||||
void restore_search_patterns __ARGS((void));
|
||||
void free_search_patterns __ARGS((void));
|
||||
*** ../vim-7.1.057/src/search.c Tue Jul 10 13:27:46 2007
|
||||
--- src/search.c Wed Aug 1 12:39:22 2007
|
||||
***************
|
||||
*** 101,107 ****
|
||||
static char_u *mr_pattern = NULL; /* pattern used by search_regcomp() */
|
||||
#ifdef FEAT_RIGHTLEFT
|
||||
static int mr_pattern_alloced = FALSE; /* mr_pattern was allocated */
|
||||
- static char_u *reverse_text __ARGS((char_u *s));
|
||||
#endif
|
||||
|
||||
#ifdef FEAT_FIND_ID
|
||||
--- 101,106 ----
|
||||
***************
|
||||
*** 228,239 ****
|
||||
return mr_pattern;
|
||||
}
|
||||
|
||||
! #ifdef FEAT_RIGHTLEFT
|
||||
/*
|
||||
* Reverse text into allocated memory.
|
||||
* Returns the allocated string, NULL when out of memory.
|
||||
*/
|
||||
! static char_u *
|
||||
reverse_text(s)
|
||||
char_u *s;
|
||||
{
|
||||
--- 227,238 ----
|
||||
return mr_pattern;
|
||||
}
|
||||
|
||||
! #if defined(FEAT_RIGHTLEFT) || defined(PROTO)
|
||||
/*
|
||||
* Reverse text into allocated memory.
|
||||
* Returns the allocated string, NULL when out of memory.
|
||||
*/
|
||||
! char_u *
|
||||
reverse_text(s)
|
||||
char_u *s;
|
||||
{
|
||||
***************
|
||||
*** 1898,1904 ****
|
||||
}
|
||||
|
||||
#ifdef FEAT_RIGHTLEFT
|
||||
! /* This is just guessing: when 'rightleft' is set, search for a maching
|
||||
* paren/brace in the other direction. */
|
||||
if (curwin->w_p_rl && vim_strchr((char_u *)"()[]{}<>", initc) != NULL)
|
||||
backwards = !backwards;
|
||||
--- 1897,1903 ----
|
||||
}
|
||||
|
||||
#ifdef FEAT_RIGHTLEFT
|
||||
! /* This is just guessing: when 'rightleft' is set, search for a matching
|
||||
* paren/brace in the other direction. */
|
||||
if (curwin->w_p_rl && vim_strchr((char_u *)"()[]{}<>", initc) != NULL)
|
||||
backwards = !backwards;
|
||||
*** ../vim-7.1.057/src/version.c Wed Aug 8 21:41:19 2007
|
||||
--- src/version.c Wed Aug 8 22:44:49 2007
|
||||
***************
|
||||
*** 668,669 ****
|
||||
--- 668,671 ----
|
||||
{ /* Add new patch number below this line */
|
||||
+ /**/
|
||||
+ 58,
|
||||
/**/
|
||||
|
||||
--
|
||||
hundred-and-one symptoms of being an internet addict:
|
||||
99. The hum of a cooling fan and the click of keys is comforting to you.
|
||||
|
||||
/// 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.1.059
104
7.1.059
@ -1,104 +0,0 @@
|
||||
To: vim-dev@vim.org
|
||||
Subject: patch 7.1.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.1.059
|
||||
Problem: When in Ex mode and doing "g/^/vi" and then pressing CTRL-C Vim
|
||||
hangs and beeps. (Antony Scriven)
|
||||
Solution: Clear "got_int" in the main loop to avoid the hang. When typing
|
||||
CTRL-C twice in a row abort the ":g" command. This is Vi
|
||||
compatible.
|
||||
Files: src/main.c
|
||||
|
||||
|
||||
*** ../vim-7.1.058/src/main.c Tue Jun 19 20:30:46 2007
|
||||
--- src/main.c Tue Aug 7 22:40:35 2007
|
||||
***************
|
||||
*** 954,960 ****
|
||||
int cmdwin; /* TRUE when working in the command-line window */
|
||||
int noexmode; /* TRUE when return on entering Ex mode */
|
||||
{
|
||||
! oparg_T oa; /* operator arguments */
|
||||
|
||||
#if defined(FEAT_X11) && defined(FEAT_XCLIPBOARD)
|
||||
/* Setup to catch a terminating error from the X server. Just ignore
|
||||
--- 954,961 ----
|
||||
int cmdwin; /* TRUE when working in the command-line window */
|
||||
int noexmode; /* TRUE when return on entering Ex mode */
|
||||
{
|
||||
! oparg_T oa; /* operator arguments */
|
||||
! int previous_got_int = FALSE; /* "got_int" was TRUE */
|
||||
|
||||
#if defined(FEAT_X11) && defined(FEAT_XCLIPBOARD)
|
||||
/* Setup to catch a terminating error from the X server. Just ignore
|
||||
***************
|
||||
*** 1015,1026 ****
|
||||
need_fileinfo = FALSE;
|
||||
}
|
||||
}
|
||||
! if (got_int && !global_busy)
|
||||
{
|
||||
! if (!quit_more)
|
||||
! (void)vgetc(); /* flush all buffers */
|
||||
! got_int = FALSE;
|
||||
}
|
||||
if (!exmode_active)
|
||||
msg_scroll = FALSE;
|
||||
quit_more = FALSE;
|
||||
--- 1016,1047 ----
|
||||
need_fileinfo = FALSE;
|
||||
}
|
||||
}
|
||||
!
|
||||
! /* Reset "got_int" now that we got back to the main loop. Except when
|
||||
! * inside a ":g/pat/cmd" command, then the "got_int" needs to abort
|
||||
! * the ":g" command.
|
||||
! * For ":g/pat/vi" we reset "got_int" when used once. When used
|
||||
! * a second time we go back to Ex mode and abort the ":g" command. */
|
||||
! if (got_int)
|
||||
{
|
||||
! if (noexmode && global_busy && !exmode_active && previous_got_int)
|
||||
! {
|
||||
! /* Typed two CTRL-C in a row: go back to ex mode as if "Q" was
|
||||
! * used and keep "got_int" set, so that it aborts ":g". */
|
||||
! exmode_active = EXMODE_NORMAL;
|
||||
! State = NORMAL;
|
||||
! }
|
||||
! else if (!global_busy || !exmode_active)
|
||||
! {
|
||||
! if (!quit_more)
|
||||
! (void)vgetc(); /* flush all buffers */
|
||||
! got_int = FALSE;
|
||||
! }
|
||||
! previous_got_int = TRUE;
|
||||
}
|
||||
+ else
|
||||
+ previous_got_int = FALSE;
|
||||
+
|
||||
if (!exmode_active)
|
||||
msg_scroll = FALSE;
|
||||
quit_more = FALSE;
|
||||
*** ../vim-7.1.058/src/version.c Wed Aug 8 22:48:16 2007
|
||||
--- src/version.c Fri Aug 10 21:30:39 2007
|
||||
***************
|
||||
*** 668,669 ****
|
||||
--- 668,671 ----
|
||||
{ /* Add new patch number below this line */
|
||||
+ /**/
|
||||
+ 59,
|
||||
/**/
|
||||
|
||||
--
|
||||
hundred-and-one symptoms of being an internet addict:
|
||||
116. You are living with your boyfriend who networks your respective
|
||||
computers so you can sit in separate rooms and email each other
|
||||
|
||||
/// 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 ///
|
176
7.1.060
176
7.1.060
@ -1,176 +0,0 @@
|
||||
To: vim-dev@vim.org
|
||||
Subject: patch 7.1.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.1.060
|
||||
Problem: Splitting quickfix window messes up window layout. (Marius
|
||||
Gedminas)
|
||||
Solution: Compute the window size in a smarter way. (Martin Toft)
|
||||
Files: src/window.c
|
||||
|
||||
|
||||
*** ../vim-7.1.059/src/window.c Sun Aug 5 18:49:07 2007
|
||||
--- src/window.c Sun Aug 5 17:17:51 2007
|
||||
***************
|
||||
*** 2121,2127 ****
|
||||
if (wp->w_p_pvw || bt_quickfix(wp->w_buffer))
|
||||
{
|
||||
/*
|
||||
! * The cursor goes to the preview or the quickfix window, try
|
||||
* finding another window to go to.
|
||||
*/
|
||||
for (;;)
|
||||
--- 2121,2127 ----
|
||||
if (wp->w_p_pvw || bt_quickfix(wp->w_buffer))
|
||||
{
|
||||
/*
|
||||
! * If the cursor goes to the preview or the quickfix window, try
|
||||
* finding another window to go to.
|
||||
*/
|
||||
for (;;)
|
||||
***************
|
||||
*** 2308,2314 ****
|
||||
frame_T *frp, *frp2, *frp3;
|
||||
frame_T *frp_close = win->w_frame;
|
||||
win_T *wp;
|
||||
- int old_size = 0;
|
||||
|
||||
/*
|
||||
* If there is only one window there is nothing to remove.
|
||||
--- 2308,2313 ----
|
||||
***************
|
||||
*** 2329,2361 ****
|
||||
if (frp_close->fr_parent->fr_layout == FR_COL)
|
||||
{
|
||||
#endif
|
||||
! /* When 'winfixheight' is set, remember its old size and restore
|
||||
! * it later (it's a simplistic solution...). Don't do this if the
|
||||
! * window will occupy the full height of the screen. */
|
||||
! if (frp2->fr_win != NULL
|
||||
! && (frp2->fr_next != NULL || frp2->fr_prev != NULL)
|
||||
! && frp2->fr_win->w_p_wfh)
|
||||
! old_size = frp2->fr_win->w_height;
|
||||
frame_new_height(frp2, frp2->fr_height + frp_close->fr_height,
|
||||
frp2 == frp_close->fr_next ? TRUE : FALSE, FALSE);
|
||||
- if (old_size != 0)
|
||||
- win_setheight_win(old_size, frp2->fr_win);
|
||||
#ifdef FEAT_VERTSPLIT
|
||||
*dirp = 'v';
|
||||
}
|
||||
else
|
||||
{
|
||||
! /* When 'winfixwidth' is set, remember its old size and restore
|
||||
! * it later (it's a simplistic solution...). Don't do this if the
|
||||
! * window will occupy the full width of the screen. */
|
||||
! if (frp2->fr_win != NULL
|
||||
! && (frp2->fr_next != NULL || frp2->fr_prev != NULL)
|
||||
! && frp2->fr_win->w_p_wfw)
|
||||
! old_size = frp2->fr_win->w_width;
|
||||
frame_new_width(frp2, frp2->fr_width + frp_close->fr_width,
|
||||
frp2 == frp_close->fr_next ? TRUE : FALSE, FALSE);
|
||||
- if (old_size != 0)
|
||||
- win_setwidth_win(old_size, frp2->fr_win);
|
||||
*dirp = 'h';
|
||||
}
|
||||
#endif
|
||||
--- 2328,2404 ----
|
||||
if (frp_close->fr_parent->fr_layout == FR_COL)
|
||||
{
|
||||
#endif
|
||||
! /* When 'winfixheight' is set, try to find another frame in the column
|
||||
! * (as close to the closed frame as possible) to distribute the height
|
||||
! * to. */
|
||||
! if (frp2->fr_win != NULL && frp2->fr_win->w_p_wfh)
|
||||
! {
|
||||
! frp = frp_close->fr_prev;
|
||||
! frp3 = frp_close->fr_next;
|
||||
! while (frp != NULL || frp3 != NULL)
|
||||
! {
|
||||
! if (frp != NULL)
|
||||
! {
|
||||
! if (frp->fr_win != NULL && !frp->fr_win->w_p_wfh)
|
||||
! {
|
||||
! frp2 = frp;
|
||||
! wp = frp->fr_win;
|
||||
! break;
|
||||
! }
|
||||
! frp = frp->fr_prev;
|
||||
! }
|
||||
! if (frp3 != NULL)
|
||||
! {
|
||||
! if (frp3->fr_win != NULL && !frp3->fr_win->w_p_wfh)
|
||||
! {
|
||||
! frp2 = frp3;
|
||||
! wp = frp3->fr_win;
|
||||
! break;
|
||||
! }
|
||||
! frp3 = frp3->fr_next;
|
||||
! }
|
||||
! }
|
||||
! }
|
||||
frame_new_height(frp2, frp2->fr_height + frp_close->fr_height,
|
||||
frp2 == frp_close->fr_next ? TRUE : FALSE, FALSE);
|
||||
#ifdef FEAT_VERTSPLIT
|
||||
*dirp = 'v';
|
||||
}
|
||||
else
|
||||
{
|
||||
! /* When 'winfixwidth' is set, try to find another frame in the column
|
||||
! * (as close to the closed frame as possible) to distribute the width
|
||||
! * to. */
|
||||
! if (frp2->fr_win != NULL && frp2->fr_win->w_p_wfw)
|
||||
! {
|
||||
! frp = frp_close->fr_prev;
|
||||
! frp3 = frp_close->fr_next;
|
||||
! while (frp != NULL || frp3 != NULL)
|
||||
! {
|
||||
! if (frp != NULL)
|
||||
! {
|
||||
! if (frp->fr_win != NULL && !frp->fr_win->w_p_wfw)
|
||||
! {
|
||||
! frp2 = frp;
|
||||
! wp = frp->fr_win;
|
||||
! break;
|
||||
! }
|
||||
! frp = frp->fr_prev;
|
||||
! }
|
||||
! if (frp3 != NULL)
|
||||
! {
|
||||
! if (frp3->fr_win != NULL && !frp3->fr_win->w_p_wfw)
|
||||
! {
|
||||
! frp2 = frp3;
|
||||
! wp = frp3->fr_win;
|
||||
! break;
|
||||
! }
|
||||
! frp3 = frp3->fr_next;
|
||||
! }
|
||||
! }
|
||||
! }
|
||||
frame_new_width(frp2, frp2->fr_width + frp_close->fr_width,
|
||||
frp2 == frp_close->fr_next ? TRUE : FALSE, FALSE);
|
||||
*dirp = 'h';
|
||||
}
|
||||
#endif
|
||||
*** ../vim-7.1.059/src/version.c Fri Aug 10 21:32:41 2007
|
||||
--- src/version.c Sat Aug 11 13:34:42 2007
|
||||
***************
|
||||
*** 668,669 ****
|
||||
--- 668,671 ----
|
||||
{ /* Add new patch number below this line */
|
||||
+ /**/
|
||||
+ 60,
|
||||
/**/
|
||||
|
||||
--
|
||||
hundred-and-one symptoms of being an internet addict:
|
||||
117. You are more comfortable typing in html.
|
||||
|
||||
/// 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 ///
|
222
7.1.061
222
7.1.061
@ -1,222 +0,0 @@
|
||||
To: vim-dev@vim.org
|
||||
Subject: patch 7.1.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.1.061
|
||||
Problem: Win32: When 'encoding' is "latin1" 'ignorecase' doesn't work for
|
||||
characters with umlaut. (Joachim Hofmann)
|
||||
Solution: Do not use islower()/isupper()/tolower()/toupper() but our own
|
||||
functions. (Chris Lubinski)
|
||||
Files: src/mbyte.c, src/regexp.c, src/vim.h
|
||||
|
||||
|
||||
*** ../vim-7.1.060/src/mbyte.c Thu May 10 19:45:20 2007
|
||||
--- src/mbyte.c Sat Aug 4 13:44:36 2007
|
||||
***************
|
||||
*** 2320,2326 ****
|
||||
/* Single byte: first check normally, then with ignore case. */
|
||||
if (s1[i] != s2[i])
|
||||
{
|
||||
! cdiff = TOLOWER_LOC(s1[i]) - TOLOWER_LOC(s2[i]);
|
||||
if (cdiff != 0)
|
||||
return cdiff;
|
||||
}
|
||||
--- 2320,2326 ----
|
||||
/* Single byte: first check normally, then with ignore case. */
|
||||
if (s1[i] != s2[i])
|
||||
{
|
||||
! cdiff = MB_TOLOWER(s1[i]) - MB_TOLOWER(s2[i]);
|
||||
if (cdiff != 0)
|
||||
return cdiff;
|
||||
}
|
||||
*** ../vim-7.1.060/src/regexp.c Mon Aug 6 22:27:13 2007
|
||||
--- src/regexp.c Sun Aug 5 15:43:27 2007
|
||||
***************
|
||||
*** 2220,2226 ****
|
||||
break;
|
||||
case CLASS_LOWER:
|
||||
for (cu = 1; cu <= 255; cu++)
|
||||
! if (islower(cu))
|
||||
regc(cu);
|
||||
break;
|
||||
case CLASS_PRINT:
|
||||
--- 2220,2226 ----
|
||||
break;
|
||||
case CLASS_LOWER:
|
||||
for (cu = 1; cu <= 255; cu++)
|
||||
! if (MB_ISLOWER(cu))
|
||||
regc(cu);
|
||||
break;
|
||||
case CLASS_PRINT:
|
||||
***************
|
||||
*** 2240,2246 ****
|
||||
break;
|
||||
case CLASS_UPPER:
|
||||
for (cu = 1; cu <= 255; cu++)
|
||||
! if (isupper(cu))
|
||||
regc(cu);
|
||||
break;
|
||||
case CLASS_XDIGIT:
|
||||
--- 2240,2246 ----
|
||||
break;
|
||||
case CLASS_UPPER:
|
||||
for (cu = 1; cu <= 255; cu++)
|
||||
! if (MB_ISUPPER(cu))
|
||||
regc(cu);
|
||||
break;
|
||||
case CLASS_XDIGIT:
|
||||
***************
|
||||
*** 3465,3471 ****
|
||||
(enc_utf8 && utf_fold(prog->regstart) == utf_fold(c)))
|
||||
|| (c < 255 && prog->regstart < 255 &&
|
||||
#endif
|
||||
! TOLOWER_LOC(prog->regstart) == TOLOWER_LOC(c)))))
|
||||
retval = regtry(prog, col);
|
||||
else
|
||||
retval = 0;
|
||||
--- 3465,3471 ----
|
||||
(enc_utf8 && utf_fold(prog->regstart) == utf_fold(c)))
|
||||
|| (c < 255 && prog->regstart < 255 &&
|
||||
#endif
|
||||
! MB_TOLOWER(prog->regstart) == MB_TOLOWER(c)))))
|
||||
retval = regtry(prog, col);
|
||||
else
|
||||
retval = 0;
|
||||
***************
|
||||
*** 4200,4206 ****
|
||||
#ifdef FEAT_MBYTE
|
||||
!enc_utf8 &&
|
||||
#endif
|
||||
! TOLOWER_LOC(*opnd) != TOLOWER_LOC(*reginput))))
|
||||
status = RA_NOMATCH;
|
||||
else if (*opnd == NUL)
|
||||
{
|
||||
--- 4200,4206 ----
|
||||
#ifdef FEAT_MBYTE
|
||||
!enc_utf8 &&
|
||||
#endif
|
||||
! MB_TOLOWER(*opnd) != MB_TOLOWER(*reginput))))
|
||||
status = RA_NOMATCH;
|
||||
else if (*opnd == NUL)
|
||||
{
|
||||
***************
|
||||
*** 4733,4742 ****
|
||||
rst.nextb = *OPERAND(next);
|
||||
if (ireg_ic)
|
||||
{
|
||||
! if (isupper(rst.nextb))
|
||||
! rst.nextb_ic = TOLOWER_LOC(rst.nextb);
|
||||
else
|
||||
! rst.nextb_ic = TOUPPER_LOC(rst.nextb);
|
||||
}
|
||||
else
|
||||
rst.nextb_ic = rst.nextb;
|
||||
--- 4733,4742 ----
|
||||
rst.nextb = *OPERAND(next);
|
||||
if (ireg_ic)
|
||||
{
|
||||
! if (MB_ISUPPER(rst.nextb))
|
||||
! rst.nextb_ic = MB_TOLOWER(rst.nextb);
|
||||
else
|
||||
! rst.nextb_ic = MB_TOUPPER(rst.nextb);
|
||||
}
|
||||
else
|
||||
rst.nextb_ic = rst.nextb;
|
||||
***************
|
||||
*** 5558,5568 ****
|
||||
int cu, cl;
|
||||
|
||||
/* This doesn't do a multi-byte character, because a MULTIBYTECODE
|
||||
! * would have been used for it. */
|
||||
if (ireg_ic)
|
||||
{
|
||||
! cu = TOUPPER_LOC(*opnd);
|
||||
! cl = TOLOWER_LOC(*opnd);
|
||||
while (count < maxcount && (*scan == cu || *scan == cl))
|
||||
{
|
||||
count++;
|
||||
--- 5558,5569 ----
|
||||
int cu, cl;
|
||||
|
||||
/* This doesn't do a multi-byte character, because a MULTIBYTECODE
|
||||
! * would have been used for it. It does handle single-byte
|
||||
! * characters, such as latin1. */
|
||||
if (ireg_ic)
|
||||
{
|
||||
! cu = MB_TOUPPER(*opnd);
|
||||
! cl = MB_TOLOWER(*opnd);
|
||||
while (count < maxcount && (*scan == cu || *scan == cl))
|
||||
{
|
||||
count++;
|
||||
***************
|
||||
*** 6490,6499 ****
|
||||
cc = utf_fold(c);
|
||||
else
|
||||
#endif
|
||||
! if (isupper(c))
|
||||
! cc = TOLOWER_LOC(c);
|
||||
! else if (islower(c))
|
||||
! cc = TOUPPER_LOC(c);
|
||||
else
|
||||
return vim_strchr(s, c);
|
||||
|
||||
--- 6491,6500 ----
|
||||
cc = utf_fold(c);
|
||||
else
|
||||
#endif
|
||||
! if (MB_ISUPPER(c))
|
||||
! cc = MB_TOLOWER(c);
|
||||
! else if (MB_ISLOWER(c))
|
||||
! cc = MB_TOUPPER(c);
|
||||
else
|
||||
return vim_strchr(s, c);
|
||||
|
||||
*** ../vim-7.1.060/src/vim.h Sat May 12 15:08:22 2007
|
||||
--- src/vim.h Sat Aug 4 13:57:36 2007
|
||||
***************
|
||||
*** 1380,1387 ****
|
||||
#endif
|
||||
|
||||
#ifdef FEAT_MBYTE
|
||||
! # define MB_STRICMP(d, s) (has_mbyte ? mb_strnicmp((char_u *)(d), (char_u *)(s), (int)MAXCOL) : STRICMP((d), (s)))
|
||||
! # define MB_STRNICMP(d, s, n) (has_mbyte ? mb_strnicmp((char_u *)(d), (char_u *)(s), (int)(n)) : STRNICMP((d), (s), (n)))
|
||||
#else
|
||||
# define MB_STRICMP(d, s) STRICMP((d), (s))
|
||||
# define MB_STRNICMP(d, s, n) STRNICMP((d), (s), (n))
|
||||
--- 1380,1393 ----
|
||||
#endif
|
||||
|
||||
#ifdef FEAT_MBYTE
|
||||
! /* We need to call mb_stricmp() even when we aren't dealing with a multi-byte
|
||||
! * encoding because mb_stricmp() takes care of all ascii and non-ascii
|
||||
! * encodings, including characters with umluats in latin1, etc., while
|
||||
! * STRICMP() only handles the system locale version, which often does not
|
||||
! * handle non-ascii properly. */
|
||||
!
|
||||
! # define MB_STRICMP(d, s) mb_strnicmp((char_u *)(d), (char_u *)(s), (int)MAXCOL)
|
||||
! # define MB_STRNICMP(d, s, n) mb_strnicmp((char_u *)(d), (char_u *)(s), (int)(n))
|
||||
#else
|
||||
# define MB_STRICMP(d, s) STRICMP((d), (s))
|
||||
# define MB_STRNICMP(d, s, n) STRNICMP((d), (s), (n))
|
||||
*** ../vim-7.1.060/src/version.c Sat Aug 11 13:37:36 2007
|
||||
--- src/version.c Sat Aug 11 13:55:24 2007
|
||||
***************
|
||||
*** 668,669 ****
|
||||
--- 668,671 ----
|
||||
{ /* Add new patch number below this line */
|
||||
+ /**/
|
||||
+ 61,
|
||||
/**/
|
||||
|
||||
--
|
||||
Support your right to bare arms! Wear short sleeves!
|
||||
|
||||
/// 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.1.062
55
7.1.062
@ -1,55 +0,0 @@
|
||||
To: vim-dev@vim.org
|
||||
Subject: patch 7.1.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.1.062 (after 7.1.038)
|
||||
Problem: Indents of C comments can be wrong. (John Mullin)
|
||||
Solution: Adjust ind_len. (Chris Lubinski)
|
||||
Files: src/misc1.c
|
||||
|
||||
|
||||
*** ../vim-7.1.061/src/misc1.c Mon Aug 6 22:27:13 2007
|
||||
--- src/misc1.c Fri Aug 10 19:41:42 2007
|
||||
***************
|
||||
*** 222,228 ****
|
||||
* than old) */
|
||||
while (vim_iswhite(*p))
|
||||
(void)*p++;
|
||||
! todo = size-ind_done;
|
||||
}
|
||||
else
|
||||
{
|
||||
--- 222,231 ----
|
||||
* than old) */
|
||||
while (vim_iswhite(*p))
|
||||
(void)*p++;
|
||||
! todo = size - ind_done;
|
||||
! ind_len += todo; /* Set total length of indent in characters,
|
||||
! * which may have been undercounted until now */
|
||||
!
|
||||
}
|
||||
else
|
||||
{
|
||||
*** ../vim-7.1.061/src/version.c Sat Aug 11 13:57:31 2007
|
||||
--- src/version.c Sat Aug 11 14:30:52 2007
|
||||
***************
|
||||
*** 668,669 ****
|
||||
--- 668,671 ----
|
||||
{ /* Add new patch number below this line */
|
||||
+ /**/
|
||||
+ 62,
|
||||
/**/
|
||||
|
||||
--
|
||||
hundred-and-one symptoms of being an internet addict:
|
||||
120. You ask a friend, "What's that big shiny thing?" He says, "It's 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 ///
|
52
7.1.063
52
7.1.063
@ -1,52 +0,0 @@
|
||||
To: vim-dev@vim.org
|
||||
Subject: patch 7.1.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.1.063 (after 7.1.040)
|
||||
Problem: Warning for unitialized variable.
|
||||
Solution: Initialise it to NULL.
|
||||
Files: src/ex_docmd.c
|
||||
|
||||
|
||||
*** ../vim-7.1.062/src/ex_docmd.c Thu Jul 26 22:55:11 2007
|
||||
--- src/ex_docmd.c Wed Aug 8 22:28:33 2007
|
||||
***************
|
||||
*** 10817,10823 ****
|
||||
exarg_T *eap;
|
||||
{
|
||||
char_u *p;
|
||||
! char_u *g;
|
||||
char_u *end;
|
||||
int c;
|
||||
int id;
|
||||
--- 10818,10824 ----
|
||||
exarg_T *eap;
|
||||
{
|
||||
char_u *p;
|
||||
! char_u *g = NULL;
|
||||
char_u *end;
|
||||
int c;
|
||||
int id;
|
||||
*** ../vim-7.1.062/src/version.c Sat Aug 11 14:32:10 2007
|
||||
--- src/version.c Sat Aug 11 15:58:55 2007
|
||||
***************
|
||||
*** 668,669 ****
|
||||
--- 668,671 ----
|
||||
{ /* Add new patch number below this line */
|
||||
+ /**/
|
||||
+ 63,
|
||||
/**/
|
||||
|
||||
--
|
||||
hundred-and-one symptoms of being an internet addict:
|
||||
124. You begin conversations with, "Who is your internet service provider?"
|
||||
|
||||
/// 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.1.064
50
7.1.064
@ -1,50 +0,0 @@
|
||||
To: vim-dev@vim.org
|
||||
Subject: patch 7.1.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.1.064
|
||||
Problem: On Interix some files appear not to exist.
|
||||
Solution: Remove the top bit from st_mode. (Ligesh)
|
||||
Files: src/os_unix.c
|
||||
|
||||
|
||||
*** ../vim-7.1.063/src/os_unix.c Thu May 10 19:42:47 2007
|
||||
--- src/os_unix.c Fri Aug 10 19:32:20 2007
|
||||
***************
|
||||
*** 2499,2505 ****
|
||||
--- 2499,2511 ----
|
||||
if (stat((char *)name, &statb))
|
||||
#endif
|
||||
return -1;
|
||||
+ #ifdef __INTERIX
|
||||
+ /* The top bit makes the value negative, which means the file doesn't
|
||||
+ * exist. Remove the bit, we don't use it. */
|
||||
+ return statb.st_mode & ~S_ADDACE;
|
||||
+ #else
|
||||
return statb.st_mode;
|
||||
+ #endif
|
||||
}
|
||||
|
||||
/*
|
||||
*** ../vim-7.1.063/src/version.c Sat Aug 11 15:59:44 2007
|
||||
--- src/version.c Sat Aug 11 22:21:35 2007
|
||||
***************
|
||||
*** 668,669 ****
|
||||
--- 668,671 ----
|
||||
{ /* Add new patch number below this line */
|
||||
+ /**/
|
||||
+ 64,
|
||||
/**/
|
||||
|
||||
--
|
||||
I have a watch cat! Just break in and she'll watch.
|
||||
|
||||
/// 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.1.065
113
7.1.065
@ -1,113 +0,0 @@
|
||||
To: vim-dev@vim.org
|
||||
Subject: patch 7.1.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.1.065 (extra)
|
||||
Problem: Win32: Compilation problem for newer version of w32api.
|
||||
Solution: Only define __IID_DEFINED__ when needed. (Chris Sutcliffe)
|
||||
Files: src/Make_ming.mak, src/iid_ole.c
|
||||
|
||||
|
||||
*** ../vim-7.1.064/src/Make_ming.mak Thu May 10 19:35:54 2007
|
||||
--- src/Make_ming.mak Sat Aug 11 14:52:11 2007
|
||||
***************
|
||||
*** 572,579 ****
|
||||
$(OUTDIR)/if_cscope.o: if_cscope.c $(INCL) if_cscope.h
|
||||
$(CC) -c $(CFLAGS) if_cscope.c -o $(OUTDIR)/if_cscope.o
|
||||
|
||||
$(OUTDIR)/if_ole.o: if_ole.cpp $(INCL)
|
||||
! $(CC) $(CFLAGS) -D__IID_DEFINED__ -c -o $(OUTDIR)/if_ole.o if_ole.cpp
|
||||
|
||||
$(OUTDIR)/if_ruby.o: if_ruby.c $(INCL)
|
||||
ifeq (16, $(RUBY))
|
||||
--- 572,580 ----
|
||||
$(OUTDIR)/if_cscope.o: if_cscope.c $(INCL) if_cscope.h
|
||||
$(CC) -c $(CFLAGS) if_cscope.c -o $(OUTDIR)/if_cscope.o
|
||||
|
||||
+ # Remove -D__IID_DEFINED__ for newer versions of the w32api
|
||||
$(OUTDIR)/if_ole.o: if_ole.cpp $(INCL)
|
||||
! $(CC) $(CFLAGS) -c -o $(OUTDIR)/if_ole.o if_ole.cpp
|
||||
|
||||
$(OUTDIR)/if_ruby.o: if_ruby.c $(INCL)
|
||||
ifeq (16, $(RUBY))
|
||||
*** ../vim-7.1.064/src/iid_ole.c Sun Jun 13 18:45:30 2004
|
||||
--- src/iid_ole.c Sat Aug 11 14:57:58 2007
|
||||
***************
|
||||
*** 16,24 ****
|
||||
extern "C"{
|
||||
#endif
|
||||
|
||||
|
||||
#ifndef __IID_DEFINED__
|
||||
! #define __IID_DEFINED__
|
||||
|
||||
typedef struct _IID
|
||||
{
|
||||
--- 16,33 ----
|
||||
extern "C"{
|
||||
#endif
|
||||
|
||||
+ #ifdef __MINGW32__
|
||||
+ # include <w32api.h>
|
||||
+
|
||||
+ # if __W32API_MAJOR_VERSION == 3 && __W32API_MINOR_VERSION < 10
|
||||
+ /* This define is missing from older MingW versions of w32api, even though
|
||||
+ * IID is defined. */
|
||||
+ # define __IID_DEFINED__
|
||||
+ # endif
|
||||
+ #endif
|
||||
|
||||
#ifndef __IID_DEFINED__
|
||||
! # define __IID_DEFINED__
|
||||
|
||||
typedef struct _IID
|
||||
{
|
||||
***************
|
||||
*** 28,39 ****
|
||||
unsigned char c[8];
|
||||
} IID;
|
||||
|
||||
! #endif // __IID_DEFINED__
|
||||
|
||||
#ifndef CLSID_DEFINED
|
||||
! #define CLSID_DEFINED
|
||||
typedef IID CLSID;
|
||||
! #endif // CLSID_DEFINED
|
||||
|
||||
const IID IID_IVim = {0x0F0BFAE2,0x4C90,0x11d1,{0x82,0xD7,0x00,0x04,0xAC,0x36,0x85,0x19}};
|
||||
|
||||
--- 37,48 ----
|
||||
unsigned char c[8];
|
||||
} IID;
|
||||
|
||||
! #endif
|
||||
|
||||
#ifndef CLSID_DEFINED
|
||||
! # define CLSID_DEFINED
|
||||
typedef IID CLSID;
|
||||
! #endif
|
||||
|
||||
const IID IID_IVim = {0x0F0BFAE2,0x4C90,0x11d1,{0x82,0xD7,0x00,0x04,0xAC,0x36,0x85,0x19}};
|
||||
|
||||
*** ../vim-7.1.064/src/version.c Sat Aug 11 22:22:56 2007
|
||||
--- src/version.c Sun Aug 12 15:21:34 2007
|
||||
***************
|
||||
*** 668,669 ****
|
||||
--- 668,671 ----
|
||||
{ /* Add new patch number below this line */
|
||||
+ /**/
|
||||
+ 65,
|
||||
/**/
|
||||
|
||||
--
|
||||
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 ///
|
152
7.1.066
152
7.1.066
@ -1,152 +0,0 @@
|
||||
To: vim-dev@vim.org
|
||||
Subject: patch 7.1.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.1.066
|
||||
Problem: When 'bomb' is set or reset the file should be considered
|
||||
modified. (Tony Mechelynck)
|
||||
Solution: Handle like 'endofline'. (Martin Toft)
|
||||
Files: src/buffer.c, src/fileio.c, src/option.c, src/structs.h
|
||||
|
||||
|
||||
*** ../vim-7.1.065/src/buffer.c Mon Aug 6 22:27:12 2007
|
||||
--- src/buffer.c Sat Aug 11 16:56:57 2007
|
||||
***************
|
||||
*** 502,507 ****
|
||||
--- 502,508 ----
|
||||
buf->b_start_eol = TRUE;
|
||||
#ifdef FEAT_MBYTE
|
||||
buf->b_p_bomb = FALSE;
|
||||
+ buf->b_start_bomb = FALSE;
|
||||
#endif
|
||||
buf->b_ml.ml_mfp = NULL;
|
||||
buf->b_ml.ml_flags = ML_EMPTY; /* empty buffer */
|
||||
*** ../vim-7.1.065/src/fileio.c Tue Jul 10 17:09:51 2007
|
||||
--- src/fileio.c Sat Aug 11 16:56:57 2007
|
||||
***************
|
||||
*** 654,659 ****
|
||||
--- 654,660 ----
|
||||
curbuf->b_start_eol = TRUE;
|
||||
#ifdef FEAT_MBYTE
|
||||
curbuf->b_p_bomb = FALSE;
|
||||
+ curbuf->b_start_bomb = FALSE;
|
||||
#endif
|
||||
}
|
||||
|
||||
***************
|
||||
*** 912,918 ****
|
||||
--- 913,922 ----
|
||||
file_rewind = FALSE;
|
||||
#ifdef FEAT_MBYTE
|
||||
if (set_options)
|
||||
+ {
|
||||
curbuf->b_p_bomb = FALSE;
|
||||
+ curbuf->b_start_bomb = FALSE;
|
||||
+ }
|
||||
conv_error = 0;
|
||||
#endif
|
||||
}
|
||||
***************
|
||||
*** 1361,1367 ****
|
||||
--- 1365,1374 ----
|
||||
size -= blen;
|
||||
mch_memmove(ptr, ptr + blen, (size_t)size);
|
||||
if (set_options)
|
||||
+ {
|
||||
curbuf->b_p_bomb = TRUE;
|
||||
+ curbuf->b_start_bomb = TRUE;
|
||||
+ }
|
||||
}
|
||||
|
||||
if (fio_flags == FIO_UCSBOM)
|
||||
*** ../vim-7.1.065/src/option.c Tue Jul 24 14:57:16 2007
|
||||
--- src/option.c Sat Aug 11 16:56:57 2007
|
||||
***************
|
||||
*** 7118,7123 ****
|
||||
--- 7118,7128 ----
|
||||
/* when 'endofline' is changed, redraw the window title */
|
||||
else if ((int *)varp == &curbuf->b_p_eol)
|
||||
need_maketitle = TRUE;
|
||||
+ #ifdef FEAT_MBYTE
|
||||
+ /* when 'bomb' is changed, redraw the window title */
|
||||
+ else if ((int *)varp == &curbuf->b_p_bomb)
|
||||
+ need_maketitle = TRUE;
|
||||
+ #endif
|
||||
#endif
|
||||
|
||||
/* when 'bin' is set also set some other options */
|
||||
***************
|
||||
*** 10604,10609 ****
|
||||
--- 10609,10616 ----
|
||||
buf->b_start_ffc = *buf->b_p_ff;
|
||||
buf->b_start_eol = buf->b_p_eol;
|
||||
#ifdef FEAT_MBYTE
|
||||
+ buf->b_start_bomb = buf->b_p_bomb;
|
||||
+
|
||||
/* Only use free/alloc when necessary, they take time. */
|
||||
if (buf->b_start_fenc == NULL
|
||||
|| STRCMP(buf->b_start_fenc, buf->b_p_fenc) != 0)
|
||||
***************
|
||||
*** 10617,10623 ****
|
||||
/*
|
||||
* Return TRUE if 'fileformat' and/or 'fileencoding' has a different value
|
||||
* from when editing started (save_file_ff() called).
|
||||
! * Also when 'endofline' was changed and 'binary' is set.
|
||||
* Don't consider a new, empty buffer to be changed.
|
||||
*/
|
||||
int
|
||||
--- 10624,10631 ----
|
||||
/*
|
||||
* Return TRUE if 'fileformat' and/or 'fileencoding' has a different value
|
||||
* from when editing started (save_file_ff() called).
|
||||
! * Also when 'endofline' was changed and 'binary' is set, or when 'bomb' was
|
||||
! * changed and 'binary' is not set.
|
||||
* Don't consider a new, empty buffer to be changed.
|
||||
*/
|
||||
int
|
||||
***************
|
||||
*** 10636,10641 ****
|
||||
--- 10644,10651 ----
|
||||
if (buf->b_p_bin && buf->b_start_eol != buf->b_p_eol)
|
||||
return TRUE;
|
||||
#ifdef FEAT_MBYTE
|
||||
+ if (!buf->b_p_bin && buf->b_start_bomb != buf->b_p_bomb)
|
||||
+ return TRUE;
|
||||
if (buf->b_start_fenc == NULL)
|
||||
return (*buf->b_p_fenc != NUL);
|
||||
return (STRCMP(buf->b_start_fenc, buf->b_p_fenc) != 0);
|
||||
*** ../vim-7.1.065/src/structs.h Thu Jul 26 22:55:11 2007
|
||||
--- src/structs.h Sat Aug 11 16:56:57 2007
|
||||
***************
|
||||
*** 1453,1458 ****
|
||||
--- 1453,1459 ----
|
||||
#ifdef FEAT_MBYTE
|
||||
char_u *b_start_fenc; /* 'fileencoding' when edit started or NULL */
|
||||
int b_bad_char; /* "++bad=" argument when edit started or 0 */
|
||||
+ int b_start_bomb; /* 'bomb' when it was read */
|
||||
#endif
|
||||
|
||||
#ifdef FEAT_EVAL
|
||||
*** ../vim-7.1.065/src/version.c Sun Aug 12 15:24:05 2007
|
||||
--- src/version.c Sun Aug 12 15:48:34 2007
|
||||
***************
|
||||
*** 668,669 ****
|
||||
--- 668,671 ----
|
||||
{ /* Add new patch number below this line */
|
||||
+ /**/
|
||||
+ 66,
|
||||
/**/
|
||||
|
||||
--
|
||||
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 ///
|
302
7.1.067
302
7.1.067
@ -1,302 +0,0 @@
|
||||
To: vim-dev@vim.org
|
||||
Subject: patch 7.1.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.1.067
|
||||
Problem: 'thesaurus' doesn't work when 'infercase' is set. (Mohsin)
|
||||
Solution: Don't copy the characters being completed but check the case and
|
||||
apply it to the suggested word. Also fix that the first word in
|
||||
the thesaurus line is not used. (Martin Toft)
|
||||
Files: src/edit.c
|
||||
|
||||
|
||||
*** ../vim-7.1.066/src/edit.c Sun Jul 29 15:02:34 2007
|
||||
--- src/edit.c Sat Aug 11 17:16:51 2007
|
||||
***************
|
||||
*** 2057,2063 ****
|
||||
* case of the originally typed text is used, and the case of the completed
|
||||
* text is inferred, ie this tries to work out what case you probably wanted
|
||||
* the rest of the word to be in -- webb
|
||||
- * TODO: make this work for multi-byte characters.
|
||||
*/
|
||||
int
|
||||
ins_compl_add_infercase(str, len, icase, fname, dir, flags)
|
||||
--- 2057,2062 ----
|
||||
***************
|
||||
*** 2068,2121 ****
|
||||
int dir;
|
||||
int flags;
|
||||
{
|
||||
int has_lower = FALSE;
|
||||
int was_letter = FALSE;
|
||||
- int idx;
|
||||
|
||||
! if (p_ic && curbuf->b_p_inf && len < IOSIZE)
|
||||
{
|
||||
! /* Infer case of completed part -- webb */
|
||||
! /* Use IObuff, str would change text in buffer! */
|
||||
! vim_strncpy(IObuff, str, len);
|
||||
|
||||
! /* Rule 1: Were any chars converted to lower? */
|
||||
! for (idx = 0; idx < compl_length; ++idx)
|
||||
{
|
||||
! if (islower(compl_orig_text[idx]))
|
||||
{
|
||||
! has_lower = TRUE;
|
||||
! if (isupper(IObuff[idx]))
|
||||
! {
|
||||
! /* Rule 1 is satisfied */
|
||||
! for (idx = compl_length; idx < len; ++idx)
|
||||
! IObuff[idx] = TOLOWER_LOC(IObuff[idx]);
|
||||
! break;
|
||||
! }
|
||||
}
|
||||
}
|
||||
|
||||
! /*
|
||||
! * Rule 2: No lower case, 2nd consecutive letter converted to
|
||||
! * upper case.
|
||||
! */
|
||||
! if (!has_lower)
|
||||
{
|
||||
! for (idx = 0; idx < compl_length; ++idx)
|
||||
{
|
||||
! if (was_letter && isupper(compl_orig_text[idx])
|
||||
! && islower(IObuff[idx]))
|
||||
{
|
||||
! /* Rule 2 is satisfied */
|
||||
! for (idx = compl_length; idx < len; ++idx)
|
||||
! IObuff[idx] = TOUPPER_LOC(IObuff[idx]);
|
||||
! break;
|
||||
}
|
||||
- was_letter = isalpha(compl_orig_text[idx]);
|
||||
}
|
||||
- }
|
||||
|
||||
! /* Copy the original case of the part we typed */
|
||||
! STRNCPY(IObuff, compl_orig_text, compl_length);
|
||||
|
||||
return ins_compl_add(IObuff, len, icase, fname, NULL, dir,
|
||||
flags, FALSE);
|
||||
--- 2067,2213 ----
|
||||
int dir;
|
||||
int flags;
|
||||
{
|
||||
+ char_u *p;
|
||||
+ int i, c;
|
||||
+ int actual_len; /* Take multi-byte characters */
|
||||
+ int actual_compl_length; /* into account. */
|
||||
+ int *wca; /* Wide character array. */
|
||||
int has_lower = FALSE;
|
||||
int was_letter = FALSE;
|
||||
|
||||
! if (p_ic && curbuf->b_p_inf)
|
||||
{
|
||||
! /* Infer case of completed part. */
|
||||
|
||||
! /* Find actual length of completion. */
|
||||
! #ifdef FEAT_MBYTE
|
||||
! if (has_mbyte)
|
||||
{
|
||||
! p = str;
|
||||
! actual_len = 0;
|
||||
! while (*p != NUL)
|
||||
{
|
||||
! mb_ptr_adv(p);
|
||||
! ++actual_len;
|
||||
}
|
||||
}
|
||||
+ else
|
||||
+ #endif
|
||||
+ actual_len = len;
|
||||
|
||||
! /* Find actual length of original text. */
|
||||
! #ifdef FEAT_MBYTE
|
||||
! if (has_mbyte)
|
||||
{
|
||||
! p = compl_orig_text;
|
||||
! actual_compl_length = 0;
|
||||
! while (*p != NUL)
|
||||
{
|
||||
! mb_ptr_adv(p);
|
||||
! ++actual_compl_length;
|
||||
! }
|
||||
! }
|
||||
! else
|
||||
! #endif
|
||||
! actual_compl_length = compl_length;
|
||||
!
|
||||
! /* Allocate wide character array for the completion and fill it. */
|
||||
! wca = (int *)alloc(actual_len * sizeof(int));
|
||||
! if (wca != NULL)
|
||||
! {
|
||||
! p = str;
|
||||
! for (i = 0; i < actual_len; ++i)
|
||||
! #ifdef FEAT_MBYTE
|
||||
! if (has_mbyte)
|
||||
! wca[i] = mb_ptr2char_adv(&p);
|
||||
! else
|
||||
! #endif
|
||||
! wca[i] = *(p++);
|
||||
!
|
||||
! /* Rule 1: Were any chars converted to lower? */
|
||||
! p = compl_orig_text;
|
||||
! for (i = 0; i < actual_compl_length; ++i)
|
||||
! {
|
||||
! #ifdef FEAT_MBYTE
|
||||
! if (has_mbyte)
|
||||
! c = mb_ptr2char_adv(&p);
|
||||
! else
|
||||
! #endif
|
||||
! c = *(p++);
|
||||
! if (MB_ISLOWER(c))
|
||||
{
|
||||
! has_lower = TRUE;
|
||||
! if (MB_ISUPPER(wca[i]))
|
||||
! {
|
||||
! /* Rule 1 is satisfied. */
|
||||
! for (i = actual_compl_length; i < actual_len; ++i)
|
||||
! wca[i] = MB_TOLOWER(wca[i]);
|
||||
! break;
|
||||
! }
|
||||
}
|
||||
}
|
||||
|
||||
! /*
|
||||
! * Rule 2: No lower case, 2nd consecutive letter converted to
|
||||
! * upper case.
|
||||
! */
|
||||
! if (!has_lower)
|
||||
! {
|
||||
! p = compl_orig_text;
|
||||
! for (i = 0; i < actual_compl_length; ++i)
|
||||
! {
|
||||
! #ifdef FEAT_MBYTE
|
||||
! if (has_mbyte)
|
||||
! c = mb_ptr2char_adv(&p);
|
||||
! else
|
||||
! #endif
|
||||
! c = *(p++);
|
||||
! if (was_letter && MB_ISUPPER(c) && MB_ISLOWER(wca[i]))
|
||||
! {
|
||||
! /* Rule 2 is satisfied. */
|
||||
! for (i = actual_compl_length; i < actual_len; ++i)
|
||||
! wca[i] = MB_TOUPPER(wca[i]);
|
||||
! break;
|
||||
! }
|
||||
! was_letter = MB_ISLOWER(c) || MB_ISUPPER(c);
|
||||
! }
|
||||
! }
|
||||
!
|
||||
! /* Copy the original case of the part we typed. */
|
||||
! p = compl_orig_text;
|
||||
! for (i = 0; i < actual_compl_length; ++i)
|
||||
! {
|
||||
! #ifdef FEAT_MBYTE
|
||||
! if (has_mbyte)
|
||||
! c = mb_ptr2char_adv(&p);
|
||||
! else
|
||||
! #endif
|
||||
! c = *(p++);
|
||||
! if (MB_ISLOWER(c))
|
||||
! wca[i] = MB_TOLOWER(wca[i]);
|
||||
! else if (MB_ISUPPER(c))
|
||||
! wca[i] = MB_TOUPPER(wca[i]);
|
||||
! }
|
||||
!
|
||||
! /*
|
||||
! * Generate encoding specific output from wide character array.
|
||||
! * Multi-byte characters can occupy up to five bytes more than
|
||||
! * ASCII characters, and we also need one byte for NUL, so stay
|
||||
! * six bytes away from the edge of IObuff.
|
||||
! */
|
||||
! p = IObuff;
|
||||
! i = 0;
|
||||
! while (i < actual_len && (p - IObuff + 6) < IOSIZE)
|
||||
! #ifdef FEAT_MBYTE
|
||||
! if (has_mbyte)
|
||||
! p += mb_char2bytes(wca[i++], p);
|
||||
! else
|
||||
! #endif
|
||||
! *(p++) = wca[i++];
|
||||
! *p = NUL;
|
||||
!
|
||||
! vim_free(wca);
|
||||
! }
|
||||
|
||||
return ins_compl_add(IObuff, len, icase, fname, NULL, dir,
|
||||
flags, FALSE);
|
||||
***************
|
||||
*** 2842,2847 ****
|
||||
--- 2934,2940 ----
|
||||
/*
|
||||
* Add the other matches on the line
|
||||
*/
|
||||
+ ptr = buf;
|
||||
while (!got_int)
|
||||
{
|
||||
/* Find start of the next word. Skip white
|
||||
***************
|
||||
*** 2851,2857 ****
|
||||
break;
|
||||
wstart = ptr;
|
||||
|
||||
! /* Find end of the word and add it. */
|
||||
#ifdef FEAT_MBYTE
|
||||
if (has_mbyte)
|
||||
/* Japanese words may have characters in
|
||||
--- 2944,2950 ----
|
||||
break;
|
||||
wstart = ptr;
|
||||
|
||||
! /* Find end of the word. */
|
||||
#ifdef FEAT_MBYTE
|
||||
if (has_mbyte)
|
||||
/* Japanese words may have characters in
|
||||
***************
|
||||
*** 2868,2876 ****
|
||||
else
|
||||
#endif
|
||||
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)
|
||||
--- 2961,2972 ----
|
||||
else
|
||||
#endif
|
||||
ptr = find_word_end(ptr);
|
||||
!
|
||||
! /* Add the word. Skip the regexp match. */
|
||||
! if (wstart != regmatch->startp[0])
|
||||
! add_r = ins_compl_add_infercase(wstart,
|
||||
! (int)(ptr - wstart),
|
||||
! p_ic, files[i], *dir, 0);
|
||||
}
|
||||
}
|
||||
if (add_r == OK)
|
||||
*** ../vim-7.1.066/src/version.c Sun Aug 12 15:50:26 2007
|
||||
--- src/version.c Sun Aug 12 16:36:34 2007
|
||||
***************
|
||||
*** 668,669 ****
|
||||
--- 668,671 ----
|
||||
{ /* Add new patch number below this line */
|
||||
+ /**/
|
||||
+ 67,
|
||||
/**/
|
||||
|
||||
--
|
||||
hundred-and-one symptoms of being an internet addict:
|
||||
128. You can access the Net -- via your portable and cellular phone.
|
||||
|
||||
/// 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 ///
|
206
7.1.068
206
7.1.068
@ -1,206 +0,0 @@
|
||||
To: vim-dev@vim.org
|
||||
Subject: patch 7.1.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.1.068
|
||||
Problem: When 'equalalways' is set and splitting a window, it's possible
|
||||
that another small window gets bigger.
|
||||
Solution: Only equalize window sizes when after a split the windows are
|
||||
smaller than another window. (Martin Toft)
|
||||
Files: runtime/doc/options.txt, runtime/doc/windows.txt, src/window.c
|
||||
|
||||
|
||||
*** ../vim-7.1.067/runtime/doc/options.txt Sat May 12 16:27:04 2007
|
||||
--- runtime/doc/options.txt Sat Aug 11 17:25:38 2007
|
||||
***************
|
||||
*** 1,4 ****
|
||||
! *options.txt* For Vim version 7.1. Last change: 2007 May 11
|
||||
|
||||
|
||||
VIM REFERENCE MANUAL by Bram Moolenaar
|
||||
--- 1,4 ----
|
||||
! *options.txt* For Vim version 7.1. Last change: 2007 Aug 10
|
||||
|
||||
|
||||
VIM REFERENCE MANUAL by Bram Moolenaar
|
||||
***************
|
||||
*** 2415,2422 ****
|
||||
When mixing vertically and horizontally split windows, a minimal size
|
||||
is computed and some windows may be larger if there is room. The
|
||||
'eadirection' option tells in which direction the size is affected.
|
||||
! Changing the height of a window can be avoided by setting
|
||||
! 'winfixheight'.
|
||||
|
||||
*'equalprg'* *'ep'*
|
||||
'equalprg' 'ep' string (default "")
|
||||
--- 2418,2425 ----
|
||||
When mixing vertically and horizontally split windows, a minimal size
|
||||
is computed and some windows may be larger if there is room. The
|
||||
'eadirection' option tells in which direction the size is affected.
|
||||
! Changing the height and width of a window can be avoided by setting
|
||||
! 'winfixheight' and 'winfixwidth', respectively.
|
||||
|
||||
*'equalprg'* *'ep'*
|
||||
'equalprg' 'ep' string (default "")
|
||||
*** ../vim-7.1.067/runtime/doc/windows.txt Sat May 12 16:42:48 2007
|
||||
--- runtime/doc/windows.txt Sat Aug 11 17:25:38 2007
|
||||
***************
|
||||
*** 132,138 ****
|
||||
the same file. Make new window N high (default is to use half
|
||||
the height of the current window). Reduces the current window
|
||||
height to create room (and others, if the 'equalalways' option
|
||||
! is set and 'eadirection' isn't "hor").
|
||||
Note: CTRL-S does not work on all terminals and might block
|
||||
further input, use CTRL-Q to get going again.
|
||||
Also see |++opt| and |+cmd|.
|
||||
--- 132,139 ----
|
||||
the same file. Make new window N high (default is to use half
|
||||
the height of the current window). Reduces the current window
|
||||
height to create room (and others, if the 'equalalways' option
|
||||
! is set, 'eadirection' isn't "hor", and one of them is higher
|
||||
! than the current or the new window).
|
||||
Note: CTRL-S does not work on all terminals and might block
|
||||
further input, use CTRL-Q to get going again.
|
||||
Also see |++opt| and |+cmd|.
|
||||
***************
|
||||
*** 140,148 ****
|
||||
CTRL-W CTRL-V *CTRL-W_CTRL-V*
|
||||
CTRL-W v *CTRL-W_v*
|
||||
:[N]vs[plit] [++opt] [+cmd] [file] *:vs* *:vsplit*
|
||||
! Like |:split|, but split vertically. If 'equalalways' is set
|
||||
! and 'eadirection' isn't "ver" the windows will be spread out
|
||||
! horizontally, unless a width was specified.
|
||||
Note: In other places CTRL-Q does the same as CTRL-V, but here
|
||||
it doesn't!
|
||||
|
||||
--- 141,153 ----
|
||||
CTRL-W CTRL-V *CTRL-W_CTRL-V*
|
||||
CTRL-W v *CTRL-W_v*
|
||||
:[N]vs[plit] [++opt] [+cmd] [file] *:vs* *:vsplit*
|
||||
! Like |:split|, but split vertically. The windows will be
|
||||
! spread out horizontally if
|
||||
! 1. a width was not specified,
|
||||
! 2. 'equalalways' is set,
|
||||
! 3. 'eadirection' isn't "ver", and
|
||||
! 4. one of the other windows are wider than the current or new
|
||||
! window.
|
||||
Note: In other places CTRL-Q does the same as CTRL-V, but here
|
||||
it doesn't!
|
||||
|
||||
*** ../vim-7.1.067/src/window.c Sat Aug 11 13:37:36 2007
|
||||
--- src/window.c Sat Aug 11 17:25:38 2007
|
||||
***************
|
||||
*** 733,739 ****
|
||||
if (flags & WSP_VERT)
|
||||
{
|
||||
layout = FR_ROW;
|
||||
- do_equal = (p_ea && new_size == 0 && *p_ead != 'v');
|
||||
|
||||
/*
|
||||
* Check if we are able to split the current window and compute its
|
||||
--- 733,738 ----
|
||||
***************
|
||||
*** 770,785 ****
|
||||
* instead, if possible. */
|
||||
if (oldwin->w_p_wfw)
|
||||
win_setwidth_win(oldwin->w_width + new_size, oldwin);
|
||||
}
|
||||
else
|
||||
#endif
|
||||
{
|
||||
layout = FR_COL;
|
||||
- do_equal = (p_ea && new_size == 0
|
||||
- #ifdef FEAT_VERTSPLIT
|
||||
- && *p_ead != 'h'
|
||||
- #endif
|
||||
- );
|
||||
|
||||
/*
|
||||
* Check if we are able to split the current window and compute its
|
||||
--- 769,799 ----
|
||||
* instead, if possible. */
|
||||
if (oldwin->w_p_wfw)
|
||||
win_setwidth_win(oldwin->w_width + new_size, oldwin);
|
||||
+
|
||||
+ /* Only make all windows the same width if one of them (except oldwin)
|
||||
+ * is wider than one of the split windows. */
|
||||
+ if (!do_equal && p_ea && size == 0 && *p_ead != 'v'
|
||||
+ && oldwin->w_frame->fr_parent != NULL)
|
||||
+ {
|
||||
+ frp = oldwin->w_frame->fr_parent->fr_child;
|
||||
+ while (frp != NULL)
|
||||
+ {
|
||||
+ if (frp->fr_win != oldwin && frp->fr_win != NULL
|
||||
+ && (frp->fr_win->w_width > new_size
|
||||
+ || frp->fr_win->w_width > oldwin->w_width
|
||||
+ - new_size - STATUS_HEIGHT))
|
||||
+ {
|
||||
+ do_equal = TRUE;
|
||||
+ break;
|
||||
+ }
|
||||
+ frp = frp->fr_next;
|
||||
+ }
|
||||
+ }
|
||||
}
|
||||
else
|
||||
#endif
|
||||
{
|
||||
layout = FR_COL;
|
||||
|
||||
/*
|
||||
* Check if we are able to split the current window and compute its
|
||||
***************
|
||||
*** 831,836 ****
|
||||
--- 845,873 ----
|
||||
oldwin_height = oldwin->w_height;
|
||||
if (need_status)
|
||||
oldwin_height -= STATUS_HEIGHT;
|
||||
+ }
|
||||
+
|
||||
+ /* Only make all windows the same height if one of them (except oldwin)
|
||||
+ * is higher than one of the split windows. */
|
||||
+ if (!do_equal && p_ea && size == 0
|
||||
+ #ifdef FEAT_VERTSPLIT
|
||||
+ && *p_ead != 'h'
|
||||
+ #endif
|
||||
+ && oldwin->w_frame->fr_parent != NULL)
|
||||
+ {
|
||||
+ frp = oldwin->w_frame->fr_parent->fr_child;
|
||||
+ while (frp != NULL)
|
||||
+ {
|
||||
+ if (frp->fr_win != oldwin && frp->fr_win != NULL
|
||||
+ && (frp->fr_win->w_height > new_size
|
||||
+ || frp->fr_win->w_height > oldwin_height - new_size
|
||||
+ - STATUS_HEIGHT))
|
||||
+ {
|
||||
+ do_equal = TRUE;
|
||||
+ break;
|
||||
+ }
|
||||
+ frp = frp->fr_next;
|
||||
+ }
|
||||
}
|
||||
}
|
||||
|
||||
*** ../vim-7.1.067/src/version.c Sun Aug 12 16:38:03 2007
|
||||
--- src/version.c Sun Aug 12 16:51:36 2007
|
||||
***************
|
||||
*** 668,669 ****
|
||||
--- 668,671 ----
|
||||
{ /* Add new patch number below this line */
|
||||
+ /**/
|
||||
+ 68,
|
||||
/**/
|
||||
|
||||
--
|
||||
hundred-and-one symptoms of being an internet addict:
|
||||
129. You cancel your newspaper subscription.
|
||||
|
||||
/// 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.1.069
82
7.1.069
@ -1,82 +0,0 @@
|
||||
To: vim-dev@vim.org
|
||||
Subject: patch 7.1.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.1.069
|
||||
Problem: GTK GUI: When using confirm() without a default button there still
|
||||
is a default choice.
|
||||
Solution: Ignore Enter and Space when there is no default button. (Chris
|
||||
Lubinski)
|
||||
Files: src/gui_gtk.c
|
||||
|
||||
|
||||
*** ../vim-7.1.068/src/gui_gtk.c Mon May 14 19:35:51 2007
|
||||
--- src/gui_gtk.c Sat Aug 11 17:38:03 2007
|
||||
***************
|
||||
*** 1630,1640 ****
|
||||
*/
|
||||
/*ARGSUSED*/
|
||||
static int
|
||||
! dlg_key_press_event(GtkWidget * widget, GdkEventKey * event, CancelData *data)
|
||||
{
|
||||
! /* Ignore hitting Enter when there is no default button. */
|
||||
! if (data->ignore_enter && event->keyval == GDK_Return)
|
||||
return TRUE;
|
||||
|
||||
if (event->keyval != GDK_Escape && event->keyval != GDK_Return)
|
||||
return FALSE;
|
||||
--- 1630,1643 ----
|
||||
*/
|
||||
/*ARGSUSED*/
|
||||
static int
|
||||
! dlg_key_press_event(GtkWidget *widget, GdkEventKey *event, CancelData *data)
|
||||
{
|
||||
! /* Ignore hitting Enter (or Space) when there is no default button. */
|
||||
! if (data->ignore_enter && (event->keyval == GDK_Return
|
||||
! || event->keyval == ' '))
|
||||
return TRUE;
|
||||
+ else /* A different key was pressed, return to normal behavior */
|
||||
+ data->ignore_enter = FALSE;
|
||||
|
||||
if (event->keyval != GDK_Escape && event->keyval != GDK_Return)
|
||||
return FALSE;
|
||||
***************
|
||||
*** 2223,2228 ****
|
||||
--- 2226,2238 ----
|
||||
dialog_key_press_event_cb(GtkWidget *widget, GdkEventKey *event, gpointer data)
|
||||
{
|
||||
DialogInfo *di = (DialogInfo *)data;
|
||||
+
|
||||
+ /* Ignore hitting Enter (or Space) when there is no default button. */
|
||||
+ if (di->ignore_enter && (event->keyval == GDK_Return
|
||||
+ || event->keyval == ' '))
|
||||
+ return TRUE;
|
||||
+ else /* A different key was pressed, return to normal behavior */
|
||||
+ di->ignore_enter = FALSE;
|
||||
|
||||
/* Close the dialog when hitting "Esc". */
|
||||
if (event->keyval == GDK_Escape)
|
||||
*** ../vim-7.1.068/src/version.c Sun Aug 12 16:55:01 2007
|
||||
--- src/version.c Tue Aug 14 14:58:36 2007
|
||||
***************
|
||||
*** 668,669 ****
|
||||
--- 668,671 ----
|
||||
{ /* Add new patch number below this line */
|
||||
+ /**/
|
||||
+ 69,
|
||||
/**/
|
||||
|
||||
--
|
||||
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 ///
|
49
7.1.070
49
7.1.070
@ -1,49 +0,0 @@
|
||||
To: vim-dev@vim.org
|
||||
Subject: patch 7.1.070 (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.1.070 (extra)
|
||||
Problem: Win32 GUI: When using confirm() without a default button there
|
||||
still is a default choice.
|
||||
Solution: Set focus on something else than a button. (Chris Lubinski)
|
||||
Files: src/gui_w32.c
|
||||
|
||||
|
||||
*** ../vim-7.1.069/src/gui_w32.c Tue Jun 19 10:09:15 2007
|
||||
--- src/gui_w32.c Sat Aug 11 17:39:50 2007
|
||||
***************
|
||||
*** 2894,2899 ****
|
||||
--- 2894,2903 ----
|
||||
(void)SetFocus(hwnd);
|
||||
if (dialog_default_button > IDCANCEL)
|
||||
(void)SetFocus(GetDlgItem(hwnd, dialog_default_button));
|
||||
+ else
|
||||
+ /* We don't have a default, set focus on another element of the
|
||||
+ * dialog window, probably the icon */
|
||||
+ (void)SetFocus(GetDlgItem(hwnd, DLG_NONBUTTON_CONTROL));
|
||||
return FALSE;
|
||||
}
|
||||
|
||||
*** ../vim-7.1.069/src/version.c Tue Aug 14 14:59:41 2007
|
||||
--- src/version.c Tue Aug 14 16:55:41 2007
|
||||
***************
|
||||
*** 668,669 ****
|
||||
--- 668,671 ----
|
||||
{ /* Add new patch number below this line */
|
||||
+ /**/
|
||||
+ 70,
|
||||
/**/
|
||||
|
||||
--
|
||||
You are not really successful until someone claims he sat
|
||||
beside you in school.
|
||||
|
||||
/// 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 ///
|
169
7.1.071
169
7.1.071
@ -1,169 +0,0 @@
|
||||
To: vim-dev@vim.org
|
||||
Subject: patch 7.1.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.1.071 (after 7.1.040)
|
||||
Problem: Regexp patterns are not tested.
|
||||
Solution: Add a basic test, to be expanded later.
|
||||
Also add (commented-out) support for valgrind.
|
||||
Files: src/testdir/Makefile, src/testdir/test64.in, src/testdir/test64.ok
|
||||
|
||||
|
||||
*** ../vim-7.1.070/src/testdir/Makefile Thu Jul 26 22:55:11 2007
|
||||
--- src/testdir/Makefile Tue Aug 14 15:16:08 2007
|
||||
***************
|
||||
*** 4,9 ****
|
||||
--- 4,13 ----
|
||||
|
||||
VIMPROG = ../vim
|
||||
|
||||
+ # Uncomment this line for using valgrind.
|
||||
+ # The output goes into a file "valgrind.$PID" (sorry, no test number).
|
||||
+ # VALGRIND = valgrind --tool=memcheck --num-callers=15 --logfile=valgrind
|
||||
+
|
||||
SCRIPTS = test1.out test2.out test3.out test4.out test5.out test6.out \
|
||||
test7.out test8.out test9.out test10.out test11.out \
|
||||
test12.out test13.out test14.out test15.out test17.out \
|
||||
***************
|
||||
*** 15,21 ****
|
||||
test43.out test44.out test45.out test46.out test47.out \
|
||||
test48.out test49.out test51.out test52.out test53.out \
|
||||
test54.out test55.out test56.out test57.out test58.out \
|
||||
! test59.out test60.out test61.out test62.out test63.out
|
||||
|
||||
SCRIPTS_GUI = test16.out
|
||||
|
||||
--- 19,26 ----
|
||||
test43.out test44.out test45.out test46.out test47.out \
|
||||
test48.out test49.out test51.out test52.out test53.out \
|
||||
test54.out test55.out test56.out test57.out test58.out \
|
||||
! test59.out test60.out test61.out test62.out test63.out \
|
||||
! test64.out
|
||||
|
||||
SCRIPTS_GUI = test16.out
|
||||
|
||||
***************
|
||||
*** 38,44 ****
|
||||
|
||||
test1.out: test1.in
|
||||
-rm -f $*.failed tiny.vim small.vim mbyte.vim test.ok X* viminfo
|
||||
! $(VIMPROG) -u unix.vim -U NONE --noplugin -s dotest.in $*.in
|
||||
@/bin/sh -c "if diff test.out $*.ok; \
|
||||
then mv -f test.out $*.out; \
|
||||
else echo; \
|
||||
--- 43,49 ----
|
||||
|
||||
test1.out: test1.in
|
||||
-rm -f $*.failed tiny.vim small.vim mbyte.vim test.ok X* viminfo
|
||||
! $(VALGRIND) $(VIMPROG) -u unix.vim -U NONE --noplugin -s dotest.in $*.in
|
||||
@/bin/sh -c "if diff test.out $*.ok; \
|
||||
then mv -f test.out $*.out; \
|
||||
else echo; \
|
||||
***************
|
||||
*** 51,57 ****
|
||||
cp $*.ok test.ok
|
||||
# Sleep a moment to avoid that the xterm title is messed up
|
||||
@-sleep .2
|
||||
! -$(VIMPROG) -u unix.vim -U NONE --noplugin -s dotest.in $*.in
|
||||
@/bin/sh -c "if test -f test.out; then\
|
||||
if diff test.out $*.ok; \
|
||||
then mv -f test.out $*.out; \
|
||||
--- 56,62 ----
|
||||
cp $*.ok test.ok
|
||||
# Sleep a moment to avoid that the xterm title is messed up
|
||||
@-sleep .2
|
||||
! -$(VALGRIND) $(VIMPROG) -u unix.vim -U NONE --noplugin -s dotest.in $*.in
|
||||
@/bin/sh -c "if test -f test.out; then\
|
||||
if diff test.out $*.ok; \
|
||||
then mv -f test.out $*.out; \
|
||||
*** ../vim-7.1.070/src/testdir/test64.in Tue Aug 14 17:26:28 2007
|
||||
--- src/testdir/test64.in Tue Aug 14 16:03:44 2007
|
||||
***************
|
||||
*** 0 ****
|
||||
--- 1,52 ----
|
||||
+ Test for regexp patterns.
|
||||
+
|
||||
+ A pattern that gives the expected result produces OK, so that we know it was
|
||||
+ actually tried.
|
||||
+
|
||||
+ STARTTEST
|
||||
+ :so small.vim
|
||||
+ :" tl is a List of Lists with:
|
||||
+ :" regexp pattern
|
||||
+ :" text to test the pattern on
|
||||
+ :" expected match (optional)
|
||||
+ :" expected submatch 1 (optional)
|
||||
+ :" expected submatch 2 (optional)
|
||||
+ :" etc.
|
||||
+ :" When there is no match use only the first two items.
|
||||
+ :let tl = []
|
||||
+ :call add(tl, ['b', 'abcdef', 'b'])
|
||||
+ :call add(tl, ['bc*', 'abccccdef', 'bcccc'])
|
||||
+ :call add(tl, ['bc\{-}', 'abccccdef', 'b'])
|
||||
+ :call add(tl, ['bc\{-}\(d\)', 'abccccdef', 'bccccd', 'd'])
|
||||
+ :call add(tl, ['x', 'abcdef'])
|
||||
+ :"
|
||||
+ :for t in tl
|
||||
+ : let l = matchlist(t[1], t[0])
|
||||
+ :" check the match itself
|
||||
+ : if len(l) == 0 && len(t) > 2
|
||||
+ : $put ='ERROR: pat: \"' . t[0] . '\", text: \"' . t[1] . '\", did not match, expected: \"' . t[2] . '\"'
|
||||
+ : elseif len(l) > 0 && len(t) == 2
|
||||
+ : $put ='ERROR: pat: \"' . t[0] . '\", text: \"' . t[1] . '\", match: \"' . l[0] . '\", expected no match'
|
||||
+ : elseif len(t) > 2 && l[0] != t[2]
|
||||
+ : $put ='ERROR: pat: \"' . t[0] . '\", text: \"' . t[1] . '\", match: \"' . l[0] . '\", expected: \"' . t[2] . '\"'
|
||||
+ : else
|
||||
+ : $put ='OK'
|
||||
+ : endif
|
||||
+ : if len(l) > 0
|
||||
+ :" check all the nine submatches
|
||||
+ : for i in range(1, 9)
|
||||
+ : if len(t) <= i + 2
|
||||
+ : let e = ''
|
||||
+ : else
|
||||
+ : let e = t[i + 2]
|
||||
+ : endif
|
||||
+ : if l[i] != e
|
||||
+ : $put ='ERROR: pat: \"' . t[0] . '\", text: \"' . t[1] . '\", submatch ' . i . ': \"' . l[i] . '\", expected: \"' . e . '\"'
|
||||
+ : endif
|
||||
+ : endfor
|
||||
+ : endif
|
||||
+ :endfor
|
||||
+ :/^Results/,$wq! test.out
|
||||
+ ENDTEST
|
||||
+
|
||||
+ Results of test64:
|
||||
*** ../vim-7.1.070/src/testdir/test64.ok Tue Aug 14 17:26:28 2007
|
||||
--- src/testdir/test64.ok Tue Aug 14 16:01:47 2007
|
||||
***************
|
||||
*** 0 ****
|
||||
--- 1,6 ----
|
||||
+ Results of test64:
|
||||
+ OK
|
||||
+ OK
|
||||
+ OK
|
||||
+ OK
|
||||
+ OK
|
||||
*** ../vim-7.1.070/src/version.c Tue Aug 14 16:57:04 2007
|
||||
--- src/version.c Tue Aug 14 17:25:20 2007
|
||||
***************
|
||||
*** 668,669 ****
|
||||
--- 668,671 ----
|
||||
{ /* Add new patch number below this line */
|
||||
+ /**/
|
||||
+ 71,
|
||||
/**/
|
||||
|
||||
--
|
||||
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 ///
|
177
7.1.072
177
7.1.072
@ -1,177 +0,0 @@
|
||||
To: vim-dev@vim.org
|
||||
Subject: patch 7.1.072 (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.1.072 (extra, after 7.1.041 and 7.1.071)
|
||||
Problem: Some changes for patch 7.1.071 are in extra files.
|
||||
Solution: Update the extra files. Also fix a few warnings from the DOS test
|
||||
makefile.
|
||||
Files: src/testdir/Make_amiga.mak, src/testdir/Make_dos.mak,
|
||||
src/testdir/Make_os2.mak, src/testdir/Make_vms.mms
|
||||
|
||||
|
||||
*** ../vim-7.1.071/src/testdir/Make_amiga.mak Thu Jul 26 23:10:50 2007
|
||||
--- src/testdir/Make_amiga.mak Tue Aug 14 15:14:03 2007
|
||||
***************
|
||||
*** 25,31 ****
|
||||
test43.out test44.out test45.out test46.out test47.out \
|
||||
test48.out test51.out test53.out test54.out test55.out \
|
||||
test56.out test57.out test58.out test59.out test60.out \
|
||||
! test61.out test62.out test63.out
|
||||
|
||||
.SUFFIXES: .in .out
|
||||
|
||||
--- 25,31 ----
|
||||
test43.out test44.out test45.out test46.out test47.out \
|
||||
test48.out test51.out test53.out test54.out test55.out \
|
||||
test56.out test57.out test58.out test59.out test60.out \
|
||||
! test61.out test62.out test63.out test64.out
|
||||
|
||||
.SUFFIXES: .in .out
|
||||
|
||||
***************
|
||||
*** 108,110 ****
|
||||
--- 108,111 ----
|
||||
test61.out: test61.in
|
||||
test62.out: test62.in
|
||||
test63.out: test63.in
|
||||
+ test64.out: test64.in
|
||||
*** ../vim-7.1.071/src/testdir/Make_dos.mak Thu Jul 26 23:10:50 2007
|
||||
--- src/testdir/Make_dos.mak Tue Aug 14 15:14:25 2007
|
||||
***************
|
||||
*** 19,25 ****
|
||||
test44.out test45.out test46.out test47.out \
|
||||
test48.out test51.out test53.out test54.out \
|
||||
test55.out test56.out test57.out test58.out test59.out \
|
||||
! test60.out test61.out test62.out test63.out
|
||||
|
||||
SCRIPTS = test3.out test4.out test5.out test6.out test7.out \
|
||||
test8.out test9.out test11.out test13.out test14.out \
|
||||
--- 19,25 ----
|
||||
test44.out test45.out test46.out test47.out \
|
||||
test48.out test51.out test53.out test54.out \
|
||||
test55.out test56.out test57.out test58.out test59.out \
|
||||
! test60.out test61.out test62.out test63.out test64.out
|
||||
|
||||
SCRIPTS = test3.out test4.out test5.out test6.out test7.out \
|
||||
test8.out test9.out test11.out test13.out test14.out \
|
||||
***************
|
||||
*** 51,69 ****
|
||||
|
||||
clean:
|
||||
-del *.out
|
||||
! -del test.ok
|
||||
! -del small.vim
|
||||
! -del tiny.vim
|
||||
! -del mbyte.vim
|
||||
-del X*
|
||||
! -del viminfo
|
||||
|
||||
.in.out:
|
||||
copy $*.ok test.ok
|
||||
$(VIMPROG) -u dos.vim -U NONE --noplugin -s dotest.in $*.in
|
||||
diff test.out $*.ok
|
||||
! -del $*.out
|
||||
rename test.out $*.out
|
||||
-del X*
|
||||
-del test.ok
|
||||
! -del viminfo
|
||||
--- 51,69 ----
|
||||
|
||||
clean:
|
||||
-del *.out
|
||||
! -if exist test.ok del test.ok
|
||||
! -if exist small.vim del small.vim
|
||||
! -if exist tiny.vim del tiny.vim
|
||||
! -if exist mbyte.vim del mbyte.vim
|
||||
-del X*
|
||||
! -if exist viminfo del viminfo
|
||||
|
||||
.in.out:
|
||||
copy $*.ok test.ok
|
||||
$(VIMPROG) -u dos.vim -U NONE --noplugin -s dotest.in $*.in
|
||||
diff test.out $*.ok
|
||||
! -if exist $*.out del $*.out
|
||||
rename test.out $*.out
|
||||
-del X*
|
||||
-del test.ok
|
||||
! -if exist viminfo del viminfo
|
||||
*** ../vim-7.1.071/src/testdir/Make_os2.mak Thu Jul 26 23:10:50 2007
|
||||
--- src/testdir/Make_os2.mak Tue Aug 14 15:14:44 2007
|
||||
***************
|
||||
*** 25,31 ****
|
||||
test43.out test44.out test45.out test46.out test47.out \
|
||||
test48.out test51.out test53.out test54.out test55.out \
|
||||
test56.out test57.out test58.out test59.out test60.out \
|
||||
! test61.out test62.out test63.out
|
||||
|
||||
.SUFFIXES: .in .out
|
||||
|
||||
--- 25,31 ----
|
||||
test43.out test44.out test45.out test46.out test47.out \
|
||||
test48.out test51.out test53.out test54.out test55.out \
|
||||
test56.out test57.out test58.out test59.out test60.out \
|
||||
! test61.out test62.out test63.out test64.out
|
||||
|
||||
.SUFFIXES: .in .out
|
||||
|
||||
*** ../vim-7.1.071/src/testdir/Make_vms.mms Thu Jul 26 23:10:50 2007
|
||||
--- src/testdir/Make_vms.mms Tue Aug 14 15:15:56 2007
|
||||
***************
|
||||
*** 4,10 ****
|
||||
# Authors: Zoltan Arpadffy, <arpadffy@polarhome.com>
|
||||
# Sandor Kopanyi, <sandor.kopanyi@mailbox.hu>
|
||||
#
|
||||
! # Last change: 2007 Jul 24
|
||||
#
|
||||
# This has been tested on VMS 6.2 to 7.2 on DEC Alpha and VAX.
|
||||
# Edit the lines in the Configuration section below to select.
|
||||
--- 4,10 ----
|
||||
# Authors: Zoltan Arpadffy, <arpadffy@polarhome.com>
|
||||
# Sandor Kopanyi, <sandor.kopanyi@mailbox.hu>
|
||||
#
|
||||
! # Last change: 2007 Aug 14
|
||||
#
|
||||
# This has been tested on VMS 6.2 to 7.2 on DEC Alpha and VAX.
|
||||
# Edit the lines in the Configuration section below to select.
|
||||
***************
|
||||
*** 59,65 ****
|
||||
test43.out test44.out test45.out test46.out \
|
||||
test48.out test51.out test53.out test54.out test55.out \
|
||||
test56.out test57.out test58.out test59.out test60.out \
|
||||
! test61.out test62.out test63.out
|
||||
|
||||
.IFDEF WANT_GUI
|
||||
SCRIPT_GUI = test16.out
|
||||
--- 59,65 ----
|
||||
test43.out test44.out test45.out test46.out \
|
||||
test48.out test51.out test53.out test54.out test55.out \
|
||||
test56.out test57.out test58.out test59.out test60.out \
|
||||
! test61.out test62.out test63.out test64.out
|
||||
|
||||
.IFDEF WANT_GUI
|
||||
SCRIPT_GUI = test16.out
|
||||
*** ../vim-7.1.071/src/version.c Tue Aug 14 17:28:14 2007
|
||||
--- src/version.c Tue Aug 14 17:51:21 2007
|
||||
***************
|
||||
*** 668,669 ****
|
||||
--- 668,671 ----
|
||||
{ /* Add new patch number below this line */
|
||||
+ /**/
|
||||
+ 72,
|
||||
/**/
|
||||
|
||||
--
|
||||
hundred-and-one symptoms of being an internet addict:
|
||||
152. You find yourself falling for someone you've never seen or hardly
|
||||
know, but, boy can he/she TYPE!!!!!!
|
||||
|
||||
/// 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.1.073
113
7.1.073
@ -1,113 +0,0 @@
|
||||
To: vim-dev@vim.org
|
||||
Subject: patch 7.1.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.1.073 (after 7.1.062)
|
||||
Problem: Wrong cursor position and crash when 'preserveindent' is set.
|
||||
(Charles Campbell)
|
||||
Solution: Handle the situation that we start without indent. (Chris
|
||||
Lubinski)
|
||||
Files: src/misc1.c
|
||||
|
||||
|
||||
*** ../vim-7.1.072/src/misc1.c Sat Aug 11 14:32:10 2007
|
||||
--- src/misc1.c Tue Aug 14 21:21:49 2007
|
||||
***************
|
||||
*** 104,110 ****
|
||||
int ind_done = 0; /* measured in spaces */
|
||||
int tab_pad;
|
||||
int retval = FALSE;
|
||||
! int orig_char_len = 0; /* number of initial whitespace chars when
|
||||
'et' and 'pi' are both set */
|
||||
|
||||
/*
|
||||
--- 104,110 ----
|
||||
int ind_done = 0; /* measured in spaces */
|
||||
int tab_pad;
|
||||
int retval = FALSE;
|
||||
! int orig_char_len = -1; /* number of initial whitespace chars when
|
||||
'et' and 'pi' are both set */
|
||||
|
||||
/*
|
||||
***************
|
||||
*** 159,165 ****
|
||||
|
||||
/* Fill to next tabstop with a tab, if possible */
|
||||
tab_pad = (int)curbuf->b_p_ts - (ind_done % (int)curbuf->b_p_ts);
|
||||
! if (todo >= tab_pad && orig_char_len == 0)
|
||||
{
|
||||
doit = TRUE;
|
||||
todo -= tab_pad;
|
||||
--- 159,165 ----
|
||||
|
||||
/* Fill to next tabstop with a tab, if possible */
|
||||
tab_pad = (int)curbuf->b_p_ts - (ind_done % (int)curbuf->b_p_ts);
|
||||
! if (todo >= tab_pad && orig_char_len == -1)
|
||||
{
|
||||
doit = TRUE;
|
||||
todo -= tab_pad;
|
||||
***************
|
||||
*** 206,216 ****
|
||||
/* If 'preserveindent' and 'expandtab' are both set keep the original
|
||||
* characters and allocate accordingly. We will fill the rest with spaces
|
||||
* after the if (!curbuf->b_p_et) below. */
|
||||
! if (orig_char_len != 0)
|
||||
{
|
||||
newline = alloc(orig_char_len + size - ind_done + line_len);
|
||||
if (newline == NULL)
|
||||
return FALSE;
|
||||
p = oldline;
|
||||
s = newline;
|
||||
while (orig_char_len > 0)
|
||||
--- 206,220 ----
|
||||
/* If 'preserveindent' and 'expandtab' are both set keep the original
|
||||
* characters and allocate accordingly. We will fill the rest with spaces
|
||||
* after the if (!curbuf->b_p_et) below. */
|
||||
! if (orig_char_len != -1)
|
||||
{
|
||||
newline = alloc(orig_char_len + size - ind_done + line_len);
|
||||
if (newline == NULL)
|
||||
return FALSE;
|
||||
+ todo = size - ind_done;
|
||||
+ ind_len = orig_char_len + todo; /* Set total length of indent in
|
||||
+ * characters, which may have been
|
||||
+ * undercounted until now */
|
||||
p = oldline;
|
||||
s = newline;
|
||||
while (orig_char_len > 0)
|
||||
***************
|
||||
*** 222,230 ****
|
||||
* than old) */
|
||||
while (vim_iswhite(*p))
|
||||
(void)*p++;
|
||||
- todo = size - ind_done;
|
||||
- ind_len += todo; /* Set total length of indent in characters,
|
||||
- * which may have been undercounted until now */
|
||||
|
||||
}
|
||||
else
|
||||
--- 226,231 ----
|
||||
*** ../vim-7.1.072/src/version.c Tue Aug 14 17:54:37 2007
|
||||
--- src/version.c Tue Aug 14 22:14:54 2007
|
||||
***************
|
||||
*** 668,669 ****
|
||||
--- 668,671 ----
|
||||
{ /* Add new patch number below this line */
|
||||
+ /**/
|
||||
+ 73,
|
||||
/**/
|
||||
|
||||
--
|
||||
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 ///
|
171
7.1.074
171
7.1.074
@ -1,171 +0,0 @@
|
||||
To: vim-dev@vim.org
|
||||
Subject: patch 7.1.074
|
||||
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.1.074
|
||||
Problem: Crash when calling string() on a recurively nested List.
|
||||
Solution: Check result value for being NULL. (Yukihiro Nakadaira)
|
||||
Files: src/eval.c
|
||||
|
||||
|
||||
*** ../vim-7.1.073/src/eval.c Mon Aug 6 22:27:12 2007
|
||||
--- src/eval.c Tue Aug 14 22:01:12 2007
|
||||
***************
|
||||
*** 6802,6808 ****
|
||||
* "numbuf" is used for a number.
|
||||
* Does not put quotes around strings, as ":echo" displays values.
|
||||
* When "copyID" is not NULL replace recursive lists and dicts with "...".
|
||||
! * May return NULL;
|
||||
*/
|
||||
static char_u *
|
||||
echo_string(tv, tofree, numbuf, copyID)
|
||||
--- 6802,6808 ----
|
||||
* "numbuf" is used for a number.
|
||||
* Does not put quotes around strings, as ":echo" displays values.
|
||||
* When "copyID" is not NULL replace recursive lists and dicts with "...".
|
||||
! * May return NULL.
|
||||
*/
|
||||
static char_u *
|
||||
echo_string(tv, tofree, numbuf, copyID)
|
||||
***************
|
||||
*** 6887,6893 ****
|
||||
* If the memory is allocated "tofree" is set to it, otherwise NULL.
|
||||
* "numbuf" is used for a number.
|
||||
* Puts quotes around strings, so that they can be parsed back by eval().
|
||||
! * May return NULL;
|
||||
*/
|
||||
static char_u *
|
||||
tv2string(tv, tofree, numbuf, copyID)
|
||||
--- 6887,6893 ----
|
||||
* If the memory is allocated "tofree" is set to it, otherwise NULL.
|
||||
* "numbuf" is used for a number.
|
||||
* Puts quotes around strings, so that they can be parsed back by eval().
|
||||
! * May return NULL.
|
||||
*/
|
||||
static char_u *
|
||||
tv2string(tv, tofree, numbuf, copyID)
|
||||
***************
|
||||
*** 14974,14979 ****
|
||||
--- 14974,14983 ----
|
||||
|
||||
p1 = tv2string(&(*(listitem_T **)s1)->li_tv, &tofree1, numbuf1, 0);
|
||||
p2 = tv2string(&(*(listitem_T **)s2)->li_tv, &tofree2, numbuf2, 0);
|
||||
+ if (p1 == NULL)
|
||||
+ p1 = (char_u *)"";
|
||||
+ if (p2 == NULL)
|
||||
+ p2 = (char_u *)"";
|
||||
if (item_compare_ic)
|
||||
res = STRICMP(p1, p2);
|
||||
else
|
||||
***************
|
||||
*** 15463,15469 ****
|
||||
|
||||
rettv->v_type = VAR_STRING;
|
||||
rettv->vval.v_string = tv2string(&argvars[0], &tofree, numbuf, 0);
|
||||
! if (tofree == NULL)
|
||||
rettv->vval.v_string = vim_strsave(rettv->vval.v_string);
|
||||
}
|
||||
|
||||
--- 15467,15474 ----
|
||||
|
||||
rettv->v_type = VAR_STRING;
|
||||
rettv->vval.v_string = tv2string(&argvars[0], &tofree, numbuf, 0);
|
||||
! /* Make a copy if we have a value but it's not in allocate memory. */
|
||||
! if (rettv->vval.v_string != NULL && tofree == NULL)
|
||||
rettv->vval.v_string = vim_strsave(rettv->vval.v_string);
|
||||
}
|
||||
|
||||
***************
|
||||
*** 20167,20172 ****
|
||||
--- 20174,20180 ----
|
||||
char_u buf[MSG_BUF_LEN];
|
||||
char_u numbuf2[NUMBUFLEN];
|
||||
char_u *tofree;
|
||||
+ char_u *s;
|
||||
|
||||
msg_puts((char_u *)"(");
|
||||
for (i = 0; i < argcount; ++i)
|
||||
***************
|
||||
*** 20177,20186 ****
|
||||
msg_outnum((long)argvars[i].vval.v_number);
|
||||
else
|
||||
{
|
||||
! trunc_string(tv2string(&argvars[i], &tofree,
|
||||
! numbuf2, 0), buf, MSG_BUF_CLEN);
|
||||
! msg_puts(buf);
|
||||
! vim_free(tofree);
|
||||
}
|
||||
}
|
||||
msg_puts((char_u *)")");
|
||||
--- 20185,20197 ----
|
||||
msg_outnum((long)argvars[i].vval.v_number);
|
||||
else
|
||||
{
|
||||
! s = tv2string(&argvars[i], &tofree, numbuf2, 0);
|
||||
! if (s != NULL)
|
||||
! {
|
||||
! trunc_string(s, buf, MSG_BUF_CLEN);
|
||||
! msg_puts(buf);
|
||||
! vim_free(tofree);
|
||||
! }
|
||||
}
|
||||
}
|
||||
msg_puts((char_u *)")");
|
||||
***************
|
||||
*** 20258,20271 ****
|
||||
char_u buf[MSG_BUF_LEN];
|
||||
char_u numbuf2[NUMBUFLEN];
|
||||
char_u *tofree;
|
||||
|
||||
/* The value may be very long. Skip the middle part, so that we
|
||||
* have some idea how it starts and ends. smsg() would always
|
||||
* truncate it at the end. */
|
||||
! trunc_string(tv2string(fc.rettv, &tofree, numbuf2, 0),
|
||||
! buf, MSG_BUF_CLEN);
|
||||
! smsg((char_u *)_("%s returning %s"), sourcing_name, buf);
|
||||
! vim_free(tofree);
|
||||
}
|
||||
msg_puts((char_u *)"\n"); /* don't overwrite this either */
|
||||
|
||||
--- 20269,20286 ----
|
||||
char_u buf[MSG_BUF_LEN];
|
||||
char_u numbuf2[NUMBUFLEN];
|
||||
char_u *tofree;
|
||||
+ char_u *s;
|
||||
|
||||
/* The value may be very long. Skip the middle part, so that we
|
||||
* have some idea how it starts and ends. smsg() would always
|
||||
* truncate it at the end. */
|
||||
! s = tv2string(fc.rettv, &tofree, numbuf2, 0);
|
||||
! if (s != NULL)
|
||||
! {
|
||||
! trunc_string(s, buf, MSG_BUF_CLEN);
|
||||
! smsg((char_u *)_("%s returning %s"), sourcing_name, buf);
|
||||
! vim_free(tofree);
|
||||
! }
|
||||
}
|
||||
msg_puts((char_u *)"\n"); /* don't overwrite this either */
|
||||
|
||||
*** ../vim-7.1.073/src/version.c Tue Aug 14 22:15:53 2007
|
||||
--- src/version.c Tue Aug 14 22:27:24 2007
|
||||
***************
|
||||
*** 668,669 ****
|
||||
--- 668,671 ----
|
||||
{ /* Add new patch number below this line */
|
||||
+ /**/
|
||||
+ 74,
|
||||
/**/
|
||||
|
||||
--
|
||||
hundred-and-one symptoms of being an internet addict:
|
||||
159. You get excited whenever discussing your hard drive.
|
||||
|
||||
/// 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.1.075
55
7.1.075
@ -1,55 +0,0 @@
|
||||
To: vim-dev@vim.org
|
||||
Subject: patch 7.1.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.1.075
|
||||
Problem: ":let v:statusmsg" reads memory already freed.
|
||||
Solution: Don't set v:statusmsg when listing it.
|
||||
Files: src/eval.c
|
||||
|
||||
|
||||
*** ../vim-7.1.074/src/eval.c Tue Aug 14 22:28:35 2007
|
||||
--- src/eval.c Tue Aug 14 22:01:12 2007
|
||||
***************
|
||||
*** 18022,18028 ****
|
||||
int type;
|
||||
char_u *string;
|
||||
{
|
||||
! msg_attr(prefix, 0); /* don't use msg(), it overwrites "v:statusmsg" */
|
||||
if (name != NULL) /* "a:" vars don't have a name stored */
|
||||
msg_puts(name);
|
||||
msg_putchar(' ');
|
||||
--- 18022,18030 ----
|
||||
int type;
|
||||
char_u *string;
|
||||
{
|
||||
! /* don't use msg() or msg_attr() to avoid overwriting "v:statusmsg" */
|
||||
! msg_start();
|
||||
! msg_puts(prefix);
|
||||
if (name != NULL) /* "a:" vars don't have a name stored */
|
||||
msg_puts(name);
|
||||
msg_putchar(' ');
|
||||
*** ../vim-7.1.074/src/version.c Tue Aug 14 22:28:35 2007
|
||||
--- src/version.c Tue Aug 14 22:39:49 2007
|
||||
***************
|
||||
*** 668,669 ****
|
||||
--- 668,671 ----
|
||||
{ /* Add new patch number below this line */
|
||||
+ /**/
|
||||
+ 75,
|
||||
/**/
|
||||
|
||||
--
|
||||
hundred-and-one symptoms of being an internet addict:
|
||||
160. You get in the elevator and double-click the button for the floor
|
||||
you want.
|
||||
|
||||
/// 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.1.076
74
7.1.076
@ -1,74 +0,0 @@
|
||||
To: vim-dev@vim.org
|
||||
Subject: patch 7.1.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.1.076
|
||||
Problem: Another strcpy() with overlapping arguments.
|
||||
Solution: Use mch_memmove(). (Dominique Pelle) And another one.
|
||||
Files: src/ex_docmd.c, src/normal.c
|
||||
|
||||
|
||||
*** ../vim-7.1.075/src/ex_docmd.c Sat Aug 11 15:59:44 2007
|
||||
--- src/ex_docmd.c Wed Aug 8 22:28:33 2007
|
||||
***************
|
||||
*** 4493,4499 ****
|
||||
if (eap->argt & (USECTRLV | XFILE))
|
||||
++p; /* skip CTRL-V and next char */
|
||||
else
|
||||
! STRCPY(p, p + 1); /* remove CTRL-V and skip next char */
|
||||
if (*p == NUL) /* stop at NUL after CTRL-V */
|
||||
break;
|
||||
}
|
||||
--- 4493,4500 ----
|
||||
if (eap->argt & (USECTRLV | XFILE))
|
||||
++p; /* skip CTRL-V and next char */
|
||||
else
|
||||
! /* remove CTRL-V and skip next char */
|
||||
! mch_memmove(p, p + 1, STRLEN(p));
|
||||
if (*p == NUL) /* stop at NUL after CTRL-V */
|
||||
break;
|
||||
}
|
||||
*** ../vim-7.1.075/src/normal.c Wed Aug 8 21:41:19 2007
|
||||
--- src/normal.c Sun Aug 12 17:35:20 2007
|
||||
***************
|
||||
*** 3760,3766 ****
|
||||
extra_len = (int)STRLEN(p);
|
||||
overflow = old_len + extra_len - SHOWCMD_COLS;
|
||||
if (overflow > 0)
|
||||
! STRCPY(showcmd_buf, showcmd_buf + overflow);
|
||||
STRCAT(showcmd_buf, p);
|
||||
|
||||
if (char_avail())
|
||||
--- 3760,3767 ----
|
||||
extra_len = (int)STRLEN(p);
|
||||
overflow = old_len + extra_len - SHOWCMD_COLS;
|
||||
if (overflow > 0)
|
||||
! mch_memmove(showcmd_buf, showcmd_buf + overflow,
|
||||
! old_len - overflow + 1);
|
||||
STRCAT(showcmd_buf, p);
|
||||
|
||||
if (char_avail())
|
||||
*** ../vim-7.1.075/src/version.c Tue Aug 14 22:40:13 2007
|
||||
--- src/version.c Tue Aug 14 22:53:13 2007
|
||||
***************
|
||||
*** 668,669 ****
|
||||
--- 668,671 ----
|
||||
{ /* Add new patch number below this line */
|
||||
+ /**/
|
||||
+ 76,
|
||||
/**/
|
||||
|
||||
--
|
||||
hundred-and-one symptoms of being an internet addict:
|
||||
161. You get up before the sun rises to check your e-mail, and you
|
||||
find yourself in the very same chair long after the sun has set.
|
||||
|
||||
/// 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.1.077
50
7.1.077
@ -1,50 +0,0 @@
|
||||
To: vim-dev@vim.org
|
||||
Subject: patch 7.1.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.1.077
|
||||
Problem: Using "can_spell" without initializing it. (Dominique Pelle)
|
||||
Solution: Set a default for get_syntax_attr().
|
||||
Files: src/syntax.c
|
||||
|
||||
|
||||
*** ../vim-7.1.076/src/syntax.c Thu Jul 26 22:55:11 2007
|
||||
--- src/syntax.c Sun Aug 12 19:49:07 2007
|
||||
***************
|
||||
*** 1727,1732 ****
|
||||
--- 1727,1739 ----
|
||||
{
|
||||
int attr = 0;
|
||||
|
||||
+ if (can_spell != NULL)
|
||||
+ /* Default: Only do spelling when there is no @Spell cluster or when
|
||||
+ * ":syn spell toplevel" was used. */
|
||||
+ *can_spell = syn_buf->b_syn_spell == SYNSPL_DEFAULT
|
||||
+ ? (syn_buf->b_spell_cluster_id == 0)
|
||||
+ : (syn_buf->b_syn_spell == SYNSPL_TOP);
|
||||
+
|
||||
/* check for out of memory situation */
|
||||
if (syn_buf->b_sst_array == NULL)
|
||||
return 0;
|
||||
*** ../vim-7.1.076/src/version.c Tue Aug 14 22:54:00 2007
|
||||
--- src/version.c Tue Aug 14 23:06:26 2007
|
||||
***************
|
||||
*** 668,669 ****
|
||||
--- 668,671 ----
|
||||
{ /* Add new patch number below this line */
|
||||
+ /**/
|
||||
+ 77,
|
||||
/**/
|
||||
|
||||
--
|
||||
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 ///
|
86
7.1.078
86
7.1.078
@ -1,86 +0,0 @@
|
||||
To: vim-dev@vim.org
|
||||
Subject: patch 7.1.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.1.078
|
||||
Problem: Dropping a file name on gvim that contains a CSI byte doesn't work
|
||||
when editing the command line.
|
||||
Solution: Escape the CSI byte when inserting in the input buffer. (Yukihiro
|
||||
Nakadaira)
|
||||
Files: src/gui.c, src/ui.c
|
||||
|
||||
|
||||
*** ../vim-7.1.077/src/gui.c Thu May 10 19:19:15 2007
|
||||
--- src/gui.c Tue Aug 14 12:41:43 2007
|
||||
***************
|
||||
*** 5117,5123 ****
|
||||
p = vim_strsave_escaped(fnames[i], (char_u *)"\\ \t\"|");
|
||||
# endif
|
||||
if (p != NULL)
|
||||
! add_to_input_buf(p, (int)STRLEN(p));
|
||||
vim_free(p);
|
||||
vim_free(fnames[i]);
|
||||
}
|
||||
--- 5117,5123 ----
|
||||
p = vim_strsave_escaped(fnames[i], (char_u *)"\\ \t\"|");
|
||||
# endif
|
||||
if (p != NULL)
|
||||
! add_to_input_buf_csi(p, (int)STRLEN(p));
|
||||
vim_free(p);
|
||||
vim_free(fnames[i]);
|
||||
}
|
||||
*** ../vim-7.1.077/src/ui.c Thu May 10 21:14:11 2007
|
||||
--- src/ui.c Tue Aug 14 12:41:42 2007
|
||||
***************
|
||||
*** 1603,1610 ****
|
||||
#if defined(FEAT_GUI) || defined(FEAT_MOUSE_GPM) \
|
||||
|| defined(FEAT_XCLIPBOARD) || defined(VMS) \
|
||||
|| defined(FEAT_SNIFF) || defined(FEAT_CLIENTSERVER) \
|
||||
- || (defined(FEAT_GUI) && (!defined(USE_ON_FLY_SCROLL) \
|
||||
- || defined(FEAT_MENU))) \
|
||||
|| defined(PROTO)
|
||||
/*
|
||||
* Add the given bytes to the input buffer
|
||||
--- 1603,1608 ----
|
||||
***************
|
||||
*** 1630,1636 ****
|
||||
}
|
||||
#endif
|
||||
|
||||
! #if (defined(FEAT_XIM) && defined(FEAT_GUI_GTK)) \
|
||||
|| (defined(FEAT_MBYTE) && defined(FEAT_MBYTE_IME)) \
|
||||
|| (defined(FEAT_GUI) && (!defined(USE_ON_FLY_SCROLL) \
|
||||
|| defined(FEAT_MENU))) \
|
||||
--- 1628,1636 ----
|
||||
}
|
||||
#endif
|
||||
|
||||
! #if ((defined(FEAT_XIM) || defined(FEAT_DND)) && defined(FEAT_GUI_GTK)) \
|
||||
! || defined(FEAT_GUI_MSWIN) \
|
||||
! || defined(FEAT_GUI_MAC) \
|
||||
|| (defined(FEAT_MBYTE) && defined(FEAT_MBYTE_IME)) \
|
||||
|| (defined(FEAT_GUI) && (!defined(USE_ON_FLY_SCROLL) \
|
||||
|| defined(FEAT_MENU))) \
|
||||
*** ../vim-7.1.077/src/version.c Tue Aug 14 23:06:51 2007
|
||||
--- src/version.c Wed Aug 15 20:07:06 2007
|
||||
***************
|
||||
*** 668,669 ****
|
||||
--- 668,671 ----
|
||||
{ /* Add new patch number below this line */
|
||||
+ /**/
|
||||
+ 78,
|
||||
/**/
|
||||
|
||||
--
|
||||
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 ///
|
84
7.1.079
84
7.1.079
@ -1,84 +0,0 @@
|
||||
To: vim-dev@vim.org
|
||||
Subject: patch 7.1.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.1.079
|
||||
Problem: When the locale is "C" and 'encoding' is "latin1" then the "@"
|
||||
character in 'isfname', 'isprint', etc. doesn't pick up accented
|
||||
characters.
|
||||
Solution: Instead of isalpha() use MB_ISLOWER() and MB_ISUPPER().
|
||||
Files: src/charset.c, src/macros.h
|
||||
|
||||
|
||||
*** ../vim-7.1.078/src/charset.c Mon Aug 6 22:27:12 2007
|
||||
--- src/charset.c Tue Aug 14 13:43:30 2007
|
||||
***************
|
||||
*** 207,213 ****
|
||||
}
|
||||
while (c <= c2)
|
||||
{
|
||||
! if (!do_isalpha || isalpha(c)
|
||||
#ifdef FEAT_FKMAP
|
||||
|| (p_altkeymap && (F_isalpha(c) || F_isdigit(c)))
|
||||
#endif
|
||||
--- 207,216 ----
|
||||
}
|
||||
while (c <= c2)
|
||||
{
|
||||
! /* Use the MB_ functions here, because isalpha() doesn't
|
||||
! * work properly when 'encoding' is "latin1" and the locale is
|
||||
! * "C". */
|
||||
! if (!do_isalpha || MB_ISLOWER(c) || MB_ISUPPER(c)
|
||||
#ifdef FEAT_FKMAP
|
||||
|| (p_altkeymap && (F_isalpha(c) || F_isdigit(c)))
|
||||
#endif
|
||||
*** ../vim-7.1.078/src/macros.h Thu May 10 19:21:00 2007
|
||||
--- src/macros.h Sat Aug 4 13:44:18 2007
|
||||
***************
|
||||
*** 54,63 ****
|
||||
|
||||
/*
|
||||
* toupper() and tolower() that use the current locale.
|
||||
! * On some systems toupper()/tolower() only work on lower/uppercase characters
|
||||
* Careful: Only call TOUPPER_LOC() and TOLOWER_LOC() with a character in the
|
||||
* range 0 - 255. toupper()/tolower() on some systems can't handle others.
|
||||
! * Note: for UTF-8 use utf_toupper() and utf_tolower().
|
||||
*/
|
||||
#ifdef MSWIN
|
||||
# define TOUPPER_LOC(c) toupper_tab[(c) & 255]
|
||||
--- 54,65 ----
|
||||
|
||||
/*
|
||||
* toupper() and tolower() that use the current locale.
|
||||
! * On some systems toupper()/tolower() only work on lower/uppercase
|
||||
! * characters, first use islower() or isupper() then.
|
||||
* Careful: Only call TOUPPER_LOC() and TOLOWER_LOC() with a character in the
|
||||
* range 0 - 255. toupper()/tolower() on some systems can't handle others.
|
||||
! * Note: It is often better to use MB_TOLOWER() and MB_TOUPPER(), because many
|
||||
! * toupper() and tolower() implementations only work for ASCII.
|
||||
*/
|
||||
#ifdef MSWIN
|
||||
# define TOUPPER_LOC(c) toupper_tab[(c) & 255]
|
||||
*** ../vim-7.1.078/src/version.c Wed Aug 15 20:07:53 2007
|
||||
--- src/version.c Wed Aug 15 20:39:18 2007
|
||||
***************
|
||||
*** 668,669 ****
|
||||
--- 668,671 ----
|
||||
{ /* Add new patch number below this line */
|
||||
+ /**/
|
||||
+ 79,
|
||||
/**/
|
||||
|
||||
--
|
||||
You're as much use as a condom machine at the Vatican.
|
||||
-- Rimmer to Holly in Red Dwarf 'Queeg'
|
||||
|
||||
/// 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.1.080
104
7.1.080
@ -1,104 +0,0 @@
|
||||
To: vim-dev@vim.org
|
||||
Subject: patch 7.1.080 (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.1.080 (extra)
|
||||
Problem: Compiler warnings for using "const char *" for "char *".
|
||||
Solution: Add type casts. (Chris Sutcliffe)
|
||||
Files: src/GvimExt/gvimext.cpp
|
||||
|
||||
|
||||
*** ../vim-7.1.079/src/GvimExt/gvimext.cpp Thu May 10 21:09:38 2007
|
||||
--- src/GvimExt/gvimext.cpp Thu Aug 16 21:25:56 2007
|
||||
***************
|
||||
*** 69,82 ****
|
||||
|
||||
// Registry didn't work, use the search path.
|
||||
if (name[0] == 0)
|
||||
! strcpy(name, searchpath("gvim.exe"));
|
||||
|
||||
if (!runtime)
|
||||
{
|
||||
// Only when looking for the executable, not the runtime dir, we can
|
||||
// search for the batch file or a name without a path.
|
||||
if (name[0] == 0)
|
||||
! strcpy(name, searchpath("gvim.bat"));
|
||||
if (name[0] == 0)
|
||||
strcpy(name, "gvim"); // finds gvim.bat or gvim.exe
|
||||
|
||||
--- 69,82 ----
|
||||
|
||||
// Registry didn't work, use the search path.
|
||||
if (name[0] == 0)
|
||||
! strcpy(name, searchpath((char *)"gvim.exe"));
|
||||
|
||||
if (!runtime)
|
||||
{
|
||||
// Only when looking for the executable, not the runtime dir, we can
|
||||
// search for the batch file or a name without a path.
|
||||
if (name[0] == 0)
|
||||
! strcpy(name, searchpath((char *)"gvim.bat"));
|
||||
if (name[0] == 0)
|
||||
strcpy(name, "gvim"); // finds gvim.bat or gvim.exe
|
||||
|
||||
***************
|
||||
*** 152,160 ****
|
||||
FARPROC *ptr;
|
||||
} libintl_entry[] =
|
||||
{
|
||||
! {"gettext", (FARPROC*)&dyn_libintl_gettext},
|
||||
! {"textdomain", (FARPROC*)&dyn_libintl_textdomain},
|
||||
! {"bindtextdomain", (FARPROC*)&dyn_libintl_bindtextdomain},
|
||||
{NULL, NULL}
|
||||
};
|
||||
|
||||
--- 152,160 ----
|
||||
FARPROC *ptr;
|
||||
} libintl_entry[] =
|
||||
{
|
||||
! {(char *)"gettext", (FARPROC*)&dyn_libintl_gettext},
|
||||
! {(char *)"textdomain", (FARPROC*)&dyn_libintl_textdomain},
|
||||
! {(char *)"bindtextdomain", (FARPROC*)&dyn_libintl_bindtextdomain},
|
||||
{NULL, NULL}
|
||||
};
|
||||
|
||||
***************
|
||||
*** 835,841 ****
|
||||
(LPTSTR)location) > (HINSTANCE)32)
|
||||
return location;
|
||||
}
|
||||
! return "";
|
||||
}
|
||||
# endif
|
||||
#endif
|
||||
--- 835,841 ----
|
||||
(LPTSTR)location) > (HINSTANCE)32)
|
||||
return location;
|
||||
}
|
||||
! return (char *)"";
|
||||
}
|
||||
# endif
|
||||
#endif
|
||||
*** ../vim-7.1.079/src/version.c Wed Aug 15 20:40:45 2007
|
||||
--- src/version.c Sat Aug 18 16:58:36 2007
|
||||
***************
|
||||
*** 668,669 ****
|
||||
--- 668,671 ----
|
||||
{ /* Add new patch number below this line */
|
||||
+ /**/
|
||||
+ 80,
|
||||
/**/
|
||||
|
||||
--
|
||||
hundred-and-one symptoms of being an internet addict:
|
||||
192. Your boss asks you to "go fer" coffee and you come up with 235 FTP sites.
|
||||
|
||||
/// 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 ///
|
143
7.1.081
143
7.1.081
@ -1,143 +0,0 @@
|
||||
To: vim-dev@vim.org
|
||||
Subject: patch 7.1.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.1.081
|
||||
Problem: Command line completion for a shell command: "cat </tmp/file<Tab>"
|
||||
doesn't work.
|
||||
Solution: Start the file name at any character that can't be in a file name.
|
||||
(Martin Toft)
|
||||
Files: src/ex_docmd.c
|
||||
|
||||
|
||||
*** ../vim-7.1.080/src/ex_docmd.c Tue Aug 14 22:54:00 2007
|
||||
--- src/ex_docmd.c Sat Aug 18 14:58:53 2007
|
||||
***************
|
||||
*** 3281,3319 ****
|
||||
|
||||
if (ea.argt & XFILE)
|
||||
{
|
||||
! int in_quote = FALSE;
|
||||
! char_u *bow = NULL; /* Beginning of word */
|
||||
|
||||
/*
|
||||
* Allow spaces within back-quotes to count as part of the argument
|
||||
* being expanded.
|
||||
*/
|
||||
xp->xp_pattern = skipwhite(arg);
|
||||
! for (p = xp->xp_pattern; *p; )
|
||||
{
|
||||
! if (*p == '\\' && p[1] != NUL)
|
||||
++p;
|
||||
#ifdef SPACE_IN_FILENAME
|
||||
! else if (vim_iswhite(*p) && (!(ea.argt & NOSPC) || usefilter))
|
||||
#else
|
||||
! else if (vim_iswhite(*p))
|
||||
#endif
|
||||
{
|
||||
! p = skipwhite(p);
|
||||
if (in_quote)
|
||||
bow = p;
|
||||
else
|
||||
xp->xp_pattern = p;
|
||||
! --p;
|
||||
! }
|
||||
! else if (*p == '`')
|
||||
! {
|
||||
! if (!in_quote)
|
||||
! {
|
||||
! xp->xp_pattern = p;
|
||||
! bow = p + 1;
|
||||
! }
|
||||
! in_quote = !in_quote;
|
||||
}
|
||||
mb_ptr_adv(p);
|
||||
}
|
||||
--- 3281,3344 ----
|
||||
|
||||
if (ea.argt & XFILE)
|
||||
{
|
||||
! int c;
|
||||
! int in_quote = FALSE;
|
||||
! char_u *bow = NULL; /* Beginning of word */
|
||||
|
||||
/*
|
||||
* Allow spaces within back-quotes to count as part of the argument
|
||||
* being expanded.
|
||||
*/
|
||||
xp->xp_pattern = skipwhite(arg);
|
||||
! p = xp->xp_pattern;
|
||||
! while (*p != NUL)
|
||||
{
|
||||
! #ifdef FEAT_MBYTE
|
||||
! if (has_mbyte)
|
||||
! c = mb_ptr2char(p);
|
||||
! else
|
||||
! #endif
|
||||
! c = *p;
|
||||
! if (c == '\\' && p[1] != NUL)
|
||||
++p;
|
||||
+ else if (c == '`')
|
||||
+ {
|
||||
+ if (!in_quote)
|
||||
+ {
|
||||
+ xp->xp_pattern = p;
|
||||
+ bow = p + 1;
|
||||
+ }
|
||||
+ in_quote = !in_quote;
|
||||
+ }
|
||||
#ifdef SPACE_IN_FILENAME
|
||||
! else if (!vim_isfilec(c) && (!(ea.argt & NOSPC) || usefilter))
|
||||
#else
|
||||
! else if (!vim_isfilec(c))
|
||||
#endif
|
||||
{
|
||||
! while (*p != NUL)
|
||||
! {
|
||||
! #ifdef FEAT_MBYTE
|
||||
! if (has_mbyte)
|
||||
! c = mb_ptr2char(p);
|
||||
! else
|
||||
! #endif
|
||||
! c = *p;
|
||||
! if (c == '`' || vim_isfilec(c))
|
||||
! break;
|
||||
! #ifdef FEAT_MBYTE
|
||||
! if (has_mbyte)
|
||||
! len = (*mb_ptr2len)(p);
|
||||
! else
|
||||
! #endif
|
||||
! len = 1;
|
||||
! mb_ptr_adv(p);
|
||||
! }
|
||||
if (in_quote)
|
||||
bow = p;
|
||||
else
|
||||
xp->xp_pattern = p;
|
||||
! p -= len;
|
||||
}
|
||||
mb_ptr_adv(p);
|
||||
}
|
||||
*** ../vim-7.1.080/src/version.c Sat Aug 18 16:59:43 2007
|
||||
--- src/version.c Sat Aug 18 17:45:54 2007
|
||||
***************
|
||||
*** 668,669 ****
|
||||
--- 668,671 ----
|
||||
{ /* Add new patch number below this line */
|
||||
+ /**/
|
||||
+ 81,
|
||||
/**/
|
||||
|
||||
--
|
||||
hundred-and-one symptoms of being an internet addict:
|
||||
194. Your business cards contain your e-mail and home page 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 ///
|
107
7.1.082
107
7.1.082
@ -1,107 +0,0 @@
|
||||
To: vim-dev@vim.org
|
||||
Subject: patch 7.1.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.1.082
|
||||
Problem: After a ":split" the matchparen highlighting isn't there.
|
||||
Solution: Install a WinEnter autocommand. Also fixes that after
|
||||
":NoMatchParen" only the current window is updated. (Martin Toft)
|
||||
Files: runtime/doc/pi_paren.txt, runtime/plugin/matchparen.vim
|
||||
|
||||
|
||||
*** ../vim-7.1.081/runtime/doc/pi_paren.txt Sat May 12 16:23:41 2007
|
||||
--- runtime/doc/pi_paren.txt Sat Aug 18 15:08:32 2007
|
||||
***************
|
||||
*** 12,19 ****
|
||||
You can avoid loading this plugin by setting the "loaded_matchparen" variable: >
|
||||
:let loaded_matchparen = 1
|
||||
|
||||
! The plugin installs CursorMoved autocommands to redefine the match
|
||||
! highlighting.
|
||||
|
||||
To disable the plugin after it was loaded use this command: >
|
||||
|
||||
--- 12,19 ----
|
||||
You can avoid loading this plugin by setting the "loaded_matchparen" variable: >
|
||||
:let loaded_matchparen = 1
|
||||
|
||||
! The plugin installs CursorMoved, CursorMovedI and WinEnter autocommands to
|
||||
! redefine the match highlighting.
|
||||
|
||||
To disable the plugin after it was loaded use this command: >
|
||||
|
||||
*** ../vim-7.1.081/runtime/plugin/matchparen.vim Thu Aug 2 23:00:06 2007
|
||||
--- runtime/plugin/matchparen.vim Sat Aug 18 15:08:32 2007
|
||||
***************
|
||||
*** 1,6 ****
|
||||
" Vim plugin for showing matching parens
|
||||
" Maintainer: Bram Moolenaar <Bram@vim.org>
|
||||
! " Last Change: 2007 Jul 30
|
||||
|
||||
" 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: 2007 Aug 8
|
||||
|
||||
" Exit quickly when:
|
||||
" - this plugin was already loaded (or disabled)
|
||||
***************
|
||||
*** 13,19 ****
|
||||
|
||||
augroup matchparen
|
||||
" Replace all matchparen autocommands
|
||||
! autocmd! CursorMoved,CursorMovedI * call s:Highlight_Matching_Pair()
|
||||
augroup END
|
||||
|
||||
" Skip the rest if it was already done.
|
||||
--- 13,19 ----
|
||||
|
||||
augroup matchparen
|
||||
" Replace all matchparen autocommands
|
||||
! autocmd! CursorMoved,CursorMovedI,WinEnter * call s:Highlight_Matching_Pair()
|
||||
augroup END
|
||||
|
||||
" Skip the rest if it was already done.
|
||||
***************
|
||||
*** 126,132 ****
|
||||
endfunction
|
||||
|
||||
" Define commands that will disable and enable the plugin.
|
||||
! command! NoMatchParen 3match none | unlet! g:loaded_matchparen | au! matchparen
|
||||
! command! DoMatchParen runtime plugin/matchparen.vim | doau CursorMoved
|
||||
|
||||
let &cpo = cpo_save
|
||||
--- 126,133 ----
|
||||
endfunction
|
||||
|
||||
" Define commands that will disable and enable the plugin.
|
||||
! command! NoMatchParen windo 3match none | unlet! g:loaded_matchparen |
|
||||
! \ au! matchparen
|
||||
! command! DoMatchParen runtime plugin/matchparen.vim | windo doau CursorMoved
|
||||
|
||||
let &cpo = cpo_save
|
||||
*** ../vim-7.1.081/src/version.c Sat Aug 18 17:46:50 2007
|
||||
--- src/version.c Sat Aug 18 18:19:20 2007
|
||||
***************
|
||||
*** 668,669 ****
|
||||
--- 668,671 ----
|
||||
{ /* Add new patch number below this line */
|
||||
+ /**/
|
||||
+ 82,
|
||||
/**/
|
||||
|
||||
--
|
||||
hundred-and-one symptoms of being an internet addict:
|
||||
195. Your cat has its own home page.
|
||||
|
||||
/// 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 ///
|
123
7.1.083
123
7.1.083
@ -1,123 +0,0 @@
|
||||
To: vim-dev@vim.org
|
||||
Subject: patch 7.1.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.1.083 (after 7.1.081)
|
||||
Problem: Command line completion doesn't work with wildcards.
|
||||
Solution: Add vim_isfilec_or_wc() and use it. (Martin Toft)
|
||||
Files: src/charset.c, src/proto/charset.pro, src/ex_docmd.c
|
||||
|
||||
|
||||
*** ../vim-7.1.082/src/charset.c Wed Aug 15 20:40:45 2007
|
||||
--- src/charset.c Sun Aug 19 22:30:25 2007
|
||||
***************
|
||||
*** 932,937 ****
|
||||
--- 932,954 ----
|
||||
}
|
||||
|
||||
/*
|
||||
+ * return TRUE if 'c' is a valid file-name character or a wildcard character
|
||||
+ * Assume characters above 0x100 are valid (multi-byte).
|
||||
+ * Explicitly interpret ']' as a wildcard character as mch_has_wildcard("]")
|
||||
+ * returns false.
|
||||
+ */
|
||||
+ int
|
||||
+ vim_isfilec_or_wc(c)
|
||||
+ int c;
|
||||
+ {
|
||||
+ char_u buf[2];
|
||||
+
|
||||
+ buf[0] = (char_u)c;
|
||||
+ buf[1] = NUL;
|
||||
+ return vim_isfilec(c) || c == ']' || mch_has_wildcard(buf);
|
||||
+ }
|
||||
+
|
||||
+ /*
|
||||
* return TRUE if 'c' is a printable character
|
||||
* Assume characters above 0x100 are printable (multi-byte), except for
|
||||
* Unicode.
|
||||
*** ../vim-7.1.082/src/proto/charset.pro Sat May 5 19:21:32 2007
|
||||
--- src/proto/charset.pro Sun Aug 19 22:30:28 2007
|
||||
***************
|
||||
*** 21,26 ****
|
||||
--- 21,27 ----
|
||||
int vim_iswordp __ARGS((char_u *p));
|
||||
int vim_iswordc_buf __ARGS((char_u *p, buf_T *buf));
|
||||
int vim_isfilec __ARGS((int c));
|
||||
+ int vim_isfilec_or_wc __ARGS((int c));
|
||||
int vim_isprintc __ARGS((int c));
|
||||
int vim_isprintc_strict __ARGS((int c));
|
||||
int lbr_chartabsize __ARGS((unsigned char *s, colnr_T col));
|
||||
*** ../vim-7.1.082/src/ex_docmd.c Sat Aug 18 17:46:50 2007
|
||||
--- src/ex_docmd.c Sun Aug 19 22:29:17 2007
|
||||
***************
|
||||
*** 3311,3319 ****
|
||||
in_quote = !in_quote;
|
||||
}
|
||||
#ifdef SPACE_IN_FILENAME
|
||||
! else if (!vim_isfilec(c) && (!(ea.argt & NOSPC) || usefilter))
|
||||
#else
|
||||
! else if (!vim_isfilec(c))
|
||||
#endif
|
||||
{
|
||||
while (*p != NUL)
|
||||
--- 3311,3320 ----
|
||||
in_quote = !in_quote;
|
||||
}
|
||||
#ifdef SPACE_IN_FILENAME
|
||||
! else if (!vim_isfilec_or_wc(c)
|
||||
! && (!(ea.argt & NOSPC) || usefilter))
|
||||
#else
|
||||
! else if (!vim_isfilec_or_wc(c))
|
||||
#endif
|
||||
{
|
||||
while (*p != NUL)
|
||||
***************
|
||||
*** 3324,3330 ****
|
||||
else
|
||||
#endif
|
||||
c = *p;
|
||||
! if (c == '`' || vim_isfilec(c))
|
||||
break;
|
||||
#ifdef FEAT_MBYTE
|
||||
if (has_mbyte)
|
||||
--- 3325,3331 ----
|
||||
else
|
||||
#endif
|
||||
c = *p;
|
||||
! if (c == '`' || vim_isfilec_or_wc(c))
|
||||
break;
|
||||
#ifdef FEAT_MBYTE
|
||||
if (has_mbyte)
|
||||
*** ../vim-7.1.082/src/version.c Sat Aug 18 18:20:57 2007
|
||||
--- src/version.c Sun Aug 19 22:31:43 2007
|
||||
***************
|
||||
*** 668,669 ****
|
||||
--- 668,671 ----
|
||||
{ /* Add new patch number below this line */
|
||||
+ /**/
|
||||
+ 83,
|
||||
/**/
|
||||
|
||||
--
|
||||
"You mean there really is an answer?"
|
||||
"Yes! But you're not going to like it!"
|
||||
"Oh do please tell us!"
|
||||
"You're really not going to like it!"
|
||||
"but we MUST know - tell us"
|
||||
"Alright, the answer is...."
|
||||
"yes..."
|
||||
"... is ..."
|
||||
"yes... come on!"
|
||||
"is 42!"
|
||||
(Douglas Adams - The Hitchhiker's Guide to the Galaxy)
|
||||
|
||||
/// 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.1.084
53
7.1.084
@ -1,53 +0,0 @@
|
||||
To: vim-dev@vim.org
|
||||
Subject: patch 7.1.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.1.084
|
||||
Problem: Using the "-nb" argument twice causes netbeans not to get
|
||||
fileOpened events.
|
||||
Solution: Change "&" to "&&". (Xavier de Gaye)
|
||||
Files: src/ex_cmds.c
|
||||
|
||||
|
||||
*** ../vim-7.1.083/src/ex_cmds.c Wed Jul 25 22:55:22 2007
|
||||
--- src/ex_cmds.c Tue Aug 21 15:02:43 2007
|
||||
***************
|
||||
*** 3776,3782 ****
|
||||
workshop_file_opened((char *)curbuf->b_ffname, curbuf->b_p_ro);
|
||||
# endif
|
||||
# ifdef FEAT_NETBEANS_INTG
|
||||
! if (usingNetbeans & ((flags & ECMD_SET_HELP) != ECMD_SET_HELP))
|
||||
netbeans_file_opened(curbuf);
|
||||
# endif
|
||||
}
|
||||
--- 3787,3793 ----
|
||||
workshop_file_opened((char *)curbuf->b_ffname, curbuf->b_p_ro);
|
||||
# endif
|
||||
# ifdef FEAT_NETBEANS_INTG
|
||||
! if (usingNetbeans && ((flags & ECMD_SET_HELP) != ECMD_SET_HELP))
|
||||
netbeans_file_opened(curbuf);
|
||||
# endif
|
||||
}
|
||||
*** ../vim-7.1.083/src/version.c Sun Aug 19 22:42:27 2007
|
||||
--- src/version.c Tue Aug 21 15:04:03 2007
|
||||
***************
|
||||
*** 668,669 ****
|
||||
--- 668,671 ----
|
||||
{ /* Add new patch number below this line */
|
||||
+ /**/
|
||||
+ 84,
|
||||
/**/
|
||||
|
||||
--
|
||||
hundred-and-one symptoms of being an internet addict:
|
||||
220. Your wife asks for sex and you tell her where to find you on IRC.
|
||||
|
||||
/// 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 ///
|
85
7.1.085
85
7.1.085
@ -1,85 +0,0 @@
|
||||
To: vim-dev@vim.org
|
||||
Subject: patch 7.1.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.1.085
|
||||
Problem: ":e fold.c" then ":sp fold.c" results in folds of original window
|
||||
to disappear. (Akita Noek)
|
||||
Solution: Invoke foldUpdateAll() for all windows of the changed buffer.
|
||||
(Martin Toft)
|
||||
Files: src/ex_cmds.c
|
||||
|
||||
|
||||
*** ../vim-7.1.084/src/ex_cmds.c Tue Aug 21 15:05:54 2007
|
||||
--- src/ex_cmds.c Tue Aug 21 15:02:43 2007
|
||||
***************
|
||||
*** 2974,2980 ****
|
||||
* 'fnum' is the number of the file, if zero use ffname/sfname.
|
||||
*
|
||||
* Return 1 for "normal" error, 2 for "not written" error, 0 for success
|
||||
! * -1 for succesfully opening another file.
|
||||
* 'lnum' is the line number for the cursor in the new file (if non-zero).
|
||||
*/
|
||||
int
|
||||
--- 2974,2980 ----
|
||||
* 'fnum' is the number of the file, if zero use ffname/sfname.
|
||||
*
|
||||
* Return 1 for "normal" error, 2 for "not written" error, 0 for success
|
||||
! * -1 for successfully opening another file.
|
||||
* 'lnum' is the line number for the cursor in the new file (if non-zero).
|
||||
*/
|
||||
int
|
||||
***************
|
||||
*** 3584,3592 ****
|
||||
curwin_init();
|
||||
|
||||
#ifdef FEAT_FOLDING
|
||||
! /* It's like all lines in the buffer changed. Need to update
|
||||
! * automatic folding. */
|
||||
foldUpdateAll(curwin);
|
||||
#endif
|
||||
|
||||
/* Change directories when the 'acd' option is set. */
|
||||
--- 3584,3603 ----
|
||||
curwin_init();
|
||||
|
||||
#ifdef FEAT_FOLDING
|
||||
! /* It's possible that all lines in the buffer changed. Need to update
|
||||
! * automatic folding for all windows where it's used. */
|
||||
! # ifdef FEAT_WINDOWS
|
||||
! {
|
||||
! win_T *win;
|
||||
! tabpage_T *tp;
|
||||
!
|
||||
! FOR_ALL_TAB_WINDOWS(tp, win)
|
||||
! if (win->w_buffer == curbuf)
|
||||
! foldUpdateAll(win);
|
||||
! }
|
||||
! # else
|
||||
foldUpdateAll(curwin);
|
||||
+ # endif
|
||||
#endif
|
||||
|
||||
/* Change directories when the 'acd' option is set. */
|
||||
*** ../vim-7.1.084/src/version.c Tue Aug 21 15:05:54 2007
|
||||
--- src/version.c Tue Aug 21 15:26:43 2007
|
||||
***************
|
||||
*** 668,669 ****
|
||||
--- 668,671 ----
|
||||
{ /* Add new patch number below this line */
|
||||
+ /**/
|
||||
+ 85,
|
||||
/**/
|
||||
|
||||
--
|
||||
Your fault: 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 ///
|
123
7.1.086
123
7.1.086
@ -1,123 +0,0 @@
|
||||
To: vim-dev@vim.org
|
||||
Subject: patch 7.1.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.1.086
|
||||
Problem: Crash when using specific Python syntax highlighting. (Quirk)
|
||||
Solution: Check for a negative index, coming from a keyword match at the
|
||||
start of a line from a saved state.
|
||||
Files: src/syntax.c
|
||||
|
||||
|
||||
*** ../vim-7.1.085/src/syntax.c Tue Aug 14 23:06:51 2007
|
||||
--- src/syntax.c Tue Aug 21 17:13:51 2007
|
||||
***************
|
||||
*** 279,285 ****
|
||||
*/
|
||||
typedef struct state_item
|
||||
{
|
||||
! int si_idx; /* index of syntax pattern */
|
||||
int si_id; /* highlight group ID for keywords */
|
||||
int si_trans_id; /* idem, transparancy removed */
|
||||
int si_m_lnum; /* lnum of the match */
|
||||
--- 279,286 ----
|
||||
*/
|
||||
typedef struct state_item
|
||||
{
|
||||
! int si_idx; /* index of syntax pattern or
|
||||
! KEYWORD_IDX */
|
||||
int si_id; /* highlight group ID for keywords */
|
||||
int si_trans_id; /* idem, transparancy removed */
|
||||
int si_m_lnum; /* lnum of the match */
|
||||
***************
|
||||
*** 837,845 ****
|
||||
current_lnum = end_lnum;
|
||||
break;
|
||||
}
|
||||
! spp = &(SYN_ITEMS(syn_buf)[cur_si->si_idx]);
|
||||
! found_flags = spp->sp_flags;
|
||||
! found_match_idx = spp->sp_sync_idx;
|
||||
found_current_lnum = current_lnum;
|
||||
found_current_col = current_col;
|
||||
found_m_endpos = cur_si->si_m_endpos;
|
||||
--- 838,855 ----
|
||||
current_lnum = end_lnum;
|
||||
break;
|
||||
}
|
||||
! if (cur_si->si_idx < 0)
|
||||
! {
|
||||
! /* Cannot happen? */
|
||||
! found_flags = 0;
|
||||
! found_match_idx = KEYWORD_IDX;
|
||||
! }
|
||||
! else
|
||||
! {
|
||||
! spp = &(SYN_ITEMS(syn_buf)[cur_si->si_idx]);
|
||||
! found_flags = spp->sp_flags;
|
||||
! found_match_idx = spp->sp_sync_idx;
|
||||
! }
|
||||
found_current_lnum = current_lnum;
|
||||
found_current_col = current_col;
|
||||
found_m_endpos = cur_si->si_m_endpos;
|
||||
***************
|
||||
*** 2533,2538 ****
|
||||
--- 2543,2552 ----
|
||||
stateitem_T *sip = &CUR_STATE(idx);
|
||||
synpat_T *spp;
|
||||
|
||||
+ /* This should not happen... */
|
||||
+ if (sip->si_idx < 0)
|
||||
+ return;
|
||||
+
|
||||
spp = &(SYN_ITEMS(syn_buf)[sip->si_idx]);
|
||||
if (sip->si_flags & HL_MATCH)
|
||||
sip->si_id = spp->sp_syn_match_id;
|
||||
***************
|
||||
*** 2648,2653 ****
|
||||
--- 2662,2671 ----
|
||||
lpos_T end_endpos;
|
||||
int end_idx;
|
||||
|
||||
+ /* return quickly for a keyword */
|
||||
+ if (sip->si_idx < 0)
|
||||
+ return;
|
||||
+
|
||||
/* Don't update when it's already done. Can be a match of an end pattern
|
||||
* that started in a previous line. Watch out: can also be a "keepend"
|
||||
* from a containing item. */
|
||||
***************
|
||||
*** 2759,2764 ****
|
||||
--- 2777,2786 ----
|
||||
lpos_T pos;
|
||||
char_u *line;
|
||||
int had_match = FALSE;
|
||||
+
|
||||
+ /* just in case we are invoked for a keyword */
|
||||
+ if (idx < 0)
|
||||
+ return;
|
||||
|
||||
/*
|
||||
* Check for being called with a START pattern.
|
||||
*** ../vim-7.1.085/src/version.c Tue Aug 21 15:28:32 2007
|
||||
--- src/version.c Tue Aug 21 17:21:06 2007
|
||||
***************
|
||||
*** 668,669 ****
|
||||
--- 668,671 ----
|
||||
{ /* Add new patch number below this line */
|
||||
+ /**/
|
||||
+ 86,
|
||||
/**/
|
||||
|
||||
--
|
||||
hundred-and-one symptoms of being an internet addict:
|
||||
222. You send more than 20 personal e-mails a day.
|
||||
|
||||
/// 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 ///
|
151
7.1.087
151
7.1.087
@ -1,151 +0,0 @@
|
||||
To: vim-dev@vim.org
|
||||
Subject: patch 7.1.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.1.087
|
||||
Problem: Reading past ":cscope find" command. Writing past end of a buffer.
|
||||
Solution: Check length of the argument before using the pattern. Use
|
||||
vim_strncpy(). (Dominique Pelle)
|
||||
Files: if_cscope.c
|
||||
|
||||
|
||||
*** ../vim-7.1.086/src/if_cscope.c Sun Mar 11 15:48:29 2007
|
||||
--- src/if_cscope.c Sun Aug 19 22:17:09 2007
|
||||
***************
|
||||
*** 73,78 ****
|
||||
--- 73,80 ----
|
||||
|
||||
|
||||
static csinfo_T csinfo[CSCOPE_MAX_CONNECTIONS];
|
||||
+ static int eap_arg_len; /* length of eap->arg, set in
|
||||
+ cs_lookup_cmd() */
|
||||
static cscmd_T cs_cmds[] =
|
||||
{
|
||||
{ "add", cs_add,
|
||||
***************
|
||||
*** 260,273 ****
|
||||
|
||||
if ((p = cs_manage_matches(NULL, NULL, -1, Get)) == NULL)
|
||||
return TRUE;
|
||||
!
|
||||
! if ((int)strlen(p) > size)
|
||||
! {
|
||||
! strncpy((char *)buf, p, size - 1);
|
||||
! buf[size] = '\0';
|
||||
! }
|
||||
! else
|
||||
! (void)strcpy((char *)buf, p);
|
||||
|
||||
return FALSE;
|
||||
} /* cs_fgets */
|
||||
--- 262,268 ----
|
||||
|
||||
if ((p = cs_manage_matches(NULL, NULL, -1, Get)) == NULL)
|
||||
return TRUE;
|
||||
! vim_strncpy(buf, (char_u *)p, size - 1);
|
||||
|
||||
return FALSE;
|
||||
} /* cs_fgets */
|
||||
***************
|
||||
*** 386,392 ****
|
||||
* PRIVATE: cs_add
|
||||
*
|
||||
* add cscope database or a directory name (to look for cscope.out)
|
||||
! * the the cscope connection list
|
||||
*
|
||||
* MAXPATHL 256
|
||||
*/
|
||||
--- 381,387 ----
|
||||
* PRIVATE: cs_add
|
||||
*
|
||||
* add cscope database or a directory name (to look for cscope.out)
|
||||
! * to the cscope connection list
|
||||
*
|
||||
* MAXPATHL 256
|
||||
*/
|
||||
***************
|
||||
*** 966,972 ****
|
||||
}
|
||||
|
||||
pat = opt + strlen(opt) + 1;
|
||||
! if (pat == NULL || (pat != NULL && pat[0] == '\0'))
|
||||
{
|
||||
cs_usage_msg(Find);
|
||||
return FALSE;
|
||||
--- 961,967 ----
|
||||
}
|
||||
|
||||
pat = opt + strlen(opt) + 1;
|
||||
! if (pat >= (char *)eap->arg + eap_arg_len)
|
||||
{
|
||||
cs_usage_msg(Find);
|
||||
return FALSE;
|
||||
***************
|
||||
*** 1317,1323 ****
|
||||
#else
|
||||
/* compare pathnames first */
|
||||
&& ((fullpathcmp(csinfo[j].fname, fname, FALSE) & FPC_SAME)
|
||||
! /* if not Windows 9x, test index file atributes too */
|
||||
|| (!mch_windows95()
|
||||
&& csinfo[j].nVolume == bhfi.dwVolumeSerialNumber
|
||||
&& csinfo[j].nIndexHigh == bhfi.nFileIndexHigh
|
||||
--- 1312,1318 ----
|
||||
#else
|
||||
/* compare pathnames first */
|
||||
&& ((fullpathcmp(csinfo[j].fname, fname, FALSE) & FPC_SAME)
|
||||
! /* if not Windows 9x, test index file attributes too */
|
||||
|| (!mch_windows95()
|
||||
&& csinfo[j].nVolume == bhfi.dwVolumeSerialNumber
|
||||
&& csinfo[j].nIndexHigh == bhfi.nFileIndexHigh
|
||||
***************
|
||||
*** 1401,1406 ****
|
||||
--- 1396,1404 ----
|
||||
if (eap->arg == NULL)
|
||||
return NULL;
|
||||
|
||||
+ /* Store length of eap->arg before it gets modified by strtok(). */
|
||||
+ eap_arg_len = STRLEN(eap->arg);
|
||||
+
|
||||
if ((stok = strtok((char *)(eap->arg), (const char *)" ")) == NULL)
|
||||
return NULL;
|
||||
|
||||
***************
|
||||
*** 2195,2201 ****
|
||||
cs_add_common(dblist[i], pplist[i], fllist[i]);
|
||||
if (p_csverbose)
|
||||
{
|
||||
! /* dont' use smsg_attr because want to display
|
||||
* connection number in the same line as
|
||||
* "Added cscope database..."
|
||||
*/
|
||||
--- 2193,2199 ----
|
||||
cs_add_common(dblist[i], pplist[i], fllist[i]);
|
||||
if (p_csverbose)
|
||||
{
|
||||
! /* don't use smsg_attr() because we want to display the
|
||||
* connection number in the same line as
|
||||
* "Added cscope database..."
|
||||
*/
|
||||
*** ../vim-7.1.086/src/version.c Tue Aug 21 17:29:04 2007
|
||||
--- src/version.c Tue Aug 21 17:59:42 2007
|
||||
***************
|
||||
*** 668,669 ****
|
||||
--- 668,671 ----
|
||||
{ /* Add new patch number below this line */
|
||||
+ /**/
|
||||
+ 87,
|
||||
/**/
|
||||
|
||||
--
|
||||
hundred-and-one symptoms of being an internet addict:
|
||||
223. You set up a web-cam as your home's security system.
|
||||
|
||||
/// 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.1.088
70
7.1.088
@ -1,70 +0,0 @@
|
||||
To: vim-dev@vim.org
|
||||
Subject: patch 7.1.088 (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.1.088 (extra)
|
||||
Problem: The coordinates used by ":winpos" differ from what getwinposx()
|
||||
and getwinposy() return.
|
||||
Solution: Use MoveWindowStructure() instead of MoveWindow(). (Michael Henry)
|
||||
Files: src/gui_mac.c
|
||||
|
||||
|
||||
*** ../vim-7.1.087/src/gui_mac.c Tue Jun 19 16:33:53 2007
|
||||
--- src/gui_mac.c Wed Aug 29 20:33:34 2007
|
||||
***************
|
||||
*** 3149,3155 ****
|
||||
/* TODO: Should make sure the window is move within range
|
||||
* e.g.: y > ~16 [Menu bar], x > 0, x < screen width
|
||||
*/
|
||||
! MoveWindow(gui.VimWindow, x, y, TRUE);
|
||||
}
|
||||
|
||||
void
|
||||
--- 3149,3155 ----
|
||||
/* TODO: Should make sure the window is move within range
|
||||
* e.g.: y > ~16 [Menu bar], x > 0, x < screen width
|
||||
*/
|
||||
! MoveWindowStructure(gui.VimWindow, x, y, TRUE);
|
||||
}
|
||||
|
||||
void
|
||||
***************
|
||||
*** 5556,5562 ****
|
||||
* SetDialogTracksCursor() : Get the I-beam cursor over input box
|
||||
* MoveDialogItem(): Probably better than SetDialogItem
|
||||
* SizeDialogItem(): (but is it Carbon Only?)
|
||||
! * AutoSizeDialog(): Magic resize of dialog based on text lenght
|
||||
*/
|
||||
}
|
||||
#endif /* FEAT_DIALOG_GUI */
|
||||
--- 5556,5562 ----
|
||||
* SetDialogTracksCursor() : Get the I-beam cursor over input box
|
||||
* MoveDialogItem(): Probably better than SetDialogItem
|
||||
* SizeDialogItem(): (but is it Carbon Only?)
|
||||
! * AutoSizeDialog(): Magic resize of dialog based on text length
|
||||
*/
|
||||
}
|
||||
#endif /* FEAT_DIALOG_GUI */
|
||||
*** ../vim-7.1.087/src/version.c Tue Aug 21 18:02:58 2007
|
||||
--- src/version.c Thu Aug 30 10:32:28 2007
|
||||
***************
|
||||
*** 668,669 ****
|
||||
--- 668,671 ----
|
||||
{ /* Add new patch number below this line */
|
||||
+ /**/
|
||||
+ 88,
|
||||
/**/
|
||||
|
||||
--
|
||||
hundred-and-one symptoms of being an internet addict:
|
||||
10E. You start counting in hex.
|
||||
|
||||
/// 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 ///
|
494
7.1.089
494
7.1.089
@ -1,494 +0,0 @@
|
||||
To: vim-dev@vim.org
|
||||
Subject: patch 7.1.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.1.089
|
||||
Problem: ":let loaded_getscriptPlugin" doesn't clear to eol, result is
|
||||
"#1in".
|
||||
Solution: Clear to the end of the screen after displaying the first variable
|
||||
value.
|
||||
Files: src/eval.c
|
||||
|
||||
|
||||
*** ../vim-7.1.088/src/eval.c Tue Aug 14 22:40:13 2007
|
||||
--- src/eval.c Wed Aug 29 22:40:15 2007
|
||||
***************
|
||||
*** 369,385 ****
|
||||
static int ex_let_vars __ARGS((char_u *arg, typval_T *tv, int copy, int semicolon, int var_count, char_u *nextchars));
|
||||
static char_u *skip_var_list __ARGS((char_u *arg, int *var_count, int *semicolon));
|
||||
static char_u *skip_var_one __ARGS((char_u *arg));
|
||||
! static void list_hashtable_vars __ARGS((hashtab_T *ht, char_u *prefix, int empty));
|
||||
! static void list_glob_vars __ARGS((void));
|
||||
! static void list_buf_vars __ARGS((void));
|
||||
! static void list_win_vars __ARGS((void));
|
||||
#ifdef FEAT_WINDOWS
|
||||
! static void list_tab_vars __ARGS((void));
|
||||
#endif
|
||||
! static void list_vim_vars __ARGS((void));
|
||||
! static void list_script_vars __ARGS((void));
|
||||
! static void list_func_vars __ARGS((void));
|
||||
! static char_u *list_arg_vars __ARGS((exarg_T *eap, char_u *arg));
|
||||
static char_u *ex_let_one __ARGS((char_u *arg, typval_T *tv, int copy, char_u *endchars, char_u *op));
|
||||
static int check_changedtick __ARGS((char_u *arg));
|
||||
static char_u *get_lval __ARGS((char_u *name, typval_T *rettv, lval_T *lp, int unlet, int skip, int quiet, int fne_flags));
|
||||
--- 369,385 ----
|
||||
static int ex_let_vars __ARGS((char_u *arg, typval_T *tv, int copy, int semicolon, int var_count, char_u *nextchars));
|
||||
static char_u *skip_var_list __ARGS((char_u *arg, int *var_count, int *semicolon));
|
||||
static char_u *skip_var_one __ARGS((char_u *arg));
|
||||
! static void list_hashtable_vars __ARGS((hashtab_T *ht, char_u *prefix, int empty, int *first));
|
||||
! static void list_glob_vars __ARGS((int *first));
|
||||
! static void list_buf_vars __ARGS((int *first));
|
||||
! static void list_win_vars __ARGS((int *first));
|
||||
#ifdef FEAT_WINDOWS
|
||||
! static void list_tab_vars __ARGS((int *first));
|
||||
#endif
|
||||
! static void list_vim_vars __ARGS((int *first));
|
||||
! static void list_script_vars __ARGS((int *first));
|
||||
! static void list_func_vars __ARGS((int *first));
|
||||
! static char_u *list_arg_vars __ARGS((exarg_T *eap, char_u *arg, int *first));
|
||||
static char_u *ex_let_one __ARGS((char_u *arg, typval_T *tv, int copy, char_u *endchars, char_u *op));
|
||||
static int check_changedtick __ARGS((char_u *arg));
|
||||
static char_u *get_lval __ARGS((char_u *name, typval_T *rettv, lval_T *lp, int unlet, int skip, int quiet, int fne_flags));
|
||||
***************
|
||||
*** 704,711 ****
|
||||
static hashtab_T *find_var_ht __ARGS((char_u *name, char_u **varname));
|
||||
static void vars_clear_ext __ARGS((hashtab_T *ht, int free_val));
|
||||
static void delete_var __ARGS((hashtab_T *ht, hashitem_T *hi));
|
||||
! static void list_one_var __ARGS((dictitem_T *v, char_u *prefix));
|
||||
! 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));
|
||||
--- 704,711 ----
|
||||
static hashtab_T *find_var_ht __ARGS((char_u *name, char_u **varname));
|
||||
static void vars_clear_ext __ARGS((hashtab_T *ht, int free_val));
|
||||
static void delete_var __ARGS((hashtab_T *ht, hashitem_T *hi));
|
||||
! static void list_one_var __ARGS((dictitem_T *v, char_u *prefix, int *first));
|
||||
! static void list_one_var_a __ARGS((char_u *prefix, char_u *name, int type, char_u *string, int *first));
|
||||
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));
|
||||
***************
|
||||
*** 1699,1704 ****
|
||||
--- 1699,1705 ----
|
||||
int semicolon = 0;
|
||||
char_u op[2];
|
||||
char_u *argend;
|
||||
+ int first = TRUE;
|
||||
|
||||
argend = skip_var_list(arg, &var_count, &semicolon);
|
||||
if (argend == NULL)
|
||||
***************
|
||||
*** 1715,1733 ****
|
||||
EMSG(_(e_invarg));
|
||||
else if (!ends_excmd(*arg))
|
||||
/* ":let var1 var2" */
|
||||
! arg = list_arg_vars(eap, arg);
|
||||
else if (!eap->skip)
|
||||
{
|
||||
/* ":let" */
|
||||
! list_glob_vars();
|
||||
! list_buf_vars();
|
||||
! list_win_vars();
|
||||
#ifdef FEAT_WINDOWS
|
||||
! list_tab_vars();
|
||||
#endif
|
||||
! list_script_vars();
|
||||
! list_func_vars();
|
||||
! list_vim_vars();
|
||||
}
|
||||
eap->nextcmd = check_nextcmd(arg);
|
||||
}
|
||||
--- 1716,1734 ----
|
||||
EMSG(_(e_invarg));
|
||||
else if (!ends_excmd(*arg))
|
||||
/* ":let var1 var2" */
|
||||
! arg = list_arg_vars(eap, arg, &first);
|
||||
else if (!eap->skip)
|
||||
{
|
||||
/* ":let" */
|
||||
! list_glob_vars(&first);
|
||||
! list_buf_vars(&first);
|
||||
! list_win_vars(&first);
|
||||
#ifdef FEAT_WINDOWS
|
||||
! list_tab_vars(&first);
|
||||
#endif
|
||||
! list_script_vars(&first);
|
||||
! list_func_vars(&first);
|
||||
! list_vim_vars(&first);
|
||||
}
|
||||
eap->nextcmd = check_nextcmd(arg);
|
||||
}
|
||||
***************
|
||||
*** 1932,1941 ****
|
||||
* If "empty" is TRUE also list NULL strings as empty strings.
|
||||
*/
|
||||
static void
|
||||
! list_hashtable_vars(ht, prefix, empty)
|
||||
hashtab_T *ht;
|
||||
char_u *prefix;
|
||||
int empty;
|
||||
{
|
||||
hashitem_T *hi;
|
||||
dictitem_T *di;
|
||||
--- 1933,1943 ----
|
||||
* If "empty" is TRUE also list NULL strings as empty strings.
|
||||
*/
|
||||
static void
|
||||
! list_hashtable_vars(ht, prefix, empty, first)
|
||||
hashtab_T *ht;
|
||||
char_u *prefix;
|
||||
int empty;
|
||||
+ int *first;
|
||||
{
|
||||
hashitem_T *hi;
|
||||
dictitem_T *di;
|
||||
***************
|
||||
*** 1950,1956 ****
|
||||
di = HI2DI(hi);
|
||||
if (empty || di->di_tv.v_type != VAR_STRING
|
||||
|| di->di_tv.vval.v_string != NULL)
|
||||
! list_one_var(di, prefix);
|
||||
}
|
||||
}
|
||||
}
|
||||
--- 1952,1958 ----
|
||||
di = HI2DI(hi);
|
||||
if (empty || di->di_tv.v_type != VAR_STRING
|
||||
|| di->di_tv.vval.v_string != NULL)
|
||||
! list_one_var(di, prefix, first);
|
||||
}
|
||||
}
|
||||
}
|
||||
***************
|
||||
*** 1959,1990 ****
|
||||
* List global variables.
|
||||
*/
|
||||
static void
|
||||
! list_glob_vars()
|
||||
{
|
||||
! list_hashtable_vars(&globvarht, (char_u *)"", TRUE);
|
||||
}
|
||||
|
||||
/*
|
||||
* List buffer variables.
|
||||
*/
|
||||
static void
|
||||
! list_buf_vars()
|
||||
{
|
||||
char_u numbuf[NUMBUFLEN];
|
||||
|
||||
! list_hashtable_vars(&curbuf->b_vars.dv_hashtab, (char_u *)"b:", TRUE);
|
||||
|
||||
sprintf((char *)numbuf, "%ld", (long)curbuf->b_changedtick);
|
||||
! list_one_var_a((char_u *)"b:", (char_u *)"changedtick", VAR_NUMBER, numbuf);
|
||||
}
|
||||
|
||||
/*
|
||||
* List window variables.
|
||||
*/
|
||||
static void
|
||||
! list_win_vars()
|
||||
{
|
||||
! list_hashtable_vars(&curwin->w_vars.dv_hashtab, (char_u *)"w:", TRUE);
|
||||
}
|
||||
|
||||
#ifdef FEAT_WINDOWS
|
||||
--- 1961,1998 ----
|
||||
* List global variables.
|
||||
*/
|
||||
static void
|
||||
! list_glob_vars(first)
|
||||
! int *first;
|
||||
{
|
||||
! list_hashtable_vars(&globvarht, (char_u *)"", TRUE, first);
|
||||
}
|
||||
|
||||
/*
|
||||
* List buffer variables.
|
||||
*/
|
||||
static void
|
||||
! list_buf_vars(first)
|
||||
! int *first;
|
||||
{
|
||||
char_u numbuf[NUMBUFLEN];
|
||||
|
||||
! list_hashtable_vars(&curbuf->b_vars.dv_hashtab, (char_u *)"b:",
|
||||
! TRUE, first);
|
||||
|
||||
sprintf((char *)numbuf, "%ld", (long)curbuf->b_changedtick);
|
||||
! list_one_var_a((char_u *)"b:", (char_u *)"changedtick", VAR_NUMBER,
|
||||
! numbuf, first);
|
||||
}
|
||||
|
||||
/*
|
||||
* List window variables.
|
||||
*/
|
||||
static void
|
||||
! list_win_vars(first)
|
||||
! int *first;
|
||||
{
|
||||
! list_hashtable_vars(&curwin->w_vars.dv_hashtab,
|
||||
! (char_u *)"w:", TRUE, first);
|
||||
}
|
||||
|
||||
#ifdef FEAT_WINDOWS
|
||||
***************
|
||||
*** 1992,2000 ****
|
||||
* List tab page variables.
|
||||
*/
|
||||
static void
|
||||
! list_tab_vars()
|
||||
{
|
||||
! list_hashtable_vars(&curtab->tp_vars.dv_hashtab, (char_u *)"t:", TRUE);
|
||||
}
|
||||
#endif
|
||||
|
||||
--- 2000,2010 ----
|
||||
* List tab page variables.
|
||||
*/
|
||||
static void
|
||||
! list_tab_vars(first)
|
||||
! int *first;
|
||||
{
|
||||
! list_hashtable_vars(&curtab->tp_vars.dv_hashtab,
|
||||
! (char_u *)"t:", TRUE, first);
|
||||
}
|
||||
#endif
|
||||
|
||||
***************
|
||||
*** 2002,2040 ****
|
||||
* List Vim variables.
|
||||
*/
|
||||
static void
|
||||
! list_vim_vars()
|
||||
{
|
||||
! list_hashtable_vars(&vimvarht, (char_u *)"v:", FALSE);
|
||||
}
|
||||
|
||||
/*
|
||||
* List script-local variables, if there is a script.
|
||||
*/
|
||||
static void
|
||||
! list_script_vars()
|
||||
{
|
||||
if (current_SID > 0 && current_SID <= ga_scripts.ga_len)
|
||||
! list_hashtable_vars(&SCRIPT_VARS(current_SID), (char_u *)"s:", FALSE);
|
||||
}
|
||||
|
||||
/*
|
||||
* List function variables, if there is a function.
|
||||
*/
|
||||
static void
|
||||
! list_func_vars()
|
||||
{
|
||||
if (current_funccal != NULL)
|
||||
list_hashtable_vars(¤t_funccal->l_vars.dv_hashtab,
|
||||
! (char_u *)"l:", FALSE);
|
||||
}
|
||||
|
||||
/*
|
||||
* List variables in "arg".
|
||||
*/
|
||||
static char_u *
|
||||
! list_arg_vars(eap, arg)
|
||||
exarg_T *eap;
|
||||
char_u *arg;
|
||||
{
|
||||
int error = FALSE;
|
||||
int len;
|
||||
--- 2012,2055 ----
|
||||
* List Vim variables.
|
||||
*/
|
||||
static void
|
||||
! list_vim_vars(first)
|
||||
! int *first;
|
||||
{
|
||||
! list_hashtable_vars(&vimvarht, (char_u *)"v:", FALSE, first);
|
||||
}
|
||||
|
||||
/*
|
||||
* List script-local variables, if there is a script.
|
||||
*/
|
||||
static void
|
||||
! list_script_vars(first)
|
||||
! int *first;
|
||||
{
|
||||
if (current_SID > 0 && current_SID <= ga_scripts.ga_len)
|
||||
! list_hashtable_vars(&SCRIPT_VARS(current_SID),
|
||||
! (char_u *)"s:", FALSE, first);
|
||||
}
|
||||
|
||||
/*
|
||||
* List function variables, if there is a function.
|
||||
*/
|
||||
static void
|
||||
! list_func_vars(first)
|
||||
! int *first;
|
||||
{
|
||||
if (current_funccal != NULL)
|
||||
list_hashtable_vars(¤t_funccal->l_vars.dv_hashtab,
|
||||
! (char_u *)"l:", FALSE, first);
|
||||
}
|
||||
|
||||
/*
|
||||
* List variables in "arg".
|
||||
*/
|
||||
static char_u *
|
||||
! list_arg_vars(eap, arg, first)
|
||||
exarg_T *eap;
|
||||
char_u *arg;
|
||||
+ int *first;
|
||||
{
|
||||
int error = FALSE;
|
||||
int len;
|
||||
***************
|
||||
*** 2091,2105 ****
|
||||
{
|
||||
switch (*name)
|
||||
{
|
||||
! case 'g': list_glob_vars(); break;
|
||||
! case 'b': list_buf_vars(); break;
|
||||
! case 'w': list_win_vars(); break;
|
||||
#ifdef FEAT_WINDOWS
|
||||
! case 't': list_tab_vars(); break;
|
||||
#endif
|
||||
! case 'v': list_vim_vars(); break;
|
||||
! case 's': list_script_vars(); break;
|
||||
! case 'l': list_func_vars(); break;
|
||||
default:
|
||||
EMSG2(_("E738: Can't list variables for %s"), name);
|
||||
}
|
||||
--- 2106,2120 ----
|
||||
{
|
||||
switch (*name)
|
||||
{
|
||||
! case 'g': list_glob_vars(first); break;
|
||||
! case 'b': list_buf_vars(first); break;
|
||||
! case 'w': list_win_vars(first); break;
|
||||
#ifdef FEAT_WINDOWS
|
||||
! case 't': list_tab_vars(first); break;
|
||||
#endif
|
||||
! case 'v': list_vim_vars(first); break;
|
||||
! case 's': list_script_vars(first); break;
|
||||
! case 'l': list_func_vars(first); break;
|
||||
default:
|
||||
EMSG2(_("E738: Can't list variables for %s"), name);
|
||||
}
|
||||
***************
|
||||
*** 2116,2122 ****
|
||||
*arg = NUL;
|
||||
list_one_var_a((char_u *)"",
|
||||
arg == arg_subsc ? name : name_start,
|
||||
! tv.v_type, s == NULL ? (char_u *)"" : s);
|
||||
*arg = c;
|
||||
vim_free(tf);
|
||||
}
|
||||
--- 2131,2139 ----
|
||||
*arg = NUL;
|
||||
list_one_var_a((char_u *)"",
|
||||
arg == arg_subsc ? name : name_start,
|
||||
! tv.v_type,
|
||||
! s == NULL ? (char_u *)"" : s,
|
||||
! first);
|
||||
*arg = c;
|
||||
vim_free(tf);
|
||||
}
|
||||
***************
|
||||
*** 18001,18009 ****
|
||||
* List the value of one internal variable.
|
||||
*/
|
||||
static void
|
||||
! list_one_var(v, prefix)
|
||||
dictitem_T *v;
|
||||
char_u *prefix;
|
||||
{
|
||||
char_u *tofree;
|
||||
char_u *s;
|
||||
--- 18024,18033 ----
|
||||
* List the value of one internal variable.
|
||||
*/
|
||||
static void
|
||||
! list_one_var(v, prefix, first)
|
||||
dictitem_T *v;
|
||||
char_u *prefix;
|
||||
+ int *first;
|
||||
{
|
||||
char_u *tofree;
|
||||
char_u *s;
|
||||
***************
|
||||
*** 18011,18026 ****
|
||||
|
||||
s = echo_string(&v->di_tv, &tofree, numbuf, ++current_copyID);
|
||||
list_one_var_a(prefix, v->di_key, v->di_tv.v_type,
|
||||
! s == NULL ? (char_u *)"" : s);
|
||||
vim_free(tofree);
|
||||
}
|
||||
|
||||
static void
|
||||
! list_one_var_a(prefix, name, type, string)
|
||||
char_u *prefix;
|
||||
char_u *name;
|
||||
int type;
|
||||
char_u *string;
|
||||
{
|
||||
/* don't use msg() or msg_attr() to avoid overwriting "v:statusmsg" */
|
||||
msg_start();
|
||||
--- 18035,18051 ----
|
||||
|
||||
s = echo_string(&v->di_tv, &tofree, numbuf, ++current_copyID);
|
||||
list_one_var_a(prefix, v->di_key, v->di_tv.v_type,
|
||||
! s == NULL ? (char_u *)"" : s, first);
|
||||
vim_free(tofree);
|
||||
}
|
||||
|
||||
static void
|
||||
! list_one_var_a(prefix, name, type, string, first)
|
||||
char_u *prefix;
|
||||
char_u *name;
|
||||
int type;
|
||||
char_u *string;
|
||||
+ int *first; /* when TRUE clear rest of screen and set to FALSE */
|
||||
{
|
||||
/* don't use msg() or msg_attr() to avoid overwriting "v:statusmsg" */
|
||||
msg_start();
|
||||
***************
|
||||
*** 18052,18057 ****
|
||||
--- 18077,18087 ----
|
||||
|
||||
if (type == VAR_FUNC)
|
||||
msg_puts((char_u *)"()");
|
||||
+ if (*first)
|
||||
+ {
|
||||
+ msg_clr_eos();
|
||||
+ *first = FALSE;
|
||||
+ }
|
||||
}
|
||||
|
||||
/*
|
||||
*** ../vim-7.1.088/src/version.c Thu Aug 30 10:34:19 2007
|
||||
--- src/version.c Thu Aug 30 11:06:32 2007
|
||||
***************
|
||||
*** 668,669 ****
|
||||
--- 668,671 ----
|
||||
{ /* Add new patch number below this line */
|
||||
+ /**/
|
||||
+ 89,
|
||||
/**/
|
||||
|
||||
--
|
||||
Edison's greatest achievement came in 1879, when he invented the
|
||||
electric company. Edison's design was a brilliant adaptation of the
|
||||
simple electrical circuit: the electric company sends electricity
|
||||
through a wire to a customer, then immediately gets the electricity
|
||||
back through another wire
|
||||
|
||||
/// 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 ///
|
75
7.1.090
75
7.1.090
@ -1,75 +0,0 @@
|
||||
To: vim-dev@vim.org
|
||||
Subject: patch 7.1.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.1.090
|
||||
Problem: Compiler warning on Mac OS X 10.5.
|
||||
Solution: Don't redeclare sigaltstack(). (Hisashi T Fujinaka)
|
||||
Files: src/os_unix.c
|
||||
|
||||
|
||||
*** ../vim-7.1.089/src/os_unix.c Sat Aug 11 22:22:56 2007
|
||||
--- src/os_unix.c Wed Aug 22 22:28:48 2007
|
||||
***************
|
||||
*** 753,759 ****
|
||||
if (signal_stack != NULL)
|
||||
{
|
||||
# ifdef HAVE_SIGALTSTACK
|
||||
! # ifdef __APPLE__
|
||||
/* missing prototype. Adding it to osdef?.h.in doesn't work, because
|
||||
* "struct sigaltstack" needs to be declared. */
|
||||
extern int sigaltstack __ARGS((const struct sigaltstack *ss, struct sigaltstack *oss));
|
||||
--- 753,760 ----
|
||||
if (signal_stack != NULL)
|
||||
{
|
||||
# ifdef HAVE_SIGALTSTACK
|
||||
! # if defined(__APPLE__) && (!defined(MAC_OS_X_VERSION_MAX_ALLOWED) \
|
||||
! || MAC_OS_X_VERSION_MAX_ALLOWED <= 1040)
|
||||
/* missing prototype. Adding it to osdef?.h.in doesn't work, because
|
||||
* "struct sigaltstack" needs to be declared. */
|
||||
extern int sigaltstack __ARGS((const struct sigaltstack *ss, struct sigaltstack *oss));
|
||||
***************
|
||||
*** 5688,5694 ****
|
||||
|
||||
/*
|
||||
* Closes connection to gpm
|
||||
! * returns non-zero if connection succesfully closed
|
||||
*/
|
||||
static void
|
||||
gpm_close()
|
||||
--- 5689,5695 ----
|
||||
|
||||
/*
|
||||
* Closes connection to gpm
|
||||
! * returns non-zero if connection successfully closed
|
||||
*/
|
||||
static void
|
||||
gpm_close()
|
||||
*** ../vim-7.1.089/src/version.c Thu Aug 30 11:10:38 2007
|
||||
--- src/version.c Thu Aug 30 11:46:07 2007
|
||||
***************
|
||||
*** 668,669 ****
|
||||
--- 668,671 ----
|
||||
{ /* Add new patch number below this line */
|
||||
+ /**/
|
||||
+ 90,
|
||||
/**/
|
||||
|
||||
--
|
||||
We're knights of the round table
|
||||
We dance whene'er we're able
|
||||
We do routines and chorus scenes
|
||||
With footwork impeccable.
|
||||
We dine well here in Camelot
|
||||
We eat ham and jam and spam a lot.
|
||||
"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 ///
|
355
7.1.091
355
7.1.091
@ -1,355 +0,0 @@
|
||||
To: vim-dev@vim.org
|
||||
Subject: patch 7.1.091 (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.1.091 (extra)
|
||||
Problem: Win32: Can't embed Vim inside another application.
|
||||
Solution: Add the --windowid argument. (Nageshwar)
|
||||
Files: runtime/doc/gui_w32.txt, runtime/doc/starting.txt,
|
||||
runtime/doc/vi_diff.txt, src/globals.h, src/gui_w32.c, src/main.c
|
||||
|
||||
|
||||
*** ../vim-7.1.090/runtime/doc/gui_w32.txt Sat May 12 15:35:53 2007
|
||||
--- runtime/doc/gui_w32.txt Tue Aug 14 17:32:27 2007
|
||||
***************
|
||||
*** 1,4 ****
|
||||
! *gui_w32.txt* For Vim version 7.1. Last change: 2007 May 03
|
||||
|
||||
|
||||
VIM REFERENCE MANUAL by Bram Moolenaar
|
||||
--- 1,4 ----
|
||||
! *gui_w32.txt* For Vim version 7.1. Last change: 2007 Aug 14
|
||||
|
||||
|
||||
VIM REFERENCE MANUAL by Bram Moolenaar
|
||||
***************
|
||||
*** 52,57 ****
|
||||
--- 52,67 ----
|
||||
*gui-w32s*
|
||||
There is a specific version of gvim.exe that runs under the Win32s subsystem
|
||||
of Windows 3.1 or 3.11. See |win32s|.
|
||||
+
|
||||
+
|
||||
+ Using Vim as a plugin *gui-w32-windowid*
|
||||
+
|
||||
+ When gvim starts up normally, it creates its own top level window. If you
|
||||
+ pass Vim the command-line option |--windowid| with a decimal or hexadecimal
|
||||
+ value, Vim will create a window that is a child of the window with the given
|
||||
+ ID. This enables Vim to act as a plugin in another application. This really
|
||||
+ is a programmer's interface, and is of no use without a supporting application
|
||||
+ to spawn Vim correctly.
|
||||
|
||||
==============================================================================
|
||||
2. Vim as default editor *vim-default-editor*
|
||||
*** ../vim-7.1.090/runtime/doc/starting.txt Sat May 12 16:56:17 2007
|
||||
--- runtime/doc/starting.txt Tue Aug 14 17:34:22 2007
|
||||
***************
|
||||
*** 1,4 ****
|
||||
! *starting.txt* For Vim version 7.1. Last change: 2007 May 12
|
||||
|
||||
|
||||
VIM REFERENCE MANUAL by Bram Moolenaar
|
||||
--- 1,4 ----
|
||||
! *starting.txt* For Vim version 7.1. Last change: 2007 Aug 14
|
||||
|
||||
|
||||
VIM REFERENCE MANUAL by Bram Moolenaar
|
||||
***************
|
||||
*** 547,552 ****
|
||||
--- 547,557 ----
|
||||
GTK+ GUI Vim only. Make gvim try to use GtkPlug mechanism, so
|
||||
that it runs inside another window. See |gui-gtk-socketid|
|
||||
for details. {not in Vi}
|
||||
+
|
||||
+ --windowid {id} *--windowid*
|
||||
+ Win32 GUI Vim only. Make gvim try to use the window {id} as a
|
||||
+ parent, so that it runs inside that window. See
|
||||
+ |gui-w32-windowid| for details. {not in Vi}
|
||||
|
||||
--echo-wid *--echo-wid*
|
||||
GTK+ GUI Vim only. Make gvim echo the Window ID on stdout,
|
||||
*** ../vim-7.1.090/runtime/doc/vi_diff.txt Sat May 12 14:54:28 2007
|
||||
--- runtime/doc/vi_diff.txt Tue Aug 14 17:35:10 2007
|
||||
***************
|
||||
*** 1,4 ****
|
||||
! *vi_diff.txt* For Vim version 7.1. Last change: 2007 May 07
|
||||
|
||||
|
||||
VIM REFERENCE MANUAL by Bram Moolenaar
|
||||
--- 1,4 ----
|
||||
! *vi_diff.txt* For Vim version 7.1. Last change: 2007 Aug 14
|
||||
|
||||
|
||||
VIM REFERENCE MANUAL by Bram Moolenaar
|
||||
***************
|
||||
*** 826,831 ****
|
||||
--- 826,833 ----
|
||||
--servername {name} Vim: Specify Vim server name
|
||||
|
||||
--socketid {id} Vim: GTK window socket to run Vim in
|
||||
+
|
||||
+ --windowid {id} Vim: Win32 window ID to run Vim in
|
||||
|
||||
--version Vim: show version message and exit.
|
||||
|
||||
*** ../vim-7.1.090/src/globals.h Thu May 10 19:26:02 2007
|
||||
--- src/globals.h Wed Aug 29 22:27:45 2007
|
||||
***************
|
||||
*** 876,882 ****
|
||||
EXTERN int no_mapping INIT(= FALSE); /* currently no mapping allowed */
|
||||
EXTERN int no_zero_mapping INIT(= 0); /* mapping zero not allowed */
|
||||
EXTERN int allow_keys INIT(= FALSE); /* allow key codes when no_mapping
|
||||
! * is set */
|
||||
EXTERN int no_u_sync INIT(= 0); /* Don't call u_sync() */
|
||||
|
||||
EXTERN int restart_edit INIT(= 0); /* call edit when next cmd finished */
|
||||
--- 876,882 ----
|
||||
EXTERN int no_mapping INIT(= FALSE); /* currently no mapping allowed */
|
||||
EXTERN int no_zero_mapping INIT(= 0); /* mapping zero not allowed */
|
||||
EXTERN int allow_keys INIT(= FALSE); /* allow key codes when no_mapping
|
||||
! * is set */
|
||||
EXTERN int no_u_sync INIT(= 0); /* Don't call u_sync() */
|
||||
|
||||
EXTERN int restart_edit INIT(= 0); /* call edit when next cmd finished */
|
||||
***************
|
||||
*** 1250,1255 ****
|
||||
--- 1250,1263 ----
|
||||
#ifdef FEAT_GUI_GTK
|
||||
EXTERN guint32 gtk_socket_id INIT(= 0);
|
||||
EXTERN int echo_wid_arg INIT(= FALSE); /* --echo-wid argument */
|
||||
+ #endif
|
||||
+
|
||||
+ #ifdef FEAT_GUI_W32
|
||||
+ /*
|
||||
+ * The value of the --windowid argument.
|
||||
+ * For embedding gvim inside another application.
|
||||
+ */
|
||||
+ EXTERN int win_socket_id INIT(= 0);
|
||||
#endif
|
||||
|
||||
#if defined(FEAT_CLIENTSERVER) || defined(FEAT_EVAL)
|
||||
*** ../vim-7.1.090/src/gui_w32.c Tue Aug 14 16:57:04 2007
|
||||
--- src/gui_w32.c Tue Aug 14 17:13:41 2007
|
||||
***************
|
||||
*** 23,28 ****
|
||||
--- 23,30 ----
|
||||
* e.g., replace LONG with LONG_PTR, etc.
|
||||
*/
|
||||
|
||||
+ #include "vim.h"
|
||||
+
|
||||
/*
|
||||
* These are new in Windows ME/XP, only defined in recent compilers.
|
||||
*/
|
||||
***************
|
||||
*** 1432,1447 ****
|
||||
}
|
||||
}
|
||||
else
|
||||
! /* Open toplevel window. */
|
||||
s_hwnd = CreateWindow(
|
||||
! szVimWndClass, "Vim MSWindows GUI",
|
||||
! WS_OVERLAPPEDWINDOW,
|
||||
! gui_win_x == -1 ? CW_USEDEFAULT : gui_win_x,
|
||||
! gui_win_y == -1 ? CW_USEDEFAULT : gui_win_y,
|
||||
! 100, /* Any value will do */
|
||||
! 100, /* Any value will do */
|
||||
! NULL, NULL,
|
||||
! s_hinst, NULL);
|
||||
|
||||
if (s_hwnd == NULL)
|
||||
return FAIL;
|
||||
--- 1434,1462 ----
|
||||
}
|
||||
}
|
||||
else
|
||||
! {
|
||||
! /* If the provided windowid is not valid reset it to zero, so that it
|
||||
! * is ignored and we open our own window. */
|
||||
! if (IsWindow((HWND)win_socket_id) <= 0)
|
||||
! win_socket_id = 0;
|
||||
!
|
||||
! /* Create a window. If win_socket_id is not zero without border and
|
||||
! * titlebar, it will be reparented below. */
|
||||
s_hwnd = CreateWindow(
|
||||
! szVimWndClass, "Vim MSWindows GUI",
|
||||
! win_socket_id == 0 ? WS_OVERLAPPEDWINDOW : WS_POPUP,
|
||||
! gui_win_x == -1 ? CW_USEDEFAULT : gui_win_x,
|
||||
! gui_win_y == -1 ? CW_USEDEFAULT : gui_win_y,
|
||||
! 100, /* Any value will do */
|
||||
! 100, /* Any value will do */
|
||||
! NULL, NULL,
|
||||
! s_hinst, NULL);
|
||||
! if (s_hwnd != NULL && win_socket_id != 0)
|
||||
! {
|
||||
! SetParent(s_hwnd, (HWND)win_socket_id);
|
||||
! ShowWindow(s_hwnd, SW_SHOWMAXIMIZED);
|
||||
! }
|
||||
! }
|
||||
|
||||
if (s_hwnd == NULL)
|
||||
return FAIL;
|
||||
*** ../vim-7.1.090/src/main.c Fri Aug 10 21:32:41 2007
|
||||
--- src/main.c Tue Aug 14 17:22:52 2007
|
||||
***************
|
||||
*** 275,280 ****
|
||||
--- 275,281 ----
|
||||
* -display or --display
|
||||
* --server...
|
||||
* --socketid
|
||||
+ * --windowid
|
||||
*/
|
||||
early_arg_scan(¶ms);
|
||||
|
||||
***************
|
||||
*** 1489,1495 ****
|
||||
* Get the name of the display, before gui_prepare() removes it from
|
||||
* argv[]. Used for the xterm-clipboard display.
|
||||
*
|
||||
! * Also find the --server... arguments and --socketid
|
||||
*/
|
||||
/*ARGSUSED*/
|
||||
static void
|
||||
--- 1490,1496 ----
|
||||
* Get the name of the display, before gui_prepare() removes it from
|
||||
* argv[]. Used for the xterm-clipboard display.
|
||||
*
|
||||
! * Also find the --server... arguments and --socketid and --windowid
|
||||
*/
|
||||
/*ARGSUSED*/
|
||||
static void
|
||||
***************
|
||||
*** 1536,1559 ****
|
||||
# endif
|
||||
}
|
||||
# endif
|
||||
! # ifdef FEAT_GUI_GTK
|
||||
else if (STRICMP(argv[i], "--socketid") == 0)
|
||||
{
|
||||
! unsigned int socket_id;
|
||||
int count;
|
||||
|
||||
if (i == argc - 1)
|
||||
mainerr_arg_missing((char_u *)argv[i]);
|
||||
if (STRNICMP(argv[i+1], "0x", 2) == 0)
|
||||
! count = sscanf(&(argv[i + 1][2]), "%x", &socket_id);
|
||||
else
|
||||
! count = sscanf(argv[i+1], "%u", &socket_id);
|
||||
if (count != 1)
|
||||
mainerr(ME_INVALID_ARG, (char_u *)argv[i]);
|
||||
else
|
||||
! gtk_socket_id = socket_id;
|
||||
i++;
|
||||
}
|
||||
else if (STRICMP(argv[i], "--echo-wid") == 0)
|
||||
echo_wid_arg = TRUE;
|
||||
# endif
|
||||
--- 1537,1571 ----
|
||||
# endif
|
||||
}
|
||||
# endif
|
||||
!
|
||||
! # if defined(FEAT_GUI_GTK) || defined(FEAT_GUI_W32)
|
||||
! # ifdef FEAT_GUI_W32
|
||||
! else if (STRICMP(argv[i], "--windowid") == 0)
|
||||
! # else
|
||||
else if (STRICMP(argv[i], "--socketid") == 0)
|
||||
+ # endif
|
||||
{
|
||||
! unsigned int id;
|
||||
int count;
|
||||
|
||||
if (i == argc - 1)
|
||||
mainerr_arg_missing((char_u *)argv[i]);
|
||||
if (STRNICMP(argv[i+1], "0x", 2) == 0)
|
||||
! count = sscanf(&(argv[i + 1][2]), "%x", &id);
|
||||
else
|
||||
! count = sscanf(argv[i+1], "%u", &id);
|
||||
if (count != 1)
|
||||
mainerr(ME_INVALID_ARG, (char_u *)argv[i]);
|
||||
else
|
||||
! # ifdef FEAT_GUI_W32
|
||||
! win_socket_id = id;
|
||||
! # else
|
||||
! gtk_socket_id = id;
|
||||
! # endif
|
||||
i++;
|
||||
}
|
||||
+ # endif
|
||||
+ # ifdef FEAT_GUI_GTK
|
||||
else if (STRICMP(argv[i], "--echo-wid") == 0)
|
||||
echo_wid_arg = TRUE;
|
||||
# endif
|
||||
***************
|
||||
*** 1683,1690 ****
|
||||
}
|
||||
}
|
||||
#endif
|
||||
! #ifdef FEAT_GUI_GTK
|
||||
else if (STRNICMP(argv[0] + argv_idx, "socketid", 8) == 0)
|
||||
{
|
||||
/* already processed -- snatch the following arg */
|
||||
if (argc > 1)
|
||||
--- 1695,1706 ----
|
||||
}
|
||||
}
|
||||
#endif
|
||||
! #if defined(FEAT_GUI_GTK) || defined(FEAT_GUI_W32)
|
||||
! # ifdef FEAT_GUI_GTK
|
||||
else if (STRNICMP(argv[0] + argv_idx, "socketid", 8) == 0)
|
||||
+ # else
|
||||
+ else if (STRNICMP(argv[0] + argv_idx, "windowid", 8) == 0)
|
||||
+ # endif
|
||||
{
|
||||
/* already processed -- snatch the following arg */
|
||||
if (argc > 1)
|
||||
***************
|
||||
*** 1693,1698 ****
|
||||
--- 1709,1716 ----
|
||||
++argv;
|
||||
}
|
||||
}
|
||||
+ #endif
|
||||
+ #ifdef FEAT_GUI_GTK
|
||||
else if (STRNICMP(argv[0] + argv_idx, "echo-wid", 8) == 0)
|
||||
{
|
||||
/* already processed, skip */
|
||||
***************
|
||||
*** 3120,3125 ****
|
||||
--- 3138,3144 ----
|
||||
#endif
|
||||
#ifdef FEAT_GUI_W32
|
||||
main_msg(_("-P <parent title>\tOpen Vim inside parent application"));
|
||||
+ main_msg(_("--windowid <HWND>\tOpen Vim inside another win32 widget"));
|
||||
#endif
|
||||
|
||||
#ifdef FEAT_GUI_GNOME
|
||||
*** ../vim-7.1.090/src/version.c Thu Aug 30 11:46:46 2007
|
||||
--- src/version.c Thu Aug 30 12:21:02 2007
|
||||
***************
|
||||
*** 668,669 ****
|
||||
--- 668,671 ----
|
||||
{ /* Add new patch number below this line */
|
||||
+ /**/
|
||||
+ 91,
|
||||
/**/
|
||||
|
||||
--
|
||||
We're knights of the Round Table
|
||||
Our shows are formidable
|
||||
But many times
|
||||
We're given rhymes
|
||||
That are quite unsingable
|
||||
We're opera mad in Camelot
|
||||
We sing from the diaphragm a lot.
|
||||
"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 ///
|
92
7.1.092
92
7.1.092
@ -1,92 +0,0 @@
|
||||
To: vim-dev@vim.org
|
||||
Subject: patch 7.1.092 (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.1.092 (extra, after 7.1.088)
|
||||
Problem: Wrong arguments for MoveWindowStructure().
|
||||
Solution: Remove "TRUE". (Michael Henry)
|
||||
Files: src/gui_mac.c
|
||||
|
||||
|
||||
*** ../vim-7.1.091/src/gui_mac.c Thu Aug 30 10:34:19 2007
|
||||
--- src/gui_mac.c Thu Aug 30 12:48:41 2007
|
||||
***************
|
||||
*** 3149,3155 ****
|
||||
/* TODO: Should make sure the window is move within range
|
||||
* e.g.: y > ~16 [Menu bar], x > 0, x < screen width
|
||||
*/
|
||||
! MoveWindowStructure(gui.VimWindow, x, y, TRUE);
|
||||
}
|
||||
|
||||
void
|
||||
--- 3149,3155 ----
|
||||
/* TODO: Should make sure the window is move within range
|
||||
* e.g.: y > ~16 [Menu bar], x > 0, x < screen width
|
||||
*/
|
||||
! MoveWindowStructure(gui.VimWindow, x, y);
|
||||
}
|
||||
|
||||
void
|
||||
***************
|
||||
*** 5293,5299 ****
|
||||
short itemType;
|
||||
short useIcon;
|
||||
short width;
|
||||
! short totalButtonWidth = 0; /* the width of all button together
|
||||
including spacing */
|
||||
short widestButton = 0;
|
||||
short dfltButtonEdge = 20; /* gut feeling */
|
||||
--- 5293,5299 ----
|
||||
short itemType;
|
||||
short useIcon;
|
||||
short width;
|
||||
! short totalButtonWidth = 0; /* the width of all buttons together
|
||||
including spacing */
|
||||
short widestButton = 0;
|
||||
short dfltButtonEdge = 20; /* gut feeling */
|
||||
***************
|
||||
*** 5483,5489 ****
|
||||
{
|
||||
|
||||
macMoveDialogItem(theDialog, button, buttonItm.box.left, buttonItm.box.top, &box);
|
||||
! /* With vertical, it's better to have all button the same lenght */
|
||||
if (vertical)
|
||||
{
|
||||
macSizeDialogItem(theDialog, button, widestButton, 0);
|
||||
--- 5483,5489 ----
|
||||
{
|
||||
|
||||
macMoveDialogItem(theDialog, button, buttonItm.box.left, buttonItm.box.top, &box);
|
||||
! /* With vertical, it's better to have all buttons the same length */
|
||||
if (vertical)
|
||||
{
|
||||
macSizeDialogItem(theDialog, button, widestButton, 0);
|
||||
*** ../vim-7.1.091/src/version.c Thu Aug 30 12:24:21 2007
|
||||
--- src/version.c Thu Aug 30 12:47:24 2007
|
||||
***************
|
||||
*** 668,669 ****
|
||||
--- 668,671 ----
|
||||
{ /* Add new patch number below this line */
|
||||
+ /**/
|
||||
+ 92,
|
||||
/**/
|
||||
|
||||
--
|
||||
In war we're tough and able.
|
||||
Quite indefatigable
|
||||
Between our quests
|
||||
We sequin vests
|
||||
And impersonate Clark Gable
|
||||
It's a busy life in Camelot.
|
||||
I have to push the pram a lot.
|
||||
"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 ///
|
551
7.1.093
551
7.1.093
@ -1,551 +0,0 @@
|
||||
To: vim-dev@vim.org
|
||||
Subject: patch 7.1.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.1.093
|
||||
Problem: Reading past end of a screen line when determining cell width.
|
||||
(Dominique Pelle)
|
||||
Solution: Add an argument to mb_off2cells() for the maximum offset.
|
||||
Files: src/globals.h, src/gui.c, src/mbyte.c, src/proto/mbyte.pro,
|
||||
src/screen.c
|
||||
|
||||
|
||||
*** ../vim-7.1.092/src/globals.h Thu Aug 30 12:24:21 2007
|
||||
--- src/globals.h Wed Aug 29 22:27:45 2007
|
||||
***************
|
||||
*** 801,807 ****
|
||||
EXTERN int (*mb_char2bytes) __ARGS((int c, char_u *buf)) INIT(= latin_char2bytes);
|
||||
EXTERN int (*mb_ptr2cells) __ARGS((char_u *p)) INIT(= latin_ptr2cells);
|
||||
EXTERN int (*mb_char2cells) __ARGS((int c)) INIT(= latin_char2cells);
|
||||
! EXTERN int (*mb_off2cells) __ARGS((unsigned off)) INIT(= latin_off2cells);
|
||||
EXTERN int (*mb_ptr2char) __ARGS((char_u *p)) INIT(= latin_ptr2char);
|
||||
EXTERN int (*mb_head_off) __ARGS((char_u *base, char_u *p)) INIT(= latin_head_off);
|
||||
|
||||
--- 801,807 ----
|
||||
EXTERN int (*mb_char2bytes) __ARGS((int c, char_u *buf)) INIT(= latin_char2bytes);
|
||||
EXTERN int (*mb_ptr2cells) __ARGS((char_u *p)) INIT(= latin_ptr2cells);
|
||||
EXTERN int (*mb_char2cells) __ARGS((int c)) INIT(= latin_char2cells);
|
||||
! EXTERN int (*mb_off2cells) __ARGS((unsigned off, unsigned max_off)) INIT(= latin_off2cells);
|
||||
EXTERN int (*mb_ptr2char) __ARGS((char_u *p)) INIT(= latin_ptr2char);
|
||||
EXTERN int (*mb_head_off) __ARGS((char_u *base, char_u *p)) INIT(= latin_head_off);
|
||||
|
||||
*** ../vim-7.1.092/src/gui.c Wed Aug 15 20:07:53 2007
|
||||
--- src/gui.c Wed Aug 29 22:16:51 2007
|
||||
***************
|
||||
*** 1080,1086 ****
|
||||
cur_width = gui.char_width;
|
||||
}
|
||||
#ifdef FEAT_MBYTE
|
||||
! if (has_mbyte && (*mb_off2cells)(LineOffset[gui.row] + gui.col) > 1)
|
||||
{
|
||||
/* Double wide character. */
|
||||
if (shape_table[idx].shape != SHAPE_VER)
|
||||
--- 1080,1087 ----
|
||||
cur_width = gui.char_width;
|
||||
}
|
||||
#ifdef FEAT_MBYTE
|
||||
! if (has_mbyte && (*mb_off2cells)(LineOffset[gui.row] + gui.col,
|
||||
! LineOffset[gui.row] + screen_Columns) > 1)
|
||||
{
|
||||
/* Double wide character. */
|
||||
if (shape_table[idx].shape != SHAPE_VER)
|
||||
***************
|
||||
*** 1159,1165 ****
|
||||
#endif
|
||||
|
||||
# if defined(FEAT_GUI_TABLINE) && (defined(FEAT_GUI_MSWIN) \
|
||||
! || defined(FEAT_GUI_MOTIF) || defined(FEAT_GUI_MAC))
|
||||
if (gui_has_tabline())
|
||||
text_area_y += gui.tabline_height;
|
||||
#endif
|
||||
--- 1160,1166 ----
|
||||
#endif
|
||||
|
||||
# if defined(FEAT_GUI_TABLINE) && (defined(FEAT_GUI_MSWIN) \
|
||||
! || defined(FEAT_GUI_MOTIF) || defined(FEAT_GUI_MAC))
|
||||
if (gui_has_tabline())
|
||||
text_area_y += gui.tabline_height;
|
||||
#endif
|
||||
*** ../vim-7.1.092/src/mbyte.c Sat Aug 11 13:57:31 2007
|
||||
--- src/mbyte.c Thu Aug 30 13:48:30 2007
|
||||
***************
|
||||
*** 1310,1329 ****
|
||||
/*
|
||||
* mb_off2cells() function pointer.
|
||||
* Return number of display cells for char at ScreenLines[off].
|
||||
! * Caller must make sure "off" and "off + 1" are valid!
|
||||
*/
|
||||
/*ARGSUSED*/
|
||||
int
|
||||
! latin_off2cells(off)
|
||||
unsigned off;
|
||||
{
|
||||
return 1;
|
||||
}
|
||||
|
||||
int
|
||||
! dbcs_off2cells(off)
|
||||
unsigned off;
|
||||
{
|
||||
/* Number of cells is equal to number of bytes, except for euc-jp when
|
||||
* the first byte is 0x8e. */
|
||||
if (enc_dbcs == DBCS_JPNU && ScreenLines[off] == 0x8e)
|
||||
--- 1310,1335 ----
|
||||
/*
|
||||
* mb_off2cells() function pointer.
|
||||
* Return number of display cells for char at ScreenLines[off].
|
||||
! * We make sure that the offset used is less than "max_off".
|
||||
*/
|
||||
/*ARGSUSED*/
|
||||
int
|
||||
! latin_off2cells(off, max_off)
|
||||
unsigned off;
|
||||
+ unsigned max_off;
|
||||
{
|
||||
return 1;
|
||||
}
|
||||
|
||||
int
|
||||
! dbcs_off2cells(off, max_off)
|
||||
unsigned off;
|
||||
+ unsigned max_off;
|
||||
{
|
||||
+ /* never check beyond end of the line */
|
||||
+ if (off >= max_off)
|
||||
+ return 1;
|
||||
+
|
||||
/* Number of cells is equal to number of bytes, except for euc-jp when
|
||||
* the first byte is 0x8e. */
|
||||
if (enc_dbcs == DBCS_JPNU && ScreenLines[off] == 0x8e)
|
||||
***************
|
||||
*** 1332,1341 ****
|
||||
}
|
||||
|
||||
int
|
||||
! utf_off2cells(off)
|
||||
unsigned off;
|
||||
{
|
||||
! return ScreenLines[off + 1] == 0 ? 2 : 1;
|
||||
}
|
||||
|
||||
/*
|
||||
--- 1338,1348 ----
|
||||
}
|
||||
|
||||
int
|
||||
! utf_off2cells(off, max_off)
|
||||
unsigned off;
|
||||
+ unsigned max_off;
|
||||
{
|
||||
! return (off + 1 < max_off && ScreenLines[off + 1] == 0) ? 2 : 1;
|
||||
}
|
||||
|
||||
/*
|
||||
***************
|
||||
*** 2899,2910 ****
|
||||
if (composing_hangul)
|
||||
return TRUE;
|
||||
#endif
|
||||
! if (enc_dbcs != 0)
|
||||
! return dbcs_off2cells(LineOffset[row] + col) > 1;
|
||||
! if (enc_utf8)
|
||||
! return (col + 1 < Columns
|
||||
! && ScreenLines[LineOffset[row] + col + 1] == 0);
|
||||
! return FALSE;
|
||||
}
|
||||
|
||||
# if defined(FEAT_CLIPBOARD) || defined(FEAT_GUI) || defined(FEAT_RIGHTLEFT) \
|
||||
--- 2906,2913 ----
|
||||
if (composing_hangul)
|
||||
return TRUE;
|
||||
#endif
|
||||
! return (*mb_off2cells)(LineOffset[row] + col,
|
||||
! LineOffset[row] + screen_Columns) > 1;
|
||||
}
|
||||
|
||||
# if defined(FEAT_CLIPBOARD) || defined(FEAT_GUI) || defined(FEAT_RIGHTLEFT) \
|
||||
*** ../vim-7.1.092/src/proto/mbyte.pro Sat May 5 20:02:52 2007
|
||||
--- src/proto/mbyte.pro Wed Aug 29 20:49:02 2007
|
||||
***************
|
||||
*** 12,20 ****
|
||||
int utf_ptr2cells __ARGS((char_u *p));
|
||||
int dbcs_ptr2cells __ARGS((char_u *p));
|
||||
int latin_char2cells __ARGS((int c));
|
||||
! int latin_off2cells __ARGS((unsigned off));
|
||||
! int dbcs_off2cells __ARGS((unsigned off));
|
||||
! int utf_off2cells __ARGS((unsigned off));
|
||||
int latin_ptr2char __ARGS((char_u *p));
|
||||
int utf_ptr2char __ARGS((char_u *p));
|
||||
int mb_ptr2char_adv __ARGS((char_u **pp));
|
||||
--- 12,20 ----
|
||||
int utf_ptr2cells __ARGS((char_u *p));
|
||||
int dbcs_ptr2cells __ARGS((char_u *p));
|
||||
int latin_char2cells __ARGS((int c));
|
||||
! int latin_off2cells __ARGS((unsigned off, unsigned max_off));
|
||||
! int dbcs_off2cells __ARGS((unsigned off, unsigned max_off));
|
||||
! int utf_off2cells __ARGS((unsigned off, unsigned max_off));
|
||||
int latin_ptr2char __ARGS((char_u *p));
|
||||
int utf_ptr2char __ARGS((char_u *p));
|
||||
int mb_ptr2char_adv __ARGS((char_u **pp));
|
||||
*** ../vim-7.1.092/src/screen.c Sun Aug 5 20:10:16 2007
|
||||
--- src/screen.c Thu Aug 30 10:31:26 2007
|
||||
***************
|
||||
*** 1024,1030 ****
|
||||
type = VALID;
|
||||
}
|
||||
|
||||
! /* Trick: we want to avoid clearning the screen twice. screenclear() will
|
||||
* set "screen_cleared" to TRUE. The special value MAYBE (which is still
|
||||
* non-zero and thus not FALSE) will indicate that screenclear() was not
|
||||
* called. */
|
||||
--- 1024,1030 ----
|
||||
type = VALID;
|
||||
}
|
||||
|
||||
! /* Trick: we want to avoid clearing the screen twice. screenclear() will
|
||||
* set "screen_cleared" to TRUE. The special value MAYBE (which is still
|
||||
* non-zero and thus not FALSE) will indicate that screenclear() was not
|
||||
* called. */
|
||||
***************
|
||||
*** 4632,4638 ****
|
||||
|
||||
/*
|
||||
* At end of screen line and there is more to come: Display the line
|
||||
! * so far. If there is no more to display it is catched above.
|
||||
*/
|
||||
if ((
|
||||
#ifdef FEAT_RIGHTLEFT
|
||||
--- 4632,4638 ----
|
||||
|
||||
/*
|
||||
* At end of screen line and there is more to come: Display the line
|
||||
! * so far. If there is no more to display it is caught above.
|
||||
*/
|
||||
if ((
|
||||
#ifdef FEAT_RIGHTLEFT
|
||||
***************
|
||||
*** 4709,4717 ****
|
||||
#endif
|
||||
#ifdef FEAT_MBYTE
|
||||
&& !(has_mbyte
|
||||
! && ((*mb_off2cells)(LineOffset[screen_row]) == 2
|
||||
|| (*mb_off2cells)(LineOffset[screen_row - 1]
|
||||
! + (int)Columns - 2) == 2))
|
||||
#endif
|
||||
)
|
||||
{
|
||||
--- 4709,4721 ----
|
||||
#endif
|
||||
#ifdef FEAT_MBYTE
|
||||
&& !(has_mbyte
|
||||
! && ((*mb_off2cells)(LineOffset[screen_row],
|
||||
! LineOffset[screen_row] + screen_Columns)
|
||||
! == 2
|
||||
|| (*mb_off2cells)(LineOffset[screen_row - 1]
|
||||
! + (int)Columns - 2,
|
||||
! LineOffset[screen_row] + screen_Columns)
|
||||
! == 2))
|
||||
#endif
|
||||
)
|
||||
{
|
||||
***************
|
||||
*** 4871,4876 ****
|
||||
--- 4875,4884 ----
|
||||
{
|
||||
unsigned off_from;
|
||||
unsigned off_to;
|
||||
+ #ifdef FEAT_MBYTE
|
||||
+ unsigned max_off_from;
|
||||
+ unsigned max_off_to;
|
||||
+ #endif
|
||||
int col = 0;
|
||||
#if defined(FEAT_GUI) || defined(UNIX) || defined(FEAT_VERTSPLIT)
|
||||
int hl;
|
||||
***************
|
||||
*** 4897,4902 ****
|
||||
--- 4905,4914 ----
|
||||
|
||||
off_from = (unsigned)(current_ScreenLine - ScreenLines);
|
||||
off_to = LineOffset[row] + coloff;
|
||||
+ #ifdef FEAT_MBYTE
|
||||
+ max_off_from = off_from + screen_Columns;
|
||||
+ max_off_to = LineOffset[row] + screen_Columns;
|
||||
+ #endif
|
||||
|
||||
#ifdef FEAT_RIGHTLEFT
|
||||
if (rlflag)
|
||||
***************
|
||||
*** 4931,4937 ****
|
||||
{
|
||||
#ifdef FEAT_MBYTE
|
||||
if (has_mbyte && (col + 1 < endcol))
|
||||
! char_cells = (*mb_off2cells)(off_from);
|
||||
else
|
||||
char_cells = 1;
|
||||
#endif
|
||||
--- 4943,4949 ----
|
||||
{
|
||||
#ifdef FEAT_MBYTE
|
||||
if (has_mbyte && (col + 1 < endcol))
|
||||
! char_cells = (*mb_off2cells)(off_from, max_off_from);
|
||||
else
|
||||
char_cells = 1;
|
||||
#endif
|
||||
***************
|
||||
*** 5008,5014 ****
|
||||
* ScreenLinesUC[] is sufficient. */
|
||||
if (char_cells == 1
|
||||
&& col + 1 < endcol
|
||||
! && (*mb_off2cells)(off_to) > 1)
|
||||
{
|
||||
/* Writing a single-cell character over a double-cell
|
||||
* character: need to redraw the next cell. */
|
||||
--- 5020,5026 ----
|
||||
* ScreenLinesUC[] is sufficient. */
|
||||
if (char_cells == 1
|
||||
&& col + 1 < endcol
|
||||
! && (*mb_off2cells)(off_to, max_off_to) > 1)
|
||||
{
|
||||
/* Writing a single-cell character over a double-cell
|
||||
* character: need to redraw the next cell. */
|
||||
***************
|
||||
*** 5017,5024 ****
|
||||
}
|
||||
else if (char_cells == 2
|
||||
&& col + 2 < endcol
|
||||
! && (*mb_off2cells)(off_to) == 1
|
||||
! && (*mb_off2cells)(off_to + 1) > 1)
|
||||
{
|
||||
/* Writing the second half of a double-cell character over
|
||||
* a double-cell character: need to redraw the second
|
||||
--- 5029,5036 ----
|
||||
}
|
||||
else if (char_cells == 2
|
||||
&& col + 2 < endcol
|
||||
! && (*mb_off2cells)(off_to, max_off_to) == 1
|
||||
! && (*mb_off2cells)(off_to + 1, max_off_to) > 1)
|
||||
{
|
||||
/* Writing the second half of a double-cell character over
|
||||
* a double-cell character: need to redraw the second
|
||||
***************
|
||||
*** 5037,5046 ****
|
||||
* char over the left halve of an existing one. */
|
||||
if (has_mbyte && col + char_cells == endcol
|
||||
&& ((char_cells == 1
|
||||
! && (*mb_off2cells)(off_to) > 1)
|
||||
|| (char_cells == 2
|
||||
! && (*mb_off2cells)(off_to) == 1
|
||||
! && (*mb_off2cells)(off_to + 1) > 1)))
|
||||
clear_next = TRUE;
|
||||
#endif
|
||||
|
||||
--- 5049,5058 ----
|
||||
* char over the left halve of an existing one. */
|
||||
if (has_mbyte && col + char_cells == endcol
|
||||
&& ((char_cells == 1
|
||||
! && (*mb_off2cells)(off_to, max_off_to) > 1)
|
||||
|| (char_cells == 2
|
||||
! && (*mb_off2cells)(off_to, max_off_to) == 1
|
||||
! && (*mb_off2cells)(off_to + 1, max_off_to) > 1)))
|
||||
clear_next = TRUE;
|
||||
#endif
|
||||
|
||||
***************
|
||||
*** 5180,5189 ****
|
||||
/* find previous character by counting from first
|
||||
* column and get its width. */
|
||||
unsigned off = LineOffset[row];
|
||||
|
||||
while (off < off_to)
|
||||
{
|
||||
! prev_cells = (*mb_off2cells)(off);
|
||||
off += prev_cells;
|
||||
}
|
||||
}
|
||||
--- 5192,5202 ----
|
||||
/* find previous character by counting from first
|
||||
* column and get its width. */
|
||||
unsigned off = LineOffset[row];
|
||||
+ unsigned max_off = LineOffset[row] + screen_Columns;
|
||||
|
||||
while (off < off_to)
|
||||
{
|
||||
! prev_cells = (*mb_off2cells)(off, max_off);
|
||||
off += prev_cells;
|
||||
}
|
||||
}
|
||||
***************
|
||||
*** 5369,5375 ****
|
||||
static int skip_status_match_char __ARGS((expand_T *xp, char_u *s));
|
||||
|
||||
/*
|
||||
! * Get the lenght of an item as it will be shown in the status line.
|
||||
*/
|
||||
static int
|
||||
status_match_len(xp, s)
|
||||
--- 5382,5388 ----
|
||||
static int skip_status_match_char __ARGS((expand_T *xp, char_u *s));
|
||||
|
||||
/*
|
||||
! * Get the length of an item as it will be shown in the status line.
|
||||
*/
|
||||
static int
|
||||
status_match_len(xp, s)
|
||||
***************
|
||||
*** 5435,5441 ****
|
||||
int row;
|
||||
char_u *buf;
|
||||
int len;
|
||||
! int clen; /* lenght in screen cells */
|
||||
int fillchar;
|
||||
int attr;
|
||||
int i;
|
||||
--- 5448,5454 ----
|
||||
int row;
|
||||
char_u *buf;
|
||||
int len;
|
||||
! int clen; /* length in screen cells */
|
||||
int fillchar;
|
||||
int attr;
|
||||
int i;
|
||||
***************
|
||||
*** 6187,6192 ****
|
||||
--- 6200,6206 ----
|
||||
char_u *ptr = text;
|
||||
int c;
|
||||
#ifdef FEAT_MBYTE
|
||||
+ unsigned max_off;
|
||||
int mbyte_blen = 1;
|
||||
int mbyte_cells = 1;
|
||||
int u8c = 0;
|
||||
***************
|
||||
*** 6203,6208 ****
|
||||
--- 6217,6225 ----
|
||||
return;
|
||||
|
||||
off = LineOffset[row] + col;
|
||||
+ #ifdef FEAT_MBYTE
|
||||
+ max_off = LineOffset[row] + screen_Columns;
|
||||
+ #endif
|
||||
while (col < screen_Columns
|
||||
&& (len < 0 || (int)(ptr - text) < len)
|
||||
&& *ptr != NUL)
|
||||
***************
|
||||
*** 6326,6344 ****
|
||||
else if (has_mbyte
|
||||
&& (len < 0 ? ptr[mbyte_blen] == NUL
|
||||
: ptr + mbyte_blen >= text + len)
|
||||
! && ((mbyte_cells == 1 && (*mb_off2cells)(off) > 1)
|
||||
|| (mbyte_cells == 2
|
||||
! && (*mb_off2cells)(off) == 1
|
||||
! && (*mb_off2cells)(off + 1) > 1)))
|
||||
clear_next_cell = TRUE;
|
||||
|
||||
/* Make sure we never leave a second byte of a double-byte behind,
|
||||
* it confuses mb_off2cells(). */
|
||||
if (enc_dbcs
|
||||
! && ((mbyte_cells == 1 && (*mb_off2cells)(off) > 1)
|
||||
|| (mbyte_cells == 2
|
||||
! && (*mb_off2cells)(off) == 1
|
||||
! && (*mb_off2cells)(off + 1) > 1)))
|
||||
ScreenLines[off + mbyte_blen] = 0;
|
||||
#endif
|
||||
ScreenLines[off] = c;
|
||||
--- 6343,6361 ----
|
||||
else if (has_mbyte
|
||||
&& (len < 0 ? ptr[mbyte_blen] == NUL
|
||||
: ptr + mbyte_blen >= text + len)
|
||||
! && ((mbyte_cells == 1 && (*mb_off2cells)(off, max_off) > 1)
|
||||
|| (mbyte_cells == 2
|
||||
! && (*mb_off2cells)(off, max_off) == 1
|
||||
! && (*mb_off2cells)(off + 1, max_off) > 1)))
|
||||
clear_next_cell = TRUE;
|
||||
|
||||
/* Make sure we never leave a second byte of a double-byte behind,
|
||||
* it confuses mb_off2cells(). */
|
||||
if (enc_dbcs
|
||||
! && ((mbyte_cells == 1 && (*mb_off2cells)(off, max_off) > 1)
|
||||
|| (mbyte_cells == 2
|
||||
! && (*mb_off2cells)(off, max_off) == 1
|
||||
! && (*mb_off2cells)(off + 1, max_off) > 1)))
|
||||
ScreenLines[off + mbyte_blen] = 0;
|
||||
#endif
|
||||
ScreenLines[off] = c;
|
||||
***************
|
||||
*** 6924,6929 ****
|
||||
--- 6941,6949 ----
|
||||
{
|
||||
int r, c;
|
||||
int off;
|
||||
+ #ifdef FEAT_MBYTE
|
||||
+ int max_off;
|
||||
+ #endif
|
||||
|
||||
/* Can't use ScreenLines unless initialized */
|
||||
if (ScreenLines == NULL)
|
||||
***************
|
||||
*** 6934,6943 ****
|
||||
for (r = row; r < row + height; ++r)
|
||||
{
|
||||
off = LineOffset[r];
|
||||
for (c = col; c < col + width; ++c)
|
||||
{
|
||||
#ifdef FEAT_MBYTE
|
||||
! if (enc_dbcs != 0 && dbcs_off2cells(off + c) > 1)
|
||||
{
|
||||
screen_char_2(off + c, r, c);
|
||||
++c;
|
||||
--- 6954,6966 ----
|
||||
for (r = row; r < row + height; ++r)
|
||||
{
|
||||
off = LineOffset[r];
|
||||
+ #ifdef FEAT_MBYTE
|
||||
+ max_off = off + screen_Columns;
|
||||
+ #endif
|
||||
for (c = col; c < col + width; ++c)
|
||||
{
|
||||
#ifdef FEAT_MBYTE
|
||||
! if (enc_dbcs != 0 && dbcs_off2cells(off + c, max_off) > 1)
|
||||
{
|
||||
screen_char_2(off + c, r, c);
|
||||
++c;
|
||||
***************
|
||||
*** 6947,6953 ****
|
||||
{
|
||||
screen_char(off + c, r, c);
|
||||
#ifdef FEAT_MBYTE
|
||||
! if (utf_off2cells(off + c) > 1)
|
||||
++c;
|
||||
#endif
|
||||
}
|
||||
--- 6970,6976 ----
|
||||
{
|
||||
screen_char(off + c, r, c);
|
||||
#ifdef FEAT_MBYTE
|
||||
! if (utf_off2cells(off + c, max_off) > 1)
|
||||
++c;
|
||||
#endif
|
||||
}
|
||||
*** ../vim-7.1.092/src/version.c Thu Aug 30 12:50:00 2007
|
||||
--- src/version.c Thu Aug 30 13:45:25 2007
|
||||
***************
|
||||
*** 668,669 ****
|
||||
--- 668,671 ----
|
||||
{ /* Add new patch number below this line */
|
||||
+ /**/
|
||||
+ 93,
|
||||
/**/
|
||||
|
||||
--
|
||||
There is a fine line between courage and foolishness.
|
||||
Unfortunately, it's not a fence.
|
||||
|
||||
/// 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.1.094
58
7.1.094
@ -1,58 +0,0 @@
|
||||
To: vim-dev@vim.org
|
||||
Subject: patch 7.1.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.1.094
|
||||
Problem: When checking if syntax highlighting is present, looking in the
|
||||
current buffer instead of the specified one.
|
||||
Solution: Use "buf" instead of "curbuf".
|
||||
Files: src/syntax.c
|
||||
|
||||
|
||||
*** ../vim-7.1.093/src/syntax.c Tue Aug 21 17:29:04 2007
|
||||
--- src/syntax.c Wed Aug 29 23:27:52 2007
|
||||
***************
|
||||
*** 5987,5994 ****
|
||||
{
|
||||
return (buf->b_syn_patterns.ga_len != 0
|
||||
|| buf->b_syn_clusters.ga_len != 0
|
||||
! || curbuf->b_keywtab.ht_used > 0
|
||||
! || curbuf->b_keywtab_ic.ht_used > 0);
|
||||
}
|
||||
|
||||
#if defined(FEAT_CMDL_COMPL) || defined(PROTO)
|
||||
--- 5987,5994 ----
|
||||
{
|
||||
return (buf->b_syn_patterns.ga_len != 0
|
||||
|| buf->b_syn_clusters.ga_len != 0
|
||||
! || buf->b_keywtab.ht_used > 0
|
||||
! || buf->b_keywtab_ic.ht_used > 0);
|
||||
}
|
||||
|
||||
#if defined(FEAT_CMDL_COMPL) || defined(PROTO)
|
||||
*** ../vim-7.1.093/src/version.c Thu Aug 30 13:51:52 2007
|
||||
--- src/version.c Thu Aug 30 19:35:52 2007
|
||||
***************
|
||||
*** 668,669 ****
|
||||
--- 668,671 ----
|
||||
{ /* Add new patch number below this line */
|
||||
+ /**/
|
||||
+ 94,
|
||||
/**/
|
||||
|
||||
--
|
||||
MAN: You don't frighten us, English pig-dog! Go and boil your bottoms,
|
||||
son of a silly person. I blow my nose on you, so-called Arthur-king,
|
||||
you and your silly English K...kaniggets.
|
||||
He puts hands to his ears and blows a raspberry.
|
||||
"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 ///
|
210
7.1.095
210
7.1.095
@ -1,210 +0,0 @@
|
||||
To: vim-dev@vim.org
|
||||
Subject: patch 7.1.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.1.095
|
||||
Problem: The FocusLost and FocusGained autocommands are triggered
|
||||
asynchronously in the GUI. This may cause arbitrary problems.
|
||||
Solution: Put the focus event in the input buffer and handle it when ready
|
||||
for it.
|
||||
Files: src/eval.c, src/getchar.c, src/gui.c, src/gui_gtk_x11.c,
|
||||
src/keymap.h
|
||||
|
||||
|
||||
*** ../vim-7.1.094/src/eval.c Thu Aug 30 11:10:38 2007
|
||||
--- src/eval.c Mon Sep 3 22:48:09 2007
|
||||
***************
|
||||
*** 9912,9929 ****
|
||||
|
||||
++no_mapping;
|
||||
++allow_keys;
|
||||
! if (argvars[0].v_type == VAR_UNKNOWN)
|
||||
! /* getchar(): blocking wait. */
|
||||
! n = safe_vgetc();
|
||||
! else if (get_tv_number_chk(&argvars[0], &error) == 1)
|
||||
! /* getchar(1): only check if char avail */
|
||||
! n = vpeekc();
|
||||
! else if (error || vpeekc() == NUL)
|
||||
! /* illegal argument or getchar(0) and no char avail: return zero */
|
||||
! n = 0;
|
||||
! else
|
||||
! /* getchar(0) and char avail: return char */
|
||||
! n = safe_vgetc();
|
||||
--no_mapping;
|
||||
--allow_keys;
|
||||
|
||||
--- 9912,9935 ----
|
||||
|
||||
++no_mapping;
|
||||
++allow_keys;
|
||||
! for (;;)
|
||||
! {
|
||||
! if (argvars[0].v_type == VAR_UNKNOWN)
|
||||
! /* getchar(): blocking wait. */
|
||||
! n = safe_vgetc();
|
||||
! else if (get_tv_number_chk(&argvars[0], &error) == 1)
|
||||
! /* getchar(1): only check if char avail */
|
||||
! n = vpeekc();
|
||||
! else if (error || vpeekc() == NUL)
|
||||
! /* illegal argument or getchar(0) and no char avail: return zero */
|
||||
! n = 0;
|
||||
! else
|
||||
! /* getchar(0) and char avail: return char */
|
||||
! n = safe_vgetc();
|
||||
! if (n == K_IGNORE)
|
||||
! continue;
|
||||
! break;
|
||||
! }
|
||||
--no_mapping;
|
||||
--allow_keys;
|
||||
|
||||
*** ../vim-7.1.094/src/getchar.c Thu May 10 18:43:02 2007
|
||||
--- src/getchar.c Wed Aug 29 22:38:49 2007
|
||||
***************
|
||||
*** 1596,1603 ****
|
||||
continue;
|
||||
}
|
||||
#endif
|
||||
-
|
||||
#ifdef FEAT_GUI
|
||||
/* Translate K_CSI to CSI. The special key is only used to avoid
|
||||
* it being recognized as the start of a special key. */
|
||||
if (c == K_CSI)
|
||||
--- 1596,1610 ----
|
||||
continue;
|
||||
}
|
||||
#endif
|
||||
#ifdef FEAT_GUI
|
||||
+ /* The caller doesn't need to know that the focus event is delayed
|
||||
+ * until getting a character. */
|
||||
+ if (c == K_FOCUSGAINED || c == K_FOCUSLOST)
|
||||
+ {
|
||||
+ ui_focus_change(c == K_FOCUSGAINED);
|
||||
+ continue;
|
||||
+ }
|
||||
+
|
||||
/* Translate K_CSI to CSI. The special key is only used to avoid
|
||||
* it being recognized as the start of a special key. */
|
||||
if (c == K_CSI)
|
||||
*** ../vim-7.1.094/src/gui.c Thu Aug 30 13:51:52 2007
|
||||
--- src/gui.c Thu Aug 30 14:10:48 2007
|
||||
***************
|
||||
*** 4519,4525 ****
|
||||
xim_set_focus(in_focus);
|
||||
# endif
|
||||
|
||||
! ui_focus_change(in_focus);
|
||||
#endif
|
||||
}
|
||||
|
||||
--- 4519,4536 ----
|
||||
xim_set_focus(in_focus);
|
||||
# endif
|
||||
|
||||
! /* Put events in the input queue only when allowed.
|
||||
! * ui_focus_change() isn't called directly, because it invokes
|
||||
! * autocommands and that must not happen asynchronously. */
|
||||
! if (!hold_gui_events)
|
||||
! {
|
||||
! char_u bytes[3];
|
||||
!
|
||||
! bytes[0] = CSI;
|
||||
! bytes[1] = KS_EXTRA;
|
||||
! bytes[2] = in_focus ? (int)KE_FOCUSGAINED : (int)KE_FOCUSLOST;
|
||||
! add_to_input_buf(bytes, 3);
|
||||
! }
|
||||
#endif
|
||||
}
|
||||
|
||||
*** ../vim-7.1.094/src/gui_gtk_x11.c Tue Jun 19 18:07:52 2007
|
||||
--- src/gui_gtk_x11.c Wed Aug 29 22:43:34 2007
|
||||
***************
|
||||
*** 813,822 ****
|
||||
if (blink_state == BLINK_NONE)
|
||||
gui_mch_start_blink();
|
||||
|
||||
! /* make sure keyboard input goes to the draw area (if this is focus for a window) */
|
||||
if (widget != gui.drawarea)
|
||||
gtk_widget_grab_focus(gui.drawarea);
|
||||
|
||||
return TRUE;
|
||||
}
|
||||
|
||||
--- 813,827 ----
|
||||
if (blink_state == BLINK_NONE)
|
||||
gui_mch_start_blink();
|
||||
|
||||
! /* make sure keyboard input goes to the draw area (if this is focus for a
|
||||
! * window) */
|
||||
if (widget != gui.drawarea)
|
||||
gtk_widget_grab_focus(gui.drawarea);
|
||||
|
||||
+ /* make sure the input buffer is read */
|
||||
+ if (gtk_main_level() > 0)
|
||||
+ gtk_main_quit();
|
||||
+
|
||||
return TRUE;
|
||||
}
|
||||
|
||||
***************
|
||||
*** 828,833 ****
|
||||
--- 833,842 ----
|
||||
|
||||
if (blink_state != BLINK_NONE)
|
||||
gui_mch_stop_blink();
|
||||
+
|
||||
+ /* make sure the input buffer is read */
|
||||
+ if (gtk_main_level() > 0)
|
||||
+ gtk_main_quit();
|
||||
|
||||
return TRUE;
|
||||
}
|
||||
*** ../vim-7.1.094/src/keymap.h Sat May 5 19:34:22 2007
|
||||
--- src/keymap.h Wed Aug 29 22:17:51 2007
|
||||
***************
|
||||
*** 254,259 ****
|
||||
--- 254,261 ----
|
||||
, KE_DROP /* DnD data is available */
|
||||
, KE_CURSORHOLD /* CursorHold event */
|
||||
, KE_NOP /* doesn't do something */
|
||||
+ , KE_FOCUSGAINED /* focus gained */
|
||||
+ , KE_FOCUSLOST /* focus lost */
|
||||
};
|
||||
|
||||
/*
|
||||
***************
|
||||
*** 445,450 ****
|
||||
--- 447,454 ----
|
||||
#define K_CMDWIN TERMCAP2KEY(KS_EXTRA, KE_CMDWIN)
|
||||
|
||||
#define K_DROP TERMCAP2KEY(KS_EXTRA, KE_DROP)
|
||||
+ #define K_FOCUSGAINED TERMCAP2KEY(KS_EXTRA, KE_FOCUSGAINED)
|
||||
+ #define K_FOCUSLOST TERMCAP2KEY(KS_EXTRA, KE_FOCUSLOST)
|
||||
|
||||
#define K_CURSORHOLD TERMCAP2KEY(KS_EXTRA, KE_CURSORHOLD)
|
||||
|
||||
*** ../vim-7.1.094/src/version.c Thu Aug 30 19:36:52 2007
|
||||
--- src/version.c Wed Sep 5 21:42:41 2007
|
||||
***************
|
||||
*** 668,669 ****
|
||||
--- 668,671 ----
|
||||
{ /* Add new patch number below this line */
|
||||
+ /**/
|
||||
+ 95,
|
||||
/**/
|
||||
|
||||
--
|
||||
ARTHUR: Who are you?
|
||||
TALL KNIGHT: We are the Knights Who Say "Ni"!
|
||||
BEDEVERE: No! Not the Knights Who Say "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 ///
|
89
7.1.096
89
7.1.096
@ -1,89 +0,0 @@
|
||||
To: vim-dev@vim.org
|
||||
Subject: patch 7.1.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.1.096
|
||||
Problem: Reading past end of a string when resizing Vim. (Dominique Pelle)
|
||||
Solution: Check the string pointer before getting the char it points to.
|
||||
Files: src/message.c
|
||||
|
||||
|
||||
*** ../vim-7.1.095/src/message.c Tue Aug 7 21:59:26 2007
|
||||
--- src/message.c Thu Aug 30 22:53:03 2007
|
||||
***************
|
||||
*** 944,949 ****
|
||||
--- 944,950 ----
|
||||
c = K_IGNORE;
|
||||
}
|
||||
#endif
|
||||
+
|
||||
/*
|
||||
* Allow scrolling back in the messages.
|
||||
* Also accept scroll-down commands when messages fill the screen,
|
||||
***************
|
||||
*** 1840,1845 ****
|
||||
--- 1841,1847 ----
|
||||
char_u *sb_str = str;
|
||||
int sb_col = msg_col;
|
||||
int wrap;
|
||||
+ int did_last_char;
|
||||
|
||||
did_wait_return = FALSE;
|
||||
while ((maxlen < 0 || (int)(s - str) < maxlen) && *s != NUL)
|
||||
***************
|
||||
*** 1909,1915 ****
|
||||
--- 1911,1920 ----
|
||||
else
|
||||
#endif
|
||||
msg_screen_putchar(*s++, attr);
|
||||
+ did_last_char = TRUE;
|
||||
}
|
||||
+ else
|
||||
+ did_last_char = FALSE;
|
||||
|
||||
if (p_more)
|
||||
/* store text for scrolling back */
|
||||
***************
|
||||
*** 1944,1954 ****
|
||||
|
||||
/* When we displayed a char in last column need to check if there
|
||||
* is still more. */
|
||||
! if (*s >= ' '
|
||||
! #ifdef FEAT_RIGHTLEFT
|
||||
! && !cmdmsg_rl
|
||||
! #endif
|
||||
! )
|
||||
continue;
|
||||
}
|
||||
|
||||
--- 1949,1955 ----
|
||||
|
||||
/* When we displayed a char in last column need to check if there
|
||||
* is still more. */
|
||||
! if (did_last_char)
|
||||
continue;
|
||||
}
|
||||
|
||||
*** ../vim-7.1.095/src/version.c Wed Sep 5 21:45:54 2007
|
||||
--- src/version.c Thu Sep 6 12:31:28 2007
|
||||
***************
|
||||
*** 668,669 ****
|
||||
--- 668,671 ----
|
||||
{ /* Add new patch number below this line */
|
||||
+ /**/
|
||||
+ 96,
|
||||
/**/
|
||||
|
||||
--
|
||||
Yah, well, we had to carve our electrons out of driftwood we'd
|
||||
find. In the winter. Uphill. Both ways.
|
||||
|
||||
/// 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 ///
|
51
7.1.097
51
7.1.097
@ -1,51 +0,0 @@
|
||||
To: vim-dev@vim.org
|
||||
Subject: patch 7.1.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.1.097
|
||||
Problem: ":setlocal stl=%!1+1" does not work.
|
||||
Solution: Adjust check for pointer. (Politz)
|
||||
Files: src/option.c
|
||||
|
||||
|
||||
*** ../vim-7.1.096/src/option.c Sun Aug 12 15:50:26 2007
|
||||
--- src/option.c Wed Sep 5 22:34:27 2007
|
||||
***************
|
||||
*** 6348,6354 ****
|
||||
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();
|
||||
--- 6352,6358 ----
|
||||
errmsg = check_stl_option(p_ruf);
|
||||
}
|
||||
/* check 'statusline' only if it doesn't start with "%!" */
|
||||
! else if (varp == &p_ruf || s[0] != '%' || s[1] != '!')
|
||||
errmsg = check_stl_option(s);
|
||||
if (varp == &p_ruf && errmsg == NULL)
|
||||
comp_col();
|
||||
*** ../vim-7.1.096/src/version.c Thu Sep 6 12:53:59 2007
|
||||
--- src/version.c Thu Sep 6 13:31:37 2007
|
||||
***************
|
||||
*** 668,669 ****
|
||||
--- 668,671 ----
|
||||
{ /* Add new patch number below this line */
|
||||
+ /**/
|
||||
+ 97,
|
||||
/**/
|
||||
|
||||
--
|
||||
Not too long ago, cut and paste was done with scissors and glue...
|
||||
|
||||
/// 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.1.098
65
7.1.098
@ -1,65 +0,0 @@
|
||||
To: vim-dev@vim.org
|
||||
Subject: patch 7.1.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.1.098
|
||||
Problem: ":call s:var()" doesn't work if "s:var" is a Funcref. (Andy Wokula)
|
||||
Solution: Before converting "s:" into a script ID, check if it is a Funcref.
|
||||
Files: src/eval.c
|
||||
|
||||
|
||||
*** ../vim-7.1.097/src/eval.c Wed Sep 5 21:45:54 2007
|
||||
--- src/eval.c Thu Sep 6 12:11:19 2007
|
||||
***************
|
||||
*** 19367,19372 ****
|
||||
--- 19367,19394 ----
|
||||
if (lv.ll_name == NULL)
|
||||
{
|
||||
/* Error found, but continue after the function name. */
|
||||
+ *pp = end;
|
||||
+ goto theend;
|
||||
+ }
|
||||
+
|
||||
+ /* Check if the name is a Funcref. If so, use the value. */
|
||||
+ if (lv.ll_exp_name != NULL)
|
||||
+ {
|
||||
+ len = (int)STRLEN(lv.ll_exp_name);
|
||||
+ name = deref_func_name(lv.ll_exp_name, &len);
|
||||
+ if (name == lv.ll_exp_name)
|
||||
+ name = NULL;
|
||||
+ }
|
||||
+ else
|
||||
+ {
|
||||
+ len = (int)(end - *pp);
|
||||
+ name = deref_func_name(*pp, &len);
|
||||
+ if (name == *pp)
|
||||
+ name = NULL;
|
||||
+ }
|
||||
+ if (name != NULL)
|
||||
+ {
|
||||
+ name = vim_strsave(name);
|
||||
*pp = end;
|
||||
goto theend;
|
||||
}
|
||||
*** ../vim-7.1.097/src/version.c Thu Sep 6 13:32:53 2007
|
||||
--- src/version.c Thu Sep 6 14:24:10 2007
|
||||
***************
|
||||
*** 668,669 ****
|
||||
--- 668,671 ----
|
||||
{ /* Add new patch number below this line */
|
||||
+ /**/
|
||||
+ 98,
|
||||
/**/
|
||||
|
||||
--
|
||||
Not too long ago, a program was something you watched on TV...
|
||||
|
||||
/// 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 ///
|
137
7.1.099
137
7.1.099
@ -1,137 +0,0 @@
|
||||
To: vim-dev@vim.org
|
||||
Subject: patch 7.1.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.1.099
|
||||
Problem: When the 'keymap' and 'paste' options have a non-default value,
|
||||
":mkexrc" and ":mksession" do not correctly set the options.
|
||||
Solution: Set the options with side effects before other options.
|
||||
Files: src/option.c
|
||||
|
||||
|
||||
*** ../vim-7.1.098/src/option.c Thu Sep 6 13:32:53 2007
|
||||
--- src/option.c Wed Sep 5 22:34:27 2007
|
||||
***************
|
||||
*** 427,432 ****
|
||||
--- 427,434 ----
|
||||
#define P_NOGLOB 0x100000L/* do not use local value for global vimrc */
|
||||
#define P_NFNAME 0x200000L/* only normal file name chars allowed */
|
||||
#define P_INSECURE 0x400000L/* option was set from a modeline */
|
||||
+ #define P_PRI_MKRC 0x800000L/* priority for :mkvimrc (setting option has
|
||||
+ side effects) */
|
||||
|
||||
#define ISK_LATIN1 (char_u *)"@,48-57,_,192-255"
|
||||
|
||||
***************
|
||||
*** 773,778 ****
|
||||
--- 775,782 ----
|
||||
{(char_u *)0L, (char_u *)0L}
|
||||
#endif
|
||||
},
|
||||
+ /* P_PRI_MKRC isn't needed here, optval_default()
|
||||
+ * always returns TRUE for 'compatible' */
|
||||
{"compatible", "cp", P_BOOL|P_RALL,
|
||||
(char_u *)&p_cp, PV_NONE,
|
||||
{(char_u *)TRUE, (char_u *)FALSE}},
|
||||
***************
|
||||
*** 1515,1521 ****
|
||||
{(char_u *)0L, (char_u *)0L}
|
||||
#endif
|
||||
},
|
||||
! {"keymap", "kmp", P_STRING|P_ALLOCED|P_VI_DEF|P_RBUF|P_RSTAT|P_NFNAME,
|
||||
#ifdef FEAT_KEYMAP
|
||||
(char_u *)&p_keymap, PV_KMAP,
|
||||
{(char_u *)"", (char_u *)0L}
|
||||
--- 1519,1525 ----
|
||||
{(char_u *)0L, (char_u *)0L}
|
||||
#endif
|
||||
},
|
||||
! {"keymap", "kmp", P_STRING|P_ALLOCED|P_VI_DEF|P_RBUF|P_RSTAT|P_NFNAME|P_PRI_MKRC,
|
||||
#ifdef FEAT_KEYMAP
|
||||
(char_u *)&p_keymap, PV_KMAP,
|
||||
{(char_u *)"", (char_u *)0L}
|
||||
***************
|
||||
*** 1836,1842 ****
|
||||
{"paragraphs", "para", P_STRING|P_VI_DEF,
|
||||
(char_u *)&p_para, PV_NONE,
|
||||
{(char_u *)"IPLPPPQPP LIpplpipbp", (char_u *)0L}},
|
||||
! {"paste", NULL, P_BOOL|P_VI_DEF,
|
||||
(char_u *)&p_paste, PV_NONE,
|
||||
{(char_u *)FALSE, (char_u *)0L}},
|
||||
{"pastetoggle", "pt", P_STRING|P_VI_DEF,
|
||||
--- 1840,1846 ----
|
||||
{"paragraphs", "para", P_STRING|P_VI_DEF,
|
||||
(char_u *)&p_para, PV_NONE,
|
||||
{(char_u *)"IPLPPPQPP LIpplpipbp", (char_u *)0L}},
|
||||
! {"paste", NULL, P_BOOL|P_VI_DEF|P_PRI_MKRC,
|
||||
(char_u *)&p_paste, PV_NONE,
|
||||
{(char_u *)FALSE, (char_u *)0L}},
|
||||
{"pastetoggle", "pt", P_STRING|P_VI_DEF,
|
||||
***************
|
||||
*** 8535,8547 ****
|
||||
char_u *varp_local = NULL; /* fresh value */
|
||||
char *cmd;
|
||||
int round;
|
||||
|
||||
/*
|
||||
* The options that don't have a default (terminal name, columns, lines)
|
||||
* are never written. Terminal options are also not written.
|
||||
*/
|
||||
! for (p = &options[0]; !istermoption(p); p++)
|
||||
! if (!(p->flags & P_NO_MKRC) && !istermoption(p))
|
||||
{
|
||||
/* skip global option when only doing locals */
|
||||
if (p->indir == PV_NONE && !(opt_flags & OPT_GLOBAL))
|
||||
--- 8539,8558 ----
|
||||
char_u *varp_local = NULL; /* fresh value */
|
||||
char *cmd;
|
||||
int round;
|
||||
+ int pri;
|
||||
|
||||
/*
|
||||
* The options that don't have a default (terminal name, columns, lines)
|
||||
* are never written. Terminal options are also not written.
|
||||
+ * Do the loop over "options[]" twice: once for options with the
|
||||
+ * P_PRI_MKRC flag and once without.
|
||||
*/
|
||||
! for (pri = 1; pri >= 0; --pri)
|
||||
! {
|
||||
! for (p = &options[0]; !istermoption(p); p++)
|
||||
! if (!(p->flags & P_NO_MKRC)
|
||||
! && !istermoption(p)
|
||||
! && ((pri == 1) == ((p->flags & P_PRI_MKRC) != 0)))
|
||||
{
|
||||
/* skip global option when only doing locals */
|
||||
if (p->indir == PV_NONE && !(opt_flags & OPT_GLOBAL))
|
||||
***************
|
||||
*** 8637,8642 ****
|
||||
--- 8648,8654 ----
|
||||
}
|
||||
}
|
||||
}
|
||||
+ }
|
||||
return OK;
|
||||
}
|
||||
|
||||
*** ../vim-7.1.098/src/version.c Thu Sep 6 14:25:50 2007
|
||||
--- src/version.c Thu Sep 6 16:32:31 2007
|
||||
***************
|
||||
*** 668,669 ****
|
||||
--- 668,671 ----
|
||||
{ /* Add new patch number below this line */
|
||||
+ /**/
|
||||
+ 99,
|
||||
/**/
|
||||
|
||||
--
|
||||
Not too long ago, a keyboard was something to make music with...
|
||||
|
||||
/// 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
Loading…
Reference in New Issue
Block a user