| To: vim_dev@googlegroups.com |
| Subject: Patch 7.3.400 |
| Fcc: outbox |
| From: Bram Moolenaar <Bram@moolenaar.net> |
| Mime-Version: 1.0 |
| Content-Type: text/plain; charset=UTF-8 |
| Content-Transfer-Encoding: 8bit |
| |
| |
| Patch 7.3.400 |
| Problem: Compiler warnings for shadowed variables. |
| Solution: Remove or rename the variables. |
| Files: src/charset.c, src/digraph.c, src/edit.c, src/eval.c, src/fold.c, |
| src/getchar.c, src/message.c, src/misc2.c, src/move.c, |
| src/netbeans.c, src/option.c, src/os_unix.c, src/screen.c, |
| src/search.c, src/spell.c, src/syntax.c, src/tag.c, src/window.c |
| |
| |
| |
| |
| |
| *** 463,503 **** |
| if (enc_utf8) |
| { |
| int c = utf_ptr2char(STR_PTR(i)); |
| ! int ol = utf_ptr2len(STR_PTR(i)); |
| int lc = utf_tolower(c); |
| |
| /* Only replace the character when it is not an invalid |
| * sequence (ASCII character or more than one byte) and |
| * utf_tolower() doesn't return the original character. */ |
| ! if ((c < 0x80 || ol > 1) && c != lc) |
| { |
| ! int nl = utf_char2len(lc); |
| |
| /* If the byte length changes need to shift the following |
| * characters forward or backward. */ |
| ! if (ol != nl) |
| { |
| ! if (nl > ol) |
| { |
| ! if (buf == NULL ? ga_grow(&ga, nl - ol + 1) == FAIL |
| ! : len + nl - ol >= buflen) |
| { |
| /* out of memory, keep old char */ |
| lc = c; |
| ! nl = ol; |
| } |
| } |
| ! if (ol != nl) |
| { |
| if (buf == NULL) |
| { |
| ! STRMOVE(GA_PTR(i) + nl, GA_PTR(i) + ol); |
| ! ga.ga_len += nl - ol; |
| } |
| else |
| { |
| ! STRMOVE(buf + i + nl, buf + i + ol); |
| ! len += nl - ol; |
| } |
| } |
| } |
| --- 463,504 ---- |
| if (enc_utf8) |
| { |
| int c = utf_ptr2char(STR_PTR(i)); |
| ! int olen = utf_ptr2len(STR_PTR(i)); |
| int lc = utf_tolower(c); |
| |
| /* Only replace the character when it is not an invalid |
| * sequence (ASCII character or more than one byte) and |
| * utf_tolower() doesn't return the original character. */ |
| ! if ((c < 0x80 || olen > 1) && c != lc) |
| { |
| ! int nlen = utf_char2len(lc); |
| |
| /* If the byte length changes need to shift the following |
| * characters forward or backward. */ |
| ! if (olen != nlen) |
| { |
| ! if (nlen > olen) |
| { |
| ! if (buf == NULL |
| ! ? ga_grow(&ga, nlen - olen + 1) == FAIL |
| ! : len + nlen - olen >= buflen) |
| { |
| /* out of memory, keep old char */ |
| lc = c; |
| ! nlen = olen; |
| } |
| } |
| ! if (olen != nlen) |
| { |
| if (buf == NULL) |
| { |
| ! STRMOVE(GA_PTR(i) + nlen, GA_PTR(i) + olen); |
| ! ga.ga_len += nlen - olen; |
| } |
| else |
| { |
| ! STRMOVE(buf + i + nlen, buf + i + olen); |
| ! len += nlen - olen; |
| } |
| } |
| } |
| |
| |
| |
| *** 2080,2092 **** |
| /* |
| * Lookup the pair "char1", "char2" in the digraph tables. |
| * If no match, return "char2". |
| ! * If "meta" is TRUE and "char1" is a space, return "char2" | 0x80. |
| */ |
| static int |
| ! getexactdigraph(char1, char2, meta) |
| int char1; |
| int char2; |
| ! int meta; |
| { |
| int i; |
| int retval = 0; |
| --- 2080,2092 ---- |
| /* |
| * Lookup the pair "char1", "char2" in the digraph tables. |
| * If no match, return "char2". |
| ! * If "meta_char" is TRUE and "char1" is a space, return "char2" | 0x80. |
| */ |
| static int |
| ! getexactdigraph(char1, char2, meta_char) |
| int char1; |
| int char2; |
| ! int meta_char; |
| { |
| int i; |
| int retval = 0; |
| |
| *** 2159,2165 **** |
| |
| if (retval == 0) /* digraph deleted or not found */ |
| { |
| ! if (char1 == ' ' && meta) /* <space> <char> --> meta-char */ |
| return (char2 | 0x80); |
| return char2; |
| } |
| --- 2159,2165 ---- |
| |
| if (retval == 0) /* digraph deleted or not found */ |
| { |
| ! if (char1 == ' ' && meta_char) /* <space> <char> --> meta-char */ |
| return (char2 | 0x80); |
| return char2; |
| } |
| |
| *** 2171,2186 **** |
| * Allow for both char1-char2 and char2-char1 |
| */ |
| int |
| ! getdigraph(char1, char2, meta) |
| int char1; |
| int char2; |
| ! int meta; |
| { |
| int retval; |
| |
| ! if (((retval = getexactdigraph(char1, char2, meta)) == char2) |
| && (char1 != char2) |
| ! && ((retval = getexactdigraph(char2, char1, meta)) == char1)) |
| return char2; |
| return retval; |
| } |
| --- 2171,2186 ---- |
| * Allow for both char1-char2 and char2-char1 |
| */ |
| int |
| ! getdigraph(char1, char2, meta_char) |
| int char1; |
| int char2; |
| ! int meta_char; |
| { |
| int retval; |
| |
| ! if (((retval = getexactdigraph(char1, char2, meta_char)) == char2) |
| && (char1 != char2) |
| ! && ((retval = getexactdigraph(char2, char1, meta_char)) == char1)) |
| return char2; |
| return retval; |
| } |
| |
| |
| |
| *** 4003,4026 **** |
| ins_compl_add_dict(dict) |
| dict_T *dict; |
| { |
| ! dictitem_T *refresh; |
| ! dictitem_T *words; |
| |
| /* Check for optional "refresh" item. */ |
| compl_opt_refresh_always = FALSE; |
| ! refresh = dict_find(dict, (char_u *)"refresh", 7); |
| ! if (refresh != NULL && refresh->di_tv.v_type == VAR_STRING) |
| { |
| ! char_u *v = refresh->di_tv.vval.v_string; |
| |
| if (v != NULL && STRCMP(v, (char_u *)"always") == 0) |
| compl_opt_refresh_always = TRUE; |
| } |
| |
| /* Add completions from a "words" list. */ |
| ! words = dict_find(dict, (char_u *)"words", 5); |
| ! if (words != NULL && words->di_tv.v_type == VAR_LIST) |
| ! ins_compl_add_list(words->di_tv.vval.v_list); |
| } |
| |
| /* |
| --- 4003,4026 ---- |
| ins_compl_add_dict(dict) |
| dict_T *dict; |
| { |
| ! dictitem_T *di_refresh; |
| ! dictitem_T *di_words; |
| |
| /* Check for optional "refresh" item. */ |
| compl_opt_refresh_always = FALSE; |
| ! di_refresh = dict_find(dict, (char_u *)"refresh", 7); |
| ! if (di_refresh != NULL && di_refresh->di_tv.v_type == VAR_STRING) |
| { |
| ! char_u *v = di_refresh->di_tv.vval.v_string; |
| |
| if (v != NULL && STRCMP(v, (char_u *)"always") == 0) |
| compl_opt_refresh_always = TRUE; |
| } |
| |
| /* Add completions from a "words" list. */ |
| ! di_words = dict_find(dict, (char_u *)"words", 5); |
| ! if (di_words != NULL && di_words->di_tv.v_type == VAR_LIST) |
| ! ins_compl_add_list(di_words->di_tv.vval.v_list); |
| } |
| |
| /* |
| |
| |
| |
| *** 6573,6587 **** |
| |
| /* |
| * Join list "l" into a string in "*gap", using separator "sep". |
| ! * When "echo" is TRUE use String as echoed, otherwise as inside a List. |
| * Return FAIL or OK. |
| */ |
| static int |
| ! list_join(gap, l, sep, echo, copyID) |
| garray_T *gap; |
| list_T *l; |
| char_u *sep; |
| ! int echo; |
| int copyID; |
| { |
| int first = TRUE; |
| --- 6573,6587 ---- |
| |
| /* |
| * Join list "l" into a string in "*gap", using separator "sep". |
| ! * When "echo_style" is TRUE use String as echoed, otherwise as inside a List. |
| * Return FAIL or OK. |
| */ |
| static int |
| ! list_join(gap, l, sep, echo_style, copyID) |
| garray_T *gap; |
| list_T *l; |
| char_u *sep; |
| ! int echo_style; |
| int copyID; |
| { |
| int first = TRUE; |
| |
| *** 6597,6603 **** |
| else |
| ga_concat(gap, sep); |
| |
| ! if (echo) |
| s = echo_string(&item->li_tv, &tofree, numbuf, copyID); |
| else |
| s = tv2string(&item->li_tv, &tofree, numbuf, copyID); |
| --- 6597,6603 ---- |
| else |
| ga_concat(gap, sep); |
| |
| ! if (echo_style) |
| s = echo_string(&item->li_tv, &tofree, numbuf, copyID); |
| else |
| s = tv2string(&item->li_tv, &tofree, numbuf, copyID); |
| |
| *** 17893,17899 **** |
| typval_T *argvars; |
| typval_T *rettv; |
| { |
| ! char_u *instr; |
| char_u *fromstr; |
| char_u *tostr; |
| char_u *p; |
| --- 17893,17899 ---- |
| typval_T *argvars; |
| typval_T *rettv; |
| { |
| ! char_u *in_str; |
| char_u *fromstr; |
| char_u *tostr; |
| char_u *p; |
| |
| *** 17910,17916 **** |
| char_u buf2[NUMBUFLEN]; |
| garray_T ga; |
| |
| ! instr = get_tv_string(&argvars[0]); |
| fromstr = get_tv_string_buf_chk(&argvars[1], buf); |
| tostr = get_tv_string_buf_chk(&argvars[2], buf2); |
| |
| --- 17910,17916 ---- |
| char_u buf2[NUMBUFLEN]; |
| garray_T ga; |
| |
| ! in_str = get_tv_string(&argvars[0]); |
| fromstr = get_tv_string_buf_chk(&argvars[1], buf); |
| tostr = get_tv_string_buf_chk(&argvars[2], buf2); |
| |
| |
| *** 17936,17954 **** |
| } |
| |
| /* fromstr and tostr have to contain the same number of chars */ |
| ! while (*instr != NUL) |
| { |
| #ifdef FEAT_MBYTE |
| if (has_mbyte) |
| { |
| ! inlen = (*mb_ptr2len)(instr); |
| ! cpstr = instr; |
| cplen = inlen; |
| idx = 0; |
| for (p = fromstr; *p != NUL; p += fromlen) |
| { |
| fromlen = (*mb_ptr2len)(p); |
| ! if (fromlen == inlen && STRNCMP(instr, p, inlen) == 0) |
| { |
| for (p = tostr; *p != NUL; p += tolen) |
| { |
| --- 17936,17954 ---- |
| } |
| |
| /* fromstr and tostr have to contain the same number of chars */ |
| ! while (*in_str != NUL) |
| { |
| #ifdef FEAT_MBYTE |
| if (has_mbyte) |
| { |
| ! inlen = (*mb_ptr2len)(in_str); |
| ! cpstr = in_str; |
| cplen = inlen; |
| idx = 0; |
| for (p = fromstr; *p != NUL; p += fromlen) |
| { |
| fromlen = (*mb_ptr2len)(p); |
| ! if (fromlen == inlen && STRNCMP(in_str, p, inlen) == 0) |
| { |
| for (p = tostr; *p != NUL; p += tolen) |
| { |
| |
| *** 17967,17977 **** |
| ++idx; |
| } |
| |
| ! if (first && cpstr == instr) |
| { |
| /* Check that fromstr and tostr have the same number of |
| * (multi-byte) characters. Done only once when a character |
| ! * of instr doesn't appear in fromstr. */ |
| first = FALSE; |
| for (p = tostr; *p != NUL; p += tolen) |
| { |
| --- 17967,17977 ---- |
| ++idx; |
| } |
| |
| ! if (first && cpstr == in_str) |
| { |
| /* Check that fromstr and tostr have the same number of |
| * (multi-byte) characters. Done only once when a character |
| ! * of in_str doesn't appear in fromstr. */ |
| first = FALSE; |
| for (p = tostr; *p != NUL; p += tolen) |
| { |
| |
| *** 17986,18003 **** |
| mch_memmove((char *)ga.ga_data + ga.ga_len, cpstr, (size_t)cplen); |
| ga.ga_len += cplen; |
| |
| ! instr += inlen; |
| } |
| else |
| #endif |
| { |
| /* When not using multi-byte chars we can do it faster. */ |
| ! p = vim_strchr(fromstr, *instr); |
| if (p != NULL) |
| ga_append(&ga, tostr[p - fromstr]); |
| else |
| ! ga_append(&ga, *instr); |
| ! ++instr; |
| } |
| } |
| |
| --- 17986,18003 ---- |
| mch_memmove((char *)ga.ga_data + ga.ga_len, cpstr, (size_t)cplen); |
| ga.ga_len += cplen; |
| |
| ! in_str += inlen; |
| } |
| else |
| #endif |
| { |
| /* When not using multi-byte chars we can do it faster. */ |
| ! p = vim_strchr(fromstr, *in_str); |
| if (p != NULL) |
| ga_append(&ga, tostr[p - fromstr]); |
| else |
| ! ga_append(&ga, *in_str); |
| ! ++in_str; |
| } |
| } |
| |
| |
| |
| |
| *** 1033,1042 **** |
| * Init the fold info in a new window. |
| */ |
| void |
| ! foldInitWin(newwin) |
| ! win_T *newwin; |
| { |
| ! ga_init2(&newwin->w_folds, (int)sizeof(fold_T), 10); |
| } |
| |
| /* find_wl_entry() {{{2 */ |
| --- 1033,1042 ---- |
| * Init the fold info in a new window. |
| */ |
| void |
| ! foldInitWin(new_win) |
| ! win_T *new_win; |
| { |
| ! ga_init2(&new_win->w_folds, (int)sizeof(fold_T), 10); |
| } |
| |
| /* find_wl_entry() {{{2 */ |
| |
| |
| |
| *** 418,429 **** |
| |
| /* |
| * Remove the contents of the stuff buffer and the mapped characters in the |
| ! * typeahead buffer (used in case of an error). If 'typeahead' is true, |
| * flush all typeahead characters (used when interrupted by a CTRL-C). |
| */ |
| void |
| ! flush_buffers(typeahead) |
| ! int typeahead; |
| { |
| init_typebuf(); |
| |
| --- 418,429 ---- |
| |
| /* |
| * Remove the contents of the stuff buffer and the mapped characters in the |
| ! * typeahead buffer (used in case of an error). If "flush_typeahead" is true, |
| * flush all typeahead characters (used when interrupted by a CTRL-C). |
| */ |
| void |
| ! flush_buffers(flush_typeahead) |
| ! int flush_typeahead; |
| { |
| init_typebuf(); |
| |
| |
| *** 431,437 **** |
| while (read_stuff(TRUE) != NUL) |
| ; |
| |
| ! if (typeahead) /* remove all typeahead */ |
| { |
| /* |
| * We have to get all characters, because we may delete the first part |
| --- 431,437 ---- |
| while (read_stuff(TRUE) != NUL) |
| ; |
| |
| ! if (flush_typeahead) /* remove all typeahead */ |
| { |
| /* |
| * We have to get all characters, because we may delete the first part |
| |
| |
| |
| *** 2487,2493 **** |
| #ifdef FEAT_CON_DIALOG |
| int retval = FALSE; |
| #endif |
| ! int scroll; |
| msgchunk_T *mp_last = NULL; |
| msgchunk_T *mp; |
| int i; |
| --- 2487,2493 ---- |
| #ifdef FEAT_CON_DIALOG |
| int retval = FALSE; |
| #endif |
| ! int toscroll; |
| msgchunk_T *mp_last = NULL; |
| msgchunk_T *mp; |
| int i; |
| |
| *** 2538,2586 **** |
| } |
| #endif |
| |
| ! scroll = 0; |
| switch (c) |
| { |
| case BS: /* scroll one line back */ |
| case K_BS: |
| case 'k': |
| case K_UP: |
| ! scroll = -1; |
| break; |
| |
| case CAR: /* one extra line */ |
| case NL: |
| case 'j': |
| case K_DOWN: |
| ! scroll = 1; |
| break; |
| |
| case 'u': /* Up half a page */ |
| ! scroll = -(Rows / 2); |
| break; |
| |
| case 'd': /* Down half a page */ |
| ! scroll = Rows / 2; |
| break; |
| |
| case 'b': /* one page back */ |
| case K_PAGEUP: |
| ! scroll = -(Rows - 1); |
| break; |
| |
| case ' ': /* one extra page */ |
| case 'f': |
| case K_PAGEDOWN: |
| case K_LEFTMOUSE: |
| ! scroll = Rows - 1; |
| break; |
| |
| case 'g': /* all the way back to the start */ |
| ! scroll = -999999; |
| break; |
| |
| case 'G': /* all the way to the end */ |
| ! scroll = 999999; |
| lines_left = 999999; |
| break; |
| |
| --- 2538,2586 ---- |
| } |
| #endif |
| |
| ! toscroll = 0; |
| switch (c) |
| { |
| case BS: /* scroll one line back */ |
| case K_BS: |
| case 'k': |
| case K_UP: |
| ! toscroll = -1; |
| break; |
| |
| case CAR: /* one extra line */ |
| case NL: |
| case 'j': |
| case K_DOWN: |
| ! toscroll = 1; |
| break; |
| |
| case 'u': /* Up half a page */ |
| ! toscroll = -(Rows / 2); |
| break; |
| |
| case 'd': /* Down half a page */ |
| ! toscroll = Rows / 2; |
| break; |
| |
| case 'b': /* one page back */ |
| case K_PAGEUP: |
| ! toscroll = -(Rows - 1); |
| break; |
| |
| case ' ': /* one extra page */ |
| case 'f': |
| case K_PAGEDOWN: |
| case K_LEFTMOUSE: |
| ! toscroll = Rows - 1; |
| break; |
| |
| case 'g': /* all the way back to the start */ |
| ! toscroll = -999999; |
| break; |
| |
| case 'G': /* all the way to the end */ |
| ! toscroll = 999999; |
| lines_left = 999999; |
| break; |
| |
| |
| *** 2633,2641 **** |
| continue; |
| } |
| |
| ! if (scroll != 0) |
| { |
| ! if (scroll < 0) |
| { |
| /* go to start of last line */ |
| if (mp_last == NULL) |
| --- 2633,2641 ---- |
| continue; |
| } |
| |
| ! if (toscroll != 0) |
| { |
| ! if (toscroll < 0) |
| { |
| /* go to start of last line */ |
| if (mp_last == NULL) |
| |
| *** 2653,2659 **** |
| if (mp != NULL && mp->sb_prev != NULL) |
| { |
| /* Find line to be displayed at top. */ |
| ! for (i = 0; i > scroll; --i) |
| { |
| if (mp == NULL || mp->sb_prev == NULL) |
| break; |
| --- 2653,2659 ---- |
| if (mp != NULL && mp->sb_prev != NULL) |
| { |
| /* Find line to be displayed at top. */ |
| ! for (i = 0; i > toscroll; --i) |
| { |
| if (mp == NULL || mp->sb_prev == NULL) |
| break; |
| |
| *** 2664,2670 **** |
| mp_last = msg_sb_start(mp_last->sb_prev); |
| } |
| |
| ! if (scroll == -1 && screen_ins_lines(0, 0, 1, |
| (int)Rows, NULL) == OK) |
| { |
| /* display line at top */ |
| --- 2664,2670 ---- |
| mp_last = msg_sb_start(mp_last->sb_prev); |
| } |
| |
| ! if (toscroll == -1 && screen_ins_lines(0, 0, 1, |
| (int)Rows, NULL) == OK) |
| { |
| /* display line at top */ |
| |
| *** 2680,2692 **** |
| ++msg_scrolled; |
| } |
| } |
| ! scroll = 0; |
| } |
| } |
| else |
| { |
| /* First display any text that we scrolled back. */ |
| ! while (scroll > 0 && mp_last != NULL) |
| { |
| /* scroll up, display line at bottom */ |
| msg_scroll_up(); |
| --- 2680,2692 ---- |
| ++msg_scrolled; |
| } |
| } |
| ! toscroll = 0; |
| } |
| } |
| else |
| { |
| /* First display any text that we scrolled back. */ |
| ! while (toscroll > 0 && mp_last != NULL) |
| { |
| /* scroll up, display line at bottom */ |
| msg_scroll_up(); |
| |
| *** 2694,2704 **** |
| screen_fill((int)Rows - 2, (int)Rows - 1, 0, |
| (int)Columns, ' ', ' ', 0); |
| mp_last = disp_sb_line((int)Rows - 2, mp_last); |
| ! --scroll; |
| } |
| } |
| |
| ! if (scroll <= 0) |
| { |
| /* displayed the requested text, more prompt again */ |
| screen_fill((int)Rows - 1, (int)Rows, 0, |
| --- 2694,2704 ---- |
| screen_fill((int)Rows - 2, (int)Rows - 1, 0, |
| (int)Columns, ' ', ' ', 0); |
| mp_last = disp_sb_line((int)Rows - 2, mp_last); |
| ! --toscroll; |
| } |
| } |
| |
| ! if (toscroll <= 0) |
| { |
| /* displayed the requested text, more prompt again */ |
| screen_fill((int)Rows - 1, (int)Rows, 0, |
| |
| *** 2708,2714 **** |
| } |
| |
| /* display more text, return to caller */ |
| ! lines_left = scroll; |
| } |
| |
| break; |
| --- 2708,2714 ---- |
| } |
| |
| /* display more text, return to caller */ |
| ! lines_left = toscroll; |
| } |
| |
| break; |
| |
| |
| |
| *** 1559,1565 **** |
| if (enc_utf8) |
| { |
| int c, uc; |
| ! int nl; |
| char_u *s; |
| |
| c = utf_ptr2char(p); |
| --- 1559,1565 ---- |
| if (enc_utf8) |
| { |
| int c, uc; |
| ! int newl; |
| char_u *s; |
| |
| c = utf_ptr2char(p); |
| |
| *** 1568,1588 **** |
| /* Reallocate string when byte count changes. This is rare, |
| * thus it's OK to do another malloc()/free(). */ |
| l = utf_ptr2len(p); |
| ! nl = utf_char2len(uc); |
| ! if (nl != l) |
| { |
| ! s = alloc((unsigned)STRLEN(res) + 1 + nl - l); |
| if (s == NULL) |
| break; |
| mch_memmove(s, res, p - res); |
| ! STRCPY(s + (p - res) + nl, p + l); |
| p = s + (p - res); |
| vim_free(res); |
| res = s; |
| } |
| |
| utf_char2bytes(uc, p); |
| ! p += nl; |
| } |
| else if (has_mbyte && (l = (*mb_ptr2len)(p)) > 1) |
| p += l; /* skip multi-byte character */ |
| --- 1568,1588 ---- |
| /* Reallocate string when byte count changes. This is rare, |
| * thus it's OK to do another malloc()/free(). */ |
| l = utf_ptr2len(p); |
| ! newl = utf_char2len(uc); |
| ! if (newl != l) |
| { |
| ! s = alloc((unsigned)STRLEN(res) + 1 + newl - l); |
| if (s == NULL) |
| break; |
| mch_memmove(s, res, p - res); |
| ! STRCPY(s + (p - res) + newl, p + l); |
| p = s + (p - res); |
| vim_free(res); |
| res = s; |
| } |
| |
| utf_char2bytes(uc, p); |
| ! p += newl; |
| } |
| else if (has_mbyte && (l = (*mb_ptr2len)(p)) > 1) |
| p += l; /* skip multi-byte character */ |
| |
| |
| |
| *** 926,933 **** |
| * Also updates curwin->w_leftcol. |
| */ |
| void |
| ! curs_columns(scroll) |
| ! int scroll; /* when TRUE, may scroll horizontally */ |
| { |
| int diff; |
| int extra; /* offset for first screen line */ |
| --- 926,933 ---- |
| * Also updates curwin->w_leftcol. |
| */ |
| void |
| ! curs_columns(may_scroll) |
| ! int may_scroll; /* when TRUE, may scroll horizontally */ |
| { |
| int diff; |
| int extra; /* offset for first screen line */ |
| |
| *** 1014,1020 **** |
| /* No line wrapping: compute curwin->w_leftcol if scrolling is on and line |
| * is not folded. |
| * If scrolling is off, curwin->w_leftcol is assumed to be 0 */ |
| ! else if (scroll |
| #ifdef FEAT_FOLDING |
| && !curwin->w_cline_folded |
| #endif |
| --- 1014,1020 ---- |
| /* No line wrapping: compute curwin->w_leftcol if scrolling is on and line |
| * is not folded. |
| * If scrolling is off, curwin->w_leftcol is assumed to be 0 */ |
| ! else if (may_scroll |
| #ifdef FEAT_FOLDING |
| && !curwin->w_cline_folded |
| #endif |
| |
| |
| |
| *** 1395,1401 **** |
| int cmdno, |
| char_u *args) /* points to space before arguments or NUL */ |
| { |
| ! int doupdate = 0; |
| long off = 0; |
| nbbuf_T *buf = nb_get_buf(bufno); |
| static int skip = 0; |
| --- 1395,1401 ---- |
| int cmdno, |
| char_u *args) /* points to space before arguments or NUL */ |
| { |
| ! int do_update = 0; |
| long off = 0; |
| nbbuf_T *buf = nb_get_buf(bufno); |
| static int skip = 0; |
| |
| *** 1600,1606 **** |
| last.lnum, last.col)); |
| del_from_lnum = first.lnum; |
| del_to_lnum = last.lnum; |
| ! doupdate = 1; |
| |
| /* Get the position of the first byte after the deleted |
| * section. "next" is NULL when deleting to the end of the |
| --- 1600,1606 ---- |
| last.lnum, last.col)); |
| del_from_lnum = first.lnum; |
| del_to_lnum = last.lnum; |
| ! do_update = 1; |
| |
| /* Get the position of the first byte after the deleted |
| * section. "next" is NULL when deleting to the end of the |
| |
| *** 1777,1783 **** |
| lnum = lnum_start; |
| |
| /* Loop over the "\n" separated lines of the argument. */ |
| ! doupdate = 1; |
| while (*args != NUL) |
| { |
| nl = vim_strchr(args, '\n'); |
| --- 1777,1783 ---- |
| lnum = lnum_start; |
| |
| /* Loop over the "\n" separated lines of the argument. */ |
| ! do_update = 1; |
| while (*args != NUL) |
| { |
| nl = vim_strchr(args, '\n'); |
| |
| *** 1992,1998 **** |
| EMSG("E640: invalid buffer identifier in initDone"); |
| return FAIL; |
| } |
| ! doupdate = 1; |
| buf->initDone = TRUE; |
| nb_set_curbuf(buf->bufp); |
| #if defined(FEAT_AUTOCMD) |
| --- 1992,1998 ---- |
| EMSG("E640: invalid buffer identifier in initDone"); |
| return FAIL; |
| } |
| ! do_update = 1; |
| buf->initDone = TRUE; |
| nb_set_curbuf(buf->bufp); |
| #if defined(FEAT_AUTOCMD) |
| |
| *** 2081,2087 **** |
| ECMD_HIDE + ECMD_OLDBUF, curwin); |
| buf->bufp = curbuf; |
| buf->initDone = TRUE; |
| ! doupdate = 1; |
| #if defined(FEAT_TITLE) |
| maketitle(); |
| #endif |
| --- 2081,2087 ---- |
| ECMD_HIDE + ECMD_OLDBUF, curwin); |
| buf->bufp = curbuf; |
| buf->initDone = TRUE; |
| ! do_update = 1; |
| #if defined(FEAT_TITLE) |
| maketitle(); |
| #endif |
| |
| *** 2109,2115 **** |
| exarg.forceit = FALSE; |
| dosetvisible = TRUE; |
| goto_buffer(&exarg, DOBUF_FIRST, FORWARD, buf->bufp->b_fnum); |
| ! doupdate = 1; |
| dosetvisible = FALSE; |
| |
| #ifdef FEAT_GUI |
| --- 2109,2115 ---- |
| exarg.forceit = FALSE; |
| dosetvisible = TRUE; |
| goto_buffer(&exarg, DOBUF_FIRST, FORWARD, buf->bufp->b_fnum); |
| ! do_update = 1; |
| dosetvisible = FALSE; |
| |
| #ifdef FEAT_GUI |
| |
| *** 2309,2315 **** |
| buf->bufp->b_fnum, TRUE); |
| buf->bufp = NULL; |
| buf->initDone = FALSE; |
| ! doupdate = 1; |
| /* |
| } |
| else if (streq((char *)cmd, "setStyle")) /* obsolete... */ |
| --- 2309,2315 ---- |
| buf->bufp->b_fnum, TRUE); |
| buf->bufp = NULL; |
| buf->initDone = FALSE; |
| ! do_update = 1; |
| /* |
| } |
| else if (streq((char *)cmd, "setStyle")) /* obsolete... */ |
| |
| *** 2400,2406 **** |
| return FAIL; |
| } |
| |
| ! doupdate = 1; |
| |
| cp = (char *)args; |
| serNum = strtol(cp, &cp, 10); |
| --- 2400,2406 ---- |
| return FAIL; |
| } |
| |
| ! do_update = 1; |
| |
| cp = (char *)args; |
| serNum = strtol(cp, &cp, 10); |
| |
| *** 2448,2454 **** |
| nbdebug((" invalid buffer identifier in removeAnno\n")); |
| return FAIL; |
| } |
| ! doupdate = 1; |
| cp = (char *)args; |
| serNum = strtol(cp, &cp, 10); |
| args = (char_u *)cp; |
| --- 2448,2454 ---- |
| nbdebug((" invalid buffer identifier in removeAnno\n")); |
| return FAIL; |
| } |
| ! do_update = 1; |
| cp = (char *)args; |
| serNum = strtol(cp, &cp, 10); |
| args = (char_u *)cp; |
| |
| *** 2493,2499 **** |
| len = strtol(cp, NULL, 10); |
| args = (char_u *)cp; |
| pos = off2pos(buf->bufp, off); |
| ! doupdate = 1; |
| if (!pos) |
| nbdebug((" no such start pos in %s, %ld\n", cmd, off)); |
| else |
| --- 2493,2499 ---- |
| len = strtol(cp, NULL, 10); |
| args = (char_u *)cp; |
| pos = off2pos(buf->bufp, off); |
| ! do_update = 1; |
| if (!pos) |
| nbdebug((" no such start pos in %s, %ld\n", cmd, off)); |
| else |
| |
| *** 2555,2561 **** |
| inAtomic = 0; |
| if (needupdate) |
| { |
| ! doupdate = 1; |
| needupdate = 0; |
| } |
| /* |
| --- 2555,2561 ---- |
| inAtomic = 0; |
| if (needupdate) |
| { |
| ! do_update = 1; |
| needupdate = 0; |
| } |
| /* |
| |
| *** 2636,2653 **** |
| * Unrecognized command is ignored. |
| */ |
| } |
| ! if (inAtomic && doupdate) |
| { |
| needupdate = 1; |
| ! doupdate = 0; |
| } |
| |
| /* |
| * Is this needed? I moved the netbeans_Xt_connect() later during startup |
| * and it may no longer be necessary. If its not needed then needupdate |
| ! * and doupdate can also be removed. |
| */ |
| ! if (buf != NULL && buf->initDone && doupdate) |
| { |
| update_screen(NOT_VALID); |
| setcursor(); |
| --- 2636,2653 ---- |
| * Unrecognized command is ignored. |
| */ |
| } |
| ! if (inAtomic && do_update) |
| { |
| needupdate = 1; |
| ! do_update = 0; |
| } |
| |
| /* |
| * Is this needed? I moved the netbeans_Xt_connect() later during startup |
| * and it may no longer be necessary. If its not needed then needupdate |
| ! * and do_update can also be removed. |
| */ |
| ! if (buf != NULL && buf->initDone && do_update) |
| { |
| update_screen(NOT_VALID); |
| setcursor(); |
| |
| |
| |
| *** 8584,8591 **** |
| long_u flags; |
| { |
| /* Careful: P_RCLR and P_RALL are a combination of other P_ flags */ |
| ! int clear = (flags & P_RCLR) == P_RCLR; |
| ! int all = ((flags & P_RALL) == P_RALL || clear); |
| |
| #ifdef FEAT_WINDOWS |
| if ((flags & P_RSTAT) || all) /* mark all status lines dirty */ |
| --- 8584,8591 ---- |
| long_u flags; |
| { |
| /* Careful: P_RCLR and P_RALL are a combination of other P_ flags */ |
| ! int doclear = (flags & P_RCLR) == P_RCLR; |
| ! int all = ((flags & P_RALL) == P_RALL || doclear); |
| |
| #ifdef FEAT_WINDOWS |
| if ((flags & P_RSTAT) || all) /* mark all status lines dirty */ |
| |
| *** 8596,8602 **** |
| changed_window_setting(); |
| if (flags & P_RBUF) |
| redraw_curbuf_later(NOT_VALID); |
| ! if (clear) |
| redraw_all_later(CLEAR); |
| else if (all) |
| redraw_all_later(NOT_VALID); |
| --- 8596,8602 ---- |
| changed_window_setting(); |
| if (flags & P_RBUF) |
| redraw_curbuf_later(NOT_VALID); |
| ! if (doclear) |
| redraw_all_later(CLEAR); |
| else if (all) |
| redraw_all_later(NOT_VALID); |
| |
| |
| |
| *** 3884,3890 **** |
| char_u *p_shcf_copy = NULL; |
| int i; |
| char_u *p; |
| - char_u *s; |
| int inquote; |
| int pty_master_fd = -1; /* for pty's */ |
| # ifdef FEAT_GUI |
| --- 3884,3889 ---- |
| |
| *** 3963,3968 **** |
| --- 3962,3969 ---- |
| } |
| if (cmd != NULL) |
| { |
| + char_u *s; |
| + |
| if (extra_shell_arg != NULL) |
| argv[argc++] = (char *)extra_shell_arg; |
| |
| |
| *** 4325,4331 **** |
| linenr_T lnum = curbuf->b_op_start.lnum; |
| int written = 0; |
| char_u *lp = ml_get(lnum); |
| - char_u *s; |
| size_t l; |
| |
| close(fromshell_fd); |
| --- 4326,4331 ---- |
| |
| *** 4339,4345 **** |
| len = write(toshell_fd, "", (size_t)1); |
| else |
| { |
| ! s = vim_strchr(lp + written, NL); |
| len = write(toshell_fd, (char *)lp + written, |
| s == NULL ? l |
| : (size_t)(s - (lp + written))); |
| --- 4339,4346 ---- |
| len = write(toshell_fd, "", (size_t)1); |
| else |
| { |
| ! char_u *s = vim_strchr(lp + written, NL); |
| ! |
| len = write(toshell_fd, (char *)lp + written, |
| s == NULL ? l |
| : (size_t)(s - (lp + written))); |
| |
| |
| |
| *** 7849,7863 **** |
| |
| /* |
| * screen_valid - allocate screen buffers if size changed |
| ! * If "clear" is TRUE: clear screen if it has been resized. |
| * Returns TRUE if there is a valid screen to write to. |
| * Returns FALSE when starting up and screen not initialized yet. |
| */ |
| int |
| ! screen_valid(clear) |
| ! int clear; |
| { |
| ! screenalloc(clear); /* allocate screen buffers if size changed */ |
| return (ScreenLines != NULL); |
| } |
| |
| --- 7849,7863 ---- |
| |
| /* |
| * screen_valid - allocate screen buffers if size changed |
| ! * If "doclear" is TRUE: clear screen if it has been resized. |
| * Returns TRUE if there is a valid screen to write to. |
| * Returns FALSE when starting up and screen not initialized yet. |
| */ |
| int |
| ! screen_valid(doclear) |
| ! int doclear; |
| { |
| ! screenalloc(doclear); /* allocate screen buffers if size changed */ |
| return (ScreenLines != NULL); |
| } |
| |
| |
| *** 7872,7879 **** |
| * final size of the shell is needed. |
| */ |
| void |
| ! screenalloc(clear) |
| ! int clear; |
| { |
| int new_row, old_row; |
| #ifdef FEAT_GUI |
| --- 7872,7879 ---- |
| * final size of the shell is needed. |
| */ |
| void |
| ! screenalloc(doclear) |
| ! int doclear; |
| { |
| int new_row, old_row; |
| #ifdef FEAT_GUI |
| |
| *** 8069,8075 **** |
| * (used when resizing the window at the "--more--" prompt or when |
| * executing an external command, for the GUI). |
| */ |
| ! if (!clear) |
| { |
| (void)vim_memset(new_ScreenLines + new_row * Columns, |
| ' ', (size_t)Columns * sizeof(schar_T)); |
| --- 8069,8075 ---- |
| * (used when resizing the window at the "--more--" prompt or when |
| * executing an external command, for the GUI). |
| */ |
| ! if (!doclear) |
| { |
| (void)vim_memset(new_ScreenLines + new_row * Columns, |
| ' ', (size_t)Columns * sizeof(schar_T)); |
| |
| *** 8159,8165 **** |
| screen_Columns = Columns; |
| |
| must_redraw = CLEAR; /* need to clear the screen later */ |
| ! if (clear) |
| screenclear2(); |
| |
| #ifdef FEAT_GUI |
| --- 8159,8165 ---- |
| screen_Columns = Columns; |
| |
| must_redraw = CLEAR; /* need to clear the screen later */ |
| ! if (doclear) |
| screenclear2(); |
| |
| #ifdef FEAT_GUI |
| |
| |
| |
| *** 2402,2425 **** |
| { |
| if (vim_strchr(p, ';') != NULL) /* there may be comments */ |
| { |
| ! int instr = FALSE; /* inside of string */ |
| |
| p = line; /* scan from start */ |
| while ((p = vim_strpbrk(p, (char_u *)"\";")) != NULL) |
| { |
| if (*p == '"') |
| { |
| ! if (instr) |
| { |
| if (*(p - 1) != '\\') /* skip escaped quote */ |
| ! instr = FALSE; |
| } |
| else if (p == line || ((p - line) >= 2 |
| /* skip #\" form */ |
| && *(p - 1) != '\\' && *(p - 2) != '#')) |
| ! instr = TRUE; |
| } |
| ! else if (!instr && ((p - line) < 2 |
| || (*(p - 1) != '\\' && *(p - 2) != '#'))) |
| break; /* found! */ |
| ++p; |
| --- 2402,2425 ---- |
| { |
| if (vim_strchr(p, ';') != NULL) /* there may be comments */ |
| { |
| ! int in_str = FALSE; /* inside of string */ |
| |
| p = line; /* scan from start */ |
| while ((p = vim_strpbrk(p, (char_u *)"\";")) != NULL) |
| { |
| if (*p == '"') |
| { |
| ! if (in_str) |
| { |
| if (*(p - 1) != '\\') /* skip escaped quote */ |
| ! in_str = FALSE; |
| } |
| else if (p == line || ((p - line) >= 2 |
| /* skip #\" form */ |
| && *(p - 1) != '\\' && *(p - 2) != '#')) |
| ! in_str = TRUE; |
| } |
| ! else if (!in_str && ((p - line) < 2 |
| || (*(p - 1) != '\\' && *(p - 2) != '#'))) |
| break; /* found! */ |
| ++p; |
| |
| |
| |
| *** 5049,5055 **** |
| static int offset2bytes __ARGS((int nr, char_u *buf)); |
| static int bytes2offset __ARGS((char_u **pp)); |
| static void sug_write __ARGS((spellinfo_T *spin, char_u *fname)); |
| ! static void mkspell __ARGS((int fcount, char_u **fnames, int ascii, int overwrite, int added_word)); |
| static void spell_message __ARGS((spellinfo_T *spin, char_u *str)); |
| static void init_spellfile __ARGS((void)); |
| |
| --- 5049,5055 ---- |
| static int offset2bytes __ARGS((int nr, char_u *buf)); |
| static int bytes2offset __ARGS((char_u **pp)); |
| static void sug_write __ARGS((spellinfo_T *spin, char_u *fname)); |
| ! static void mkspell __ARGS((int fcount, char_u **fnames, int ascii, int over_write, int added_word)); |
| static void spell_message __ARGS((spellinfo_T *spin, char_u *str)); |
| static void init_spellfile __ARGS((void)); |
| |
| |
| *** 9085,9095 **** |
| * and ".spl" is appended to make the output file name. |
| */ |
| static void |
| ! mkspell(fcount, fnames, ascii, overwrite, added_word) |
| int fcount; |
| char_u **fnames; |
| int ascii; /* -ascii argument given */ |
| ! int overwrite; /* overwrite existing output file */ |
| int added_word; /* invoked through "zg" */ |
| { |
| char_u *fname = NULL; |
| --- 9085,9095 ---- |
| * and ".spl" is appended to make the output file name. |
| */ |
| static void |
| ! mkspell(fcount, fnames, ascii, over_write, added_word) |
| int fcount; |
| char_u **fnames; |
| int ascii; /* -ascii argument given */ |
| ! int over_write; /* overwrite existing output file */ |
| int added_word; /* invoked through "zg" */ |
| { |
| char_u *fname = NULL; |
| |
| *** 9173,9179 **** |
| { |
| /* Check for overwriting before doing things that may take a lot of |
| * time. */ |
| ! if (!overwrite && mch_stat((char *)wfname, &st) >= 0) |
| { |
| EMSG(_(e_exists)); |
| goto theend; |
| --- 9173,9179 ---- |
| { |
| /* Check for overwriting before doing things that may take a lot of |
| * time. */ |
| ! if (!over_write && mch_stat((char *)wfname, &st) >= 0) |
| { |
| EMSG(_(e_exists)); |
| goto theend; |
| |
| |
| |
| *** 4006,4022 **** |
| } |
| |
| static void |
| ! syn_list_flags(nl, flags, attr) |
| ! struct name_list *nl; |
| int flags; |
| int attr; |
| { |
| int i; |
| |
| ! for (i = 0; nl[i].flag != 0; ++i) |
| ! if (flags & nl[i].flag) |
| { |
| ! msg_puts_attr((char_u *)nl[i].name, attr); |
| msg_putchar(' '); |
| } |
| } |
| --- 4006,4022 ---- |
| } |
| |
| static void |
| ! syn_list_flags(nlist, flags, attr) |
| ! struct name_list *nlist; |
| int flags; |
| int attr; |
| { |
| int i; |
| |
| ! for (i = 0; nlist[i].flag != 0; ++i) |
| ! if (flags & nlist[i].flag) |
| { |
| ! msg_puts_attr((char_u *)nlist[i].name, attr); |
| msg_putchar(' '); |
| } |
| } |
| |
| |
| |
| *** 1353,1359 **** |
| int match_count = 0; /* number of matches found */ |
| char_u **matches; |
| int mtt; |
| - int len; |
| int help_save; |
| #ifdef FEAT_MULTI_LANG |
| int help_pri = 0; |
| --- 1353,1358 ---- |
| |
| *** 2235,2240 **** |
| --- 2234,2241 ---- |
| */ |
| if (ga_grow(&ga_match[mtt], 1) == OK) |
| { |
| + int len; |
| + |
| if (help_only) |
| { |
| #ifdef FEAT_MULTI_LANG |
| |
| |
| |
| *** 683,701 **** |
| } |
| |
| /* |
| ! * When "newwin" is NULL: split the current window in two. |
| ! * When "newwin" is not NULL: insert this window at the far |
| * top/left/right/bottom. |
| * return FAIL for failure, OK otherwise |
| */ |
| int |
| ! win_split_ins(size, flags, newwin, dir) |
| int size; |
| int flags; |
| ! win_T *newwin; |
| int dir; |
| { |
| ! win_T *wp = newwin; |
| win_T *oldwin; |
| int new_size = size; |
| int i; |
| --- 683,701 ---- |
| } |
| |
| /* |
| ! * When "new_wp" is NULL: split the current window in two. |
| ! * When "new_wp" is not NULL: insert this window at the far |
| * top/left/right/bottom. |
| * return FAIL for failure, OK otherwise |
| */ |
| int |
| ! win_split_ins(size, flags, new_wp, dir) |
| int size; |
| int flags; |
| ! win_T *new_wp; |
| int dir; |
| { |
| ! win_T *wp = new_wp; |
| win_T *oldwin; |
| int new_size = size; |
| int i; |
| |
| *** 718,724 **** |
| /* add a status line when p_ls == 1 and splitting the first window */ |
| if (lastwin == firstwin && p_ls == 1 && oldwin->w_status_height == 0) |
| { |
| ! if (oldwin->w_height <= p_wmh && newwin == NULL) |
| { |
| EMSG(_(e_noroom)); |
| return FAIL; |
| --- 718,724 ---- |
| /* add a status line when p_ls == 1 and splitting the first window */ |
| if (lastwin == firstwin && p_ls == 1 && oldwin->w_status_height == 0) |
| { |
| ! if (oldwin->w_height <= p_wmh && new_wp == NULL) |
| { |
| EMSG(_(e_noroom)); |
| return FAIL; |
| |
| *** 751,757 **** |
| } |
| else |
| available = oldwin->w_width; |
| ! if (available < needed && newwin == NULL) |
| { |
| EMSG(_(e_noroom)); |
| return FAIL; |
| --- 751,757 ---- |
| } |
| else |
| available = oldwin->w_width; |
| ! if (available < needed && new_wp == NULL) |
| { |
| EMSG(_(e_noroom)); |
| return FAIL; |
| |
| *** 815,821 **** |
| available = oldwin->w_height; |
| needed += p_wmh; |
| } |
| ! if (available < needed && newwin == NULL) |
| { |
| EMSG(_(e_noroom)); |
| return FAIL; |
| --- 815,821 ---- |
| available = oldwin->w_height; |
| needed += p_wmh; |
| } |
| ! if (available < needed && new_wp == NULL) |
| { |
| EMSG(_(e_noroom)); |
| return FAIL; |
| |
| *** 888,907 **** |
| p_sb)))) |
| { |
| /* new window below/right of current one */ |
| ! if (newwin == NULL) |
| wp = win_alloc(oldwin, FALSE); |
| else |
| win_append(oldwin, wp); |
| } |
| else |
| { |
| ! if (newwin == NULL) |
| wp = win_alloc(oldwin->w_prev, FALSE); |
| else |
| win_append(oldwin->w_prev, wp); |
| } |
| |
| ! if (newwin == NULL) |
| { |
| if (wp == NULL) |
| return FAIL; |
| --- 888,907 ---- |
| p_sb)))) |
| { |
| /* new window below/right of current one */ |
| ! if (new_wp == NULL) |
| wp = win_alloc(oldwin, FALSE); |
| else |
| win_append(oldwin, wp); |
| } |
| else |
| { |
| ! if (new_wp == NULL) |
| wp = win_alloc(oldwin->w_prev, FALSE); |
| else |
| win_append(oldwin->w_prev, wp); |
| } |
| |
| ! if (new_wp == NULL) |
| { |
| if (wp == NULL) |
| return FAIL; |
| |
| *** 972,981 **** |
| frp->fr_parent = curfrp; |
| } |
| |
| ! if (newwin == NULL) |
| frp = wp->w_frame; |
| else |
| ! frp = newwin->w_frame; |
| frp->fr_parent = curfrp->fr_parent; |
| |
| /* Insert the new frame at the right place in the frame list. */ |
| --- 972,981 ---- |
| frp->fr_parent = curfrp; |
| } |
| |
| ! if (new_wp == NULL) |
| frp = wp->w_frame; |
| else |
| ! frp = new_wp->w_frame; |
| frp->fr_parent = curfrp->fr_parent; |
| |
| /* Insert the new frame at the right place in the frame list. */ |
| |
| *** 4284,4302 **** |
| win_T *after UNUSED; |
| int hidden UNUSED; |
| { |
| ! win_T *newwin; |
| |
| /* |
| * allocate window structure and linesizes arrays |
| */ |
| ! newwin = (win_T *)alloc_clear((unsigned)sizeof(win_T)); |
| ! if (newwin != NULL && win_alloc_lines(newwin) == FAIL) |
| { |
| ! vim_free(newwin); |
| ! newwin = NULL; |
| } |
| |
| ! if (newwin != NULL) |
| { |
| #ifdef FEAT_AUTOCMD |
| /* Don't execute autocommands while the window is not properly |
| --- 4284,4302 ---- |
| win_T *after UNUSED; |
| int hidden UNUSED; |
| { |
| ! win_T *new_wp; |
| |
| /* |
| * allocate window structure and linesizes arrays |
| */ |
| ! new_wp = (win_T *)alloc_clear((unsigned)sizeof(win_T)); |
| ! if (new_wp != NULL && win_alloc_lines(new_wp) == FAIL) |
| { |
| ! vim_free(new_wp); |
| ! new_wp = NULL; |
| } |
| |
| ! if (new_wp != NULL) |
| { |
| #ifdef FEAT_AUTOCMD |
| /* Don't execute autocommands while the window is not properly |
| |
| *** 4309,4361 **** |
| */ |
| #ifdef FEAT_WINDOWS |
| if (!hidden) |
| ! win_append(after, newwin); |
| #endif |
| #ifdef FEAT_VERTSPLIT |
| ! newwin->w_wincol = 0; |
| ! newwin->w_width = Columns; |
| #endif |
| |
| /* position the display and the cursor at the top of the file. */ |
| ! newwin->w_topline = 1; |
| #ifdef FEAT_DIFF |
| ! newwin->w_topfill = 0; |
| #endif |
| ! newwin->w_botline = 2; |
| ! newwin->w_cursor.lnum = 1; |
| #ifdef FEAT_SCROLLBIND |
| ! newwin->w_scbind_pos = 1; |
| #endif |
| |
| /* We won't calculate w_fraction until resizing the window */ |
| ! newwin->w_fraction = 0; |
| ! newwin->w_prev_fraction_row = -1; |
| |
| #ifdef FEAT_GUI |
| if (gui.in_use) |
| { |
| ! gui_create_scrollbar(&newwin->w_scrollbars[SBAR_LEFT], |
| ! SBAR_LEFT, newwin); |
| ! gui_create_scrollbar(&newwin->w_scrollbars[SBAR_RIGHT], |
| ! SBAR_RIGHT, newwin); |
| } |
| #endif |
| #ifdef FEAT_EVAL |
| /* init w: variables */ |
| ! init_var_dict(&newwin->w_vars, &newwin->w_winvar); |
| #endif |
| #ifdef FEAT_FOLDING |
| ! foldInitWin(newwin); |
| #endif |
| #ifdef FEAT_AUTOCMD |
| unblock_autocmds(); |
| #endif |
| #ifdef FEAT_SEARCH_EXTRA |
| ! newwin->w_match_head = NULL; |
| ! newwin->w_next_match_id = 4; |
| #endif |
| } |
| ! return newwin; |
| } |
| |
| #if defined(FEAT_WINDOWS) || defined(PROTO) |
| --- 4309,4361 ---- |
| */ |
| #ifdef FEAT_WINDOWS |
| if (!hidden) |
| ! win_append(after, new_wp); |
| #endif |
| #ifdef FEAT_VERTSPLIT |
| ! new_wp->w_wincol = 0; |
| ! new_wp->w_width = Columns; |
| #endif |
| |
| /* position the display and the cursor at the top of the file. */ |
| ! new_wp->w_topline = 1; |
| #ifdef FEAT_DIFF |
| ! new_wp->w_topfill = 0; |
| #endif |
| ! new_wp->w_botline = 2; |
| ! new_wp->w_cursor.lnum = 1; |
| #ifdef FEAT_SCROLLBIND |
| ! new_wp->w_scbind_pos = 1; |
| #endif |
| |
| /* We won't calculate w_fraction until resizing the window */ |
| ! new_wp->w_fraction = 0; |
| ! new_wp->w_prev_fraction_row = -1; |
| |
| #ifdef FEAT_GUI |
| if (gui.in_use) |
| { |
| ! gui_create_scrollbar(&new_wp->w_scrollbars[SBAR_LEFT], |
| ! SBAR_LEFT, new_wp); |
| ! gui_create_scrollbar(&new_wp->w_scrollbars[SBAR_RIGHT], |
| ! SBAR_RIGHT, new_wp); |
| } |
| #endif |
| #ifdef FEAT_EVAL |
| /* init w: variables */ |
| ! init_var_dict(&new_wp->w_vars, &new_wp->w_winvar); |
| #endif |
| #ifdef FEAT_FOLDING |
| ! foldInitWin(new_wp); |
| #endif |
| #ifdef FEAT_AUTOCMD |
| unblock_autocmds(); |
| #endif |
| #ifdef FEAT_SEARCH_EXTRA |
| ! new_wp->w_match_head = NULL; |
| ! new_wp->w_next_match_id = 4; |
| #endif |
| } |
| ! return new_wp; |
| } |
| |
| #if defined(FEAT_WINDOWS) || defined(PROTO) |
| |
| |
| |
| *** 716,717 **** |
| --- 716,719 ---- |
| { /* Add new patch number below this line */ |
| + /**/ |
| + 400, |
| /**/ |
| |
| -- |
| A parent can be arrested if his child cannot hold back a burp during a church |
| service. |
| [real standing law in Nebraska, United States of America] |
| |
| /// Bram Moolenaar -- Bram@Moolenaar.net -- http://www.Moolenaar.net \\\ |
| /// sponsor Vim, vote for features -- http://www.Vim.org/sponsor/ \\\ |
| \\\ an exciting new programming language -- http://www.Zimbu.org /// |
| \\\ help me help AIDS victims -- http://ICCF-Holland.org /// |