[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

xterm: Changes to 'debian-unstable'



 INSTALL                           |    5 
 MANIFEST                          |    2 
 charproc.c                        |    5 
 ctlseqs.ms                        |   13 
 ctlseqs.txt                       |    7 
 debian/changelog                  |   13 
 debian/local/xterm.faq.html       |  463 +++++++++-
 debian/patches/902_windowops.diff |    6 
 debian/patches/904_fontops.diff   |    6 
 misc.c                            |    3 
 package/debian/changelog          |    6 
 package/freebsd/Makefile          |    2 
 package/xterm.spec                |    4 
 resize.man                        |    6 
 termcap                           |    6 
 util.c                            |   27 
 version.h                         |    6 
 xterm.appdata.xml                 |   56 -
 xterm.log.html                    |   46 
 xterm.man                         | 1757 +++++++++++++++++++-------------------
 20 files changed, 1515 insertions(+), 924 deletions(-)

New commits:
commit 3d9192a390340063a103cb8457a313173aae6247
Author: Sven Joachim <svenjoac@gmx.de>
Date:   Mon Sep 26 19:10:27 2016 +0200

    Update copy of XTerm FAQ to revision 1.329 (dated 2016/09/16)

diff --git a/debian/changelog b/debian/changelog
index 0101ec9..d7cc711 100644
--- a/debian/changelog
+++ b/debian/changelog
@@ -7,6 +7,7 @@ xterm (326-1) UNRELEASED; urgency=medium
       which are not combining characters.  Also fill in a corresponding
       special case for TrueType fonts (Closes: #827905).
   * Refresh Debian patches.
+  * Update copy of XTerm FAQ to revision 1.329 (dated 2016/09/16).
 
  -- Sven Joachim <svenjoac@gmx.de>  Mon, 26 Sep 2016 17:48:50 +0200
 
diff --git a/debian/local/xterm.faq.html b/debian/local/xterm.faq.html
index 1a41fe5..8df4856 100644
--- a/debian/local/xterm.faq.html
+++ b/debian/local/xterm.faq.html
@@ -19,7 +19,7 @@
  * ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF   *
  * OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.            *
  *****************************************************************************
-  $XTermId: xterm.faq.html,v 1.317 2016/03/21 00:56:33 tom Exp $
+  $XTermId: xterm.faq.html,v 1.329 2016/09/16 09:19:01 tom Exp $
   -->
 <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
 
@@ -2572,9 +2572,12 @@ current_title=$(xprop -id $WINDOWID | grep WM_NAME | cut -d= -f2)
       <a href="#problems_weird">Odd behavior</a>
 
       <ul>
-        <li><a href="#xterm_paste">Why can't I cut/paste in
+        <li><a href="#xterm_paste">Why can't I select/paste in
         xterm?</a></li>
 
+        <li><a href="#xterm_select_clipboard">Why can't I
+        select/paste to/from other programs?</a></li>
+
         <li><a href="#xterm_tabs">Why can't I select tab-characters
         in xterm?</a></li>
 
@@ -2607,6 +2610,9 @@ current_title=$(xprop -id $WINDOWID | grep WM_NAME | cut -d= -f2)
       </ul>
     </li>
 
+    <li><a href="#my_xdefaults">Sample .Xdefaults Color-Settings
+    for XTerm</a></li>
+
     <li><a href="#warning_msg">What is this warning
     message?</a></li>
   </ul>
@@ -4850,14 +4856,155 @@ XFree86 3.1.2a (23 September 1995)
   "problems_weird">Odd behavior</a></h3>
 
   <h4 id="xterm_paste-id"><a name="xterm_paste" id=
-  "xterm_paste">Why can't I cut/paste in xterm?</a></h4>
+  "xterm_paste">Why can't I select/paste in xterm?</a></h4>
+
+  <p>When an application sets xterm to any of its <a href=
+  "ctlseqs/ctlseqs.html#h2-Mouse-Tracking">mouse tracking
+  modes</a>, it reserves the <em>unshifted</em> mouse button clicks
+  for the application's use. Unless you have modified the treatment
+  of the shifted mouse button events (e.g., with your window
+  manager), you can always do select/paste by pressing the
+  <em>shift</em> key while clicking with the mouse.</p>
+
+  <p>This is all done using the <em>translations</em> resource (see
+  the <a href=
+  "manpage/xterm.html#h3-Default-Key-Bindings"><em>Default Key
+  Bindings</em></a> section in the manual page).</p>
+
+  <h4><a name="xterm_select_clipboard" id=
+  "xterm_select_clipboard">Why can't I select/paste to/from other
+  programs?</a></h4>
+
+  <p>Whether you select text in xterm and paste into another
+  window, or the reverse, the X client in which you have
+  <em>selected</em> text may provide the data in different
+  <em>formats</em> and different <em>containers</em>:</p>
+
+  <blockquote>
+    <dl>
+      <dt><em>formats</em></dt>
+
+      <dd>
+        <p>Originally (and by default) xterm made the selected data
+        available with ISO-8859-1 encoding (Latin-1). Since
+        <a href="xterm.log.html#xterm_101">patch #101 (1999)</a>,
+        it has provided it also in UTF-8.</p>
+
+        <p>Regarding the type of data:</p>
+
+        <ul>
+          <li>X11R4's ICCM documented "string" selection data with
+          ISO-8859-1, while</li>
+
+          <li>X11R6 documented "compound text" (another name for
+          multibyte encoding, without specifying <em>what</em>
+          encoding).</li>
+
+          <li>Selection data using UTF-8 was an extension by
+          XFree86.</li>
+        </ul>
+
+        <p>The client holding the selection advertises the formats
+        that it can provide, and other client(s) ask for it using
+        one of those formats.</p>
+
+        <p>Xterm can ask for UTF-8 even if it is not configured to
+        use UTF-8. In that case, it converts (a small number of)
+        useful characters to their ASCII or VT100 line-graphics
+        equivalents, and uses a "#" character for those which
+        cannot be converted.</p>
+      </dd>
+
+      <dt><em>containers</em></dt>
+
+      <dd>
+        <p>By default, xterm follows the <a href=
+        "https://tronche.com/gui/x/icccm/";><em>Inter-Client
+        Communication Conventions Manual</em></a> (ICCM). That
+        dates back to X11R4 in 1989, with minor updates in 1996 for
+        X11R6. The copyright for ICCM 1.0 is 1988/1989, making it
+        slightly older than Microsoft Windows.</p>
+
+        <p>The ICCM specifies <a href=
+        "https://tronche.com/gui/x/icccm/sec-2.html#s-2.6";><em>"selection
+        atoms"</em></a> which are maintained by the X server.
+        According to the ICCM:</p>
+
+        <blockquote>
+          <p>The selection named by the atom <em>PRIMARY</em> is
+          used for all commands that take only a single argument
+          and is the principal means of communication between
+          clients that use the selection mechanism.</p>
+        </blockquote>
+
+        <p>and</p>
+
+        <blockquote>
+          <p>The selection named by the atom <em>CLIPBOARD</em> is
+          used to hold data that is being transferred between
+          clients, that is, data that usually is being cut or
+          copied, and then pasted.</p>
+        </blockquote>
+
+        <p>xterm uses PRIMARY by default. The default translations
+        also update something called CUT_BUFFER0 (also <a href=
+        "https://tronche.com/gui/x/icccm/sec-3.html#s-3";>part of
+        the ICCM</a>).</p>
+
+        <p>Unlike the PRIMARY selection, a cut buffer can hold only
+        "type STRING and format 8" (which happens to be
+        ISO-8859-1). That sounds like a drawback, but on the other
+        hand, cut buffers are <em>persistent</em>, while the
+        PRIMARY selection is <em>not</em>. An X client can provide
+        data using the PRIMARY selection only as long as it
+        <em>holds</em> the selection.</p>
+      </dd>
+    </dl>
+  </blockquote>
 
-  <p>When an application sets xterm to any of its mouse tracking
-  modes, it reserves the unshifted mouse button clicks for the
-  application's use. Unless you have modified the treatment of the
-  shifted mouse button events (e.g., with your window manager), you
-  can always do cut/paste by pressing the shift key while clicking
-  with the mouse.</p>
+  <p>If xterm does not own the selection, it cannot supply the data
+  (and you cannot select/paste). Initially, xterm held the PRIMARY
+  selection only as long as the text was highlighted. Another
+  application could assert the selection, but generally losing the
+  PRIMARY selection in xterm was the same as losing highlighting.
+  That has been improved, e.g., using the
+  <code>keepSelection</code> resource in <a href=
+  "xterm.log.html#xterm_230">patch #230</a> (2007), as well as
+  refinements to retain highlighting when it updates other parts of
+  the window.</p>
+
+  <p>A more likely reason for failing to select/paste is that the
+  other application may not use the same <em>selection atom</em>
+  (container). In the mid-1990s, Netscape set out to compete with
+  Internet Explorer. Part of that involved copying many aspects of
+  the way Internet Explorer worked, including the way it worked
+  with the Microsoft Windows clipboard. Netscape on non-Windows
+  platforms, "of course" assumed the clipboard was the way to do
+  things, and used the X11 clipboard rather following the ICCM.
+  (The way it used the X11 clipboard was also not in line with the
+  ICCM, but it was "close").</p>
+
+  <p>Not all applications followed Netscape and its descendents,
+  making it a nuisance if one wanted to select/paste text to/from
+  the web browser.</p>
+
+  <p>Since <a href="xterm.log.html#xterm_209">patch #209</a>
+  (2006), xterm has provided a workaround: a menu entry (and
+  resource <code>selectToClipboard</code>) which changes xterm's
+  behavior for a special token <em>SELECT</em> in its default
+  translations. If the resource is true (or the menu item enabled),
+  xterm provides its selection to the <em>CLIPBOARD</em>. A menu
+  item is provided, of course, since many applications follow the
+  ICCM. In the default translations, these lines use
+  <em>SELECT</em>:</p>
+
+  <blockquote>
+    <pre class="code-block">
+Shift &lt;KeyPress&gt; Select:select-cursor-start() \
+                           select-cursor-end(SELECT, CUT_BUFFER0) \n\
+Shift &lt;KeyPress&gt; Insert:insert-selection(SELECT, CUT_BUFFER0) \n\
+</pre>
+  </blockquote>
 
   <h4 id="xterm_tabs-id"><a name="xterm_tabs" id="xterm_tabs">Why
   can't I select tabs in xterm?</a></h4>
@@ -5382,6 +5529,8 @@ configure --disable-imake --disable-narrowproto
   "my_xdefaults">Sample .Xdefaults Color-Settings for
   XTerm</a></h3>
 
+  <p>This example dates from March 1997:</p>
+
   <blockquote class="code-block">
     <!--{{atr2html-->
 
@@ -5554,6 +5703,103 @@ configure --disable-imake --disable-narrowproto
     <!--atr2html}}--></p>
   </blockquote>
 
+  <p>Since 1997, the resource files grew in size and number.
+  Besides <code>XTerm</code> and <code>XTerm-color</code>, there
+  are also resource files for <strong>xterm</strong> using
+  different <em>class</em> values, together with the
+  <code>-color</code> flavors of these. Because the
+  <code>-color</code> flavors differ only by an
+  <code>#include</code> statement, the makefile generates these
+  from <a href=
+  "https://github.com/ThomasDickey/xterm-snapshots/blob/master/XTerm-col.ad";>
+  XTerm-col.ad</a>. Here are the others:</p>
+
+  <blockquote>
+    <table border="1" summary="resource files for XTerm">
+      <tr>
+        <th>Program</th>
+
+        <th>Resource</th>
+      </tr>
+
+      <tr>
+        <td><a href="#xterm_man">xterm</a></td>
+
+        <td><a href=
+        "https://github.com/ThomasDickey/xterm-snapshots/blob/master/XTerm.ad";>
+        XTerm</a></td>
+      </tr>
+
+      <tr>
+        <td><a href="#uxterm_man">uxterm</a></td>
+
+        <td><a href=
+        "https://github.com/ThomasDickey/xterm-snapshots/blob/master/UXTerm.ad";>
+        UXTerm</a></td>
+      </tr>
+
+      <tr>
+        <td><a href="#koi8rxterm_man">koi8rxterm</a></td>
+
+        <td><a href=
+        "https://github.com/ThomasDickey/xterm-snapshots/blob/master/KOI8RXTerm.ad";>
+        KOI8RXTerm</a></td>
+      </tr>
+    </table>
+  </blockquote>
+
+  <p>Besides just adding files, I continued testing more resource
+  combinations. Originally (in the 1990s for instance), developers
+  could reasonably expect their users to configure resources for
+  themselves, rather than use a single prepackaged flavor. That was
+  a while ago. After 2000, I developed nicer resource files. Rather
+  than modify the installed <code>app-defaults</code> file, I use
+  this feature from X:</p>
+
+  <blockquote>
+    <p class="code-block">Directories named by the environment
+    variable <code>XUSERFILESEARCHPATH</code> or the environment
+    variable <strong><code>XAPPLRESDIR</code></strong> (which names
+    a single directory and should end with a &lsquo;/&rsquo; on
+    POSIX systems), plus directories in a standard place (usually
+    under <em><code>/usr/share/X11/</code></em>, but this can be
+    overridden with the <em><code>XFILESEARCHPATH</code></em>
+    environment variable) are searched for for application-specific
+    resources. For example, application default resources are
+    usually kept in
+    <em><code>/usr/share/X11/app-defaults/</code></em>. See the
+    <em>X Toolkit Intrinsics &ndash; C Language Interface</em>
+    manual for details.</p>
+  </blockquote>
+
+  <p>That is, if you set the <code>XAPPLRESDIR</code> environment
+  variable to point to a directory, you can put application
+  resource files there, and X will find those before the system
+  app-defaults files. That allows more flexibility and better
+  control over the various applications than putting everything
+  into a single <code>.Xdefaults</code> file.</p>
+
+  <p>On the opposite extreme, some people advise using
+  <code>xrdb</code>. Not everyone. Back around 1990 I had an
+  informative conversation with one of the developers at the
+  Software Productivity Consortium. He was a member of a team
+  developing a set of X widgets. The gist of our conversation was
+  that</p>
+
+  <ul>
+    <li>using <code>xrdb</code> prevented you from changing things
+    dynamically.</li>
+
+    <li>it was like using a hammer (nailing things down to prevent
+    them from being different).</li>
+
+    <li>when the only tool you know how to use is a hammer,
+    <a href="https://www.google.com/search?q=hammer+nail+problem&amp;tbm=isch&amp;tbo=u&amp;source=univ&amp;sa=X&amp;ved=0ahUKEwigkLaixZLPAhWGWCYKHVD5B0sQsAQIUQ";>
+    all of the problems look like nails</a>.</li>
+
+    <li>a good developer knows how to use more than one tool.</li>
+  </ul>
+
   <h3 id="warning_msg-id"><a name="warning_msg" id=
   "warning_msg">What is this warning message?</a></h3>
 
@@ -5954,7 +6200,8 @@ Warning: Actions not found: ignore, scroll-back, scroll-forw
   "https://bugzilla.redhat.com/show_bug.cgi?id=122815";>Here</a> is
   a related bug report, for key bindings.</p>
 
-  <p>The documentation for GNOME terminal asserts:</p>
+  <p id="vte:xconsortium">The documentation for GNOME Terminal
+  asserts:</p>
 
   <blockquote class="code-block">
     <p>GNOME Terminal emulates the xterm application developed by
@@ -7065,7 +7312,7 @@ tbl ctlseqs.ms | groff -ms &gt;ctlseqs.ps
   "ref_misleading">Interesting but misleading:</a></h3>
 
   <ul>
-    <li>
+    <li id="mis:vt100-color">
       <p>The ncurses FAQ <em><a href=
       "/ncurses/ncurses.faq.html#vt100_color" id="vt100_color"
       name="vt100_color">How do I get color with VT100?</a></em>
@@ -7075,7 +7322,7 @@ tbl ctlseqs.ms | groff -ms &gt;ctlseqs.ps
       web search</a> gives 3,000 hits in March 2015.</p>
     </li>
 
-    <li>
+    <li id="mis:backspace-delete">
       <p>Also widely cited, <a href=
       "http://www.ibb.net/~anne/keyboard/keyboard.html";>Consistent
       BackSpace and Delete Configuration</a> gives advice regarding
@@ -7187,7 +7434,7 @@ tbl ctlseqs.ms | groff -ms &gt;ctlseqs.ps
       </ul>
     </li>
 
-    <li>
+    <li id="mis:ncdware">
       <p>Noted <a href=
       "http://stackoverflow.com/questions/24833129/how-to-change-the-window-title-of-te-based-on-vt320";>
       here</a>, someone pointed out an <a href=
@@ -7214,6 +7461,196 @@ tbl ctlseqs.ms | groff -ms &gt;ctlseqs.ps
       replacement characters (which I added early in <a href=
       "/xterm/xterm.log.html#xterm_70">1998</a>).</p>
     </li>
+
+    <li id="mis:geekery">
+      <p><em><a href=
+      "http://aperiodic.net/phil/archives/Geekery/term-function-keys.html";>
+      Terminal Function Key Escape Codes</a></em> has good
+      intentions, but falls astray in several respects.<br>
+      For a different treatment of the same material, see my
+      notes:</p>
+
+      <blockquote>
+        <p><em><a href="/xterm/xterm-function-keys.html">Table of
+        function-keys for XTerm and other Terminal
+        Emulators</a></em></p>
+      </blockquote>
+
+      <p>First off, it (like the the <a href=
+      "#vte:xconsortium">documentation</a> for GNOME Terminal)
+      misattributes work which I did, crediting the X
+      Consortium:</p>
+
+      <blockquote class="code-block">
+        <p>This brings me to xterm. xterm has a long history, and
+        the function key definitions have changed over time. The
+        <strong>original</strong> xterm from the X Consortium (even
+        before they became the Open Group) used escape codes based
+        on the VT220, but extended to cover the range from F1 to
+        <strong>F48</strong>. F1 through F12 generated,
+        respectively, codes <code>^[[11~</code> to
+        <code>^[[15~</code>, <code>^[[17~</code> to
+        <code>^[[21~</code>, <code>^[[23~</code>, and
+        <code>^[[24~</code>. <em><code>Shift-F1</code></em> through
+        <em><code>Shift-F12</code></em> were used for F13 through
+        F24, and generated codes from <code>^[[11;2~</code> to
+        <code>^[[24;2~</code>. Similarly
+        <em><code>Ctrl-F1</code></em> through
+        <em><code>Ctrl-F12</code></em> were used for F25 through
+        F36 and generated codes <code>^[[11;5~</code> to
+        <code>^[[24;5~</code>, and
+        <em><code>Ctrl-Shift-F1</code></em> through
+        <em><code>Ctrl-Shift-F12</code></em> were used for F37
+        through F48 and generated codes <code>^[[11;6~</code> to
+        <code>^[[24;6~</code>. None of the base xterm
+        <code>$TERM</code> types on my system correspond to this
+        series of escape codes, though you can still get xterm to
+        exhibit the old behavior by setting the
+        <code>OldXtermFKeys</code> resource to 'true'.</p>
+      </blockquote>
+
+      <p>Not only that, but the comment (and much of the page) is
+      inaccurate. For instance:</p>
+
+      <ul>
+        <li>The X Consortium went out of business late in 1996 (see
+        <a href=
+        "http://www.opengroup.org/tech/desktop/Press_Releases/xccloses.htm";>
+          press release</a> from July 1996).
+
+          <ul>
+            <li>The first release of X11R6 was done <a href=
+            "https://www.x.org/releases/X11R6.1/RELNOTES.TXT";>early
+            in 1996</a> by X Consortium.</li>
+
+            <li>I've been working on xterm since before that (see
+            <a href="#my_history">history</a>).</li>
+          </ul>
+        </li>
+
+        <li>The X Consortium xterm only knew about function keys up
+        to <strong>F20</strong>.
+
+          <ul>
+            <li>X11R5 defined only 20 function keys, and xterm used
+            only those since May 1991.<br>
+            X11R6 changes to xterm did not take advantage of
+            additional keys aside from the
+            <em><code>Insert</code></em> and
+            <em><code>Delete</code></em> on the keypad.</li>
+
+            <li>Further changes by The Open Group through X11R6.6
+            made no changes to xterm's handling of special
+            keys.</li>
+
+            <li>That came in xterm <a href=
+            "/xterm/xterm.log.html#xterm_130">patch #130</a>
+            (2000/3/1), starting with the SCO function-keys
+            feature.</li>
+          </ul>
+        </li>
+
+        <li>The X Consortium xterm didn't know about using
+        <em><code>Shift</code></em> to get F13 through F24.
+
+          <ul>
+            <li>I introduced a similar feature (using
+            <em><code>Control</code></em>) in <a href=
+            "/xterm/xterm.log.html#xterm_51">patch #51</a>
+            (1997/9/15) as the <a href=
+            "how2_fkeys"><code>sunKeyboard</code></a> resource.<br>
+            I did this to leave <em><code>Shift</code></em> for the
+            VT220 UDK (user-defined keys).</li>
+
+            <li><strong>rxvt</strong> used
+            <em><code>Shift</code></em>; the key combination was
+            popular.</li>
+
+            <li>Alexander V Lukyanov's changes in <a href=
+            "/xterm/xterm.log.html#xterm_121">patch #121</a> to
+            update the terminal descriptions for these keys took
+            that into account.</li>
+          </ul>
+        </li>
+
+        <li>The X Consortium xterm didn't know about using
+        <em><code>Control</code></em> to get F25 through F36.
+
+          <ul>
+            <li>Even with X11R6, the last function key was
+            <em><code>XK_F35</code></em>.</li>
+
+            <li>However, since xterm <a href=
+            "/xterm/xterm.log.html#xterm_94">patch #94</a>
+            (1999/3/27), it accepts modifiers (shift, control, alt)
+            to extend the actual set of keys to generate different
+            escape sequences.</li>
+          </ul>
+        </li>
+
+        <li>The escape sequences described all date from 2002
+        (xterm <a href="/xterm/xterm.log.html#xterm_167">patch
+        #167</a>).
+
+          <ul>
+            <li>Besides function-keys, there are two other groups
+            of special keys on the keyboard: cursor and
+            editing-keypad.</li>
+
+            <li>Before then, the "2" and "5" in cursor- and
+            home/end sequences would be first (before the
+            semicolon).</li>
+
+            <li>By that point, GNOME Terminal and KDE Konsole had
+            copied the earlier behavior, and failed to follow this
+            change.</li>
+
+            <li>At the time, I preferred the VT220 keyboard (that
+            does not support modified special keys).</li>
+
+            <li>However, the <em>app-defaults</em> file which I
+            provided with xterm did not set the
+            <code>sunKeyboard</code> resource to do this.<br>
+            Packagers routinely altered the recommended
+            configuration, so this difference was not noticed for a
+            while.</li>
+
+            <li>In response to a <a href=
+            "https://bugzilla.redhat.com/show_bug.cgi?id=122815";>bug
+            report</a>, I switched to the Sun/PC keyboard, using
+            the <a href=
+            "/ncurses/NEWS.html#t20040717">xterm-pc-fkeys</a>
+            building blocks in ncurses' terminfo description for
+            xterm.</li>
+          </ul>
+        </li>
+
+        <li>The X Consortium xterm had incomplete support for VT100
+        keypad.
+
+          <ul>
+            <li>I added a resource <code>sunKeyboard</code> to tell
+            xterm to look at other keyboards to simulate the
+            keypad.</li>
+
+            <li>To do this, I made F1 through F4 act like the VT100
+            PF1 through PF4.</li>
+
+            <li>That came in xterm <a href=
+            "/xterm/xterm.log.html#xterm_79">patch #79</a>
+            (1998/6/28).</li>
+
+            <li>Not everyone liked that, so I added another
+            resource to allow turning off the change to F1 through
+            F4.</li>
+
+            <li>Actually <code>OldXtermFKeys</code> is the resource
+            <em>class</em>; the actual resource is
+            <code>oldXtermFKeys</code>.</li>
+          </ul>
+        </li>
+      </ul>
+    </li>
   </ul>
 
   <h2 id="future_work-id"><a name="future_work" id=

commit 1c76d71fff0328cf4805ca8f2195582bdab5453f
Author: Sven Joachim <svenjoac@gmx.de>
Date:   Mon Sep 26 19:07:00 2016 +0200

    Close bug #827905

diff --git a/debian/changelog b/debian/changelog
index 0e558e6..0101ec9 100644
--- a/debian/changelog
+++ b/debian/changelog
@@ -3,6 +3,9 @@ xterm (326-1) UNRELEASED; urgency=medium
   * New upstream release.
     - Add examples of setting the icon title with/without the window
       title in the manual (Closes: #833984).
+    - Amend fix for #738794 to restore a check for missing characters
+      which are not combining characters.  Also fill in a corresponding
+      special case for TrueType fonts (Closes: #827905).
   * Refresh Debian patches.
 
  -- Sven Joachim <svenjoac@gmx.de>  Mon, 26 Sep 2016 17:48:50 +0200

commit ead80c35e7ceeaa1bb627cc122563c970fb61595
Author: Sven Joachim <svenjoac@gmx.de>
Date:   Mon Sep 26 19:01:36 2016 +0200

    Close bug #833984

diff --git a/debian/changelog b/debian/changelog
index c3c2ee9..0e558e6 100644
--- a/debian/changelog
+++ b/debian/changelog
@@ -1,6 +1,8 @@
 xterm (326-1) UNRELEASED; urgency=medium
 
   * New upstream release.
+    - Add examples of setting the icon title with/without the window
+      title in the manual (Closes: #833984).
   * Refresh Debian patches.
 
  -- Sven Joachim <svenjoac@gmx.de>  Mon, 26 Sep 2016 17:48:50 +0200

commit 2aa3376872a80d7fd4c3fd57813c7d4b21f15a5b
Author: Sven Joachim <svenjoac@gmx.de>
Date:   Mon Sep 26 17:59:11 2016 +0200

    Refresh Debian patches
    
    The patch 902_windowops.diff failed to apply.

diff --git a/debian/changelog b/debian/changelog
index f6ed901..c3c2ee9 100644
--- a/debian/changelog
+++ b/debian/changelog
@@ -1,6 +1,7 @@
 xterm (326-1) UNRELEASED; urgency=medium
 
   * New upstream release.
+  * Refresh Debian patches.
 
  -- Sven Joachim <svenjoac@gmx.de>  Mon, 26 Sep 2016 17:48:50 +0200
 
diff --git a/debian/patches/902_windowops.diff b/debian/patches/902_windowops.diff
index 5b484ba..d69d536 100644
--- a/debian/patches/902_windowops.diff
+++ b/debian/patches/902_windowops.diff
@@ -4,13 +4,13 @@
 
 --- a/xterm.man
 +++ b/xterm.man
-@@ -2675,8 +2675,9 @@ This is a comma-separated list of names,
+@@ -2743,8 +2743,9 @@ This is a comma-separated list of names,
  from \fIdtterm\fP the operation number).
  The default value is
- .RS
+ .NS
 -20,21,SetXprop,SetSelection
 +1,2,3,4,5,6,7,8,9,11,13,14,18,19,20,21,GetSelection,SetSelection,SetWinLines,SetXprop
- .RE
+ .NE
 +(i.e. no operations are allowed).
  .IP
  The names are listed below.
diff --git a/debian/patches/904_fontops.diff b/debian/patches/904_fontops.diff
index 389705b..1d50466 100644
--- a/debian/patches/904_fontops.diff
+++ b/debian/patches/904_fontops.diff
@@ -4,12 +4,12 @@
 
 --- a/xterm.man
 +++ b/xterm.man
-@@ -1926,7 +1926,7 @@ The default is \*(``true\*(''.
+@@ -1997,7 +1997,7 @@ The default is \*(``true\*(''.
  .TP
- .B "allowFontOps (\fPclass\fB AllowFontOps)"
+ .B "allowFontOps\fP (class\fB AllowFontOps\fP)"
  Specifies whether control sequences that set/query the font should be allowed.
 -The default is \*(``true\*(''.
 +The default is \*(``false\*(''.
  .TP 8
- .B "allowPasteControls (\fPclass\fB AllowPasteControls)"
+ .B "allowPasteControls\fP (class\fB AllowPasteControls\fP)"
  If true, allow control characters such as BEL and CAN to be pasted.

commit d4192fbc2defaf1ac8c481156374d3253c1d6732
Author: Sven Joachim <svenjoac@gmx.de>
Date:   Mon Sep 26 17:48:55 2016 +0200

    New upstream release

diff --git a/debian/changelog b/debian/changelog
index 3d08997..f6ed901 100644
--- a/debian/changelog
+++ b/debian/changelog
@@ -1,3 +1,9 @@
+xterm (326-1) UNRELEASED; urgency=medium
+
+  * New upstream release.
+
+ -- Sven Joachim <svenjoac@gmx.de>  Mon, 26 Sep 2016 17:48:50 +0200
+
 xterm (325-1) unstable; urgency=medium
 
   * New upstream release.

commit 83ac4e4934e33e7b08a78d272454b2e6238bb8f9
Author: Sven Joachim <svenjoac@gmx.de>
Date:   Mon Sep 26 17:45:03 2016 +0200

    Imported Upstream version 326

diff --git a/INSTALL b/INSTALL
index e2f03b4..4d961da 100644
--- a/INSTALL
+++ b/INSTALL
@@ -1,4 +1,4 @@
--- $XTermId: INSTALL,v 1.159 2016/05/28 18:39:26 tom Exp $
+-- $XTermId: INSTALL,v 1.160 2016/09/09 22:56:18 tom Exp $
 -------------------------------------------------------------------------------
 -- Copyright 1997-2015,2016 by Thomas E. Dickey
 --
@@ -458,7 +458,8 @@ The options (in alphabetic order):
   	Compile-in code that allows logging.
 
 	Logging was disabled in X11R5 xterm because of security problems.
-	They were addressed in X11R6, but the feature was not reinstated.
+	They were addressed in X11R6, but the feature was not reinstated
+	because of concerns (long past) about xterm running as root-setuid.
 
   --enable-meta-sends-esc set default metaSendsEscape resource (default: no)
 
diff --git a/MANIFEST b/MANIFEST
index 98e5f3b..9f99009 100644
--- a/MANIFEST
+++ b/MANIFEST
@@ -1,4 +1,4 @@
-MANIFEST for xterm-325, version xterm-325
+MANIFEST for xterm-326, version xterm-326
 --------------------------------------------------------------------------------
 MANIFEST                        this file
 256colres.h                     resource-definitions for 256-color mode
diff --git a/charproc.c b/charproc.c
index f177f89..bc103db 100644
--- a/charproc.c
+++ b/charproc.c
@@ -1,4 +1,4 @@
-/* $XTermId: charproc.c,v 1.1420 2016/05/30 19:31:33 tom Exp $ */
+/* $XTermId: charproc.c,v 1.1422 2016/09/23 20:13:11 tom Exp $ */
 
 /*
  * Copyright 1999-2015,2016 by Thomas E. Dickey
@@ -236,6 +236,7 @@ static String _Font_Selected_ = "yes";	/* string is arbitrary */
 static const char *defaultTranslations;
 /* *INDENT-OFF* */
 static XtActionsRec actionsList[] = {
+    { "allow-bold-fonts",	HandleAllowBoldFonts },
     { "allow-send-events",	HandleAllowSends },
     { "bell",			HandleBell },
     { "clear-saved-lines",	HandleClearSavedLines },
@@ -1144,7 +1145,7 @@ resetCharsets(TScreen *screen)
 
 #if OPT_VT52_MODE
     if (screen->vtXX_level == 0)
-	screen->gsets[1] = '0';	/* Graphics             */
+	screen->gsets[1] = nrc_DEC_Spec_Graphic;	/* Graphics */
 #endif
 }
 
diff --git a/ctlseqs.ms b/ctlseqs.ms
index a0bc032..cedc426 100644
--- a/ctlseqs.ms
+++ b/ctlseqs.ms
@@ -1,6 +1,6 @@
 .\"#! troff -ms $1		-*- Nroff -*-
 .\" "Xterm Control Sequences" document
-.\" $XTermId: ctlseqs.ms,v 1.330 2016/02/22 00:44:10 tom Exp $
+.\" $XTermId: ctlseqs.ms,v 1.331 2016/09/08 09:16:28 tom Exp $
 .\"
 .\"
 .\" Copyright 1996-2015,2016 by Thomas E. Dickey
@@ -69,8 +69,8 @@
 .\"
 .ds XT XTerm
 .ds xt xterm
-.ds LF Patch #323
-.ds RF 2016/02/21
+.ds LF Patch #326
+.ds RF 2016/09/08
 .\"
 .if n .pl 9999v		\" no page breaks in nroff
 .ND
@@ -498,10 +498,13 @@ Default response is an empty string, but may be overridden
 by a resource \fBanswerbackString\fP.
 .
 .IP \\*(Ff
-Form Feed or New Page (NP).  Ctrl-L is treated the same as LF.
+Form Feed or New Page (NP).
+(\*(Ff is Ctrl-L).
+\*(Ff is treated the same as \*(Lf.
 .
 .IP \\*(Lf
-Line Feed or New Line (NL).  (LF is Ctrl-J).
+Line Feed or New Line (NL).
+(\*(Lf is Ctrl-J).
 .
 .IP \\*(Si
 Shift In (Ctrl-O) \(-> Switch to Standard Character Set.  This invokes the
diff --git a/ctlseqs.txt b/ctlseqs.txt
index 3dca1b7..428f164 100644
--- a/ctlseqs.txt
+++ b/ctlseqs.txt
@@ -21,7 +21,7 @@
                              Thomas Dickey
                       XFree86 Project (1996-2006)
                     invisible-island.net (2006-2016)
-               updated for XTerm Patch #323 (2016/02/21)
+               updated for XTerm Patch #326 (2016/09/08)
 
 
 
@@ -158,8 +158,9 @@ BS        Backspace (Ctrl-H).
 CR        Carriage Return (Ctrl-M).
 ENQ       Return Terminal Status (Ctrl-E).  Default response is an empty
           string, but may be overridden by a resource answerbackString.
-FF        Form Feed or New Page (NP).  Ctrl-L is treated the same as LF.
-LF        Line Feed or New Line (NL).  (LF is Ctrl-J).
+FF        Form Feed or New Page (NP).  (FF  is Ctrl-L).  FF  is treated
+          the same as LF .
+LF        Line Feed or New Line (NL).  (LF  is Ctrl-J).
 SI        Shift In (Ctrl-O) -> Switch to Standard Character Set.  This
           invokes the G0 character set (the default).
 SO        Shift Out (Ctrl-N) -> Switch to Alternate Character Set.  This
diff --git a/misc.c b/misc.c
index b49582f..81105a3 100644
--- a/misc.c
+++ b/misc.c
@@ -1,4 +1,4 @@
-/* $XTermId: misc.c,v 1.741 2016/06/01 09:21:56 tom Exp $ */
+/* $XTermId: misc.c,v 1.742 2016/09/08 23:39:58 Joe.Peterson Exp $ */
 
 /*
  * Copyright 1999-2015,2016 by Thomas E. Dickey
@@ -657,6 +657,7 @@ xevents(void)
 		case ButtonRelease:
 		    /* also these... */
 		case Expose:
+		case GraphicsExpose:
 		case NoExpose:
 		case PropertyNotify:
 		case ClientMessage:
diff --git a/package/debian/changelog b/package/debian/changelog
index 2b22f6d..df450a5 100644
--- a/package/debian/changelog
+++ b/package/debian/changelog
@@ -1,3 +1,9 @@
+xterm-dev (326) unstable; urgency=low
+
+  * maintenance updates
+
+ -- Thomas E. Dickey <dickey@invisible-island.net>  Wed, 07 Sep 2016 21:12:23 -0400
+
 xterm-dev (325) unstable; urgency=low
 
   * maintenance updates
diff --git a/package/freebsd/Makefile b/package/freebsd/Makefile
index b7089c8..5e1b471 100644
--- a/package/freebsd/Makefile
+++ b/package/freebsd/Makefile
@@ -5,7 +5,7 @@
 # and "make makesum".
 
 PORTNAME=	xterm
-PORTVERSION=	325
+PORTVERSION=	326
 CATEGORIES=	x11
 MASTER_SITES=	ftp://invisible-island.net/xterm/ \
 		CRITICAL
diff --git a/package/xterm.spec b/package/xterm.spec
index f675a82..0b35106 100644
--- a/package/xterm.spec
+++ b/package/xterm.spec
@@ -1,11 +1,11 @@
-# $XTermId: xterm.spec,v 1.91 2016/05/12 23:25:56 tom Exp $
+# $XTermId: xterm.spec,v 1.92 2016/07/18 02:21:41 tom Exp $
 Summary: X terminal emulator (development version)
 %global my_middle xterm
 %global my_suffix -dev
 %global fullname %{my_middle}%{my_suffix}
 %global my_class XTermDev
 Name: %{fullname}
-Version: 325
+Version: 326
 Release: 1
 License: X11
 Group: User Interface/X
diff --git a/resize.man b/resize.man
index 9e26d90..af31dd2 100644
--- a/resize.man
+++ b/resize.man
@@ -1,6 +1,6 @@
-.\" $XTermId: resize.man,v 1.30 2013/01/06 16:13:44 tom Exp $
+.\" $XTermId: resize.man,v 1.32 2016/09/24 11:14:15 tom Exp $
 .\"
-.\" Copyright 1998-2012,2013 by Thomas E. Dickey
+.\" Copyright 1998-2013,2016 by Thomas E. Dickey
 .\"
 .\"                         All Rights Reserved
 .\"
@@ -202,7 +202,7 @@ sets these variables on systems using terminfo.
 Many applications (including the curses library) 
 use those variables when set to override their screensize.
 .SH "SEE ALSO"
-use_env(3)
+use_env(3x)
 .br
 csh(1), stty(1), tset(1)
 .br
diff --git a/termcap b/termcap
index 6f9f7fa..8459162 100644
--- a/termcap
+++ b/termcap
@@ -1,4 +1,4 @@
-# $XTermId: termcap,v 1.82 2016/05/30 21:41:18 tom Exp $
+# $XTermId: termcap,v 1.83 2016/07/09 18:40:00 tom Exp $
 #
 # These are termcap entries that correspond to xterm's terminfo file.
 # The file is formatted using ncurses' "tic -CNx", but is not mechanically
@@ -50,7 +50,7 @@
 #	the resolved length of each entry in a comment at the end - T.Dickey
 #
 xf|xterm-new|modern xterm:\
-	:XT::*6=\EOF:@7=\EOF:F1=\E[23~:F2=\E[24~:K2=\EOE:Km=\E[M:\
+	:XT:*6=\EOF:@7=\EOF:F1=\E[23~:F2=\E[24~:K2=\EOE:Km=\E[M:\
 	:k1=\EOP:k2=\EOQ:k3=\EOR:k4=\EOS:k5=\E[15~:k6=\E[17~:\
 	:k7=\E[18~:k8=\E[19~:k9=\E[20~:k;=\E[21~:kB=\E[Z:kH=\EOF:\
 	:kI=\E[2~:kN=\E[6~:kP=\E[5~:kd=\EOB:kh=\EOH:kl=\EOD:\
@@ -82,7 +82,7 @@ xb|xterm-basic|modern xterm common:\
 #	+ uses DEC-style control sequences for the application keypad.
 #
 vt|xterm-vt220|xterm emulating vt220:\
-	:XT::*6=\E[4~:@7=\E[4~:K2=\EOu:Km=\E[M:kB=\E[Z:kH=\E[4~:\
+	:XT:*6=\E[4~:@7=\E[4~:K2=\EOu:Km=\E[M:kB=\E[Z:kH=\E[4~:\
 	:kh=\E[1~:tc=xterm-basic:
 
 v1|xterm-24|xterms|vs100|24x80 xterm:\
diff --git a/util.c b/util.c
index 97205ff..887148d 100644
--- a/util.c
+++ b/util.c
@@ -1,4 +1,4 @@
-/* $XTermId: util.c,v 1.688 2016/06/03 08:58:37 tom Exp $ */
+/* $XTermId: util.c,v 1.691 2016/09/24 13:39:04 tom Exp $ */
 
 /*
  * Copyright 1999-2015,2016 by Thomas E. Dickey
@@ -3309,6 +3309,10 @@ fixupItalics(XtermWidget xw,
 }
 #endif
 
+#define SetMissing() \
+	TRACE(("%s@%d: missing %d\n", __FILE__, __LINE__, missing)); \
+	missing = 1
+
 /*
  * Draws text with the specified combination of bold/underline.  The return
  * value is the updated x position.
@@ -3538,7 +3542,7 @@ drawXtermText(XtermWidget xw,
 		     */
 		    if (screen->force_box_chars
 			|| xtermXftMissing(xw, currFont, dec2ucs(ch))) {
-			missing = 1;
+			SetMissing();
 		    } else {
 			ch = dec2ucs(ch);
 			replace = True;
@@ -3555,7 +3559,7 @@ drawXtermText(XtermWidget xw,
 			    if (screen->force_box_chars
 				|| xtermXftMissing(xw, currFont, ch)) {
 				ch = part;
-				missing = True;
+				SetMissing();
 			    }
 			} else if (xtermXftMissing(xw, currFont, ch)) {
 			    XftFont *test = pickXftFont(needed, font0, wfont0);
@@ -3567,6 +3571,8 @@ drawXtermText(XtermWidget xw,
 				filler = needed - 1;
 				ch = part;
 				replace = True;
+			    } else {
+				SetMissing();
 			    }
 			}


Reply to: