Patch 8.1.1000
Problem: Indenting is off.
Solution: Make indenting consistent and update comments. (Ozaki Kiichi,
closes #4079)
Files: src/getchar.c, src/ops.c
*** ../vim-8.1.0999/src/getchar.c 2019-02-17 17:44:36.207875527 +0100
--- src/getchar.c 2019-03-09 08:53:59.569644721 +0100
***************
*** 1577,1684 ****
}
else
{
! mod_mask = 0x0;
! last_recorded_len = 0;
! for (;;) /* this is done twice if there are
modifiers */
! {
! int did_inc = FALSE;
!
! if (mod_mask
! #if defined(FEAT_XIM) && defined(FEAT_GUI_GTK)
! || im_is_preediting()
! #endif
! )
! {
! /* no mapping after modifier has been read */
! ++no_mapping;
! ++allow_keys;
! did_inc = TRUE; /* mod_mask may change value */
! }
! c = vgetorpeek(TRUE);
! if (did_inc)
{
! --no_mapping;
! --allow_keys;
! }
! /* Get two extra bytes for special keys */
! if (c == K_SPECIAL
! #ifdef FEAT_GUI
! || c == CSI
#endif
! )
! {
! int save_allow_keys = allow_keys;
!
! ++no_mapping;
! allow_keys = 0; /* make sure BS is not found */
! c2 = vgetorpeek(TRUE); /* no mapping for these chars */
c = vgetorpeek(TRUE);
! --no_mapping;
! allow_keys = save_allow_keys;
! if (c2 == KS_MODIFIER)
{
! mod_mask = c;
! continue;
}
- c = TO_SPECIAL(c2, c);
! #if defined(FEAT_GUI_MSWIN) && defined(FEAT_MENU) && defined(FEAT_TEAROFF)
! /* Handle K_TEAROFF here, the caller of vgetc() doesn't need to
! * know that a menu was torn off */
! if (c == K_TEAROFF)
{
! char_u name[200];
! int i;
! /* get menu path, it ends with a <CR> */
! for (i = 0; (c = vgetorpeek(TRUE)) != '\r'; )
{
! name[i] = c;
! if (i < 199)
! ++i;
}
- name[i] = NUL;
- gui_make_tearoff(name);
- continue;
- }
#endif
#if defined(FEAT_GUI) && defined(FEAT_GUI_GTK) && defined(FEAT_MENU)
! /* GTK: <F10> normally selects the menu, but it's passed until
! * here to allow mapping it. Intercept and invoke the GTK
! * behavior if it's not mapped. */
! if (c == K_F10 && gui.menubar != NULL)
! {
! gtk_menu_shell_select_first(GTK_MENU_SHELL(gui.menubar), FALSE);
! continue;
! }
#endif
#ifdef FEAT_GUI
! /* Handle focus event here, so that the caller doesn't need to
! * know about it. Return K_IGNORE so that we loop once (needed if
! * 'lazyredraw' is set). */
! if (c == K_FOCUSGAINED || c == K_FOCUSLOST)
! {
! ui_focus_change(c == K_FOCUSGAINED);
! c = K_IGNORE;
! }
! /* 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)
! c = CSI;
#endif
! }
! /* a keypad or special function key was not mapped, use it like
! * its ASCII equivalent */
! switch (c)
! {
! case K_KPLUS: c = '+'; break;
! case K_KMINUS: c = '-'; break;
! case K_KDIVIDE: c = '/'; break;
! case K_KMULTIPLY: c = '*'; break;
! case K_KENTER: c = CAR; break;
! case K_KPOINT:
#ifdef MSWIN
// Can be either '.' or a ',',
// depending on the type of keypad.
--- 1577,1685 ----
}
else
{
! mod_mask = 0x0;
! last_recorded_len = 0;
! for (;;) // this is done twice if there are modifiers
{
! int did_inc = FALSE;
! if (mod_mask
! #if defined(FEAT_XIM) && defined(FEAT_GUI_GTK)
! || im_is_preediting()
#endif
! )
! {
! // no mapping after modifier has been read
! ++no_mapping;
! ++allow_keys;
! did_inc = TRUE; // mod_mask may change value
! }
c = vgetorpeek(TRUE);
! if (did_inc)
{
! --no_mapping;
! --allow_keys;
}
! // Get two extra bytes for special keys
! if (c == K_SPECIAL
! #ifdef FEAT_GUI
! || c == CSI
! #endif
! )
{
! int save_allow_keys = allow_keys;
! ++no_mapping;
! allow_keys = 0; // make sure BS is not found
! c2 = vgetorpeek(TRUE); // no mapping for these chars
! c = vgetorpeek(TRUE);
! --no_mapping;
! allow_keys = save_allow_keys;
! if (c2 == KS_MODIFIER)
{
! mod_mask = c;
! continue;
! }
! c = TO_SPECIAL(c2, c);
!
! #if defined(FEAT_GUI_MSWIN) && defined(FEAT_MENU) && defined(FEAT_TEAROFF)
! // Handle K_TEAROFF here, the caller of vgetc() doesn't need to
! // know that a menu was torn off
! if (c == K_TEAROFF)
! {
! char_u name[200];
! int i;
!
! // get menu path, it ends with a <CR>
! for (i = 0; (c = vgetorpeek(TRUE)) != '\r'; )
! {
! name[i] = c;
! if (i < 199)
! ++i;
! }
! name[i] = NUL;
! gui_make_tearoff(name);
! continue;
}
#endif
#if defined(FEAT_GUI) && defined(FEAT_GUI_GTK) && defined(FEAT_MENU)
! // GTK: <F10> normally selects the menu, but it's passed until
! // here to allow mapping it. Intercept and invoke the GTK
! // behavior if it's not mapped.
! if (c == K_F10 && gui.menubar != NULL)
! {
! gtk_menu_shell_select_first(
! GTK_MENU_SHELL(gui.menubar), FALSE);
! continue;
! }
#endif
#ifdef FEAT_GUI
! // Handle focus event here, so that the caller doesn't need to
! // know about it. Return K_IGNORE so that we loop once (needed
! // if 'lazyredraw' is set).
! if (c == K_FOCUSGAINED || c == K_FOCUSLOST)
! {
! ui_focus_change(c == K_FOCUSGAINED);
! c = K_IGNORE;
! }
! // 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)
! c = CSI;
#endif
! }
! // a keypad or special function key was not mapped, use it like
! // its ASCII equivalent
! switch (c)
! {
! case K_KPLUS: c = '+'; break;
! case K_KMINUS: c = '-'; break;
! case K_KDIVIDE: c = '/'; break;
! case K_KMULTIPLY: c = '*'; break;
! case K_KENTER: c = CAR; break;
! case K_KPOINT:
#ifdef MSWIN
// Can be either '.' or a ',',
// depending on the type of keypad.
***************
*** 1686,1704 ****
#else
c = '.'; break;
#endif
! case K_K0: c = '0'; break;
! case K_K1: c = '1'; break;
! case K_K2: c = '2'; break;
! case K_K3: c = '3'; break;
! case K_K4: c = '4'; break;
! case K_K5: c = '5'; break;
! case K_K6: c = '6'; break;
! case K_K7: c = '7'; break;
! case K_K8: c = '8'; break;
! case K_K9: c = '9'; break;
! case K_XHOME:
! case K_ZHOME: if (mod_mask == MOD_MASK_SHIFT)
{
c = K_S_HOME;
mod_mask = 0;
--- 1687,1705 ----
#else
c = '.'; break;
#endif
! case K_K0: c = '0'; break;
! case K_K1: c = '1'; break;
! case K_K2: c = '2'; break;
! case K_K3: c = '3'; break;
! case K_K4: c = '4'; break;
! case K_K5: c = '5'; break;
! case K_K6: c = '6'; break;
! case K_K7: c = '7'; break;
! case K_K8: c = '8'; break;
! case K_K9: c = '9'; break;
! case K_XHOME:
! case K_ZHOME: if (mod_mask == MOD_MASK_SHIFT)
{
c = K_S_HOME;
mod_mask = 0;
***************
*** 1711,1718 ****
else
c = K_HOME;
break;
! case K_XEND:
! case K_ZEND: if (mod_mask == MOD_MASK_SHIFT)
{
c = K_S_END;
mod_mask = 0;
--- 1712,1719 ----
else
c = K_HOME;
break;
! case K_XEND:
! case K_ZEND: if (mod_mask == MOD_MASK_SHIFT)
{
c = K_S_END;
mod_mask = 0;
***************
*** 1726,1770 ****
c = K_END;
break;
! case K_XUP: c = K_UP; break;
! case K_XDOWN: c = K_DOWN; break;
! case K_XLEFT: c = K_LEFT; break;
! case K_XRIGHT: c = K_RIGHT; break;
! }
! /* For a multi-byte character get all the bytes and return the
! * converted character.
! * Note: This will loop until enough bytes are received!
! */
! if (has_mbyte && (n = MB_BYTE2LEN_CHECK(c)) > 1)
! {
! ++no_mapping;
! buf[0] = c;
! for (i = 1; i < n; ++i)
{
! buf[i] = vgetorpeek(TRUE);
! if (buf[i] == K_SPECIAL
#ifdef FEAT_GUI
! || buf[i] == CSI
#endif
! )
! {
! /* Must be a K_SPECIAL - KS_SPECIAL - KE_FILLER sequence,
! * which represents a K_SPECIAL (0x80),
! * or a CSI - KS_EXTRA - KE_CSI sequence, which represents
! * a CSI (0x9B),
! * of a K_SPECIAL - KS_EXTRA - KE_CSI, which is CSI too. */
! c = vgetorpeek(TRUE);
! if (vgetorpeek(TRUE) == (int)KE_CSI && c == KS_EXTRA)
! buf[i] = CSI;
}
}
- --no_mapping;
- c = (*mb_ptr2char)(buf);
- }
! break;
! }
}
#ifdef FEAT_EVAL
--- 1727,1771 ----
c = K_END;
break;
! case K_XUP: c = K_UP; break;
! case K_XDOWN: c = K_DOWN; break;
! case K_XLEFT: c = K_LEFT; break;
! case K_XRIGHT: c = K_RIGHT; break;
! }
! // For a multi-byte character get all the bytes and return the
! // converted character.
! // Note: This will loop until enough bytes are received!
! if (has_mbyte && (n = MB_BYTE2LEN_CHECK(c)) > 1)
{
! ++no_mapping;
! buf[0] = c;
! for (i = 1; i < n; ++i)
! {
! buf[i] = vgetorpeek(TRUE);
! if (buf[i] == K_SPECIAL
#ifdef FEAT_GUI
! || buf[i] == CSI
#endif
! )
! {
! // Must be a K_SPECIAL - KS_SPECIAL - KE_FILLER
! // sequence, which represents a K_SPECIAL (0x80),
! // or a CSI - KS_EXTRA - KE_CSI sequence, which
! // represents a CSI (0x9B),
! // or a K_SPECIAL - KS_EXTRA - KE_CSI, which is CSI
! // too.
! c = vgetorpeek(TRUE);
! if (vgetorpeek(TRUE) == (int)KE_CSI && c == KS_EXTRA)
! buf[i] = CSI;
! }
}
+ --no_mapping;
+ c = (*mb_ptr2char)(buf);
}
! break;
! }
}
#ifdef FEAT_EVAL
*** ../vim-8.1.0999/src/ops.c 2019-03-08 09:50:43.058308765 +0100
--- src/ops.c 2019-03-09 09:06:12.268015674 +0100
***************
*** 1245,1254 ****
emsg(_(e_nolastcmd));
return FAIL;
}
! VIM_CLEAR(new_last_cmdline); /* don't keep the cmdline containing @: */
! /* Escape all control characters with a CTRL-V */
p = vim_strsave_escaped_ext(last_cmdline,
! (char_u
*)"\001\002\003\004\005\006\007\010\011\012\013\014\015\016\017\020\021\022\023\024\025\026\027\030\031\032\033\034\035\036\037",
Ctrl_V, FALSE);
if (p != NULL)
{
/* When in Visual mode "'<,'>" will be prepended to the command.
--- 1245,1259 ----
emsg(_(e_nolastcmd));
return FAIL;
}
! // don't keep the cmdline containing @:
! VIM_CLEAR(new_last_cmdline);
! // Escape all control characters with a CTRL-V
p = vim_strsave_escaped_ext(last_cmdline,
! (char_u *)"\001\002\003\004\005\006\007"
! "\010\011\012\013\014\015\016\017"
! "\020\021\022\023\024\025\026\027"
! "\030\031\032\033\034\035\036\037",
! Ctrl_V, FALSE);
if (p != NULL)
{
/* When in Visual mode "'<,'>" will be prepended to the command.
*** ../vim-8.1.0999/src/version.c 2019-03-08 09:50:43.062308735 +0100
--- src/version.c 2019-03-09 09:01:15.642242661 +0100
***************
*** 781,782 ****
--- 781,784 ----
{ /* Add new patch number below this line */
+ /**/
+ 1000,
/**/
--
I started out with nothing, and I still have most of it.
-- Michael Davis -- "Tonight Show"
/// Bram Moolenaar -- [email protected] -- http://www.Moolenaar.net \\\
/// sponsor Vim, vote for features -- http://www.Vim.org/sponsor/ \\\
\\\ an exciting new programming language -- http://www.Zimbu.org ///
\\\ help me help AIDS victims -- http://ICCF-Holland.org ///
--
--
You received this message from the "vim_dev" maillist.
Do not top-post! Type your reply below the text you are replying to.
For more information, visit http://www.vim.org/maillist.php
---
You received this message because you are subscribed to the Google Groups
"vim_dev" group.
To unsubscribe from this group and stop receiving emails from it, send an email
to [email protected].
For more options, visit https://groups.google.com/d/optout.