home *** CD-ROM | disk | FTP | other *** search
- To: vim-dev@vim.org
- Subject: Patch 6.1.194
- Fcc: outbox
- From: Bram Moolenaar <Bram@moolenaar.net>
- Mime-Version: 1.0
- Content-Type: text/plain; charset=ISO-8859-1
- Content-Transfer-Encoding: 8bit
- ------------
-
- Patch 6.1.194
- Problem: When "t_ti" is set but it doesn't cause swapping terminal pages,
- "ZZ" may cause the shell prompt to appear on top of the file-write
- message.
- Solution: Scroll the text up in the Vim page before swapping to the terminal
- page. (Michael Schroeder)
- Files: src/os_unix.c
-
-
- *** ../vim61.193/src/os_unix.c Sat Sep 14 17:00:01 2002
- --- src/os_unix.c Thu Sep 19 21:22:50 2002
- ***************
- *** 2425,2430 ****
- --- 2425,2450 ----
- #endif
- }
-
- + static void exit_scroll __ARGS((void));
- +
- + /*
- + * Output a newline when exiting.
- + * Make sure the newline goes to the same stream as the text.
- + */
- + static void
- + exit_scroll()
- + {
- + if (msg_use_printf())
- + {
- + if (info_message)
- + mch_msg("\r\n");
- + else
- + mch_errmsg("\r\n");
- + }
- + else
- + out_char('\n');
- + }
- +
- void
- mch_exit(r)
- int r;
- ***************
- *** 2443,2449 ****
- #ifdef FEAT_TITLE
- mch_restore_title(3); /* restore xterm title and icon name */
- #endif
- ! /* Stop termcap first: May need to check for T_CRV response, which
- * requires RAW mode. */
- stoptermcap();
-
- --- 2463,2478 ----
- #ifdef FEAT_TITLE
- mch_restore_title(3); /* restore xterm title and icon name */
- #endif
- ! /*
- ! * When t_ti is not empty but it doesn't cause swapping terminal
- ! * pages, need to output a newline when msg_didout is set. But when
- ! * t_ti does swap pages it should not go to the shell page. Do this
- ! * before stoptermcap().
- ! */
- ! if (swapping_screen() && !newline_on_exit && msg_didout)
- ! exit_scroll();
- !
- ! /* Stop termcap: May need to check for T_CRV response, which
- * requires RAW mode. */
- stoptermcap();
-
- ***************
- *** 2454,2471 ****
- if (!swapping_screen() || newline_on_exit)
- {
- if (newline_on_exit || msg_didout)
- ! {
- ! /* Make sure the newline goes to the same stream as the text */
- ! if (msg_use_printf())
- ! {
- ! if (info_message)
- ! mch_msg("\r\n");
- ! else
- ! mch_errmsg("\r\n");
- ! }
- ! else
- ! out_char('\n');
- ! }
- else
- {
- restore_cterm_colors(); /* get original colors back */
- --- 2483,2489 ----
- if (!swapping_screen() || newline_on_exit)
- {
- if (newline_on_exit || msg_didout)
- ! exit_scroll();
- else
- {
- restore_cterm_colors(); /* get original colors back */
- *** ../vim61.193/src/version.c Mon Sep 23 21:15:51 2002
- --- src/version.c Mon Sep 23 21:18:23 2002
- ***************
- *** 608,609 ****
- --- 608,611 ----
- { /* Add new patch number below this line */
- + /**/
- + 194,
- /**/
-
- --
- Time is an illusion. Lunchtime doubly so.
- -- Ford Prefect, in Douglas Adams'
- "The Hitchhiker's Guide to the Galaxy"
-
- /// Bram Moolenaar -- Bram@moolenaar.net -- http://www.moolenaar.net \\\
- /// Creator of Vim - Vi IMproved -- http://www.vim.org \\\
- \\\ Project leader for A-A-P -- http://www.a-a-p.org ///
- \\\ Lord Of The Rings helps Uganda - http://iccf-holland.org/lotr.html ///
-