diff src/term.c @ 83450:c69d44922688

Merged from miles@gnu.org--gnu-2005 (patch 682) Patches applied: * miles@gnu.org--gnu-2005/emacs--cvs-trunk--0--patch-682 Update from CVS git-archimport-id: lorentey@elte.hu--2004/emacs--multi-tty--0--patch-490
author Karoly Lorentey <lorentey@elte.hu>
date Tue, 03 Jan 2006 02:15:28 +0000
parents 76396de7f50a 52bbc53dbce1
children b98066f4aa10
line wrap: on
line diff
--- a/src/term.c	Tue Jan 03 01:50:46 2006 +0000
+++ b/src/term.c	Tue Jan 03 02:15:28 2006 +0000
@@ -109,6 +109,10 @@
 
 #define OUTPUT1_IF(tty, a) do { if (a) emacs_tputs ((tty), a, 1, cmputc); } while (0)
 
+/* If true, use "vs", otherwise use "ve" to make the cursor visible.  */
+
+static int visible_cursor;
+
 /* Display space properties */
 
 extern Lisp_Object Qspace, QCalign_to, QCwidth;
@@ -217,7 +221,7 @@
         }
 
       OUTPUT_IF (tty, tty->TS_termcap_modes);
-      OUTPUT_IF (tty, tty->TS_cursor_visible);
+      OUTPUT_IF (tty, visible_cursor ? tty->TS_cursor_visible : tty->TS_cursor_normal);
       OUTPUT_IF (tty, tty->TS_keypad_mode);
       losecursor (tty);
       fflush (tty->output);
@@ -359,7 +363,8 @@
     {
       tty->cursor_hidden = 0;
       OUTPUT_IF (tty, tty->TS_cursor_normal);
-      OUTPUT_IF (tty, tty->TS_cursor_visible);
+      if (visible_cursor)
+        OUTPUT_IF (tty, tty->TS_cursor_visible);
     }
 }
 
@@ -3031,6 +3036,13 @@
 See `resume-tty'.  */);
   Vresume_tty_functions = Qnil;
 
+  DEFVAR_BOOL ("visible-cursor", &visible_cursor,
+	       doc: /* Non-nil means to make the cursor very visible.
+This only has an effect when running in a text terminal.
+What means \"very visible\" is up to your terminal.  It may make the cursor
+bigger, or it may make it blink, or it may do nothing at all.  */);
+  visible_cursor = 1;
+
   defsubr (&Stty_display_color_p);
   defsubr (&Stty_display_color_cells);
   defsubr (&Stty_no_underline);