]> git.ipfire.org Git - thirdparty/vim.git/commitdiff
patch 9.1.1898: tabpanel: inconsistent use of cmdline with tabpanel master v9.1.1898
authorHirohito Higashi <h.east.727@gmail.com>
Thu, 6 Nov 2025 20:23:36 +0000 (20:23 +0000)
committerChristian Brabandt <cb@256bit.org>
Thu, 6 Nov 2025 20:23:36 +0000 (20:23 +0000)
Problem:  tabpanel: inconsistent use of cmdline and message area with
          tabpanel
Solution: Reduce the cmdline and message area by the horizontal size of
          the tabpanel (Hirohito Higashi)

closes: #18678

Signed-off-by: Hirohito Higashi <h.east.727@gmail.com>
Signed-off-by: Christian Brabandt <cb@256bit.org>
93 files changed:
src/arglist.c
src/cmdexpand.c
src/digraph.c
src/drawscreen.c
src/ex_cmds.c
src/ex_docmd.c
src/ex_getln.c
src/getchar.c
src/globals.h
src/highlight.c
src/if_cscope.c
src/main.c
src/message.c
src/misc1.c
src/mouse.c
src/normal.c
src/os_unix.c
src/os_win32.c
src/screen.c
src/search.c
src/spellsuggest.c
src/syntax.c
src/tabpanel.c
src/tag.c
src/testdir/dumps/Test_tabpanel_commandline_0.dump
src/testdir/dumps/Test_tabpanel_commandline_1.dump
src/testdir/dumps/Test_tabpanel_dont_overflow_into_tabpanel_0.dump
src/testdir/dumps/Test_tabpanel_drawing_01.dump
src/testdir/dumps/Test_tabpanel_drawing_02.dump
src/testdir/dumps/Test_tabpanel_drawing_03.dump
src/testdir/dumps/Test_tabpanel_drawing_04.dump
src/testdir/dumps/Test_tabpanel_drawing_05.dump
src/testdir/dumps/Test_tabpanel_drawing_06.dump
src/testdir/dumps/Test_tabpanel_drawing_07.dump
src/testdir/dumps/Test_tabpanel_drawing_08.dump
src/testdir/dumps/Test_tabpanel_drawing_2_0.dump
src/testdir/dumps/Test_tabpanel_drawing_2_1.dump
src/testdir/dumps/Test_tabpanel_drawing_fill_tailing_0.dump
src/testdir/dumps/Test_tabpanel_drawing_pum_0.dump
src/testdir/dumps/Test_tabpanel_drawing_pum_1.dump
src/testdir/dumps/Test_tabpanel_drawing_pum_2.dump
src/testdir/dumps/Test_tabpanel_drawing_scrolling_0.dump
src/testdir/dumps/Test_tabpanel_drawing_scrolling_1.dump
src/testdir/dumps/Test_tabpanel_drawing_scrolling_2.dump
src/testdir/dumps/Test_tabpanel_drawing_scrolling_3.dump
src/testdir/dumps/Test_tabpanel_drawing_with_popupwin_1.dump
src/testdir/dumps/Test_tabpanel_drawing_with_popupwin_2.dump
src/testdir/dumps/Test_tabpanel_equalalways_0.dump
src/testdir/dumps/Test_tabpanel_equalalways_1.dump
src/testdir/dumps/Test_tabpanel_equalalways_2.dump
src/testdir/dumps/Test_tabpanel_equalalways_3.dump
src/testdir/dumps/Test_tabpanel_eval_tabpanel_statusline_tabline_0.dump
src/testdir/dumps/Test_tabpanel_eval_tabpanel_statusline_tabline_1.dump
src/testdir/dumps/Test_tabpanel_eval_tabpanel_with_linebreaks_0.dump
src/testdir/dumps/Test_tabpanel_eval_tabpanel_with_linebreaks_1.dump
src/testdir/dumps/Test_tabpanel_many_tabpages_0.dump
src/testdir/dumps/Test_tabpanel_many_tabpages_1.dump
src/testdir/dumps/Test_tabpanel_many_tabpages_2.dump
src/testdir/dumps/Test_tabpanel_many_tabpages_3.dump
src/testdir/dumps/Test_tabpanel_many_tabpages_4.dump
src/testdir/dumps/Test_tabpanel_noeval_tabpanel_statusline_tabline_0.dump
src/testdir/dumps/Test_tabpanel_noeval_tabpanel_statusline_tabline_1.dump
src/testdir/dumps/Test_tabpanel_only_0.dump
src/testdir/dumps/Test_tabpanel_only_1.dump
src/testdir/dumps/Test_tabpanel_quitall_0.dump
src/testdir/dumps/Test_tabpanel_ruler_0.dump
src/testdir/dumps/Test_tabpanel_stpl_eq_0_2.dump
src/testdir/dumps/Test_tabpanel_stpl_eq_1_1.dump
src/testdir/dumps/Test_tabpanel_stpl_eq_1_2.dump
src/testdir/dumps/Test_tabpanel_stpl_eq_1_3.dump
src/testdir/dumps/Test_tabpanel_stpl_eq_1_4.dump
src/testdir/dumps/Test_tabpanel_tabline_and_tabpanel_0.dump
src/testdir/dumps/Test_tabpanel_vert_is_multibytes_left_0.dump
src/testdir/dumps/Test_tabpanel_vert_is_multibytes_left_1.dump
src/testdir/dumps/Test_tabpanel_vert_is_multibytes_left_2.dump
src/testdir/dumps/Test_tabpanel_visual_0.dump
src/testdir/dumps/Test_tabpanel_visual_1.dump
src/testdir/dumps/Test_tabpanel_visual_2.dump
src/testdir/dumps/Test_tabpanel_with_cmdline_no_pum_0.dump
src/testdir/dumps/Test_tabpanel_with_cmdline_no_pum_1.dump
src/testdir/dumps/Test_tabpanel_with_cmdline_pum_0.dump
src/testdir/dumps/Test_tabpanel_with_cmdline_pum_1.dump
src/testdir/dumps/Test_tabpanel_with_msg_scrolled_0.dump
src/testdir/dumps/Test_tabpanel_with_msg_scrolled_1.dump
src/testdir/dumps/Test_tabpanel_with_vsplit_0.dump
src/testdir/dumps/Test_tabpanel_with_vsplit_1.dump
src/testdir/dumps/Test_tabpanel_with_vsplit_2.dump
src/testdir/dumps/Test_tabpanel_with_vsplit_3.dump
src/testdir/dumps/Test_tabpanel_with_vsplit_4.dump
src/testdir/dumps/Test_tabpanel_with_vsplit_5.dump
src/testdir/test_tabpanel.vim
src/version.c
src/window.c

