*** empty log message ***
authorroot <root>
Sun, 17 Apr 2005 22:36:12 +0000 (22:36 +0000)
committerroot <root>
Sun, 17 Apr 2005 22:36:12 +0000 (22:36 +0000)
21 files changed:
Changes
README.FAQ
README.configure
autoconf/configure.in
doc/etc/rxvt-unicode.termcap
doc/rxvt.1.html
doc/rxvt.1.man.in
doc/rxvt.1.pod
doc/rxvt.1.txt
doc/rxvt.7.html
doc/rxvt.7.man.in
doc/rxvt.7.pod
doc/rxvt.7.txt
reconf
src/keyboard.C
src/rxvt.h
src/rxvtfont.C
src/rxvtlib.h.in
src/screen.C
src/version.h
src/xdefaults.C

diff --git a/Changes b/Changes
index 1d49ea3cfa50885aef9a25d1adda76552105b25a..4d708bcd3efe5936eef32a09c2f31d0bbeb01629 100644 (file)
--- a/Changes
+++ b/Changes
@@ -11,6 +11,16 @@ WISH: OnTheSpot editing, or maybe switch to miiiiiiif
 WISH: tabbed windows (hey, just use screen...)
 WISH: just for fun, do shade and tint with XRender.
 
+5.4  Mon Apr 18 00:33:31 CEST 2005
+       - match modifier state exactly in custom keyboard code.
+          this is necessary because it has no knowledge about
+          built-in mappings and so will overwrite them. the priority-code
+          will be re-enabled when this has changed, so watch out.
+       - cursor blinking now depends on frills.
+        - underline cursor mode (frills, -uc).
+       - implement special value (*g*) for pointerBlankDelay
+          to disble it.
+
 5.3  Sun Mar 13 00:20:44 CET 2005
        - fix a bug that allowed to overflow a buffer via a long
           escape sequence, which is probably exploitable (fix by
index 2fba3a0f3b08c66e2db486232350a4fafa7d30ac..1a12e2f390d23e3db0e1b11bdf965acef105f4ba 100644 (file)
@@ -281,13 +281,16 @@ FREQUENTLY ASKED QUESTIONS
         representation of wchar_t. This is, of course, completely fine with
         respect to standards.
 
-        However, "__STDC_ISO_10646__" is the only sane way to support
-        multi-language apps in an OS, as using a locale-dependent (and
-        non-standardized) representation of wchar_t makes it impossible to
-        convert between wchar_t (as used by X11 and your applications) and
-        any other encoding without implementing OS-specific-wrappers for
-        each and every locale. There simply are no APIs to convert wchar_t
-        into anything except the current locale encoding.
+        However, that means rxvt-unicode only works in "POSIX", "ISO-8859-1"
+        and "UTF-8" locales under FreeBSD (which all use Unicode as wchar_t.
+
+        "__STDC_ISO_10646__" is the only sane way to support multi-language
+        apps in an OS, as using a locale-dependent (and non-standardized)
+        representation of wchar_t makes it impossible to convert between
+        wchar_t (as used by X11 and your applications) and any other
+        encoding without implementing OS-specific-wrappers for each and
+        every locale. There simply are no APIs to convert wchar_t into
+        anything except the current locale encoding.
 
         Some applications (such as the formidable mlterm) work around this
         by carrying their own replacement functions for character set
index 37829013d97400f8918c5a179c73cff5a23dee6e..8133ff3cba617ec93cb7b2dc0e29d7107fb927ee 100644 (file)
@@ -22,13 +22,14 @@ CONFIGURE OPTIONS
         fonts can be set manually or automatically.
 
     --with-codesets=NAME,...
-        Compile in support for additional codeset (encoding) groups (eu, vn
-        are always compiled in, which includes most 8-bit character sets).
-        These codeset tables are currently only used for driving X11 core
-        fonts, they are not required for Xft fonts. Compiling them in will
-        make your binary bigger (together about 700kB), but it doesn't
-        increase memory usage unless you use an X11 font requiring one of
-        these encodings.
+        Compile in support for additional codeset (encoding) groups ("eu",
+        "vn" are always compiled in, which includes most 8-bit character
+        sets). These codeset tables are used for driving X11 core fonts,
+        they are not required for Xft fonts, although having them compiled
+        in lets rxvt-unicode choose replacement fonts more intelligently.
+        Compiling them in will make your binary bigger (all of together cost
+        about 700kB), but it doesn't increase memory usage unless you use a
+        font requiring one of these encodings.
 
            all             all available codeset groups 
            zh              common chinese encodings 
@@ -189,6 +190,7 @@ CONFIGURE OPTIONS
           tripleclickwords
           settable insecure mode
           keysym remapping support
+          cursor blinking and underline cursor
           -embed and -pty-fd options
 
     --enable-iso14755
@@ -229,9 +231,6 @@ CONFIGURE OPTIONS
         hot keys. This should keep in a fixed position the rxvt corner which
         is closest to a corner of the screen.
 
-    --enable-cursor-blink
-        Add support for a blinking cursor.
-
     --enable-pointer-blank
         Add support to have the pointer disappear when typing or inactive.
 
index 3916979e719dc2e07cb74c2c18bec71f45c1e774..a173ab7bce573d01a4c668ab5a9641274b68a558 100644 (file)
@@ -101,7 +101,6 @@ support_mouseslipwheel=no
 support_utmp=no
 support_wtmp=no
 support_lastlog=no
-support_cursor_blink=no
 support_text_blink=no
 support_pointer_blank=no
 support_scroll_rxvt=no
@@ -144,7 +143,6 @@ AC_ARG_ENABLE(everything,
     support_menubar=yes
     support_mousewheel=yes
     support_mouseslipwheel=yes
-    support_cursor_blink=yes
     support_text_blink=yes
     support_pointer_blank=yes
     support_scroll_rxvt=yes
@@ -425,12 +423,6 @@ AC_ARG_ENABLE(smart-resize,
     AC_DEFINE(SMART_RESIZE, 1, Define to use "smart" resize behavior)
   fi])
 
-AC_ARG_ENABLE(cursor-blink,
-  [  --enable-cursor-blink   enable blinking cursor],
-  [if test x$enableval = xyes -o x$enableval = xno; then
-    support_cursor_blink=$enableval
-  fi])
-
 AC_ARG_ENABLE(text-blink,
   [  --enable-text-blink     enable blinking text],
   [if test x$enableval = xyes -o x$enableval = xno; then
@@ -1282,9 +1274,6 @@ fi
 if test x$support_pointer_blank = xyes; then
   AC_DEFINE(POINTER_BLANK, 1, Define if you want hide the pointer while typing)
 fi
-if test x$support_cursor_blink = xyes; then
-  AC_DEFINE(CURSOR_BLINK, 1, Define if you want blinking cursor support)
-fi
 if test x$support_text_blink = xyes; then
   AC_DEFINE(TEXT_BLINK, 1, Define if you want blinking text support)
 fi
index 222159705fe94db65a1f894a126217d5abe8297d..bd689e35114ba523e54044e7ba5069f87ec5ba46 100644 (file)
@@ -1,15 +1,16 @@
-#      Reconstructed via infocmp from file: /etc/terminfo/r/rxvt-unicode
+#      Reconstructed via infocmp from file: /usr/share/terminfo/r/rxvt-unicode
 # (untranslatable capabilities removed to fit entry within 1023 bytes)
 rxvt-unicode|rxvt-unicode terminal (X Window System):\
        :am:bw:eo:km:mi:ms:xn:xo:\
        :co#80:it#8:li#24:lm#0:\
        :AL=\E[%dL:DC=\E[%dP:DL=\E[%dM:DO=\E[%dB:IC=\E[%d@:\
        :K1=\EOw:K2=\EOu:K3=\EOy:K4=\EOq:K5=\EOs:LE=\E[%dD:\
-       :RI=\E[%dC:SF=\E[%dS:SR=\E[%dT:UP=\E[%dA:ae=^O:al=\E[L:\
-       :as=^N:bl=^G:cd=\E[J:ce=\E[K:cl=\E[H\E[2J:cm=\E[%i%d;%dH:\
-       :cr=^M:cs=\E[%i%d;%dr:ct=\E[3g:dc=\E[P:dl=\E[M:do=^J:\
-       :ec=\E[%dX:ei=\E[4l:ho=\E[H:i1=\E[?47l\E=\E[?1l:ic=\E[@:\
-       :im=\E[4h:is=\E[r\E[m\E[2J\E[H\E[?7h\E[?1;3;4;6l\E[4l:\
+       :RI=\E[%dC:SF=\E[%dS:SR=\E[%dT:UP=\E[%dA:ae=\E(B:al=\E[L:\
+       :as=\E(0:bl=^G:cd=\E[J:ce=\E[K:cl=\E[H\E[2J:\
+       :cm=\E[%i%d;%dH:cr=^M:cs=\E[%i%d;%dr:ct=\E[3g:dc=\E[P:\
+       :dl=\E[M:do=^J:ec=\E[%dX:ei=\E[4l:ho=\E[H:\
+       :i1=\E[?47l\E=\E[?1l:ic=\E[@:im=\E[4h:\
+       :is=\E[r\E[m\E[2J\E[H\E[?7h\E[?1;3;4;6l\E[4l:\
        :k1=\E[11~:k2=\E[12~:k3=\E[13~:k4=\E[14~:k5=\E[15~:\
        :k6=\E[17~:k7=\E[18~:k8=\E[19~:k9=\E[20~:kD=\E[3~:\
        :kI=\E[2~:kN=\E[6~:kP=\E[5~:kb=\177:kd=\EOB:ke=\E[?1l\E>:\
index 9d8a2c75bb9253d4c7ccd271bd932428d80049f4..13acfc70b40b6c1a2aae5d585c5cfb26eaf8faaa 100644 (file)
@@ -49,7 +49,7 @@
 </p>
 <hr />
 <h1><a name="description">DESCRIPTION</a></h1>
-<p><strong>rxvt-unicode</strong>, version <strong>5.2</strong>, is a colour vt102 terminal
+<p><strong>rxvt-unicode</strong>, version <strong>5.3</strong>, is a colour vt102 terminal
 emulator intended as an <em>xterm</em>(1) replacement for users who do not
 require features such as Tektronix 4014 emulation and toolkit-style
 configurability. As a result, <strong>rxvt-unicode</strong> uses much less swap space --
@@ -1097,7 +1097,8 @@ Mouse pointer background colour.
 <dt><strong><a name="item_pointerblankdelay_3a_number"><strong>pointerBlankDelay:</strong> <em>number</em></a></strong><br />
 </dt>
 <dd>
-Specifies number of seconds before blanking the pointer [default 2].
+Specifies number of seconds before blanking the pointer [default 2]. Use a
+large number (e.g. <code>987654321</code>) to effectively disable the timeout.
 </dd>
 <p></p>
 <dt><strong><a name="item_backspacekey_3a_string"><strong>backspacekey:</strong> <em>string</em></a></strong><br />
index be3e16f9423a5234263dd0a05524b459daecc7e8..5d2190b7a694102afcb6f7638a79f0cbf58f77d7 100644 (file)
 .\" ========================================================================
 .\"
 .IX Title "rxvt 1"
-.TH rxvt 1 "2005-02-19" "5.2" "RXVT-UNICODE"
+.TH rxvt 1 "2005-04-17" "5.3" "RXVT-UNICODE"
 .SH "NAME"
 rxvt\-unicode (ouR XVT, unicode) \- (a VT102 emulator for the X window system)
 .SH "SYNOPSIS"
@@ -845,7 +845,8 @@ Mouse pointer foreground colour.
 Mouse pointer background colour.
 .IP "\fBpointerBlankDelay:\fR \fInumber\fR" 4
 .IX Item "pointerBlankDelay: number"
-Specifies number of seconds before blanking the pointer [default 2].
+Specifies number of seconds before blanking the pointer [default 2]. Use a
+large number (e.g. \f(CW987654321\fR) to effectively disable the timeout.
 .IP "\fBbackspacekey:\fR \fIstring\fR" 4
 .IX Item "backspacekey: string"
 The string to send when the backspace key is pressed. If set to \fB\s-1DEC\s0\fR
index 32f757d431a4d328c3ebec31bf61feb4639252dd..91b9ab19b0b27bf10707197c7386c3443ca429f2 100644 (file)
@@ -817,7 +817,8 @@ Mouse pointer background colour.
 
 =item B<pointerBlankDelay:> I<number>
 
-Specifies number of seconds before blanking the pointer [default 2].
+Specifies number of seconds before blanking the pointer [default 2]. Use a
+large number (e.g. C<987654321>) to effectively disable the timeout.
 
 =item B<backspacekey:> I<string>
 
index b301bc757a62671013e0d4e2d02bbf9618c714a1..86481e46ab937619ac52c650e6e8f74079b5ea6f 100644 (file)
@@ -6,7 +6,7 @@ SYNOPSIS
     rxvt [options] [-e command [ args ]]
 
 DESCRIPTION
-    rxvt-unicode, version 5.2, is a colour vt102 terminal emulator intended
+    rxvt-unicode, version 5.3, is a colour vt102 terminal emulator intended
     as an *xterm*(1) replacement for users who do not require features such
     as Tektronix 4014 emulation and toolkit-style configurability. As a
     result, rxvt-unicode uses much less swap space -- a significant
@@ -699,6 +699,8 @@ RESOURCES (available also as long-options)
 
     pointerBlankDelay: *number*
         Specifies number of seconds before blanking the pointer [default 2].
+        Use a large number (e.g. 987654321) to effectively disable the
+        timeout.
 
     backspacekey: *string*
         The string to send when the backspace key is pressed. If set to DEC
index b21deb9bf72b6ab040676ec165e8e77d1388ec8a..264a411e44889cd530eb045ab1a507c6e3845a64 100644 (file)
@@ -440,13 +440,17 @@ does it support it. Instead, it uses it's own internal representation of
 <strong>wchar_t</strong>. This is, of course, completely fine with respect to standards.</p>
 </dd>
 <dd>
-<p>However, <code>__STDC_ISO_10646__</code> is the only sane way to support
-multi-language apps in an OS, as using a locale-dependent (and
-non-standardized) representation of <strong>wchar_t</strong> makes it impossible to
-convert between <strong>wchar_t</strong> (as used by X11 and your applications) and any
-other encoding without implementing OS-specific-wrappers for each and
-every locale. There simply are no APIs to convert <strong>wchar_t</strong> into anything
-except the current locale encoding.</p>
+<p>However, that means rxvt-unicode only works in <code>POSIX</code>, <code>ISO-8859-1</code> and
+<code>UTF-8</code> locales under FreeBSD (which all use Unicode as <strong>wchar_t</strong>.</p>
+</dd>
+<dd>
+<p><code>__STDC_ISO_10646__</code> is the only sane way to support multi-language
+apps in an OS, as using a locale-dependent (and non-standardized)
+representation of <strong>wchar_t</strong> makes it impossible to convert between
+<strong>wchar_t</strong> (as used by X11 and your applications) and any other encoding
+without implementing OS-specific-wrappers for each and every locale. There
+simply are no APIs to convert <strong>wchar_t</strong> into anything except the current
+locale encoding.</p>
 </dd>
 <dd>
 <p>Some applications (such as the formidable <strong>mlterm</strong>) work around this
@@ -2531,12 +2535,13 @@ styles. The fonts can be set manually or automatically.
 <dt><strong><a name="item__2d_2dwith_2dcodesets_3dname_2c_2e_2e_2e">--with-codesets=NAME,...</a></strong><br />
 </dt>
 <dd>
-Compile in support for additional codeset (encoding) groups (eu, vn are
-always compiled in, which includes most 8-bit character sets). These
-codeset tables are currently only used for driving X11 core fonts, they
-are not required for Xft fonts. Compiling them in will make your binary
-bigger (together about 700kB), but it doesn't increase memory usage unless
-you use an X11 font requiring one of these encodings.
+Compile in support for additional codeset (encoding) groups (<code>eu</code>, <code>vn</code>
+are always compiled in, which includes most 8-bit character sets). These
+codeset tables are used for driving X11 core fonts, they are not required
+for Xft fonts, although having them compiled in lets rxvt-unicode choose
+replacement fonts more intelligently. Compiling them in will make your
+binary bigger (all of together cost about 700kB), but it doesn't increase
+memory usage unless you use a font requiring one of these encodings.
 </dd>
 <table>
 <tr><td>all</td><td>all available codeset groups</td></tr>
@@ -2785,6 +2790,7 @@ in combination with other switches) is:</p>
   tripleclickwords
   settable insecure mode
   keysym remapping support
+  cursor blinking and underline cursor
   -embed and -pty-fd options</pre>
 </dd>
 <p></p>
@@ -2852,12 +2858,6 @@ keys. This should keep in a fixed position the rxvt corner which is
 closest to a corner of the screen.
 </dd>
 <p></p>
-<dt><strong><a name="item__2d_2denable_2dcursor_2dblink">--enable-cursor-blink</a></strong><br />
-</dt>
-<dd>
-Add support for a blinking cursor.
-</dd>
-<p></p>
 <dt><strong><a name="item__2d_2denable_2dpointer_2dblank">--enable-pointer-blank</a></strong><br />
 </dt>
 <dd>
index 56ec0f62d886c8cf9028edfb6e9eb9b6a3bb641b..e87d7aa61104b6172d78ecffeb964b2eae63b687 100644 (file)
 .\" ========================================================================
 .\"
 .IX Title "rxvt 7"
-.TH rxvt 7 "2005-02-21" "5.2" "RXVT-UNICODE"
+.TH rxvt 7 "2005-04-17" "5.3" "RXVT-UNICODE"
 .SH "NAME"
 RXVT REFERENCE \- FAQ, command sequences and other background information
 .SH "SYNOPSIS"
@@ -459,13 +459,16 @@ As you might have guessed, FreeBSD does neither define this symobl nor
 does it support it. Instead, it uses it's own internal representation of
 \&\fBwchar_t\fR. This is, of course, completely fine with respect to standards.
 .Sp
-However, \f(CW\*(C`_\|_STDC_ISO_10646_\|_\*(C'\fR is the only sane way to support
-multi-language apps in an \s-1OS\s0, as using a locale-dependent (and
-non\-standardized) representation of \fBwchar_t\fR makes it impossible to
-convert between \fBwchar_t\fR (as used by X11 and your applications) and any
-other encoding without implementing OS-specific-wrappers for each and
-every locale. There simply are no APIs to convert \fBwchar_t\fR into anything
-except the current locale encoding.
+However, that means rxvt-unicode only works in \f(CW\*(C`POSIX\*(C'\fR, \f(CW\*(C`ISO\-8859\-1\*(C'\fR and
+\&\f(CW\*(C`UTF\-8\*(C'\fR locales under FreeBSD (which all use Unicode as \fBwchar_t\fR.
+.Sp
+\&\f(CW\*(C`_\|_STDC_ISO_10646_\|_\*(C'\fR is the only sane way to support multi-language
+apps in an \s-1OS\s0, as using a locale-dependent (and non\-standardized)
+representation of \fBwchar_t\fR makes it impossible to convert between
+\&\fBwchar_t\fR (as used by X11 and your applications) and any other encoding
+without implementing OS-specific-wrappers for each and every locale. There
+simply are no APIs to convert \fBwchar_t\fR into anything except the current
+locale encoding.
 .Sp
 Some applications (such as the formidable \fBmlterm\fR) work around this
 by carrying their own replacement functions for character set handling
@@ -2189,12 +2192,13 @@ Add support for \fBbold\fR, \fIitalic\fR and \fB\f(BIbold italic\fB\fR font
 styles. The fonts can be set manually or automatically.
 .IP "\-\-with\-codesets=NAME,..." 4
 .IX Item "--with-codesets=NAME,..."
-Compile in support for additional codeset (encoding) groups (eu, vn are
-always compiled in, which includes most 8\-bit character sets). These
-codeset tables are currently only used for driving X11 core fonts, they
-are not required for Xft fonts. Compiling them in will make your binary
-bigger (together about 700kB), but it doesn't increase memory usage unless
-you use an X11 font requiring one of these encodings.
+Compile in support for additional codeset (encoding) groups (\f(CW\*(C`eu\*(C'\fR, \f(CW\*(C`vn\*(C'\fR
+are always compiled in, which includes most 8\-bit character sets). These
+codeset tables are used for driving X11 core fonts, they are not required
+for Xft fonts, although having them compiled in lets rxvt-unicode choose
+replacement fonts more intelligently. Compiling them in will make your
+binary bigger (all of together cost about 700kB), but it doesn't increase
+memory usage unless you use a font requiring one of these encodings.
 .TS
 l l .
 all    all available codeset groups
@@ -2346,7 +2350,7 @@ disable this.
 A non-exhaustive list of features enabled by \f(CW\*(C`\-\-enable\-frills\*(C'\fR (possibly
 in combination with other switches) is:
 .Sp
-.Vb 12
+.Vb 13
 \&  MWM-hints
 \&  EWMH-hints (pid, utf8 names) and protocols (ping)
 \&  seperate underline colour
@@ -2358,6 +2362,7 @@ in combination with other switches) is:
 \&  tripleclickwords
 \&  settable insecure mode
 \&  keysym remapping support
+\&  cursor blinking and underline cursor
 \&  -embed and -pty-fd options
 .Ve
 .IP "\-\-enable\-iso14755" 4
@@ -2399,9 +2404,6 @@ See <http://g.oswego.edu/dl/html/malloc.html> for details.
 Add smart growth/shrink behaviour when changing font size via from hot
 keys. This should keep in a fixed position the rxvt corner which is
 closest to a corner of the screen.
-.IP "\-\-enable\-cursor\-blink" 4
-.IX Item "--enable-cursor-blink"
-Add support for a blinking cursor.
 .IP "\-\-enable\-pointer\-blank" 4
 .IX Item "--enable-pointer-blank"
 Add support to have the pointer disappear when typing or inactive.
index d9c20cf34240da4993bcbb495385a174c3b0f77f..c6a45a0ac1ba8e1399f32afb6500b02f5c0de320 100644 (file)
@@ -2189,12 +2189,13 @@ styles. The fonts can be set manually or automatically.
 
 =item --with-codesets=NAME,...
 
-Compile in support for additional codeset (encoding) groups (eu, vn are
-always compiled in, which includes most 8-bit character sets). These
-codeset tables are currently only used for driving X11 core fonts, they
-are not required for Xft fonts. Compiling them in will make your binary
-bigger (together about 700kB), but it doesn't increase memory usage unless
-you use an X11 font requiring one of these encodings.
+Compile in support for additional codeset (encoding) groups (C<eu>, C<vn>
+are always compiled in, which includes most 8-bit character sets). These
+codeset tables are used for driving X11 core fonts, they are not required
+for Xft fonts, although having them compiled in lets rxvt-unicode choose
+replacement fonts more intelligently. Compiling them in will make your
+binary bigger (all of together cost about 700kB), but it doesn't increase
+memory usage unless you use a font requiring one of these encodings.
 
 =begin table
 
@@ -2385,6 +2386,7 @@ in combination with other switches) is:
   tripleclickwords
   settable insecure mode
   keysym remapping support
+  cursor blinking and underline cursor
   -embed and -pty-fd options
 
 =item --enable-iso14755
@@ -2434,10 +2436,6 @@ Add smart growth/shrink behaviour when changing font size via from hot
 keys. This should keep in a fixed position the rxvt corner which is
 closest to a corner of the screen.
 
-=item --enable-cursor-blink
-
-Add support for a blinking cursor.
-
 =item --enable-pointer-blank
 
 Add support to have the pointer disappear when typing or inactive.
index 0e7c5106e9bd66a28cd7869de3d066ea5468ea20..09a431935af543979452aff947f477b7f80e8420 100644 (file)
@@ -302,13 +302,16 @@ FREQUENTLY ASKED QUESTIONS
         representation of wchar_t. This is, of course, completely fine with
         respect to standards.
 
-        However, "__STDC_ISO_10646__" is the only sane way to support
-        multi-language apps in an OS, as using a locale-dependent (and
-        non-standardized) representation of wchar_t makes it impossible to
-        convert between wchar_t (as used by X11 and your applications) and
-        any other encoding without implementing OS-specific-wrappers for
-        each and every locale. There simply are no APIs to convert wchar_t
-        into anything except the current locale encoding.
+        However, that means rxvt-unicode only works in "POSIX", "ISO-8859-1"
+        and "UTF-8" locales under FreeBSD (which all use Unicode as wchar_t.
+
+        "__STDC_ISO_10646__" is the only sane way to support multi-language
+        apps in an OS, as using a locale-dependent (and non-standardized)
+        representation of wchar_t makes it impossible to convert between
+        wchar_t (as used by X11 and your applications) and any other
+        encoding without implementing OS-specific-wrappers for each and
+        every locale. There simply are no APIs to convert wchar_t into
+        anything except the current locale encoding.
 
         Some applications (such as the formidable mlterm) work around this
         by carrying their own replacement functions for character set
@@ -1669,13 +1672,14 @@ CONFIGURE OPTIONS
         fonts can be set manually or automatically.
 
     --with-codesets=NAME,...
-        Compile in support for additional codeset (encoding) groups (eu, vn
-        are always compiled in, which includes most 8-bit character sets).
-        These codeset tables are currently only used for driving X11 core
-        fonts, they are not required for Xft fonts. Compiling them in will
-        make your binary bigger (together about 700kB), but it doesn't
-        increase memory usage unless you use an X11 font requiring one of
-        these encodings.
+        Compile in support for additional codeset (encoding) groups ("eu",
+        "vn" are always compiled in, which includes most 8-bit character
+        sets). These codeset tables are used for driving X11 core fonts,
+        they are not required for Xft fonts, although having them compiled
+        in lets rxvt-unicode choose replacement fonts more intelligently.
+        Compiling them in will make your binary bigger (all of together cost
+        about 700kB), but it doesn't increase memory usage unless you use a
+        font requiring one of these encodings.
 
            all             all available codeset groups 
            zh              common chinese encodings 
@@ -1836,6 +1840,7 @@ CONFIGURE OPTIONS
           tripleclickwords
           settable insecure mode
           keysym remapping support
+          cursor blinking and underline cursor
           -embed and -pty-fd options
 
     --enable-iso14755
@@ -1876,9 +1881,6 @@ CONFIGURE OPTIONS
         hot keys. This should keep in a fixed position the rxvt corner which
         is closest to a corner of the screen.
 
-    --enable-cursor-blink
-        Add support for a blinking cursor.
-
     --enable-pointer-blank
         Add support to have the pointer disappear when typing or inactive.
 
diff --git a/reconf b/reconf
index 7d1e4d558d719850a0093746b359f6576a99bbd9..b1367d62f96505d3ae136e56f4435f7cdf90046e 100755 (executable)
--- a/reconf
+++ b/reconf
@@ -15,8 +15,8 @@ fi
             --disable-keepscrolling --enable-xft --enable-mousewheel \
             --with-name=rxvt --enable-selectionscrolling --enable-pointer-blank \
             --enable-frills --enable-swapscreen --enable-transparency --enable-slipwheeling \
-            --with-codesets=zh,jp,kr --enable-menubar --enable-tinting \
-            --enable-cursor-blink --enable-text-blink --enable-fading \
+            --with-codesets=all --enable-menubar --enable-tinting \
+            --enable-text-blink --enable-fading \
             --enable-plain-scroll --enable-rxvt-scroll --enable-combining --enable-iso14755 \
             --enable-font-styles --enable-xpm-background --enable-xgetdefault \
             --enable-next-scroll --enable-xterm-scroll \
index ab5efd2e6ffdda15109fb60c6fd995525caf6078..c74120da20bb1361b7a7f82a4202cc91ee84bfc4 100644 (file)
@@ -461,8 +461,13 @@ keyboard_manager::find_keysym (KeySym keysym, unsigned int state)
       keysym_t *key = keymap [index];
 
       if (key->keysym <= keysym && keysym < key->keysym + key->range
+#if 0 // disabled because the custom ekymap does not know the builtin keymap
           // match only the specified bits in state and ignore others
-          && (key->state & state) == key->state)
+          && (key->state & state) == key->state
+#else // re-enable this part once the builtin keymap is handled here, too
+          && key->state == state
+#endif
+          )
         return index;
     }
 
index 9d7b3a8b2c7d36a3e9c05cb664107d1e145127ae..c9d9eecd2ee5f073dbfcf741c94775074e4a0c6d 100644 (file)
@@ -24,6 +24,7 @@
 #if ENABLE_FRILLS
 # define ENABLE_XEMBED 1
 # define ENABLE_EWMH   1
+# define CURSOR_BLINK  1
 #endif
 
 /*
@@ -645,6 +646,10 @@ enum {
   Rs_borderLess,
   Rs_lineSpace,
   Rs_pty_fd,
+  Rs_cursorUnderline,
+#endif
+#if CURSOR_BLINK
+  Rs_cursorBlink,
 #endif
 #if ENABLE_XEMBED
   Rs_embed,
@@ -654,7 +659,6 @@ enum {
   Rs_answerbackstring,
   Rs_tripleclickwords,
   Rs_insecure,
-  Rs_cursorBlink,
   Rs_pointerBlank,
   Rs_pointerBlankDelay,
   Rs_imLocale,
@@ -1476,7 +1480,11 @@ struct rxvt_term : zero_initialized, rxvt_vars {
   void scr_refresh (unsigned char refresh_type);
   bool scr_refresh_rend (rend_t mask, rend_t value);
   void scr_erase_screen (int mode);
+#if ENABLE_FRILLS
   void scr_erase_savelines ();
+  void scr_backindex ();
+  void scr_forwardindex ();
+#endif
   void scr_touch (bool refresh);
   void scr_expose (int x, int y, int width, int height, bool refresh);
   rxvt_fontset *scr_find_fontset (rend_t r = DEFAULT_RSTYLE);
@@ -1493,8 +1501,6 @@ struct rxvt_term : zero_initialized, rxvt_vars {
   void scr_add_lines (const unicode_t *str, int nlines, int len);
   void scr_backspace ();
   void scr_tab (int count, bool ht = false);
-  void scr_backindex ();
-  void scr_forwardindex ();
   void scr_gotorc (int row, int col, int relative);
   void scr_index (enum page_dirn direction);
   void scr_erase_line (int mode);
index 2c0fdd0f3dbab8a7d90261df5be56bd38988ce2e..9a2cd383ee2df9b609005642d2c4e75c717f224f 100644 (file)
@@ -132,10 +132,10 @@ const struct rxvt_fallback_font {
   { CS_UNICODE,      "-*-*-*-r-*-*-*-*-*-*-c-*-iso10646-1"         },
   { CS_UNICODE,      "-*-*-*-r-*-*-*-*-*-*-m-*-iso10646-1"         },
 #if XFT
-  { CS_UNICODE,      "xft:Bitstream Vera Sans Mono:antialias=false:autohint=true"},
-  { CS_UNICODE,      "xft:Courier New:antialias=false:autohint=true" },
-  { CS_UNICODE,      "xft:Andale Mono:antialias=false"             },
-  { CS_UNICODE,      "xft:Arial Unicode MS:antialias=false"        },
+  { CS_UNICODE,      "xft:Bitstream Vera Sans Mono:antialias=false:autohint=true" },
+  { CS_UNICODE,      "xft:Courier New:antialias=false:autohint=true"              },
+  { CS_UNICODE,      "xft:Andale Mono:antialias=false:autohint=false"             },
+  { CS_UNICODE,      "xft:Arial Unicode MS:antialias=false:autohint=false"        },
 
   // FreeMono is usually uglier than x fonts, so try last only.
   { CS_UNICODE,      "xft:FreeMono:autohint=true"                  },
index 73b27d4bf959e2a3e76d0295963fd86954ea09c6..a7f8f02d35f95bcc7bdf873272665e7e1f1b5d71 100644 (file)
@@ -222,6 +222,7 @@ typedef struct {
 # define Opt_borderLess                0
 #endif
 #define Opt_pastableTabs       (1UL<<25)
+#define Opt_cursorUnderline    (1UL<<26)
 /* place holder used for parsing command-line options */
 #define Opt_Reverse             (1UL<<30)
 #define Opt_Boolean             (1UL<<31)
index dd104a11e965ba63dcb9044d609c8c215c205899..a46937a33ebf687e18456d3c40d34c3e39194a0f 100644 (file)
@@ -2015,16 +2015,6 @@ rxvt_term::scr_printscreen (int fullhist)
  * drawn_text/drawn_rend contain the screen information before the update.
  * screen.text/screen.rend contain what the screen will change to.
  */
-
-#define FONT_WIDTH(X, Y)                                                \
-    (X)->per_char[ (Y) - (X)->min_char_or_byte2].width
-#define FONT_RBEAR(X, Y)                                                \
-    (X)->per_char[ (Y) - (X)->min_char_or_byte2].rbearing
-#define FONT_LBEAR(X, Y)                                                \
-    (X)->per_char[ (Y) - (X)->min_char_or_byte2].lbearing
-#define IS_FONT_CHAR(X, Y)                                              \
-    ((Y) >= (X)->min_char_or_byte2 && (Y) <= (X)->max_char_or_byte2)
-
 void
 rxvt_term::scr_refresh (unsigned char refresh_type)
 {
@@ -2053,10 +2043,10 @@ rxvt_term::scr_refresh (unsigned char refresh_type)
   row_offset = TermWin.saveLines - TermWin.view_start;
 
 #if XPM_BACKGROUND
-  must_clear |= (bgPixmap.pixmap != None);
+  must_clear |= bgPixmap.pixmap != None;
 #endif
 #if TRANSPARENT
-  must_clear |= ((options & Opt_transparent) && am_transparent);
+  must_clear |= (options & Opt_transparent) && am_transparent;
 #endif
   ocrow = oldcursor.row; /* is there an old outline cursor on screen? */
 
@@ -2090,28 +2080,34 @@ rxvt_term::scr_refresh (unsigned char refresh_type)
 
         if (showcursor && TermWin.focus)
           {
-            *crp ^= RS_RVid;
-#ifndef NO_CURSORCOLOR
-            cc1 = *crp & (RS_fgMask | RS_bgMask);
-            if (ISSET_PIXCOLOR (Color_cursor))
-              ccol1 = Color_cursor;
+            if (options & Opt_cursorUnderline)
+              *crp ^= RS_Uline;
             else
+              {
+                *crp ^= RS_RVid;
+
+#ifndef NO_CURSORCOLOR
+                cc1 = *crp & (RS_fgMask | RS_bgMask);
+                if (ISSET_PIXCOLOR (Color_cursor))
+                  ccol1 = Color_cursor;
+                else
 #ifdef CURSOR_COLOR_IS_RENDITION_COLOR
-              ccol1 = GET_FGCOLOR (rstyle);
+                  ccol1 = GET_FGCOLOR (rstyle);
 #else
-              ccol1 = Color_fg;
+                  ccol1 = Color_fg;
 #endif
-            if (ISSET_PIXCOLOR (Color_cursor2))
-              ccol2 = Color_cursor2;
-            else
+                if (ISSET_PIXCOLOR (Color_cursor2))
+                  ccol2 = Color_cursor2;
+                else
 #ifdef CURSOR_COLOR_IS_RENDITION_COLOR
-              ccol2 = GET_BGCOLOR (rstyle);
+                  ccol2 = GET_BGCOLOR (rstyle);
 #else
-              ccol2 = Color_bg;
+                  ccol2 = Color_bg;
 #endif
-            *crp = SET_FGCOLOR (*crp, ccol1);
-            *crp = SET_BGCOLOR (*crp, ccol2);
+                *crp = SET_FGCOLOR (*crp, ccol1);
+                *crp = SET_BGCOLOR (*crp, ccol2);
 #endif
+              }
           }
       }
 
@@ -2427,10 +2423,15 @@ rxvt_term::scr_refresh (unsigned char refresh_type)
     {
       if (TermWin.focus)
         {
-          *crp ^= RS_RVid;
+          if (options & Opt_cursorUnderline)
+            *crp ^= RS_Uline;
+          else
+            {
+              *crp ^= RS_RVid;
 #ifndef NO_CURSORCOLOR
-          *crp = (*crp & ~ (RS_fgMask | RS_bgMask)) | cc1;
+              *crp = (*crp & ~ (RS_fgMask | RS_bgMask)) | cc1;
 #endif
+            }
         }
       else if (oldcursor.row >= 0)
         {
index fc2c126e63acf042c8e8b77b7f9885b20f74c46d..4d992fa2cbaf23bde138b38bb8fee41426cef6e7 100644 (file)
@@ -1,3 +1,3 @@
 // VERSION _must_ be \d.\d+
-#define VERSION "5.3"
-#define DATE   "2005-03-13"
+#define VERSION "5.4"
+#define DATE   "2005-04-18"
index 3853489d1180edca0dec0337651445d9959be9b0..a81f45b0ec82fd47621870c9122ef5a27836d48c 100644 (file)
@@ -140,8 +140,9 @@ optList[] = {
 #if ENABLE_FRILLS
               BOOL (Rs_tripleclickwords, "tripleclickwords", "tcw", Opt_tripleclickwords, "triple click word selection"),
               BOOL (Rs_insecure, "insecure", "insecure", Opt_insecure, "enable possibly insecure escape sequences"),
+              BOOL (Rs_cursorUnderline, "cursorUnderline", "uc", Opt_cursorUnderline, "underline cursor"),
 #endif
-#ifdef CURSOR_BLINK
+#if CURSOR_BLINK
               BOOL (Rs_cursorBlink, "cursorBlink", "bc", Opt_cursorBlink, "blinking cursor"),
 #endif
 #ifdef POINTER_BLANK