Problem: 'ttyfast' is set for arbitrary terminals.
Solution: Always set 'ttyfast'. (closes #11549)
xterm entries...).
*'ttyfast'* *'tf'* *'nottyfast'* *'notf'*
-'ttyfast' 'tf' boolean (default off, on when 'term' is xterm, hpterm,
- sun-cmd, screen, rxvt, dtterm or
- iris-ansi; also on when running Vim in
- a DOS console)
+'ttyfast' 'tf' boolean (default on)
global
Indicates a fast terminal connection. More characters will be sent to
the screen for redrawing, instead of using insert/delete line
line for lines that wrap. This helps when using copy/paste with the
mouse in an xterm and other terminals.
+ The default used to be set only for some terminal names, but these
+ days nearly all terminals are fast, therefore the default is now "on".
+ If you have a slow connection you may want to set this option off,
+ e.g. depending on the host name: >
+ if hostname() =~ 'faraway'
+ set nottyfast
+ endif
+<
*'ttymouse'* *'ttym'*
'ttymouse' 'ttym' string (default depends on 'term')
global
can be changed at compile time.
(For forking of the GUI version see |gui-fork|.)
-Because terminal updating under Unix is often slow (e.g. serial line
-terminal, shell window in suntools), the 'showcmd' and 'ruler' options
-are off by default. If you have a fast terminal, try setting them on. You
-might also want to set 'ttyfast'.
+For historic reasons terminal updating under Unix is expected to be slow (e.g.
+serial line terminal, shell window in suntools), the 'showcmd' and 'ruler'
+options are off by default. If you have a fast terminal, try setting them
+on: >
+ set showcmd ruler
When using Vim in an xterm the mouse clicks can be used by Vim by setting
'mouse' to "a". If there is access to an X-server gui style copy/paste will
Vim will also recognize that they are fast terminals.
-If you have some annoying line jumping on the screen between windows add to
-your .vimrc file: >
-
- set ttyfast " set fast terminal
-
-Note: if you're using Vim on remote host or through a very slow connection, it's
-recommended to avoid the fast terminal option with: >
+If you're using Vim on remote host or through a very slow connection, you
+might want to reset fast terminal option with: >
set nottyfast " set terminal to slow mode
-(Zoltan Arpadffy, Vim 5.6)
-
8.7 Hex-editing and other external tools
If your terminal does not support a scrolling region, but it does support
insert/delete line commands, scrolling with multiple windows may make the
-lines jump up and down. If you don't want this set the 'ttyfast' option.
-This will redraw the window instead of scroll it.
+lines jump up and down. This would happen if the 'ttyfast' option has been
+reset. Check that with: >
+ verbose set ttyfast?
If your terminal scrolls very slowly, but redrawing is not slow, set the
'ttyscroll' option to a small number, e.g., 3. This will make Vim redraw the
{(char_u *)TRUE, (char_u *)0L} SCTX_INIT},
{"ttyfast", "tf", P_BOOL|P_NO_MKRC|P_VI_DEF,
(char_u *)&p_tf, PV_NONE,
- {(char_u *)FALSE, (char_u *)0L} SCTX_INIT},
+ {(char_u *)TRUE, (char_u *)0L} SCTX_INIT},
{"ttymouse", "ttym", P_STRING|P_NODEFAULT|P_NO_MKRC|P_VI_DEF,
#if defined(UNIX) || defined(VMS)
(char_u *)&p_ttym, PV_NONE,
|| STRCMP(name, "builtin_vt320") == 0);
}
-/*
- * Return TRUE if "name" is a terminal for which 'ttyfast' should be set.
- * This should include all windowed terminal emulators.
- */
- int
-vim_is_fastterm(char_u *name)
-{
- if (name == NULL)
- return FALSE;
- if (vim_is_xterm(name) || vim_is_vt300(name) || vim_is_iris(name))
- return TRUE;
- return ( STRNICMP(name, "hpterm", 6) == 0
- || STRNICMP(name, "sun-cmd", 7) == 0
- || STRNICMP(name, "screen", 6) == 0
- || STRNICMP(name, "tmux", 4) == 0
- || STRNICMP(name, "dtterm", 6) == 0);
-}
-
/*
* Insert user name in s[len].
* Return OK if a name found.
int use_xterm_mouse(void);
int vim_is_iris(char_u *name);
int vim_is_vt300(char_u *name);
-int vim_is_fastterm(char_u *name);
int mch_get_user_name(char_u *s, int len);
int mch_get_uname(uid_t uid, char_u *s, int len);
void mch_get_host_name(char_u *s, int len);
}
#endif
-#if defined(UNIX) || defined(VMS)
- /*
- * 'ttyfast' is default on for xterm, iris-ansi and a few others.
- */
- if (vim_is_fastterm(term))
- p_tf = TRUE;
-#endif
-#ifdef USE_TERM_CONSOLE
- /*
- * 'ttyfast' is default on consoles
- */
- if (term_console)
- p_tf = TRUE;
-#endif
-
ttest(TRUE); // make sure we have a valid set of terminal codes
full_screen = TRUE; // we can use termcap codes from now on
static int included_patches[] =
{ /* Add new patch number below this line */
+/**/
+ 948,
/**/
947,
/**/