index 398e23a2735e6165da873f2867f6d5e506c4dde8..657e2790aef921a0433f0cbca1366379b60fa94a 100644 (file)
@@ -1007,7 +1007,7 @@ arg_all_close_unused_windows(arg_all_state_T *aall)
            buf = wp->w_buffer;
            if (buf->b_ffname == NULL
                    || (!aall->keep_tabs && (buf->b_nwindows > 1
-                           || wp->w_width != Columns)))
+                           || wp->w_width != cmdline_width)))
                i = aall->opened_len;
            else
            {
index 104fe08ae8a6e1b4d104d1f3d3ec79475b22e874..5cdc55b3119012ee7595d1293b18c9fd93f41f45 100644 (file)
@@ -421,7 +421,7 @@ cmdline_pum_create(
     if (showtail)
        prefix_len += vim_strsize(showmatches_gettail(matches[0]))
            - vim_strsize(matches[0]);
-    compl_startcol = MAX(0, compl_startcol - prefix_len);
+    compl_startcol = cmdline_col_off + MAX(0, compl_startcol - prefix_len);
 
     return EXPAND_OK;
 }
@@ -611,9 +611,9 @@ win_redr_status_matches(
        return;
 
     if (has_mbyte)
-       buf = alloc(Columns * MB_MAXBYTES + 1);
+       buf = alloc(topframe->fr_width * MB_MAXBYTES + 1);
     else
-       buf = alloc(Columns + 1);
+       buf = alloc(topframe->fr_width + 1);
     if (buf == NULL)
        return;
 
@@ -640,7 +640,7 @@ win_redr_status_matches(
        if (first_match > 0)
            clen += 2;
        // jumping right, put match at the left
-       if ((long)clen > Columns)
+       if (clen > topframe->fr_width)
        {
            first_match = match;
            // if showing the last match, we can add some on the left
@@ -648,7 +648,7 @@ win_redr_status_matches(
            for (i = match; i < num_matches; ++i)
            {
                clen += status_match_len(xp, SHOW_MATCH(i)) + 2;
-               if ((long)clen >= Columns)
+               if (clen >= topframe->fr_width)
                    break;
            }
            if (i == num_matches)
@@ -659,7 +659,7 @@ win_redr_status_matches(
        while (first_match > 0)
        {
            clen += status_match_len(xp, SHOW_MATCH(first_match - 1)) + 2;
-           if ((long)clen >= Columns)
+           if (clen >= topframe->fr_width)
                break;
            --first_match;
        }
@@ -679,7 +679,7 @@ win_redr_status_matches(
     clen = len;
 
     i = first_match;
-    while ((long)(clen + status_match_len(xp, SHOW_MATCH(i)) + 2) < Columns)
+    while (clen + status_match_len(xp, SHOW_MATCH(i)) + 2 < topframe->fr_width)
     {
        if (i == match)
        {
@@ -773,14 +773,17 @@ win_redr_status_matches(
            }
        }
 
-       screen_puts(buf, row, 0, attr);
+       screen_puts(buf, row, firstwin->w_wincol, attr);
        if (selstart != NULL && highlight)
        {
            *selend = NUL;
-           screen_puts(selstart, row, selstart_col, HL_ATTR(HLF_WM));
+           screen_puts(selstart, row, firstwin->w_wincol + selstart_col,
+                   HL_ATTR(HLF_WM));
        }
 
-       screen_fill(row, row + 1, clen, (int)Columns, fillchar, fillchar, attr);
+       screen_fill(row, row + 1, firstwin->w_wincol + clen,
+               firstwin->w_wincol + topframe->fr_width,
+               fillchar, fillchar, attr);
     }
 
     win_redraw_last_status(topframe);
@@ -1371,7 +1374,7 @@ showmatches(expand_T *xp, int display_wildmenu, int display_list, int noselect)
        {
            // compute the number of columns and lines for the listing
            maxlen += 2;    // two spaces between file names
-           columns = ((int)Columns + 2) / maxlen;
+           columns = (cmdline_width + 2) / maxlen;
            if (columns < 1)
                columns = 1;
            lines = (numMatches + columns - 1) / columns;
@@ -4503,9 +4506,6 @@ wildmenu_cleanup(cmdline_info_T *cclp UNUSED)
        p_ls = save_p_ls;
        p_wmh = save_p_wmh;
        last_status(FALSE);
-#if defined(FEAT_TABPANEL)
-       redraw_tabpanel = TRUE;
-#endif
        update_screen(UPD_VALID);       // redraw the screen NOW
        redrawcmd();
        save_p_ls = -1;
index 262353c01d5229624cf2b8ed2f35cf94b24a7501..481cc4a3cf8d9a193db49b90a93f7ef231ec8c02 100644 (file)
@@ -1972,7 +1972,7 @@ printdigraph(digr_T *dp, result_T *previous)
        *previous = dp->result;
     }
 #endif
-    if (msg_col > Columns - list_width)
+    if (msg_col > cmdline_width - list_width)
        msg_putchar('\n');
     if (msg_col)
        while (msg_col % list_width != 0)
index 7d3b3bd6ad5aeaaa02a6d5f2a60e5b584804c6fd..46832302c2c1940e40b056e3b88aa8ecf105f065 100644 (file)
@@ -502,7 +502,7 @@ win_redr_status(win_T *wp, int ignore_pum UNUSED)
        if (wp->w_buffer->b_p_ro)
            plen += vim_snprintf((char *)p + plen, MAXPATHL - plen, "%s", _("[RO]"));
 
-       this_ru_col = ru_col - (Columns - wp->w_width);
+       this_ru_col = ru_col - (cmdline_width - wp->w_width);
        n = (wp->w_width + 1) / 2;
        if (this_ru_col < n)
            this_ru_col = n;
@@ -721,8 +721,8 @@ win_redr_ruler(win_T *wp, int always, int ignore_pum)
            row = Rows - 1;
            fillchar = ' ';
            attr = 0;
-           width = Columns;
-           off = 0;
+           off = cmdline_col_off;
+           width = cmdline_width;
        }
 
        // In list mode virtcol needs to be recomputed
@@ -755,7 +755,7 @@ win_redr_ruler(win_T *wp, int always, int ignore_pum)
        if (wp->w_status_height == 0)   // can't use last char of screen
            ++n1;
 
-       this_ru_col = ru_col - (Columns - width);
+       this_ru_col = ru_col - (cmdline_width - width);
        // Never use more than half the window/screen width, leave the other
        // half for the filename.
        n2 = (width + 1) / 2;
@@ -2609,7 +2609,7 @@ win_update(win_T *wp)
                            FALSE);
            else
                screen_char(LineOffset[k] + topframe->fr_width - 1, k,
-                       Columns - 1);
+                       cmdline_width - 1);
     }
 #endif
 
index bb58e47f02b92e2d8da17e93d008270e8809bf7b..8e861d5a2f6ddd9502b3f62bbed7194342997ef4 100644 (file)
@@ -1253,7 +1253,7 @@ do_bang(
        msg_putchar('!');
        msg_outtrans(newcmd);
        msg_clr_eos();
-       windgoto(msg_row, msg_col);
+       windgoto(msg_row, cmdline_col_off + msg_col);
 
        do_shell(newcmd, 0);
     }
@@ -1404,7 +1404,7 @@ do_filter(
     if (cmd_buf == NULL)
        goto filterend;
 
-    windgoto((int)Rows - 1, 0);
+    windgoto((int)Rows - 1, cmdline_col_off);
     cursor_on();
 
     /*
@@ -1659,7 +1659,7 @@ do_shell(
     // This windgoto is required for when the '\n' resulted in a "delete line
     // 1" command to the terminal.
     if (!swapping_screen())
-       windgoto(msg_row, msg_col);
+       windgoto(msg_row, cmdline_col_off + msg_col);
     cursor_on();
     (void)call_shell(cmd, SHELL_COOKED | flags);
     did_check_timestamps = FALSE;
@@ -4694,7 +4694,7 @@ ex_substitute(exarg_T *eap)
                            msg_no_more = FALSE;
                            msg_scroll = i;
                            showruler(TRUE);
-                           windgoto(msg_row, msg_col);
+                           windgoto(msg_row, cmdline_col_off + msg_col);
                            RedrawingDisabled = save_RedrawingDisabled;
 
 #ifdef USE_ON_FLY_SCROLL
index 91a03b9d8890664b5dda5817e1e629df6c82fd29..3f31460a0b8273ddd7f2a289c2b1e91aa972f674 100644 (file)
@@ -6684,7 +6684,7 @@ ex_stop(exarg_T *eap)
     if (!eap->forceit)
        autowrite_all();
     apply_autocmds(EVENT_VIMSUSPEND, NULL, NULL, FALSE, NULL);
-    windgoto((int)Rows - 1, 0);
+    windgoto((int)Rows - 1, cmdline_col_off);
     out_char('\n');
     out_flush();
     stoptermcap();
index 5fc9330bc9ab9aefc58953e3095a01bc6df3d4be..63e9814546cafa6e2a40820be51658c2fb057043 100644 (file)
@@ -1167,7 +1167,7 @@ cmdline_erase_chars(
        {
 #ifdef FEAT_RIGHTLEFT
            if (cmdmsg_rl)
-               msg_col = Columns;
+               msg_col = cmdline_width;
            else
 #endif
                msg_col = 0;
@@ -1375,8 +1375,8 @@ cmdline_left_right_mouse(int c, int *ignore_drag_release)
        int     i;
 
        i = cmdline_charsize(ccline.cmdpos);
-       if (mouse_row <= cmdline_row + ccline.cmdspos / Columns
-               && mouse_col < ccline.cmdspos % Columns + i)
+       if (mouse_row <= cmdline_row + ccline.cmdspos / cmdline_width
+               && mouse_col < ccline.cmdspos % cmdline_width + i)
            break;
        if (has_mbyte)
        {
@@ -2114,7 +2114,7 @@ getcmdline_int(
                    goto cmdline_changed;
                if (!cmd_silent)
                {
-                   windgoto(msg_row, 0);
+                   windgoto(msg_row, cmdline_col_off);
                    out_flush();
                }
                break;
@@ -2285,7 +2285,7 @@ getcmdline_int(
                    if (ccline.cmdpos >= ccline.cmdlen)
                        break;
                    i = cmdline_charsize(ccline.cmdpos);
-                   if (KeyTyped && ccline.cmdspos + i >= Columns * Rows)
+                   if (KeyTyped && ccline.cmdspos + i >= cmdline_width * Rows)
                        break;
                    ccline.cmdspos += i;
                    if (has_mbyte)
@@ -3010,8 +3010,8 @@ set_cmdspos_cursor(void)
     set_cmdspos();
     if (KeyTyped)
     {
-       m = Columns * Rows;
-       if (m < 0)      // overflow, Columns or Rows at weird value
+       m = cmdline_width * Rows;
+       if (m < 0)      // overflow, cmdline_width or Rows at weird value
            m = MAXCOL;
     }
     else
@@ -3043,7 +3043,7 @@ correct_cmdspos(int idx, int cells)
 {
     if ((*mb_ptr2len)(ccline.cmdbuff + idx) > 1
                && (*mb_ptr2cells)(ccline.cmdbuff + idx) > 1
-               && ccline.cmdspos % Columns + cells > Columns)
+               && ccline.cmdspos % cmdline_width + cells > cmdline_width)
        ccline.cmdspos++;
 }
 
@@ -3243,7 +3243,7 @@ redraw:
                    }
                }
                msg_clr_eos();
-               windgoto(msg_row, msg_col);
+               windgoto(msg_row, cmdline_col_off + msg_col);
                continue;
            }
 
@@ -3316,7 +3316,7 @@ redraw:
        line_ga.ga_len += len;
        escaped = FALSE;
 
-       windgoto(msg_row, msg_col);
+       windgoto(msg_row, cmdline_col_off + msg_col);
        pend = (char_u *)(line_ga.ga_data) + line_ga.ga_len;
 
        // We are done when a NL is entered, but not when it comes after a
@@ -3432,8 +3432,8 @@ redrawcmd_preedit(void)
            cmdpos  += preedit_start_col;
        }
 
-       msg_row = cmdline_row + (cmdspos / (int)Columns);
-       msg_col = cmdspos % (int)Columns;
+       msg_row = cmdline_row + (cmdspos / cmdline_width);
+       msg_col = cmdspos % cmdline_width;
        if (msg_row >= Rows)
            msg_row = Rows - 1;
 
@@ -3808,7 +3808,7 @@ put_on_cmdline(char_u *str, int len, int redraw)
                msg_col -= i;
                if (msg_col < 0)
                {
-                   msg_col += Columns;
+                   msg_col += cmdline_width;
                    --msg_row;
                }
            }
@@ -3827,8 +3827,8 @@ put_on_cmdline(char_u *str, int len, int redraw)
        }
        if (KeyTyped)
        {
-           m = Columns * Rows;
-           if (m < 0)  // overflow, Columns or Rows at weird value
+           m = cmdline_width * Rows;
+           if (m < 0)  // overflow, cmdline_width or Rows at weird value
                m = MAXCOL;
        }
        else
@@ -4052,7 +4052,7 @@ redrawcmdprompt(void)
     if (ccline.cmdprompt != NULL)
     {
        msg_puts_attr((char *)ccline.cmdprompt, ccline.cmdattr);
-       ccline.cmdindent = msg_col + (msg_row - cmdline_row) * Columns;
+       ccline.cmdindent = msg_col + (msg_row - cmdline_row) * cmdline_width;
        // do the reverse of set_cmdspos()
        if (ccline.cmdfirstc != NUL)
            --ccline.cmdindent;
@@ -4076,7 +4076,7 @@ redrawcmd(void)
     // when 'incsearch' is set there may be no command line while redrawing
     if (ccline.cmdbuff == NULL)
     {
-       windgoto(cmdline_row, 0);
+       windgoto(cmdline_row, cmdline_col_off);
        msg_clr_eos();
        return;
     }
@@ -4131,21 +4131,21 @@ cursorcmd(void)
 #ifdef FEAT_RIGHTLEFT
     if (cmdmsg_rl)
     {
-       msg_row = cmdline_row  + (ccline.cmdspos / (int)(Columns - 1));
-       msg_col = (int)Columns - (ccline.cmdspos % (int)(Columns - 1)) - 1;
+       msg_row = cmdline_row  + (ccline.cmdspos / (cmdline_width - 1));
+       msg_col = cmdline_width - (ccline.cmdspos % (cmdline_width - 1)) - 1;
        if (msg_row <= 0)
            msg_row = Rows - 1;
     }
     else
 #endif
     {
-       msg_row = cmdline_row + (ccline.cmdspos / (int)Columns);
-       msg_col = ccline.cmdspos % (int)Columns;
+       msg_row = cmdline_row + (ccline.cmdspos / cmdline_width);
+       msg_col = ccline.cmdspos % cmdline_width;
        if (msg_row >= Rows)
            msg_row = Rows - 1;
     }
 
-    windgoto(msg_row, msg_col);
+    windgoto(msg_row, cmdline_col_off + msg_col);
 #if defined(FEAT_XIM) && defined(FEAT_GUI_GTK)
     if (p_imst == IM_ON_THE_SPOT)
        redrawcmd_preedit();
@@ -4161,13 +4161,13 @@ gotocmdline(int clr)
     msg_start();
 #ifdef FEAT_RIGHTLEFT
     if (cmdmsg_rl)
-       msg_col = Columns - 1;
+       msg_col = cmdline_width - 1;
     else
 #endif
        msg_col = 0;        // always start in column 0
     if (clr)               // clear the bottom line(s)
        msg_clr_eos();      // will reset clear_cmdline
-    windgoto(cmdline_row, 0);
+    windgoto(cmdline_row, cmdline_col_off);
 }
 
 /*
index d4f4cf426743439b1938314fef464652aa8eec50..3219fd2cef11fd0bb1f0a03980c952f349d82e03 100644 (file)
@@ -2448,7 +2448,7 @@ getchar_common(typval_T *argvars, typval_T *rettv, int allow_number)
     if (cursor_flag == 'h')
        cursor_sleep();
     else if (cursor_flag == 'm')
-       windgoto(msg_row, msg_col);
+       windgoto(msg_row, cmdline_col_off + msg_col);
 
     ++no_mapping;
     ++allow_keys;
index 6eba836d442f28cbafb09463b39d35c426b316f9..bd2b5f91aafee553745d13c45176ae29b1c0cfe8 100644 (file)
@@ -146,6 +146,8 @@ EXTERN int  vgetc_char INIT(= 0);
  * update_screen().
  */
 EXTERN int     cmdline_row;
+EXTERN int     cmdline_col_off;
+EXTERN int     cmdline_width;
 
 EXTERN int     redraw_cmdline INIT(= FALSE);   // cmdline must be redrawn
 EXTERN int     redraw_mode INIT(= FALSE);      // mode must be redrawn
index c70c429e187c1c17d00dcc8e62bba7e77939f664..f8d3688366c519355382d9fd891265e4263154b8 100644 (file)
@@ -3447,7 +3447,7 @@ syn_list_header(
        name_col = msg_col;
        endcol = 15;
     }
-    else if (msg_col + outlen + 1 >= Columns)
+    else if (msg_col + outlen + 1 >= cmdline_width)
     {
        msg_putchar('\n');
        if (got_int)
@@ -3461,15 +3461,15 @@ syn_list_header(
 
     if (msg_col >= endcol)     // output at least one space
        endcol = msg_col + 1;
-    if (Columns <= (long)endcol)       // avoid hang for tiny window
-       endcol = (int)(Columns - 1);
+    if (cmdline_width <= endcol)       // avoid hang for tiny window
+       endcol = cmdline_width - 1;
 
     msg_advance(endcol);
 
     // Show "xxx" with the attributes.
     if (!did_header)
     {
-       if (endcol == Columns - 1 && endcol <= name_col)
+       if (endcol == cmdline_width - 1 && endcol <= name_col)
            msg_putchar(' ');
        msg_puts_attr("xxx", syn_id2attr(id));
        msg_putchar(' ');
index de27d7ef6b820e790a237ae01d9fabcf0dc6ae8a..7d246b58b5f587578abd1a3f398cebc0969f2a14 100644 (file)
@@ -2084,7 +2084,7 @@ cs_print_tags_priv(char **matches, char **cntxts, int num_matches)
            (void)sprintf(buf, cntxformat, context);
 
            // print the context only if it fits on the same line
-           if (msg_col + (int)strlen(buf) >= (int)Columns)
+           if (msg_col + (int)strlen(buf) >= cmdline_width)
                msg_putchar('\n');
            msg_advance(12);
            msg_outtrans_long_attr((char_u *)buf, 0);
index ba5b5b7d83418577451a6037fcd6f29b9e01b633..14ae3eaf375db451a0406ce410c215472ba3d3a9 100644 (file)
@@ -398,7 +398,10 @@ main
 #endif
 
     cmdline_row = Rows - p_ch;
+    cmdline_col_off = 0;
+    cmdline_width = (int)Columns;
     msg_row = cmdline_row;
+    msg_col = 0;
     screenalloc(FALSE);                // allocate screen buffers
     set_init_2();
     TIME_MSG("inits 2");
index d4ebc8e68f5e864efec4f1eb0fea11398eda2b0d..a6dd888b91f96f4b363501dc8f3aa923208f9c3f 100644 (file)
@@ -194,7 +194,7 @@ msg_attr_keep(
     retval = msg_end();
 
     if (keep && retval && vim_strsize((char_u *)s)
-                           < (int)(Rows - cmdline_row - 1) * Columns + sc_col)
+                   < (int)(Rows - cmdline_row - 1) * cmdline_width + sc_col)
        set_keep_msg((char_u *)s, 0);
 
     need_fileinfo = FALSE;
@@ -228,10 +228,10 @@ msg_strtrunc(
 #endif
                )
            // Use all the columns.
-           room = (int)(Rows - msg_row) * Columns - 1;
+           room = (int)(Rows - msg_row) * cmdline_width - 1;
        else
            // Use up to 'showcmd' column.
-           room = (int)(Rows - msg_row - 1) * Columns + sc_col - 1;
+           room = (int)(Rows - msg_row - 1) * cmdline_width + sc_col - 1;
        if (len > room && room > 0)
        {
            if (enc_utf8)
@@ -989,7 +989,7 @@ msg_may_trunc(int force, char_u *s)
 
     // If 'cmdheight' is zero or something unexpected happened "room" may be
     // negative.
-    room = (int)(Rows - cmdline_row - 1) * Columns + sc_col - 1;
+    room = (int)(Rows - cmdline_row - 1) * cmdline_width + sc_col - 1;
     if (room > 0 && (force || (shortmess(SHM_TRUNC) && !exmode_active))
            && (n = (int)STRLEN(s) - room) > 0)
     {
@@ -1368,7 +1368,7 @@ wait_return(int redraw)
                            c = K_IGNORE;
                            msg_col =
 #ifdef FEAT_RIGHTLEFT
-                               cmdmsg_rl ? Columns - 1 :
+                               cmdmsg_rl ? cmdline_width - 1 :
 #endif
                                0;
                        }
@@ -1472,7 +1472,7 @@ wait_return(int redraw)
     lines_left = -1;           // reset lines_left at next msg_start()
     reset_last_sourcing();
     if (keep_msg != NULL && vim_strsize(keep_msg) >=
-                                 (Rows - cmdline_row - 1) * Columns + sc_col)
+                           (Rows - cmdline_row - 1) * cmdline_width + sc_col)
        VIM_CLEAR(keep_msg);        // don't redisplay message, it's too long
 
     if (tmpState == MODE_SETWSIZE)  // got resize event while in vgetc()
@@ -1586,7 +1586,7 @@ msg_start(void)
        msg_row = cmdline_row;
        msg_col =
 #ifdef FEAT_RIGHTLEFT
-           cmdmsg_rl ? Columns - 1 :
+           cmdmsg_rl ? cmdline_width - 1 :
 #endif
            0;
     }
@@ -2228,21 +2228,21 @@ screen_puts_mbyte(char_u *s, int l, int attr)
 #ifdef FEAT_RIGHTLEFT
                cmdmsg_rl ? msg_col <= 1 :
 #endif
-               msg_col == Columns - 1))
+               msg_col == cmdline_width - 1))
     {
        // Doesn't fit, print a highlighted '>' to fill it up.
        msg_screen_putchar('>', HL_ATTR(HLF_AT));
        return s;
     }
 
-    screen_puts_len(s, l, msg_row, msg_col, attr);
+    screen_puts_len(s, l, msg_row, cmdline_col_off + msg_col, attr);
 #ifdef FEAT_RIGHTLEFT
     if (cmdmsg_rl)
     {
        msg_col -= cw;
        if (msg_col == 0)
        {
-           msg_col = Columns;
+           msg_col = cmdline_width;
            ++msg_row;
        }
     }
@@ -2250,7 +2250,7 @@ screen_puts_mbyte(char_u *s, int l, int attr)
 #endif
     {
        msg_col += cw;
-       if (msg_col >= Columns)
+       if (msg_col >= cmdline_width)
        {
            msg_col = 0;
            ++msg_row;
@@ -2286,7 +2286,7 @@ msg_outtrans_long_len_attr(char_u *longstr, int len, int attr)
     int                slen = len;
     int                room;
 
-    room = Columns - msg_col;
+    room = cmdline_width - msg_col;
     if (len > room && room >= 20)
     {
        slen = (room - 3) / 2;
@@ -2497,10 +2497,11 @@ msg_puts_display(
                      || (has_mbyte && (*mb_ptr2cells)(s) > 1 && msg_col <= 2))
                    :
 #endif
-                     ((*s != '\r' && msg_col + t_col >= Columns - 1)
-                      || (*s == TAB && msg_col + t_col >= ((Columns - 1) & ~7))
+                     ((*s != '\r' && msg_col + t_col >= cmdline_width - 1)
+                      || (*s == TAB && msg_col + t_col
+                          >= ((cmdline_width - 1) & ~7))
                       || (has_mbyte && (*mb_ptr2cells)(s) > 1
-                                        && msg_col + t_col >= Columns - 2)))))
+                          && msg_col + t_col >= cmdline_width - 2)))))
        {
            /*
             * The screen is scrolled up when at the last row (some terminals
@@ -2533,8 +2534,8 @@ msg_puts_display(
                msg_scroll_up();
 
            msg_row = Rows - 2;
-           if (msg_col >= Columns)     // can happen after screen resize
-               msg_col = Columns - 1;
+           if (msg_col >= cmdline_width)   // can happen after screen resize
+               msg_col = cmdline_width - 1;
 
            // Display char in last column before showing more-prompt.
            if (*s >= ' '
@@ -2602,9 +2603,9 @@ msg_puts_display(
        }
 
        wrap = *s == '\n'
-                   || msg_col + t_col >= Columns
+                   || msg_col + t_col >= cmdline_width
                    || (has_mbyte && (*mb_ptr2cells)(s) > 1
-                                           && msg_col + t_col >= Columns - 1);
+                           && msg_col + t_col >= cmdline_width - 1);
        if (t_col > 0 && (wrap || *s == '\r' || *s == '\b'
                                                 || *s == '\t' || *s == BELL))
        {
@@ -2643,7 +2644,7 @@ msg_puts_display(
                msg_didout = FALSE;         // remember that line is empty
 #ifdef FEAT_RIGHTLEFT
            if (cmdmsg_rl)
-               msg_col = Columns - 1;
+               msg_col = cmdline_width - 1;
            else
 #endif
                msg_col = 0;
@@ -2699,7 +2700,7 @@ msg_puts_display(
 # ifdef FEAT_RIGHTLEFT
                    cmdmsg_rl ||
 # endif
-                   (cw > 1 && msg_col + t_col >= Columns - 1))
+                   (cw > 1 && msg_col + t_col >= cmdline_width - 1))
            {
                if (l > 1)
                    s = screen_puts_mbyte(s, l, attr) - 1;
@@ -2781,8 +2782,8 @@ msg_scroll_up(void)
        // Scrolling up doesn't result in the right background.  Set the
        // background here.  It's not efficient, but avoids that we have to do
        // it all over the code.
-       screen_fill((int)Rows - 1, (int)Rows, 0, (int)Columns,
-               ' ', ' ', HL_ATTR(HLF_MSG));
+       screen_fill((int)Rows - 1, (int)Rows, cmdline_col_off,
+               cmdline_col_off + cmdline_width, ' ', ' ', HL_ATTR(HLF_MSG));
 
        // Also clear the last char of the last but one line if it was not
        // cleared before to avoid a scroll-up.
@@ -3068,7 +3069,8 @@ disp_sb_line(int row, msgchunk_T *smp, int clear_to_eol)
        // If clearing the screen did not work (e.g. because of a background
        // color and t_ut isn't set) clear until the last column here.
        if (clear_to_eol)
-           screen_fill(row, row + 1, msg_col, (int)Columns,
+           screen_fill(row, row + 1,
+                   cmdline_col_off + msg_col, cmdline_col_off + cmdline_width,
                    ' ', ' ', HL_ATTR(HLF_MSG));
 
        if (mp->sb_eol || mp->sb_next == NULL)
@@ -3090,14 +3092,15 @@ t_puts(
 {
     // output postponed text
     msg_didout = TRUE;         // remember that line is not empty
-    screen_puts_len(t_s, (int)(s - t_s), msg_row, msg_col, attr);
+    screen_puts_len(t_s, (int)(s - t_s), msg_row, cmdline_col_off + msg_col,
+           attr);
     msg_col += *t_col;
     *t_col = 0;
     // If the string starts with a composing character don't increment the
     // column position for it.
     if (enc_utf8 && utf_iscomposing(utf_ptr2char(t_s)))
        --msg_col;
-    if (msg_col >= Columns)
+    if (msg_col >= cmdline_width)
     {
        msg_col = 0;
        ++msg_row;
@@ -3173,7 +3176,7 @@ msg_puts_printf(char_u *str, int maxlen)
        if (cmdmsg_rl)
        {
            if (*s == CAR || *s == NL)
-               msg_col = Columns - 1;
+               msg_col = cmdline_width - 1;
            else
                --msg_col;
        }
@@ -3451,7 +3454,8 @@ do_more_prompt(int typed_char)
                    // scroll up, display line at bottom
                    msg_scroll_up();
                    inc_msg_scrolled();
-                   screen_fill((int)Rows - 2, (int)Rows - 1, 0, (int)Columns,
+                   screen_fill((int)Rows - 2, (int)Rows - 1,
+                           cmdline_col_off, cmdline_col_off + cmdline_width,
                            ' ', ' ', msg_attr);
                    mp_last = disp_sb_line((int)Rows - 2, mp_last, FALSE);
                    --toscroll;
@@ -3461,8 +3465,8 @@ do_more_prompt(int typed_char)
            if (toscroll <= 0)
            {
                // displayed the requested text, more prompt again
-               screen_fill((int)Rows - 1, (int)Rows, 0, (int)Columns,
-                       ' ', ' ', msg_attr);
+               screen_fill((int)Rows - 1, (int)Rows, cmdline_col_off,
+                       cmdline_col_off + cmdline_width, ' ', ' ', msg_attr);
                msg_moremsg(FALSE);
                continue;
            }
@@ -3475,7 +3479,8 @@ do_more_prompt(int typed_char)
     }
 
     // clear the --more-- message
-    screen_fill((int)Rows - 1, (int)Rows, 0, (int)Columns, ' ', ' ', msg_attr);
+    screen_fill((int)Rows - 1, (int)Rows, cmdline_col_off,
+           cmdline_col_off + cmdline_width, ' ', ' ', msg_attr);
     State = oldState;
     setmouse();
     if (quit_more)
@@ -3485,7 +3490,7 @@ do_more_prompt(int typed_char)
     }
 #ifdef FEAT_RIGHTLEFT
     else if (cmdmsg_rl)
-       msg_col = Columns - 1;
+       msg_col = cmdline_width - 1;
 #endif
 
     entered = FALSE;
@@ -3698,20 +3703,20 @@ mch_msg(char *str)
 msg_screen_putchar(int c, int attr)
 {
     msg_didout = TRUE;         // remember that line is not empty
-    screen_putchar(c, msg_row, msg_col, attr);
+    screen_putchar(c, msg_row, cmdline_col_off + msg_col, attr);
 #ifdef FEAT_RIGHTLEFT
     if (cmdmsg_rl)
     {
        if (--msg_col == 0)
        {
-           msg_col = Columns;
+           msg_col = cmdline_width;
            ++msg_row;
        }
     }
     else
 #endif
     {
-       if (++msg_col >= Columns)
+       if (++msg_col >= cmdline_width)
        {
            msg_col = 0;
            ++msg_row;
@@ -3726,11 +3731,11 @@ msg_moremsg(int full)
     char_u     *s = (char_u *)_("-- More --");
 
     attr = HL_ATTR(HLF_M);
-    screen_puts(s, (int)Rows - 1, 0, attr);
+    screen_puts(s, (int)Rows - 1, cmdline_col_off, attr);
     if (full)
        screen_puts((char_u *)
                _(" SPACE/d/j: screen/page/line down, b/u/k: up, q: quit "),
-               (int)Rows - 1, vim_strsize(s), attr);
+               (int)Rows - 1, cmdline_col_off + vim_strsize(s), attr);
 }
 
 /*
@@ -3754,7 +3759,7 @@ repeat_message(void)
 #endif
     else if (State == MODE_EXTERNCMD)
     {
-       windgoto(msg_row, msg_col); // put cursor back
+       windgoto(msg_row, cmdline_col_off + msg_col); // put cursor back
     }
     else if (State == MODE_HITRETURN || State == MODE_SETWSIZE)
     {
@@ -3786,8 +3791,8 @@ msg_check_screen(void)
 
     if (msg_row >= Rows)
        msg_row = Rows - 1;
-    if (msg_col >= Columns)
-       msg_col = Columns - 1;
+    if (msg_col >= cmdline_width)
+       msg_col = cmdline_width - 1;
     return TRUE;
 }
 
@@ -3833,17 +3838,21 @@ msg_clr_eos_force(void)
 #ifdef FEAT_RIGHTLEFT
        if (cmdmsg_rl)
        {
-           screen_fill(msg_row, msg_row + 1, 0, msg_col + 1,
+           screen_fill(msg_row, msg_row + 1,
+                   cmdline_col_off, cmdline_col_off + msg_col + 1,
                    ' ', ' ', msg_attr);
-           screen_fill(msg_row + 1, (int)Rows, 0, (int)Columns,
+           screen_fill(msg_row + 1, (int)Rows,
+                   cmdline_col_off, cmdline_col_off + cmdline_width,
                    ' ', ' ', msg_attr);
        }
        else
 #endif
        {
-           screen_fill(msg_row, msg_row + 1, msg_col, (int)Columns,
+           screen_fill(msg_row, msg_row + 1,
+                   cmdline_col_off + msg_col, cmdline_col_off + cmdline_width,
                    ' ', ' ', msg_attr);
-           screen_fill(msg_row + 1, (int)Rows, 0, (int)Columns,
+           screen_fill(msg_row + 1, (int)Rows,
+                   cmdline_col_off, cmdline_col_off + cmdline_width,
                    ' ', ' ', msg_attr);
        }
     }
@@ -4152,11 +4161,11 @@ msg_advance(int col)
        msg_col = col;          // for redirection, may fill it up later
        return;
     }
-    if (col >= Columns)                // not enough room
-       col = Columns - 1;
+    if (col >= cmdline_width)  // not enough room
+       col = cmdline_width - 1;
 #ifdef FEAT_RIGHTLEFT
     if (cmdmsg_rl)
-       while (msg_col > Columns - col)
+       while (msg_col > cmdline_width - col)
            msg_putchar(' ');
     else
 #endif
index 8af50fc5a5bb39c76f0dd1509d59710f2c6f63c7..3ef007c3573164f9522de2864e598c02192da083 100644 (file)
@@ -1017,7 +1017,7 @@ get_number(
     ++allow_keys;              // no mapping here, but recognize keys
     for (;;)
     {
-       windgoto(msg_row, msg_col);
+       windgoto(msg_row, cmdline_col_off + msg_col);
        c = safe_vgetc();
        if (VIM_ISDIGIT(c))
        {
@@ -2283,7 +2283,7 @@ prepare_to_exit(void)
     else
 #endif
     {
-       windgoto((int)Rows - 1, 0);
+       windgoto((int)Rows - 1, cmdline_col_off);
 
        /*
         * Switch terminal mode back now, so messages end up on the "normal"
index d73e831d36e9ac72ada07d0f089b31db12a4d998..4bd1e592fcf50209ad9ffe970bc8f35a65fdc2b0 100644 (file)
@@ -484,9 +484,8 @@ do_mouse(
 
     // Check for clicking in the tab page panel.
 #if defined(FEAT_TABPANEL)
-    if (mouse_row < firstwin->w_winrow + topframe->fr_height
-       && (mouse_col < firstwin->w_wincol
-               || mouse_col >= firstwin->w_wincol + topframe->fr_width))
+    if (mouse_col < firstwin->w_wincol
+               || mouse_col >= firstwin->w_wincol + topframe->fr_width)
     {
        tp_label.is_panel = true;
        tp_label.just_in = true;
index 0f336a276d66a9fea20fe59bfe186417d6f26852..59843293e59a67a86323e1f96a634dd5a330587b 100644 (file)
@@ -1856,12 +1856,13 @@ display_showcmd(void)
     else // 'showcmdloc' is "last" or empty
     {
        if (!showcmd_is_clear)
-           screen_puts(showcmd_buf, (int)Rows - 1, sc_col, 0);
+           screen_puts(showcmd_buf, (int)Rows - 1,
+                   cmdline_col_off + sc_col, 0);
 
        // clear the rest of an old message by outputting up to SHOWCMD_COLS
        // spaces
        screen_puts((char_u *)"          " + len,
-                                               (int)Rows - 1, sc_col + len, 0);
+               (int)Rows - 1, cmdline_col_off + sc_col + len, 0);
     }
 
     setcursor();           // put cursor back where it belongs
index 829219d8ecf6a5a208bb9279afb43d0bf92a5fd4..fdae5d67fa40a8e1504e7096d2e878a981efedd3 100644 (file)
@@ -3753,7 +3753,7 @@ exit_scroll(void)
     {
        restore_cterm_colors();         // get original colors back
        msg_clr_eos_force();            // clear the rest of the display
-       windgoto((int)Rows - 1, 0);     // may have moved the cursor
+       windgoto((int)Rows - 1, cmdline_col_off); // may have moved the cursor
     }
 }
 
@@ -5556,7 +5556,7 @@ mch_call_shell_fork(
                                else
                                    msg_outtrans_len(ta_buf + i, 1);
                            }
-                           windgoto(msg_row, msg_col);
+                           windgoto(msg_row, cmdline_col_off + msg_col);
                            out_flush();
                        }
 
@@ -5678,7 +5678,7 @@ mch_call_shell_fork(
                            msg_puts((char *)buffer);
                        }
 
-                       windgoto(msg_row, msg_col);
+                       windgoto(msg_row, cmdline_col_off + msg_col);
                        cursor_on();
                        out_flush();
                        if (got_int)
index 43a3da5d876f4c8c1dc91b5ec0dd73afa8ff3fa7..182d005aa879d525ae95ee5d55a54925283ce503 100644 (file)
@@ -4436,7 +4436,7 @@ handler_routine(
     case CTRL_CLOSE_EVENT:
     case CTRL_LOGOFF_EVENT:
     case CTRL_SHUTDOWN_EVENT:
-       windgoto((int)Rows - 1, 0);
+       windgoto((int)Rows - 1, cmdline_col_off);
        g_fForceExit = TRUE;
 
        vim_snprintf((char *)IObuff, IOSIZE, _("Vim: Caught %s event\n"),
@@ -5058,7 +5058,7 @@ dump_pipe(int         options,
            msg_puts((char *)buffer);
        }
 
-       windgoto(msg_row, msg_col);
+       windgoto(msg_row, cmdline_col_off + msg_col);
        cursor_on();
        out_flush();
     }
@@ -5257,7 +5257,7 @@ mch_system_piped(char *cmd, int options)
                        else
                            msg_outtrans_len(ta_buf + i, 1);
                    }
-                   windgoto(msg_row, msg_col);
+                   windgoto(msg_row, cmdline_col_off + msg_col);
                    out_flush();
 
                    ta_len += len;
index 80da91c53c6782894664e94be090fc87f1efe20c..bbb4bbaaf43c734bb81de828cc1114d5fe4cfff9 100644 (file)
@@ -1060,7 +1060,7 @@ win_redr_custom(
        row = statusline_row(wp);
        fillchar = fillchar_status(&attr, wp);
        int in_status_line = wp->w_status_height != 0;
-       maxwidth = in_status_line ? wp->w_width : Columns;
+       maxwidth = in_status_line ? wp->w_width : cmdline_width;
 
        if (draw_ruler)
        {
@@ -1077,7 +1077,7 @@ win_redr_custom(
                if (*stl++ != '(')
                    stl = p_ruf;
            }
-           col = ru_col - (Columns - maxwidth);
+           col = ru_col - (cmdline_width - maxwidth);
            if (col < (maxwidth + 1) / 2)
                col = (maxwidth + 1) / 2;
            maxwidth -= col;
@@ -1103,6 +1103,8 @@ win_redr_custom(
 
        if (in_status_line)
            col += wp->w_wincol;
+       else
+           col += cmdline_col_off;
     }
 
     if (maxwidth <= 0)
@@ -1187,7 +1189,7 @@ win_redr_custom(
            p = tabtab[n].start;
            fillchar = tabtab[n].userhl;
        }
-       while (col < Columns)
+       while (col < firstwin->w_wincol + topframe->fr_width)
            TabPageIdxs[col++] = fillchar;
     }
 
@@ -2325,14 +2327,16 @@ screen_fill(
        if (row == Rows - 1)            // overwritten the command line
        {
            redraw_cmdline = TRUE;
-           if (start_col == 0 && end_col == Columns
+           if (((start_col == 0 && end_col == Columns)
+                       || (start_col <= cmdline_col_off
+                       && end_col == cmdline_col_off + cmdline_width))
                    && c1 == ' ' && c2 == ' ' && attr == 0
 #ifdef FEAT_PROP_POPUP
                    && !popup_overlaps_cmdline()
 #endif
                    )
                clear_cmdline = FALSE;  // command line has been cleared
-           if (start_col == 0)
+           if (start_col == 0 || start_col == cmdline_col_off)
                mode_displayed = FALSE; // mode cleared or overwritten
        }
     }
@@ -2725,8 +2729,8 @@ give_up:
            msg_row = Rows - 1;         // put cursor at last row
        else if (Rows > old_Rows)       // Rows got bigger
            msg_row += Rows - old_Rows; // put cursor in same place
-       if (msg_col >= Columns)         // Columns got smaller
-           msg_col = Columns - 1;      // put cursor at last column
+       if (msg_col >= cmdline_width)   // cmdline_width got smaller
+           msg_col = cmdline_width - 1;    // put cursor at last cmdline column
     }
 #endif
     clear_TabPageIdxs();
@@ -4097,7 +4101,7 @@ showmode(void)
            {
                // These messages can get long, avoid a wrap in a narrow
                // window.  Prefer showing edit_submode_extra.
-               length = (Rows - msg_row) * Columns - 3;
+               length = (Rows - msg_row) * cmdline_width - 3;
                if (edit_submode_extra != NULL)
                    length -= vim_strsize(edit_submode_extra);
                if (length > 0)
@@ -4611,8 +4615,8 @@ comp_col(void)
        if (!p_ru || last_has_status)       // no need for separating space
            ++sc_col;
     }
-    sc_col = Columns - sc_col;
-    ru_col = Columns - ru_col;
+    sc_col = cmdline_width - sc_col;
+    ru_col = cmdline_width - ru_col;
     if (sc_col <= 0)           // screen too narrow, will become a mess
        sc_col = 1;
     if (ru_col <= 0)
index ede51f5f0ff11f717f2c17b8b1bce66d9afaccea..0855891b0ab874a9f5aa7d998461db51156568dc 100644 (file)
@@ -1478,10 +1478,11 @@ do_search(
                // msg_strtrunc() will shorten in the middle.
                if (msg_scrolled != 0 && !cmd_silent)
                    // Use all the columns.
-                   msgbufsize = (int)(Rows - msg_row) * Columns - 1;
+                   msgbufsize = (int)(Rows - msg_row) * cmdline_width - 1;
                else
                    // Use up to 'showcmd' column.
-                   msgbufsize = (int)(Rows - msg_row - 1) * Columns + sc_col - 1;
+                   msgbufsize = (int)(Rows - msg_row - 1) * cmdline_width
+                       + sc_col - 1;
                if (msgbufsize < plen + off_len + SEARCH_STAT_BUF_LEN + 3)
                    msgbufsize = plen + off_len + SEARCH_STAT_BUF_LEN + 3;
            }
index 9383c93b7fe46c3157b24c0273ce0cb699024eea..87efd0d5b2697d21d4d533eb637b72ea806c3f0f 100644 (file)
@@ -568,7 +568,7 @@ spell_suggest(int count)
        // When 'rightleft' is set the list is drawn right-left.
        cmdmsg_rl = curwin->w_p_rl;
        if (cmdmsg_rl)
-           msg_col = Columns - 1;
+           msg_col = cmdline_width - 1;
 #endif
 
        // List the suggestions.
index c44ccad68af77506f76eebec625f8eb18e1b811c..ed4c1225f3baad6c97ad49690867f39c9515de08 100644 (file)
@@ -4085,8 +4085,8 @@ syn_list_cluster(int id)
 
     if (msg_col >= endcol)     // output at least one space
        endcol = msg_col + 1;
-    if (Columns <= (long)endcol)       // avoid hang for tiny window
-       endcol = (int)(Columns - 1);
+    if (cmdline_width <= endcol)       // avoid hang for tiny window
+       endcol = cmdline_width - 1;
 
     msg_advance(endcol);
     if (SYN_CLSTR(curwin->w_s)[id].scl_list != NULL)
index 867171e46f40536e24550ed184f1468ddafd5866..f2bccea1b9bcfab6c3dbe9c40bd7b28e7b0a4f70 100644 (file)
@@ -163,7 +163,7 @@ draw_tabpanel(void)
            do_by_tplmode(TPLMODE_REDRAW, VERT_LEN, maxwidth, &curtab_row,
                    NULL);
            // draw vert separator in tabpanel
-           for (vsrow = 0; vsrow < cmdline_row; vsrow++)
+           for (vsrow = 0; vsrow < Rows; vsrow++)
                screen_putchar(curwin->w_fill_chars.tpl_vert, vsrow,
                        topframe->fr_width, vs_attr);
        }
@@ -175,7 +175,7 @@ draw_tabpanel(void)
            do_by_tplmode(TPLMODE_REDRAW, 0, maxwidth - VERT_LEN,
                    &curtab_row, NULL);
            // draw vert separator in tabpanel
-           for (vsrow = 0; vsrow < cmdline_row; vsrow++)
+           for (vsrow = 0; vsrow < Rows; vsrow++)
                screen_putchar(curwin->w_fill_chars.tpl_vert, vsrow,
                        maxwidth - VERT_LEN, vs_attr);
        }
@@ -516,7 +516,7 @@ do_by_tplmode(
     typval_T   v;
     tabpanel_T args;
 
-    args.maxrow = cmdline_row;
+    args.maxrow = Rows;
     args.offsetrow = 0;
     args.col_start = col_start;
     args.col_end = col_end;
index 58e12a668e060bd1799174e93bfe55c1580368dc..23573fe88d29945a48047cbc409fa3a7ebba23de 100644 (file)
--- a/src/tag.c
+++ b/src/tag.c
@@ -975,7 +975,7 @@ print_tag_list(
     taglen = (int)(tagp.tagname_end - tagp.tagname + 2);
     if (taglen < 18)
        taglen = 18;
-    if (taglen > Columns - 25)
+    if (taglen > cmdline_width - 25)
        taglen = MAXCOL;
     if (msg_col == 0)
        msg_didout = FALSE;     // overwrite previous message
@@ -1055,7 +1055,7 @@ print_tag_list(
                attr = HL_ATTR(HLF_CM);
                while (*p && *p != '\r' && *p != '\n')
                {
-                   if (msg_col + ptr2cells(p) >= Columns)
+                   if (msg_col + ptr2cells(p) >= cmdline_width)
                    {
                        msg_putchar('\n');
                        if (got_int)
@@ -1103,7 +1103,7 @@ print_tag_list(
 
        while (p != command_end)
        {
-           if (msg_col + (*p == TAB ? 1 : ptr2cells(p)) > Columns)
+           if (msg_col + (*p == TAB ? 1 : ptr2cells(p)) > cmdline_width)
                msg_putchar('\n');
            if (got_int)
                break;
index 5ed359c4bb62613c45f819765a04708f478f36ea..72e888d553576a97bec35a8da7b501fe17d09470 100644 (file)
@@ -6,5 +6,5 @@
 | +1#0000000&@9|~+0#4040ff13&| @33
 | +1#0000000&@9|~+0#4040ff13&| @33
 | +1#0000000&@9|~+0#4040ff13&| @33
-|a+0#0000001#ffff4012|b@1|r|e|v|i|a|t|e| +3#0000000#ffffff0@1|a|b|c|l|e|a|r| @1|a|b|o|v|e|l|e|f|t| @1|a|b|s|t|r|a|c|t| @4
-|:+0&&|a|b@1|r|e|v|i|a|t|e> @33
+| +1#0000000&@9|a+0#0000001#ffff4012|b@1|r|e|v|i|a|t|e| +3#0000000#ffffff0@1|a|b|c|l|e|a|r| @1|a|b|o|v|e|l|e|f|t| @1|>| @1
+| +1&&@9|:+0&&|a|b@1|r|e|v|i|a|t|e> @23
index a44f54eed41200c1d78f3bb0b1dbb8fdec95ef6a..0e10d3dfebf609a481edd9192c693aafe452b62f 100644 (file)
@@ -3,8 +3,8 @@
 | +1#0000000&@9|~+0#4040ff13&| @33
 | +1#0000000&@9|~+0#4040ff13&| @33
 | +1#0000000&@9|~+0#4040ff13&| @33
-| +0#0000001#e0e0e08|a|b@1|r|e|v|i|a|t|e| @4| +0#4040ff13#ffffff0@28
-| +0#0000001#ffd7ff255|a|b|c|l|e|a|r| @7| +0#4040ff13#ffffff0@28
-| +0#0000001#ffd7ff255|a|b|o|v|e|l|e|f|t| @5| +0#4040ff13#ffffff0@28
-| +0#0000001#ffd7ff255|a|b|s|t|r|a|c|t| @6| +0#4040ff13#ffffff0@28
-|:+0#0000000&|a|b@1|r|e|v|i|a|t|e> @33
+| +1#0000000&@9| +0#0000001#e0e0e08|a|b@1|r|e|v|i|a|t|e| @4| +0#4040ff13#ffffff0@18
+| +1#0000000&@9| +0#0000001#ffd7ff255|a|b|c|l|e|a|r| @7| +0#4040ff13#ffffff0@18
+| +1#0000000&@9| +0#0000001#ffd7ff255|a|b|o|v|e|l|e|f|t| @5| +0#4040ff13#ffffff0@18
+| +1#0000000&@9| +0#0000001#ffd7ff255|a|b|s|t|r|a|c|t| @6| +0#4040ff13#ffffff0@18
+| +1#0000000&@9|:+0&&|a|b@1|r|e|v|i|a|t|e> @23
index 6076978d0512044be6213d867d2c59506f9574bc..5eea1822db423361adde14a6ae0cb98b8f3c77e8 100644 (file)
@@ -7,4 +7,4 @@
 | +1#0000000&@9|~+0#4040ff13&| @33
 | +1#0000000&@9|~+0#4040ff13&| @33
 | +1#0000000&@9|~+0#4040ff13&| @33
-| +0#0000000&@26|1|,|1| @10|A|l@1| 
+| +1#0000000&@9| +0&&@17|1|,|1| @9|A|l@1| 
index 74ba073e0a2c7e9b252828f8f2e95f98d5e9f691..351d9fe0ac845237f491bd562d5b9840bf518b7b 100644 (file)
@@ -3,4 +3,4 @@
 | +1#0000000&@15|~+0#4040ff13&| @27
 | +1#0000000&@15|~+0#4040ff13&| @27
 | +1#0000000&@15|~+0#4040ff13&| @27
-| +0#0000000&@26|0|,|0|-|1| @8|A|l@1| 
+| +1#0000000&@15| +0&&@14|0|,|0|-|1| @4|A|l@1| 
index f7567dc3b96ce242accb2eb5a5402ad5a81323b4..d8a4242d91bd48c5ab5d9d5e4268d80ecb81433f 100644 (file)
@@ -3,4 +3,4 @@
 | +1#0000000&@15|~+0#4040ff13&| @18||+1#0000000&|~+0#4040ff13&| @6
 | +1#0000000&@15|~+0#4040ff13&| @18||+1#0000000&|~+0#4040ff13&| @6
 | +1#0000000&@15|<+3&&|a|b|p|a|n|e|l|1| |0|,|0|-|1| @1|A|l@1| |<+1&&|l|1| |0|,|0|-
-| +0&&@44
+| @15| +0&&@28
index cb67b9e9b346869602fa91cb41b967cba2b82f6f..c4fcc5cbde1c0bc22b1c4209fee05c01b96501e8 100644 (file)
@@ -3,4 +3,4 @@
 | +1&&@15|c+0&&| @18||+1&&|c+0&&| @6
 | +1&&@15|~+0#4040ff13&| @18||+1#0000000&|~+0#4040ff13&| @6
 | +1#0000000&@15|<+3&&|n|e|l|1| |[|+|]| |1|,|1| @3|A|l@1| |<+1&&|+|]| |1|,|1| 
-| +0&&@44
+@16| +0&&@28
index dd3c82e1a6da5e04b94b2133d7b9ee07711ee422..507c244eea65214051c0be195806d6c341a62b97 100644 (file)
@@ -3,4 +3,4 @@
 | +1&&@15|f+0&&| @27
 | +1&&@15|~+0#4040ff13&| @27
 | +1#0000000&@15|~+0#4040ff13&| @27
-| +0#0000000&@26|1|,|1| @10|A|l@1| 
+| +1#0000000&@15| +0&&@14|1|,|1| @6|A|l@1| 
index 08e040bdfd18317b500e97a858013779c21cca4d..971eb9320a1bb10327e2692b3394b9ef4c2a1c56 100644 (file)
@@ -3,4 +3,4 @@
 | +2&&@15|f+0&&| @27
 |2+2&&|:|X+0#4040ff13&|t|a|b|p|a|n|e|l|2| +2#0000000&@3|~+0#4040ff13&| @27
 | +1#0000000&@15|~+0#4040ff13&| @27
-| +0#0000000&@26|1|,|1| @10|A|l@1| 
+| +1#0000000&@15| +0&&@14|1|,|1| @6|A|l@1| 
index b5935d37c30250eac2a66a198732ea10a9899a05..f7e535724b3103c530fe6db0a8c9b331d26ce1cd 100644 (file)
@@ -3,4 +3,4 @@
 |f+0#0000000#ffffff0| @27| +2&&@15
 |~+0#4040ff13&| @27|2+2#0000000&|:|X+0#4040ff13&|t|a|b|p|a|n|e|l|2| +2#0000000&@3
 |~+0#4040ff13&| @27| +1#0000000&@15
-| +0&&@26|1|,|1| @10|A|l@1| 
+| +0&&@14|1|,|1| @6|A|l@1| | +1&&@15
index 440988b6ea8dcaf3b05e21ac1b0f342c3eae36d2..e1e44632f8c67d3527f6365ec4356fc157df0e6b 100644 (file)
@@ -3,4 +3,4 @@
 |~+0#4040ff13#ffffff0| @27| +8#0000001#e0e0e08@15
 |~+0#4040ff13#ffffff0| @27|2+8#0000001#e0e0e08|:|X+0#4040ff13#ffffff0|t|a|b|p|a|n|e|l|2| +8#0000001#e0e0e08@3
 |~+0#4040ff13#ffffff0| @27| +2#0000000&@15
-| +0&&@26|0|,|0|-|1| @8|A|l@1| 
+| +0&&@14|0|,|0|-|1| @4|A|l@1| |<+2&&|!+0#4040ff13&|p|t|y| |[|T|e|r|m|i|n|a|l|]
index 57bbf923eb63857fa49d0744e4836280ade6fa4e..ae3cadbb1cc8d2965d85e0bff27720459fda3108 100644 (file)
@@ -3,4 +3,4 @@
 |c+0&&| @18||+1&&|c+0&&| @6| +1&&@15
 |~+0#4040ff13&| @18||+1#0000000&|~+0#4040ff13&| @6| +1#0000000&@15
 |<+3&&|n|e|l|1| |[|+|]| |1|,|1| @3|A|l@1| |<+1&&|+|]| |1|,|1| @16
-| +0&&@26|1|,|1| @10|A|l@1| 
+| +0&&@14|1|,|1| @6|A|l@1| | +1&&@15
index 8dee217e3e8e23c5f106832e743066b5e70285d2..23fe3c8e47ecddaf5b7bb6b41ae722b817c1d9e5 100644 (file)
@@ -7,4 +7,4 @@
 |~+0#4040ff13&| @56||+1#0000000&| @18
 |~+0#4040ff13&| @56||+1#0000000&| @18
 |~+0#4040ff13&| @56||+1#0000000&| @18
-|-+2&&@1| |I|N|S|E|R|T| |-@1| +0&&@47|2|,|1| @10|A|l@1| 
+|-+2&&@1| |I|N|S|E|R|T| |-@1| +0&&@27|2|,|1| @10|A|l@1| ||+1&&| @18
index c3d257dc645bf641a73b127f19dcce5b7f792795..d82adb29a84e6935e014be3fd7611e19c11369df 100644 (file)
@@ -7,4 +7,4 @@
 | +1#0000000&@18|||~+0#4040ff13&| @56
 | +1#0000000&@18|||~+0#4040ff13&| @56
 | +1#0000000&@18|||~+0#4040ff13&| @56
-|-+2#0000000&@1| |I|N|S|E|R|T| |-@1| +0&&@47|2|,|1| @10|A|l@1| 
+| +1#0000000&@18|||-+2&&@1| |I|N|S|E|R|T| |-@1| +0&&@27|2|,|1| @10|A|l@1| 
index 4ca56d41914973daa2e570dc237b475d04799239..e349d118abb4fa1f1ace3320ec09e3078580203f 100644 (file)
@@ -7,4 +7,4 @@
 |b+2#0000000&@2|.|t|x|t| @12|~+0#4040ff13&| @23
 |B+2#0000000&|O|T@1|O|M| @13|~+0#4040ff13&| @23
 | +1#0000000&@19|~+0#4040ff13&| @23
-| +0#0000000&@26|0|,|0|-|1| @8|A|l@1| 
+| +1#0000000&@19| +0&&@12|0|,|0|-|1| @2|A|l@1| 
index d98dbfdd651b5317dbe42214947430f3215bb37a..716f720e76dd38341cc2abc25549f0d295a48507 100644 (file)
@@ -7,4 +7,4 @@
 | +1&&@19|~+0#4040ff13&| @23
 | +1#0000000&@19|~+0#4040ff13&| @23
 | +1#0000000&@19|~+0#4040ff13&| @23
-|-+2#0000000&@1| |m+0#00e0003&|a|t|c|h| |1| |o|f| |4| +0#0000000&@29
+| +1#0000000&@19|-+2&&@1| |m+0#00e0003&|a|t|c|h| |1| |o|f| |4| +0#0000000&@9
index 17e0c971f7be405abd9d2dd38ffe50004f76ada4..d481d6bcf07215ef0c3ed1379469f75b72a6fc68 100644 (file)
@@ -7,4 +7,4 @@
 | +1&&@19| +0&&@1|a@2|b> @18
 | +1&&@19|~+0#4040ff13&| @23
 | +1#0000000&@19|~+0#4040ff13&| @23
-|-+2#0000000&@1| |m+0#00e0003&|a|t|c|h| |1| |o|f| |4| +0#0000000&@29
+| +1#0000000&@19|-+2&&@1| |m+0#00e0003&|a|t|c|h| |1| |o|f| |4| +0#0000000&@9
index 4ea7b9140a555564915184d75f493df0d0c11173..16898d03c58d473dfb05991f4fbbdb009b8aaa1b 100644 (file)
@@ -7,4 +7,4 @@
 | +0&&@21| +0#0000001#ffd7ff255|a@2|b| @10| +1#0000000#ffffff0@6
 | +0&&@22|a@1| +1&&@19
 >~+0#4040ff13&| @23| +1#0000000&@19
-|-+2&&@1| |m+0#00e0003&|a|t|c|h| |1| |o|f| |4| +0#0000000&@29
+|-+2&&@1| |m+0#00e0003&|a|t|c|h| |1| |o|f| |4| +0#0000000&@9| +1&&@19
index fa1947eb4714df43fc7305c88cb9a8cca74d83c4..3d9a57b4e4d93572af907918a273478f34372158 100644 (file)
@@ -7,4 +7,4 @@
 | +1#0000000&@19| +0#af5f00255&|1|5| |t+0#0000000&|e|x|t| |t|e|x|t| |t|e|x|t| |t||+1&&| +0#af5f00255&@1|7| 
 | +1#0000000&@19| +0#af5f00255&|1|6| |t+0#0000000&|e|x|t| |t|e|x|t| |t|e|x|t| |t||+1&&| +0#af5f00255&@1|8| 
 | +1#0000000&@19|<+3&&|.|t|x|t| |[|+|]| |1|2|,|1| @3|8|%| |<+1&&| |1|,
-| +0&&@44
+| @19| +0&&@24
index 6370449b63ce8fff69a9d6ffe59f1deb5703c7f8..460ba30fcb508fd400db3343e5374b8aec9b2f74 100644 (file)
@@ -7,4 +7,4 @@
 | +1&&@19| +0#af5f00255&|1|7| |t+0#0000000&|e|x|t| |t|e|x|t| |t|e|x|t| |t|e|x|t| @1
 | +1&&@19| +0#af5f00255&|1|8| |t+0#0000000&|e|x|t| |t|e|x|t| |t|e|x|t| |t|e|x|t| @1
 | +1&&@19|b+3&&@2|.|t|x|t| |[|+|]| @1|1|6|,|1| @4|1|4|%
-| +0&&@44
+| +1&&@19| +0&&@24
index 50b55ea419b9b88432b83177a907b2c5b2e8ff3d..d4afaf7f3634028fecf069f40b374e001f25a7a2 100644 (file)
@@ -7,4 +7,4 @@
 | +1&&@19| +0#af5f00255&@1|2| |t+0#0000000&|e|x|t| |t|e|x|t| |t|e|x|t| |t|e|x|t| @1
 | +1&&@19| +0#af5f00255&@1|3| |t+0#0000000&|e|x|t| |t|e|x|t| |t|e|x|t| |t|e|x|t| @1
 | +1&&@19|b@2|.|t|x|t| |[|+|]| @1|1|,|1| @5|T|o|p
-| +0&&@44
+| @19| +0&&@24
index fdde1ab7c73e68deed6272753fcae3ee3fb985ce..b041b672f694b8724d95406e86d02e403ce11710 100644 (file)
@@ -7,4 +7,4 @@
 | +1&&@19| +0#af5f00255&@1|7| ||+1#0000000&| +0#af5f00255&|3|1| |t+0#0000000&|e|x|t| |t|e|x|t| |t|e|x|t| |t
 | +1&&@19| +0#af5f00255&@1|8| ||+1#0000000&| +0#af5f00255&|3|2| |t+0#0000000&|e|x|t| |t|e|x|t| |t|e|x|t| |t
 | +1&&@19|<| |1|,| |<+3&&|.|t|x|t| |[|+|]| |2|8|,|1| @2|2|6|%
-| +0&&@44
+| +1&&@19| +0&&@24
index 72cf385acb0e7e61522bb7a9183a723a214276c8..6553f54ba2b68492f7f0f103ecf098106347889d 100644 (file)
@@ -7,4 +7,4 @@
 | +1&&@19|.+0&&@24
 | +1&&@19|.+0&&@24
 | +1&&@19|.+0&&@24
-| @44
+| +1&&@19| +0&&@24
index bee1803c7e794532f1f5083d24c8277e8e78065d..20882dc2978bd30b45adc2bf30436f7c565f31cb 100644 (file)
@@ -7,4 +7,4 @@
 |.+0&&@24| +1&&@19
 |.+0&&@24| +1&&@19
 |.+0&&@24| +1&&@19
-| +0&&@44
+| +0&&@24| +1&&@19
index 62a9b4016289af4829ad76db4fe4f4fe81882f29..90888895f7825a85d988e72280a3c52ad633c88c 100644 (file)
@@ -7,4 +7,4 @@
 | +1&&@19|~+0#4040ff13&| @56
 | +1#0000000&@19|~+0#4040ff13&| @56
 | +1#0000000&@19|[|N|o| |N|a|m|e|]| @30|0|,|0|-|1| @9|A|l@1
-| +0&&@77
+| @19| +0&&@57
index 2ebcacee9c1c3eb3c046738fedc2ed43c3eb4958..ba228e327ad6c6cfca2a076c3f77963ce1c00332 100644 (file)
@@ -7,4 +7,4 @@
 | +1&&@9|~+0#4040ff13&| @66
 | +1#0000000&@9|~+0#4040ff13&| @66
 | +1#0000000&@9|[|N|o| |N|a|m|e|]| @40|0|,|0|-|1| @9|A|l@1
-|:+0&&|s|e|t| |t|a|b|p|a|n|e|l|o|p|t|=|c|o|l|u|m|n|s|:|1|0| @50
+| @9| +0&&@67
index baf8239377b3c9195aa7fadeb6b994cc8b2da011..bf6a6900fc8014efd69462890382c1bf02ce9d28 100644 (file)
@@ -7,4 +7,4 @@
 | +1&&@29|~+0#4040ff13&| @46
 | +1#0000000&@29|~+0#4040ff13&| @46
 | +1#0000000&@29|[|N|o| |N|a|m|e|]| @20|0|,|0|-|1| @9|A|l@1
-|:+0&&|s|e|t| |t|a|b|p|a|n|e|l|o|p|t|=|c|o|l|u|m|n|s|:|3|0| @50
+| @29| +0&&@47
index c7f5f4ce7455646f1af1e06cd59e5cc2163bf930..b8c80524fae3a72bb541b320e7161ea3a203f1ee 100644 (file)
@@ -7,4 +7,4 @@
 | +1&&@4|~+0#4040ff13&| @71
 | +1#0000000&@4|~+0#4040ff13&| @71
 | +1#0000000&@4|[|N|o| |N|a|m|e|]| @45|0|,|0|-|1| @9|A|l@1
-|:+0&&|s|e|t| |t|a|b|p|a|n|e|l|o|p|t|=|c|o|l|u|m|n|s|:|5| @51
+| @4| +0&&@72
index dd930c451d4a304eb59a180a2b9658d8d2582ad3..a8df2d1f1960de55f2d87dcbafb7c92c1c4462a6 100644 (file)
@@ -7,4 +7,4 @@
 | +1#0000000&@8|||~+0#4040ff13&| @33
 | +1#0000000&@8|||~+0#4040ff13&| @33
 | +1#0000000&@8|||$+3&&| @13|[|c@2|]| @13|$
-|"+0&&|c@2|"| |[|N|e|w|]| @33
+| +1&&@8|||"+0&&|c@2|"| |[|N|e|w|]| @23
index 21bb63b845a1cc42b1e226e7a5bddc75f47cb597..7285afbeebf69991aa538ddf7a327d1cb87f5019 100644 (file)
@@ -7,4 +7,4 @@
 |~+0#4040ff13&| @33||+1#0000000&| @8
 |~+0#4040ff13&| @33||+1#0000000&| @8
 |$+3&&| @13|[|c@2|]| @13|$||+1&&| @8
-|:+0&&|s|e|t| |t|a|b|p|a|n|e|l|o|p|t|+|=|a|l|i|g|n|:|r|i|g|h|t| @15
+| +0&&@34||+1&&| @8
index b062f214de8cb57f58bed5199cad622250015fa9..80f06ce7455c2aaf058a4bdae196509c3667a3c0 100644 (file)
@@ -7,4 +7,4 @@
 |t+2#0000000&|o|p| @6|~+0#4040ff13&| @33
 |$+2#0000000&| |[|c@2|]| @1|$|~+0#4040ff13&| @33
 |b+2#0000000&|o|t@1|o|m| @3|~+0#4040ff13&| @33
-|"+0#0000000&|c@2|"| |[|N|e|w|]| @33
+| +1#0000000&@9|"+0&&|c@2|"| |[|N|e|w|]| @23
index 4e5a3fb1d8720ab410384fa87ba89cc967e45296..bf381f66934ed3952f5f323e0fb29e2a447259e8 100644 (file)
@@ -7,4 +7,4 @@
 |~+0#4040ff13#ffffff0| @33|t+2#0000000&|o|p| @6
 |~+0#4040ff13&| @33|$+2#0000000&| |[|c@2|]| @1|$
 |~+0#4040ff13&| @33|b+2#0000000&|o|t@1|o|m| @3
-|:+0&&|s|e|t| |t|a|b|p|a|n|e|l|o|p|t|+|=|a|l|i|g|n|:|r|i|g|h|t| @15
+| +0&&@34| +1&&@9
index d5a0e4a00c943681a308b28a02ba0923ea08e595..8188e27b9300fbfda6b987d670ca95d0a53c2c3c 100644 (file)
@@ -7,4 +7,4 @@
 |7+8#0000001#e0e0e08|:|t|a|b| @4|~+0#4040ff13#ffffff0| @33
 |8+8#0000001#e0e0e08|:|t|a|b| @4|~+0#4040ff13#ffffff0| @33
 |9+8#0000001#e0e0e08|:|t|a|b| @4|~+0#4040ff13#ffffff0| @33
-| +0#0000000&@26|0|,|0|-|1| @8|A|l@1| 
+|1+8#0000001#e0e0e08|0|:|t|a|b| @3| +0#0000000#ffffff0@17|0|,|0|-|1| @7|A|l@1| 
index d946a3190dbce93eae3f68fad0a27b7bff14e6e0..f56777d0bda6f0139de178d6840a84462caddec2 100644 (file)
@@ -7,4 +7,4 @@
 |7+8#0000001#e0e0e08|:|t|a|b| @4|~+0#4040ff13#ffffff0| @33
 |8+8#0000001#e0e0e08|:|t|a|b| @4|~+0#4040ff13#ffffff0| @33
 |9+8#0000001#e0e0e08|:|t|a|b| @4|~+0#4040ff13#ffffff0| @33
-| +0#0000000&@26|0|,|0|-|1| @8|A|l@1| 
+|1+8#0000001#e0e0e08|0|:|t|a|b| @3| +0#0000000#ffffff0@17|0|,|0|-|1| @7|A|l@1| 
index 74b2b7b4e3bbf25538808d91e9f4179d2702e7c3..03f40f66475285abe2b54fde328d87e898ce683d 100644 (file)
@@ -7,4 +7,4 @@
 |7+8#0000001#e0e0e08|:|t|a|b| @4|~+0#4040ff13#ffffff0| @33
 |8+8#0000001#e0e0e08|:|t|a|b| @4|~+0#4040ff13#ffffff0| @33
 |9+8#0000001#e0e0e08|:|t|a|b| @4|~+0#4040ff13#ffffff0| @33
-| +0#0000000&@26|0|,|0|-|1| @8|A|l@1| 
+|1+8#0000001#e0e0e08|0|:|t|a|b| @3| +0#0000000#ffffff0@17|0|,|0|-|1| @7|A|l@1| 
index 037a53a32989dd3ef512c3b27c0c35538c9a7fc6..4c61f789fdce1d9e9fc17e78d414a60a573d9249 100644 (file)
@@ -7,4 +7,4 @@
 |7+8#0000001#e0e0e08|:|t|a|b| @4|~+0#4040ff13#ffffff0| @33
 |8+8#0000001#e0e0e08|:|t|a|b| @4|~+0#4040ff13#ffffff0| @33
 |9+8#0000001#e0e0e08|:|t|a|b| @4|~+0#4040ff13#ffffff0| @33
-| +0#0000000&@26|0|,|0|-|1| @8|A|l@1| 
+|1+8#0000001#e0e0e08|0|:|t|a|b| @3| +0#0000000#ffffff0@17|0|,|0|-|1| @7|A|l@1| 
index 70905a6b942efccc03b7f95e975c0e99f51da9fa..aa1ae3e18ba027978633aa516cc82472d02c3e37 100644 (file)
@@ -1,5 +1,4 @@
-|1+8#0000001#e0e0e08|0|:|t|a|b| @3> +0#0000000#ffffff0@34
-|1+2&&@1|:|t|a|b| @3|~+0#4040ff13&| @33
+|1+2&#ffffff0@1|:|t|a|b| @3> +0&&@34
 |1+8#0000001#e0e0e08|2|:|t|a|b| @3|~+0#4040ff13#ffffff0| @33
 |1+8#0000001#e0e0e08|3|:|t|a|b| @3|~+0#4040ff13#ffffff0| @33
 |1+8#0000001#e0e0e08|4|:|t|a|b| @3|~+0#4040ff13#ffffff0| @33
@@ -7,4 +6,5 @@
 |1+8#0000001#e0e0e08|6|:|t|a|b| @3|~+0#4040ff13#ffffff0| @33
 |1+8#0000001#e0e0e08|7|:|t|a|b| @3|~+0#4040ff13#ffffff0| @33
 |1+8#0000001#e0e0e08|8|:|t|a|b| @3|~+0#4040ff13#ffffff0| @33
-|:+0#0000000&|t|a|b|n|e|x|t| |-|3| @15|0|,|0|-|1| @8|A|l@1| 
+|1+8#0000001#e0e0e08|9|:|t|a|b| @3|~+0#4040ff13#ffffff0| @33
+|2+8#0000001#e0e0e08|0|:|t|a|b| @3|:+0#0000000#ffffff0|t|a|b|n|e|x|t| |-|3| @6|0|,|0|-|1| @7|A|l@1| 
index dd930c451d4a304eb59a180a2b9658d8d2582ad3..a8df2d1f1960de55f2d87dcbafb7c92c1c4462a6 100644 (file)
@@ -7,4 +7,4 @@
 | +1#0000000&@8|||~+0#4040ff13&| @33
 | +1#0000000&@8|||~+0#4040ff13&| @33
 | +1#0000000&@8|||$+3&&| @13|[|c@2|]| @13|$
-|"+0&&|c@2|"| |[|N|e|w|]| @33
+| +1&&@8|||"+0&&|c@2|"| |[|N|e|w|]| @23
index 21bb63b845a1cc42b1e226e7a5bddc75f47cb597..7285afbeebf69991aa538ddf7a327d1cb87f5019 100644 (file)
@@ -7,4 +7,4 @@
 |~+0#4040ff13&| @33||+1#0000000&| @8
 |~+0#4040ff13&| @33||+1#0000000&| @8
 |$+3&&| @13|[|c@2|]| @13|$||+1&&| @8
-|:+0&&|s|e|t| |t|a|b|p|a|n|e|l|o|p|t|+|=|a|l|i|g|n|:|r|i|g|h|t| @15
+| +0&&@34||+1&&| @8
index b0e0bbe890594c31f24d9db76080a3a503b3df17..49367a67ccb7fd876bd800e79d106cfc60cd5f06 100644 (file)
@@ -7,4 +7,4 @@
 | +1&&@19|a+0&&|s|d|f| @24||+1&&|a+0&&|s|d|f| @23
 | +1&&@19|a+0&&|s|d>f| @24||+1&&|a+0&&|s|d|f| @23
 | +1&&@19|[+3&&|N|o| |N|a|m|e|]| |[|+|]| @1|1|0|1|,|4| @5|B|o|t| |<+1&&|N|o| |N|a|m|e|]| |[|+|]| |1|0|1|,|4| @5|B|o|t
-| +0&&@77
+| @19| +0&&@57
index 8cbd93b6c1b078707f6bd60d12c842b253d3ced7..b3d9427378eb9e45b4024992e8fd2fbd91f0e215 100644 (file)
@@ -7,4 +7,4 @@
 |a|s|d|f| @34||+1&&|a+0&&|s|d|f| @33
 |a|s|d>f| @34||+1&&|a+0&&|s|d|f| @33
 |[+3&&|N|o| |N|a|m|e|]| |[|+|]| @7|1|0|1|,|4| @9|B|o|t| |[+1&&|N|o| |N|a|m|e|]| |[|+|]| @6|1|0|1|,|4| @9|B|o|t
-|:+0&&|t|a|b|o|n|l|y| @69
+| +0&&@77
index 7399ca1a79748cc3ccdb2b4e8d064b4049145dcc..debe26716cfb997bd6da0fc5aaf9b1f372fc2cf5 100644 (file)
@@ -7,4 +7,4 @@
 | +1#0000000&@19|~+0#4040ff13&| @23
 | +1#0000000&@19|~+0#4040ff13&| @23
 | +1#0000000&@19|<+3&&|o| |N|a|m|e|]| |[|+|]| |1|,|1| @5|A|l@1
-| +0&&@44
+| +1&&@19| +0&&@24
index d1e2d7594e819f304949f5c3b1349b1575dc832d..bba6816e815c437a1fefa22df80d7e68be329eb6 100644 (file)
@@ -7,4 +7,4 @@
 | +1#0000000&@19|~+0#4040ff13&| @23
 | +1#0000000&@19|~+0#4040ff13&| @23
 | +1#0000000&@19|~+0#4040ff13&| @23
-| +0#0000000&@26|0|,|0|-|1| @8|A|l@1| 
+| +1#0000000&@19| +0&&@12|0|,|0|-|1| @2|A|l@1| 
index 4fe5c9327f866a2093cd1bbea7faf8f555087792..e57ecb053b1ebc724f7f110ff6a63f5712ad14dc 100644 (file)
@@ -7,4 +7,4 @@
 | +1#0000000&@19|~+0#4040ff13&| @18||+1#0000000&|~+0#4040ff13&| @16||+1#0000000&|~+0#4040ff13&| @16
 | +1#0000000&@19|~+0#4040ff13&| @18||+1#0000000&|~+0#4040ff13&| @16||+1#0000000&|~+0#4040ff13&| @16
 | +1#0000000&@19|b+3&&@2| @17|a+1&&@2| @15|[|N|o| |N|a|m|e|]| |[|+|]| @4
-| +0&&@77
+@20| +0&&@57
index ac616493b94e6331a9be070456770e0db415810a..f57c86632786d07eb5ea5d5f0246a089c42af533 100644 (file)
@@ -7,4 +7,4 @@
 | +1#0000000&@19|~+0#4040ff13&| @56
 | +1#0000000&@19|~+0#4040ff13&| @56
 | +1#0000000&@19|~+0#4040ff13&| @56
-| +0#0000000&@77
+| +1#0000000&@19| +0&&@57
index 619903666d3c939b1be21b35b250ec7f71cbfbc1..bead88d76886b54f8da34349fd49e59e1c52f384 100644 (file)
@@ -7,4 +7,4 @@
 | +1#0000000&@19|~+0#4040ff13&| @27||+1#0000000&|~+0#4040ff13&| @26
 | +1#0000000&@19|~+0#4040ff13&| @27||+1#0000000&|~+0#4040ff13&| @26
 | +1#0000000&@19|[+3&&|N|o| |N|a|m|e|]| @20|[+1&&|N|o| |N|a|m|e|]| @18
-| +0&&@77
+@20| +0&&@57
index 6311208a2bb5e01c987c32a16dc2b0c636aed0cc..072ff9d3d995743b75b2c4f81e282b50217477c7 100644 (file)
@@ -7,4 +7,4 @@
 |~+0#4040ff13&| @56| +1#0000000&@19
 |~+0#4040ff13&| @56| +1#0000000&@19
 |~+0#4040ff13&| @56| +1#0000000&@19
-| +0&&@77
+| +0&&@57| +1&&@19
index 3c882693c8e587d3c80b37efd151a8f03ceba755..6900d6d1e9ab7bec2a03cce2370bc3c59c5876ff 100644 (file)
@@ -7,4 +7,4 @@
 |~+0#4040ff13&| @27||+1#0000000&|~+0#4040ff13&| @26| +1#0000000&@19
 |~+0#4040ff13&| @27||+1#0000000&|~+0#4040ff13&| @26| +1#0000000&@19
 |[+3&&|N|o| |N|a|m|e|]| @20|[+1&&|N|o| |N|a|m|e|]| @38
-| +0&&@77
+| +0&&@57| +1&&@19
index 14400e598fff508a62eae8135a956155b9e32814..beabbcc1d03a89dfe43aa00d67a8968bff4a766f 100644 (file)
@@ -6,5 +6,5 @@
 | +1#0000000&@8|│|~+0#4040ff13&| @33
 | +1#0000000&@8|│|~+0#4040ff13&| @33
 | +1#0000000&@8|│|~+0#4040ff13&| @33
-| +1#0000000&@8|│|~+0#4040ff13&| @33
-|"+0#0000000&|c@2|.|t|x|t|"| |[|N|e|w|]| @11|0|,|0|-|1| @8|A|l@1| 
+| +1#0000000&@8|│|c+3&&@2|.|t|x|t| @10|0|,|0|-|1| @8|A|l@1
+| +1&&@8|│|"+0&&|c@2|.|t|x|t|"| |[|N|e|w|]| @19
index 284e23ab33cc18041744658735e9a99141ba8551..993d990017a6d27bf3593c3a2de0126a6b2cb880 100644 (file)
@@ -7,4 +7,4 @@
 | +1#0000000&@8|│|~+0#4040ff13&| @33
 | +1#0000000&@8|│|~+0#4040ff13&| @33
 | +1#0000000&@8|│|~+0#4040ff13&| @33
-| +0#0000000&@26|0|,|0|-|1| @8|A|l@1| 
+| +1#0000000&@8|│| +0&&@17|0|,|0|-|1| @7|A|l@1| 
index d3fec73010adc498d2192f1026653ec13902a659..af420ab361727005f81b34a63d8dcfcf1ac07293 100644 (file)
@@ -7,4 +7,4 @@
 |│+1#0000000&|~+0#4040ff13&| @42
 |│+1#0000000&|~+0#4040ff13&| @42
 |│+1#0000000&|~+0#4040ff13&| @42
-|:+0#0000000&|s|e|t| |t|a|b|p|a|n|e|l|o|p|t|=|c|o|l|u|m|n|s|:|1|,|0|,|0|-|1| @8|A|l@1| 
+|│+1#0000000&| +0&&@21|0|,|0|-|1| @12|A|l@1| 
index fc0b17abba894b1aad3dba22d5c655835e2864da..993d990017a6d27bf3593c3a2de0126a6b2cb880 100644 (file)
@@ -7,4 +7,4 @@
 | +1#0000000&@8|│|~+0#4040ff13&| @33
 | +1#0000000&@8|│|~+0#4040ff13&| @33
 | +1#0000000&@8|│|~+0#4040ff13&| @33
-|:+0#0000000&|s|e|t| |t|a|b|p|a|n|e|l|o|p|t|=|c|o|l|u|m|n|s|:|1|0@1|,|0|-|1| @8|A|l@1| 
+| +1#0000000&@8|│| +0&&@17|0|,|0|-|1| @7|A|l@1| 
index 14d50afd9ac7869c867bbfd283e4b2032afa0786..421a5f31d5e73964707978a0500ad4e100fd3125 100644 (file)
@@ -6,5 +6,5 @@
 | +1#0000000&@9|~+0#4040ff13&| @33
 | +1#0000000&@9|~+0#4040ff13&| @33
 | +1#0000000&@9|~+0#4040ff13&| @33
-| +1#0000000&@9|~+0#4040ff13&| @33
-|-+2#0000000&@1| |V|I|S|U|A|L| |-@1| +0&&@4|1@1| @7|1|,|1@1| @9|A|l@1| 
+| +1#0000000&@9|[+3&&|N|o| |N|a|m|e|]| |[|+|]| @4|1|,|1@1| @9|A|l@1
+| +1&&@9|-+2&&@1| |V|I|S|U|A|L| |-@1| +0&&@11|1@1| @8
index 5d4a66080a8112c12d5d9eeb48195c8aee9fa93f..b96c0aca2ee5213122787e26c40aa54cc60c4755 100644 (file)
@@ -6,5 +6,5 @@
 | +1#0000000&@9|~+0#4040ff13&| @33
 | +1#0000000&@9|~+0#4040ff13&| @33
 | +1#0000000&@9|~+0#4040ff13&| @33
-| +1#0000000&@9|~+0#4040ff13&| @33
-|-+2#0000000&@1| |V|I|S|U|A|L| |-@1| +0&&@4|9| @8|2|,|1|4| @9|A|l@1| 
+| +1#0000000&@9|[+3&&|N|o| |N|a|m|e|]| |[|+|]| @4|2|,|1|4| @9|A|l@1
+| +1&&@9|-+2&&@1| |V|I|S|U|A|L| |-@1| +0&&@11|9| @9
index c8006842791361d280a561a70ca7acebc4ac02f2..669881731d7b6b682fd43f76b6ba29279a489615 100644 (file)
@@ -6,5 +6,5 @@
 | +1#0000000&@9|~+0#4040ff13&| @33
 | +1#0000000&@9|~+0#4040ff13&| @33
 | +1#0000000&@9|~+0#4040ff13&| @33
-| +1#0000000&@9|~+0#4040ff13&| @33
-|b+0#0000000&@2|2| |c@2|2| @17|2|,|6| @10|A|l@1| 
+| +1#0000000&@9|[+3&&|N|o| |N|a|m|e|]| |[|+|]| @4|2|,|6| @10|A|l@1
+| +1&&@9|b+0&&@2|2| |c@2|2| @25
index e665e2536daa451931d91b9a9841a70bafda4255..135d06dd85962b6ae0510ca48b4972d3481c2b6b 100644 (file)
@@ -7,4 +7,4 @@
 | +1#0000000&@19|~+0#4040ff13&| @23
 | +1#0000000&@19|~+0#4040ff13&| @23
 | +1#0000000&@19|~+0#4040ff13&| @23
-| +0#0000000&@44
+| +1#0000000&@19| +0&&@24
index 4b61a682d8edf84841c7d16c153bdd40768c11a4..5c9926c2a27419c3c8b874cd50f2aed063f1431f 100644 (file)
@@ -6,5 +6,5 @@
 | +1#0000000&@19|~+0#4040ff13&| @23
 | +1#0000000&@19|~+0#4040ff13&| @23
 | +1#0000000&@19|~+0#4040ff13&| @23
-|t+0#0000001#ffff4012|a|b|n|e|w| +3#0000000#ffffff0@1|t|a|b|n|e|x|t| @29
-|:+0&&|t|a|b|n|e|w> @37
+| +1#0000000&@19|t+0#0000001#ffff4012|a|b|n|e|w| +3#0000000#ffffff0@1|t|a|b|n|e|x|t| @9
+| +1&&@19|:+0&&|t|a|b|n|e|w> @17
index e665e2536daa451931d91b9a9841a70bafda4255..135d06dd85962b6ae0510ca48b4972d3481c2b6b 100644 (file)
@@ -7,4 +7,4 @@
 | +1#0000000&@19|~+0#4040ff13&| @23
 | +1#0000000&@19|~+0#4040ff13&| @23
 | +1#0000000&@19|~+0#4040ff13&| @23
-| +0#0000000&@44
+| +1#0000000&@19| +0&&@24
index 0e60b9cad8dbf3e255e2ab9f93c9311d8a6e2ddc..7682fa829c5aaedea368eaba8f7216e3fa2422dc 100644 (file)
@@ -3,8 +3,8 @@
 |b+2&&@2| @16|~+0#4040ff13&| @23
 | +1#0000000&@19|~+0#4040ff13&| @23
 | +1#0000000&@19|~+0#4040ff13&| @23
-| +0#0000001#e0e0e08|s|e|t| @11| +1#0000000#ffffff0@3|~+0#4040ff13&| @23
-| +0#0000001#ffd7ff255|s|e|t|f|i|l|e|t|y|p|e| @3| +1#0000000#ffffff0@3|~+0#4040ff13&| @23
-| +0#0000001#ffd7ff255|s|e|t|g|l|o|b|a|l| @5| +1#0000000#ffffff0@3|~+0#4040ff13&| @23
-| +0#0000001#ffd7ff255|s|e|t|l|o|c|a|l| @6| +1#0000000#ffffff0@3|~+0#4040ff13&| @23
-|:+0#0000000&|s|e|t> @40
+| +1#0000000&@19| +0#0000001#e0e0e08|s|e|t| @11| +0#4040ff13#ffffff0@8
+| +1#0000000&@19| +0#0000001#ffd7ff255|s|e|t|f|i|l|e|t|y|p|e| @3| +0#4040ff13#ffffff0@8
+| +1#0000000&@19| +0#0000001#ffd7ff255|s|e|t|g|l|o|b|a|l| @5| +0#4040ff13#ffffff0@8
+| +1#0000000&@19| +0#0000001#ffd7ff255|s|e|t|l|o|c|a|l| @6| +0#4040ff13#ffffff0@8
+| +1#0000000&@19|:+0&&|s|e|t> @20
index cd65a0a26ee9db10140e3deb005b21438b960f30..7090936259dd43cf86329c8011725127dbb57272 100644 (file)
@@ -7,4 +7,4 @@
 | +1#0000000&@19|~+0#4040ff13&| @23
 | +1#0000000&@19|~+0#4040ff13&| @23
 | +1#0000000&@19|~+0#4040ff13&| @23
-| +0#0000000&@44
+| +1#0000000&@19| +0&&@24
index d1da8d23eada1e83dbc4cf5f1f40316968d5ad96..cd5583d15e9911976369172574ad3160b2fff282 100644 (file)
@@ -7,4 +7,4 @@
 | +1#0000000&@19|~+0#4040ff13&| @23
 | +1#0000000&@19|~+0#4040ff13&| @23
 | +1#0000000&@19|~+0#4040ff13&| @23
-| +0#0000000&@44
+| +1#0000000&@19| +0&&@24
index 836e07b2a8ec7224a5a427e09c929a2003afa728..7b0daf0b7f6617906c49ade5068e4d891a09d73f 100644 (file)
@@ -7,4 +7,4 @@
 | +1#0000000&@19|~+0#4040ff13&| @56
 | +1#0000000&@19|~+0#4040ff13&| @56
 | +1#0000000&@19|~+0#4040ff13&| @56
-| +0#0000000&@59|0|,|0|-|1| @8|A|l@1| 
+| +1#0000000&@19| +0&&@39|0|,|0|-|1| @8|A|l@1| 
index 81653d7849d39a99c025f0375d326bf4866a2585..7ea896af71a0b3f22755ccdce6c62998c4aa9d39 100644 (file)
@@ -7,4 +7,4 @@
 | +1#0000000&@19|~+0#4040ff13&| @27||+1#0000000&|~+0#4040ff13&| @26
 | +1#0000000&@19|~+0#4040ff13&| @27||+1#0000000&|~+0#4040ff13&| @26
 | +1#0000000&@19|[+3&&|N|o| |N|a|m|e|]| @5|0|,|0|-|1| @5|A|l@1| |[+1&&|N|o| |N|a|m|e|]| @4|0|,|0|-|1| @5|A|l@1
-|:+0&&|v|s|p|l|i|t| @70
+| @19|:+0&&|v|s|p|l|i|t| @50
index 82d3356441d2c155d9bccec7934ae6db843cf81b..842ae8a787320812cb845e5d9f263b24a3db3a59 100644 (file)
@@ -7,4 +7,4 @@
 | +1#0000000&@19|~+0#4040ff13&| @18||+1#0000000&|~+0#4040ff13&| @16||+1#0000000&|~+0#4040ff13&| @16
 | +1#0000000&@19|~+0#4040ff13&| @18||+1#0000000&|~+0#4040ff13&| @16||+1#0000000&|~+0#4040ff13&| @16
 | +1#0000000&@19|<+3&&|N|o| |N|a|m|e|]| |0|,|0|-|1| @1|A|l@1| |<+1&&|o| |N|a|m|e|]| |0|,|0|-|1| |A|l@1| |<|o| |N|a|m|e|]| |0|,|0|-|1| |A|l@1
-|:+0&&|v|s|p|l|i|t| @70
+| @19|:+0&&|v|s|p|l|i|t| @50
index 6e5f8e44760a4eebb535f96ebc189b1a4370a0e6..62c51f443936ec0cb67280bc09394f5ec1a4cb88 100644 (file)
@@ -7,4 +7,4 @@
 |~+0#4040ff13&| @56||+1#0000000&| @18
 |~+0#4040ff13&| @56||+1#0000000&| @18
 |~+0#4040ff13&| @56||+1#0000000&| @18
-|:+0&&|s|e|t| |t|a|b|p|a|n|e|l|o|p|t|=|a|l|i|g|n|:|r|i|g|h|t|,|v|e|r|t| @26|0|,|0|-|1| @8|A|l@1| 
+| +0&&@39|0|,|0|-|1| @8|A|l@1| ||+1&&| @18
index 79789436136e3e743a2d80e5dcd6f294874e4273..131e3f38a7a2018ef49cf750b1ebdb8516e60c70 100644 (file)
@@ -7,4 +7,4 @@
 |~+0#4040ff13&| @27||+1#0000000&|~+0#4040ff13&| @26||+1#0000000&| @18
 |~+0#4040ff13&| @27||+1#0000000&|~+0#4040ff13&| @26||+1#0000000&| @18
 |[+3&&|N|o| |N|a|m|e|]| @5|0|,|0|-|1| @5|A|l@1| |[+1&&|N|o| |N|a|m|e|]| @4|0|,|0|-|1| @5|A|l@1||| @18
-|:+0&&|v|s|p|l|i|t| @70
+|:+0&&|v|s|p|l|i|t| @50||+1&&| @18
index 5744d130efbc0a98935e68f1bbf1ba68441c73d0..bd9183b190f50d5eee0b243553870bddbe00c6bb 100644 (file)
@@ -7,4 +7,4 @@
 |~+0#4040ff13&| @18||+1#0000000&|~+0#4040ff13&| @16||+1#0000000&|~+0#4040ff13&| @16||+1#0000000&| @18
 |~+0#4040ff13&| @18||+1#0000000&|~+0#4040ff13&| @16||+1#0000000&|~+0#4040ff13&| @16||+1#0000000&| @18
 |<+3&&|N|o| |N|a|m|e|]| |0|,|0|-|1| @1|A|l@1| |<+1&&|o| |N|a|m|e|]| |0|,|0|-|1| |A|l@1| |<|o| |N|a|m|e|]| |0|,|0|-|1| |A|l@1||| @18
-|:+0&&|v|s|p|l|i|t| @70
+|:+0&&|v|s|p|l|i|t| @50||+1&&| @18
index 65c7362760ffed8773e82d0ea7ef23f754661044..acf0ea94bd9af1e3a77a985929e348ccc515830f 100644 (file)
@@ -117,6 +117,9 @@ function Test_tabpanel_mouse()
   call test_setmouse(3, 1)
   call feedkeys("\<LeftMouse>", 'xt')
   call assert_equal(3, tabpagenr())
+  call test_setmouse(&lines, 1)
+  call feedkeys("\<LeftMouse>", 'xt')
+  call assert_equal(1, tabpagenr())
 
   " Drag the active tab page
   tablast
@@ -148,8 +151,8 @@ function Test_tabpanel_mouse()
   call assert_equal(3, tabpagenr())
 
   " Test getmousepos()
-  call feedkeys("\<LeftMouse>", 'xt')
   call test_setmouse(2, 3)
+  call feedkeys("\<LeftMouse>", 'xt')
   let pos = getmousepos()
   call assert_equal(0, pos['winid'])
   call assert_equal(0, pos['winrow'])
@@ -404,7 +407,7 @@ function Test_tabpanel_visual()
   let lines =<< trim END
     set showtabpanel=2
     set tabpanelopt=columns:10
-    set showtabline=0
+    set showtabline=0 laststatus=2
     tabnew
     call setbufline(bufnr(), 1, ['aaa1 bbb1 ccc1 ddd1', 'aaa2 bbb2 ccc2 ddd2', 'aaa3 bbb3 ccc3 ddd3', 'aaa4 bbb4 ccc4 ddd4'])
   END
@@ -452,7 +455,7 @@ function Test_tabpanel_tabline_and_tabpanel()
     set showtabpanel=2
     set tabpanelopt=columns:10,vert
     set fillchars=tpl_vert:│
-    set showtabline=2
+    set showtabline=2 laststatus=2
     e aaa.txt
     tabnew
     e bbb.txt
index f69be10d20c6c1f79f3d15daa717fb1efbe8b19f..adf5f22684c3cc7e6983f5e993bda81aa39fb3a7 100644 (file)
@@ -729,6 +729,8 @@ static char *(features[]) =
 
 static int included_patches[] =
 {   /* Add new patch number below this line */
+/**/
+    1898,
 /**/
     1897,
 /**/
@@ -4598,7 +4600,7 @@ version_msg_wrap(char_u *s, int wrap)
 {
     int                len = vim_strsize(s) + (wrap ? 2 : 0);
 
-    if (!got_int && len < (int)Columns && msg_col + len >= (int)Columns
+    if (!got_int && len < cmdline_width && msg_col + len >= cmdline_width
                                                                && *s != '\n')
        msg_putchar('\n');
     if (!got_int)
@@ -4656,7 +4658,7 @@ list_in_columns(char_u **items, int size, int current)
     }
     width += 1;
 
-    if (Columns < width)
+    if (cmdline_width < width)
     {
        // Not enough screen columns - show one per line
        for (i = 0; i < item_count; ++i)
@@ -4670,7 +4672,7 @@ list_in_columns(char_u **items, int size, int current)
 
     // The rightmost column doesn't need a separator.
     // Sacrifice it to fit in one more column if possible.
-    ncol = (int) (Columns + 1) / width;
+    ncol = (cmdline_width + 1) / width;
     nrow = item_count / ncol + ((item_count % ncol) ? 1 : 0);
 
     // "i" counts columns then rows.  "idx" counts rows then columns.
index 17051c86f979820e54457fa0fd7d78dbd4fa05bf..7ff22828031e312b660dac64dd107a3d97b6ca04 100644 (file)
@@ -6228,8 +6228,9 @@ shell_new_columns(void)
        return;
 
 #if defined(FEAT_TABPANEL)
-    int save_wincol = firstwin->w_wincol;
-    int save_fr_width = topframe->fr_width;
+    static int prev_tp_width;
+    static int prev_wincol;
+    static int prev_fr_width;
 #endif
     int w = COLUMNS_WITHOUT_TPL();
 
@@ -6242,12 +6243,26 @@ shell_new_columns(void)
     win_comp_pos();            // recompute w_winrow and w_wincol
 
 #if defined(FEAT_TABPANEL)
-    if (p_ea && firstwin->w_wincol + topframe->fr_width
-           == save_wincol + save_fr_width &&
-           (firstwin->w_wincol != save_wincol ||
-            topframe->fr_width != save_fr_width))
+    int tp_width = tabpanel_width();
+    int tp_width_changed = tp_width != prev_tp_width;
+    // tabpanel width changed
+    if (tp_width_changed && p_ea)
        win_equal(curwin, FALSE, 0);
+    // tabpanel layout changed
+    if (tp_width_changed
+           || (tp_width > 0 && (firstwin->w_wincol != prev_wincol
+                   || topframe->fr_width != prev_fr_width)))
+    {
+       screen_fill(cmdline_row, (int)Rows, 0, (int)Columns, ' ', ' ', 0);
+    }
+    prev_tp_width = tabpanel_width();
+    prev_wincol = firstwin->w_wincol;
+    prev_fr_width = topframe->fr_width;
 #endif
+    // Adjust offset for command line start column
+    cmdline_col_off = firstwin->w_wincol;
+    cmdline_width = topframe->fr_width;
+    comp_col();
     if (!skip_win_fix_scroll)
        win_fix_scroll(TRUE);