xterm.log.html revision f2e35a3a
1<!-- 2 ***************************************************************************** 3 * this file is part of xterm * 4 * * 5 * Copyright 1997-2020,2021 by Thomas E. Dickey * 6 * * 7 * All Rights Reserved * 8 * * 9 * Permission is hereby granted, free of charge, to any person obtaining a * 10 * copy of this software and associated documentation files (the * 11 * "Software"), to deal in the Software without restriction, including * 12 * without limitation the rights to use, copy, modify, merge, publish, * 13 * distribute, sublicense, and/or sell copies of the Software, and to * 14 * permit persons to whom the Software is furnished to do so, subject to * 15 * the following conditions: * 16 * * 17 * The above copyright notice and this permission notice shall be included * 18 * in all copies or substantial portions of the Software. * 19 * * 20 * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS * 21 * OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF * 22 * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. * 23 * IN NO EVENT SHALL THE ABOVE LISTED COPYRIGHT HOLDER(S) BE LIABLE FOR ANY * 24 * CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, * 25 * TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE * 26 * SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. * 27 * * 28 * Except as contained in this notice, the name(s) of the above copyright * 29 * holders shall not be used in advertising or otherwise to promote the * 30 * sale, use or other dealings in this Software without prior written * 31 * authorization. * 32 ***************************************************************************** 33 $XTermId: xterm.log.html,v 1.2313 2021/02/10 22:27:30 tom Exp $ 34 --> 35<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"> 36<html> 37<head> 38 <meta name="generator" content= 39 "HTML Tidy for HTML5 for Linux version 5.6.0"> 40 <title>XTERM - Change Log</title> 41 <link rel="author" href="mailto:dickey@invisible-island.net"> 42 <meta http-equiv="Content-Type" content= 43 "text/html; charset=us-ascii"> 44 <meta name="keywords" content="xterm, change log"> 45 <meta name="description" content= 46 "This is the xterm change-log, distributed with xterm, with items listed by patch-number and date"> 47 <link rel="SHORTCUT ICON" href="/img/icons/xterm.ico" type= 48 "image/x-icon"> 49</head> 50<body> 51 <hr> 52 53 <p>Copyright © 1997-2020,2021 by <a href= 54 "mailto:dickey@invisible-island.net">Thomas E. Dickey</a></p> 55 56 <hr> 57 58 <h1>Contents</h1> 59 60 <p><a href= 61 "https://invisible-island.net/xterm/xterm.log.html">Here</a> is 62 the latest version of this file.</p> 63 64 <p>It began as a list of the changes that I made for xterm, using 65 the notes that I added when submitting a patch. You should note 66 that other changes were made as well, by other people, to fix 67 bugs and correct ifdef's for portability. Until mid-2006, most of 68 these were summarized in the XFree86 <a href= 69 "https://web.archive.org/web/20070101220948/http://cvsweb.xfree86.org/cvsweb/xc/programs/Xserver/hw/xfree86/CHANGELOG"> 70 CHANGELOG</a>).</p> 71 72 <ul> 73 <li><a href="#xterm_366">Patch #366 - 2021/02/10</a></li> 74 75 <li><a href="#xterm_365">Patch #365 - 2021/02/03</a></li> 76 77 <li><a href="#xterm_364">Patch #364 - 2021/02/02</a></li> 78 79 <li><a href="#xterm_363">Patch #363 - 2020/12/26</a></li> 80 81 <li><a href="#xterm_362">Patch #362 - 2020/11/11</a></li> 82 83 <li><a href="#xterm_361">Patch #361 - 2020/10/14</a></li> 84 85 <li><a href="#xterm_360">Patch #360 - 2020/09/20</a></li> 86 87 <li><a href="#xterm_359">Patch #359 - 2020/08/17</a></li> 88 89 <li><a href="#xterm_358">Patch #358 - 2020/07/12</a></li> 90 91 <li><a href="#xterm_357">Patch #357 - 2020/07/05</a></li> 92 93 <li><a href="#xterm_356">Patch #356 - 2020/05/02</a></li> 94 95 <li><a href="#xterm_355">Patch #355 - 2020/05/01</a></li> 96 97 <li><a href="#xterm_354">Patch #354 - 2020/04/26</a></li> 98 99 <li><a href="#xterm_353">Patch #353 - 2020/02/01</a></li> 100 101 <li><a href="#xterm_352">Patch #352 - 2020/01/16</a></li> 102 103 <li><a href="#xterm_351">Patch #351 - 2019/11/17</a></li> 104 105 <li><a href="#xterm_350">Patch #350 - 2019/11/02</a></li> 106 107 <li><a href="#xterm_349">Patch #349 - 2019/09/22</a></li> 108 109 <li><a href="#xterm_348">Patch #348 - 2019/07/22</a></li> 110 111 <li><a href="#xterm_347">Patch #347 - 2019/06/30</a></li> 112 113 <li><a href="#xterm_346">Patch #346 - 2019/05/27</a></li> 114 115 <li><a href="#xterm_345">Patch #345 - 2019/05/14</a></li> 116 117 <li><a href="#xterm_344">Patch #344 - 2019/02/12</a></li> 118 119 <li><a href="#xterm_343">Patch #343 - 2019/01/13</a></li> 120 121 <li><a href="#xterm_342">Patch #342 - 2019/01/03</a></li> 122 123 <li><a href="#xterm_341">Patch #341 - 2018/12/24</a></li> 124 125 <li><a href="#xterm_340">Patch #340 - 2018/12/16</a></li> 126 127 <li><a href="#xterm_339">Patch #339 - 2018/12/12</a></li> 128 129 <li><a href="#xterm_338">Patch #338 - 2018/12/09</a></li> 130 131 <li><a href="#xterm_337">Patch #337 - 2018/09/21</a></li> 132 133 <li><a href="#xterm_336">Patch #336 - 2018/09/19</a></li> 134 135 <li><a href="#xterm_335">Patch #335 - 2018/08/14</a></li> 136 137 <li><a href="#xterm_334">Patch #334 - 2018/08/12</a></li> 138 139 <li><a href="#xterm_333">Patch #333 - 2018/05/03</a></li> 140 141 <li><a href="#xterm_332">Patch #332 - 2018/04/15</a></li> 142 143 <li><a href="#xterm_331">Patch #331 - 2017/12/30</a></li> 144 145 <li><a href="#xterm_330">Patch #330 - 2017/06/20</a></li> 146 147 <li><a href="#xterm_329">Patch #329 - 2017/06/12</a></li> 148 149 <li><a href="#xterm_328">Patch #328 - 2017/06/01</a></li> 150 151 <li><a href="#xterm_327">Patch #327 - 2016/10/07</a></li> 152 153 <li><a href="#xterm_326">Patch #326 - 2016/09/25</a></li> 154 155 <li><a href="#xterm_325">Patch #325 - 2016/06/05</a></li> 156 157 <li><a href="#xterm_324">Patch #324 - 2016/03/10</a></li> 158 159 <li><a href="#xterm_323">Patch #323 - 2016/03/07</a></li> 160 161 <li><a href="#xterm_322">Patch #322 - 2016/01/02</a></li> 162 163 <li><a href="#xterm_321">Patch #321 - 2015/12/31</a></li> 164 165 <li><a href="#xterm_320">Patch #320 - 2015/08/28</a></li> 166 167 <li><a href="#xterm_319">Patch #319 - 2015/08/19</a></li> 168 169 <li><a href="#xterm_318">Patch #318 - 2015/04/12</a></li> 170 171 <li><a href="#xterm_317">Patch #317 - 2015/03/27</a></li> 172 173 <li><a href="#xterm_316">Patch #316 - 2015/03/07</a></li> 174 175 <li><a href="#xterm_315">Patch #315 - 2015/03/02</a></li> 176 177 <li><a href="#xterm_314">Patch #314 - 2014/12/28</a></li> 178 179 <li><a href="#xterm_313">Patch #313 - 2014/11/28</a></li> 180 181 <li><a href="#xterm_312">Patch #312 - 2014/09/28</a></li> 182 183 <li><a href="#xterm_311">Patch #311 - 2014/09/18</a></li> 184 185 <li><a href="#xterm_310">Patch #310 - 2014/07/25</a></li> 186 187 <li><a href="#xterm_309">Patch #309 - 2014/07/13</a></li> 188 189 <li><a href="#xterm_308">Patch #308 - 2014/06/19</a></li> 190 191 <li><a href="#xterm_307">Patch #307 - 2014/06/17</a></li> 192 193 <li><a href="#xterm_306">Patch #306 - 2014/06/03</a></li> 194 195 <li><a href="#xterm_305">Patch #305 - 2014/06/02</a></li> 196 197 <li><a href="#xterm_304">Patch #304 - 2014/05/03</a></li> 198 199 <li><a href="#xterm_303">Patch #303 - 2014/03/06</a></li> 200 201 <li><a href="#xterm_302">Patch #302 - 2014/03/02</a></li> 202 203 <li><a href="#xterm_301">Patch #301 - 2014/01/19</a></li> 204 205 <li><a href="#xterm_300">Patch #300 - 2013/12/03</a></li> 206 207 <li><a href="#xterm_299">Patch #299 - 2013/12/01</a></li> 208 209 <li><a href="#xterm_298">Patch #298 - 2013/11/27</a></li> 210 211 <li><a href="#xterm_297">Patch #297 - 2013/09/10</a></li> 212 213 <li><a href="#xterm_296">Patch #296 - 2013/07/10</a></li> 214 215 <li><a href="#xterm_295">Patch #295 - 2013/07/06</a></li> 216 217 <li><a href="#xterm_294">Patch #294 - 2013/07/05</a></li> 218 219 <li><a href="#xterm_293">Patch #293 - 2013/05/27</a></li> 220 221 <li><a href="#xterm_292">Patch #292 - 2013/04/25</a></li> 222 223 <li><a href="#xterm_291">Patch #291 - 2013/02/26</a></li> 224 225 <li><a href="#xterm_290">Patch #290 - 2013/02/12</a></li> 226 227 <li><a href="#xterm_289">Patch #289 - 2013/02/08</a></li> 228 229 <li><a href="#xterm_288">Patch #288 - 2013/01/09</a></li> 230 231 <li><a href="#xterm_287">Patch #287 - 2012/11/25</a></li> 232 233 <li><a href="#xterm_286">Patch #286 - 2012/10/29</a></li> 234 235 <li><a href="#xterm_285">Patch #285 - 2012/10/23</a></li> 236 237 <li><a href="#xterm_284">Patch #284 - 2012/10/14</a></li> 238 239 <li><a href="#xterm_283">Patch #283 - 2012/10/09</a></li> 240 241 <li><a href="#xterm_282">Patch #282 - 2012/09/28</a></li> 242 243 <li><a href="#xterm_281">Patch #281 - 2012/06/26</a></li> 244 245 <li><a href="#xterm_280">Patch #280 - 2012/06/24</a></li> 246 247 <li><a href="#xterm_279">Patch #279 - 2012/05/10</a></li> 248 249 <li><a href="#xterm_278">Patch #278 - 2012/01/18</a></li> 250 251 <li><a href="#xterm_277">Patch #277 - 2012/01/07</a></li> 252 253 <li><a href="#xterm_276">Patch #276 - 2011/10/10</a></li> 254 255 <li><a href="#xterm_275">Patch #275 - 2011/09/11</a></li> 256 257 <li><a href="#xterm_274">Patch #274 - 2011/09/05</a></li> 258 259 <li><a href="#xterm_273">Patch #273 - 2011/08/25</a></li> 260 261 <li><a href="#xterm_272">Patch #272 - 2011/08/24</a></li> 262 263 <li><a href="#xterm_271">Patch #271 - 2011/07/14</a></li> 264 265 <li><a href="#xterm_270">Patch #270 - 2011/04/26</a></li> 266 267 <li><a href="#xterm_269">Patch #269 - 2011/02/19</a></li> 268 269 <li><a href="#xterm_268">Patch #268 - 2011/02/10</a></li> 270 271 <li><a href="#xterm_267">Patch #267 - 2010/11/20</a></li> 272 273 <li><a href="#xterm_266">Patch #266 - 2010/10/24</a></li> 274 275 <li><a href="#xterm_265">Patch #265 - 2010/10/22</a></li> 276 277 <li><a href="#xterm_264">Patch #264 - 2010/10/14</a></li> 278 279 <li><a href="#xterm_263">Patch #263 - 2010/10/13</a></li> 280 281 <li><a href="#xterm_262">Patch #262 - 2010/8/30</a></li> 282 283 <li><a href="#xterm_261">Patch #261 - 2010/6/28</a></li> 284 285 <li><a href="#xterm_260">Patch #260 - 2010/6/20</a></li> 286 287 <li><a href="#xterm_259">Patch #259 - 2010/6/5</a></li> 288 289 <li><a href="#xterm_258">Patch #258 - 2010/5/1</a></li> 290 291 <li><a href="#xterm_257">Patch #257 - 2010/4/22</a></li> 292 293 <li><a href="#xterm_256">Patch #256 - 2010/3/6</a></li> 294 295 <li><a href="#xterm_255">Patch #255 - 2010/1/21</a></li> 296 297 <li><a href="#xterm_254">Patch #254 - 2010/1/6</a></li> 298 299 <li><a href="#xterm_253">Patch #253 - 2009/12/10</a></li> 300 301 <li><a href="#xterm_252">Patch #252 - 2009/12/7</a></li> 302 303 <li><a href="#xterm_251">Patch #251 - 2009/11/11</a></li> 304 305 <li><a href="#xterm_250">Patch #250 - 2009/10/13</a></li> 306 307 <li><a href="#xterm_249">Patch #249 - 2009/10/1</a></li> 308 309 <li><a href="#xterm_248">Patch #248 - 2009/9/11</a></li> 310 311 <li><a href="#xterm_247">Patch #247 - 2009/8/30</a></li> 312 313 <li><a href="#xterm_246">Patch #246 - 2009/8/16</a></li> 314 315 <li><a href="#xterm_245">Patch #245 - 2009/8/12</a></li> 316 317 <li><a href="#xterm_244">Patch #244 - 2009/8/9</a></li> 318 319 <li><a href="#xterm_243">Patch #243 - 2009/3/28</a></li> 320 321 <li><a href="#xterm_242">Patch #242 - 2009/2/15</a></li> 322 323 <li><a href="#xterm_241">Patch #241 - 2009/1/26</a></li> 324 325 <li><a href="#xterm_240">Patch #240 - 2009/1/25</a></li> 326 327 <li><a href="#xterm_239">Patch #239 - 2009/1/8</a></li> 328 329 <li><a href="#xterm_238">Patch #238 - 2008/12/30</a></li> 330 331 <li><a href="#xterm_237">Patch #237 - 2008/09/14</a></li> 332 333 <li><a href="#xterm_236">Patch #236 - 2008/07/27</a></li> 334 335 <li><a href="#xterm_235">Patch #235 - 2008/04/20</a></li> 336 337 <li><a href="#xterm_234">Patch #234 - 2008/03/02</a></li> 338 339 <li><a href="#xterm_233">Patch #233 - 2008/02/24</a></li> 340 341 <li><a href="#xterm_232">Patch #232 - 2008/01/30</a></li> 342 343 <li><a href="#xterm_231">Patch #231 - 2008/01/05</a></li> 344 345 <li><a href="#xterm_230">Patch #230 - 2007/12/31</a></li> 346 347 <li><a href="#xterm_229">Patch #229 - 2007/8/12</a></li> 348 349 <li><a href="#xterm_228">Patch #228 - 2007/7/22</a></li> 350 351 <li><a href="#xterm_227">Patch #227 - 2007/6/27</a></li> 352 353 <li><a href="#xterm_226">Patch #226 - 2007/6/17</a></li> 354 355 <li><a href="#xterm_225">Patch #225 - 2007/3/24</a></li> 356 357 <li><a href="#xterm_224">Patch #224 - 2007/2/11</a></li> 358 359 <li><a href="#xterm_223">Patch #223 - 2006/11/30</a></li> 360 361 <li><a href="#xterm_222">Patch #222 - 2006/10/17</a></li> 362 363 <li><a href="#xterm_221">Patch #221 - 2006/10/1</a></li> 364 365 <li><a href="#xterm_220">Patch #220 - 2006/9/10</a></li> 366 367 <li><a href="#xterm_219">Patch #219 - 2006/9/4</a></li> 368 369 <li><a href="#xterm_218">Patch #218 - 2006/8/27</a></li> 370 371 <li><a href="#xterm_217">Patch #217 - 2006/8/20</a></li> 372 373 <li><a href="#xterm_216">Patch #216 - 2006/8/3</a></li> 374 375 <li><a href="#xterm_215">Patch #215 - 2006/6/19 - XFree86 376 4.6.99.2</a></li> 377 378 <li><a href="#xterm_214">Patch #214 - 2006/6/18 - XFree86 379 4.6.99.2</a></li> 380 381 <li><a href="#xterm_213">Patch #213 - 2006/4/30 - XFree86 382 4.5.99.905</a></li> 383 384 <li><a href="#xterm_212">Patch #212 - 2006/4/9 - XFree86 385 4.5.99.904</a></li> 386 387 <li><a href="#xterm_211">Patch #211 - 2006/3/19 - XFree86 388 4.5.99.902</a></li> 389 390 <li><a href="#xterm_210">Patch #210 - 2006/3/12 - XFree86 391 4.5.99.902</a></li> 392 393 <li><a href="#xterm_209">Patch #209 - 2006/2/12 - XFree86 394 4.5.99.22</a></li> 395 396 <li><a href="#xterm_208">Patch #208 - 2006/1/3 - XFree86 397 4.5.99.19</a></li> 398 399 <li><a href="#xterm_207">Patch #207 - 2005/11/13 - XFree86 400 4.5.99.16</a></li> 401 402 <li><a href="#xterm_206">Patch #206 - 2005/11/3 - XFree86 403 4.5.99.15</a></li> 404 405 <li><a href="#xterm_205">Patch #205 - 2005/9/18 - XFree86 406 4.5.99.12</a></li> 407 408 <li><a href="#xterm_204">Patch #204 - 2005/8/4 - XFree86 409 4.5.99.9</a></li> 410 411 <li><a href="#xterm_203">Patch #203 - 2005/7/6 - XFree86 412 4.5.99.7</a></li> 413 414 <li><a href="#xterm_202">Patch #202 - 2005/5/2 - XFree86 415 4.5.99.3</a></li> 416 417 <li><a href="#xterm_201">Patch #201 - 2005/4/21 - XFree86 418 4.5.99.2</a></li> 419 420 <li><a href="#xterm_200">Patch #200 - 2005/2/6 - XFree86 421 4.4.99.23</a></li> 422 423 <li><a href="#xterm_199">Patch #199 - 2005/1/17 - XFree86 424 4.4.99.22</a></li> 425 426 <li><a href="#xterm_198">Patch #198 - 2005/1/13 - XFree86 427 4.4.99.21</a></li> 428 429 <li><a href="#xterm_197">Patch #197 - 2004/11/30 - XFree86 430 4.4.99.19</a></li> 431 432 <li><a href="#xterm_196">Patch #196 - 2004/8/15 - XFree86 433 4.4.99.12</a></li> 434 435 <li><a href="#xterm_195">Patch #195 - 2004/8/8 - XFree86 436 4.4.99.11</a></li> 437 438 <li><a href="#xterm_194">Patch #194 - 2004/7/27 - XFree86 439 4.4.99.11</a></li> 440 441 <li><a href="#xterm_193">Patch #193 - 2004/7/19 - XFree86 442 4.4.99.10</a></li> 443 444 <li><a href="#xterm_192">Patch #192 - 2004/7/12 - XFree86 445 4.4.99.9</a></li> 446 447 <li><a href="#xterm_191">Patch #191 - 2004/6/6 - XFree86 448 4.4.99.7</a></li> 449 450 <li><a href="#xterm_190">Patch #190 - 2004/5/25 - XFree86 451 4.4.99.6</a></li> 452 453 <li><a href="#xterm_189">Patch #189 - 2004/5/16 - XFree86 454 4.4.99.6</a></li> 455 456 <li><a href="#xterm_188">Patch #188 - 2004/5/12 - XFree86 457 4.4.99.6</a></li> 458 459 <li><a href="#xterm_187">Patch #187 - 2004/4/27 - XFree86 460 4.4.99.4</a></li> 461 462 <li><a href="#xterm_186">Patch #186 - 2004/4/18 - XFree86 463 4.4.99.4</a></li> 464 465 <li><a href="#xterm_185">Patch #185 - 2004/3/3 - XFree86 466 4.4</a></li> 467 468 <li><a href="#xterm_184">Patch #184 - 2003/12/31 - XFree86 469 4.3.99.903</a></li> 470 471 <li><a href="#xterm_183">Patch #183 - 2003/12/26 - XFree86 472 4.3.99.903</a></li> 473 474 <li><a href="#xterm_182">Patch #182 - 2003/12/2 - XFree86 475 4.3.99.901</a></li> 476 477 <li><a href="#xterm_181">Patch #181 - 2003/10/26 - XFree86 478 4.3.99.15</a></li> 479 480 <li><a href="#xterm_180">Patch #180 - 2003/10/12 - XFree86 481 4.3.99.15</a></li> 482 483 <li><a href="#xterm_179">Patch #179 - 2003/5/21 - XFree86 484 4.3.99.5</a></li> 485 486 <li><a href="#xterm_178">Patch #178 - 2003/5/18 - XFree86 487 4.3.99.5</a></li> 488 489 <li><a href="#xterm_177">Patch #177 - 2003/3/23 - XFree86 490 4.3.0</a></li> 491 492 <li><a href="#xterm_176">Patch #176 - 2003/3/22 - XFree86 493 4.3.0</a></li> 494 495 <li><a href="#xterm_175">Patch #175 - 2003/3/9 - XFree86 496 4.3.0</a></li> 497 498 <li><a href="#xterm_174">Patch #174 - 2003/2/25 - XFree86 499 4.2.99.903</a></li> 500 501 <li><a href="#xterm_173">Patch #173 - 2003/2/6 - XFree86 502 4.2.99.902</a></li> 503 504 <li><a href="#xterm_172">Patch #172 - 2002/12/27 - XFree86 505 4.2.99.3</a></li> 506 507 <li><a href="#xterm_171">Patch #171 - 2002/12/12 - XFree86 508 4.2.99.3</a></li> 509 510 <li><a href="#xterm_170">Patch #170 - 2002/10/13 - XFree86 511 4.2.1</a></li> 512 513 <li><a href="#xterm_169">Patch #169 - 2002/10/5 - XFree86 514 4.2.1</a></li> 515 516 <li><a href="#xterm_168">Patch #168 - 2002/9/29 - XFree86 517 4.2.1</a></li> 518 519 <li><a href="#xterm_167">Patch #167 - 2002/8/24 - XFree86 520 4.2.0</a></li> 521 522 <li><a href="#xterm_166">Patch #166 - 2002/3/25 - XFree86 523 4.2.0</a></li> 524 525 <li><a href="#xterm_165">Patch #165 - 2002/1/5 - XFree86 526 4.1.0</a></li> 527 528 <li><a href="#xterm_164">Patch #164 - 2001/11/13 - XFree86 529 4.1.0</a></li> 530 531 <li><a href="#xterm_163">Patch #163 - 2001/11/04 - XFree86 532 4.1.0</a></li> 533 534 <li><a href="#xterm_162">Patch #162 - 2001/10/23 - XFree86 535 4.1.0</a></li> 536 537 <li><a href="#xterm_161">Patch #161 - 2001/10/10 - XFree86 538 4.1.0</a></li> 539 540 <li><a href="#xterm_160">Patch #160 - 2001/10/7 - XFree86 541 4.1.0</a></li> 542 543 <li><a href="#xterm_159">Patch #159 - 2001/9/19 - XFree86 544 4.1.0</a></li> 545 546 <li><a href="#xterm_158">Patch #158 - 2001/9/8 - XFree86 547 4.1.0</a></li> 548 549 <li><a href="#xterm_157">Patch #157 - 2001/6/18 - XFree86 550 4.1.0</a></li> 551 552 <li><a href="#xterm_156">Patch #156 - 2001/4/28 - XFree86 553 4.0.3</a></li> 554 555 <li><a href="#xterm_155">Patch #155 - 2001/4/20 - XFree86 556 4.0.3</a></li> 557 558 <li><a href="#xterm_154">Patch #154 - 2001/4/11 - XFree86 559 4.0.3</a></li> 560 561 <li><a href="#xterm_153">Patch #153 - 2001/3/29 - XFree86 562 4.0.3</a></li> 563 564 <li><a href="#xterm_152">Patch #152 - 2001/3/13 - XFree86 565 4.0.2</a></li> 566 567 <li><a href="#xterm_151">Patch #151 - 2001/3/10 - XFree86 568 4.0.2</a></li> 569 570 <li><a href="#xterm_150">Patch #150 - 2000/12/29 - XFree86 571 4.0.2</a></li> 572 573 <li><a href="#xterm_149">Patch #149 - 2000/12/6 - XFree86 574 4.0.1h</a></li> 575 576 <li><a href="#xterm_148">Patch #148 - 2000/10/31 - XFree86 577 4.0.1d</a></li> 578 579 <li><a href="#xterm_147">Patch #147 - 2000/10/26 - XFree86 580 4.0.1c</a></li> 581 582 <li><a href="#xterm_146">Patch #146 - 2000/9/12 - XFree86 583 4.0.1c</a></li> 584 585 <li><a href="#xterm_145">Patch #145 - 2000/9/11 - XFree86 586 4.0.1c</a></li> 587 588 <li><a href="#xterm_144">Patch #144 - 2000/8/23 - XFree86 589 4.0.1b</a></li> 590 591 <li><a href="#xterm_143">Patch #143 - 2000/8/19 - XFree86 592 4.0.1b</a></li> 593 594 <li><a href="#xterm_142">Patch #142 - 2000/8/18 - XFree86 595 4.0.1b</a></li> 596 597 <li><a href="#xterm_141">Patch #141 - 2000/8/14 - XFree86 598 4.0.1b</a></li> 599 600 <li><a href="#xterm_140">Patch #140 - 2000/7/23 - XFree86 601 4.0.1</a></li> 602 603 <li><a href="#xterm_139">Patch #139 - 2000/6/17 - XFree86 604 4.0d</a></li> 605 606 <li><a href="#xterm_138">Patch #138 - 2000/6/15 - XFree86 607 4.0c</a></li> 608 609 <li><a href="#xterm_137">Patch #137 - 2000/6/10 - XFree86 610 4.0b</a></li> 611 612 <li><a href="#xterm_136">Patch #136 - 2000/6/3 - XFree86 613 4.0b</a></li> 614 615 <li><a href="#xterm_135">Patch #135 - 2000/5/29 - XFree86 616 4.0b</a></li> 617 618 <li><a href="#xterm_134">Patch #134 - 2000/5/28 - XFree86 619 4.0b</a></li> 620 621 <li><a href="#xterm_133">Patch #133 - 2000/5/2 - XFree86 622 4.0a</a></li> 623 624 <li><a href="#xterm_132">Patch #132 - 2000/4/11 - XFree86 625 4.0a</a></li> 626 627 <li><a href="#xterm_131">Patch #131 - 2000/3/3 - XFree86 628 3.9.18b</a></li> 629 630 <li><a href="#xterm_130">Patch #130 - 2000/3/1 - XFree86 631 3.9.18a</a></li> 632 633 <li><a href="#xterm_129">Patch #129 - 2000/2/26 - XFree86 634 3.9.18a</a></li> 635 636 <li><a href="#xterm_128">Patch #128 - 2000/2/17 - XFree86 637 3.9.18</a></li> 638 639 <li><a href="#xterm_127">Patch #127 - 2000/2/12 - XFree86 640 3.9.17e</a></li> 641 642 <li><a href="#xterm_126">Patch #126 - 2000/2/8 - XFree86 643 3.9.17c</a></li> 644 645 <li><a href="#xterm_125">Patch #125 - 2000/1/31 - XFree86 646 3.9.17c</a></li> 647 648 <li><a href="#xterm_124">Patch #124 - 2000/1/27 - XFree86 649 3.9.17b</a></li> 650 651 <li><a href="#xterm_123">Patch #123 - 2000/1/22 - XFree86 652 3.9.17a</a></li> 653 654 <li><a href="#xterm_122">Patch #122 - 1999/12/28 - XFree86 655 3.9.16f</a></li> 656 657 <li><a href="#xterm_121">Patch #121 - 1999/11/14 - XFree86 658 3.9.16c</a></li> 659 660 <li><a href="#xterm_120">Patch #120 - 1999/10/28 - XFree86 661 3.9.16c</a></li> 662 663 <li><a href="#xterm_119">Patch #119 - 1999/10/16 - XFree86 664 3.9.16c</a></li> 665 666 <li><a href="#xterm_118">Patch #118 - 1999/10/5 - XFree86 667 3.9.16b</a></li> 668 669 <li><a href="#xterm_117">Patch #117 - 1999/9/29 - XFree86 670 3.9.16b</a></li> 671 672 <li><a href="#xterm_116">Patch #116 - 1999/9/25 - XFree86 673 3.9.16a</a></li> 674 675 <li><a href="#xterm_115">Patch #115 - 1999/9/18 - XFree86 676 3.9.16a</a></li> 677 678 <li><a href="#xterm_114">Patch #114 - 1999/9/15 - XFree86 679 3.9.16</a></li> 680 681 <li><a href="#xterm_113">Patch #113 - 1999/8/15 - XFree86 682 3.9.15b</a></li> 683 684 <li><a href="#xterm_112">Patch #112 - 1999/7/17 - XFree86 685 3.9Pw</a></li> 686 687 <li><a href="#xterm_111">Patch #111 - 1999/7/10 - XFree86 688 3.9Pw</a></li> 689 690 <li><a href="#xterm_110">Patch #110 - 1999/6/29 - XFree86 691 3.9Pu</a></li> 692 693 <li><a href="#xterm_109">Patch #109 - 1999/6/23 - XFree86 694 3.9Pt</a></li> 695 696 <li><a href="#xterm_108">Patch #108 - 1999/6/19 - XFree86 697 3.9Ps</a></li> 698 699 <li><a href="#xterm_107">Patch #107 - 1999/6/12 - XFree86 700 3.9Pq</a></li> 701 702 <li><a href="#xterm_106">Patch #106 - 1999/6/9 - XFree86 703 3.9Pq</a></li> 704 705 <li><a href="#xterm_105">Patch #105 - 1999/6/5 - XFree86 706 3.9Pp</a></li> 707 708 <li><a href="#xterm_104">Patch #104 - 1999/5/30 - XFree86 709 3.9Pn</a></li> 710 711 <li><a href="#xterm_103">Patch #103 - 1999/5/14 - XFree86 712 3.9Pm</a></li> 713 714 <li><a href="#xterm_102">Patch #102 - 1999/5/12 - XFree86 715 3.9Pm</a></li> 716 717 <li><a href="#xterm_101">Patch #101 - 1999/5/10 - XFree86 718 3.9Pm</a></li> 719 720 <li><a href="#xterm_100">Patch #100 - 1999/5/3 - XFree86 721 3.9Pl</a></li> 722 723 <li><a href="#xterm_99">Patch #99 - 1999/5/2 - XFree86 724 3.9Pk</a></li> 725 726 <li><a href="#xterm_98">Patch #98 - 1999/4/26 - XFree86 727 3.9Pk</a></li> 728 729 <li><a href="#xterm_97">Patch #97 - 1999/4/25 - XFree86 730 3.9Pk</a></li> 731 732 <li><a href="#xterm_96">Patch #96 - 1999/4/19 - XFree86 733 3.9Pj</a></li> 734 735 <li><a href="#xterm_95">Patch #95 - 1999/4/5 - XFree86 736 3.9Ph</a></li> 737 738 <li><a href="#xterm_94">Patch #94 - 1999/3/27 - XFree86 739 3.9Pf</a></li> 740 741 <li><a href="#xterm_93">Patch #93 - 1999/3/14 - XFree86 742 3.9Pd</a></li> 743 744 <li><a href="#xterm_92">Patch #92 - 1999/2/5 - XFree86 745 3.9Nz</a></li> 746 747 <li><a href="#xterm_91">Patch #91 - 1999/1/21 - XFree86 748 3.9Nw</a></li> 749 750 <li><a href="#xterm_90">Patch #90 - 1998/12/13 - XFree86 751 3.9Nq</a></li> 752 753 <li><a href="#xterm_89">Patch #89 - 1998/11/20 - XFree86 754 3.9Nm</a></li> 755 756 <li><a href="#xterm_88">Patch #88 - 1998/10/31 - XFree86 3.9Nk 757 and 3.3.2h</a></li> 758 759 <li><a href="#xterm_87">Patch #87 - 1998/10/21 - XFree86 3.9Nj 760 and 3.3.2f</a></li> 761 762 <li><a href="#xterm_86">Patch #86 - 1998/10/14 - XFree86 3.9Nj 763 and 3.3.2e</a></li> 764 765 <li><a href="#xterm_85">Patch #85 - 1998/10/12 - XFree86 3.9Nj 766 and 3.3.2e</a></li> 767 768 <li><a href="#xterm_84">Patch #84 - 1998/10/9 - XFree86 3.9Ni 769 and 3.3.2e</a></li> 770 771 <li><a href="#sync_83">Resync #83 - 1998/10/7 - XFree86 772 3.3.2e</a></li> 773 774 <li><a href="#xterm_83">Patch #83 - 1998/8/25 - XFree86 775 3.9Nb</a></li> 776 777 <li><a href="#xterm_82">Patch #82 - 1998/7/15 - XFree86 778 3.9Aj</a></li> 779 780 <li><a href="#xterm_81">Patch #81 - 1998/7/14 - XFree86 781 3.9Aj</a></li> 782 783 <li><a href="#xterm_80">Patch #80 - 1998/6/29 - XFree86 784 3.9Ai</a></li> 785 786 <li><a href="#xterm_79">Patch #79 - 1998/6/28 - XFree86 787 3.9Ai</a></li> 788 789 <li><a href="#xterm_78">Patch #78 - 1998/6/3 - XFree86 3.9Ah 790 and 3.3.2</a></li> 791 792 <li><a href="#xterm_77">Patch #77 - 1998/5/26 - XFree86 3.9Ah 793 and 3.3.2</a></li> 794 795 <li><a href="#xterm_76">Patch #76 - 1998/5/8 - XFree86 3.9Ah 796 and 3.3.2</a></li> 797 798 <li><a href="#xterm_75">Patch #75 - 1998/5/7 - XFree86 3.9Ah 799 and 3.3.2</a></li> 800 801 <li><a href="#xterm_74">Patch #74 - 1998/4/27 - XFree86 3.9Ag 802 and 3.3.2</a></li> 803 804 <li><a href="#xterm_73">Patch #73 - 1998/4/25 - XFree86 3.9Ag 805 and 3.3.2</a></li> 806 807 <li><a href="#xterm_72">Patch #72 - 1998/4/17 - XFree86 3.9Ag 808 and 3.3.2</a></li> 809 810 <li><a href="#xterm_71">Patch #71 - 1998/4/12 - XFree86 3.9Ag 811 and 3.3.2</a></li> 812 813 <li><a href="#xterm_70">Patch #70 - 1998/3/29 - XFree86 3.9Af 814 and 3.3.2</a></li> 815 816 <li><a href="#xterm_69">Patch #69 - 1998/3/16 - XFree86 3.9Ad 817 and 3.3.2</a></li> 818 819 <li><a href="#xterm_68">Patch #68 - 1998/3/4 - XFree86 3.9Ad 820 and 3.3.1z</a></li> 821 822 <li><a href="#xterm_67">Patch #67 - 1998/2/23 - XFree86 3.9Ad 823 and 3.3.1e</a></li> 824 825 <li><a href="#xterm_66">Patch #66 - 1998/2/16 - XFree86 3.9Ad 826 and 3.3.1d</a></li> 827 828 <li><a href="#xterm_65">Patch #65 - 1998/2/14 - XFree86 3.9Ad 829 and 3.3.1c</a></li> 830 831 <li><a href="#xterm_64">Patch #64 - 1998/2/8 - XFree86 832 3.9Ad</a></li> 833 834 <li><a href="#xterm_63">Patch #63 - 1998/2/5 - XFree86 835 3.9Ad</a></li> 836 837 <li><a href="#xterm_62">Patch #62 - 1998/1/23 - XFree86 838 3.9Ac</a></li> 839 840 <li><a href="#xterm_61">Patch #61 - 1998/1/17 - XFree86 841 3.9Ac</a></li> 842 843 <li><a href="#xterm_60">Patch #60 - 1998/1/10 - XFree86 844 3.9Ab</a></li> 845 846 <li><a href="#xterm_59">Patch #59 - 1998/1/5 - XFree86 847 3.9Ab</a></li> 848 849 <li><a href="#xterm_58">Patch #58 - 1998/1/3 - XFree86 850 3.9Ab</a></li> 851 852 <li><a href="#xterm_57">Patch #57 - 1997/12/26 - XFree86 853 3.9Aa</a></li> 854 855 <li><a href="#xterm_56">Patch #56 - 1997/11/28 - XFree86 856 3.9x</a></li> 857 858 <li><a href="#xterm_55">Patch #55 - 1997/11/25 - XFree86 859 3.9x</a></li> 860 861 <li><a href="#xterm_54">Patch #54 - 1997/10/17 - XFree86 862 3.9s</a></li> 863 864 <li><a href="#xterm_53">Patch #53 - 1997/10/12 - XFree86 865 3.9r</a></li> 866 867 <li><a href="#xterm_52">Patch #52 - 1997/9/29 - XFree86 868 3.9q</a></li> 869 870 <li><a href="#xterm_51">Patch #51 - 1997/9/15 - XFree86 871 3.9p</a></li> 872 873 <li><a href="#xterm_50">Patch #50 - 1997/8/22 - XFree86 874 3.9m</a></li> 875 876 <li><a href="#xterm_49">Patch #49 - 1997/8/10 - XFree86 877 3.9k</a></li> 878 879 <li><a href="#xterm_48">Patch #48 - 1997/7/26 - XFree86 880 3.9j</a></li> 881 882 <li><a href="#xterm_47">Patch #47 - 1997/7/13 - XFree86 883 3.9i</a></li> 884 885 <li><a href="#xterm_46">Patch #46 - 1997/7/4 - XFree86 3.9h</a></li> 886 887 <li><a href="#xterm_45">Patch #45 - 1997/7/2 - XFree86 3.9h</a></li> 888 889 <li><a href="#xterm_44">Patch #44 - 1997/6/22 - XFree86 890 3.9g</a></li> 891 892 <li><a href="#xterm_43">Patch #43 - 1997/6/10 - XFree86 893 3.9d</a></li> 894 895 <li><a href="#xterm_42">Patch #42 - 1997/6/8 - XFree86 896 3.2Xl</a></li> 897 898 <li><a href="#xterm_41">Patch #41 - 1997/5/28 - XFree86 899 3.2Xl</a></li> 900 901 <li><a href="#xterm_40">Patch #40 - 1997/5/26 - XFree86 902 3.2Xl</a></li> 903 904 <li><a href="#xterm_39">Patch #39 - 1997/5/24 - XFree86 905 3.2Xl</a></li> 906 907 <li><a href="#xterm_38">Patch #38 - 1997/5/22 - XFree86 908 3.2Xh</a></li> 909 910 <li><a href="#xterm_37">Patch #37 - 1997/5/7 - XFree86 3.9a</a></li> 911 912 <li><a href="#xterm_36">Patch #36 - 1997/1/16 - XFree86 913 3.2r</a></li> 914 915 <li><a href="#xterm_35">Patch #35 - 1997/1/7 - XFree86 3.2o</a></li> 916 917 <li><a href="#xterm_34">Patch #34 - 1997/1/5 - XFree86 3.2o</a></li> 918 919 <li><a href="#xterm_33">Patch #33 - 1996/11/24 - XFree86 920 3.2</a></li> 921 922 <li><a href="#xterm_32">Patch #32 - 1996/11/21 - XFree86 923 3.2</a></li> 924 925 <li><a href="#xterm_31">Patch #31 - 1996/11/16 - XFree86 926 3.2</a></li> 927 928 <li><a href="#xterm_30">Patch #30 - 1996/11/16 - XFree86 929 3.2</a></li> 930 931 <li><a href="#xterm_29">Patch #29 - 1996/9/15 - XFree86 932 3.1.2Gb</a></li> 933 934 <li><a href="#xterm_28">Patch #28 - 1996/8/31 - XFree86 935 3.1.2F</a></li> 936 937 <li><a href="#xterm_27">Patch #27 - 1996/8/21 - XFree86 938 3.1.2Ek</a></li> 939 940 <li><a href="#xterm_26">Patch #26 - 1996/8/20 - XFree86 941 3.1.2Ei</a></li> 942 943 <li><a href="#xterm_25">Patch #25 - 1996/8/18 - XFree86 944 3.1.2Ei</a></li> 945 946 <li><a href="#xterm_24">Patch #24 - 1996/8/11 - XFree86 947 3.1.2Ee</a></li> 948 949 <li><a href="#xterm_23">Patch #23 - 1996/7/31 - XFree86 950 3.1.2Ec</a></li> 951 952 <li><a href="#xterm_22">Patch #22 - 1996/7/26 - XFree86 953 3.1.2Ec</a></li> 954 955 <li><a href="#xterm_21">Patch #21 - 1996/7/24 - XFree86 956 3.1.2Ec</a></li> 957 958 <li><a href="#xterm_20">Patch #20 - 1996/7/24 - XFree86 959 3.1.2Ec</a></li> 960 961 <li><a href="#xterm_19">Patch #19 - 1996/7/21 - XFree86 962 3.1.2Ec</a></li> 963 964 <li><a href="#xterm_18">Patch #18 - 1996/7/18 - XFree86 965 3.1.2Ec</a></li> 966 967 <li><a href="#xterm_17">Patch #17 - 1996/7/2 - XFree86 968 3.1.2Eb</a></li> 969 970 <li><a href="#xterm_16">Patch #16 - 1996/6/25 - XFree86 971 3.1.2Ea</a></li> 972 973 <li><a href="#xterm_15">Patch #15 - 1996/5/29 - XFree86 974 3.1.2E</a></li> 975 976 <li><a href="#xterm_14">Patch #14 - 1996/5/12 - XFree86 977 3.1.2Dj</a></li> 978 979 <li><a href="#xterm_13">Patch #13 - 1996/4/23 - XFree86 980 3.1.2Df</a></li> 981 982 <li><a href="#xterm_12">Patch #12 - 1996/3/16 - XFree86 983 3.1.2Dc</a></li> 984 985 <li><a href="#xterm_11">Patch #11 - 1996/3/5 - XFree86 986 3.1.2Db</a></li> 987 988 <li><a href="#xterm_10">Patch #10 - 1996/2/14 - XFree86 989 3.1.2Cd</a></li> 990 991 <li><a href="#xterm_09">Patch #9 - 1996/2/10 - XFree86 992 3.1.2Cb</a></li> 993 994 <li><a href="#xterm_08">Patch #8 - 1996/2/9 - XFree86 995 3.1.2Cb</a></li> 996 997 <li><a href="#xterm_07">Patch #7 - 1996/1/28 - XFree86 998 3.1.2n</a></li> 999 1000 <li><a href="#xterm_06">Patch #6 - 1996/1/8</a></li> 1001 1002 <li><a href="#xterm_05">Patch #5 - 1996/1/7</a></li> 1003 1004 <li><a href="#xterm_04">Patch #4 - 1996/1/7</a></li> 1005 1006 <li><a href="#xterm_03">Patch #3 - 1996/1/7</a></li> 1007 1008 <li><a href="#xterm_02">Patch #2 - 1996/1/7</a></li> 1009 1010 <li><a href="#xterm_01">Patch #1 - 1996/1/6</a></li> 1011 </ul> 1012 1013 <h1><a name="xterm_366" id="xterm_366">Patch #366 - 1014 2021/02/10</a></h1> 1015 1016 <ul> 1017 <li>correct a compiler-warning fix in <a href= 1018 "#xterm_352">patch #352</a> which allowed sign-extension of 1019 coordinate values (report by "CismonX").</li> 1020 1021 <li>correct upper-limit for selection buffer, accounting for 1022 combining characters (report/testcase by Tavis Ormandy).</li> 1023 1024 <li>with <code>alwaysHighlight</code> true, xterm does not 1025 properly track focus. The <em>screen->select</em> 1026 <code>FOCUS</code> flag remains always on, which prevents 1027 <code>bellIsUrgent</code> from working, as the urgent 1028 <code>WM_HINT</code> flag is only set in 1029 <code>setXUrgency()</code> when the window is not focused. Fix 1030 this by updating <em>screen->select</em> in 1031 <code>unselectwindow()</code> regardless of the value of 1032 <code>always_highlight</code> (patch by Jiri Bohac).</li> 1033 1034 <li>improve fix for interaction between SRM and ENQ (report by 1035 Grant Taylor).</li> 1036 1037 <li>build-fix for <code>--with-Xaw3dxft</code>, needed when 1038 <code>--with-toolbar</code> is omitted (report by Jimmy Olgeni, 1039 Emanuel Haupt).</li> 1040 </ul> 1041 1042 <h1><a name="xterm_365" id="xterm_365">Patch #365 - 1043 2021/02/03</a></h1> 1044 1045 <ul> 1046 <li>amend fix for “word” selection in <a href= 1047 "#xterm_364">patch #364</a> to limit that to the 1048 <code>insert-selectable</code> <em>action</em>, which reads 1049 data from the screen. This restores the interactive behavior 1050 where double-clicking on a “word” would make 1051 subsequent selection extensions by words as well as suppressing 1052 some boundary-checks (report by David Wolfskill, FreeBSD 1053 #253225).</li> 1054 </ul> 1055 1056 <h1><a name="xterm_364" id="xterm_364">Patch #364 - 1057 2021/02/02</a></h1> 1058 1059 <ul> 1060 <li>add <code>-fc</code> option.</li> 1061 1062 <li>correct/improve limit-checks for SRM versus ENQ from 1063 <a href="#xterm_344">patch #344</a> (report by Tom 1064 Szilagyi).</li> 1065 1066 <li>enable <code>XftFont</code> resource in Xaw3dxft 1067 configuration (patch by Tavis Ormandy).</li> 1068 1069 <li>improve quoting/escaping in build-scripts per 1070 shellcheck.</li> 1071 1072 <li>add <code>libpcre2-posix</code> to the packages tested for 1073 <code>--with-pcre2</code> option, needed with Fedora (report by 1074 Tomas Korbar).</li> 1075 1076 <li>correct a typo in manual page, and note that 1077 <code>KeepClipboard</code> may not be compiled-in (report/patch 1078 by Sean C Farley).</li> 1079 1080 <li>corrected boundary-checks for “word” selection 1081 used in <code>on<em>N</em>Clicks</code> resources (report by 1082 Tavis Ormandy).</li> 1083 1084 <li>update to autoconf-2.52-20210101, to improve shellcheck 1085 warnings.</li> 1086 1087 <li>improve configure check for desktop categories.</li> 1088 </ul> 1089 1090 <h1><a name="xterm_363" id="xterm_363">Patch #363 - 1091 2020/12/26</a></h1> 1092 1093 <ul> 1094 <li>disable groff hyphenation in generated html when using 1095 man2html.</li> 1096 1097 <li>change SCS “<code>&4</code>” Cyrillic to 1098 non-NRCS, per VT520 manual.</li> 1099 1100 <li>amend fix for SCS in <a href="#xterm_198">patch #198</a> to 1101 remove <code>DEL</code> rather than converting it to a space 1102 (report by Thomas Wolff).</li> 1103 1104 <li>modify state transitions for selecting character sets to 1105 eliminate an ambiguity between the “A” used in 1106 VT220 versus VT320.</li> 1107 1108 <li>improve error recovery when selecting characters by 1109 resetting to US ASCII when no suitable encoding is found, e.g., 1110 attempting to use an NRCS sequence when NRCS is not 1111 enabled.</li> 1112 1113 <li>turn off hyphenation in “<code>.txt</code>” 1114 conversion, prompted by groff changes.</li> 1115 1116 <li>add VT5xx ISO Latin-2 (prompted by discussion with Thomas 1117 Wolff).</li> 1118 1119 <li>amend change from <a href="#xterm_361">patch #361</a> to 1120 event-handling in <code>CopyWait</code> to handle active-icon 1121 as a special case (Debian #975687).</li> 1122 1123 <li>add call to <code>loadColorTable</code> to get the visual 1124 information needed to decode BE RGBA32 color format (patch by 1125 Leandro Lupori).</li> 1126 1127 <li>modify the resource-parsing for 1128 <code>disallowedPasteControls</code> and similar lists of 1129 names/numbers to recognize “~;” (tilde) for 1130 cancelling a given name/number.</li> 1131 1132 <li>add ENQ, EOT and NUL to default for 1133 <code>disallowedPasteControls</code>.</li> 1134 1135 <li>change default for <code>disallowedPasteControls</code> to 1136 omit the tab character (suggested by Harald Dunkel).</li> 1137 1138 <li>fix swapped height/width in <code>regisScreenSize</code> 1139 and <code>maxGraphicSize</code> resources using "auto" value, 1140 from <a href="#xterm_314">patch #314</a> (report by Anton 1141 Lavrentiev)</li> 1142 1143 <li>revise <a href="#xterm_362">patch #362</a> change for 1144 shift-modifier versus mouse protocol and select/paste by adding 1145 resource <code>shiftEscape</code>, which can be enabled via a 1146 control sequence (prompted by discussion with Matthijs van 1147 Duin).</li> 1148 1149 <li>simplify/improve ifdef in trace code for using a separate 1150 set of files for each run of xterm.</li> 1151 1152 <li>add options <code>-r</code> and <code>-t</code> to 1153 <code>vttests/query-color.pl</code> to show the 6-digit RGB 1154 code and actual colors.</li> 1155 1156 <li>add <code>nel</code> to <code>xterm-basic</code> 1157 terminfo.</li> 1158 1159 <li>alter <code>vttests/modify-keys.pl</code> to omit HTML 1160 reference links to the modified-keys table where no keycode was 1161 available.</li> 1162 </ul> 1163 1164 <h1><a name="xterm_362" id="xterm_362">Patch #362 - 1165 2020/11/11</a></h1> 1166 1167 <ul> 1168 <li>cleanup of calls to <code>free</code>, removing checks for 1169 null (Walter Harms).</li> 1170 1171 <li>improved mouse-button reporting (prompted by discussion 1172 with Stephane Chazelas) 1173 <ul> 1174 <li>narrow the scope of the change for shift-key in 1175 <a href="#xterm_361">patch #361</a> to make it apply only 1176 when the <code>modifyOtherKeys</code> resource is set to 2 1177 (i.e., “program mode”). Also, when checking the 1178 shift-key, ignore modifiers other than shift, control and 1179 “meta”</li> 1180 1181 <li>use the alt/meta modifier information obtained in 1182 <code>VTInitModifiers</code> to replace a hard-coded 1183 <em>mod1</em> used to detect “Meta” for 1184 mouse-button responses.</li> 1185 </ul> 1186 </li> 1187 1188 <li>reduce <code>SIGWINCH</code>'s sent to the client by 1189 filtering out duplicates.</li> 1190 1191 <li>improve display when <code>scaleHeight</code> is greater 1192 than 1: 1193 <ul> 1194 <li>the text-cursor is vertically-centered on the current 1195 line, rather than only extending below the current line 1196 (report by Manu Chaturvedi).</li> 1197 1198 <li>the built-in line-drawing characters extend to the 1199 scaled cell-height.</li> 1200 </ul> 1201 </li> 1202 1203 <li>fill-in special case for motion-events to match the changes 1204 for shift-key in pointer-button events from <a href= 1205 "#xterm_361">patch #361</a>.</li> 1206 </ul> 1207 1208 <h1><a name="xterm_361" id="xterm_361">Patch #361 - 1209 2020/10/14</a></h1> 1210 1211 <ul> 1212 <li>treat the return value of <code>strerror</code> as readonly 1213 (patch by Philipp Klaus Krause).</li> 1214 1215 <li>modify event-handling in <code>CopyWait</code> to work 1216 around hanging while writing large amounts of text to an active 1217 icon and at the same time iconifying/deiconifying (report by 1218 Dave Kemper).</li> 1219 1220 <li>initialize double-buffer for active-icon window.</li> 1221 1222 <li>improve manual page description of scrollbar resources 1223 (report by Brian Lindholm).</li> 1224 1225 <li>correct ifdef for menu entry for active-icon, when 1226 initializing it with toolbar configuration.</li> 1227 1228 <li>add preprocessor option to makefile to set internal 1229 definition of pixmaps directory to match the 1230 install-configuration (FreeBSD #250036).</li> 1231 1232 <li>cleanup of calls to <code>free</code>, removing checks for 1233 null (Walter Harms).</li> 1234 1235 <li>add fallback actions <code>pointer-button</code> and 1236 <code>pointer-motion</code> which handle events for the mouse 1237 control-sequences protocol if the <em>select</em>-related 1238 translations are omitted with 1239 <code>*omitTranslation:select</code> (prompted by discussion 1240 with "Ergus")</li> 1241 1242 <li>amend rule for using shift-key to override mouse-protocol 1243 for select/paste to limit that feature to mouse-buttons which 1244 are actually bound to select/paste actions (prompted by 1245 discussion with "Ergus").</li> 1246 1247 <li>corrected mapping in special case for repainting wrap-marks 1248 when viewing the scrollback area.</li> 1249 1250 <li>use separate <em>GCs</em> for <code>showWrapMarks</code> 1251 feature, to work around cursor coloring change in <a href= 1252 "#xterm_345">patch #345</a> (report by Paulo Silva de 1253 Alíbano).</li> 1254 </ul> 1255 1256 <h1><a name="xterm_360" id="xterm_360">Patch #360 - 1257 2020/09/20</a></h1> 1258 1259 <ul> 1260 <li>mention <code>decGraphicsID</code> in 1261 <code>ctlseqs.ms</code> (suggested by Thomas Wolff).</li> 1262 1263 <li>modify pixel-coordinate mouse reponse to use as origin the 1264 VT100-window rather than the underlying widget, which includes 1265 the scrollbar (report by Thomas Wolff).</li> 1266 1267 <li>add configure option <code>--disable-print-graphics</code> 1268 (Ross Combs).</li> 1269 1270 <li>add <code>test_ptydata</code> to “make check” 1271 rule.</li> 1272 1273 <li>minor fixes for <code>ctlseqs.ms</code> (report by 1274 Jean-Marc Bourguet).</li> 1275 1276 <li>minor fixes for manpage style (report/patch by 1277 "a1346054").</li> 1278 1279 <li>correct cleanup from switch between italics/normal font in 1280 the show/hide cursor functions (report/testcase by Peter 1281 Fabinski).</li> 1282 1283 <li>integrated patch by Ross Combs: 1284 <ul> 1285 <li>internal renaming of GraphicsID symbols, for 1286 readability.</li> 1287 1288 <li>adjust logic for VT125, treating it as a ReGIS 1289 terminal.</li> 1290 </ul> 1291 </li> 1292 1293 <li>update configure macros, for compiler-warning fixes.</li> 1294 1295 <li>integrated patch by Ross Combs: 1296 <ul> 1297 <li>add control sequence modes for graphics printing.</li> 1298 1299 <li>improve conversion to bitmaps for TrueType fonts in 1300 ReGIS</li> 1301 1302 <li>add <code>font7</code> resource, for an 1303 “enormous” bitmap font.</li> 1304 1305 <li>do not reset graphics in a soft-reset.</li> 1306 1307 <li>add <code>pointerFont</code> resource, and 1308 <code>-pf</code> command-line option.</li> 1309 </ul> 1310 </li> 1311 1312 <li>improve typography of manual page (patch by Branden 1313 Robinson).</li> 1314 1315 <li>amend <a href="#xterm_359">patch #359</a> change to 1316 <code>df-install.in</code> to ignore a command-line assignment 1317 to <code>DESTDIR</code> if followed by an explicit 1318 <code>--dir</code> (report by Sven Joachim).</li> 1319 </ul> 1320 1321 <h1><a name="xterm_359" id="xterm_359">Patch #359 - 1322 2020/08/17</a></h1> 1323 1324 <ul> 1325 <li>add special case in <code>WriteText</code> to allow colors 1326 8-15 to override <code>colorBDMode</code> (patch by Ingo 1327 Brückl).</li> 1328 1329 <li>add <code>utf8Weblike</code> resource, to provide an 1330 alternate scheme for handling ill-formed UTF-8 sequences 1331 (adapted from patch by Dan Gohman).</li> 1332 1333 <li>improve computation for the number of lines needed to 1334 scroll-up a SIXEL graphic (report/patch by Ben Wong).</li> 1335 1336 <li>correct manpage description for default value of 1337 <code>disallowWindowOps</code> from changes in <a href= 1338 "#xterm_331">xterm #331</a> (patch by Ben Wong).</li> 1339 1340 <li>correct a loop starting-point in 1341 <code>refresh_graphics</code> from optimization in <a href= 1342 "#xterm_358">patch #358</a> changes (report by Ben Wong).</li> 1343 1344 <li>add a new mouse mode 1016, which uses the same format as 1345 mode 1006, but sends the mouse's position in pixels (suggested 1346 by Igor van den Hoven).</li> 1347 1348 <li>fix an issue from <a href="#xterm_338">patch #338</a> 1349 changes where only the first selection buffer specified in the 1350 request would be updated using OSC 52 (patch by Michael 1351 Gulick).</li> 1352 1353 <li>modify makefile/scripts to allow <code>DESTDIR</code> to 1354 prefix the target directory for desktop-file-install (report by 1355 Fred Heitkamp).</li> 1356 1357 <li>enable SIXEL feature by default.</li> 1358 1359 <li>update config.guess, config.sub</li> 1360 </ul> 1361 1362 <h1><a name="xterm_358" id="xterm_358">Patch #358 - 1363 2020/07/12</a></h1> 1364 1365 <ul> 1366 <li>correct logic for decodeTerminalID changes in <a href= 1367 "#xterm_357">patch #357</a> (report by "Chartreuse").</li> 1368 1369 <li>modify makefile to use <code>plink.sh</code> when linking 1370 test-programs, to fix build when using pcre (report by H Merijn 1371 Brand)</li> 1372 1373 <li>build-fix for test_ptydata program (patch by H Merijn 1374 Brand)</li> 1375 </ul> 1376 1377 <h1><a name="xterm_357" id="xterm_357">Patch #357 - 1378 2020/07/05</a></h1> 1379 1380 <ul> 1381 <li>several minor optimizations for the ReGIS and SIXEL 1382 features, improving performance by 10%.</li> 1383 1384 <li>add resource <code>decGraphicsID</code> to allow displaying 1385 graphics when the emulation level would ordinarily disallow 1386 this (prompted by discussion with Thomas Wolff).</li> 1387 1388 <li>add control sequences for fast switching of color palettes: 1389 <code>XTPUSHCOLORS</code>, <code>XTPOPCOLORS</code>, 1390 <code>XTREPORTCOLORS</code></li> 1391 1392 <li>amend change for soft-hyphen from <a href= 1393 "#xterm_328">patch #328</a> to avoid stripping 1394 replacement-characters which would be shown with malformed or 1395 overlong UTF-8 input.</li> 1396 1397 <li>corrected an error-handling case in 1398 <code>decodeUtf8</code>, matching a similar fix in <a href= 1399 "#xterm_268">patch #268</a> (report/patch by Dan Gohman).</li> 1400 1401 <li>add a test-driver for <code>ptydata.c</code></li> 1402 1403 <li>minor cleanup of macros (adapted from patch by Walter 1404 Harms).</li> 1405 1406 <li>fix some errata in <code>ctlseqs.ms</code> (report by 1407 Thomas Wolff).</li> 1408 1409 <li>allow immediate repaint-on-palette-changed if 1410 double-buffering is enabled.</li> 1411 1412 <li>deprecate codes 10/11 in sgr push controls, changing those 1413 to 30/31, to avoid confusion with sgr 10-19.</li> 1414 1415 <li>modify <code>SGR</code> parameter handling to stop if an 1416 unrecognized parameter is encountered, to guard against 1417 malformed or nonstandard sequences (report by Bram 1418 Moolenaar).</li> 1419 1420 <li>modify <code>DECERA</code> color for consistency with other 1421 erasures/clearing (report by Thomas Wolff).</li> 1422 1423 <li><code>ECH</code> should not be masked by 1424 <code>DECSCA</code> (report by Thomas Wolff).</li> 1425 1426 <li>extend <code>DECFRA</code> and <code>REP</code> to accept 1427 any “graphic” character rather than just Latin1, 1428 etc. (report by Thomas Wolff).</li> 1429 1430 <li>add <code>-C</code> option to 256colors2.pl and 1431 88colors2.pl, to demonstrate mixed semicolon/colon separators 1432 which are implied by ECMA-48.</li> 1433 1434 <li>update sample terminfo to reflect the documentation 1435 improvements.</li> 1436 1437 <li>update description of 88/256/direct color in 1438 <code>ctlseqs.ms</code> to point out that using semicolons is a 1439 deprecated legacy feature, and standard terminal applications 1440 should use colons (prompted by discussion with Bram 1441 Moolenaar).</li> 1442 1443 <li>modify configure-check for <code>tgetent</code> to 1444 conditionally include <code>termcap.h</code>, enabling 1445 configuration using <code>clang</code>'s pedantic-errors option 1446 (report by Dennis Clarke). See <a href= 1447 "https://invisible-island.net/ncurses/man/curs_termcap.3x.html#h3-Other-Compatibility"> 1448 <em>Other Compatibility</em></a> in ncurses' 1449 <em>curs_termcap(3X)</em>.</li> 1450 1451 <li>remove some unnecessary pointer checks (patch by Walter 1452 Harms).</li> 1453 1454 <li>accept terminal-id and add DA response for VT131, 1455 VT132.</li> 1456 </ul> 1457 1458 <h1><a name="xterm_356" id="xterm_356">Patch #356 - 1459 2020/05/02</a></h1> 1460 1461 <ul> 1462 <li>revise fix for Debian #954730, which interfered with wheel 1463 mouse events (report by Gabriele Balducci).</li> 1464 </ul> 1465 1466 <h1><a name="xterm_355" id="xterm_355">Patch #355 - 1467 2020/05/01</a></h1> 1468 1469 <ul> 1470 <li>revise fix for Debian #954730, which interfered with wheel 1471 mouse events (report by Henri Menke).</li> 1472 1473 <li>fix typos in documentation (reports by Stephen Hurd, Stefan 1474 Assmann).</li> 1475 1476 <li>add mapping for <code>decTerminalID</code> for 1477 “100” overlooked in <a href="#xterm_354">patch 1478 #354</a>.</li> 1479 1480 <li>update tables in wcwidth.c based on Unicode 13.0.0</li> 1481 1482 <li>build-fix for “make check” when building 1483 out-of-tree (report by Sven Joachim).</li> 1484 </ul> 1485 1486 <h1><a name="xterm_354" id="xterm_354">Patch #354 - 1487 2020/04/26</a></h1> 1488 1489 <ul> 1490 <li>work around performance problems of 1491 <code>XDrawImageString</code> and 1492 <code>XDrawImageString16</code> functions (Debian 1493 #954845).</li> 1494 1495 <li>add a control sequence which reports xterm's version (patch 1496 by Nicholas Marriott, mintty #881).</li> 1497 1498 <li>temporarily set numeric locale category to "C" when parsing 1499 resources, so that <code>scaleHeight</code> and 1500 <code>faceSize</code> settings do not depend on locale (Debian 1501 #820803).</li> 1502 1503 <li>improve DA/DA2 response by ensuring that the 1504 <code>decTerminalID</code> maps to one of the known 1505 identifiers, as well as providing DA2 response for VT241 and 1506 VT382.</li> 1507 1508 <li>terminfo improvements: 1509 <ul> 1510 <li>add (my) comments from ncurses which explain the keypad 1511 layouts.</li> 1512 1513 <li>add <code>vt52+keypad</code> from ncurses</li> 1514 1515 <li>use improved <code>xm</code> example for 1516 <code>xterm+x11mouse</code>, <code>xterm+sm+1006</code> 1517 from ncurses 6.2 terminfo.src</li> 1518 </ul> 1519 </li> 1520 1521 <li>two fixes for left/right wheel mouse event reporting 1522 (Debian #954730): 1523 <ul> 1524 <li>filter identical button-events</li> 1525 1526 <li>correct order of button-range versus protocol type (see 1527 <a href="#xterm_345">patch #345</a>)</li> 1528 </ul> 1529 </li> 1530 1531 <li>change “make check” makefile-rule to use 1532 test-drivers for charclass and wcwidth data.</li> 1533 1534 <li>quiet “did not find a usable <em>xxx</em> TrueType 1535 font” warnings by making <code>fontWarnings</code> apply 1536 to these messages (report by Jim Rees).</li> 1537 1538 <li>improve reinitialization of parameter list (report/testcase 1539 by James Holderness).</li> 1540 1541 <li>temporarily set numeric locale category to "C" when 1542 formatting SVG or XHTML screendumps, to make the radix 1543 separator used in RGB values consistent (adapted from patch by 1544 George Kouryachy).</li> 1545 1546 <li>add resource <code>forceXftHeight</code> to control whether 1547 workaround from Debian #880407 is used.</li> 1548 1549 <li>apply updated ascent/descent in workaround from Debian 1550 #880407 to fix a 1-pixel gap in built-in vertical lines 1551 (report/testcase by Stefan Assmann).</li> 1552 1553 <li>improve round-off of scaling for built-in line-drawing 1554 (prompted by discussion with Stefan Assmann).</li> 1555 1556 <li>adjust fonts in svg-icon files to accommodate reduced 1557 functionality of new pango (report/analysis by YOKOTA 1558 Hiroshi).</li> 1559 1560 <li>improve configure check for X Toolkit library.</li> 1561 1562 <li>correct Y-coordinate transformation in 1563 <code>ClearCurBackground</code>, overlooked in changes for 1564 <a href="#xterm_334">patch #334</a> (report/analysis by Chuck 1565 Silvers).</li> 1566 1567 <li>remove <code>--vendor</code> option from test-packages' 1568 install of desktop files; the feature is badly broken in 1569 <em>gnome-shell</em>.</li> 1570 1571 <li>modify <code>uxterm</code> to make it possible to select 1572 nonstandard locale <em>C.UTF-8</em>, e.g, if the user's locale 1573 is set to “C” (Debian #940626).</li> 1574 1575 <li>re-save/tweak “.svg” icon-files to work around 1576 breakage in toolset since the files were created in <a href= 1577 "#xterm_283">patch #283</a>.</li> 1578 </ul> 1579 1580 <h1><a name="xterm_353" id="xterm_353">Patch #353 - 1581 2020/02/01</a></h1> 1582 1583 <ul> 1584 <li>amend change in <a href="#xterm_352">patch #352</a> for 1585 button-events to fix a case where some followup events were not 1586 processed soon enough (report/patch by Jimmy Aguilar 1587 Mena).</li> 1588 1589 <li>handle <em>MappingNotify</em> X event, to improve recovery 1590 when switching keyboard configurations using 1591 <code>xkbcomp</code> (prompted by discussion with Frank Mosch, 1592 Debian #661295). There is more work needed here, possibly in 1593 the X libraries.</li> 1594 1595 <li>improve discussion of mouse-mode in <code>ctlseqs.ms</code> 1596 (suggested by Igor van den Hoven).</li> 1597 1598 <li>further improve checks for Xft <em>max-advance-width</em> 1599 to take into account fonts which use two cells for ambiguous 1600 width characters. Also improve the time used for these checks 1601 (reports by Yuri Pankov, Frank Mosch).</li> 1602 1603 <li>fix a few spelling errors reported by codespell (report by 1604 Jens Schleusener).</li> 1605 1606 <li>modify <code>run-tic.sh</code> to prefer development 1607 version of ncurses since changes to terminfo file in <a href= 1608 "#xterm_345">patch #345</a> rely upon bug-fixes in ncurses 1609 (prompted by discussion with Will Senn).</li> 1610 </ul> 1611 1612 <h1><a name="xterm_352" id="xterm_352">Patch #352 - 1613 2020/01/16</a></h1> 1614 1615 <ul> 1616 <li>adjust fontsize data to handle a minor inconsistency from 1617 recent Xft versions (Debian #880407, adapted from patch by 1618 Vincent Lefèvre).</li> 1619 1620 <li>add a table to the manual page description of 1621 <code>forceBoxChars</code> to alert the reader to the special 1622 characters aside from “line-drawing” which are 1623 drawn directly when this resource is set (Debian #931305).</li> 1624 1625 <li>improve <code>checkXft</code> logic which attempts to 1626 detect fonts whose <em>max-advance-width</em> is inconsistent 1627 with the actual glyph widths. For some fonts, it is necessary 1628 to check additional characters (report/analysis by Jan 1629 Engelhardt).</li> 1630 1631 <li>improve configure-checks for X headers and libraries on 1632 recent MacOS, which has moved those files under 1633 <code>/usr/X11</code>.</li> 1634 1635 <li>improve portability of iconify/deiconify feature by taking 1636 into account some window managers which manipulate the EWMH 1637 <code>_NET_WM_STATE</code> property, adding/removing 1638 <code>_NET_WM_STATE_HIDDEN</code> rather than actually 1639 <em>minimizing</em> the window (prompted by discussion with 1640 Jörg Breitbart).</li> 1641 1642 <li>improve workaround from <a href="#xterm_287">patch #287</a> 1643 for the <code>-iconic</code> option when configured with 1644 toolbar by postponing the extra request for minimizing the 1645 window to the end of menu-initialization.</li> 1646 1647 <li>modify <code>xevents</code> special-case for mouse-events 1648 to include button-events so that the meta key by itself can 1649 generate button-events (report/analysis by Mattias 1650 Engdegård).</li> 1651 1652 <li>amend SGR-stack change from <a href="#xterm_348">patch 1653 #348</a> to not associate bold attribute with background color 1654 (report by Nicholas Marriott).</li> 1655 1656 <li>fix copy/paste error in manual page (patch by Larry 1657 Hynes).</li> 1658 1659 <li>add definitions in <code>xterm_io.h</code> so that GNU/Hurd 1660 will use <code>posix_openpty</code> (patch by Samuel 1661 Thibault).</li> 1662 1663 <li>build-fix in debug-tracing, for <code>esctest</code>.</li> 1664 1665 <li>updated autoconf macros</li> 1666 1667 <li>update config.guess</li> 1668 </ul> 1669 1670 <h1><a name="xterm_351" id="xterm_351">Patch #351 - 1671 2019/11/17</a></h1> 1672 1673 <ul> 1674 <li>correct logic in <code>property_to_string</code> for 1675 deciding when to fallback from UTF-8 decoding to ISO-8859-1 1676 decoding, broken in <a href="#xterm_350">xterm #350</a> 1677 (FreeBSD #241961).</li> 1678 1679 <li>add <code>-report-icons</code> to help-message.</li> 1680 1681 <li>improved autoconf macros: 1682 <ul> 1683 <li><code>CF_ADD_LIBS</code>: the change to filter out 1684 duplicates caused this to append rather than prepend. 1685 revise to fix that.</li> 1686 1687 <li><code>CF_GCC_VERSION</code> and 1688 <code>CF_GCC_WARNINGS</code>: move checks to distinguish 1689 icc/clang from gcc from the macro which handles the 1690 --enable-warnings option, to make this work 1691 without-warnings for the inline-checks.</li> 1692 </ul> 1693 </li> 1694 1695 <li>update config.guess, config.sub</li> 1696 1697 <li>correct status in <code>XTGETXRES</code> replies when the 1698 resource was not found.</li> 1699 1700 <li>fix some gcc, cppcheck, clang and coverity warnings.</li> 1701 1702 <li>guard call to <code>RequestResize</code> from the 1703 struct-notify event handler to prevent recursion in the 1704 Xft+buffered workaround in some cases when doing manual 1705 resizing rather than resizing via escape sequences (reports by 1706 Stefan Assmann, Mike Thornburg).</li> 1707 1708 <li>amend the workaround for Xft+buffered blanking by moving 1709 the switch to bitmap-fonts to account for differences in font 1710 metrics between bitmap- and TrueType-fonts (report by Stefan 1711 Assmann).</li> 1712 1713 <li>improve the note on the <code>xterm-rep</code> terminfo 1714 entry (prompted by discussion with Sven Joachim).</li> 1715 </ul> 1716 1717 <h1><a name="xterm_350" id="xterm_350">Patch #350 - 1718 2019/11/02</a></h1> 1719 1720 <ul> 1721 <li>modify html/svg dump to not ignore zero'd/blank cells.</li> 1722 1723 <li>align terminfo file with ncurses, e.g., add 1724 <code>xterm+osc104</code> block.</li> 1725 1726 <li>improve discussion of <code>modifyOtherKeys</code> in 1727 manual page and in <code>ctlseqs.ms</code>.</li> 1728 1729 <li>add <code>vttests/modify-keys.pl</code> script to 1730 illustrate the <code>modifyOtherKeys</code> resource (prompted 1731 by discussion with Bram Moolenaar).</li> 1732 1733 <li>various improvements to <code>ctlseqs.ms</code>, as part of 1734 autogenerating links for the website.</li> 1735 1736 <li>update manual page default for <code>saveLines</code> 1737 resource default value (Branden Robinson, Debian #913815).</li> 1738 1739 <li>add command-line option <code>-report-xres</code> to show 1740 the values of the VT100 widget X resources when initialization 1741 is complete.</li> 1742 1743 <li>add a control sequence which, like tcap-query, allows an 1744 application to inspect most X resource settings of the VT100 1745 widget.</li> 1746 1747 <li>adjust some optional features to enable them in the imake 1748 configuration as they would be by default via the configure 1749 script.</li> 1750 1751 <li>add null-pointer checks to improve error recovery when 1752 bitmap fonts are missing or corrupt (report by Jonne 1753 Ransijn).</li> 1754 1755 <li>correct the condition for deleting the EWMH window-title 1756 property, i.e., if UTF-8 titles are disabled, rather than if an 1757 update to the EWHM property found no change (report by Sven 1758 Joachim).</li> 1759 1760 <li>build-fix for the case when configure 1761 <code>--enable-trace</code> is used without 1762 <code>--enable-warnings</code> (report by Sven Joachim).</li> 1763 1764 <li>fix a few minor bugs found with Coverity.</li> 1765 1766 <li>add a check in <code>property_to_string</code> to avoid 1767 translating <code>UTF8_STRING</code> or 1768 <code>COMPOUND_TEXT</code> into Latin-1 when UTF-8 encoding is 1769 active, e.g., when pushing onto the title-stack while switching 1770 to the alternate screen.</li> 1771 1772 <li>build-fix for the <code>--disable-doublechars</code> 1773 configure option (report by Brian Lindholm).</li> 1774 </ul> 1775 1776 <h1><a name="xterm_349" id="xterm_349">Patch #349 - 1777 2019/09/22</a></h1> 1778 1779 <ul> 1780 <li>add graphic context to support bold+italics (patch by Quinn 1781 Strahl).</li> 1782 1783 <li>document window properties in the manual page.</li> 1784 1785 <li>improve title-string feature: 1786 <ul> 1787 <li>if any of <code>allowC1Printable</code>, 1788 <code>utf8Title</code> or <code>titleModes</code> hint that 1789 an application might send a title-string encoded in UTF-8, 1790 check if that is the case, and if it is recodable into 1791 ISO-8859-1, use that for the ICCCM-style title.</li> 1792 1793 <li>check if the title given by a control sequence happens 1794 to be already encoded in UTF-8, to avoid double-encoding 1795 (FreeBSD #240393).</li> 1796 1797 <li>Make <code>sameName</code> resource work for the EWMH 1798 titles.</li> 1799 1800 <li>Modify menu-state of <code>utf8Title</code> to be 1801 consistent with the <code>utf8</code> source, i.e., setting 1802 the EWMH properties automatically when UTF-8 is 1803 active.</li> 1804 </ul> 1805 </li> 1806 1807 <li>reorganize text-drawing to make it possible to investigate 1808 using Xft to implement VT100-style double-sized characters. 1809 While doing this, made a workaround for apparent Xft bug which 1810 loses its drawable state when switching from 132 to 80 1811 columns.</li> 1812 1813 <li>improve font-warning messages by showing which are 1814 <em>derived</em> rather than directly from resource settings 1815 (suggested by Tomas Korbar). Also filter repeated font-warning 1816 messages, to accommodate broken X configurations.</li> 1817 1818 <li>fix an inconsistency between failure to load derived wide 1819 font versus failure to load derived wide-bold font (Redhat 1820 #1679790). That relies upon the “:unscaled” 1821 property which is broken in some distributions (however, recent 1822 Debian and the BSDs such as MacOS work).</li> 1823 1824 <li>updated autoconf-252 to check X11R7 include/lib directories 1825 found on some older configurations.</li> 1826 1827 <li>set a graphic-context for border when double-buffering is 1828 active; to prevent the border color from changing when 1829 switching to reverse-video.</li> 1830 1831 <li>build-fix for <code>--disable-ziconbeep</code>, which 1832 conflicted with the new double-buffer configuration (report by 1833 Brian Lindholm).</li> 1834 1835 <li>fix loop-limit for lookup of <code>fullscreen</code> 1836 resource broken in <a href="#xterm_347">xterm #347</a> (report 1837 by Scott Bertilson).</li> 1838 </ul> 1839 1840 <h1><a name="xterm_348" id="xterm_348">Patch #348 - 1841 2019/07/22</a></h1> 1842 1843 <ul> 1844 <li>update window-manager hints when exiting Tek4014 mode 1845 (Debian #932569, patch by Jonathan Irwin).</li> 1846 1847 <li>fix a misformatted printf in 1848 <code>report-sgr.pl</code>.</li> 1849 1850 <li>add configure check for termios types, to improve 1851 compiler-warnings.</li> 1852 1853 <li>ensure that when resetting margins, to also reset 1854 <code>DECLRMM</code>. This affects <code>DECCOLM</code>, 1855 <code>DECALN</code> (although DEC STD 070 mentions only 1856 top/bottom margins), and <code>DECSTR</code>.</li> 1857 1858 <li>corrected order of reset/move when setting 1859 <code>DECCOLM</code>, and make it more consistent by always 1860 resetting margins, rather than only when the mode is changed 1861 (report by James Holderness).</li> 1862 1863 <li>compile-in double-buffer support by default, changing the 1864 configure option to set the default resource value for 1865 <code>buffered</code> to true or false.</li> 1866 1867 <li>take in account the reverse-video state when computing the 1868 filler-color used when clearing the screen in double-buffering 1869 configuration.</li> 1870 1871 <li>correct logic for filtering scrollbar-updates when 1872 <code>buffered</code> resource is compiled-in but not enabled 1873 (report by Paul Lampert).</li> 1874 1875 <li>improve state saved/restored for cursor-save and SGR stack 1876 features.</li> 1877 1878 <li>improve description of 1006 and 1005 mouse modes, to avoid 1879 implying that they use character-parameters (report by Bryan 1880 Christ).</li> 1881 1882 <li>explain in <code>ctlseqs.ms</code> that some of the numeric 1883 keypad keys were xterm extensions rather than VT100/VT220 1884 terminal features (prompted by discussion with Thomas 1885 Wolff).</li> 1886 1887 <li>explain in <code>ctlseqs.ms</code> how the DEC windowing 1888 extension is supported by xterm.</li> 1889 1890 <li>add 28 rectangular editing to the primary response 1891 (suggested by Thomas Wolff).</li> 1892 1893 <li>fix a typo, improve wording in <code>ctlseqs.ms</code> 1894 (Thomas Wolff).</li> 1895 1896 <li>fix internal column-parameter when <code>SL</code> or 1897 <code>SR</code> is used with left/right margins (patch by 1898 Thomas Wolff).</li> 1899 1900 <li>fix off-by-one in VT52 graphics character mapping (patch by 1901 Thomas Wolff).</li> 1902 1903 <li>use <code>_X_UNUSED</code>, etc., when available as a 1904 fallback for <code>GCC_UNUSED</code>, etc., to reduce compiler 1905 warnings when building with <code><em>imake</em></code>.</li> 1906 1907 <li>update config.sub</li> 1908 </ul> 1909 1910 <h1><a name="xterm_347" id="xterm_347">Patch #347 - 1911 2019/06/30</a></h1> 1912 1913 <ul> 1914 <li>fix a few minor bugs found with Coverity.</li> 1915 1916 <li>improve double-buffering for scrollbars combined with 1917 scrolled text; add <code>bufferedFPS</code> resource to control 1918 the maximum rate of screen updates (report by Mike 1919 Thornburg).</li> 1920 1921 <li>improve fixes for <code>DECCRA</code> handling of 1922 double-width characters (patch by Martin Hostettler).</li> 1923 1924 <li>improve discussion of ECMA-48's typographical error for 1925 <code>SD</code> in <code>ctlseqs.ms</code> (prompted by report 1926 by Martin Hostettler).</li> 1927 1928 <li>correct off-by-one in parameter limit-check for 1929 <code>DECCRA</code> (report by Martin Hostettler).</li> 1930 1931 <li>modify <code>saveCellData</code> to handle case where 1932 double-width character is partially copied; that should be 1933 blanked (report/testcase by Thomas Wolff).</li> 1934 1935 <li>add resource <code>buffered</code> to allow 1936 enabling/disabling double-buffered mode.</li> 1937 1938 <li>two fixes for the double-buffer configuration, prompted by 1939 MacPorts' switch to double-buffering (patch by Mike Thornburg, 1940 MacPorts #58313): 1941 <ul> 1942 <li>ensure that the needSwap flag is set after drawing 1943 TrueType text</li> 1944 1945 <li>corrected the drawable-parameter used for the 1946 bar-cursor</li> 1947 </ul> 1948 </li> 1949 1950 <li>modify <code>ScrnRefresh</code> to ignore a case where the 1951 left/right halves of a double-width character have been set to 1952 different video attributes. The attribute to use is in the 1953 left-half (report/testcase by Thomas Wolff).</li> 1954 1955 <li>correct a limit-check for <code>DECCRA</code> in case the 1956 target lies off-screen (report/testcase by Thomas Wolff).</li> 1957 1958 <li>documentation errata (report by Thomas Wolff).</li> 1959 1960 <li>reset flags including wraparound and reverse-wrap when 1961 switching to VT52 mode, while noting that DEC's standard 1962 documentation leaves that behavior <em>undefined</em> (report 1963 by Thomas Wolff).</li> 1964 1965 <li>ensure that italic font is turned off on hard/soft resets 1966 (report by Martin Hostettler).</li> 1967 1968 <li>improve responsiveness to X events while processing HTML or 1969 SVG dumps (report by Martin Hostettler).</li> 1970 1971 <li>replace logic in <code>wcwidth.c</code> for detecting 1972 double-width characters with binary-search table generated 1973 using updated <code>uniset</code> (report by Robert Ross).</li> 1974 1975 <li>add test-driver for <code>wcwidth.c</code> to simplify 1976 comparison with system's <code>wcwidth</code>.</li> 1977 1978 <li>ensure that window-manager name comparisons work when 1979 active-icon is enabled, since <code><em>CSI</em>13t</code> uses 1980 the window-manager name (report by Glenn Golden, Arch 1981 #62818).</li> 1982 1983 <li>trim a stray “experimental” in one of the 1984 comments about the tcap-query feature, which has been a 1985 supported feature since 2008 (see <a href="#xterm_238">patch 1986 #238</a>).</li> 1987 </ul> 1988 1989 <h1><a name="xterm_346" id="xterm_346">Patch #346 - 1990 2019/05/27</a></h1> 1991 1992 <ul> 1993 <li>update description of the “default” setting for 1994 the <code>renderFont</code> resource to match the behavior in 1995 <a href="#xterm_261">patch #261</a> (Debian #862042).</li> 1996 1997 <li>account for <code>internalBorder</code> in 1998 <code>useBorderClipping</code> (report by Robert Ross).</li> 1999 2000 <li>update table of unknown-width characters in wcwidth.c based 2001 on Unicode 12.1.0 (prompted by discussion with Robert 2002 Ross).</li> 2003 2004 <li>improve description of DECSCL versus S7C1T and S8C1T in 2005 <code>ctlseqs.ms</code>.</li> 2006 2007 <li>improve consistency between <code><em>CSI</em>3t</code> and 2008 <code><em>CSI</em>13t</code>, accounting for differences 2009 between some window managers' handling of EMWH extents (report 2010 by Bram Moolenaar).</li> 2011 2012 <li>fix a sign-extension when reporting offscreen window 2013 position (report by Bram Moolenaar).</li> 2014 </ul> 2015 2016 <h1><a name="xterm_345" id="xterm_345">Patch #345 - 2017 2019/05/14</a></h1> 2018 2019 <ul> 2020 <li>updated FreeBSD test-package from recent /usr/ports 2021 scripts.</li> 2022 2023 <li>workaround in <code>run-tic.sh</code> for HPUX, whose 2024 <code>mktemp</code> prints the name of a temporary directory 2025 without creating it.</li> 2026 2027 <li>add left/right margin capabilities to terminfo, since the 2028 default terminal emulation is VT420 (suggested by Thomas 2029 Wolff).</li> 2030 2031 <li>modify treatment of <code>reverseVideo</code> for dynamic 2032 colors to make text foreground/background consistent with the 2033 cursor color (prompted by discussion with Ben Wong, lsix 2034 #20).</li> 2035 2036 <li>modify button-handling to make SGR button-release distinct 2037 from button-press for button-codes starting with 8 (patch by 2038 Mikulas Patocka).</li> 2039 2040 <li>add aliases for the sgr push/pop controls to work around 2041 language limitations of C# (request by Dan Thompson).</li> 2042 2043 <li>correct a typo in <code>setDirectFG</code>, which could 2044 cause setting of indexed-color after a direct-color to be 2045 ignored.</li> 2046 2047 <li>add resource <code>useBorderClipping</code> as an 2048 alternative to <code>useClipping</code> (request by Robert 2049 Ross).</li> 2050 2051 <li>improve logic for displaying xterm's built-in line-drawing 2052 characters vs missing glyphs, e.g., for U+2409 to U+240D (patch 2053 by Robert Ross).</li> 2054 2055 <li>add <code>vttests/sgrPushPop2.pl</code> to illustrate how 2056 selective pushes work, as well as to demonstrate push/pop of 2057 the various color types supported by xterm.</li> 2058 2059 <li>fix a special case in <code>XTPOPSGR</code> where 2060 direct-colors were not checked as a dependency of 2061 indexed-colors, contrary to documentation.</li> 2062 2063 <li>reduce buffer-flushes for <code>OSC 4</code> and 2064 <code>OSC 5</code> color-queries, as well as in the 2065 queries for dynamic colors.<br> 2066 <strong>Note:</strong> this change makes the reply for 2067 <code>OSC 5</code> use the “5” in the 2068 response; formerly it was mapped to ”4” after 2069 adding the maximum number of colors.</li> 2070 2071 <li>modify <code>vttests/query-color.pl</code> to demonstrate 2072 multiple queries in one request.</li> 2073 2074 <li>update tables of combining and unknown-width characters in 2075 wcwidth.c based on Unicode 12.0.0.</li> 2076 2077 <li>modify response for <code>OSC 5</code> to be 2078 consistent with documentation.</li> 2079 2080 <li>add <code>vttests/query-dynamic.pl</code></li> 2081 2082 <li>modify <code>vttests/query-color.pl</code> to accept bold, 2083 underline, etc., keywords to decide whether to use 2084 <code>OSC 5</code> rather than 2085 <code>OSC 4</code>.</li> 2086 2087 <li>modify cursor coloring to avoid a case where the cursor 2088 matched the foreground color while the text was displayed in 2089 reverse-video (report by Nuno Silva).</li> 2090 2091 <li>fix an inconsistency in X10 mouse responses from <a href= 2092 "#xterm_342">patch #342</a> changes; the legacy protocol 2093 supports only buttons 1-3.</li> 2094 2095 <li>reduce the number of buffer-flushes for tcap-query 2096 batches.</li> 2097 2098 <li>modify <code>tcapquery.pl</code> to demonstrate batch 2099 queries with <code>-q</code> option.</li> 2100 2101 <li>increase response-buffer size, and make it configurable as 2102 <code>limitResponse</code> (prompted by discussion with Stephen 2103 P Wall).</li> 2104 2105 <li>modified configure script: 2106 <ul> 2107 <li>check/workaround for non-POSIX manipulation of 2108 predefined symbols</li> 2109 2110 <li>check for updated X Toolkit, which uses 2111 <code>const</code>.</li> 2112 </ul> 2113 </li> 2114 2115 <li>update config.guess, config.sub</li> 2116 2117 <li>provide for secondary-selection, overlooked in <a href= 2118 "#xterm_338">patch #338</a> (report by Emile LeBlanc).</li> 2119 2120 <li>documentation errata (patch by Larry Hynes).</li> 2121 2122 <li>improve pointer-checks in <code>Tekproc.c</code></li> 2123 2124 <li>revise solution for Debian #919475, to allow for 2125 struct-notify events occurring as a side-effect of toggling 2126 to/from full-screen mode.</li> 2127 2128 <li>window's border-size was incorrectly added to position when 2129 maximizing window (report by Gary Langshaw).</li> 2130 </ul> 2131 2132 <h1><a name="xterm_344" id="xterm_344">Patch #344 - 2133 2019/02/12</a></h1> 2134 2135 <ul> 2136 <li>add ASCII escape to default for 2137 <code>disallowedPasteControls</code> (prompted by discussion 2138 with Martin Hostettler).</li> 2139 2140 <li>fix typo in <code>ctlseqs.ms</code> (Robert Ross).</li> 2141 2142 <li>implement DEC Cyrillic NRCS (based on screenshots of vttest 2143 provided by Markus Schmidt).</li> 2144 2145 <li>correct control returning sixel geometry maximum versus 2146 actual size (patch by Ben Wong).</li> 2147 2148 <li>improve manual page for <code>resize</code> to clarify that 2149 <code>resize</code> does not execute the shell commands which 2150 it generates for setting environment variables.</li> 2151 2152 <li>improve memory-management for parser, to handle response 2153 strings that might occur with <code>ENQ</code> or when 2154 <code>SRM</code> mode is active (patch by Martin 2155 Hostettler).</li> 2156 2157 <li>change <code>Comment</code> text in uxterm's desktop file 2158 to work around a limitation of GNOME's GIO application 2159 (<a href="https://gitlab.gnome.org/GNOME/gnome-shell/issues/940#note_427334">issue 2160 #940</a>). The <a href= 2161 "https://developer.gnome.org/gio/stable/gio-Desktop-file-based-GAppInfo.html#g-desktop-app-info-search"> 2162 documentation</a> reads: 2163 <blockquote> 2164 <p>Searches desktop files for ones that match 2165 <em><code>search_string</code></em>.</p> 2166 2167 <p>The return value is an array of <em>strv</em>s. Each 2168 <em>strv</em> contains a list of applications that matched 2169 search_string with an equal score. The outer list is sorted 2170 by score so that the first <em>strv</em> contains the 2171 best-matching applications, and so on. The algorithm for 2172 determining matches is undefined and may change at any 2173 time.</p> 2174 </blockquote> 2175 </li> 2176 2177 <li>a check of <code>zIconBeep</code> resource was removed in 2178 double-buffer fix in <a href="#xterm_334">patch #334</a>. That 2179 is used to decide whether to handle struct-notify events. When 2180 xterm does handle the events, it may negotiate a new 2181 window-size with the window manager. In that case, the 2182 <code>limitResize</code> resource setting limited the new 2183 window-size to the screen-size. Amended that by eliminating the 2184 limit for this special case when double-buffer is configured, 2185 and restoring the check for <code>zIconBeep</code> when 2186 double-buffer is not configured (Debian #919475).</li> 2187 2188 <li>disallow recursion which could happen if a user configures 2189 the <code>answerbackString</code> resource with the 2190 <code>ENQ</code> code and experiments with that code when 2191 <code>SRM</code> is enabled (report by by Martin 2192 Hostettler).</li> 2193 2194 <li>add remaining credits in <code>COPYING</code> file.</li> 2195 2196 <li>modify <code>run-tic.sh</code> to check if it is using an 2197 older version of ncurses which does not support large terminal 2198 descriptions, and if so, remove a non-essential feature to keep 2199 within the 4096-byte legacy limit.</li> 2200 </ul> 2201 2202 <h1><a name="xterm_343" id="xterm_343">Patch #343 - 2203 2019/01/13</a></h1> 2204 2205 <ul> 2206 <li>modify <code>run-tic.sh</code> to prefer ncurses6 over 2207 ncurses5, when available.</li> 2208 2209 <li>add <code>COPYING</code> file, and dummy "check" makefile 2210 rule for testing Arch packages.</li> 2211 2212 <li>add/update package scripts for FreeBSD and NetBSD, for 2213 testing.</li> 2214 2215 <li>update tables of combining and ambiguous-width characters 2216 in wcwidth.c based on Unicode 11.0.0.</li> 2217 2218 <li>modify <code>xterm-new</code> sample terminfo entry to 2219 correspond to ncurses 6.1, using the SGR 1006 mouse 2220 protocol.</li> 2221 2222 <li>improve manual page discussion of selection ownership 2223 versus highlighting (prompted by discussion with Martin 2224 Hostettler).</li> 2225 2226 <li>restore/repair <code>keepClipboard</code> feature which was 2227 broken by changes in <a href="#xterm_338">patch #338</a> 2228 (report by Martin Hostettler).</li> 2229 2230 <li>improve documentation for <code>deleteIsDEL</code> 2231 resource.</li> 2232 2233 <li>modify DECRQM response for private mode 1037 to account for 2234 cases where the resource <code>deleteIsDEL</code> is initially 2235 neither true nor false, but dependent upon the keyboard type 2236 (report/analysis by Martin Hostettler).</li> 2237 2238 <li>clear pointers for pattern/fontset after destroying their 2239 data when switching facename with an escape sequence (report by 2240 Robert Ross).</li> 2241 2242 <li>modify logic for TrueType fallback fonts to match the 2243 sort-order used by <code>fc-match</code> (report by Robert 2244 Ross).</li> 2245 2246 <li>add resource setting <code>limitFontsets</code> which can 2247 be used to limit or disable the new TrueType fontset feature 2248 (request by Robert Ross).</li> 2249 </ul> 2250 2251 <h1><a name="xterm_342" id="xterm_342">Patch #342 - 2252 2019/01/03</a></h1> 2253 2254 <ul> 2255 <li>limit mouse-button events to 11 buttons in the original 2256 protocol, and 15 in the extended mouse-protocol (patch by 2257 Martin Hostettler).</li> 2258 2259 <li>correct calculation for buttons past 11 in 2260 <code>mouse-codes</code> sample script (patch by Martin 2261 Hostettler).</li> 2262 2263 <li>disable a supplementary check added in <a href= 2264 "#xterm_341">patch #341</a> which interferes with using 2265 fontconfig to select different-sized bitmap fonts (Arch 2266 #61237).</li> 2267 </ul> 2268 2269 <h1><a name="xterm_341" id="xterm_341">Patch #341 - 2270 2018/12/24</a></h1> 2271 2272 <ul> 2273 <li>add options to <code>mouse-codes</code> script to 2274 demonstrate that the encoding used for mouse events limits 2275 button numbers to 11.</li> 2276 2277 <li>allow mouse button numbers up to 11 using an offset of 128 2278 for button numbers 8-11 rather than the offset of 64 used for 2279 wheel-mouse, etc., buttons 4-7 in <a href="#xterm_338">patch 2280 #338</a> (adapted from patch by Martin Hostettler).</li> 2281 2282 <li>correct off-by-one right-margin checks for double-width 2283 character adjustments in DECERA/DECFRA (patch by Martin 2284 Hostettler).</li> 2285 2286 <li>allocated size of selection buffer was not reset when 2287 freeing the buffer in <a href="#xterm_338">patch #338</a> 2288 (report/analysis by Stefan Assmann).</li> 2289 2290 <li>modify the initial pattern passed to fontconfig to disallow 2291 color bitmap fonts.</li> 2292 2293 <li>improve error recovery for a case where fontconfig ignores 2294 the requested pattern due to override in the user's font 2295 configuration (report/testcase by Stefan Assmann).</li> 2296 </ul> 2297 2298 <h1><a name="xterm_340" id="xterm_340">Patch #340 - 2299 2018/12/16</a></h1> 2300 2301 <ul> 2302 <li>suppress a spurious warning about fontsets when 2303 initializing menus for the toolbar configuration.</li> 2304 2305 <li>fix some strict compiler warnings.</li> 2306 2307 <li>improve checks for TrueType font, to help with the case of 2308 color bitmap fonts, which fontconfig misrepresents (Arch Linux 2309 #58706).</li> 2310 </ul> 2311 2312 <h1><a name="xterm_339" id="xterm_339">Patch #339 - 2313 2018/12/12</a></h1> 2314 2315 <ul> 2316 <li>modify <code>CF_GNU_SOURCE</code> macro to treat 2317 <em>newlib</em> as similar to <em>glibc</em>, fixing a problem 2318 with the configure checks for pseudoterminals in Cygwin 2319 overlooked in <a href="#xterm_334">patch #334</a> updates for 2320 configure-macros.</li> 2321 </ul> 2322 2323 <h1><a name="xterm_338" id="xterm_338">Patch #338 - 2324 2018/12/09</a></h1> 2325 2326 <ul> 2327 <li>ignore <code>$TERMINFO</code> in the configure script if it 2328 is set to a non-directory value.</li> 2329 2330 <li>updated configure macros: 2331 <ul> 2332 <li><code>CF_WITH_PCRE2</code>, modified to work with 2333 Debian's (mis-numbered) pcre3 package.</li> 2334 2335 <li><code>CF_CC_ENV_FLAGS</code> , report preprocessor 2336 options in <code>CFLAGS</code></li> 2337 2338 <li><code>CF_LD_RPATH_OPT</code> , suppress check if 2339 <code>--disable-rpath</code> option was given.</li> 2340 2341 <li><code>CF_XOPEN_SOURCE</code>, add case for 2342 midnightbsd</li> 2343 </ul> 2344 </li> 2345 2346 <li>update config.guess, config.sub</li> 2347 2348 <li>add a check to ensure that the filename parameter passed to 2349 <code>XpmReadFileToPixmap</code> is actually a file, since that 2350 function does not check (report by Ben Nott).</li> 2351 2352 <li>amend solution for Debian #758633 to ensure that replies 2353 for bracketed paste are not sent while processing a selection 2354 for <code>exec-formatted</code> (Debian #913237).</li> 2355 2356 <li>improve adjustments/clearing for double-width characters in 2357 <code>DECERA</code>, <code>DECFRA</code>, 2358 <code>DECSERA</code>.</li> 2359 2360 <li>improve adjustments/clearing for double-width characters 2361 when doing vertical scrolling within left/right margins (patch 2362 by Martin Hostettler).</li> 2363 2364 <li>modify wcwidth to encode a few spacing combining marks as 2365 regular combining characters.</li> 2366 2367 <li>change compiled-in default for <code>saveLines</code> to 2368 match the resource-file changed in <a href="#xterm_192">patch 2369 #192</a> (Debian #913815).</li> 2370 2371 <li>change default <code>faceSize</code> to 8.0, to simplify 2372 switching back/forth between bitmap fonts and TrueType. This 2373 was originally (mis)set to 14.0 in <a href="#xterm_148">patch 2374 #148</a>.</li> 2375 2376 <li>add fallback support in Xft configuration for missing 2377 glyphs (prompted by discussion with Mike Burns).</li> 2378 2379 <li>fix a problem with using direct-colors for the background 2380 color when clearing/scrolling (report by Nicholas 2381 Marriott).</li> 2382 2383 <li>add a "sources" rule for the makefile's generated 2384 source.</li> 2385 2386 <li>add a short explanation in <code>ctlseqs.ms</code> 2387 discussing the differences in error-recovery for malformed 2388 sequences versus unimplemented features, and amend one case for 2389 consistency (prompted by discussion with Martin 2390 Hostettler).</li> 2391 2392 <li>adjusted ifdef's so that the paste64 configure option does 2393 not automatically enable the readline-mouse configure 2394 option.</li> 2395 2396 <li>revert the change which prevented concurrent ownership of 2397 different selection targets, and instead modify selection 2398 storage so that different concurrent requests for different 2399 selection targets will be stored/retrieved independently 2400 (Debian #901249).</li> 2401 2402 <li>remove a check which prevented returning button-codes past 2403 the documented 4/5 for wheel mouse, and add a script 2404 <code>mouse-codes</code> which makes a report showing the 2405 various mouse codes for different button/modifier combinations 2406 (discussion with Přemysl Janouch).</li> 2407 2408 <li>improve display and checksum for DEC Special Graphics by 2409 mapping 0x5f to 0.</li> 2410 2411 <li>add a null-pointer check for table-ending in the 2412 extended-boolean resource-handling (report by Felix von 2413 Leitner).</li> 2414 2415 <li>remove stray <code>]</code>'s from INSTALL-file (Larry 2416 Hynes).</li> 2417 </ul> 2418 2419 <h1><a name="xterm_337" id="xterm_337">Patch #337 - 2420 2018/09/21</a></h1> 2421 2422 <ul> 2423 <li>regenerated configure script (report by Sven Joachim).</li> 2424 2425 <li>revise/improve fix for scrolling in margins 2426 (report/analysis by Martin Hostettler):</li> 2427 2428 <li>amend change to default-translations "select" subset to 2429 ensure that specific key-press actions are listed before 2430 generic key-press actions (reports by H Merijn Brand, Sven 2431 Joachim).</li> 2432 </ul> 2433 2434 <h1><a name="xterm_336" id="xterm_336">Patch #336 - 2435 2018/09/19</a></h1> 2436 2437 <ul> 2438 <li>ensure that only one of PRIMARY and CLIPBOARD is owned by 2439 xterm at a given time (Debian #901249).</li> 2440 2441 <li>documentation fixes (report by Lars Krueger): 2442 <ul> 2443 <li>document <code>SL</code> and <code>SR</code>.</li> 2444 2445 <li>document <code>DECRPTUI</code>, change number of digits 2446 to match VT420.</li> 2447 </ul> 2448 </li> 2449 2450 <li>revise <code>omitTranslation</code> resource, e.g., 2451 splitting “default” into several more useful 2452 categories.</li> 2453 2454 <li>modify mask-logic to permit <em>control-</em> and 2455 <em>meta-</em> modifiers to be used in mouse protocol.</li> 2456 2457 <li>several fixes for parsing/state (report/testcases by Martin 2458 Hostettler): 2459 <ul> 2460 <li>remove an old/unimplemented entry for xterm-title from 2461 state table.</li> 2462 2463 <li>save/restore wrap-flag when scrolling, to fix an 2464 inconsistency between jump-scrolling and 2465 normal-scrolling.</li> 2466 2467 <li>improve a special case of wrapping where the cursor 2468 starts beyond the right-margin, and wraps at the terminal's 2469 last-column before the settable-margins can take 2470 effect.</li> 2471 2472 <li>if origin mode is set, adjust a restored cursor column 2473 relative to the left margin.</li> 2474 2475 <li>when scrolling a line within left/right margins, 2476 correct order of the fixups needed when a double-width 2477 character crosses the margin boundary.</li> 2478 </ul> 2479 </li> 2480 2481 <li>review/fix a few cases where the parsing state was not 2482 reset after completing a control sequence (prompted by report 2483 by Martin Hostettler).</li> 2484 2485 <li>disallow <code>XTCHECKSUM</code> if the corresponding 2486 window-ops "SetChecksum" is unset.</li> 2487 2488 <li>add <code>print-vt-chars.pl</code> script to illustrate the 2489 NRCS and codepages supported by xterm.</li> 2490 2491 <li>add <code>other-sgr.sh</code> script to demonstrate the 2492 non-VT100 video attributes implemented in <a href= 2493 "#xterm_305">patch #305</a>, and added a summary of their 2494 introduction in ECMA-48 to the control sequences document.</li> 2495 2496 <li>add <code>tabs</code> and <code>-tabs</code> keywords to 2497 <code>ttyModes</code> resource to simplify workaround for 2498 terminal drivers which are not aware of UTF-8 (FreeBSD 2499 #229682).</li> 2500 2501 <li>add VT5xx NRCS 7-bit Turkish and DEC Turkish.</li> 2502 2503 <li>add VT5xx NRCS 7-bit Hebrew and DEC Hebrew.</li> 2504 2505 <li>add VT5xx NRCS 7-bit Greek and DEC Greek.</li> 2506 2507 <li>correct a few post-VT220 codepages to make them display 2508 without setting the NRCS state.</li> 2509 2510 <li>extend <code>vt100Graphics</code> resource to include other 2511 character-sets such as the VT500 codepages in UTF-8 mode.</li> 2512 2513 <li>add some VT5xx codepages to help with the discussion of 2514 96-character sets: <em>ISO Greek Supplemental</em>, <em>ISO 2515 Hebrew Supplemental</em>, <em>ISO Latin–5 2516 Supplemental</em>, and <em>ISO Latin–Cyrillic</em>.</li> 2517 2518 <li>improve description of the VT300-controls for designating 2519 character sets, and fix a typo which indicated that some were 2520 used for 94-character sets (prompted by discussion with Lars 2521 Krueger).</li> 2522 2523 <li>add private control <code>XTCHECKSUM</code> for modifying 2524 <code>checksumExtension</code>.</li> 2525 2526 <li>factor out xterm's <code>DECRQCRA</code> checksum 2527 extensions as a resource setting 2528 <code>checksumExtension</code>.</li> 2529 2530 <li>revise calculation of checksum for <code>DECRQCRA</code> to 2531 match DEC's terminals (using screenshots of vttest provided by 2532 Markus Schmidt).</li> 2533 2534 <li>restore a fix for memory-checksum setup of 2535 <code>DECCKSR</code> from <a href="#xterm_315">patch #315</a> 2536 incorrectly reverted in <a href="#xterm_334">patch #334</a> as 2537 part of fix for <code>DECRQCRA</code>.</li> 2538 </ul> 2539 2540 <h1><a name="xterm_335" id="xterm_335">Patch #335 - 2541 2018/08/14</a></h1> 2542 2543 <ul> 2544 <li>add <code>colorInnerBorder</code> resource to make a change 2545 from <a href="#xterm_334">patch #334</a> configurable (reports 2546 by H Merijn Brand, Gabriele Balducci).</li> 2547 </ul> 2548 2549 <h1><a name="xterm_334" id="xterm_334">Patch #334 - 2550 2018/08/12</a></h1> 2551 2552 <ul> 2553 <li>modify <code>Imakefile</code> to reflect the fact that 2554 NetBSD no longer has a working termcap emulation.</li> 2555 2556 <li>add resource-setting <code>validShells</code> which can be 2557 used to augment the system's <code>/etc/shell</code> (prompted 2558 by discussion with Paul Lampert).</li> 2559 2560 <li>stifle some useless warnings from lintian in 2561 test-packages.</li> 2562 2563 <li>add the ncurses extension “RGB” to the 2564 responses for the termcap-query feature.</li> 2565 2566 <li>improved getopts-handling in sample scripts.</li> 2567 2568 <li>fix some warnings from gcc8 and clang --analyze.</li> 2569 2570 <li>update note about incorrect documentation for 2571 <code>DECRQSS</code> to include VT525 (report by Markus 2572 Schmidt).</li> 2573 2574 <li>correct check for default-values in rectangular parsing; a 2575 zero counts as a missing or default parameter (report/testcase 2576 by Markus Schmidt).</li> 2577 2578 <li>correct some ranges in the <code>ambiguous[]</code> table 2579 in wcwidth (adapted from patch by KUGA Tsutomu).</li> 2580 2581 <li>fix a special case with faint video attribute incorrectly 2582 combined with default color.</li> 2583 2584 <li>add private control <code>XTREPORTSGR</code> for reporting 2585 video-attributes and color on a rectangle, and script 2586 <code>report-sgr.pl</code> to demonstrate it.</li> 2587 2588 <li>modify some of the markup in <code>ctlseqs.ms</code> to 2589 work around groff's reassignment of ASCII punctuation 2590 characters as documented in <em>groff_char(7)</em>.</li> 2591 2592 <li>treat ECMA-48 SGR 6 the same as SGR 5.</li> 2593 2594 <li>add private controls <code>XTPUSHSGR</code> and 2595 <code>XTPOPSGR</code> for saving/restoring the current 2596 video-attributes on a stack (adapted from patch by Dan 2597 Thompson).</li> 2598 2599 <li>modify <code>DECRPM</code> response for logging enable to 2600 indicate its state even when enabling/disabling it is not 2601 allowed.</li> 2602 2603 <li>implement <code>DECSNLS</code></li> 2604 2605 <li>implement <code>DECRSPS</code></li> 2606 2607 <li>improve fill-color for double-buffer configuration, which 2608 was sharing a graphic context with the cursor.</li> 2609 2610 <li>fix a couple of cases where double-sized VT100 characters 2611 were not clipped, seen in Joe Smith's <a href= 2612 "http://www.inwap.com/pdp10/#Tymnet">VT100 torture 2613 test</a>.</li> 2614 2615 <li>color the inner border using the same 2616 <code>borderColor</code> as the outer border, rather than 2617 filling with the VT100's default background.</li> 2618 2619 <li>change encoding of “THANKS” to UTF-8.</li> 2620 2621 <li>modify handling of <code>DECELR</code> to recognize 2622 <code>MotionNotify</code> events again, amending a check for 2623 <code>allowMouseOps</code> which limited that to button-events 2624 in <a href="#xterm_328">patch #328</a> (Olaf Rogalsky).</li> 2625 2626 <li>fix some screen-painting problems with left/right margins 2627 when using insert-line or delete-line (report/testcase by 2628 Martin Hostettler). also fix similar case with 2629 index/reverse-index.</li> 2630 2631 <li>several minor performance improvements using macros, e.g., 2632 inline checks for character width.</li> 2633 2634 <li>add <code>DECSCPP</code> and <code>DECSLPP</code> to 2635 <code>DECRQSS</code>.</li> 2636 2637 <li>implement <code>DECSCPP</code>.</li> 2638 2639 <li>implement <code>DECCIR</code> and <code>DECTABSR</code> 2640 presentation reports.</li> 2641 2642 <li>modify checksum computation for <code>DECRQCRA</code> to 2643 treat uninitialized cells as blanks rather than nulls.</li> 2644 2645 <li>drop custom-entity from HTML-dump, use UTF-8 for &nbsp; 2646 (Debian #902381).</li> 2647 2648 <li>modify display of non-BMP characters when using bitmap 2649 fonts to show a null/empty box rather than the replacement 2650 character which was used in cleanup changes for <a href= 2651 "#xterm_233">patch #233</a> (report by Christian 2652 Weisgerber).</li> 2653 2654 <li>when setting up clipping rectangle for Xft, allow for the 2655 case where xterm is only displaying a combining character, 2656 where the base was already written (report by Joshua 2657 Crowgey).</li> 2658 2659 <li>allow reset Xft's state if switching font-sizes when 2660 double-buffering is used.</li> 2661 2662 <li>fix repainting, e.g., on resize, when double-buffering is 2663 used with Xft (patch by Daniel Colascione).</li> 2664 2665 <li>correct some interchanged pairs of symbols in 2666 <code>unicode/keysym.map</code> (Brad Town).</li> 2667 2668 <li>improve configure macros CF_GCC_WARNINGS, CF_GNU_SOURCE, 2669 CF_POSIX_C_SOURCE, CF_TRY_XOPEN_SOURCE, CF_XOPEN_SOURCE, 2670 CF_X_ATHENA_CPPFLAGS.</li> 2671 2672 <li>modify <code>logFile</code> resource to interpret 2673 “<code>-</code>” as the standard output (adapted 2674 patch by Colum Paget).</li> 2675 2676 <li>improve documentation of Tek4014 menu options; fix a case 2677 where the Tek4014 window was not displayed before switching 2678 modes.</li> 2679 2680 <li>re-correct parameter for <em>pid</em> used for DECCKSR, 2681 DECRQCSR (see <a href="#xterm_315">xterm #315</a>).</li> 2682 2683 <li>hard/soft reset now resets the cursor-blinking state that 2684 may have been set via escape sequences; the cursor-blinking 2685 menu-entry feature is unmodified (report by Matthieu 2686 Herrb).</li> 2687 2688 <li>update config.guess, config.sub</li> 2689 </ul> 2690 2691 <h1><a name="xterm_333" id="xterm_333">Patch #333 - 2692 2018/05/03</a></h1> 2693 2694 <ul> 2695 <li>ensure that i18n is enabled if input-method is 2696 enabled.</li> 2697 2698 <li>modify logic for pre-edit to update spot-location while the 2699 cursor is invisible (Kakoune #1940).</li> 2700 2701 <li>change default icon to newer one, "mini.xterm".</li> 2702 2703 <li>install a complete set of icons, to simplify post-install 2704 customization.</li> 2705 2706 <li>add resource <code>disallowedPasteControls</code> to extend 2707 filtering of control characters from pastes.</li> 2708 2709 <li>add <code>print-on-error</code> action-hook, and document 2710 action-hooks for dump-html, dump-svg.</li> 2711 2712 <li>provide action-hook for <code>print-immediate</code>, which 2713 was available only as a menu-item (report by Rastislav 2714 Barlik).</li> 2715 2716 <li>continue to improve notes in <code>ctlseqs.ms</code> which 2717 mention where various controls originated.</li> 2718 2719 <li>add case to accept ECMA-48's bogus <code>SD</code>, but 2720 document the issue in <code>ctlseqs.ms</code>.</li> 2721 2722 <li>add control sequence for loading XPM-icon file, using the 2723 analogous control sequence from shelltool/dtterm.</li> 2724 2725 <li>add <code>-report-icons</code> option, to report on 2726 XPM-icon and title-bar updates.</li> 2727 2728 <li>correct a discrepancy between locator-reports for VT220 vs 2729 VT330.</li> 2730 2731 <li>add window-ops control sequences to complement existing 2732 ones for reporting window-position and text-area size with 2733 reports for text-area position and window-size.</li> 2734 2735 <li>display vt52 graphics mode characters.</li> 2736 2737 <li>correct case-statement for window-ops 10, overlooked since 2738 some window managers equate vertical-maximize and 2739 horizontal-maximize window hints with full-screen 2740 maximize.</li> 2741 </ul> 2742 2743 <h1><a name="xterm_332" id="xterm_332">Patch #332 - 2744 2018/04/15</a></h1> 2745 2746 <ul> 2747 <li>add a <code>GetChecksum</code> item to 2748 <code>disallowedWindowOps</code></li> 2749 2750 <li>improve notes in <code>ctlseqs.ms</code> which mention 2751 where various controls originated.</li> 2752 2753 <li>add control sequences for querying the X display size and 2754 the character size, both in pixels to help eliminate some of 2755 the constants in <code>esctest</code>.</li> 2756 2757 <li>fixes prompted by review of George Nachman's 2758 <code>esctest</code> script: 2759 <ul> 2760 <li>add a null-pointer check and a limit-check in 2761 <code>xtermCheckRect</code>.</li> 2762 2763 <li>correct limit-check for right-margin when processing 2764 autowrapping if xterm is not built for 2765 wide-characters.</li> 2766 2767 <li>repair logic in <code>RIS</code> to reset 132-column 2768 mode when an escape sequence is used to enable 2769 80/132-column switching.</li> 2770 2771 <li>correct array-limit for EWMH working state.</li> 2772 2773 <li>further improve limit-checks versus assert's (see 2774 <a href="#xterm_315">patch #315</a>).</li> 2775 2776 <li>correct order of check-margins and move-to-left margin 2777 for <code>DL</code> and <code>IL</code>.</li> 2778 2779 <li>modify reverse-wrap to pay attention to top/bottom 2780 margins as it has done for left/right margins since 2781 <a href="#xterm_279">patch #279</a>.</li> 2782 2783 <li>modify behavior of <code>DECFI</code> and 2784 <code>DECBI</code> to not index the screen at the 2785 left/right edge of the display unless those happen to be 2786 the left/right margins.</li> 2787 2788 <li>add case for VT320 DSR response for keyboard 2789 status.</li> 2790 </ul> 2791 </li> 2792 2793 <li>improve check for valid shell path using 2794 <code>getusershell</code> and <code>endusershell</code> if 2795 available, in case <code>/etc/shells</code> does not exist 2796 (suggested by Rainer Orth).</li> 2797 2798 <li>modified configure checks for groff and man2html, to use 2799 the latter by default, but allowing mandoc as a partial 2800 replacement for former.</li> 2801 2802 <li>revisited the inconsistent copyright notices mentioned in 2803 <a href="#xterm_165">patch #165</a>, and eliminate the issue as 2804 mentioned in this <a href= 2805 "https://invisible-island.net/personal/copyrights.html">copyright 2806 discussion</a>.</li> 2807 2808 <li>fix typo in this change-log (report by Sven Joachim)</li> 2809 2810 <li>update config.guess, config.sub</li> 2811 </ul> 2812 2813 <h1><a name="xterm_331" id="xterm_331">Patch #331 - 2814 2017/12/30</a></h1> 2815 2816 <ul> 2817 <li>add workaround for improper grayscale adjustments made in 2818 FreeType library, exposed by changes to rounding in 2.8.1, 2819 which shows up as a gap in line-drawing characters (Debian 2820 #880407).</li> 2821 2822 <li>improve a special case where a non-Unicode font's 2823 line-drawing characters were not used, when specifying it via 2824 the <code>utf8Fonts</code> resource, e.g., 2825 <blockquote> 2826 <pre> 2827 -fs 15 \ 2828 -xrm '*VT100.font:12x24' \ 2829 -xrm '*VT100.boldFont:12x24' \ 2830 -xrm '*VT100.utf8Fonts.font: 12x24' \ 2831 -xrm '*VT100.utf8Fonts.boldFont: 12x24' \ 2832</pre> 2833 </blockquote> 2834 </li> 2835 2836 <li>replace constant 10msec delay for next X event with new 2837 resource <code>nextEventDelay</code>, and reduce that to 1msec 2838 to accommodate faster machines than used when 2839 <code>-hold</code> was implemented in <a href= 2840 "#xterm_116">1999</a> (Debian #877628).</li> 2841 2842 <li>add <code>scroll-to</code> action, which simplifies binding 2843 a key to scroll to the beginning or end of the saved-lines 2844 (Debian #880120).</li> 2845 2846 <li>add building blocks for alternate screen and/or title-stack 2847 features in the <code>terminfo</code> file.</li> 2848 2849 <li>improve calculations for cell-data size.</li> 2850 2851 <li>change configure script to enable XHTML/SVG screen dumps by 2852 default.</li> 2853 2854 <li>change configure script to enable 256-colors by 2855 default.</li> 2856 2857 <li>update config.guess, config.sub</li> 2858 2859 <li>change configure script option for 2860 <code>--with-man2html</code> to use improved script by 2861 default.</li> 2862 2863 <li>add case for private mode 1044 in DECRQM, to report the 2864 keepClipboard resource setting and corresponding menu 2865 entry.</li> 2866 2867 <li>fix an inconsistency between private mode 12 (the AT&T 2868 610 cursor blink) and <code>DECSCUSR</code>: the former relied 2869 on having the <code>cursorBlink</code> resource set initially 2870 to enable the escape sequence, while the latter does not.</li> 2871 2872 <li>add private modes 13 and 14, as well as resource 2873 <code>cursorBlinkXOR</code> to allow better control over the 2874 cursor-blinking state (discussion with Bram Moolenaar).</li> 2875 2876 <li>modify the html and svg screen dumps to support direct 2877 color</li> 2878 2879 <li>modify media copy (screen-printing) to support the same SGR 2880 codes as <code>DECRQSS</code>, including 88/256 indexed color 2881 as well as direct color.</li> 2882 2883 <li>improve options-parsing for query-status.pl script.</li> 2884 2885 <li>modify parsing of <code>SGR</code> direct-color control 2886 making <em>color space identitier</em> optional. The 2887 corresponding <code>DECRQSS</code> reply always returns an 2888 empty (default) field for the identifier.</li> 2889 2890 <li>add wide-attributes to <code>DECRQSS</code> reply for 2891 <code>SGR</code>.</li> 2892 2893 <li>add private mode 1046 to help with scripting 2894 applications.</li> 2895 2896 <li>correct expression used for readline-flags in DECRQM; to 2897 test the current flag rather than information <em>stacked</em> 2898 within the same variable.</li> 2899 2900 <li>correct typo in <code>ctlseqs.ms</code> reference to 2901 ISO-8613-6 (patch by Mike Frysinger).</li> 2902 2903 <li>fix lintian warning for test-package.</li> 2904 2905 <li>fix typo in <code>DECRQSS</code> for <code>SGR</code> 48, 2906 which printed the foreground value for colors past 15. Also use 2907 colon delimiter for codes 38/48 in response (report by Paul 2908 LeoNerd Evans).</li> 2909 2910 <li>improve workaround for Debian #542434 by using the font's 2911 maximum width when no ISO-8859-1 glyphs are provided (Debian 2912 #879936).</li> 2913 2914 <li>work around a special case of <em>Xft</em>'s mismanagement 2915 of its cached data by adding a check before the 2916 <code>-report-fonts</code> option to ensure that it does not 2917 use an <code>XftPattern</code> which may have been freed during 2918 a call to <code>XftFontOpenPattern</code>.</li> 2919 2920 <li>improve manual page description of <code>regex</code> 2921 option for <code>on<em>X</em>Clicks</code> resources (report by 2922 Lukas Mai).</li> 2923 2924 <li>add <code>directColor</code> resource.</li> 2925 2926 <li>additional manpage macro cleanup (Branden Robinson, Debian 2927 #880551).</li> 2928 2929 <li>add optional support for direct-colors (adapted from patch 2930 by anonymous “Nibby Nebbulous”).</li> 2931 2932 <li>improve legacy/NRC character set mapping (patch by Thomas 2933 Wolff), e.g., 2934 <ul> 2935 <li>enable alternate NRC set designators for French and 2936 French Canadian, ‘9’ and ‘f’ 2937 respectively, as documented in ctlseqs. (‘9’ is 2938 documented for VT510, ‘f’ is a Kermit 2939 feature).</li> 2940 2941 <li>correct the Unicode value in the <em>DEC Technical</em> 2942 table to show capital delta.</li> 2943 2944 <li>referring to 2945 <blockquote> 2946 <p><a href= 2947 "http://vt100.net/docs/vt220-rm/table2-3b.html">http://vt100.net/docs/vt220-rm/table2-3b.html</a><br> 2948 2949 <a href= 2950 "http://vt100.net/docs/vt320-uu/appendixe.html">http://vt100.net/docs/vt320-uu/appendixe.html</a></p> 2951 </blockquote> 2952 2953 <p>add entries for the <em>DEC Supplemental Graphics</em> 2954 table to display 0x28/0xa8 as ¤ and 0x5d/0xdd as 2955 Ÿ.</p> 2956 </li> 2957 2958 <li>referring to 2959 <blockquote> 2960 <p><a href= 2961 "http://www.vt100.net/charsets/technical.html">http://www.vt100.net/charsets/technical.html</a></p> 2962 </blockquote> 2963 2964 <p>alter the Unicode values used for 0x2b through 0x2c to 2965 use <em>curly braces</em> to work with the 2966 “middle” parts displayed with 0x2f and 2967 0x30.</p> 2968 </li> 2969 2970 <li>modify the VT220 “Supplemental” table, 2971 giving a hint that it was probably meant to be 2972 “Supplemental Graphics” and is the same as 2973 VT320's table.</li> 2974 </ul> 2975 </li> 2976 2977 <li>quiet a few font-warnings when a derived fontname cannot be 2978 opened, overlooked in refactoring of font resources in <a href= 2979 "#xterm_328">patch #328</a> (initially reported on <a href= 2980 "https://cygwin.com/ml/cygwin/2017-06/msg00255.html">Cygwin 2981 mailing list</a>, with <a href= 2982 "https://cygwin.com/ml/cygwin/2017-07/msg00216.html">followup</a>).</li> 2983 2984 <li>correct error response for <code>DECRQSS</code> broken in 2985 cleanup of Coverity reports in <a href="#xterm_288">patch 2986 #288</a> (reports by Bram Moolenaar and IWAMOTO Kouichi).</li> 2987 2988 <li>improve <code>DECRPM</code> responses by returning <em>mode 2989 not recognized</em> for modes which may not be settable due to 2990 the selected <code>decTerminalID</code> resource (report by 2991 IWAMOTO Kouichi).</li> 2992 2993 <li>correct logic for <code>print-immediate</code> action, and 2994 enable corresponding menu entry (patch by Lauri 2995 Tirkkonen).</li> 2996 2997 <li>add configure option <code>--with-pcre2</code> (patch by 2998 David Michael).</li> 2999 3000 <li>fix a misspelled subsection title in ctlseqs.ms and add a 3001 note regarding blink which was rendered as bold in X11R6. 3002 Blinking text was implemented in <a href="#xterm_60">Patch 3003 #60</a>.</li> 3004 3005 <li>fix typos in <code>xterm.man</code> (patches by Sven 3006 Joachim, Larry Hynes).</li> 3007 3008 <li>fix typography in <code>xterm.man</code> (patch by Bjarni 3009 Ingi Gislason, Debian #869248).</li> 3010 3011 <li>fix typo in <code>INSTALL</code> (Larry Hynes).</li> 3012 3013 <li>add <code>xterm-direct</code> terminal description based on 3014 changes introduced in <a href="#xterm_277">patch #277</a>, and 3015 relying upon ncurses <code><strong>RGB</strong></code> 3016 extension.</li> 3017 3018 <li>modify <code>xterm-new</code> terminal description to use 3019 ECMA-48 <code>REP</code>, reflecting its use in xterm since 3020 <a href="#xterm_32">patch #32</a> (1996).</li> 3021 3022 <li>clarify comment in ctlseqs.ms regarding blink: it has been 3023 part of xterm since <a href="#xterm_60">patch #60</a> 3024 (1998).</li> 3025 3026 <li>update ftp URLs in documentation.</li> 3027 </ul> 3028 3029 <h1><a name="xterm_330" id="xterm_330">Patch #330 - 3030 2017/06/20</a></h1> 3031 3032 <ul> 3033 <li>updates for ReGIS (Ross Combs): 3034 <ul> 3035 <li>remove redundant text command error check which broke 3036 <code>T(B)</code> and <code>T(E)</code>.</li> 3037 3038 <li>retain the loading alphabet number across multiple 3039 “L” commands.</li> 3040 3041 <li>add <code>S(T)</code> delay handler.</li> 3042 3043 <li>fix some color handling error messages.</li> 3044 3045 <li>add stubbed-out macrograph handling.</li> 3046 3047 <li>use <code>fragment_remaining()</code> and 3048 <code>fragment_consumed()</code> instead of manually 3049 checking position / length in various places.</li> 3050 3051 <li>rename some local variables in string / extent / option 3052 parsing</li> 3053 3054 <li>wrap some long lines.</li> 3055 3056 <li>move macrograph command handling out of the 3057 top-level.</li> 3058 </ul> 3059 </li> 3060 3061 <li>add a summary of the italic fonts loaded to 3062 <code>-report-fonts</code> option.</li> 3063 3064 <li>modify the font-lookup for italics to allow for 3065 “<code>-i-</code>” if no match is found with slant 3066 “<code>-o-</code>” (prompted by patch by Ben 3067 Wong).</li> 3068 3069 <li>change default values for <code>mkSamplePass</code> and 3070 <code>mkSampleSize</code> to reflect generally-improved locale 3071 support in various operating systems (FreeBSD #219800).</li> 3072 3073 <li>modify <code>wcwidth.c</code> to return -1 for non-Unicode 3074 values, and adjust a couple of blocks to better match 3075 assumptions about ambiguous-width characters in other 3076 implementations. Also modify <code>wcwidth.c</code> to support 3077 configurable soft-hyphen, so there is no drawback to using this 3078 version rather than a system <code>wcwidth</code>.</li> 3079 3080 <li>amend change made in <a href="#xterm_328">patch #328</a> 3081 for cursor-visibility to handle case where an application is 3082 updating the reverse-video state (FreeBSD #219800).</li> 3083 3084 <li>update tables of combining and ambiguous-width characters 3085 in wcwidth.c based on Unicode 10.0.0.</li> 3086 3087 <li>build-fix for <code>--enable-sixel-graphics</code> without 3088 <code>--enable-regis-graphics</code> (reports by Sven Joachim, 3089 FreeBSD #219945).</li> 3090 </ul> 3091 3092 <h1><a name="xterm_329" id="xterm_329">Patch #329 - 3093 2017/06/12</a></h1> 3094 3095 <ul> 3096 <li>add control sequences for reading the Sixel and ReGIS 3097 graphics sizes (suggested by Ben Wong).</li> 3098 3099 <li>add a workaround for <code>wcwidth</code> returning -1 for 3100 characters which should have been printable (FreeBSD 3101 #219800).</li> 3102 3103 <li>fix a bug in font initialization from <a href= 3104 "#xterm_328">patch #328</a> (FreeBSD #219800).</li> 3105 3106 <li>fix a special case in <code>HideCursor</code> which 3107 assigned a bold font to the slot used for normal font in 3108 changes for italics in <a href="#xterm_307">patch #307</a> 3109 (Debian #858304).</li> 3110 3111 <li>updates for ReGIS (Ross Combs): 3112 <ul> 3113 <li>Strings specified with no command are used as 3114 "comments". Print these in the log when tracing.</li> 3115 3116 <li>Catch attempts to use "alternate display" mode (AKA 3117 "blink") from the GIGI, but do not implement it.</li> 3118 3119 <li>The <code>T(M)</code> command should only multiply the 3120 height by 10, not 20.</li> 3121 3122 <li>Make the <code>S(E)</code> command reset more state 3123 than just the screen contents.</li> 3124 3125 <li>Remove two rotation variables which were only being 3126 printed.</li> 3127 3128 <li>Numerous minor fixes and comment updates in the 3129 <code>R</code> command.</li> 3130 3131 <li>Unknown <code>R</code> command option names trigger an 3132 empty response.</li> 3133 3134 <li>Fix the output position after printing rotated text (it 3135 was missing the the sign before).</li> 3136 3137 <li>Fix the position change with pixelvectors and rotated 3138 text (the rotation transform was not being applied).</li> 3139 3140 <li>Update the <em>TODO</em> list and remove a verification 3141 <em>FIXME</em> (slanted text positioning is correct as 3142 is).</li> 3143 3144 <li>Emulate the approximately 1.4x enlargement for text 3145 which isn't rotated at right angles.</li> 3146 3147 <li>Only update the color planes specified in the plane 3148 mask (the <code>W</code> command's <code>F</code> 3149 option).</li> 3150 </ul> 3151 </li> 3152 3153 <li>fix a bug introduced by the changes to font information in 3154 <a href="#xterm_328">patch #328</a>. When processing the 3155 "checkfont" option of the <code>locale</code> resource, the 3156 program referred to the <em>request</em> data, to an array 3157 which was only allocated in the <em>new/result</em> widget 3158 (report by H Merijn Brand).</li> 3159 3160 <li>fix a missing assignment initialization to make the 3161 <code>utf8</code> resource control whether escape sequences to 3162 enable/disable UTF-8 mode are allowed.</li> 3163 </ul> 3164 3165 <h1><a name="xterm_328" id="xterm_328">Patch #328 - 3166 2017/06/01</a></h1> 3167 3168 <ul> 3169 <li>revise parser for <code>charClass</code> resource, making 3170 these improvements: 3171 <ul> 3172 <li>accept octal and hexadecimal values</li> 3173 3174 <li>allow embedded whitespace</li> 3175 3176 <li>allow the class after colon to be optional, e.g., to 3177 clear class settings for a range of characters.</li> 3178 </ul> 3179 </li> 3180 3181 <li>add command-line option 3182 <code>-report-charclass</code>.</li> 3183 3184 <li>fix most lintian warnings about test-package</li> 3185 3186 <li>add <code>eraseSavedLines</code> resource.</li> 3187 3188 <li>document <code>DECSED 3</code> in 3189 <code>ctlseqs.ms</code> (report by Ben Longmans).</li> 3190 3191 <li>improve integration between configure-events and updates 3192 for reported screensize, in particular when switching between 3193 vt100 and tek4014 modes.</li> 3194 3195 <li>modify selection-highlighting of reverse-video text to keep 3196 that distinct, e.g., by reversing the selection foreground and 3197 background colors as one would expect. This fixes a "useless" 3198 case in the description of 3199 <code>highlightColorMode</code>.</li> 3200 3201 <li>improve fix for Debian #759734, addressing a case where 3202 non-colored cursor would be invisible against reverse-video 3203 (see <a href="#xterm_311">patch #311</a>).</li> 3204 3205 <li>updates for ReGIS (Ross Combs): 3206 <ul> 3207 <li>the "H" option of the "T" command should multiply by 3208 10, not 20.</li> 3209 3210 <li>display unknown glyphs as a solid block.</li> 3211 3212 <li>given a succession of text-direction options, use the 3213 last.</li> 3214 3215 <li>fix the direction of ReGIS slanted text so that 3216 negative values produce oblique output .</li> 3217 3218 <li>fix the ReGIS text direction option to only rotate 3219 characters when no following size option is used.</li> 3220 </ul> 3221 </li> 3222 3223 <li>update terminfo to better match corresponding entries in 3224 ncurses, e.g., <code>u8</code> pattern to match the VT220, 3225 VT420, etc., primary responses, as well as adding 3226 <code>smxx</code> and <code>rmxx</code>.</li> 3227 3228 <li>fixes from Jörg Sommer: 3229 <ul> 3230 <li>corrected a trace-message regarding maximum 3231 graphics-size; it used the similar ReGIS maximum size which 3232 might not be configured.</li> 3233 3234 <li>in <code>do_select_regex</code>, clear selection if 3235 there is no match. If the regex does not match anything 3236 around the cursor, the selection returned must be empty, 3237 otherwise the whole line is treated as a match. This way 3238 the command defined by <code>exec-selectable</code> will 3239 not be executed if there is no match.</li> 3240 3241 <li>modify limit in <code>do_select_regex</code> to include 3242 the character at the cursor in the match, making it easier 3243 to type something and then hit the key to trigger 3244 <code>exec-selectable</code>.</li> 3245 3246 <li>If <code>exec-selectable</code> or 3247 <code>insert-selection</code> is triggered by a mouse 3248 button click, the position of the mouse pointer should be 3249 used. This makes it easier to address any position on the 3250 window and it makes it possible to use the mouse, e.g., for 3251 applications such as mutt where you cannot move the 3252 cursor.</li> 3253 </ul> 3254 </li> 3255 3256 <li>modify <code>DECRC</code> to save/restore xterm's 3257 last-column flag used to control wrapping behavior rather than 3258 manipulating <code>DECAWM</code> (report/analysis by Mattias 3259 Engdegård).</li> 3260 3261 <li>add configure option <code>--enable-terminfo-env</code> to 3262 use the value set by <code>--with-own-terminfo</code> for the 3263 <code>$TERMINFO</code> environment variable. That variable was 3264 set automatically for HPUX, but would be useful in other 3265 systems, e.g., for Solaris (request by Jeff Wieland).</li> 3266 3267 <li>fix a race condition when setting up a signal handler to 3268 timeout if opening <code>/dev/tty</code> hangs (patch by Tobias 3269 Stoeckmann).</li> 3270 3271 <li>review/cleanup resources which were not in the manual page 3272 (report by Maxwell Anselm): 3273 <ul> 3274 <li>add manual page description as needed.</li> 3275 3276 <li>drop resource name for <code>menuBar</code>, as 3277 unnecessary.</li> 3278 3279 <li>modify fallback numeric value for 3280 <code>regisScreenSize</code> resource to match that for 3281 <code>maxGraphicSize</code>.</li> 3282 </ul> 3283 </li> 3284 3285 <li>updated configure macros <code>CF_ADD_CFLAGS</code>, 3286 <code>CF_CC_ENV_FLAGS</code>, <code>CF_GNU_SOURCE</code>, 3287 <code>CF_MATH_LIB</code>, and <code>CF_XOPEN_SOURCE</code> from 3288 other program-changes.</li> 3289 3290 <li>update config.guess, config.sub</li> 3291 3292 <li>change “maximum screensize” assumed by 3293 <code>resize</code> to 9999x9999, to accommodate people using 3294 the <em><code>Unreadable</code></em> font.</li> 3295 3296 <li>drop <code>Utility</code> from default value of 3297 <code>--with-desktop-category</code> (Debian #780176).</li> 3298 3299 <li>widen the configure script pattern used for finding related 3300 ".desktop" files, including “Terminal”</li> 3301 3302 <li>several minor improvements to font utility functions: 3303 <ul> 3304 <li>provide for later modification to implement font-sets 3305 by parsing the font resources as comma-separated 3306 lists.</li> 3307 3308 <li>parse <code>-fn</code> and <code>-fa</code> similarly, 3309 using “x:” and “xft:” prefixes for 3310 font name/family strings to distinguish between XLFD and 3311 Xft font specifications.</li> 3312 3313 <li>use loops to iterate over font classes</li> 3314 3315 <li>use getters/setters for font data to allow for 3316 on-demand lookups.</li> 3317 3318 <li>make the debugging trace for missing glyph less verbose 3319 since that interferes with the <code>-report-fonts</code> 3320 option.</li> 3321 3322 <li>refactor <code>xtermLoadFont</code> to make it clearer 3323 how some fonts are derived from others, e.g., bold, 3324 wide.</li> 3325 3326 <li>make the triggering and suppressing of font-warnings 3327 more consistent by storing the last state in the 3328 widget.</li> 3329 3330 <li>reduce font-warnings by checking for repeated 3331 warnings.</li> 3332 </ul> 3333 </li> 3334 3335 <li>add <code>vttests/query-status.pl</code></li> 3336 3337 <li>add <code>vttests/closest-rgb</code></li> 3338 3339 <li>add special case for displaying soft-hyphen if it happens 3340 to fall at the right margin, and omitting similar case such as 3341 the BIDI markers, where a zero-width character is neither a 3342 control character nor a combining character (Debian 3343 #844325).</li> 3344 3345 <li>modify logic for <code>OSC 52</code>, <em>manipulate 3346 selection data</em>, to update the selection-time to include 3347 the latest X events. This fixes some cases where the selection 3348 was invalid, e.g., after an event due to focus-follows-mouse 3349 (report/testcase by Stephane Chauveau).</li> 3350 3351 <li>revise macro <code>CastMallocN</code> as new macro 3352 <code>TextAlloc</code> to make explicit use of 3353 <code>sizeof(char)</code> (prompted by patch by Cade 3354 Foster).</li> 3355 3356 <li>add <em>“Mouse Ops”</em> menu entry and related 3357 resources to allow runtime disabling/enabling of the mouse 3358 protocol escape sequences (discussion with Bob Proulx).</li> 3359 3360 <li>improve discussion of mouse actions versus protocol in the 3361 manual (discussion with Bob Proulx).</li> 3362 3363 <li>improve discussion of environment variables in the manual, 3364 pointing out where some features (such as termcap and the 3365 System5 <code>COLUMNS</code> and <code>LINES</code> variables) 3366 are used rarely, mainly to support legacy applications.</li> 3367 3368 <li>add examples of <code>translations</code> resource for 3369 select/paste, and for font-size changes to the manual.</li> 3370 3371 <li>minor reordering of some entries in <code>ctlseqs.ms</code> 3372 for consistency (report by Arran Ubels).</li> 3373 3374 <li>add <code>-s</code> option to <code>256colors2.pl</code> 3375 and <code>88colors2.pl</code>, to demonstrate modifying the 3376 “system” colors 0–15.</li> 3377 3378 <li>omit <code>XFT_SPACING</code> property from call to <code> 3379 XftPatternBuild</code>, to work around a bug in 3380 <em>fontconfig</em> for handling Google Go fonts, whose names 3381 sort in an order not expected by <em>fontconfig</em>, causing 3382 the request for a monospaced font to return <em>italics</em>, 3383 e.g., 3384 <blockquote> 3385 <pre> 3386$ fc-match 'Go Mono:spacing=monospace' 3387Go-Mono-Italic.ttf: "Go Mono" "Italic" 3388(report by Giacomo Boffi on <a href= 3389"http://unix.stackexchange.com/questions/324941/xterm-displays-an-italic-face-instead-of-regular">Stackoverflow</a>). 3390 3391</pre> 3392 </blockquote> 3393 </li> 3394 3395 <li>modify <code>minstall.in</code> to improve a workaround 3396 added to the manual page in <a href="#xterm_182">patch #182</a> 3397 to avoid having the C preprocessor used in the imake 3398 configuration strip out the comments in the character classes 3399 section (reports by Ted Unangst, Anthony J Bentley).</li> 3400 </ul> 3401 3402 <h1><a name="xterm_327" id="xterm_327">Patch #327 - 3403 2016/10/07</a></h1> 3404 3405 <ul> 3406 <li>add a check in the function which handles end-of-line 3407 wrapping to ensure that C1 controls are allocated one column 3408 when <code>allowC1Printable</code> is set (Debian 3409 #738794).</li> 3410 3411 <li>use consistent error-checking after <code>strtol</code> 3412 calls, fixes a case where a query with OSC 6 did not ensure 3413 there was a valid color number (report by Alex Smith).</li> 3414 3415 <li>add <code>-baudrate</code> option, for testing 3416 ncurses.</li> 3417 3418 <li>always generate the <code>CASE_<em>xxx</em></code> symbols 3419 in <code>VTparse.h</code> and <code>Tekparse.h</code>, as part 3420 of a change to improve debug-logging. This makes the build 3421 always depend upon <code>awk</code>.</li> 3422 3423 <li>modify <code>allowC1Printable</code> to disallow codes 3424 160-254 as being equivalent to codes 32-126 when parsing escape 3425 sequences (Debian #839220).</li> 3426 3427 <li>amend fix from <a href="#xterm_326">patch #326</a> for 3428 TrueType fonts to exclude the hidden character used for 3429 double-width cells (report by Grady Martin).</li> 3430 3431 <li>fix a typo in <code>ctlseqs.ms</code></li> 3432 </ul> 3433 3434 <h1><a name="xterm_326" id="xterm_326">Patch #326 - 3435 2016/09/25</a></h1> 3436 3437 <ul> 3438 <li>updated appdata file (report by Richard Hughes).</li> 3439 3440 <li>improve discussion of the different terminal emulations 3441 provided by xterm in the manual page.</li> 3442 3443 <li>add examples of setting the icon title with/without the 3444 window title in the manual (Debian #833984).</li> 3445 3446 <li>correct a limit-check when using a numeric value for 3447 extended Booleans e.g., <code>*fullscreen:3</code> rather than 3448 a name such as <code>*fullscreen:never</code>.</li> 3449 3450 <li>add action <code>allow-bold-fonts</code></li> 3451 3452 <li>improved formatting fixes for manual page, using script to 3453 find mismatches in spelling of resources, actions and menu 3454 entries.</li> 3455 3456 <li>improve documentation of logging resources.</li> 3457 3458 <li>fix a special case of flickering cursor by adding 3459 <code>GraphicsExpose</code> to the list of event types that 3460 should not trigger making the mouse cursor visible (patch by 3461 Joe Peterson).</li> 3462 3463 <li>correct initialization of line-drawing in VT52-mode, 3464 overlooked in changes for <a href="#xterm_297">patch #297</a> 3465 (report/patch by Ben Wiley Sittler).</li> 3466 3467 <li>minor clarification of form-feed versus line-feed in 3468 <code>ctlseqs.ms</code> (suggested by David Kemper).</li> 3469 3470 <li>amend fix for Debian #738794 to restore a check for missing 3471 characters which are <em>not</em> combining characters. Also 3472 fill in a corresponding special case for TrueType fonts (Debian 3473 #827905).</li> 3474 </ul> 3475 3476 <h1><a name="xterm_325" id="xterm_325">Patch #325 - 3477 2016/06/05</a></h1> 3478 3479 <ul> 3480 <li>improve manual page discussion of function keys (discussion 3481 with Ross Combs).</li> 3482 3483 <li>further improve fix for Debian #545220 in <a href= 3484 "#xterm_248">patch #248</a>, to avoid conflict with combining 3485 characters (Debian #738794).</li> 3486 3487 <li>improve <code>-hold</code> option to avoid 100% CPU usage 3488 with NetBSD after closing the shell, which makes subsequent 3489 checks for X input events fail (prompted by patch by Pierre 3490 Pronchery).</li> 3491 3492 <li>review <code>#ifdef</code> statements, listed those which 3493 do not have a configure option in 3494 <code>xtermcfg.hin</code>.</li> 3495 3496 <li>fixed one case where the menu sensistivity for 3497 <em>Print-All Immediately</em> and <em>Print-All on Error</em> 3498 was not properly ifdef'd.</li> 3499 3500 <li>modify terminfo entries for 16-, 88- and 256-color to reset 3501 palette with <code>rs1</code> capability.</li> 3502 3503 <li>accept <code>legacy</code> value of <code>-kt</code> as 3504 synonym for the <code>oldXtermFKeys</code> resource, and extend 3505 the full-reset logic to use the keyboard type set via 3506 <code>-kt</code>.</li> 3507 3508 <li>modify <code>ioctl</code> calls for <code>I_PUSH</code> to 3509 first check if the module has been added, using 3510 <code>I_FIND</code>. This is needed for newer Solaris libraries 3511 with c11 support (adapted from patch by Alan Coopersmith).</li> 3512 3513 <li>add check in <code>getXtermCombining</code> to ensure that 3514 combining characters were allocated (report by Tor 3515 Andersson).</li> 3516 3517 <li>add configure option <code>--without-xinerama</code> to 3518 allow suppressing the extension (Gentoo #580936).</li> 3519 3520 <li>update keysym2ucs.c based on Unicode 9.0</li> 3521 3522 <li>fixed most <code>cppcheck --enable=all</code> warnings, 3523 including for style (prompted by report by David Binderman). 3524 There was one bug-fix: 3525 <ul> 3526 <li>RGB least-squares computation in 3527 <code>allocateClosestRGB</code> used only one ordinate</li> 3528 </ul> 3529 </li> 3530 3531 <li>add <code>cppcheck</code> to lint-like programs in 3532 configure script and makefile.</li> 3533 3534 <li>fix some const correctness issues and point out an array 3535 lifetime issue (Ross Combs).</li> 3536 3537 <li>updates for SIXEL and ReGIS (Ross Combs): 3538 <ul> 3539 <li>Sixel drawing should still happen after an error if 3540 some commands have been processed</li> 3541 3542 <li>Tiny steps toward reporting ReGIS input</li> 3543 </ul> 3544 </li> 3545 </ul> 3546 3547 <h1><a name="xterm_324" id="xterm_324">Patch #324 - 3548 2016/03/10</a></h1> 3549 3550 <ul> 3551 <li>updated configure macro <code>CF_LD_RPATH_OPT</code> from 3552 ncurses changes.</li> 3553 3554 <li>provide alternate fix for Juha Nurmela's report by turning 3555 on POSIX signals if <code>_POSIX_C_SOURCE</code> is at least 3556 one. This is done to improve the behavior if a direct child 3557 process receives a <code>STOP</code> signal.</li> 3558 3559 <li>revert change to <code>CF_POSIX_C_SOURCE</code> from 3560 <a href="#xterm_323">patch #323</a> (reports by Ashish Shukla, 3561 Christian Weisgerber).</li> 3562 </ul> 3563 3564 <h1><a name="xterm_323" id="xterm_323">Patch #323 - 3565 2016/03/07</a></h1> 3566 3567 <ul> 3568 <li>updated appdata and desktop files to add keywords (report 3569 by Richard Hughes).</li> 3570 3571 <li>modify configure macro <code>CF_POSIX_C_SOURCE</code> to 3572 accommodate some systems, e.g., FreeBSD, which have separated 3573 their implementation specific preprocessor symbols from the 3574 POSIX ones, requiring both to be defined (report by Juha 3575 Nurmela).</li> 3576 3577 <li>change the directory to the current working dir of the 3578 child process in exec-formatted and exec-selectable actions 3579 (patch by Alexander Pohoyda).</li> 3580 3581 <li>correct typo in xterm.man (patch by Larry Hynes).</li> 3582 3583 <li>correct typo in ctlseqs.ms (report by Shriramana 3584 Sharma).</li> 3585 3586 <li>add feature to support XHTML and SVG screen dumps (patch by 3587 Jens Schweikhardt).</li> 3588 3589 <li>correct response to DECRQSS when terminal id is less than 3590 400 (patch by Iwamoto Kouichi).</li> 3591 </ul> 3592 3593 <h1><a name="xterm_322" id="xterm_322">Patch #322 - 3594 2016/01/02</a></h1> 3595 3596 <ul> 3597 <li>fix regression due to incorrect fix for compiler warning 3598 when allocating storage for <code>/etc/shells</code> (reports 3599 by Ashish Shukla, Debian #809646).</li> 3600 </ul> 3601 3602 <h1><a name="xterm_321" id="xterm_321">Patch #321 - 3603 2015/12/31</a></h1> 3604 3605 <ul> 3606 <li>add resource <code>keepClipboard</code>, escape sequence 3607 and action <code>keep-clipboard</code>.</li> 3608 3609 <li>add optional feature to capture text copied to clipboard at 3610 the time of copying rather than at the time the clipboard 3611 contents are requested for pasting (patch by Milan 3612 Mehner).</li> 3613 3614 <li>improve a special case where the <code>-e</code> option was 3615 used to pass a single-quoted command via <code>luit</code>, by 3616 wrapping it in a “sh -c” (report by Keith 3617 Hedger).</li> 3618 3619 <li>minor fix for type-cleanliness when allocating storage for 3620 <code>/etc/shells</code> (Tobias Stoeckmann).</li> 3621 3622 <li>fix a typo in manual page (Dan Church).</li> 3623 3624 <li>fix minor file-descriptor leak; after calling 3625 <code>openpty</code>, the slave's file descriptor is not needed 3626 (report by Juha Nurmela).</li> 3627 3628 <li>editorial change to ctlseqs.ms (report by David 3629 Gomboc).</li> 3630 3631 <li>minor updates for autoconf macros.</li> 3632 3633 <li>update config.guess, config.sub</li> 3634 </ul> 3635 3636 <h1><a name="xterm_320" id="xterm_320">Patch #320 - 3637 2015/08/28</a></h1> 3638 3639 <ul> 3640 <li>correct documentation for <code>%t</code> format (report by 3641 Martin Tournoij).</li> 3642 3643 <li>add <code>%R</code> for consistency to 3644 <code>exec-formatted()</code> and 3645 <code>insert-formatted()</code> actions.</li> 3646 3647 <li>add <code>%r</code> format to <code>exec-formatted()</code> 3648 and <code>insert-formatted()</code> actions (patch by Martin 3649 Tournoij).</li> 3650 3651 <li>Amend fix for Debian #794201 (report forwarded from 3652 Christian Jachmann by Emanuel Haupt, Debian #797008).</li> 3653 </ul> 3654 3655 <h1><a name="xterm_319" id="xterm_319">Patch #319 - 3656 2015/08/19</a></h1> 3657 3658 <ul> 3659 <li>add a section to <code>ctlseqs.ms</code> discussing control 3660 sequences and ECMA-48, to explain why C1 controls do not occur 3661 in the decoded characters from UTF-8 byte streams (prompted by 3662 discussion with Poul-Henning Kamp).</li> 3663 3664 <li>modify check for cursor-theme from <a href= 3665 "#xterm_301">patch #301</a> to also check if the resource 3666 <code>Xcursor.theme</code> is set to a nonempty value before 3667 fallback to xterm's own dummy theme (request by Robert 3668 Kloefkorn).</li> 3669 3670 <li>explain in <code>ctlseqs.ms</code> that some keys which 3671 normally send SS3-prefixes are changed to CSI-prefixes if 3672 key-modifiers are passed as parameters (report by George 3673 Nachman).</li> 3674 3675 <li>correct double-free of font information when multiple 3676 problems are found, particularly for the wide fonts loaded via 3677 the <code>-wc</code> option (report/testcase by Nelson 3678 Beebe).</li> 3679 3680 <li>make configure option <code>--enable-builtin-xpms</code> 3681 actually work (report by William Bulley).</li> 3682 3683 <li>correct combination of <code>-ls</code> and <code>-e</code> 3684 options for utempter configuration (Debian #794201).</li> 3685 3686 <li>NetBSD build-fix for OPT_RENDERFONT versus OPT_SHIFT_FONTS 3687 (patch by Matthew Green, forwarded by Thomas Klausner).</li> 3688 3689 <li>fix a few minor bugs found with Coverity.</li> 3690 3691 <li>update pixelvector handling (Ross Combs): 3692 <ul> 3693 <li>split pixel-based and coord-based functions with common 3694 parts factored out to a "raw" function</li> 3695 3696 <li>add a "step" variant which loads a single PV digit</li> 3697 </ul> 3698 </li> 3699 3700 <li>make the graphic dirty upon resize or clear, fixing some 3701 missing refreshes (patch by Ross Combs)</li> 3702 3703 <li>fixes scrolling to use user coordinates and move in the 3704 correct direction (patch by Ross Combs)</li> 3705 3706 <li>several fixes/improvements for ReGIS whitespace and 3707 page-handling (patch by Ross Combs).</li> 3708 </ul> 3709 3710 <h1><a name="xterm_318" id="xterm_318">Patch #318 - 3711 2015/04/12</a></h1> 3712 3713 <ul> 3714 <li>rename new(er) configure option 3715 <code>--enable-initial-erase</code> to 3716 <code>--enable-pty-erase</code>, since that conflicted with an 3717 existing option (report by Jens Schweikhardt).</li> 3718 3719 <li>fix cut/paste error in <code>--with-builtin-xpms</code> 3720 configure option (reports by Jens Schweikhardt, Ross 3721 Combs).</li> 3722 3723 <li>fix minor formatting issue in xterm manual (report by Jens 3724 Schweikhardt).</li> 3725 3726 <li>eliminate unnecessary "#(vi" markers in autoconf macros by 3727 using "(" to begin case-statement cases (suggested by Jens 3728 Schweikhardt).</li> 3729 3730 <li>minor fixes to improve <code>const</code> usage (Ross 3731 Combs).</li> 3732 </ul> 3733 3734 <h1><a name="xterm_317" id="xterm_317">Patch #317 - 3735 2015/03/27</a></h1> 3736 3737 <ul> 3738 <li>adapt example for <code>exec-formatted</code> from <a href= 3739 "http://lukas.zapletalovi.com/2013/07/hidden-gems-of-xterm.html"> 3740 Lukáš Zapletal's</a> webpage to manual (Debian 3741 #780008).</li> 3742 3743 <li>add a short usage section to the xterm manual, including 3744 notes on setting the window title (Debian #742477).</li> 3745 3746 <li>revise a change made to <code>ICH</code> in <a href= 3747 "#xterm_314">patch #314</a> to address limit-checks 3748 (reports/testcases by Zoltán Kéri and Joe 3749 Peterson, also reported by Christian Weisgerber).</li> 3750 </ul> 3751 3752 <h1><a name="xterm_316" id="xterm_316">Patch #316 - 3753 2015/03/07</a></h1> 3754 3755 <ul> 3756 <li>revert change to make <code>DCH</code> honor top/bottom 3757 scrolling margins. For the record, both the VT420 and VT520 3758 reference manuals incorrectly state that <em>"DCH has no effect 3759 outside the scrolling margins."</em></li> 3760 3761 <li>fix regression in <code>DCH</code> introduced in adjustment 3762 for limit-check in <a href="#xterm_314">patch #315</a> 3763 (report/testcase by Zoltán Kéri, also reported by 3764 Christian Weisgerber).</li> 3765 3766 <li>correct default value for configure option 3767 <code>--enable-initial-erase</code>; it should be "False", but 3768 in <a href="#xterm_315">patch #315</a> it was "Maybe", which 3769 differed from default set in <a href="#xterm_192">patch 3770 #192</a>.</li> 3771 </ul> 3772 3773 <h1><a name="xterm_315" id="xterm_315">Patch #315 - 3774 2015/03/02</a></h1> 3775 3776 <ul> 3777 <li>change default for <code>--enable-narrowproto</code> for 3778 Cygwin to "no" to better match contemporary configurations 3779 (report by Jens Schweikhardt, prompted by <a href= 3780 "http://stackoverflow.com/questions/28137618/what-is-a-narrow-prototype-and-why-would-i-need-one/28334574?noredirect=1#comment45022128_28334574"> 3781 discussion</a>).</li> 3782 3783 <li>provide <code>OSC 106</code> as an alternative to 3784 <code>OSC 6</code>, avoiding conflict with one of 3785 Terminal.app's undocumented escape sequences (report by Egmont 3786 Koblinger).</li> 3787 3788 <li>fix an off-by-one in comparison when autowrap and 3789 left/right margins are combined (report by George 3790 Nachman).</li> 3791 3792 <li>modify <code>DECBI</code> and <code>DECFI</code> to work 3793 outside the left/right margins, since the vague VT520 reference 3794 manual could support that interpretation (suggested by George 3795 Nachman).</li> 3796 3797 <li>correct response for <code>DECSCUSR</code> in 3798 <code>DECRQSS</code> (report/analysis by George Nachman).</li> 3799 3800 <li>add <code>DECSLRM</code> to list for <code>DECRQSS</code> 3801 in ctlseqs.ms (report by George Nachman).</li> 3802 3803 <li>improve limit-checks versus assert's in the debugging 3804 version (reports by George Nachman).</li> 3805 3806 <li>correct a problem with multiple writes to the right-margin 3807 when autowrap is turned off (report by George Nachman, also 3808 reported in Gnome #744819 by Ulf Magnusson).</li> 3809 3810 <li>modify <code>DCH</code> to honor top/bottom and left/right 3811 margins (report by George Nachman).</li> 3812 3813 <li>correct off-by-one in comparison so that <code>DL</code> 3814 honors left/right margins (report by George Nachman).</li> 3815 3816 <li>correct logic of <code>DECSCL</code>, which always set 3817 8-bit controls as a side-effect (report by George 3818 Nachman).</li> 3819 3820 <li>correct loop limit for <code>DECSED 1</code>, when 3821 <code>DECSCA</code> is enabled (report by George Nachman).</li> 3822 3823 <li>fix a entry in csi_table for “<code>$</code>”, 3824 needed for <code><em>CSI</em> [ $ z</code> 3825 (report by George Nachman).</li> 3826 3827 <li>remove restriction from <a href="#xterm_279">patch #279</a> 3828 changes on <code>DECIC</code> and <code>DECDC</code> to 3829 left-right mode (report by George Nachman).</li> 3830 3831 <li>correct PID value returned in response to DECRQCRA 3832 (report/analysis by George Nachman).</li> 3833 3834 <li>fix an ifdef'ing problem, where 3835 <code>--disable-dec-locator</code> would turn off logic needed 3836 for <code>DECIC</code> and <code>DECDC</code> (report by George 3837 Nachman).</li> 3838 3839 <li>correct order of parameters in report for 3840 <code><em>CSI</em> 1 9 t</code>, which gives the 3841 screensize in characters (report by George Nachman).</li> 3842 3843 <li>add null pointer checks for a case in DECCRA where part of 3844 the target rectangle lies outside the screen limits (report by 3845 George Nachman).</li> 3846 3847 <li>remove extra "6" for selective erase from DA1 response 3848 (report by George Nachman).</li> 3849 3850 <li>support Xinerama screen specification in geometry parsing 3851 (patch by Nicolas George).</li> 3852 3853 <li>add configure option <code>--enable-initial-erase</code> to 3854 set <code>ptyInitialErase</code> consistently with manpage, as 3855 well as adding a table in manpage to clarify the relationship 3856 between the resources related to the backarrow key (Debian 3857 #775952).</li> 3858 3859 <li>add configure <code>--enable-builtin-xpms</code> to 3860 simplify compiling-in the icons introduced in <a href= 3861 "#xterm_284">patch #284</a> (prompted by discussion with 3862 William Bulley).</li> 3863 3864 <li>fix/improve autoconf macros: 3865 <ul> 3866 <li>CF_WITH_APP_DEFAULTS, add paths for OSX</li> 3867 3868 <li>CF_WITH_MAN2HTML, configure option "--with-man2html" 3869 provides "man2html" as alternative to groff's man/html 3870 conversion</li> 3871 </ul> 3872 </li> 3873 3874 <li>fix some minor issues in manpage (Jens Schweikhardt).</li> 3875 </ul> 3876 3877 <h1><a name="xterm_314" id="xterm_314">Patch #314 - 3878 2014/12/28</a></h1> 3879 3880 <ul> 3881 <li>fix a minor bug in the termcap-specific version of 3882 <code>resize</code> when the lines or columns values are at the 3883 very end of an incomplete termcap string (prompted by coverity 3884 report).</li> 3885 3886 <li>improve paste64 feature (report by Olaf Rogalsky) 3887 <ul> 3888 <li>fix “<code>p</code>;” command in 3889 <code>paste64.pl</code> example.</li> 3890 3891 <li>modify <code>_OwnSelection</code> to allow the paste64 3892 control to cause primary/clipboard selections to be 3893 disowned and cleared.</li> 3894 3895 <li>omit an extra "=" used in padding, to make the base64 3896 response a multiple of four characters.</li> 3897 3898 <li>modify <code>_ConvertSelectionHelper</code> to not stop 3899 converting on embedded nulls in the primary or clipboard 3900 selection. That makes the behavior consistent with 3901 cut-buffers. Nulls are not passed on to the application 3902 because they are used for separators in the X library calls 3903 that convert <code>XTextProperty</code> values.</li> 3904 </ul> 3905 </li> 3906 3907 <li>add configure option <code>--with-man2html</code> to allow 3908 an alternative to groff's man/html conversion.</li> 3909 3910 <li>review and modify resource-settings which can be set via 3911 control sequences, etc: 3912 <ul> 3913 <li>add <code>OSC 6</code>, to enable/disable colors 3914 set via <code>OSC 5</code>, without changing the color 3915 assignments (prompted by patch by Ingo Brückl).</li> 3916 3917 <li>add command-line option <code>-itc</code> for 3918 italics.</li> 3919 3920 <li>add <code>colorIT</code> and <code>colorITMode</code> 3921 for italics, like <code>colorBD</code>, etc.</li> 3922 3923 <li>guard <code>allowPasteControls</code> against 3924 modification by <code>editres</code>.</li> 3925 </ul> 3926 </li> 3927 3928 <li>change <code>passedPty</code> from fixed-length to 3929 allocated to ensure that it is long enough to hold the 3930 <code>-S</code> option value (report by Ben Longbons).</li> 3931 3932 <li>improve ReGIS graphics initialization (Ross Combs): 3933 <ul> 3934 <li>add a new string resource to set the default ReGIS 3935 font.</li> 3936 3937 <li>fix a caching problem where the font name wasn't taken 3938 into consideration when looking up cached metrics.</li> 3939 3940 <li>enables use of fractional values in coordinates (which 3941 in turn allows setting the coordinates to something like 3942 [0,1][1,0])</li> 3943 3944 <li>doubles the minimum ReGIS graphic to 200x200</li> 3945 3946 <li>set the default ReGIS image size to "auto"</li> 3947 3948 <li>fix some swapped width/height parameters in TRACE 3949 messages</li> 3950 3951 <li>add support for scaling and mirrored coordinate systems 3952 to the screen address command</li> 3953 3954 <li>sets a minimum ReGIS graphics size of 100x100 -- 3955 smaller address ranges will be scaled up</li> 3956 3957 <li>reset the image if either the width or height is zero 3958 (which should happen together or not at all, but switching 3959 the logic gets rid of some parentheses)</li> 3960 3961 <li>adds support for alternate screen coordinates (just 3962 offsets, not inverted coordinates or scaling)</li> 3963 3964 <li>keeps the graphics state across ReGIS calls unless P1 3965 or P3 entry codes are used</li> 3966 3967 <li>changes loops to continue after parsing whitespace to 3968 allow trailing whitespace</li> 3969 3970 <li>fixes some incorrect character casts</li> 3971 </ul> 3972 </li> 3973 </ul> 3974 3975 <h1><a name="xterm_313" id="xterm_313">Patch #313 - 3976 2014/11/28</a></h1> 3977 3978 <ul> 3979 <li>add <code>regisScreenSize</code> resource setting to allow 3980 custom screensizes for ReGIS graphics (prompted by discussion 3981 with Scott Froebe).</li> 3982 3983 <li>fix some minor issues in manpage (Jens Schweikhardt).</li> 3984 3985 <li>improve ReGIS font-handling (Ross Combs): 3986 <ul> 3987 <li>remove "random junk" generation for unknown 3988 characters</li> 3989 3990 <li>add xterm extension to load user glyphs for alphabet 3991 0</li> 3992 3993 <li>add xterm extension to specify loading an alphabet from 3994 a font by name</li> 3995 3996 <li>fix bug with use of empty alphabet slots which caused 3997 slot 0 to be clobbered</li> 3998 3999 <li>update/clarify ReGIS-related comments</li> 4000 4001 <li>add DECprint extension for printing/clearing the screen 4002 (only clearing is performed)</li> 4003 </ul> 4004 </li> 4005 4006 <li>improve ReGIS colorspec conversion (Ross Combs): 4007 <ul> 4008 <li>avoid some floating point math for colorspace 4009 conversion</li> 4010 4011 <li>move two copies of colorspec parsing to a single 4012 function</li> 4013 4014 <li>change colorspec parsing to handle components being out 4015 of order or with spaces and commas between them</li> 4016 4017 <li>add support for an extension where RGB components can 4018 be given instead of HLS</li> 4019 </ul> 4020 </li> 4021 4022 <li>improve use of const, e.g., for the <code>LineData</code> 4023 pointers (patch by Ross Combs).</li> 4024 4025 <li>clip of graphics that overlap the scrollback buffer and alt 4026 screen (patch by Ross Combs).</li> 4027 4028 <li>amend change to focus-change events in <a href= 4029 "#xterm_287">patch #287</a> to limit it to suppressing the 4030 reset of the urgency-hint, because some useful 4031 <code>FocusOut</code> events were lost (report by Joe 4032 Peterson).</li> 4033 4034 <li>modify dpkg build-script to configure xterm-dev as an 4035 <code>x-terminal-emulator</code> alternative.</li> 4036 4037 <li>extend the <code>--with-xterm-symlink</code> feature to 4038 make symbolic links for the other programs and scripts.</li> 4039 4040 <li>minor fix to <code>vttests/resize.pl</code> to avoid 4041 undefined variable when receiving broken/missing response, 4042 e.g., from mrxvt.</li> 4043 4044 <li>change the way that ReGIS graphics are refreshed (patch by 4045 Ross Combs): 4046 <ul> 4047 <li>it pre-composes any overlapping graphics to avoid 4048 unnecessary and flickering draws</li> 4049 4050 <li>it adds a three-dimensional lookup table for RGB -> 4051 pixel values and uses this across all graphics</li> 4052 4053 <li>it draws in line segments when there is a run of the 4054 same color</li> 4055 4056 <li>in cases where there are no transparent parts, it uses 4057 an XImage to draw</li> 4058 4059 <li>it hooks into the double-buffering support if it is 4060 enabled (though this doesn't seem to get rid of all 4061 flicker).</li> 4062 </ul> 4063 This has the effect of reducing flicker and speeding up 4064 redraws. 4065 </li> 4066 </ul> 4067 4068 <h1><a name="xterm_312" id="xterm_312">Patch #312 - 4069 2014/09/28</a></h1> 4070 4071 <ul> 4072 <li>undo change to <code>do_select_regex()</code> in <a href= 4073 "#xterm_311">patch #311</a> (reports by H Merijn Brand, 4074 Sven-Haegar Koch, Debian #762978).</li> 4075 </ul> 4076 4077 <h1><a name="xterm_311" id="xterm_311">Patch #311 - 4078 2014/09/18</a></h1> 4079 4080 <ul> 4081 <li>mention <code>xclip</code> in manpage as an alternative 4082 workaround for copying clipboard data, noting that 4083 <code>selectToClipboard</code> (see <a href="#xterm_209">patch 4084 #209</a>) is the recommended approach (Debian #639094).</li> 4085 4086 <li>correct comparison in do_select_regex() of working position 4087 against starting column.</li> 4088 4089 <li>correct initialization for regular-expression feature of 4090 <code>exec-selectable</code> and <code>insert-selectable</code> 4091 actions (Debian #758633).</li> 4092 4093 <li>modify logic for <code>exec-formatted</code> and 4094 <code>insert-formatted</code> actions to ensure that the 4095 formatting occurs just after the selection is received (Debian 4096 #758633).</li> 4097 4098 <li>account for state of reverse-video in special case of 4099 cursor coloring (Debian #759734).</li> 4100 4101 <li>fix a sign-extension problem in ReGIS support, as well as 4102 correcting a case where ignored-characters were not really 4103 ignored (patch by Ross Combs).</li> 4104 4105 <li>Enable the "Escape Sequence" menu entry when an OSC 50 4106 is received. Also disable it if the escape sequence specifies 4107 no font (Debian #760208).</li> 4108 4109 <li>improve fix for the <code>fontsel</code> menu entry from 4110 <a href="#xterm_304">patch #304</a>: because the recovery used 4111 the "current font", it would fail if one first selected a valid 4112 font, then an invalid font (Debian #760207).</li> 4113 4114 <li>correct an off-by-one in limit-check for 4115 <code>ScrnLimitChar</code> function (report by Egmont 4116 Koblinger).</li> 4117 </ul> 4118 4119 <h1><a name="xterm_310" id="xterm_310">Patch #310 - 4120 2014/07/25</a></h1> 4121 4122 <ul> 4123 <li>update package/freebsd files based on xterm #309 port.</li> 4124 4125 <li>adapt changes from Minux3.2 which ported <a href= 4126 "#xterm_197">xterm #197</a>, to allow building on that platform 4127 both using <code>imake</code> as well as using the configure 4128 script.</li> 4129 4130 <li>update precompose.c based on Unicode 7.0</li> 4131 4132 <li>build-fix for <code>--with-Xaw3dxft</code> option (report 4133 by Emanuel Haupt).</li> 4134 </ul> 4135 4136 <h1><a name="xterm_309" id="xterm_309">Patch #309 - 4137 2014/07/13</a></h1> 4138 4139 <ul> 4140 <li>modify configure script to work around debris left by 4141 XQuartz upgrades.</li> 4142 4143 <li>modify test-package scripts to enable ReGIS graphics.</li> 4144 4145 <li>improvements/additions to ReGIS graphics, e.g., drawing 4146 text (Ross Combs).</li> 4147 4148 <li>add <code>--with-Xaw3dxft</code>, to link with Xaw 3d xft 4149 library (Stephen P Wall).</li> 4150 4151 <li>amend reset for cursor-shape to take into account 4152 <code>cursorUnderline</code> resource (report by Christian 4153 Weisgerber).</li> 4154 4155 <li>update config.guess, config.sub</li> 4156 </ul> 4157 4158 <h1><a name="xterm_308" id="xterm_308">Patch #308 - 4159 2014/06/19</a></h1> 4160 4161 <ul> 4162 <li>corrected font used for clipping double-width bitmap fonts 4163 from <a href="#xterm_307">patch #307</a> changes to work around 4164 mis-scaled fonts (Debian #752947).</li> 4165 4166 <li>improve wording of a warning message.</li> 4167 </ul> 4168 4169 <h1><a name="xterm_307" id="xterm_307">Patch #307 - 4170 2014/06/17</a></h1> 4171 4172 <ul> 4173 <li>fill background for top/bottom parts of 4174 double-width/double-height characters, to cover occasional gaps 4175 due to bitmap font-scaling (report by Egmont Koblinger).</li> 4176 4177 <li>amend resets for keyboard-type, pointer-mode and 4178 title-modes from <a href="#xterm_305">xterm #305</a> changes to 4179 account for resource settings (Debian #751351).</li> 4180 4181 <li>modify <em>printAttributes</em> feature to include new SGR 4182 codes.</li> 4183 4184 <li>modify cursor show/hide logic to work with italic 4185 fonts.</li> 4186 4187 <li>do clipping and filling for a case with bitmap-fonts and 4188 italics when the font server returns only a "close" match 4189 (report/testcase by Egmont Koblinger).</li> 4190 4191 <li>adjust loop comparison for underlining to display 4192 underlines on 5x8 font as in <a href="#xterm_304">patch 4193 #304</a> (Debian #750733).</li> 4194 4195 <li>amend fix for Freedesktop #15979 (Debian #750733).</li> 4196 4197 <li>amend xterm.appdata.xml, making it validate with current 4198 schema.</li> 4199 </ul> 4200 4201 <h1><a name="xterm_306" id="xterm_306">Patch #306 - 4202 2014/06/03</a></h1> 4203 4204 <ul> 4205 <li>fixes for display-errors in new SGR codes (report by Egmont 4206 Koblinger).</li> 4207 </ul> 4208 4209 <h1><a name="xterm_305" id="xterm_305">Patch #305 - 4210 2014/06/02</a></h1> 4211 4212 <ul> 4213 <li>add <code>xterm.appdata.xml</code> (request by Richard 4214 Hughes). By the way, none of the <em>released</em> validators 4215 yet handle <code><licence></code> tags (or 4216 <code><metadata_license></code>, etc).</li> 4217 4218 <li>fix memory leaks in bitmap font-name caching.</li> 4219 4220 <li>other changes to hard-reset behavior: 4221 <ul> 4222 <li>reset keyboard-type on hard-reset.</li> 4223 4224 <li>reset pointer-mode (<code>pointerMode</code>) on 4225 hard-reset</li> 4226 4227 <li>reset title-modes (<code>titleModes</code>) on 4228 hard-reset</li> 4229 4230 <li>reset cursor-shape on hard or soft-reset</li> 4231 4232 <li>reset LEDs on hard-reset.</li> 4233 4234 <li>reset DECSACE on hard-reset.</li> 4235 </ul> 4236 </li> 4237 4238 <li>reset bracketed-paste mode on hard-reset (suggested by 4239 Egmont Koblinger).</li> 4240 4241 <li>modify UTF-8 decoder to account for 4242 <code>allowC1Printable</code> resource.</li> 4243 4244 <li>revise <code>getXftColor</code> to ensure that its sequence 4245 number will not overflow in long-running sessions.</li> 4246 4247 <li>minor fix to selection to prevent hidden character from 4248 being returned in selection data (report by Egmont 4249 Koblinger).</li> 4250 4251 <li>add <code>-sh</code> to help-message.</li> 4252 4253 <li>amend check for incomplete fonts to always decide that a 4254 character is missing if the font lacks per-character metrics 4255 (prompted by Freedesktop #15979).</li> 4256 4257 <li>minor reorganization to implement “filler” SGR 4258 features. There are no established applications which rely upon 4259 these; some people find them amusing. 4260 <ul> 4261 <li>separate bits used to manage drawing state from 4262 attribute-bits.</li> 4263 4264 <li>implement SGR codes 2, 3, 9, 21 and their corresponding 4265 resets.</li> 4266 4267 <li>add configure option <code>--disable-wide-attrs</code> 4268 to disable the feature.</li> 4269 </ul> 4270 </li> 4271 4272 <li>additional changes for ReGIS support (Ross Combs): 4273 <ul> 4274 <li>fix some arc drawing bugs and add support for pattern 4275 shading.</li> 4276 </ul> 4277 </li> 4278 </ul> 4279 4280 <h1><a name="xterm_304" id="xterm_304">Patch #304 - 4281 2014/05/03</a></h1> 4282 4283 <ul> 4284 <li>add debugging check for parsing table entries, fixed a few 4285 inconsistencies.</li> 4286 4287 <li>handle utmp/utmpx strings consistently with new function 4288 that null-pads unused locations.</li> 4289 4290 <li>build-fix for imake configuration with FreeBSD 9 and later, 4291 to account for replacing <code>utmp</code> with 4292 <code>utmpx</code>.</li> 4293 4294 <li>improve handling of the <code>fontsel</code> 4295 (font-selection) menu item: 4296 <ul> 4297 <li>initialize the menu entry differently if the toolbar 4298 configuration is used, i.e., enabling it without attempting 4299 to use the current selection as a font name. Because of the 4300 way in which the toolbar is setup, this attempt usually 4301 failed, and would result in a warning.</li> 4302 4303 <li>if the menu action fails, e.g., no font can be loaded 4304 for the given selected name, then recover by resuming with 4305 the current font. Before, the recovery went to the default 4306 font. That was done to work around missing bitmap font in 4307 <a href="#xterm_276">patch #276</a>.</li> 4308 </ul> 4309 </li> 4310 4311 <li>document OSC 119 in the control sequences listing 4312 (report by Egmont Koblinger).</li> 4313 4314 <li>modify special handling of <code>XF86Paste</code> or 4315 <code>SunPaste</code> keysyms (see <a href="#xterm_227">patch 4316 #227</a>) to use the standard shift/lock modifiers in case 4317 those are, for example, used in level 3 in an XKB file (patch 4318 by Matthieu Herrb).</li> 4319 4320 <li>configure macro updates: 4321 <ul> 4322 <li>drop the <code>-no-gcc</code> option from 4323 CF_INTEL_COMPILER</li> 4324 4325 <li>modify CF_XOPEN_SOURCE to suppress the check for 4326 defining _XOPEN_SOURCE on Solaris</li> 4327 </ul> 4328 </li> 4329 4330 <li>reduce bss storage used for ReGIS/Sixel modules, as well as 4331 cleanup storage usage in other modules.</li> 4332 4333 <li>initial changes for ReGIS support (Ross Combs): 4334 <ul> 4335 <li>document control-sequences</li> 4336 4337 <li>separate ifdef's for sixel and color-register 4338 features</li> 4339 4340 <li>add configuration for VT382</li> 4341 </ul> 4342 </li> 4343 </ul> 4344 4345 <h1><a name="xterm_303" id="xterm_303">Patch #303 - 4346 2014/03/06</a></h1> 4347 4348 <ul> 4349 <li>improve check for <code>/etc/shells</code> to allow its 4350 entries to be symbolic links.</li> 4351 4352 <li>fix a regression in <a href="#xterm_302">patch #302</a> 4353 fixes relating to interaction of <code>SHELL</code> and 4354 <code>XTERM_SHELL</code> variables (Debian #740919).</li> 4355 4356 <li>improve manpage discussion of use of 4357 <code>/etc/shells</code> for validating the <code>SHELL</code> 4358 environment variable.</li> 4359 4360 <li>further improve the approximation for color map by ignoring 4361 bits which would not be applied by the rgb masks for the 4362 current visual (report by Joe Peterson).</li> 4363 4364 <li>add <code>-report-colors</code> to usage-message (report by 4365 Joe Peterson).</li> 4366 </ul> 4367 4368 <h1><a name="xterm_302" id="xterm_302">Patch #302 - 4369 2014/03/02</a></h1> 4370 4371 <ul> 4372 <li>amend approximation for color map introduced in <a href= 4373 "#xterm_277">patch #277</a> to make that apply only to 4374 <code>TrueColor</code> (adapted from patch by Joe 4375 Peterson).</li> 4376 4377 <li>add <code>-report-colors</code> option, to show colors as 4378 they are allocated.</li> 4379 4380 <li>fix some gcc <code>-Wcast-qual</code> warnings.</li> 4381 4382 <li>correct app-defaults location for CentOS-4 in 4383 xterm.spec</li> 4384 4385 <li>improve check in <code>minstall.sh</code> for X manpage's 4386 section number; add sample dependencies for the relevant 4387 documentation package to packaging test-scripts (prompted by 4388 Novell #779474).</li> 4389 4390 <li>modify sample build-scripts for dpkg and rpm to ensure that 4391 <code>vttests</code> scripts are uncompressed and 4392 executable.</li> 4393 4394 <li>modify Perl scripts in <code>vttests</code> to use 4395 <code>env</code> to find Perl rather than relying on 4396 <code>/usr/bin/perl</code> This makes the sample scripts usable 4397 with NetBSD and other systems using <em>pkgsrc</em>.</li> 4398 4399 <li>amend check from <a href="#xterm_301">patch #301</a> for 4400 valid shell to permit existing <code>SHELL</code> value to 4401 specify the shell; clarify the behavior in the manpage (report 4402 by Emmanuel Thomé).</li> 4403 4404 <li>amend change to wide-character processing from <a href= 4405 "#xterm_257">patch #257</a> to allow switching to/from UTF-8 4406 encoding if the <code>utf8</code> resource was not set to 4407 “always” (report by Honza Maly).</li> 4408 4409 <li>fix incorrect free from <a href="#xterm_301">patch #301</a> 4410 changes, if explicit program without <code>-e</code> option is 4411 a valid shell (patch by Romain Francoise).</li> 4412 </ul> 4413 4414 <h1><a name="xterm_301" id="xterm_301">Patch #301 - 4415 2014/01/19</a></h1> 4416 4417 <ul> 4418 <li>OSC 104 and 105 did not accept parameter to reset a 4419 specific color (patch by Egmont Koblinger).</li> 4420 4421 <li>add configure check for <code>initgroups</code>, and use 4422 that function to complement its use of <code>setgid</code> 4423 (prompted by patch by Miroslav Lichvar).</li> 4424 4425 <li>improve manpage description of scrollbar translations 4426 versus the vt100 translations (Debian #723573).</li> 4427 4428 <li>add a few paragraphs to manpage explaining the implications 4429 of xterm's reliance on X Toolkit for command-line parsing.</li> 4430 4431 <li>modify cursor-theme logic to check if the environment 4432 variable <code>XCURSOR_THEME</code> is set to a nonempty value 4433 before constructing a dummy them (prompted by similar check 4434 added in OpenBSD CVS).</li> 4435 4436 <li>add check for a case where TrueType bold font is missing a 4437 glyph where the non-bold font has it. Temporarily switch to the 4438 non-bold font to draw the glyph (report by David 4439 Demelier).</li> 4440 4441 <li>minor documentation fixes for ctlseqs.ms</li> 4442 4443 <li>only set <code>SHELL</code> environment variable to 4444 programs found in <code>/etc/shells</code> (prompted by 4445 patch/report by Al Poole).</li> 4446 4447 <li>build-fix, when <code>--disable-wide-chars</code> 4448 <code>--disable-boxchar</code> is used (prompted by patch by 4449 Andrey Panov).</li> 4450 </ul> 4451 4452 <h1><a name="xterm_300" id="xterm_300">Patch #300 - 4453 2013/12/03</a></h1> 4454 4455 <ul> 4456 <li>amend workaround for <code>Xcursor</code> library from 4457 <a href="#xterm_298">patch #298</a>; the suggested solution for 4458 Debian #466704 fell afoul of a bug in <code>Xcursor</code> 4459 which treated an empty value for <code>Inherits=</code> as a 4460 valid theme—and resulted in a stack overflow due to 4461 unbounded recursion. Certain environments such as XFCE4 exposed 4462 the bug. A related report in Debian #531679 was closed without 4463 following the recommendation to limit stack recursion in this 4464 library (reported by Sergey V Dyatko, Debian #731269).</li> 4465 </ul> 4466 4467 <h1><a name="xterm_299" id="xterm_299">Patch #299 - 4468 2013/12/01</a></h1> 4469 4470 <ul> 4471 <li>fix regression in line-drawing from <a href= 4472 "#xterm_297">patch #297</a> changes for NRCS exposed by change 4473 to <code>assumeAllChars</code> resource in <a href= 4474 "#xterm_298">patch #298</a> (report by Markus Waldeck).</li> 4475 </ul> 4476 4477 <h1><a name="xterm_298" id="xterm_298">Patch #298 - 4478 2013/11/27</a></h1> 4479 4480 <ul> 4481 <li>quiet a warning about ambiguity when <code>-h</code> 4482 command-line option is parsed, since <code>-help</code> is used 4483 rather than the options mentioned in the message. This warning 4484 was caused by fixes in <a href="#xterm_272">patch 4485 #272</a>.</li> 4486 4487 <li>remove an extra check for keypad-mode which interfered with 4488 the <a href="#xterm_280">patch #280</a> 4489 <code>modifyKeyboard</code> feature for the numeric keypad 4490 (report by David Conners).</li> 4491 4492 <li>change default for <code>assumeAllChars</code> resource 4493 (Debian #725682). There are unresolved issues with Terminus 4494 fonts, e.g., Debian #722017.</li> 4495 4496 <li>add <code>-report-fonts</code> command-line option and 4497 <code>reportFonts</code> resource to optionally report the 4498 fonts which are loaded, and their metrics such as the number of 4499 missing glyphs.</li> 4500 4501 <li>work around <code>Xcursor</code> library to make 4502 <code>pointerColor</code> resource work as documented (Debian 4503 #466704, analysis by Vincent Lefèvre).</li> 4504 4505 <li>amend change from <a href="#xterm_297">patch #297</a> for 4506 ASCII-equivalents to ensure that missing characters which 4507 happen to be double-width are padded to the expected number of 4508 columns. Also, correct the choice between normal/wide Xft fonts 4509 used when checking for missing characters (reported by WU Yue, 4510 Debian #728949, Gentoo #491334).</li> 4511 4512 <li>modify sixel-graphics drawing to account for scrollbar 4513 width (report by Mario Edelmann).</li> 4514 4515 <li>fix remaining issue with <code>DECNRCM</code>; the British 4516 character set was confused with ISO Latin-1 (report by Hayaki 4517 Saito).</li> 4518 4519 <li>build-fix for <code>--disable-boxchars</code> configure 4520 option.</li> 4521 4522 <li>updated configure macros, from ongoing work on lynx and 4523 ncurses.</li> 4524 4525 <li>update config.guess, config.sub</li> 4526 </ul> 4527 4528 <h1><a name="xterm_297" id="xterm_297">Patch #297 - 4529 2013/09/10</a></h1> 4530 4531 <ul> 4532 <li>modify check for missing cells in bitmap font to work 4533 around terminus 10646 encoding, which is mostly missing, add 4534 <code>assumeAllChars</code> resource to provide the older 4535 behavior.</li> 4536 4537 <li>modify macros used to check for missing cells in bitmap 4538 fonts to pick up a long-overlooked improvement made to xfd in 4539 XFree86.</li> 4540 4541 <li>improve workaround for groff versus ASCII-equivalents; 4542 <a href="#xterm_185">patch #185</a> had overlooked Xft 4543 configuration (reported by anonymous user on Arch Linux 4544 forum).</li> 4545 4546 <li>review/extend <code>DECNRCM</code> support (prompted by 4547 report by Hayaki Saito asking about the two "A" codes). 4548 <ul> 4549 <li>make pasting of DECNRCM data work by translating the 4550 pasted data into the selected encoding.</li> 4551 4552 <li>limit mode changes to VT220 and up.</li> 4553 4554 <li>ignore SCS for National Replacement Characters if 4555 <code>DECNRCM</code> is not set.</li> 4556 4557 <li>add tables and logic to decode SCS controls ending with 4558 "%" and one additional character. This expects the parsing 4559 of SCS to VT320.</li> 4560 4561 <li>also added parsing for SCS of DEC Supplemental and DEC 4562 Technical, which are for VT2xx and VT3xx respectively.</li> 4563 4564 <li>implement VT220 Multinational character set "GR" aka 4565 "DEC Supplemental Graphic".</li> 4566 4567 <li>DEC Technical character set based on <a href= 4568 "http://www.vt100.net/charsets/technical.html">vt100.net 4569 description</a>.</li> 4570 4571 <li>implement Portuguese NRC.</li> 4572 4573 <li>provide for temporarily switching to/from NRC mode from 4574 UTF-8 mode when <code>DECNRCM</code> is set or reset.</li> 4575 </ul> 4576 </li> 4577 4578 <li>minor fix to assert's found while testing examples from 4579 <a href="https://gist.github.com/ttdoda">ttdoda's 4580 slrm-test1.txt</a>.</li> 4581 4582 <li>modify <code>DECLRMM</code> to not update the cursor 4583 position (report by Iwamoto Kouichi forwarded by Hayaki 4584 Saito).</li> 4585 4586 <li>modify cursor-position report to take origin-mode into 4587 account (report by Hayaki Saito, see also <a href= 4588 "https://github.com/gnachman/iTerm2/pull/129">iTerm2 pull 4589 request 129</a>).</li> 4590 4591 <li>correct off-by-one comparison in when handling 4592 carriage-return at left margin (patch by Iwamoto Kouichi, 4593 forwarded by Hayaki Saito).</li> 4594 4595 <li>improve handling of <code>faceName</code> resource when a 4596 "size=" property is embedded in it, by using that size to 4597 replace the default <code>faceSize</code> resource. This lets 4598 xterm honor the other faceSize resources (report by Jens 4599 Schweikhardt).</li> 4600 4601 <li>improve OSC 52 selection-data by setting its timestamp 4602 to correspond to the most-recent event received by xterm, to 4603 ensure that calls to <code>XtOwnSelect</code> succeed even if 4604 the selection is manipulated solely through the keyboard 4605 (prompted by patch by Richard Tollerton).</li> 4606 4607 <li>change configure-script defaults for "luit" and 4608 "wide-chars" options to match the values used in the imake 4609 configuration, to lessen user surprise if they are accustomed 4610 to building xterm using imake(report by Andries E 4611 Brouwer).</li> 4612 4613 <li>improve the imake-related configuration's check if xterm is 4614 started in a locale that uses UTF-8 encoding. Before, this 4615 checked the locale settings only for "UTF-8", now it checks 4616 ignoring case for "UTF-8" and "UTF-8" (report by Andries E 4617 Brouwer).</li> 4618 </ul> 4619 4620 <h1><a name="xterm_296" id="xterm_296">Patch #296 - 4621 2013/07/10</a></h1> 4622 4623 <ul> 4624 <li>improve experimental sixel feature (Ross Combs).</li> 4625 4626 <li>modify delimiter in configure macro used to add a library 4627 after a given library to avoid confusion with <code>-Wl</code> 4628 pass-through options to linker (NetBSD #48031).</li> 4629 4630 <li>fix quoting in expression used to trim extra libraries from 4631 <a href="#xterm_295">patch #295</a> changes (report by Thomas 4632 Klausner).</li> 4633 </ul> 4634 4635 <h1><a name="xterm_295" id="xterm_295">Patch #295 - 4636 2013/07/06</a></h1> 4637 4638 <ul> 4639 <li>adjust order of libraries to work around incomplete symbol 4640 resolution when using <code>--as-needed</code> option 4641 (ArchLinux #36047).</li> 4642 4643 <li>minor fix for <code>plink.sh</code>, for IRIX64.</li> 4644 </ul> 4645 4646 <h1><a name="xterm_294" id="xterm_294">Patch #294 - 4647 2013/07/05</a></h1> 4648 4649 <ul> 4650 <li>add note in ctlseqs.ms for CPR response pointing out a 4651 potential point of confusion with the string sent by a modified 4652 F1 key (suggested by Bram Moolenaar).</li> 4653 4654 <li>improve <code>plink.sh</code> by checking if the linker 4655 supports the <code>--as-needed</code> option (suggested by 4656 David Philippi).</li> 4657 4658 <li>improve clearing for private mode 1049 when switching to 4659 the alternate screen (Debian #711758).</li> 4660 4661 <li>amend fix from <a href="#xterm_292">patch #292</a> by 4662 removing now-unneeded chunk which introduced problem in 4663 selection (Debian #714527).</li> 4664 4665 <li>add definition to optionally override compiled-in class for 4666 xterm from makefile, needed for test-packages.</li> 4667 4668 <li>add configure option 4669 <code>--enable-sixel-graphics</code></li> 4670 4671 <li>add experimental support for sixel graphics (Ross 4672 Combs).</li> 4673 </ul> 4674 4675 <h1><a name="xterm_293" id="xterm_293">Patch #293 - 4676 2013/05/27</a></h1> 4677 4678 <ul> 4679 <li>modify sample xterm.spec to use newer icon</li> 4680 4681 <li>add configure option <code>--with-icon-symlink</code> to 4682 work around systems which map icon requests for to a single 4683 "xterm" icon, but neglect to install the icon needed for window 4684 decorations (report by H Merijn Brand).</li> 4685 4686 <li>improve parameterizing of sample xterm.spec</li> 4687 4688 <li>amend fix for printer from <a href="#xterm_280">patch 4689 #280</a>, removing a reset of the signal handler for 4690 <code>SIGCHLD</code> (report by Joe Julian).</li> 4691 4692 <li>set environment variable <code>XTERM_FILTER</code> if a 4693 locale-filter is used.</li> 4694 4695 <li>enable <code>DEBUG</code> logic when 4696 <code>--enable-trace</code> configure option is given.</li> 4697 4698 <li>improve description of <code>initialFont</code>, 4699 <code>set-vt-font</code> and <code>set-tex-text</code> in 4700 manpage (Debian #707899).</li> 4701 4702 <li>fix regression from <a href="#xterm_292">patch #292</a>; 4703 selecting a word that ended at the right margin without 4704 wrapping would not select the last cell (report by Christian 4705 Weisgerber).</li> 4706 </ul> 4707 4708 <h1><a name="xterm_292" id="xterm_292">Patch #292 - 4709 2013/04/25</a></h1> 4710 4711 <ul> 4712 <li>add limit-check when double-click selects a word; if the 4713 saved-lines were scrolled back and the word selected wrapped at 4714 the screen's lower right corner, an assertion was triggered 4715 (patch by Taketo Kabe).</li> 4716 4717 <li>correct limit-check in <code>unsaveEditBufLines</code>, 4718 fixing a case where enlarging the terminal size could show a 4719 blank line where there actually is available text (patch by 4720 Bertram Felgenhauer).</li> 4721 4722 <li>add <code>PasteControls</code> feature to 4723 <code>allowWindowOps</code> which by default disallows pasting 4724 control characters other than formatting such as carriage 4725 return (discussion with Hayaki Saito).</li> 4726 4727 <li>fix typo in ctlseqs.ms for DECRQM response (patch by 4728 Emanuele Giaquinta).</li> 4729 4730 <li>update default shown in configure <code>--help</code> 4731 message for <code>--with-terminal-id</code> option (patch by 4732 Andres Perera).</li> 4733 4734 <li>rename script/preprocessor variables used for substituting 4735 the <code>backarrowKey</code> default value for consistency 4736 (patch by Andres Perera).</li> 4737 4738 <li>set umask to 077 before creating debugging-trace 4739 files.</li> 4740 4741 <li>add configure option <code>--disable-openpty</code> to 4742 control whether openpty() may be used in preference to 4743 posix_openpt().</li> 4744 4745 <li>improve workaround from <a href="#xterm_279">patch #279</a> 4746 for BSD systems which do not complete initialization until both 4747 sides of the pseudoterminal are opened, by preferring openpty() 4748 function over posix_openpt() when available (report by 4749 Christian Weisgerber).</li> 4750 </ul> 4751 4752 <h1><a name="xterm_291" id="xterm_291">Patch #291 - 4753 2013/02/26</a></h1> 4754 4755 <ul> 4756 <li>add validity check for xterm widget parameter to 4757 <code>AlternateScroll</code> function, needed to handle wheel 4758 mouse events in the scrollbar area since <a href= 4759 "#xterm_282">patch #282</a> changes which introduced 4760 <code>alternateScroll</code> feature (Redhat #874327).</li> 4761 </ul> 4762 4763 <h1><a name="xterm_290" id="xterm_290">Patch #290 - 4764 2013/02/12</a></h1> 4765 4766 <ul> 4767 <li>revert of <a href="#xterm_282">patch #282</a> change was 4768 incomplete (report by Jim Reisert).</li> 4769 4770 <li>fix typo in manpage (report by Vincent 4771 Lefèvre).</li> 4772 </ul> 4773 4774 <h1><a name="xterm_289" id="xterm_289">Patch #289 - 4775 2013/02/08</a></h1> 4776 4777 <ul> 4778 <li>revert the <a href="#xterm_282">patch #282</a> change which 4779 restored "lost" text after shrinking/growing the screen size. 4780 If the screen was updated between the two resizing operations, 4781 unexpected text might be shown at the end (report/testcase by 4782 Joe Peterson).</li> 4783 4784 <li>reverse the arrow-keys sent for 4785 <code>alternateScroll</code> to match the usage in browsers 4786 (suggested by Dieter Roelants).</li> 4787 4788 <li>modify mouse reports to consistently indicate motion events 4789 whether or not a button is pressed. Old behavior (since 4790 <a href="#xterm_127">patch #127</a> modified encoding for wheel 4791 mouse) showed only that the button was released if no button 4792 had been pressed (report by Andy Koppe).</li> 4793 4794 <li>correct and improve behavior for SGR 1006 mouse protocol on 4795 button release in any-event mode. Initial implementation in 4796 <a href="#xterm_277">patch #277</a> left internal state showing 4797 the last button pressed when reporting motion events. It now 4798 keeps track of all buttons which have been pressed and 4799 released, showing the lowest remaining button by number in the 4800 response (reports by Hayaki Saito, Andy Koppe).</li> 4801 4802 <li>fix inconsistency between <code>TermColors</code> and 4803 <code>OscTextColors</code> enums which interchanged values for 4804 tektronix cursor color and highlight foreground in control 4805 sequences in <a href="#xterm_225">patch #225</a> (report/patch 4806 by Peder Stray).</li> 4807 4808 <li>fix inconsistent use of noreturn-attribute in 4809 <code>Exit</code> function which interfered with clang 4810 --analyze.</li> 4811 4812 <li>remove incorrect <code>free</code> used in computation of 4813 <code>XTERM_SHELL</code> variable, from Coverity fixes in 4814 <a href="#xterm_288">patch #288</a> (FreeBSD #175782).</li> 4815 4816 <li>add <code>--with-valgrind</code> option to configure script 4817 for consistency with my other programs.</li> 4818 4819 <li>update table of ambiguous width characters in wcwidth.c 4820 based on Unicode 6.2.0</li> 4821 4822 <li>update table of combining characters in wcwidth.c based on 4823 Unicode 6.2.0</li> 4824 4825 <li>update precompose.c based on Unicode 6.2.0</li> 4826 </ul> 4827 4828 <h1><a name="xterm_288" id="xterm_288">Patch #288 - 4829 2013/01/09</a></h1> 4830 4831 <ul> 4832 <li>fix a special case in <code>ShowCursor</code> where the 4833 foreground and background colors of the current position are 4834 the same. In that case, choose the further of the window's 4835 foreground and background colors for the cursor color.</li> 4836 4837 <li>modify <code>alternateScroll</code> feature added in 4838 <a href="#xterm_282">patch #282</a> to use either 4839 <code>CSI</code> or <code>SS3</code> according to the cursor 4840 keys application mode setting, to simplify using it in vi, etc. 4841 (suggested by Dietar Roelants).</li> 4842 4843 <li>revise manpage for <code>resize</code> to clarify the 4844 changes which <code>resize</code> may make to the terminal 4845 settings as well as to the terminal itself.</li> 4846 4847 <li>remove code such as <code>struct ttysize</code>, used for 4848 SunOS 3 and 4.</li> 4849 4850 <li>modify configure script and makefile to check for 4851 <code>groff</code> and suppress groff-specific rules if groff 4852 is not found.</li> 4853 4854 <li>modify ctlseqs.ms and makefile to work around bugs in 4855 <code>grohtml</code> which cause ".png" files to be truncated 4856 when producing html documentation.</li> 4857 4858 <li>modify suffix rules for "make docs" to make the names of 4859 the generated ".png" files predictable, helping to work around 4860 longstanding problems with this feature of groff—none of 4861 its releases work for <em>all</em> of xterm's tables..</li> 4862 4863 <li>correct typo in ctlseqs.ms for DECIC and DECDC; the 4864 character preceding the final "<code>~</code>" is an ASCII 4865 single-quote "<code>'</code>" rather than a space (report by 4866 Paul LeoNerd Evans).</li> 4867 4868 <li>update CF_GCC_VERSION macro, handling both Debian and 4869 Darwin.</li> 4870 4871 <li>improve configure script checks for the 4872 <code>--with-desktop-category</code> option. After <a href= 4873 "#xterm_280">patch #280</a> changes, if no value was given for 4874 this option, and no existing desktop files found for 4875 comparison, the incorrect "auto" value was passed into the 4876 generated desktop file (report by Julien Cristau).</li> 4877 4878 <li>modify sample build-scripts to disable check for 4879 <code>imake</code> due to code-rot in Xorg.</li> 4880 4881 <li>add <code>-v</code> command-line option to 4882 <code>resize</code>, reporting the same version string as 4883 <code>xterm</code> and the two shell-wrappers.</li> 4884 4885 <li>make name-transformation apply to other occurrences of 4886 <code>resize</code>, other manpages.</li> 4887 4888 <li>special-case the name-transformation in xterm's manpage in 4889 the NAME section so that the result works with 4890 <code>makewhatis</code> (report by Julien Cristau).</li> 4891 4892 <li>modify install-rules for manpages to put each program's 4893 respective transformed name into the header rather than 4894 xterm's.</li> 4895 4896 <li>remove deprecated files: proto.h, os2main.c</li> 4897 4898 <li>minor fixes based on Coverity scan, including: 4899 <ul> 4900 <li>correct caching of Atom value for the font menu's 4901 "Selection" entry.</li> 4902 4903 <li>ensure that utmp/utmpx calls do not depend upon 4904 trailing nulls in the <code>ut_id</code> and 4905 <code>ut_line</code> values.</li> 4906 </ul> 4907 </li> 4908 </ul> 4909 4910 <h1><a name="xterm_287" id="xterm_287">Patch #287 - 4911 2012/11/25</a></h1> 4912 4913 <ul> 4914 <li>fix a case where in_put() loop could continue when it has 4915 found an X event rather than the pty, causing the pty-read to 4916 be delayed (patch by Balazs Kezes).</li> 4917 4918 <li>add option to <code>pointerMode</code> resource and 4919 corresponding control sequences to allow text-cursor to remain 4920 hidden if the pointer leaves/enters the window via accelerator 4921 keys. Ordinary motion within the window restores the pointer 4922 (prompted by patch by Balazs Kezes).</li> 4923 4924 <li>remove special case of modifiers for the 4925 <code>Mode_switch</code> and <code>XK_ISO_Level3_Shift</code> 4926 from <a href="#xterm_223">patch #223</a>. Verified that the 4927 conflict which this was intended to resolve does not happen for 4928 normal compose- or modeswitch-handling (prompted by patch by 4929 Balazs Kezes, Debian #638694).</li> 4930 4931 <li>modify the handling of focus-change events to ignore those 4932 whose detail is <code>NotifyPointer</code>, since those are 4933 sent in addition to focus-change events directed to the old/new 4934 windows having focus. In particular, this prevents the 4935 urgency-hint from being reset inadvertently (prompted by patch 4936 by Balazs Kezes).</li> 4937 4938 <li>modify description of <code>iconName</code> in manpage to 4939 make it clearer that this resource does not specify the 4940 filename of an icon (discussion with Ian Collier).</li> 4941 4942 <li>modify <code>iconHint</code> resource to allow suppressing 4943 the built-in icon by setting this to "none" (discussion with 4944 Ian Collier).</li> 4945 4946 <li>make <code>-iconic</code> option work with the toolbar 4947 configuration.</li> 4948 4949 <li>correct initialization of window manager hints used to set 4950 the icon-pixmap. That detail from <a href="#xterm_282">patch 4951 #282</a> overwrote state used to control the 4952 <code>-iconic</code> command-line option (report by Ian 4953 Collier).</li> 4954 4955 <li>fix paste64 feature for the case where the selection comes 4956 from the current terminal. The selection callback can happen 4957 after the reply is partly built, making it necessary to flush 4958 the reply-buffer to keep things in the proper order (report by 4959 Ailin Nemui).</li> 4960 4961 <li>reject command-line options which are longer than the 4962 options in xterm's table, to avoid mismatches (Redhat 4963 #875305).</li> 4964 4965 <li>correct attribution for <a href="#xterm_282">patch #282</a> 4966 changes.</li> 4967 </ul> 4968 4969 <h1><a name="xterm_286" id="xterm_286">Patch #286 - 4970 2012/10/29</a></h1> 4971 4972 <ul> 4973 <li>fix <code>minstall.in</code> to work with "make docs" rule, 4974 so that patch number appears in the corresponding generated 4975 documentation.</li> 4976 4977 <li>modify <code>minstall.in</code> to keep the name shown in 4978 the heading consistent with any renaming, e.g., for 4979 test-builds.</li> 4980 4981 <li>check for misconfigured <code>printerCommand</code> 4982 resource on the first use, warn and disable it if it does not 4983 specify an executable command (Debian #691642).</li> 4984 4985 <li>improve check for window-manager name needed to establish 4986 usable default for activeIcon resource. This works around a 4987 scenario where <code>gdm</code> does incomplete cleanup, 4988 leaving window properties that refer to windows which no longer 4989 exist (Redhat #869959).</li> 4990 </ul> 4991 4992 <h1><a name="xterm_285" id="xterm_285">Patch #285 - 4993 2012/10/23</a></h1> 4994 4995 <ul> 4996 <li>add/adapt FreeBSD ports files for test-building.</li> 4997 4998 <li>modify <code>minstall.sh</code> to use the patch-number and 4999 date in the manpage footer.</li> 5000 5001 <li>add check for failure to allocate the fg/bg colors at 5002 startup, e.g., misconfiguration. Work around by setting both to 5003 the default colors (suggested by Scott Bertilson).</li> 5004 5005 <li>amend change for <a href="#xterm_280">patch #280</a> which 5006 added <code>modifyKeyboard</code>, to make 5007 <code>modifyOtherKeys</code> work (report by Ailin Nemui).</li> 5008 5009 <li>add <code>query-colors.pl</code> example for 5010 OSC 4.</li> 5011 5012 <li>correct mis-applied fix for minstall.sh (report by Miroslav 5013 Lichvar).</li> 5014 </ul> 5015 5016 <h1><a name="xterm_284" id="xterm_284">Patch #284 - 5017 2012/10/14</a></h1> 5018 5019 <ul> 5020 <li>amend configurability changes for icons from <a href= 5021 "#xterm_283">patch #283</a>, moving the new functionality to 5022 the <code>iconHint</code> resource to avoid conflict with 5023 existing uses of the <code>iconName</code> resource in the 5024 <code>Shell</code> widget (report by Emanuel Haupt).</li> 5025 5026 <li>fix documentation errata reported by Miroslav Lichvar: 5027 <ul> 5028 <li>correct manpage default for <code>allowTcapOps</code> 5029 (see <a href="#xterm_243">patch #243</a></li> 5030 5031 <li>modify documentation for configure 5032 <code>--enable-backarrow-key</code> to match the script 5033 (see <a href="#xterm_280">patch #280</a>).</li> 5034 5035 <li>fix typo in <code>minstall.sh</code> in <a href= 5036 "#xterm_283">patch #283</a>, which made the leading-cap 5037 "Xterm" become "xterm" (patch by Miroslav).</li> 5038 </ul> 5039 </li> 5040 5041 <li>fix two typos in configure.in from <a href= 5042 "#xterm_283">patch #283</a> changes; one broke the 5043 <code>--regex</code> configure option (report by H Merijn 5044 Brand).</li> 5045 </ul> 5046 5047 <h1><a name="xterm_283" id="xterm_283">Patch #283 - 5048 2012/10/09</a></h1> 5049 5050 <ul> 5051 <li>modify makefile and script to generate appropriate renaming 5052 s/xterm/xterm-dev/ for test-package's manpage.</li> 5053 5054 <li>improve makefile rules for installing/uninstalling pixmap 5055 files, to include the newer mini- and filled- variants.</li> 5056 5057 <li>clarify change in manpage regarding <a href= 5058 "#xterm_282">patch #282</a> change to always set a 5059 window-decoration icon, even if <code>iconName</code> is not 5060 set.</li> 5061 5062 <li>add a fourth flavor of window-decoration icons, 5063 "filled-xterm" for a monochrome xterm with filled 5064 interior.</li> 5065 5066 <li>use shape-mask to improve contrast of the window-decoration 5067 icons.</li> 5068 5069 <li>minor changes to icon colors to improve contrast on 5070 bright-mud backgrounds.</li> 5071 5072 <li>drop configure checks for memmove versus bcopy, and 5073 strerror function; all currently tested platforms support 5074 these.</li> 5075 5076 <li>cleanup configure macros, as done in byacc 20121003.</li> 5077 5078 <li>improve configurability of the built-in icon selectable via 5079 the <code>iconName</code> resource.</li> 5080 5081 <li>update config.guess, config.sub</li> 5082 </ul> 5083 5084 <h1><a name="xterm_282" id="xterm_282">Patch #282 - 5085 2012/09/28</a></h1> 5086 5087 <ul> 5088 <li>improve configure check for 5089 <code>XkbKeycodeToKeysym</code>, fixing a regression on some 5090 older systems in the <a href="#xterm_280">patch #280</a> 5091 changes.</li> 5092 5093 <li>add clarification in manpage for 5094 <code>alwaysBoldMode</code> and <code>veryBoldColors</code> 5095 resources (prompted by Derek Martin question about using the 5096 former with TrueType fonts).</li> 5097 5098 <li>add <code>alternateScroll</code> resource and corresponding 5099 control sequences which modify the <code>scroll-forw</code> and 5100 <code>scroll-back</code> actions: when the alternate screen is 5101 displayed, wheel mouse up/down will send cursor keys (Debian 5102 #683942).</li> 5103 5104 <li>improve rendering for the case when a Unicode character is 5105 absent in the bold font but present in the normal font by 5106 temporarily falling back to the normal font (Debian #359006, 5107 Debian #408666).</li> 5108 5109 <li>provide configure option 5110 <code>--enable-double-buffer</code> and ifdef's to allow 5111 comparisons with/without double-buffering. The default uses 5112 normal buffering.</li> 5113 5114 <li>add feature to optionally scroll current page before 5115 clearing, controlled by resource setting 5116 <code>cdXtraScroll</code> (prompted by patch by Balazs 5117 Kezes):</li> 5118 5119 <li>integrated patches from Arch Linux forum posting (patches 5120 by Balazs Kezes): 5121 <ul> 5122 <li>modify reallocation limit of line-data when resizing 5123 screen so that "lost" text will be restored if the screen 5124 is first shrunk and then grown.</li> 5125 5126 <li>modify output to use double-buffering to reduce 5127 flicker.</li> 5128 </ul> 5129 </li> 5130 5131 <li>modify <code>scroll-lock</code> action to handle 5132 on/off/toggle keywords like other actions. Previously the 5133 optional parameter was interpreted as an integer.</li> 5134 5135 <li>extend <code>DECSCUSR</code> to provide a way to set the 5136 cursor to a vertical bar (patch by Paul Bolle).</li> 5137 5138 <li>add <code>-8</code>, <code>-c</code>, <code>-d</code> and 5139 <code>-u</code> options to <code>88colors2.pl</code> and 5140 <code>256colors2.pl</code> scripts. No current terminal 5141 emulator recognizes C1 controls while handling UTF-8 5142 encoding—see notes in <a href="#xterm_119">patch #119</a> 5143 and <a href="#xterm_109">patch #109</a> regarding 5144 <code>utf8controls</code>—but the <code>-u</code> and 5145 <code>-8</code> options are useful for demonstrating this 5146 point.</li> 5147 5148 <li>improve speed when changing color palettes using OSC 5149 controls by deferring repaint while followup controls might be 5150 additional color palette changes.</li> 5151 5152 <li>modify <code>SGR 38</code> and 5153 <code>SGR 48</code> to accept RGB index, matching the 5154 closest entry in xterm's palette.</li> 5155 5156 <li>extend <code>SGR 38</code> and 5157 <code>SGR 48</code> to accept colon as parameter separator 5158 (request by Paul LeoNerd Evans).</li> 5159 5160 <li>modify <code>fullscreen</code> action to allow it to toggle 5161 the full-screen mode rather than only set or unset it (prompted 5162 by Eeri Kask's suggestion to support 5163 <code>_NET_WM_TOGGLE</code>). This implementation does not yet 5164 use <code>_NET_WM_TOGGLE</code>.</li> 5165 5166 <li>add support for <code>_NET_WM_STATE_MAXIMIZED_VERT</code> 5167 and <code>_NET_WM_STATE_MAXIMIZED_HORZ</code> EWMH properties 5168 (suggested by Eeri Kask).</li> 5169 5170 <li>make fullscreen mode work with the tek4014 window. This 5171 change makes only the currently active window to be changed to 5172 fullscreen rather than changing both windows.</li> 5173 5174 <li>modify <code>TekClear</code> function to discard pending 5175 output before clearing the tek4014 display (patch by Kevin 5176 Ryde).</li> 5177 5178 <li>fix <code>deleteIsDEL</code> feature, broken in <a href= 5179 "#xterm_280">patch #280</a> changes (report by Mike Thornburg, 5180 forwarded by Jeremy Huddleston).</li> 5181 5182 <li>fix a special case of wrapping double-width characters 5183 (report/test-case by Ken Winstein).</li> 5184 5185 <li>add <code>E3</code> extended capability to 5186 <code>xterm-basic</code> to match ncurses <a href= 5187 "https://invisible-island.net/ncurses/NEWS.html#t20120728">20120728</a> 5188 patch.</li> 5189 5190 <li>fix incorrect transformation of row-parameter for 5191 <code>ClearCurBackground</code> in <a href="#xterm_279">patch 5192 #279</a> which caused incorrect painting in some scrolling 5193 scenarios (report by Chuck Silvers).</li> 5194 5195 <li>fix typo in manpage description of <code>+maximized</code> 5196 option (Paul Maier).</li> 5197 5198 <li>change default for configure option 5199 <code>--with-xpm</code>, turning it on unless requested 5200 otherwise.</li> 5201 5202 <li>add configure option <code>--with-icon-name</code> which 5203 can be used to override the default icon used in 5204 icon-themes.</li> 5205 5206 <li>extend <code>activeIcon</code> resource to provide 5207 <code>default</code> value which tells xterm to determine the 5208 window manager's name and automatically enable the feature for 5209 fvwm and window maker. The explicit true/false values can be 5210 used to override this behavior.</li> 5211 5212 <li>add "mini" xterm icon, which scales better than the 5213 standard xterm icon, e.g., for the gnome/kde "panel" 5214 feature.</li> 5215 5216 <li>extend <code>iconName</code> resource to search for icon 5217 named according to resource value and use that if found. If not 5218 found, use compiled-in pixmap. Both set the WM_ICON_NAME 5219 property which is used by various window managers, usually for 5220 window decoration.</li> 5221 5222 <li>updated autoconf patch, adding support for --datarootdir, 5223 which changes the default location of manpages.</li> 5224 5225 <li>further improved autoconf macros for configuring icons, 5226 from vile 9.8h</li> 5227 </ul> 5228 5229 <h1><a name="xterm_281" id="xterm_281">Patch #281 - 5230 2012/06/26</a></h1> 5231 5232 <ul> 5233 <li>remove "$(srcdir)/" from install-icon rule to fix builds 5234 when --srcdir configuration option is used.</li> 5235 5236 <li>fix for configure script's search for icon file when it is 5237 not found in the current directory, e.g., when building out of 5238 tree (patch by Thierry Reding).</li> 5239 5240 <li>undo the XK_Home / XK_End change from <a href= 5241 "#xterm_280">patch #280</a> which broke the non-VT220 keyboard 5242 for those keys (report by H Merijn Brand).</li> 5243 </ul> 5244 5245 <h1><a name="xterm_280" id="xterm_280">Patch #280 - 5246 2012/06/24</a></h1> 5247 5248 <ul> 5249 <li>add configure check to work around warning from 5250 desktop-file-install for "Encoding", noting that it emits 5251 deprecation warnings without providing its version 5252 information.</li> 5253 5254 <li>add configure option <code>--with-icon-theme</code> to tell 5255 xterm whether to install into an icon theme, defaulting to 5256 "hicolor" (Redhat #755206, Redhat #799614 and Redhat 5257 #804279).</li> 5258 5259 <li>change <code>--with-icondir</code> to look for "icons" 5260 directory rather than "pixmaps" by default. Add new option 5261 <code>--with-pixmapdir</code> to allow these two uses to be 5262 installed concurrently.</li> 5263 5264 <li>modify configure options <code>--with-app-defaults</code> 5265 and <code>--with-icondir</code> to accept "auto" as value to 5266 look for existing directory from well-known locations.</li> 5267 5268 <li>add missing codes for secondary DA response which tell the 5269 type of terminal as in the primary DA response.</li> 5270 5271 <li>update primary DA response for VT420 to include user 5272 windows and horizontal scrolling.</li> 5273 5274 <li>add <code>modifyKeyboard</code> resource to support 5275 keypad-modifier changes per request by Thomas Wolff.</li> 5276 5277 <li>add XK_Home / XK_End to editing-keypad checks</li> 5278 5279 <li>add back-tab key <code>kB</code> to termcap entries to 5280 match the terminfo.</li> 5281 5282 <li>update terminfo to match corresponding entries in ncurses, 5283 e.g., add <code>XT</code> and adjust <code>sgr</code> string 5284 for xterm-bold entry.</li> 5285 5286 <li>add configure options to predefine the most commonly 5287 customized resources for terminal-settings, use those to 5288 substitute into the manpage the corresponding compiled-in 5289 values: <code>altSendsEscape</code>, <code>backarrowKey</code>, 5290 <code>backarrowKeyIsErase</code>, <code>deleteIsDEL</code>, 5291 <code>metaSendsEscape</code> (Redhat #819588).</li> 5292 5293 <li>change default emulation level to VT420 (discussion with 5294 Ailin Nemui).</li> 5295 5296 <li>improve logic for DECSCL; <a href="#xterm_279">patch 5297 279</a> partly enforced limitation of this to higher-level 5298 emulations. This patch finishes that change.</li> 5299 5300 <li>improve check for base of combining characters, preventing 5301 combination when cursor movement has intervened. Mosh's webpage 5302 gives two different examples of this, with other causes 5303 ascribed to the behavior.</li> 5304 5305 <li>modify IL/DL to set cursor to first column on row for 5306 better VT102/VT220 compatibility (prompted by code review of 5307 mosh).</li> 5308 5309 <li>separate state-table entries for DECSC/DECRC from the 5310 ANSI.SYS save/restore cursor, since the latter conflicts with 5311 DECSLRM when DECLRMM is enabled since <a href= 5312 "#xterm_279">patch #279</a> (report/analysis by Ailin 5313 Nemui).</li> 5314 5315 <li>fixes to avoid using <code>SIGCHLD</code> handler of main 5316 program in printer's subprocess (report by Joe Julian).</li> 5317 5318 <li>correct restore-parameter for mouse-modes from <a href= 5319 "#xterm_279">patch #279</a> changes.</li> 5320 5321 <li>add null-pointer checks to input-method caching added in 5322 <a href="#xterm_277">patch #277</a> to fix a problem in the 5323 exposure code, when deselecting a window (report by Kriston 5324 Rehberg).</li> 5325 5326 <li>unset <code>DESKTOP_STARTUP_ID</code> environment variable 5327 to lessen confusion on the part of GTK applications which use 5328 the variable without checking it (report by John Little).</li> 5329 </ul> 5330 5331 <h1><a name="xterm_279" id="xterm_279">Patch #279 - 5332 2012/05/10</a></h1> 5333 5334 <ul> 5335 <li>fill in missing cases in the save/restore modes feature 5336 (report by Thomas Wolff).</li> 5337 5338 <li>add check to ensure that combining characters are 5339 precomposed in the order given (report/analysis by Andries E 5340 Brouwer).</li> 5341 5342 <li>improve workability check for posix_openpt(), to take into 5343 account BSD systems which do not complete initialization until 5344 both sides of the pseudoterminal are opened (report by 5345 Christian Weisgerber).</li> 5346 5347 <li>amend fix for Debian #650291 in <a href="#xterm_277">patch 5348 #277</a> changes to account for different data returned by 5349 vnc4server (Debian #670638).</li> 5350 5351 <li>add check in DECCRA operation to make copies of blinking 5352 text also blink by updating a line-level flag.</li> 5353 5354 <li>modify rectangle operations to work with DECOM.</li> 5355 5356 <li>modify DECSERA to use the current protected state rather 5357 than preserving it.</li> 5358 5359 <li>add <code>precompose</code> resource to allow storing 5360 character data in Normalized Form D as described in <a href= 5361 "http://unicode.org/reports/tr15/">http://unicode.org/reports/tr15/</a> 5362 (report/discussion with Andries E Brouwer).</li> 5363 5364 <li>modify CBT, other ISO-6429 controls which are used by VT520 5365 to work with DECOM.</li> 5366 5367 <li>add HPR and VPR controls, ISO 6429 cursor movement used in 5368 VT520.</li> 5369 5370 <li>remove "linux" restriction for IUTF8 ifdef in main.c 5371 (prompted by Matthew Dempsky posting on 5372 mailing.openbsd.tech).</li> 5373 5374 <li>implement the remaining VT420-level device status 5375 reports.</li> 5376 5377 <li>change DECXCPR to return page 1, rather than 0.</li> 5378 5379 <li>improve VT-level checks on reporting functions, such as 5380 DECXCPR.</li> 5381 5382 <li>change limit on <code>decTerminalID</code> to 525.</li> 5383 5384 <li>fixes to improve vttest vt52 screen when running as a 5385 VT420: 5386 <ul> 5387 <li>add checks for some VT2xx and up controls for 5388 consistency: DECSCL, S1C8T, S1C7T.</li> 5389 5390 <li>modify DECRQSS return for DECSCL to only return that 5391 when running as VT2xx and up.</li> 5392 5393 <li>when exiting from VT52-mode, resume in VT100 level 5394 rather than the level before starting VT52-mode.</li> 5395 </ul> 5396 </li> 5397 5398 <li>implement DECLRMM, DECSLRMM and DECNCSM (prompted by 5399 discussions with Ailin Nemui and Paul LeoNerd Evans). This 5400 modifies several controls to obey top/bottom and left/right 5401 margins.</li> 5402 5403 <li>correct macro definition used for testing modes used in 5404 ANSI/DEC request-mode controls introduced in <a href= 5405 "#xterm_262">patch #262</a>.</li> 5406 5407 <li>modify <code>x_getlogin</code> to check $LOGNAME and $USER 5408 before fallback to <code>getlogin</code>, so that user's choice 5409 for these variables can be carried forward to the xterm process 5410 (Debian #611487).</li> 5411 5412 <li>document DECSCUSR response for DECRQSS in ctlseqs.ms</li> 5413 5414 <li>add <code>zIconTitleFormat</code> resource to allow 5415 customizing the "*** " prefixed to the icon title when the 5416 <code>zIconBeep</code> feature is activated (request by Thomas 5417 Adam).</li> 5418 5419 <li>modify DECSCUSR to update the same internal variable as 5420 RM/SM 12, and document in manpage the two variables used for 5421 controlling blinking cursor (report by Paul LeoNerd 5422 Evans).</li> 5423 5424 <li>correct response data for DECSCUSR in reply for DECRQSS 5425 response, which had inverted the blink-value (reports by Ailin 5426 Nemui, Paul LeoNerd Evans).</li> 5427 5428 <li>add a null-pointer check in <code>OkPasswd</code> macro to 5429 fix a problem in <code>resize</code> with Fedora 17 and a 5430 serial console (report/patch by Daniel Drake).</li> 5431 5432 <li>add workaround for Mac OS X, which loses the window size of 5433 a pseudo-terminal when the tty device is opened 5434 (report/analysis by Egmont Koblinger).</li> 5435 5436 <li>updated configure check for workable 5437 <code>posix_openpt</code> versus <code>grantpt</code>, from 5438 <code>luit</code> fixes.</li> 5439 5440 <li>modify DECIC/DECDC/DECBI/DECFI implemented in <a href= 5441 "#xterm_277">patch #277</a> to enable them only in VT4xx mode 5442 and up (report by Ailin Nemui).</li> 5443 5444 <li>update config.guess, config.sub</li> 5445 </ul> 5446 5447 <h1><a name="xterm_278" id="xterm_278">Patch #278 - 5448 2012/01/18</a></h1> 5449 5450 <ul> 5451 <li>correct initialization for <code>eightBitMeta</code> 5452 resource (FreeBSD #164101).</li> 5453 5454 <li>make special check for Darwin 9 (and lower) to <em>not</em> 5455 use <code>posix_openpt</code> (report by Christian Ebert).</li> 5456 5457 <li>minor fixes (adding ".ne" directives) to reduce the cases 5458 where groff's utility for generating images for tables dumps 5459 core. Most versions of groff (I've found 1.19.2 to be the most 5460 stable) dump core when attempting to report that there are too 5461 few lines on a page for a table to be shown.</li> 5462 </ul> 5463 5464 <h1><a name="xterm_277" id="xterm_277">Patch #277 - 5465 2012/01/07</a></h1> 5466 5467 <ul> 5468 <li>remove special case for ISC pseudo-terminals which attempts 5469 to open the pty in two different ways.</li> 5470 5471 <li>move call to <code>grantpt</code> before asking utempter to 5472 add a record, to work with kFreeBSD which does not update the 5473 terminal's ownership until this point (Debian #652907).</li> 5474 5475 <li>document limitation of XIM interface in manpage (Debian 5476 #230787).</li> 5477 5478 <li>cleanup error reporting with new xtermWarning 5479 function.</li> 5480 5481 <li>add configure option <code>--disable-selection-ops</code> 5482 to make the new actions optional.</li> 5483 5484 <li>add four new actions for making the selection or data 5485 directly copied from the screen (prompted by discussion in 5486 Debian #637001, as well as report by Arjen van Tol): 5487 <ul> 5488 <li>exec-formatted</li> 5489 5490 <li>exec-selectable</li> 5491 5492 <li>insert-formatted</li> 5493 5494 <li>insert-selectable</li> 5495 </ul> 5496 </li> 5497 5498 <li>add <code>visualBellLine</code> resource to allow 5499 <code>visualBell</code> to flash only the current line 5500 (prompted by patch by Gertjan Halkes).</li> 5501 5502 <li>add <code>eightBitMeta</code> resource to control the 5503 features which modify or interpret the eighth bit of a key when 5504 the meta modifier key is pressed (prompted by Debian 5505 #326200).</li> 5506 5507 <li>improve discussion of <code>eightBitInput</code> in the 5508 manpage (prompted by Debian #326200).</li> 5509 5510 <li>correct logic for <code>alt-sends-escape</code> action, 5511 overlooked when implementing <code>altSendsEscape</code> 5512 resource, which still used <code>eightBitInput</code> resource 5513 value.</li> 5514 5515 <li>add a workaround for <code>XAllocColor()</code>, which does 5516 not actually allocate "a read-only colormap entry corresponding 5517 to the closest RGB value supported by the hardware", but rather 5518 a rough approximation (Debian #650291).</li> 5519 5520 <li>undo parameter checks for <code>RequestResize()</code> 5521 added in <a href="#xterm_251">patch #251</a> and amended in 5522 <a href="#xterm_270">patch #270</a>, because zeros also are 5523 special cases (report by John S Urban).</li> 5524 5525 <li>modify some test-scripts to use <code>/bin/echo</code> 5526 rather than the shell's possibly-builtin <code>echo</code>, to 5527 work around broken configuration on Mac OS X, i.e., neither 5528 honoring the option nor flagging an error.</li> 5529 5530 <li>add SGR 1006, as a better technical solution than SGR 1015: 5531 <ul> 5532 <li>the responses will not be confused with line-deletion 5533 and scrolling controls.</li> 5534 5535 <li>the button encoding is a little simpler, since it does 5536 not add an unnecessary 32 because the integer parameter 5537 does not have to be represented as a printable 5538 character.</li> 5539 5540 <li>the control responses for pressing and releasing a 5541 mouse button differ, allowing an application to tell which 5542 button was released.</li> 5543 </ul> 5544 5545 <p>Besides these improvements, in discussion, it was noted 5546 that urxvt's implementation of 1005 is incorrect, relying 5547 upon a locale that provides UTF-8 encoding. In contrast, 5548 vttest demonstrates a correct decoding, independent of 5549 locale.</p> 5550 </li> 5551 5552 <li>add support for urxvt SGR 1015 to address shortcoming of 5553 SGR 1005 with luit (patch by Egmont Koblinger).</li> 5554 5555 <li>add ISO and DEC controls useful for left/right 5556 scrolling.</li> 5557 5558 <li>add some changes for OpenBSD and MirBSD (adapted from patch 5559 by Thorsten Glaser): 5560 <ul> 5561 <li>disable search for non-Unix96 ptys.</li> 5562 5563 <li>fix a gcc warning in 5564 <code>timestamp_filename</code></li> 5565 5566 <li>modify <code>Imakefile</code> to install xterm setgid 5567 to utmp.</li> 5568 </ul> 5569 </li> 5570 5571 <li>add/use/prefer <code>posix_openpt()</code> for opening 5572 pseudo-terminal.</li> 5573 5574 <li>modify special errno handling case in ptydata.c from 5575 <a href="#xterm_158">patch #158</a> to allow for the 5576 possibility that any platform may have special cases where 5577 "/dev/tty" is absent. For example, this can happen in a FreeBSD 5578 jail (patch by David Wolfskill).</li> 5579 5580 <li>add keyboard logic to map shift-tab into XK_ISO_Left_Tab, 5581 which is usually, not always, done by the X keyboard 5582 configuration.</li> 5583 5584 <li>portability fixes for some configure macros: 5585 <code>CF_XOPEN_SOURCE</code></li> 5586 </ul> 5587 5588 <h1><a name="xterm_276" id="xterm_276">Patch #276 - 5589 2011/10/10</a></h1> 5590 5591 <ul> 5592 <li>modify clipping limits for TrueType fonts to account for 5593 the <code>scaleHeight</code> resource setting, to work around 5594 another problem due to recent FreeType changes. In this case, 5595 the <code>DejaVu Sans Mono</code> set to pixelsize=13.5 is 5596 truncated because the font descent is reduced by FreeType to 5597 match an incorrect height metric (report by Adam Lee).</li> 5598 5599 <li>improve recovery when bitmap fonts are not installed, e.g., 5600 so that switching font-sizes works for TrueType fonts.</li> 5601 5602 <li>modify lookup for <code>XTERM_SHELL</code> feature to allow 5603 relative pathnames.</li> 5604 5605 <li>modify abbreviation disambiguation check for command-line 5606 parameters to account for <code>-geometry</code>, whose 5607 parameter may begin with "+" or "-" (report by Scott 5608 Bertilson).</li> 5609 </ul> 5610 5611 <h1><a name="xterm_275" id="xterm_275">Patch #275 - 5612 2011/09/11</a></h1> 5613 5614 <ul> 5615 <li>add <code>ash</code>, <code>zsh</code> to known shells for 5616 <code>resize</code>.</li> 5617 5618 <li>modify <code>resize</code> to reuse the logic from 5619 <code>xterm</code> which determines the actual logon-user's 5620 shell if <code>$SHELL</code> is not set.</li> 5621 5622 <li>revert the <code>unsetenv("SHELL")</code> added in <a href= 5623 "#xterm_272">patch #272</a>.</li> 5624 5625 <li>an <code>unsetenv("SHELL")</code> added in <a href= 5626 "#xterm_272">patch #272</a> to help ensure that 5627 <code>luit</code> would get the user's shell consistently did 5628 not work as expected for cases where multiple names are in the 5629 password-file for a given uid. That was because changes in 5630 <a href="#xterm_157">patch #157</a> to handle this situation 5631 did not take into account that repeated calls to 5632 <code>getpwnam</code> and <code>getpwuid</code> return a 5633 pointer to the same static buffer. Fixed the older logic to 5634 work as intended, by ensuring that the passwd-data from each 5635 call is stored separately (report by Paul Keusemann).</li> 5636 5637 <li>adjust ifdef's for <code>putenv</code> and 5638 <code>unsetenv</code> in case only one of those is provided on 5639 a given platform.</li> 5640 5641 <li>correct comparison used in <code>ExposeContains</code> 5642 macro from <a href="#xterm_274">patch #274</a> changes, to 5643 handle window-dragging (patch by Todd Eigenschink).</li> 5644 </ul> 5645 5646 <h1><a name="xterm_274" id="xterm_274">Patch #274 - 5647 2011/09/05</a></h1> 5648 5649 <ul> 5650 <li>portability fixes for cygwin: do not define 5651 <code>SVR4</code>, and work around nonstandard header 5652 location.</li> 5653 5654 <li>ifdef'd use of <code>unsetenv</code> from <a href= 5655 "#xterm_273">patch #273</a> changes to work with Solaris 9 5656 (report by Waldemar Rachwal).</li> 5657 5658 <li>modify logic for <code>XtAppPending</code> to merge 5659 adjacent <code>Expose</code> and <code>ConfigureNotify</code> 5660 events which are redundant (report by Edward McGuire).</li> 5661 5662 <li>fix an unneeded warning message when <code>-r</code> option 5663 is given.</li> 5664 5665 <li>remove a few redundant entries from table used for helping 5666 abbreviation-checking of command-line options, makes 5667 <code>-geom</code> work again after <a href="#xterm_272">patch 5668 #272</a> changes as an abbreviation of 5669 <code>-geometry</code>.</li> 5670 5671 <li>add <code>scaleHeight</code> resource and command-line 5672 option <code>-sh</code> as workaround for some 5673 font-configurations broken by changes in FreeType 2.4.6 (report 5674 by Miroslav Hodak).</li> 5675 5676 <li>portability fixes for some configure macros: 5677 <code>CF_FUNC_TGETENT</code>, <code>CF_XOPEN_SOURCE</code>, 5678 <code>CF_X_ATHENA_LIBS</code>.</li> 5679 5680 <li>add configure option <code>--with-freetype-config</code> to 5681 improve selection over the plethora of configuration options 5682 which freetype has so far provided.</li> 5683 5684 <li>build-fix for configure <code>--enable-load-vt-fonts</code> 5685 when <code>--enable-widec</code> is not specified.</li> 5686 5687 <li>build-fixes for suppressing various features, needed after 5688 changes in patches 270, 271 and 272 (report by Brian 5689 Lindholm)</li> 5690 </ul> 5691 5692 <h1><a name="xterm_273" id="xterm_273">Patch #273 - 5693 2011/08/25</a></h1> 5694 5695 <ul> 5696 <li>build-fix for out-of-tree "make docs" rule.</li> 5697 5698 <li>correct a typo in <code>x_strdup</code>, from <a href= 5699 "#xterm_198">patch #198</a> changes.</li> 5700 5701 <li>correct initialization for <code>-e</code> option, broken 5702 in <a href="#xterm_272">patch #272</a> changes (report by 5703 Gabriele Balducci).</li> 5704 5705 <li>build-fix for out-of-tree builds to address 5706 <code>minstall</code> script changes in <a href= 5707 "#xterm_272">patch #272</a> (patch by Thierry Reding).</li> 5708 </ul> 5709 5710 <h1><a name="xterm_272" id="xterm_272">Patch #272 - 5711 2011/08/24</a></h1> 5712 5713 <ul> 5714 <li>document limitation of <code>Gtk</code> in connection with 5715 xterm's <code>-into</code> option, in the manpage (Ubuntu 5716 #806969).</li> 5717 5718 <li>improve <code>-into</code> by checking for and using the 5719 size of the window within which xterm is embedded, overriding 5720 other clues.</li> 5721 5722 <li>modify logic for <code>localeFilter</code> resource to 5723 allow that to include command-line options of luit.</li> 5724 5725 <li>improve <code>-into</code> by checking for invalid 5726 window-id, and allowing hexadecimal/decimal/octal values.</li> 5727 5728 <li>improve <code>keepSelection</code>, adding the case where 5729 the highlighting is cleared, overlooked in <a href= 5730 "#xterm_230">patch #230</a> (patch by Marco Peereboom).</li> 5731 5732 <li>improve command-line parsing to make abbreviate options 5733 work consistently across xterm-specific versus standard X 5734 toolkit options, and report cases where an abbreviated option 5735 happens to be ambiguous. In particular, <code>-d</code> now 5736 works as an abbreviation for <code>-display</code>.</li> 5737 5738 <li>fix regression in command-line parsing introduced in 5739 <a href="#xterm_271">patch #271</a> changes for Debian #629358, 5740 (Debian #637910).</li> 5741 5742 <li>split-out new termcap/terminfo building block 5743 <code>xterm+kbs</code> for configurability.</li> 5744 5745 <li>modify <code>terminfo</code> file to reflect changes in 5746 ncurses for <code>xterm-16color</code> and 5747 <code>xterm-256color</code>.</li> 5748 5749 <li>modify <code>minstall.sh</code>, etc., to reflect the 5750 default default class, <code>$TERM</code> and 5751 <code>decTerminalID</code> values.</li> 5752 5753 <li>reword <code>resize</code> manpage to reflect the fact that 5754 <code>$TERMCAP</code> is not set on all systems (patch by Alan 5755 Coopersmith).</li> 5756 5757 <li>work around combined Xaw6/Xaw7 package in DragonFlyBSD 5758 which omits the usual symbolic link to the preferred library 5759 name.</li> 5760 5761 <li>further improve build-fix for termcap systems by checking 5762 for some which are only partial implementations, e.g., termcap 5763 2.08 in CentOS 5.2</li> 5764 </ul> 5765 5766 <h1><a name="xterm_271" id="xterm_271">Patch #271 - 5767 2011/07/14</a></h1> 5768 5769 <ul> 5770 <li>omit permissions adjustments to pty on exit except for 5771 pre-Unix98 ptys, since modern implementations handle this 5772 (report by Sean C Farley).</li> 5773 5774 <li>modify logic for switching fonts between UTF-8 and 5775 non-UTF-8 encoding to not merge the derivable bold-, wide- and 5776 widebold values from the VT100 fonts. Also suppress warning 5777 when not using UTF-8 fonts if wide- and widebold-fonts cannot 5778 be derived or otherwise loaded (report by Werner 5779 Scheinast).</li> 5780 5781 <li>modify menu-creation to suppress entries which will never 5782 be used in the current configuration, rather than simply 5783 disabling them.</li> 5784 5785 <li>add resource <code>printModeImmediate</code> and menu item 5786 to allow print of screen plus saved lines to a file.</li> 5787 5788 <li>add menu item to allow runtime enable/disable of the 5789 <code>printFileOnXError</code> feature.</li> 5790 5791 <li>append a timestamp to filename used in 5792 <code>printFileOnXError</code> feature, and restrict its 5793 permissions (request by Vincent Lefèvre).</li> 5794 5795 <li>add a check when cancelling cursor-blinking, in case the 5796 cursor is blinked off. Fix so that the cursor is repainted 5797 without waiting for other events, e.g., keypress (report by 5798 Ailin Nemui).</li> 5799 5800 <li>add configure <code>--with-app-class</code> option, to 5801 simplify building "xterm-dev" packages with filenames that do 5802 not conflict with conventional "xterm" packages.</li> 5803 5804 <li>corrected logic flow for DECSCL, which prevented the 5805 updated operating level from being reported via DECRQSS (report 5806 by Ailin Nemui).</li> 5807 5808 <li>corrected default for <code>brokenStringTerm</code> 5809 resource to match manpage.</li> 5810 5811 <li>add vttests/dynamic.pl</li> 5812 5813 <li>add runtime check for locale not supported by X libraries, 5814 and fallback to XA_STRING in this case (request by Bryan 5815 Henderson).</li> 5816 5817 <li>fix a special case in configure script after no FreeType 5818 libraries are found. The script was proceeding to check for a 5819 usable configuration.</li> 5820 5821 <li>add <code>xterm+tmux</code> building block to terminfo 5822 (adapted from changes proposed by Ailin Nemui and Nicholas 5823 Marriott).</li> 5824 5825 <li>improve discussion of <code>faceName</code> resource in 5826 manpage (adapted from suggestions by Jens Schweikhardt).</li> 5827 5828 <li>correct mapping of shifted up/down cursor-keys in termcap 5829 function-keys mode, i.e., resource 5830 <code>tcapFunctionKeys</code> (patch by Gertjan Halkes).</li> 5831 5832 <li>update AIX case in <code>CF_XOPEN_SOURCE</code> configure 5833 macro to add release 7.x.</li> 5834 5835 <li>modify ifdef's in <code>xterm_io.h</code> for 5836 <code>__hpux</code> to force that to use the hacked SYSV 5837 support in that file. This fixes a problem with a non-blocking 5838 socket call (patch by Paul Lampert).</li> 5839 5840 <li>improve filtering of desktop category scanning, to exclude 5841 XFCE.</li> 5842 5843 <li>modify configure script to work with systems that have both 5844 ncurses (or other terminfo) as well as a real termcap library, 5845 e.g., Slackware (report by Andrew Watts).</li> 5846 5847 <li>modify configure script to work around special case where 5848 user's environment adds compiler flags to the <code>CC</code> 5849 variable (prompted by report by Paul Lampert).</li> 5850 5851 <li>amend change for Debian #110226 so that "-h" or "-v" 5852 options cause an exit, rather than simply printing to stdout 5853 while the window is displayed (Debian #629358).</li> 5854 5855 <li>add response for <code>DECRQSS</code> which gives the 5856 setting for <code>DECSCUSR</code>.</li> 5857 5858 <li>modify AllocateTermColor() to handle 5859 <code>XtDefaultForeground</code> and 5860 <code>XtDefaultBackground</code>, which are not recognized by 5861 <code>XParseColor</code>. For example, this fixes the use of 5862 OSC 112 when no explicit cursor color was set (report by 5863 Ailin Nemui).</li> 5864 5865 <li>handle special-case of <code>KeyPress</code> translated to 5866 <code>popup-menu</code> action (Ubuntu #756273).</li> 5867 </ul> 5868 5869 <h1><a name="xterm_270" id="xterm_270">Patch #270 - 5870 2011/04/26</a></h1> 5871 5872 <ul> 5873 <li>build-fix, e.g., for using <code>imake</code> on platforms 5874 which use the termcap library.</li> 5875 5876 <li>modify <code>utf8</code> resource to accept a name.</li> 5877 5878 <li>mention default for <code>fontWarnings</code> in manpage 5879 (report by Werner Scheinast).</li> 5880 5881 <li>split "UTF-8" menu entry into "UTF-8 Encoding" and "UTF-8 5882 Fonts" (prompted by discussion with Werner Scheinast).</li> 5883 5884 <li>gray-out font-menu entries when a font fails to load, e.g., 5885 a bitmap font is not installed.</li> 5886 5887 <li>improve behavior when there is no app-defaults file: 5888 <ul> 5889 <li>set the <code>toolBar</code> resource to false</li> 5890 5891 <li>gray-out the font menu entries where no resource is 5892 found.</li> 5893 </ul> 5894 </li> 5895 5896 <li>add configure option <code>--with-desktop-category</code> 5897 to allow customization of the ".desktop" files.</li> 5898 5899 <li>build-fix for the <code>install-desktop</code> 5900 makefile-rule, when the source/build directories differ (patch 5901 by Loïc Minier).</li> 5902 5903 <li>add menu entry and corresponding resource which can be used 5904 to suppress all bold-fonts (discussion with Jan 5905 Engelhardt).</li> 5906 5907 <li>make internal line-size value consistent with allocated 5908 sizes of character and related arrays to ensure that bulk 5909 copying of line data, e.g., in scrolling, accounts for the 5910 padding used for pointer alignment (adapted from patch by 5911 Rajesh Mandalemula, also reported by Ali Bahar).</li> 5912 5913 <li>widen ifdef for screen-resizing logic from <a href= 5914 "#xterm_176">patch #176</a> changes to send 5915 <code>SIGWINCH</code> to process group to include any system 5916 supporting <code>ioctl(*,TIOCGPGRP,*)</code> (prompted by 5917 linux-specific patch in OpenSUSE rpm package).</li> 5918 5919 <li>add <code>printModeOnXError</code> and 5920 <code>printFileOnXError</code> resources, which allow the user 5921 to specify that xterm will write the contents of its screen to 5922 a file if it is exiting due to an X error (Debian 5923 #280457).</li> 5924 5925 <li>restore logic that made reverse-video apply to the 5926 scrollbar's foreground/background, broken in <a href= 5927 "#xterm_158">patch #158</a> (report by Bryan Ischo).</li> 5928 5929 <li>amend some of the window operations parameter-checks added 5930 in <a href="#xterm_251">patch #251</a> for the push/pop title 5931 feature, to allow the parameters used for window resizing to be 5932 -1's, which makes the corresponding values ignored rather than 5933 using the window's maximum width/height (report by Noah 5934 Friedman).</li> 5935 5936 <li>correct order of initialization for 5937 <code>translations</code> vs <code>fullscreen</code> resources 5938 to enable a special case which omits the Alt-Enter translation 5939 when <code>fullscreen</code> is disabled (Debian #612978).</li> 5940 5941 <li>update config.guess, config.sub</li> 5942 </ul> 5943 5944 <h1><a name="xterm_269" id="xterm_269">Patch #269 - 5945 2011/02/19</a></h1> 5946 5947 <ul> 5948 <li>build-fixes for <code>imake</code> (report by Heiko 5949 Berges).</li> 5950 5951 <li>modify autoconf macro CF_PKG_CONFIG to work with 5952 cross-compile environments (patch by Thierry Reding).</li> 5953 5954 <li>modify <code>MapToColorMode()</code> to favor bold over 5955 underline, matching the precedence used before <a href= 5956 "#xterm_252">patch #252</a> (report/analysis by Nicolas 5957 George).</li> 5958 5959 <li>add <code>omitTranslation</code> resource, which can be 5960 used to suppress the default translations for these features: 5961 <ul> 5962 <li>fullscreen</li> 5963 5964 <li>scroll-lock</li> 5965 5966 <li>shift-fonts</li> 5967 5968 <li>wheel-mouse</li> 5969 </ul> 5970 </li> 5971 5972 <li>make the fullscreen feature configurable (Debian #612978) 5973 <ul> 5974 <li>add it to the configurable list 5975 <code>disallowedWindowOps</code>.</li> 5976 5977 <li>add command-line option <code>-fullscreen</code> to 5978 allow the feature to be enabled at startup.</li> 5979 5980 <li>add resource <code>fullscreen</code> to control whether 5981 the feature is active or may be enabled.</li> 5982 </ul> 5983 </li> 5984 5985 <li>modify <code>probe_netwm_fullscreen_capability</code> for 5986 64-bit machines. Contrary to <code>XGetWindowProperty</code> 5987 manpage, that function returns 32-bit data packed as 5988 <code>long</code>'s.</li> 5989 5990 <li>eliminate copy of <code>name</code> resource, which was 5991 otherwise used only to give the terminal-description name for 5992 the tcap-query feature. Use the actual <code>$TERM</code> value 5993 instead, as derived from <code>termName</code> resource, 5994 etc.</li> 5995 5996 <li>eliminate an old inconsistency with error messages, some 5997 used the <code>-name</code> option, while others used 5998 <code>argv[0]</code>. The latter is now used consistently.</li> 5999 6000 <li>improve configure check for rpath-hack, to improve builds 6001 on systems where gcc will not search /usr/local/lib, etc.</li> 6002 6003 <li>build-fix for Xaw3d configuration (report by H Merijn 6004 Brand).</li> 6005 6006 <li>update config.guess, config.sub</li> 6007 </ul> 6008 6009 <h1><a name="xterm_268" id="xterm_268">Patch #268 - 6010 2011/02/10</a></h1> 6011 6012 <ul> 6013 <li>fix an inconsistency of the "Enable Reverse Video" checkbox 6014 in the VT Options menu. This also removes a special case added 6015 in <a href="#xterm_217">patch #217</a> which limited the effect 6016 of the <code>reverseVideo</code> resource (Debian 6017 #603808).</li> 6018 6019 <li>amend decoding of misformed UTF-8 sequences to avoid 6020 absorbing valid characters as documented in Unicode 6.0 section 6021 3.9 (report by Keith Winstein).</li> 6022 6023 <li>do not set urgency hint when window already has focus 6024 (patch by Dimitrios Christidis).</li> 6025 6026 <li>amend extended mouse-coordinate mode from <a href= 6027 "#xterm_262">patch #262</a> changes to include the <em>Cb</em> 6028 button-code, which also may be greater than 127 (report by 6029 Ailin Nemui).</li> 6030 6031 <li>ensure that underline-cursor is visible when an application 6032 happens to set the background color (report by Christian 6033 Weisgerber).</li> 6034 6035 <li>add feature for <a href= 6036 "http://www.davidsimmons.com/soft/xtermhacks/xterm-fullscreen.patch"> 6037 full-screen toggling</a> using either Alt-Enter or a menu 6038 selection (integrated patch by Dave Simmons).</li> 6039 6040 <li>add missing logic to handle reallocation of FIFO index for 6041 the "UTF-8" menu entry (report by David Holland, NetBSD 6042 #44344).</li> 6043 6044 <li>add makefile rules <code>docs-ctlseqs</code>, 6045 <code>docs-xterm</code>, etc.</li> 6046 6047 <li>correct typo in description of DECRPM in control sequences 6048 document (report by Ailin Nemui).</li> 6049 </ul> 6050 6051 <h1><a name="xterm_267" id="xterm_267">Patch #267 - 6052 2010/11/20</a></h1> 6053 6054 <ul> 6055 <li>minor formatting changes to ctlseqs.ms to simplify a script 6056 which extracts the feature information. See the results in 6057 <a href= 6058 "https://invisible-island.net/xterm/xterm.faq.html#compare_versions"> 6059 Comparing versions, by counting controls</a> in the xterm 6060 FAQ.</li> 6061 6062 <li>add <code>docs-clean</code> makefile rule.</li> 6063 6064 <li>add <code>copy-selection</code> action (request by Timo 6065 Juhani Lindfors, Debian #588785).</li> 6066 6067 <li>trim leading/trailing blanks from string used for 6068 "Selection" font-menu data.</li> 6069 6070 <li>trim leading/trailing blanks from color resource 6071 values.</li> 6072 6073 <li>configure script improvements: 6074 <ul> 6075 <li>add workaround for removal of X11 dependency from Xt's 6076 package file (report by Robert Hooker).</li> 6077 6078 <li>add workaround for removal of fontconfig dependency 6079 from Xft's package file (report by Jeremy Huddleston).</li> 6080 6081 <li>add workaround for removal of Xmu dependency from Xaw's 6082 package file (report by Jeremy Huddleston).</li> 6083 6084 <li>improve workaround in <code>CF_X_TOOLKIT</code> macro, 6085 checking for other possible packages where Xt's 6086 dependencies may be given.</li> 6087 6088 <li>prefer <code>${name:=value}</code> to 6089 <code>${name-value}</code>, since recent bash changes break 6090 legacy support for that feature.</li> 6091 </ul> 6092 </li> 6093 </ul> 6094 6095 <h1><a name="xterm_266" id="xterm_266">Patch #266 - 6096 2010/10/24</a></h1> 6097 6098 <ul> 6099 <li>add rpm and dpkg scripts, for testing.</li> 6100 6101 <li>more fixes for Debian #600707 (report by Cyril 6102 Brulebois).</li> 6103 </ul> 6104 6105 <h1><a name="xterm_265" id="xterm_265">Patch #265 - 6106 2010/10/22</a></h1> 6107 6108 <ul> 6109 <li>fix a regression in fontname logic from <a href= 6110 "#xterm_263">patch #263</a> changes (Debian #600707, reported 6111 by Vincent Lefèvre).</li> 6112 6113 <li>revert modification of any-event/any-button protocol from 6114 <a href="#xterm_263">patch #263</a> changes. It interferes with 6115 selection using a shifted mouse button (reports by Neil Bird, 6116 Bram Moolenaar).</li> 6117 </ul> 6118 6119 <h1><a name="xterm_264" id="xterm_264">Patch #264 - 6120 2010/10/14</a></h1> 6121 6122 <ul> 6123 <li>replace a null-pointer check with check for empty string in 6124 <code>xtermOpenFont</code>, to eliminate a warning message from 6125 <a href="#xterm_263">patch #263</a> changes.</li> 6126 6127 <li>build-fix for <a href="#xterm_263">patch #263</a> when 6128 toolbar is not configured (patch by Chris Clayton) (reports by 6129 Robby Workman, David Wood).</li> 6130 </ul> 6131 6132 <h1><a name="xterm_263" id="xterm_263">Patch #263 - 6133 2010/10/13</a></h1> 6134 6135 <ul> 6136 <li>corrected initialization of "misc" resource values, to 6137 ensure that xterm has allocated a copy of strings which may not 6138 have been malloc'd by the X library (Debian #600129).</li> 6139 6140 <li>modify handling of any-event/any-button mouse protocol; it 6141 now is active with any combination of key-modifiers.</li> 6142 6143 <li>add debugging feature <code>showWrapMarks</code>, which 6144 marks lines which xterm knows are wrapped, showing where a 6145 double-click will select past the end of a line.</li> 6146 6147 <li>build-fix to address change in include-guards for 6148 <code>Xlib.h</code> in ongoing Xorg edits (patch by Jeremy 6149 Huddleston).</li> 6150 6151 <li>improve <code>pointerMode</code> by continuing to watch for 6152 motion events after mouse tracking is disabled if the pointer 6153 is hidden (Debian #594856).</li> 6154 6155 <li>further extend initialization for active-icon font to check 6156 if the font was not loaded successfully, to retry with 6157 <code>font1</code>, or as even (if TrueType fonts are used) to 6158 use a TrueType font. The retries are to help with cases as in 6159 <a href="#xterm_241">patch #241</a> where the bitmap fonts are 6160 not available.</li> 6161 6162 <li>fix special case of active-icon used when TrueType font is 6163 specified for the xterm window, from <a href="#xterm_261">patch 6164 #261</a> change. In that case, the default font's size was used 6165 for layout of the active icon's window (Debian #591265).</li> 6166 </ul> 6167 6168 <h1><a name="xterm_262" id="xterm_262">Patch #262 - 2010/8/30</a></h1> 6169 6170 <ul> 6171 <li>fix a case where changing the cursor color via escape 6172 sequences did not immediately update the screen (report by 6173 Andreas Wagner).</li> 6174 6175 <li>implement ANSI and DEC request-mode control sequences. The 6176 latter includes the xterm-specific private modes such as the 6177 mouse mode. The feature is ifdef'd with the rectangle 6178 operations since its decoding overlaps that feature.</li> 6179 6180 <li>correct typo in ctlseqs.ms for response of OSC 21 (patch by 6181 Kevin Schoedel).</li> 6182 6183 <li>improve discussion of mouse tracking in ctlseqs.ms</li> 6184 6185 <li>increase an array limit used in reporting mouse events 6186 (report by Ryan Johnson).</li> 6187 6188 <li>add extended mouse-coordinates mode, allowing up to 6189 2015x2015 windows, using UTF-8 encoding (patch by Ryan 6190 Johnson).</li> 6191 6192 <li>modify manpage hyphens to conform with <a href= 6193 "http://lintian.debian.org/tags/hyphen-used-as-minus-sign.html"> 6194 Debian</a>.</li> 6195 </ul> 6196 6197 <h1><a name="xterm_261" id="xterm_261">Patch #261 - 2010/6/28</a></h1> 6198 6199 <ul> 6200 <li>fix regression in <code>renderFont</code> logic, from 6201 <a href="#xterm_260">patch #260</a> changes (report by Joseph 6202 Quinsey).</li> 6203 </ul> 6204 6205 <h1><a name="xterm_260" id="xterm_260">Patch #260 - 2010/6/20</a></h1> 6206 6207 <ul> 6208 <li>modify <code>plink.sh</code> to work around problem linking 6209 to recent PCRE libraries.</li> 6210 6211 <li>extend <code>renderFont</code> resource to allow deferred 6212 switch to TrueType fonts without affecting existing resource 6213 settings (Debian #585620).</li> 6214 6215 <li>modify configure macro CF_X_TOOLKIT to work around omission 6216 of ICE library from ".pc" file (report by Miroslav 6217 Lichvar).</li> 6218 6219 <li>change configure script default for 6220 <code>--enable-broken-st</code> i.e., the 6221 <code>brokenStringTerm</code> feature) to normally enable it. 6222 If the corresponding resource is enabled, this feature 6223 eliminates an apparent freeze of xterm when sending mis-encoded 6224 data to the screen (Debian #584801).</li> 6225 6226 <li>document in manpage some actions which were overlooked: 6227 <ul> 6228 <li>readline-button</li> 6229 6230 <li>scroll-lock</li> 6231 6232 <li>set-8-bit-control</li> 6233 </ul> 6234 </li> 6235 6236 <li>undo a change to limit-check in <code>ScrnRefresh</code> in 6237 <a href="#xterm_257">patch #257</a>, which broke 6238 <code>fastScroll</code> feature (Debian #584841).</li> 6239 6240 <li>modify handling of <code>brokenLinuxOSC</code> and 6241 <code>brokenStringTerm</code> to also sound the bell.</li> 6242 6243 <li>add control/D and control/Q to controls which will cause 6244 early exit from control string per 6245 <code>brokenStringTerm</code> resource.</li> 6246 6247 <li>improve documentation of <code>brokenStringTerm</code> 6248 resource in manpage.</li> 6249 </ul> 6250 6251 <h1><a name="xterm_259" id="xterm_259">Patch #259 - 2010/6/5</a></h1> 6252 6253 <ul> 6254 <li>modify configure check for <a href= 6255 "https://invisible-island.net/luit/">luit</a> to include new 6256 aliases for the program (<code>xterm-filter</code> and 6257 <code>bluit</code>).</li> 6258 6259 <li>add workaround in <code>xtermClearLEDs()</code> to account 6260 for Xkb's override, making vttest's LED demo reset the scroll 6261 lock.</li> 6262 6263 <li>filter out client-message events when deciding whether to 6264 hide cursor, e.g., when using SCIM (patch/report by anonymous 6265 user).</li> 6266 6267 <li>improve description of <code>-bd</code> option in manpage 6268 (report by Guy Daniel Clotilde).</li> 6269 6270 <li>modify configure checks for PCRE and other libraries to use 6271 <code>pkg-config</code>, if available.</li> 6272 6273 <li>amend change from <a href="#xterm_252">patch #252</a>, to 6274 take <code>veryColorColors</code> resource into account when 6275 checking <code>colorBDMode</code> resource for TrueType fonts 6276 (report by anonymous user).</li> 6277 6278 <li>add <code>vttests/query-fonts.pl</code> script for 6279 demonstrating the <code>OSC 50</code> font query.</li> 6280 6281 <li>improve manpage discussion of Scroll Lock feature.</li> 6282 6283 <li>improve configure macros CF_GCC_VERSION and 6284 CF_GCC_WARNINGS.</li> 6285 6286 <li>fix warnings for "clang --analyze".</li> 6287 6288 <li>change default for <code>allowScrollLock</code> resource to 6289 <code>false</code>, noting that the supposedly unused key has 6290 been useful for various rebindings (Debian #580946).</li> 6291 </ul> 6292 6293 <h1><a name="xterm_258" id="xterm_258">Patch #258 - 2010/5/1</a></h1> 6294 6295 <ul> 6296 <li>add pointer-checks in <code>ScrnRefresh</code> to fix a 6297 case in rapid scrolling where an empty record is fetched from 6298 the scrollback FIFO.</li> 6299 </ul> 6300 6301 <h1><a name="xterm_257" id="xterm_257">Patch #257 - 2010/4/22</a></h1> 6302 6303 <ul> 6304 <li>correct ctlseqs.ms description of OSC 17 and OSC 19 (patch 6305 by Emanuele Giaquinta).</li> 6306 6307 <li>corrected logic for <code>menuLocale</code> resource; the 6308 <code>setlocale</code> function returns the original locale 6309 only when querying.</li> 6310 6311 <li>improve filtering of translations resource, narrowing the 6312 scope of the <code>alwaysUseMods</code> to address only the 6313 translations that would cause a key to be sent to the host 6314 (report by Andrew Gaylard).</li> 6315 6316 <li>change default value of <code>menuLocale</code> resource to 6317 "C", to work around longstanding <a href= 6318 "https://invisible-island.net/xterm/xterm.faq.html#slow_menus">Xorg 6319 bug</a>.</li> 6320 6321 <li>modify handling of <code>scrollKey</code> feature to ignore 6322 XON/XOFF keys.</li> 6323 6324 <li>implement scroll-lock feature.</li> 6325 6326 <li>revise memory allocation in UTF8toLatin1() to fix an 6327 out-of-bounds index (Mandriva #54531).</li> 6328 6329 <li>compute value for first wide-character rather than assuming 6330 it is 256, fixes problem with <code>-cjk_width</code> 6331 introduced in patches <a href="#xterm_242">242</a> and <a href= 6332 "#xterm_249">249</a> (report by Thomas Wolff).</li> 6333 6334 <li>improve configure script: 6335 <ul> 6336 <li>corrected check for <code>_XOPEN_SOURCE</code> for 6337 OpenSolaris.</li> 6338 6339 <li>when possible, add rpath option for libraries in 6340 unusual places</li> 6341 6342 <li>add configure option <code>--disable-rpath-hack</code> 6343 to control whether the rpath option can be added.</li> 6344 </ul> 6345 </li> 6346 6347 <li>modify <code>AllocateTermColor()</code> to separate 6348 initialization from control sequences, fixing problem from 6349 <a href="#xterm_254">patch #254</a> changes where enabling 6350 <code>allowSendEvents</code> resource prevents setting cursor 6351 color on command-line (Debian #572928).</li> 6352 6353 <li>amend logic from <a href="#xterm_185">patch #185</a> to not 6354 reallocate cell-array if processing 6355 <code>ESC % G</code> to switch from UTF-8 if already 6356 in ISO-8859-1 character set (report by Michael Koehne).</li> 6357 6358 <li>fix to avoid calling <code>XmuInternStrings()</code> with 6359 zero count (report by Johan Bockgård).</li> 6360 6361 <li>fix build when --disable-ansi-color configure option is 6362 used.</li> 6363 6364 <li>fix build when neither OPT_TCAP_QUERY or OPT_TCAP_FKEYS is 6365 defined (patch by Matthieu Herrb)</li> 6366 </ul> 6367 6368 <h1><a name="xterm_256" id="xterm_256">Patch #256 - 2010/3/6</a></h1> 6369 6370 <ul> 6371 <li>add TerminalEmulator to desktop category files.</li> 6372 6373 <li>modify <code>sinstall.sh</code> to ignore the "." appended 6374 to permissions by selinux.</li> 6375 6376 <li>change app-defaults organization, installing UXTerm-color 6377 and KOI8XTerm-color for consistent behavior regarding 6378 <code>customization: color</code> (prompted by discussion 6379 in Ubuntu #421261).</li> 6380 6381 <li>fix typo in <code>minstall.sh</code> from <a href= 6382 "#xterm_255">patch #255</a> changes, and add case for 6383 <code>/var/run</code> needed for full path of utmp (report by 6384 Julien Cristau).</li> 6385 6386 <li>minor fix to xterm manpage, remove a comment stating that 6387 margin bell can be changed via the VT Options menu. That was 6388 replaced in <a href="#xterm_225">patch #225</a></li> 6389 6390 <li>add a "docs" rule to makefile.</li> 6391 6392 <li>fix initialization of Atom used for <code>XkbBell</code> 6393 feature from <a href="#xterm_243">patch 243</a> changes. Unlike 6394 the other calls to <code>XInternAtom()</code>, in this case the 6395 flag telling X to create the Atom was unset (patch by Chris 6396 Adams).</li> 6397 </ul> 6398 6399 <h1><a name="xterm_255" id="xterm_255">Patch #255 - 2010/1/21</a></h1> 6400 6401 <ul> 6402 <li>rename <code>install.sh</code> to <code>install-sh</code> 6403 in case suffix-rules might interfere.</li> 6404 6405 <li>extend range for <code>convertToUTF8</code> function to 6406 full 31-bits, to use with printing, etc.</li> 6407 6408 <li>improve manpage by checking for actual locations of 6409 utmp/wtmp files (Debian #562640).</li> 6410 6411 <li>modify configure macro CF_XOPEN_SOURCE to remove -D's 6412 before adding the same name rather than relying on -U's, to 6413 reduce redefinition warnings for some platforms that have 6414 conflicting definitions in headers.</li> 6415 6416 <li>correct logic used to switch to alternate screen using 6417 FIFO-lines configuration (Debian #565772).</li> 6418 6419 <li>update config.guess, config.sub</li> 6420 </ul> 6421 6422 <h1><a name="xterm_254" id="xterm_254">Patch #254 - 2010/1/6</a></h1> 6423 6424 <ul> 6425 <li>add a configure-check to eliminate <code>install-ti</code> 6426 rule from Makefile when the system has no tic (terminfo 6427 compiler) program. This lets one use the 6428 <code>install-full</code> rule more consistently.</li> 6429 6430 <li>amend change to WriteText() function in <a href= 6431 "#xterm_252">patch #252</a> to take into account the 6432 <code>colorAttrMode</code> resource (report by Krzysztof 6433 Kotlenga).</li> 6434 6435 <li>document <code>titleModes</code> resource in manpage, added 6436 in <a href="#xterm_252">patch #252</a>.</li> 6437 6438 <li>modify tcap-query table entries for shifted up/down cursor 6439 keys to match ncurses convention.</li> 6440 6441 <li>improve lookup of termcap-query data, allowing for 6442 duplicate keycodes versus missing entries.</li> 6443 6444 <li>add control sequence which can be used to modify the 6445 terminal data used for the termcap-keyboard.</li> 6446 6447 <li>improve portability of tcap-query feature, using terminfo 6448 functions in preference to termcap on systems having 6449 terminfo.</li> 6450 6451 <li>improve font-setting/querying control 6452 (<code>OSC 50</code>): 6453 <ul> 6454 <li>when TrueType font is selected, the TrueType 6455 <code>faceName</code> will be set, rather than the bitmap 6456 font.</li> 6457 6458 <li>when TrueType font is selected, querying returns the 6459 name of the TrueType font.</li> 6460 6461 <li>querying a font recognizes the relative-font convention 6462 that setting a font could use.</li> 6463 </ul> 6464 </li> 6465 6466 <li>add menu-entry for allowColorOps.</li> 6467 6468 <li>add new resources for fine-tuning menu entries: 6469 <code>allowColorOps</code>, <code>disallowedColorOps</code>, 6470 <code>disallowedFontOps</code> and 6471 <code>disallowedTcapOps</code>.</li> 6472 6473 <li>correct logic for disabling the "TrueType Fonts" menu item; 6474 it was not ensuring that the <code>faceName</code> resource 6475 value was non-empty.</li> 6476 6477 <li>implement VT520-style controls <code>DECSMBV</code> and 6478 <code>DECSWBV</code> for setting the margin- and warning-bell 6479 volume.</li> 6480 6481 <li>fix a minor error from <a href="#xterm_243">patch #243</a> 6482 which made the zIconBeep feature use a minor-error tone rather 6483 than an informational tone.</li> 6484 6485 <li>add a null-pointer check for the case where 6486 <code>renderFont</code> resource is true, but 6487 <code>faceName</code> resource is unset, used in logic to strip 6488 "xft:" prefix from <a href="#xterm_251">patch #251</a> changes 6489 (patch by Michael Riepe).</li> 6490 6491 <li>add special case to configure CF_XOPEN_SOURCE macro to use 6492 extensions on Darwin (patch by Dennis Preiser).</li> 6493 6494 <li>improve configure checks for regular expressions header and 6495 library</li> 6496 6497 <li>update config.guess, config.sub</li> 6498 </ul> 6499 6500 <h1><a name="xterm_253" id="xterm_253">Patch #253 - 6501 2009/12/10</a></h1> 6502 6503 <ul> 6504 <li>add a null-pointer check in <code>getPrinterFlags()</code> 6505 per changes in <a href="#xterm_252">patch #252</a>.</li> 6506 6507 <li>add a null-pointer check, needed in UTF-8 mode for Xft 6508 fonts after changes in <a href="#xterm_252">patch #252</a> 6509 (patch by Alan Coopersmith).</li> 6510 6511 <li>correct size when clearing struct for tek4014 (patch by 6512 Jochen Voss).</li> 6513 6514 <li>parenthesize expression in <code>MoreRows</code> macro, 6515 fixing a limit check added in <a href="#xterm_251">patch 6516 #251</a> (Debian #560039).</li> 6517 </ul> 6518 6519 <h1><a name="xterm_252" id="xterm_252">Patch #252 - 2009/12/7</a></h1> 6520 6521 <ul> 6522 <li>modify title-querying logic to support retrieval of titles 6523 encoded using UTF-8.</li> 6524 6525 <li>add new "title-modes" control sequence for controlling 6526 whether window/icon titles can be set or queried using UTF-8, 6527 optionally encoded in a hexadecimal string.</li> 6528 6529 <li>use <code>mkdir -p</code> rather than 6530 <code>mkdirs.sh</code> (prompted by discussion of mawk by 6531 Aleksey Cheusov).</li> 6532 6533 <li>add appropriate copyright/license notices to the bulk of 6534 files lacking same, and modify to use identical terms in others 6535 which used different wording. The main exceptions are the files 6536 contributed by Markus Kuhn, who appears to prefer public domain 6537 distribution, noting that I have modified/improved several of 6538 these without changing the terms of distribution (request by 6539 Jari Aalto).</li> 6540 6541 <li>add control sequences for resetting the "dynamic" colors to 6542 their default values.</li> 6543 6544 <li>add control sequences for resetting the "special" colors to 6545 their default values.</li> 6546 6547 <li>add control sequences for setting the "special" colors such 6548 as <code>colorBD</code> (bold).</li> 6549 6550 <li>add overlooked case for setting highlight foreground color 6551 with the dynamic-colors control.</li> 6552 6553 <li>add <code>OSC 104</code>, for resetting ANSI/16/88/256 6554 colors to default.</li> 6555 6556 <li>reset ANSI/16/88/256 colors to default in soft/hard reset 6557 functions.</li> 6558 6559 <li>strip "xft:" prefix from <code>faceName</code> and 6560 <code>faceNameDoublesize</code> resource values,</li> 6561 6562 <li>add <code>DECSCUSR</code> (discussion with Andy 6563 Koppe).</li> 6564 6565 <li>add check/warning on failure to load font, to see if the 6566 name looks like an Xft pattern rather than XLFD. This can 6567 happen if someone happens to modify their X resource settings 6568 for programs that read data from xterm's namespace.</li> 6569 6570 <li>modify handling of <code>print</code> and 6571 <code>print-everything</code> actions to allow the various 6572 printer flags to be overridden by supplying parameters.</li> 6573 6574 <li>add resource <code>printerNewLine</code> (request by Ovidiu 6575 Gheorghioiu).</li> 6576 6577 <li>minor cleanup, finish using <code>TScreenOf()</code> and 6578 <code>TekScreenOf()</code> macros introduced in <a href= 6579 "#xterm_224">patch #224</a>.</li> 6580 6581 <li>improve checks in ShowCursor/HideCursor to get the 6582 background color, particularly when 6583 <code>highlightReverse</code> resource is used (reports by Jan 6584 Engelhardt, Christian Weisgerber).</li> 6585 6586 <li>correct <code>checkVeryBoldAttr</code> to omit comparison 6587 of foreground color to special color values used for 6588 <code>color<XX></code> resources (report by Jan 6589 Engelhardt).</li> 6590 6591 <li>make <code>colorBDMode</code> and <code>colorULMode</code> 6592 resources work with TrueType configuration (report by Jan 6593 Engelhardt).</li> 6594 </ul> 6595 6596 <h1><a name="xterm_251" id="xterm_251">Patch #251 - 6597 2009/11/11</a></h1> 6598 6599 <ul> 6600 <li>add window-ops controls to push/pop icon and/or window 6601 labels on a stack.</li> 6602 6603 <li>minor fixes to align termcap file with terminfo.</li> 6604 6605 <li>add resource <code>disallowedWindowOps</code>, to allow 6606 fine-tuning of features to suppress with the 6607 <code>allowWindowOps</code> resource (prompted by discussion 6608 with Bram Moolenaar).</li> 6609 6610 <li>add makefile rules for resize-manpage to pdf, etc.</li> 6611 6612 <li>further improve limit-checks in select/paste (Mandriva 6613 #54531).</li> 6614 </ul> 6615 6616 <h1><a name="xterm_250" id="xterm_250">Patch #250 - 6617 2009/10/13</a></h1> 6618 6619 <ul> 6620 <li>add check and error-message for fonts that have no 6621 printable values in the ISO-8859-1 range (Debian #542434).</li> 6622 6623 <li>some compiler-warning cleanup, in particular workaround for 6624 defective implementation of gcc's attribute warn_unused_result 6625 (report by Bram Moolenaar).</li> 6626 6627 <li>improve estimate of single-column width for packed TrueType 6628 fonts by ignoring extents for codes 127 and 159.</li> 6629 6630 <li>improve line-drawing for TrueType fonts which happen to 6631 have defined glyphs which are <em>not</em> line-drawing in 6632 0..31 by assuming they're not, and just checking the existence 6633 of the Unicode codepoints. This makes it more likely that the 6634 user can override a misconfigured font using the "Line-Drawing 6635 Characters" menu entry.</li> 6636 6637 <li>limit minimum cell-width for packed font to maximum-advance 6638 reported by Xft. Some fonts are wider than that, even in the 6639 Latin-1 range (Debian #550497).</li> 6640 6641 <li>add list of direct-contributors in "THANKS" file.</li> 6642 6643 <li>stylistic changes to this file to help scripted extraction 6644 of list of contributors.</li> 6645 6646 <li>correct off-by-one in <code>okPosition</code> fix from 6647 <a href="#xterm_249">patch #249</a> limit-checks which 6648 prevented double-click selection on the bottom line of the 6649 screen (reports by Rajeev V. Pillai, Debian #550368).</li> 6650 6651 <li>add <code>-q</code> option to 6652 <code>vttests/256colors2.pl</code> and 6653 <code>vttests/88colors2.pl</code> to demonstrate bulk 6654 initialization of color palette.</li> 6655 6656 <li>improve the workaround from patch #188 by enabling 6657 resources for the 88-color model.</li> 6658 6659 <li>document in xterm manpage the limited availability of 6660 resources <code>color16</code> to <code>color255</code> as 6661 noted in <a href="#xterm_188">patch #188</a> (Ubuntu 6662 #438850).</li> 6663 </ul> 6664 6665 <h1><a name="xterm_249" id="xterm_249">Patch #249 - 2009/10/1</a></h1> 6666 6667 <ul> 6668 <li>change default for <code>allowWindowOps</code> resource to 6669 false. 6670 <!-- on the other hand, gnome-terminal, pterm and rxvt-unicode 6671 leave most of the related functionality enabled ;-) --></li> 6672 6673 <li>add limit-checks for result of visual_width() function, 6674 needed from <a href="#xterm_242">patch #242</a> and exposed by 6675 #244 changes (Debian #548321).</li> 6676 6677 <li>improve limit-checks in select/paste.</li> 6678 6679 <li>fix a remaining bug from <a href="#xterm_230">patch 6680 #230</a> changes for displaying multi-column characters in a 6681 proportional font (report by Chris Jones).</li> 6682 6683 <li>add new resource forcePackedFont and menu entry "Packed 6684 Font" to control whether to use the font's minimum (default) or 6685 maximum width when those differ. The workaround which xterm 6686 uses to accommodate proportional fonts is not necessary with 6687 certain fonts such as unifont which happen to store a mixture 6688 of multicolumn glyphs (report by Chris Jones).</li> 6689 6690 <li>fix an (old) bug which did not restart the timer for 6691 blinking text if the only blinking text was temporarily 6692 scrolled out of view, e.g., using the scrollbar.</li> 6693 6694 <li>fix an (old) flaw in the delete-line operation where the 6695 text which is scrolled into view while the display is scrolled 6696 up was not repainted.</li> 6697 6698 <li>improve delete-line and insert-line operations, retaining 6699 selection when the selection does not intersect the 6700 deleted/inserted lines.</li> 6701 6702 <li>fix an (old) off-by-one error when an application cleared 6703 above the cursor position while the display was scrolled up, 6704 that would leave an extra line of text uncleared.</li> 6705 6706 <li>fix a similar problem where the double-size attribute would 6707 not be reset when clearing the screen while the display was 6708 scrolled up.</li> 6709 6710 <li>fix an indexing error which would occur if an application 6711 cleared a line while the display was scrolled up and was also 6712 in UTF-8 mode (Redhat #524503). The error was from <a href= 6713 "#xterm_228">patch #228</a> but more visible after changes from 6714 <a href="#xterm_244">patch #244</a>.</li> 6715 </ul> 6716 6717 <h1><a name="xterm_248" id="xterm_248">Patch #248 - 2009/9/11</a></h1> 6718 6719 <ul> 6720 <li>fix an overlooked adjustment for selecting double-width 6721 characters in the narrow-character configuration.</li> 6722 6723 <li>eliminate uses of <code>XTERM_CELL</code> and 6724 <code>XTERM_CELLC</code> where an appropriate 6725 <code>LineData</code> pointer is available.</li> 6726 6727 <li>correct expression in <code>okScrnRow</code> macro, making 6728 selections give the length of lines below the visible screen 6729 (report by Stuart Henderson).</li> 6730 6731 <li>correct logic used to improve performance of missing-glyph 6732 check, which did not handle line-drawing characters (Debian 6733 #545220).</li> 6734 </ul> 6735 6736 <h1><a name="xterm_247" id="xterm_247">Patch #247 - 2009/8/30</a></h1> 6737 6738 <ul> 6739 <li>add ifdef's and check for openpty() on DragonFly (patch by 6740 Alex Hornung).</li> 6741 6742 <li>correct calculation for size of line's data block, which 6743 was sometimes off-by-one when configured using 6744 <code>--enable-16bit-chars</code> (report by H Merijn 6745 Brand).</li> 6746 6747 <li>fix indexing error in print-everything feature from 6748 <a href="#xterm_246">patch #246</a> (patch by Ovidiu 6749 Gheorghioiu).</li> 6750 </ul> 6751 6752 <h1><a name="xterm_246" id="xterm_246">Patch #246 - 2009/8/16</a></h1> 6753 6754 <ul> 6755 <li>remove obsolete logic for saving/restoring wrapping flags, 6756 which did not work on 64-bit platform. Wrapping flags (stored 6757 in the line-index) are now copied with line-data (Debian 6758 #541160).</li> 6759 6760 <li>modify comments in app-defaults files to avoid problem with 6761 C preprocessor used by <code>xrdb</code> (Debian #541603).</li> 6762 6763 <li>restore special case in <code>makeColorPair</code>, needed 6764 for <code>colorBDMode</code> resource (Debian #541089).</li> 6765 6766 <li>correct <code>SetLineFlags()</code> macro, broken in 6767 <a href="#xterm_244">patch #244</a> when recoding to avoid 6768 gcc-specific bitfields (Debian #541236).</li> 6769 6770 <li>modify initialization of screen buffers to ensure that 6771 pointers align to int-boundaries. This fixes a problem 6772 introduced in <a href="#xterm_244">patch #244</a> where the 6773 color- and character-arrays (stored after the video-attributes 6774 in each row) might be misaligned (report by Rajeev V 6775 Pillai).</li> 6776 6777 <li>add limit-check in <code>ScrnRefresh</code> for handling 6778 saved-lines from the circular buffer which are repainted on a 6779 screen whose width has increased. To improve performance, 6780 circular buffer entries are not resized (report by Rajeev V 6781 Pillai).</li> 6782 6783 <li>correct type for <code>CellColor</code> (a late change in 6784 <a href="#xterm_244">patch #244</a> to avoid gcc-specifc enums 6785 made that unsigned rather than unsigned short, for the 6786 256-color option).</li> 6787 6788 <li>fix typo in configure option --enable-16bit-chars (report 6789 by Rajeev V. Pillai).</li> 6790 </ul> 6791 6792 <h1><a name="xterm_245" id="xterm_245">Patch #245 - 2009/8/12</a></h1> 6793 6794 <ul> 6795 <li>correct a special case in saving FIFO-lines from <a href= 6796 "#xterm_244">patch #244</a>. If the screen was shrunk, xterm 6797 used the wrong amount for copying to FIFO-lines, and then used 6798 this amount to adjust the current row on the screen. That was 6799 both a visible defect (Debian #541109) as well as a potential 6800 addressing error (Debian #541132, Debian #541160, and Debian 6801 #541236).</li> 6802 6803 <li>add clarification in xterm manual about the various 6804 <code>allow<em>XXX</em>Ops</code> resources, which are disabled 6805 when the <code>allowSendEvents</code> resource is active (patch 6806 by Julien Cristau, Debian #531597).</li> 6807 </ul> 6808 6809 <h1><a name="xterm_244" id="xterm_244">Patch #244 - 2009/8/9</a></h1> 6810 6811 <ul> 6812 <li>refactored storage of saved-lines, providing a configure 6813 option to manage them as a FIFO (actually a circular buffer), 6814 improving performance. Added configure option 6815 <code>--enable-fifo-lines</code> to enable/disable the new 6816 feature (it is enabled by default).</li> 6817 6818 <li>added <code>fastScroll</code> resource, to amuse people who 6819 measure terminal emulator performance by <code>cat</code>'ing 6820 large files to the screen.</li> 6821 6822 <li>modify check in <code>readPtyData</code> from return values 6823 to provide exit on zero-bytes read from pty for FreeBSD, or 6824 eliminate high-CPU in "xterm-hold" processing (discussion with 6825 Ulrich Spoerlein, FreeBSD ports/136686). The check was 6826 originally modified to combine negative/zero values in 6827 XFree86-3.1.2E, 1996/05/06.</li> 6828 6829 <li>add configure option <code>--enable-16bit-chars</code> to 6830 provide wide-characters with 16-bits (rather than the default 6831 32-bits).</li> 6832 6833 <li>add <code>retryInputMethod</code> resource to allow 6834 configuring out the retries xterm uses to connect to 6835 non-responsive XIM server, to work around defective X 6836 configurations as noted in <a href= 6837 "http://mail-index.netbsd.org/tech-x11/2009/06/07/msg000511.html"> 6838 NetBSD mailing list</a>.</li> 6839 6840 <li>make regular-expression selection work for VT100 6841 double-sized characters.</li> 6842 6843 <li>improve layout when drawing missing characters in a 6844 proportional font, e.g., as boxes, to take into account whether 6845 they are double-width (report by Guilbert Stabilo on 6846 comp.unix.shell).</li> 6847 6848 <li>add capability for keypad-center (kb2/KA2) to termcap entry 6849 for xterm-new, as well as xterm-8bit, xterm-sun and xterm-vt220 6850 (FreeBSD conf/136336).</li> 6851 6852 <li>change default for <code>keepSelection</code> resource to 6853 true (prompted by discussion with David Muir Sharnoff).</li> 6854 6855 <li>remove a limit-check in ptydata.c, allowing Unicode values 6856 past 64k to be displayed using TrueType fonts (Debian 6857 #458432).</li> 6858 6859 <li>remove a vt52-specific ifdef to allow mapping F1-F4 to 6860 PF1-PF4 when vt52 support is not compiled (report by Olaf 6861 'Rhialto' Seibert).</li> 6862 6863 <li>save/restore line-wrapping flags when converting from 6864 ISO-8859-1 encoding to UTF-8 encoding, as well as when resizing 6865 screen.</li> 6866 6867 <li>remove extra adjustment of position in fix for Debian 6868 #418324.</li> 6869 6870 <li>modify default check for <code>mkWidth</code> resource to 6871 check for line-drawing characters, which are categorized as 6872 double-width in Solaris 10 (report by Sebastian Kayser).</li> 6873 6874 <li>add "print-everything" action (patch by Ovidiu 6875 Gheorghioiu).</li> 6876 6877 <li>start refactoring scrollback data using new getLineData() 6878 function.</li> 6879 6880 <li>demote recent change to Debian #252873 fix to experimental, 6881 ifdef'd out as <code>EXP_BOGUS_FG</code> (Debian #522141).</li> 6882 6883 <li>work around groff mapping of ASCII quotes using macros 6884 (requested by Reuben Thomas based on Colin Watson advice, fixes 6885 Debian #378700).</li> 6886 6887 <li>correct symbol used for default of 6888 <code>allowWindowOps</code> which was 6889 <code>DEF_ALLOW_FONT</code> rather than 6890 <code>DEF_ALLOW_WINDOW</code> (report by Matthieu Herrb).</li> 6891 6892 <li>amend fix for tek4014 from <a href="#xterm_243">patch 6893 #243</a> to make it only apply to the Tek Options menu.</li> 6894 </ul> 6895 6896 <h1><a name="xterm_243" id="xterm_243">Patch #243 - 2009/3/28</a></h1> 6897 6898 <ul> 6899 <li>revert change to default for <code>allowTcapOps</code> 6900 (request by Bram Moolenaar).</li> 6901 6902 <li>reallocate result returned by <code>xtermEnvLocale()</code> 6903 to avoid reference to freed memory after handling 6904 <code>menuLocale</code> resource.</li> 6905 6906 <li>fix an old (X11R5) bug in tek4014 for switching 6907 fontsizes.</li> 6908 6909 <li>add resource <code>defaultString</code> to make 6910 configurable the use of "#" when pastes of UTF-8 text fail due 6911 to limitations in the current locale settings.</li> 6912 6913 <li>make the set of selection target Atom's configurable by two 6914 new resources <code>eightBitSelectTypes</code> and 6915 <code>utf8SelectTypes</code>, e.g., to use the 6916 <code>TEXT</code> Atom in preference to 6917 <code>UTF8_STRING</code> (discussion with Stanislav Sedov 6918 regarding koi8rxterm and the FreeBSD port).</li> 6919 6920 <li>modify handling of <code>TARGETS</code> Atom by making it 6921 return exactly the set of targets as those which xterm is 6922 currently providing.</li> 6923 6924 <li>set <code>MANPAGER</code> and <code>PAGER</code> explicitly 6925 to /bin/cat in <code>minstall.sh</code> to work around 6926 /etc/man.conf's with those variables already set (report by 6927 Марьясин 6928 Семён).</li> 6929 6930 <li>improve error-checking of tcap-query parser.</li> 6931 6932 <li>add check for keyboard <code>tcap</code>), which ensures 6933 that terminal descriptions containing the same string for 6934 shifted/unshifted keys will be seen by tcap-query as only the 6935 unshifted key. (This would only happen with an incorrect 6936 terminal description).</li> 6937 6938 <li>fix conversion for input event-state to modifier-parameter 6939 which made tcap-query feature not work with 6940 <code>tcapFunctionKeys</code> (keyboard type 6941 <code>tcap</code>).</li> 6942 6943 <li>add "DEF_ALLOW_<em>XXX</em>" definitions to main.h to allow 6944 overriding the default compiled-in values for 6945 "allow<em>xxx</em>" resources.</li> 6946 6947 <li>remove check on bell-percentage added in <a href= 6948 "#xterm_242">patch #242</a>, which disallowed zero/negative 6949 values (Redhat Bugzilla #487829).</li> 6950 </ul> 6951 6952 <h1><a name="xterm_242" id="xterm_242">Patch #242 - 2009/2/15</a></h1> 6953 6954 <ul> 6955 <li>fix configure check for <code>XkbBell</code> and provide 6956 appropriate parameter for it.</li> 6957 6958 <li>fix a caching problem with double-size fonts versus reverse 6959 video that could cause core dump.</li> 6960 6961 <li>repair double-size fonts from workaround used in <a href= 6962 "#xterm_240">patch #240</a>.</li> 6963 6964 <li>add new section to the VT Fonts menu which allows enabling 6965 or disabling the font, termcap (tcap-query), title and window 6966 operations.</li> 6967 6968 <li>add <code>fontWarnings</code> resource, to control whether 6969 to show warnings on failure to load a font.</li> 6970 6971 <li>improve warnings for unloadable fonts introduced in 6972 <a href="#xterm_240">patch #240</a> by limiting those to the 6973 cases where a font would be specified directly by a resource 6974 setting rather than a derived fontname.</li> 6975 6976 <li>further amend fix for Debian #252873 from <a href= 6977 "#xterm_197">patch #197</a> to treat a blank cell which does 6978 not have both foreground and background colored as a 6979 non-colored cell. This improves a special case where the cursor 6980 is on a blank cell which had foreground color scrolled in 6981 (report by Miroslav Lichvar). 6982 <p>Also add the same logic when hiding cursor, so the outline 6983 matches the in-focus cursor.</p> 6984 </li> 6985 6986 <li>modify internals to reduce places PAIRED_CHARS() is used, 6987 making WriteText() and ScrnWriteText() accept IChar array, as 6988 well as providing a wrapper for drawXtermText().</li> 6989 6990 <li>change default XIM font from "*" to "fixed" to improve 6991 startup time in zh_CN.UTF-8 locale (Mike Fabian, SuSE Bugzilla 6992 #464930).</li> 6993 6994 <li>typo in #240 log (Slava Semushin)</li> 6995 </ul> 6996 6997 <h1><a name="xterm_241" id="xterm_241">Patch #241 - 2009/1/26</a></h1> 6998 6999 <ul> 7000 <li>improve checks for missing bitmap fonts, fallback to 7001 "fixed" as needed to work around broken font-packages (report 7002 by Jacek Luczak).</li> 7003 7004 <li>fix breakage from <a href="#xterm_240">patch #240</a> 7005 changes for <code>xtermAddInput()</code> (patches by Jeff Chua, 7006 Julien Cristau).</li> 7007 </ul> 7008 7009 <h1><a name="xterm_240" id="xterm_240">Patch #240 - 2009/1/25</a></h1> 7010 7011 <ul> 7012 <li>use <code>plink.sh</code> for linking xterm (suggested by 7013 Larry Doolittle).</li> 7014 7015 <li>add resource descriptions for input method to xterm 7016 manpage.</li> 7017 7018 <li>update configure script; consistently append to $CFLAGS 7019 rather than prepend.</li> 7020 7021 <li>add <code>install-scripts</code> rule to makefile, to allow 7022 koi8rxterm and uxterm scripts to be altered independently of 7023 <code>install-bin</code></li> 7024 7025 <li>add <code>-maximized</code> command-line option and 7026 corresponding resource (prompted by alt.os.linux newsgroup 7027 comment).</li> 7028 7029 <li>modify translations of scrollbar widget using 7030 <code>xtermAddInput()</code> (see <a href="#xterm_181">patch 7031 #181</a>) to accept the actions that the vt100 widget accepts, 7032 such as shift-insert to perform a paste operation (request by 7033 Martin Zwickel).</li> 7034 7035 <li>change default for <code>allowTcapsOps</code> resource to 7036 false, since it causes unexpected behavior for vim users with 7037 <code>AltGr</code>.</li> 7038 7039 <li>update config.guess, config.sub</li> 7040 </ul> 7041 7042 <h1><a name="xterm_239" id="xterm_239">Patch #239 - 2009/1/8</a></h1> 7043 7044 <ul> 7045 <li>correct a cast in input.c, which broke translation of 7046 numeric keypad codes to pageup, pagedown, etc., on 64-bit 7047 platform (Debian #511138, report by Larry Doolittle).</li> 7048 </ul> 7049 7050 <h1><a name="xterm_238" id="xterm_238">Patch #238 - 7051 2008/12/30</a></h1> 7052 7053 <ul> 7054 <li>update configure macro CF_XOPEN_SOURCE for AIX 6.x and Mint 7055 platforms.</li> 7056 7057 <li>reset the screen wrapping-flag at the end of 7058 <code>ClearRight</code> to fix an occasional case where the 7059 last character of a scrolled and wrapped line would be cleared 7060 (patch by Joe Peterson).</li> 7061 7062 <li>modify to use POSIX coding for comparing resource settings 7063 such as <code>locale</code>, to work with locales such as 7064 Turkish (report by M Vefa Bicakci).</li> 7065 7066 <li>turn on configure <code>paste64</code> feature by default 7067 (request by Jean-Philippe Bernardy). It is runtime 7068 enabled/disabled with <code>allowWindowOps</code>.</li> 7069 7070 <li>turn on configure <code>tcap-query</code> feature by 7071 default, add resource <code>allowTcapOps</code> to make this 7072 runtime enabled/disabled.</li> 7073 7074 <li>make <code>OSC 3</code> (change X property, from <a href= 7075 "#xterm_110">patch #110</a>) subject to 7076 <code>allowWindowOps</code> resource.</li> 7077 7078 <li>make VT220 <code>DSR</code> responses inactive in 7079 VT100-mode.</li> 7080 7081 <li>make <code>DECUDK</code> feature inactive in 7082 VT100-mode.</li> 7083 7084 <li>respond to incorrectly formatted <code>DECRQSS</code> with 7085 a cancel.</li> 7086 7087 <li>add <code>allowFontOps</code> resource to allow the 7088 fontsize-switching and font query/set control sequences to be 7089 enabled/disabled (prompted by Debian #510030).</li> 7090 7091 <li>some code cleanup based on gcc 4.x 7092 <code>-Wconversion</code> warnings in button.c and 7093 charproc.c</li> 7094 7095 <li>modify <code>tcap-query</code> feature to not return data 7096 for shifted cursor-keys when the keyboard type is set to vt220, 7097 since returning the same string for shifted/unshifted keys may 7098 confuse some applications (Gentoo #212546).</li> 7099 </ul> 7100 7101 <h1><a name="xterm_237" id="xterm_237">Patch #237 - 7102 2008/09/14</a></h1> 7103 7104 <ul> 7105 <li>improve usability of TrueType fonts by making the font-size 7106 switching for shifted keypad plus/minus use the 7107 <code>faceSize</code> resources to determine the order of fonts 7108 (when TrueType fonts are used) rather than the bitmap fonts, 7109 since their sizes may not be in the same order (report by H 7110 Merijn Brand)</li> 7111 7112 <li>remove an optimization of <code>ConfigureNotify</code> 7113 events from <a href="#xterm_236">patch #236</a> which seems to 7114 interfere with passing <code>SIGWINCH</code> to applications 7115 (Gentoo #233836).</li> 7116 7117 <li>modify handling of <code>altSendsEscape</code> to reset the 7118 <code>eightBitInput</code> mode, like 7119 <code>metaSendsEscape</code> (patch by Ted Phelps).</li> 7120 7121 <li>add feature to show the text-cursor as an underline rather 7122 than a box, plus command-line options <code>-uc</code> and 7123 <code>+uc</code> and resource <code>cursorUnderLine</code> to 7124 control the feature (patch by Paul Lampert).</li> 7125 7126 <li>update config.guess, config.sub</li> 7127 </ul> 7128 7129 <h1><a name="xterm_236" id="xterm_236">Patch #236 - 7130 2008/07/27</a></h1> 7131 7132 <ul> 7133 <li>correct memory reallocation when handling a paste of UTF-8 7134 text from <a href="#xterm_225">patch #225</a> changes 7135 (report/patch by Max Mikhanosha).</li> 7136 7137 <li>correct allocation of temporary buffer in 7138 <code>xtermFindShell</code> in case the user's 7139 <code>$PATH</code> contains no ":" (report/analysis by Victor 7140 Stinner, Freedesktop.Org Bugzilla #16790).</li> 7141 7142 <li>modify CF_XOPEN_SOURCE to add case for DragonFly BSD, to 7143 fix new compile problem exposed by fix for fd_mask (patch by 7144 Hasso Tepper).</li> 7145 7146 <li>add configure-check for ncurses 7147 <code>use_extended_names</code>, (report by Martin 7148 Mokrejs).</li> 7149 7150 <li>correct computation for toolbar height; layout manager 7151 already takes into account <code>borderWidth</code> 7152 resource.</li> 7153 7154 <li>implement VT320-style SCS (select character set) for ISO 7155 Latin-1 supplemental.</li> 7156 7157 <li>fixes for vt100-style character sets in UTF-8 mode (Ubuntu 7158 #230919).</li> 7159 7160 <li>fix to make <code>luit</code> work with xterm's 7161 <code>-ls</code> option (report/patch by Marius Tolzmann).</li> 7162 7163 <li>update config.guess, config.sub</li> 7164 </ul> 7165 7166 <h1><a name="xterm_235" id="xterm_235">Patch #235 - 7167 2008/04/20</a></h1> 7168 7169 <ul> 7170 <li>add control sequences for some of the recent resource/menu 7171 settings: 7172 <ul> 7173 <li><code>altSendsEscape</code> (private mode 1039)</li> 7174 7175 <li><code>keepSelection</code> (private mode 1040)</li> 7176 7177 <li><code>selectToClipboard</code> (private mode 1041)</li> 7178 7179 <li><code>bellIsUrgent</code> (private mode 1042)</li> 7180 7181 <li><code>popOnBell</code> (private mode 1043)</li> 7182 </ul> 7183 </li> 7184 7185 <li>add resource <code>formatOtherKeys</code> to provide an 7186 alternate escape sequence format for the 7187 <code>modifyOtherKeys</code> resource (request by Paul LeoNerd 7188 Evans).</li> 7189 7190 <li>adjust saved-cursor position if the window is resized while 7191 displaying the alternate screen (Novell #196880, Debian 7192 #383384).</li> 7193 7194 <li>improve pointer-checks to fix a bug exposed by resizing 7195 during initialization under StumpWM window manager (Fedora 7196 Bugzilla #437928).</li> 7197 7198 <li>modify <code>unselectwindow()</code> to ensure that the 7199 mouse pointer is not hidden after xterm loses focus (report by 7200 Jeremy Huddleston).</li> 7201 7202 <li>add special check for fd_mask on Mac OS X (report by Jeremy 7203 Huddleston).</li> 7204 7205 <li>add <code>dylib</code> to autoconf's suffix list used for 7206 checking the result from <code>xmkmf</code>, to work with Mac 7207 OS X (report by Jeremy Huddleston).</li> 7208 7209 <li>correct initialization of bold- and wide-, wide-bold fonts 7210 which may be set via the <code>utf8Fonts</code> subresource 7211 (Debian #347790).</li> 7212 </ul> 7213 7214 <h1><a name="xterm_234" id="xterm_234">Patch #234 - 7215 2008/03/02</a></h1> 7216 7217 <ul> 7218 <li>modify <code>sinstall.sh</code> to use POSIX locale to 7219 bypass GNU ls changes to date-format.</li> 7220 7221 <li>improved/refined changes for closing bitmap font (patch by 7222 Andrea Odetti).</li> 7223 7224 <li>improve resize computation for situations where the 7225 negotiation fails, by invoking the xterm widget's core-class 7226 resize method (Debian #365602, patch by Jim Paris).</li> 7227 7228 <li>restore initialization of terminal's <code>VMIN</code> and 7229 <code>VTIME</code> settings, from <a href="#xterm_232">patch 7230 #232</a> changes (patch by Matthieu Herrb).</li> 7231 </ul> 7232 7233 <h1><a name="xterm_233" id="xterm_233">Patch #233 - 7234 2008/02/24</a></h1> 7235 7236 <ul> 7237 <li>add configure check for <code>ttydefaults.h</code>, include 7238 if needed, e.g., for systems where defining 7239 <code>_POSIX_C_SOURCE</code>, etc., prevents it from being 7240 included via <code>termios.h</code> (prompted by comments by 7241 Robert Delius Royar and Jeremy Huddleston).</li> 7242 7243 <li>bug-fixes for bugs.opensolaris.org (patches from Alan 7244 Coopersmith) 7245 <dl> 7246 <dt>4029911</dt> 7247 7248 <dd>fix a typo in manpage</dd> 7249 7250 <dt>4045962</dt> 7251 7252 <dd>xterm doesn't properly set ut_syslen</dd> 7253 7254 <dt>4192572</dt> 7255 7256 <dd>left-left-right misinterpreted as triple click</dd> 7257 </dl> 7258 </li> 7259 7260 <li>minor optimization to tab-initialization (patch by 7261 Németh Márton).</li> 7262 7263 <li>fix a case where an incorrect font was freed during 7264 initialization from <a href="#xterm_232">patch #232</a> changes 7265 (patch by Andrea Odetti).</li> 7266 7267 <li>improve comparison used in <code>SameFont</code> function 7268 for GC-caching (Julien Cristau).</li> 7269 7270 <li>correct macro name used for default <code>CKILL</code> 7271 definition to work with Mac OS X (report by Jeremy 7272 Huddleston).</li> 7273 </ul> 7274 7275 <h1><a name="xterm_232" id="xterm_232">Patch #232 - 7276 2008/01/30</a></h1> 7277 7278 <ul> 7279 <li>corrected logic in a font-cache used for reverse-video 7280 (Debian #404079).</li> 7281 7282 <li>add control sequence to alter <code>pointerMode</code> at 7283 runtime.</li> 7284 7285 <li>add limit-checks for rectangle operation parameters (report 7286 by Martin Pirker).</li> 7287 7288 <li>modify <code>minstall.sh</code> to suppress 7289 <code>$MANPAGER</code> and <code>$PAGER</code> environment 7290 variables, which may interfere with redirecting output of 7291 <code>man</code> to a shell variable (report/patch by Zdenek 7292 Sekera).</li> 7293 7294 <li>do not try to hide mouse pointer in the tek4014 window, 7295 fixes broken "-t" option at startup from <a href= 7296 "#xterm_230">patch #230</a> changes (report by Robert K. 7297 Nelson).</li> 7298 7299 <li>correct datatype used when drawing tek4014 data using xterm 7300 compiled for wide-characters, on big-endian machines (reports 7301 by Jeremy Huddleston, Harald Hanche-Olsen, Martin Costabel, 7302 Merle Reinhart).</li> 7303 7304 <li>modify to cache the font-names along with the bitmap font 7305 data, to improve comparison of fonts.</li> 7306 7307 <li>modify to allow building with configure options 7308 <code>--disable-ansi-color</code> and 7309 <code>--disable-leaks</code> (Debian #459817, report/patch by 7310 Németh Márton).</li> 7311 7312 <li>modify to allow building with configure options 7313 <code>--enable-wide-chars</code> and 7314 <code>--disable-c1-print</code> (Debian #459816, report/patch 7315 by Németh Márton).</li> 7316 7317 <li>add <code>pointerMode</code> resource to control whether 7318 and when the pointer cursor is hidden as the user types.</li> 7319 7320 <li>simplify initialization of ttyMode- and related characters 7321 using a table.</li> 7322 7323 <li>modify initialization-logic for stty values that correspond 7324 to ltchars structure and the BSD TIOCSLTC ioctl (susp, dsusp, 7325 rprnt flush, werase, lnext). These were reset to constants for 7326 both termios and legacy interfaces immediately after asking the 7327 system for the existing values since X11R6.1, rather than using 7328 them to provide inherited values. While the legacy interface 7329 has some constraints, e.g., on HPUX, the POSIX or termios 7330 interface should not. Your shell may reset these anyway 7331 (prompted by patch by Ed Schouten).</li> 7332 7333 <li>improve logic for hiding/displaying pointer-cursor (report 7334 by Mark Brukhartz).</li> 7335 7336 <li>add limit-checks to tabs.c, increase maximum column for 7337 setting tab-stops from 320 to 1024 (report by Németh 7338 Márton).</li> 7339 7340 <li>correct length, i.e., number of types of selection targets, 7341 computed by <code>ConvertSelection()</code> when not handling 7342 wide characters for the <code>XA_TARGETS()</code> case. This 7343 leaves an extra Atom on the end of the list which is not 7344 handled by <a href= 7345 "http://bugs.sun.com/bugdatabase/view_bug.do?bug_id=6322854">Java 7346 applications</a>. The problem was introduced in <a href= 7347 "#xterm_151">patch #151</a> (report by David Wood).</li> 7348 </ul> 7349 7350 <h1><a name="xterm_231" id="xterm_231">Patch #231 - 7351 2008/01/05</a></h1> 7352 7353 <ul> 7354 <li>undo change to <code>getXtermCell()</code> from patch #230 7355 using <code>PACK_PAIR</code> macro (Debian #459014, analysis by 7356 Caetano Jimenez Carezzato).</li> 7357 7358 <li>minor documentation fixes (patch by Slava Semushin)</li> 7359 7360 <li>add makefile actions to install KOI8RXTerm app-defaults 7361 file (patch by Julien Cristau).</li> 7362 </ul> 7363 7364 <h1><a name="xterm_230" id="xterm_230">Patch #230 - 7365 2007/12/31</a></h1> 7366 7367 <ul> 7368 <li>add <code>quietGrab</code> resource, which when true, 7369 suppresses cursor repainting when <code>NotifyGrab</code> and 7370 <code>NotifyUngrab</code> event types are received during 7371 change of focus (request by Nicolas George).</li> 7372 7373 <li>do not treat Unicode BIDI control characters as combining 7374 characters (Debian #457634).</li> 7375 7376 <li>add <code>koi8rxterm</code>, from Debian.</li> 7377 7378 <li>add manpage for <code>uxterm</code>, from Debian (Ubuntu 7379 #128136, Debian #438645)</li> 7380 7381 <li>remove ".xpm" suffixes from Icon filenames in desktop files 7382 since it confuses some lookups following the <a href= 7383 "http://standards.freedesktop.org/icon-theme-spec/icon-theme-spec-latest.html"> 7384 Icon Theme Specification</a> (report by Slava Semushin)</li> 7385 7386 <li>correct width-calculation used for adjusting proportional 7387 fonts, to work with wide-characters (Debian #441354).</li> 7388 7389 <li>fixes/improvements for double-size characters: 7390 <ul> 7391 <li>correct old clipping calculation which used total 7392 height of glyphs where ascent was needed.</li> 7393 7394 <li>if bold font is unavailable, fall back to normal 7395 font</li> 7396 7397 <li>adjust to "work" with Xft (which does not support 7398 double-width single-height characters).</li> 7399 7400 <li>restore reset of doublesize for a line when it is 7401 cleared, broken in <a href="#xterm_228">patch 7402 #228</a>.</li> 7403 </ul> 7404 </li> 7405 7406 <li>modify logic for <code>forceBoxChars</code> resource when 7407 using TrueType fonts to be consistent with bitmap fonts</li> 7408 7409 <li>modify logic for <code>forceBoxChars</code> resource to 7410 make the "Line-Drawing Characters" menu entry use xterm's 7411 line-drawing characters even asked to draw wide line-drawing 7412 characters which are available in the font.</li> 7413 7414 <li>modify rectangle-support functions to preserve colors when 7415 filling/erasing to match WRQ Reflection behavior (request by 7416 Enzo Toscano).</li> 7417 7418 <li>add getopt-parsing to tcapquery.pl, including feature to 7419 test the extended cursor/editing keys.</li> 7420 7421 <li>make missing double-width glyphs display as double-width 7422 (Debian #456236).</li> 7423 7424 <li>change <code>tcap-fkeys</code> and <code>rectangles</code> 7425 configure options to enable them by default.</li> 7426 7427 <li>hide the mouse pointer while user is typing (request by 7428 Rodolfo Borges).</li> 7429 7430 <li>extend configure options <code>--enable-tcap-query</code> 7431 and <code>--enable-tcap-fkeys</code> to send cursor- and 7432 editing-keypad keys modified according to the keyboard (or 7433 termcap) selection for shift, alt, control, meta.</li> 7434 7435 <li>modify <code>kdch1</code> in termcap, e.g., 7436 <code>xterm-r6</code> to match the terminfo file.</li> 7437 7438 <li>add <code>-hm</code> option to turn 7439 <code>highlightColorMode</code> on or off.</li> 7440 7441 <li>add <code>highlightColorMode</code> resource to separate 7442 the new (since <a href="#xterm_225">patch #225</a>) 7443 highlighting with both text- and background-colors (prompted by 7444 report/example by Thomas Wolff).</li> 7445 7446 <li>add <em>Keep Selection</em> menu entry to turn the 7447 <code>keepSelection</code> resource on/off at runtime.</li> 7448 7449 <li>add <code>keepSelection</code> resource, which when 7450 enabled, tells xterm to retain the X selection even after it 7451 stops highlighting it (patch by Sergey Vlasov).</li> 7452 7453 <li>extend the <code>CSI > n</code> sequence to 7454 allow disabling all types of modified-keys that the 7455 <code>CSI > m</code> sequence affects.</li> 7456 7457 <li>move include for <code><xtermcap.h></code> in 7458 <code>resize.c</code> to avoid redefinition of 7459 <code>termios</code> structure on OpenSolaris (report by Rahul 7460 Gopinathan Nair).</li> 7461 7462 <li>extend terminfo building blocks for modified editing keys 7463 to include all six keys.</li> 7464 7465 <li>synchronize terminfo with ncurses (report by Stephane 7466 Chazelas) 7467 <ul> 7468 <li>equate <code>xterm-xfree86</code> and 7469 <code>xterm-xf86-v44</code>.</li> 7470 7471 <li>add ncurses extensions OTbs, AX, for termcap 7472 conversions.</li> 7473 7474 <li>make old/legacy entries such as <code>xterm-24</code>, 7475 <code>xterm-65</code> and aliases <code>xterms</code>, 7476 <code>vs100</code> inherit from 7477 <code>xterm-old</code>.</li> 7478 7479 <li>make <code>xterm-r5</code> and <code>xterm-r6</code> 7480 the same, ignoring historical errors in X Consortium's 7481 version.</li> 7482 </ul> 7483 </li> 7484 7485 <li>fix an ifdef in logic for selecting regular expressions 7486 while in a narrow-character locale (Debian #449227).</li> 7487 </ul> 7488 7489 <h1><a name="xterm_229" id="xterm_229">Patch #229 - 2007/8/12</a></h1> 7490 7491 <ul> 7492 <li>override locale in minstall.sh; change in <a href= 7493 "#xterm_226">patch #226</a> does not work in UTF-8 locale 7494 (report by Zdenek Sekera).</li> 7495 7496 <li>undo an incorrect fix for a memory leak in <a href= 7497 "#xterm_209">patch #209</a> (Debian #435858).</li> 7498 </ul> 7499 7500 <h1><a name="xterm_228" id="xterm_228">Patch #228 - 2007/7/22</a></h1> 7501 7502 <ul> 7503 <li>modify configure script to permit combining 7504 <code>--with-utempter</code> and <code>--enable-setuid</code>, 7505 e.g., for using xterm with the utempter library on FreeBSD 7506 (report by Andriy Gapon).</li> 7507 7508 <li>modify "Quit" menu entry to override the <code>-hold</code> 7509 command-line option.</li> 7510 7511 <li>add a check in the startup error-reporting to avoid writing 7512 to pipe when it has not been opened. In that case, report 7513 errors directly to the standard error.</li> 7514 7515 <li>add OPT_READLINE definition to xtermcfg.hin, overlooked in 7516 <a href="#xterm_205">patch #205</a> (report by Kalle Olavi 7517 Niemitalo).</li> 7518 7519 <li>modify <code>88colors2.pl</code> and 7520 <code>256colors2.pl</code>, adding <code>-r</code> option to 7521 reverse the palettes for the extended colors.</li> 7522 7523 <li>check for partial overwrite or deletion of multi-column 7524 characters in several cases, e.g., insert-character, 7525 delete-character, etc., and fill the remainder of the cells 7526 used by the multi-column characters affected with blanks.</li> 7527 7528 <li>correct character-class codes in wide-character mode for 7529 characters 215, 247 (see also <a href="#xterm_165">patch 7530 #165</a>).</li> 7531 7532 <li>fix missing assignment for UTF-8 parsing in widget 7533 initialization (Debian #403360).</li> 7534 7535 <li>correct index expression used to set line-wrapping flag, 7536 making selection from scrollback work consistently (Debian 7537 #430121, report by Vincent Lefèvre).</li> 7538 7539 <li>amend changes to handshake in <a href="#xterm_226">patch 7540 #226</a> to accommodate Solaris, which relies on the extra 7541 setting of the terminal size after I/O initialization. Do this 7542 by adding new resource <code>ptySttySize</code>, which is false 7543 for Linux and MacOS X, i.e., true for for Solaris and other 7544 SVR4 platforms, as well as FreeBSD (reports by David Wood, 7545 Renato Botelho).</li> 7546 7547 <li>check for X events after cursor-left, and carriage return, 7548 consistent with indexing operations (comments by Vegard Nossum 7549 and Ingo Molnar on a mailing-list).</li> 7550 7551 <li>initialize the <code>.keyboard</code> structure, needed for 7552 some platforms (such as Solaris) after <a href= 7553 "#xterm_227">patch #227</a> fixes for keysyms (patch by David 7554 Wood).</li> 7555 7556 <li>update config.guess, config.sub</li> 7557 </ul> 7558 7559 <h1><a name="xterm_227" id="xterm_227">Patch #227 - 2007/6/27</a></h1> 7560 7561 <ul> 7562 <li>exclude the Intel compiler from the extra gcc warning 7563 options added in <a href="#xterm_226">patch #226</a>.</li> 7564 7565 <li>modify change for Debian #422521 from <a href= 7566 "#xterm_226">patch #226</a> to work with configurations where 7567 the X server does not recognize the <code>XF86Paste</code> or 7568 <code>SunPaste</code> keysyms (report by Paolo Pumilia).</li> 7569 7570 <li>fix incorrect free in fix for "Selection" menu entry in 7571 <a href="#xterm_226">patch #226</a>.</li> 7572 </ul> 7573 7574 <h1><a name="xterm_226" id="xterm_226">Patch #226 - 2007/6/17</a></h1> 7575 7576 <ul> 7577 <li>add configure check to use 7578 <code>-Wno-unknown-pragmas</code> for Solaris, and a few other 7579 new gcc warning options to address regressions in its warning 7580 options.</li> 7581 7582 <li>add sample desktop and icon files, along with configure 7583 options for manipulating them.</li> 7584 7585 <li>fix an infinite loop when showing a 2-column character in a 7586 1-column screen (Debian #426863).</li> 7587 7588 <li>add <code>XF86Paste</code> and <code>SunPaste</code> to the 7589 default translations (Debian #422521, patch by Bernhard R 7590 Link).</li> 7591 7592 <li>update wcwidth.c (partly based on/prompted by mailing list 7593 comment).</li> 7594 7595 <li>update/improve keysym2ucs.c based on Unicode 5.0.1d3 and 7596 Xorg 7.1 keysymdef.h file.</li> 7597 7598 <li>improve <code>gen-pc-fkeys.pl</code>, making it show all of 7599 the building-block terminfo entries used by xterm.</li> 7600 7601 <li>correct strings used for modifiers applied to F1-F4 in 7602 xterm+pcf1 terminfo entry.</li> 7603 7604 <li>improve session management by adding the ICE connection 7605 number to the <code>select</code> call rather than waking up 7606 once per second (patch by Miroslav Lichvar).</li> 7607 7608 <li>add environment variable <code>$XTERM_LOCALE</code> to help 7609 with shell initialization, e.g., to set a specific locale for 7610 xterm on systems where a global locale is set in the shell 7611 startup scripts.</li> 7612 7613 <li>add resource settings <code>mkSampleSize</code> and 7614 <code>mkSamplePass</code> to modify the <code>mkWidth</code> 7615 added in <a href="#xterm_201">patch #201</a>. In <a href= 7616 "#xterm_202">patch #202</a>, xterm would also check if the 7617 system's <code>wcwidth</code> matched its built-in tables "well 7618 enough" to be used when <code>mkWidth</code> was false, and if 7619 not would use the built-in tables anyway. These resources allow 7620 the user to customize the decision (prompted by comments by 7621 Emanuele Giaquinta)</li> 7622 7623 <li>modify logic which resets/updates the screensize on the 7624 child process side of the pseudo-terminal to do this only if a 7625 successful handshake was received, e.g., as determined by the 7626 <code>waitForMap</code> resource (prompted by reports by 7627 Emanuele Giaquinta and Bernhard R Link, but see also <a href= 7628 "#xterm_177">patch #177</a> and <a href="#xterm_159">patch 7629 #159</a>.</li> 7630 7631 <li>improve permissions logic when closing pseudo-terminal 7632 (Debian #12261, patch by Nathanael Nerode, analysis by Richard 7633 Braakman).</li> 7634 7635 <li>add resource <code>highlightReverse</code> which controls 7636 whether xterm will allow selection highlighting to hide 7637 reverse-video or use the older behavior which inverts the 7638 foreground and background colors when selected text with 7639 reverse-video attribute (report by Adam M Costello, comments by 7640 Victor Vaile).</li> 7641 7642 <li>restore a special case for cursor-color in 7643 <code>ReverseVideo()</code> lost in rewrite for <a href= 7644 "#xterm_224">patch #224</a> (report by Adam Sulmicki).</li> 7645 7646 <li>correct initialization for menu entry for 7647 <code>bellIsUrgent</code> (patch by Emanuele Giaquinta).</li> 7648 7649 <li>correct length of underlining for double-width Xft fonts 7650 (report by Shidai Liu "Leo").</li> 7651 7652 <li>correct clipping for double-width Xft fonts (report by 7653 Shidai Liu "Leo").</li> 7654 7655 <li>modify initialization for <code>italicULMode</code> to 7656 avoid <code>XftPatternBuild</code> reusing bold attributes 7657 (report by Shidai Liu "Leo").</li> 7658 7659 <li>add a check in case someone tries to call the 7660 <code>popup-menu()</code> action on a menu which is not 7661 initialized (Debian #426364).</li> 7662 7663 <li>improve CF_IMAKE_CFLAGS to work with Solaris sed (report by 7664 Peter Bray).</li> 7665 7666 <li>improve guess for X's manpage section in 7667 <code>minstall.sh</code>, (prompted by comment by Miroslav 7668 Lichvar).</li> 7669 7670 <li>modify <code>minstall.sh</code> to handle manpage patch 7671 with more than one dot (patch by Miroslav Lichvar).</li> 7672 7673 <li>fix configure message for --disable-setgid option (patch by 7674 Miroslav Lichvar).</li> 7675 7676 <li>add <code>allowTitleOps</code> resource to allow users to 7677 prevent the title- and icon-names from changing (request by 7678 John Bashinski).</li> 7679 7680 <li>fix "spawn-new-terminal" action, for the case where no 7681 parameter is passed to the action (patch by Daniel 7682 Colascione).</li> 7683 7684 <li>fix error-checking on internal font switching for 7685 "Selection" menu entry (Debian #421523).</li> 7686 7687 <li>amend select/paste change from <a href="#xterm_225">patch 7688 #225</a> by limiting it to non-UTF-8/non-KOI8-R encoding 7689 (Debian #420974).</li> 7690 7691 <li>add workaround for groff ".URL" codes which are not present 7692 in some commonly-used bitmap fonts (Debian #418324).</li> 7693 </ul> 7694 7695 <h1><a name="xterm_225" id="xterm_225">Patch #225 - 2007/3/24</a></h1> 7696 7697 <ul> 7698 <li>add <code>useClipping</code> resource to allow clipping to 7699 be disabled.</li> 7700 7701 <li>use <code>XftDrawSetClipRectangles</code> to work around 7702 Xft pixel-trash (report by Reuben Thomas).</li> 7703 7704 <li>add configure option <code>--enable-tcap-fkeys</code>, and 7705 resource <code>tcapFunctionKeys</code>, which can be used to 7706 tell xterm to use function-key definitions from the termcap (or 7707 terminfo) which it uses to set $TERM on startup.</li> 7708 7709 <li>add resources <code>altIsNotMeta</code> and 7710 <code>altSendsEscape</code> to allow one to use Alt-keys like 7711 the meta-key even if they are bound to different keycodes 7712 (prompted by discussion with Daniel Jacobowitz).</li> 7713 7714 <li>revert a change from <a href="#xterm_216">patch #216</a> 7715 that unnecessarily made the meta modifier override the 7716 <code>eightBitInput</code> resource if the alt- and 7717 meta-modifiers happened to overlap (report/patch by Daniel 7718 Jacobowitz).</li> 7719 7720 <li>correct associated font for active icon for colored text 7721 (broken in <a href="#xterm_224">patch #224</a>).</li> 7722 7723 <li>correct ifdef's for Darwin (patch by Emanuele 7724 Giaquinta).</li> 7725 7726 <li>add <code>highlightTextColor</code> resource, and options 7727 <code>-selfg</code>, <code>-selbg</code> like <code>xwsh</code> 7728 (adapted from patch by Victor Vaile).</li> 7729 7730 <li>revise <code>find_closest_color()</code> function to 7731 address concern about borrowing from <code>Tcl/Tk</code> 7732 (request by Dan McNichol).</li> 7733 7734 <li>add "spawn-new-terminal" action, which can be assigned to 7735 key translation, allowing one to spawn a new copy of xterm 7736 using the current process's working directory (adapted from 7737 patch by Daniel Colascione).</li> 7738 7739 <li>improve select/paste between UTF-8 and Latin1 xterms by 7740 adapting the translations from <a href="#xterm_185">patch 7741 #185</a>. Extend that to include Unicode fullwidth forms 7742 FF00-FF5E. Also modify select/paste of DEC line-drawing 7743 characters in Latin1 mode to use ASCII characters.</li> 7744 7745 <li>add "Enable Bell Urgency" to VT Options menu, removed 7746 "Enable Margin Bell".</li> 7747 7748 <li>add <code>bellIsUrgent</code> resource to control whether 7749 the Urgency hint is set/reset.</li> 7750 7751 <li>modify to set Urgency window manager hint on bell, reset it 7752 on Focus-In event (patch by Emanuele Giaquinta).</li> 7753 7754 <li>add <code>--disable-setgid</code> configure option (request 7755 by Miroslav Lichvar).</li> 7756 7757 <li>fix a possible infinite loop in last change to 7758 <code>dabbrev-expand()</code> (patch by Emanuele 7759 Giaquinta).</li> 7760 7761 <li>modify initialization to set the pty erase value if the 7762 <code>erase</code> is set in the <code>ttyModes</code> 7763 resource. This overrides the <code>ptyInitialErase</code> 7764 setting (request by Lluís Batlle i Rossell).</li> 7765 7766 <li>add <code>initialFont</code> resource to xterm widget, like 7767 tek-widget (Debian #299669).</li> 7768 7769 <li>amend change to <code>boldMode</code> from <a href= 7770 "#xterm_223">patch #223</a> for Debian #347790. As noted in 7771 Debian #412599, that made xterm no longer match the documented 7772 behavior. Add new resource <code>alwaysBoldMode</code> to allow 7773 overriding the comparison between normal/bold fonts when 7774 deciding whether to use overstriking to simulate bold 7775 fonts.</li> 7776 7777 <li>restore background color in ClearCurBackground(), omitted 7778 in changes for <a href="#xterm_223">patch #223</a> (report by 7779 Miroslav Lichvar).</li> 7780 7781 <li>correct logic for repainting double-width TrueType 7782 characters (prompted by test-case for Novell #246573).</li> 7783 7784 <li>add a check to avoid trying to repeat a multibyte character 7785 (report by Sami Farin).</li> 7786 7787 <li>modify parameter to <code>XftNameParse()</code> to select 7788 wide face-name as needed, to make <code>-fd</code> option work 7789 (patch by Mike Fabian, Novell #246573).</li> 7790 7791 <li>correct logic for mouse highlight tracking's abort 7792 sequence, broken in a restructuring modification from <a href= 7793 "#xterm_224">patch #224</a> (report by Thomas Wolff).</li> 7794 7795 <li>revert the simplification of blinking cursor, since that 7796 broke the xor'ing introduced in <a href="#xterm_193">patch 7797 #193</a> (report by Thomas Wolff).</li> 7798 </ul> 7799 7800 <h1><a name="xterm_224" id="xterm_224">Patch #224 - 2007/2/11</a></h1> 7801 7802 <ul> 7803 <li>simplify code for set/reset mode for blinking cursor (patch 7804 by Emanuele Giaquinta).</li> 7805 7806 <li>modify <code>dabbrev-expand()</code> to restart after the 7807 last match (patch by Emanuele Giaquinta).</li> 7808 7809 <li>add control sequences for enabling/disabling focus in/out 7810 event reporting (request by Bram Moolenaar).</li> 7811 7812 <li>improve startup performance of menus by adding resource 7813 setting <code>menuLocale</code> which can be set to override 7814 X's lengthy initialization of fontsets - which are seldom used 7815 for the <code>Xaw</code> popup menus (adapted from patch by 7816 Dave Coffin).</li> 7817 7818 <li>modify <code>do_precomposition()</code> function and 7819 <code>make-precompose.sh</code> to handle 21-bit codes vs the 7820 16-bit codes those were written for, and fix a few mis-sorted 7821 codes (patch by Thomas Wolff).</li> 7822 7823 <li>handle special case in <code>-cjk_width</code> which 7824 unexpectedly caused a character's width to change when a 7825 combining character (patch by Thomas Wolff)</li> 7826 7827 <li>fix build for GNU/KFreeBSD (Debian #40111).</li> 7828 7829 <li>consolidate GC creation/updating into a single module to 7830 reduce GC manipulation (prompted by Debian #389476, though a 7831 complete fix would involve optimizing the scrolling 7832 behavior).</li> 7833 7834 <li>fix ifdef of xtermCellWidth(), which broke for a case 7835 without TrueType and without wide-character support (report by 7836 Martin Pirker).</li> 7837 7838 <li>undo a comparison in 7839 <code>handle_translated_exposure</code> which did not work due 7840 to X server optimization. That caused the inner border to be 7841 repainted with unexpected colors when handling a repaint, e.g., 7842 after switching to/from another workspace (Debian #401726, 7843 Redhat Bugzilla #223027).</li> 7844 7845 <li>allow <code>-cr</code> option to override cursor color when 7846 <code>-ah</code> option is used (Debian #406502).</li> 7847 7848 <li>add a note in xterm's manpage explaining that the 7849 <code>-bw</code> (or <code>-w</code>) option is only used by 7850 the window manager, if at all (Debian #405043).</li> 7851 7852 <li>make <code>Selection</code> of <code>VT Fonts</code> 7853 work with <code>selectToClipboard</code> resource.</li> 7854 7855 <li>correct length calculation for <code>Selection</code> entry 7856 of <code>VT Fonts</code> menu, broken since it ignored the 7857 actual selection length since X11R4.</li> 7858 7859 <li>fixes for fontsize changes with <code>-fa</code> option 7860 (Redhat Bugzilla #222340).</li> 7861 </ul> 7862 7863 <h1><a name="xterm_223" id="xterm_223">Patch #223 - 7864 2006/11/30</a></h1> 7865 7866 <ul> 7867 <li>add <code>--enable-rectangles</code> configure option 7868 (request by Martin Pirker).</li> 7869 7870 <li>correct default value for <code>--with-symlink</code> 7871 configure option.</li> 7872 7873 <li>fixes configure script macros that use 7874 <code>$X_EXTRA_LIBS</code>.</li> 7875 7876 <li>modify configure script to provide support for pre-package 7877 config versions of Xft aka "FreeType".</li> 7878 7879 <li>add the Xaw scrollbar translations resource to the xterm 7880 manpage, add an example showing how to change the mouse button 7881 assignments (Debian #382225).</li> 7882 7883 <li>amend a change from <a href="#xterm_216">patch #216</a>, 7884 which omitted modifiers for control, meta, etc., if they were 7885 mixed with any other modifiers. The intent of the change was to 7886 avoid confusion with <code>XK_Mode_switch</code> and 7887 <code>XK_ISO_Level3_Shift</code>; the check is now done 7888 explicitly (report by Daniel Jacobowitz).</li> 7889 7890 <li>interpret a negative value for 7891 <code>modifyCursorKeys</code> or 7892 <code>modifyFunctionKeys</code> resources to disable the 7893 respective features (prompted by Novell #220728).</li> 7894 7895 <li>amend cell-width computation for FreeType from <a href= 7896 "#xterm_217">patch #217</a>, which did not work for VT100 7897 line-drawing characters (Debian #399638, Gentoo #147111).</li> 7898 7899 <li>amend a change from <a href="#xterm_216">patch #216</a>, 7900 which made alt-modifier on a cursor-key send a modifier 7901 parameter (Novell #220728).</li> 7902 7903 <li>correct an off-by-one that made DECCRA not work 7904 (report/patch by Martin Pirker).</li> 7905 7906 <li>revert an optimization in SGR_Foreground() and 7907 SGR_Background from <a href="#xterm_209">patch #209</a> (Debian 7908 #347722, analysis by Pierre Lombard).</li> 7909 7910 <li>fix for <code>boldMode</code> (Debian #347790, patch by Tim 7911 Pope).</li> 7912 7913 <li>amend fix for <code>-iconic</code> in <a href= 7914 "#xterm_208">patch #208</a>, which broke the positioning part 7915 of <code>-geom</code> with toolbar configuration.</li> 7916 7917 <li>fix to prevent indexing error in regular expressions (patch 7918 by Dennis Schneider).</li> 7919 7920 <li>fixes to make the <code>internalBorder</code> area not 7921 change color due to reverseVideo and/or related exposure 7922 events. The latter was a very old bug exposed in <a href= 7923 "#xterm_196">patch #196</a> (report by Neil Hoggarth, also 7924 Debian #397624).</li> 7925 </ul> 7926 7927 <h1><a name="xterm_222" id="xterm_222">Patch #222 - 7928 2006/10/17</a></h1> 7929 7930 <ul> 7931 <li>minor optimization for recoloring cursor via dynamic 7932 colors.</li> 7933 7934 <li>fix a bug caused by restructuring of tek4014 widget (report 7935 by Paul Schenkeveld)</li> 7936 </ul> 7937 7938 <h1><a name="xterm_221" id="xterm_221">Patch #221 - 2006/10/1</a></h1> 7939 7940 <ul> 7941 <li>fix for regular expressions: the code which converted the 7942 column offset within a line did not check properly for the end 7943 of a line, and if allowed to match the whole line, would select 7944 the beginning of the following line. If the following line were 7945 empty, in turn it would select from the next, etc. (report by 7946 Sean Reifschneider).</li> 7947 7948 <li>minor optimization of color allocation to avoid repainting 7949 the screen if the corresponding color had not been 7950 allocated.</li> 7951 7952 <li>fixes for vttests/256colors.pl (report by Egmont 7953 Koblinger).</li> 7954 7955 <li>add terminfo building block entries for modifiers of the 7956 6-key editing keypad.</li> 7957 7958 <li>fix for initialization of tek4014 which broke on QNX 7959 6.1</li> 7960 </ul> 7961 7962 <h1><a name="xterm_220" id="xterm_220">Patch #220 - 2006/9/10</a></h1> 7963 7964 <ul> 7965 <li>make "xterm -t -iconic" work as expected, i.e., start in 7966 tek4014 mode, but iconified.</li> 7967 </ul> 7968 7969 <h1><a name="xterm_219" id="xterm_219">Patch #219 - 2006/9/4</a></h1> 7970 7971 <ul> 7972 <li>some internal restructuring to separate data for vt100 and 7973 tek4014 widgets.</li> 7974 7975 <li>fix a few cases where form-events would be seen by the 7976 vt100 widget when built with the toolbar configuration.</li> 7977 </ul> 7978 7979 <h1><a name="xterm_218" id="xterm_218">Patch #218 - 2006/8/27</a></h1> 7980 7981 <ul> 7982 <li>change behavior when encountering an illegal character in a 7983 title string. Rather than reject the string, translate illegal 7984 characters into "?" and use the string (requested by Thomas 7985 Wolff).</li> 7986 7987 <li>improve checks for nonprinting characters in title strings 7988 (report by Samuel Thibault).</li> 7989 7990 <li>correct typo in menu labels, changing 7991 <code>print-redirect</code> to <code>print-redir</code>, making 7992 it follow the manpage and match the usage for the actions table 7993 (report by Samuel Thibault).</li> 7994 7995 <li>correct a typo that prevents building with some older 7996 systems such as Solaris 2.6 (report by Julian Bridle).</li> 7997 </ul> 7998 7999 <h1><a name="xterm_217" id="xterm_217">Patch #217 - 2006/8/20</a></h1> 8000 8001 <ul> 8002 <li>minor improvements to FreeType font layout and 8003 drawing.</li> 8004 8005 <li>add a check in the ptyInitialErase logic to ensure that the 8006 termcap was read (Redhat Bugzilla #201246).</li> 8007 8008 <li>limit changes for reverse-video from <a href= 8009 "#xterm_216">patch #216</a> to cases where the reverse-video 8010 command-line option is used (report by Zdenek Sekera).</li> 8011 8012 <li>correct bitmap-derived pointsizes for TrueType fonts; they 8013 should be proportional to the square root of the area of the 8014 bitmap fonts.</li> 8015 8016 <li>add resources to specify pointsize of TrueType fonts 8017 (request by Reuben Thomas).</li> 8018 8019 <li>improve install of terminfo by filtering out harmless 8020 messages related to extended capabilities. At the same time, 8021 use ncurses tic to compile the extended capabilities if 8022 possible (report by Zdenek Sekera).</li> 8023 8024 <li>update "xterm+pcfkeys" terminfo entry to correspond to 8025 <a href="#xterm_216">patch #216</a>.</li> 8026 </ul> 8027 8028 <h1><a name="xterm_216" id="xterm_216">Patch #216 - 2006/8/3</a></h1> 8029 8030 <ul> 8031 <li>improve handling of <code>ConfigureNotify</code> events by 8032 checking if there are further events in the queue which 8033 obsolete the current one (adapted from rxvt 2.7.5). Only the 8034 normal normal (non-toolbar) configuration is addressed in this 8035 patch.</li> 8036 8037 <li>several changes to terminfo: 8038 <ul> 8039 <li>incorporate some minor changes from ncurses to help 8040 keep these synchronized: 8041 <dl> 8042 <dt>2005-02-26</dt> 8043 8044 <dd>modify sgr/sgr0 in xterm-new to improve tgetent's 8045 derived "me".</dd> 8046 8047 <dt>2006-02-18</dt> 8048 8049 <dd>remove ncv flag from xterm-16color</dd> 8050 8051 <dt>2006-06-24</dt> 8052 8053 <dd>improve xterm-256color by combining the 16-color 8054 setaf/setab strings with SGR 48, and cancelling the 8055 setf/setb strings.</dd> 8056 </dl> 8057 </li> 8058 8059 <li>use extended function-key definitions for xterm-sun, 8060 xterm-sco entries.</li> 8061 8062 <li>add terminfo building-blocks corresponding to the 8063 <code>modifyFunctionKeys</code> and 8064 <code>modifyCursorKeys</code> resources.</li> 8065 </ul> 8066 </li> 8067 8068 <li>ifdef'd Sun function-key feature to make it optional, like 8069 HP and SCO.</li> 8070 8071 <li>extend table for termcap-query feature through F63, and 8072 updated tcapquery.pl to match.</li> 8073 8074 <li>modify logic for function-key input processing to allow 8075 function key numbers which are constructed by control- and 8076 shift-modifiers to extend beyond X's hardcoded limit of 8077 35.</li> 8078 8079 <li>add control sequence to set or reset the 8080 <code>eightBitInput</code> resource.</li> 8081 8082 <li>change default resource <code>modifyFunctionKeys</code> to 8083 2 to avoid sending SS3 with parameters (report by Kalle Olavi 8084 Niemitalo).</li> 8085 8086 <li>add control sequences for setting and resetting the values 8087 of the <code>modifyCursorKeys</code>, 8088 <code>modifyFunctionKeys</code> and 8089 <code>modifyOtherKeys</code> resources.</li> 8090 8091 <li>add <code>modifyFunctionKeys</code> resource like 8092 <code>modifyCursorKeys</code>. Setting this to zero allows one 8093 to use the control- and shift-modifiers to construct function 8094 key strings, for terminals using many function keys, e.g., for 8095 <code>xterm-sun</code> or <code>xterm-sco</code>.</li> 8096 8097 <li>modify screen responses and function-key logic to reduce 8098 the number of writes made, to make it less likely that an 8099 application would read only part of a function-key in a read 8100 operation (suggested by John E Urbanczyk).</li> 8101 8102 <li>add <code>combiningChars</code> resource, which allows the 8103 user to specify the maximum number of combining characters that 8104 xterm will store for each cell in wide-character mode (prompted 8105 by request by Markus Kuhn to increase the limit from 2).</li> 8106 8107 <li>improve logic in <code>metaSendsEscape</code> in case the 8108 Alt- and Meta-keys are mapped to different modifiers. That 8109 allows one to use the Alt-key for shifting in the 8110 <code>eightBitInput</code> and use a Meta-key modifier to 8111 prefix the result with an <code><ESC></code>.</li> 8112 8113 <li>improve <code>modifyCursorKeys</code> logic to prevent it 8114 from modifying codes where <code>eightBitInput</code> or 8115 <code>metaSendsEscape</code> are set (request by Dan 8116 Nicolaescu).</li> 8117 8118 <li>improve <code>modifyCursorKeys</code> logic to prevent it 8119 from changing the user input when other modifiers such as AltGr 8120 are used (report by Thomas Wolff).</li> 8121 8122 <li>extend <code>modifyCursorKeys</code> to include the numeric 8123 keypad when in application mode.</li> 8124 8125 <li>improve <code>-reverse</code> (<code>-rv</code>) option 8126 (patch by Jason Vas Dias, Redhat #189161).</li> 8127 8128 <li>workaround for color resources on Fedora-5 which made the 8129 toolbar colors inconsistent.</li> 8130 8131 <li>corrected calls used for <code>--disable-setuid</code> 8132 option, add debugging traces to help diagnose this area.</li> 8133 8134 <li>modify configure script to ensure that 8135 <code>USE_UTMP_SETGID</code> is defined only if the check for 8136 POSIX saved-ids succeeds, or corresponds to one of the BSD 8137 systems known to have a workable <code>setegid</code> 8138 function.</li> 8139 8140 <li>extend configure check for POSIX saved-ids to include BSD 8141 systems</li> 8142 8143 <li>modify CF_SYSV configure macro to work with gcc on HPUX 8144 10.20, whose broken <code><term.h></code> relies on 8145 including <code><termios.h></code>.</li> 8146 8147 <li>change order of setuid/setgid ifdef checks in Imakefile to 8148 make it simpler to produce a setgid install, allowing the 8149 latter to override the former (prompted by an XFree86 8150 commit).</li> 8151 8152 <li>adapt a fix for setgid support from subsequent XFree86 8153 changes (patch by Emanuele Giaquinta).</li> 8154 8155 <li>further improve setgid support (patches by Emanuele 8156 Giaquinta).</li> 8157 </ul> 8158 8159 <h1><a name="xterm_215" id="xterm_215">Patch #215 - 2006/6/19 - 8160 XFree86 4.6.99.2</a></h1> 8161 8162 <ul> 8163 <li>improve setgid support by exploiting the saved-ids feature 8164 on which it relies (patch by Emanuele Giaquinta).</li> 8165 8166 <li>make the <code>modifyOtherKeys</code> resource disabled by 8167 default since the intermediate setting altered some common 8168 bindings (report by Emanuele Giaquinta).</li> 8169 </ul> 8170 8171 <h1><a name="xterm_214" id="xterm_214">Patch #214 - 2006/6/18 - 8172 XFree86 4.6.99.2</a></h1> 8173 8174 <ul> 8175 <li>modify makefile rule for ctlseqs.txt to strip 8176 backspace/overstrikes, and add a copy of ctlseqs.txt to the 8177 source tarballs (requests by Bram Moolenaar, Emanuele 8178 Giaquinta).</li> 8179 8180 <li>add <code>modifyOtherKeys</code> resource, analogous to the 8181 <code>modifyCursorKeys</code> resource. This applies to keys 8182 that normally would transmit nothing when a given modifier is 8183 applied (request by Dan Nicolaescu).</li> 8184 8185 <li>add <code>default</code> to the acceptable values for the 8186 <code>keyboardType</code> resource, allowing the 8187 <code>-kt</code> command-line option to override app-defaults 8188 resource settings of <code>sunKeyboard</code>, etc.</li> 8189 8190 <li>correct ifdef's for <code>XkbBell()</code> which used the 8191 header file but not the corresponding function in <a href= 8192 "#xterm_175">patch #175</a> (report by Zach Beane).</li> 8193 8194 <li>add xterm manpage to the <code>--with-symlink</code> 8195 logic.</li> 8196 8197 <li>regenerated configure script to omit some debugging 8198 artifacts of the SIGWINCH test.</li> 8199 8200 <li>fix <code>install-man</code> rule in 8201 <code>Makefile.in</code> to avoid including the 8202 <code>$(DESTDIR)</code> value in substitutions made on the 8203 manpages (patch by Emanuele Giaquinta).</li> 8204 8205 <li>improved fix for cursor deallocation (Redhat #186935, patch 8206 by Jason Vas Dias).</li> 8207 8208 <li>improve checks for setuid/setgid operation to accommodate 8209 limited resource management in some kernels (Gentoo 8210 #193238).</li> 8211 8212 <li>update config.guess, config.sub</li> 8213 </ul> 8214 8215 <h1><a name="xterm_213" id="xterm_213">Patch #213 - 2006/4/30 - 8216 XFree86 4.5.99.905</a></h1> 8217 8218 <ul> 8219 <li>minor optimization to cell layout; will use that to 8220 simplify some logic and allow for more than two combining 8221 characters in another patch.</li> 8222 8223 <li>add <code>utf8Latin1</code> resource to make optional the 8224 feature from <a href="#xterm_209">patch #209</a> which allowed 8225 ISO-8859-1 fonts to be used in cases where a wide font was 8226 given. This would only work for the special case where the user 8227 normally used Latin-1 and wanted some wide characters (report 8228 by Rostislav Krasny).</li> 8229 8230 <li>add <code>utf8Title</code> resource to manpage (Novell 8231 #52655).</li> 8232 8233 <li>fix typo in table entry for <code>utf8Title</code> resource 8234 which made it treated as an integer rather than boolean (patch 8235 by Mike Fabian, Novell #52655).</li> 8236 </ul> 8237 8238 <h1><a name="xterm_212" id="xterm_212">Patch #212 - 2006/4/9 - 8239 XFree86 4.5.99.904</a></h1> 8240 8241 <ul> 8242 <li>improve description of <code>forceBoxChars</code> in 8243 manpage (discussion with Joe Wells).</li> 8244 8245 <li>set checkmark for "Select To Clipboard" menu entry on 8246 startup, from resource setting.</li> 8247 8248 <li>update manpage to note that 8249 <code>*customization:color</code> is not needed, though it is 8250 useful (Redhat #188034).</li> 8251 8252 <li>add underscore to sample pattern for URL in 8253 <code>XTerm.ad</code> (Redhat #188037).</li> 8254 8255 <li>modify install rule for manpage to use the configured 8256 app-defaults directory (Redhat #188031).</li> 8257 8258 <li>add checks in <code>releaseCursorGCs()</code> to ensure 8259 GC's are distinct, needed since memory leak changes for 8260 <a href="#xterm_208">patch #208</a> (Redhat #186935, patch by 8261 Jason Vas Dias).</li> 8262 8263 <li>modify <code>Imakefile</code> definitions to allow 8264 <code>imake</code> to set <code>InstallXtermSetGID</code>. Add 8265 symbol <code>InstGidFlags</code>.</li> 8266 8267 <li>add configure script check to ensure that SIGWINCH if 8268 defined even when headers undefine this as a side-effect of 8269 <code>_POSIX_C_SOURCE</code>, etc.</li> 8270 8271 <li>resync with XFree86 CVS 8272 <ul> 8273 <li>ifdef-out chmod of terminal device for OS/2 (XFree86 8274 #1663, Frank Giessler).</li> 8275 8276 <li>move new <code>Imakefile</code> chunk which defines 8277 <code>$(CSGIDFLAGS)</code> before DEFINES, e.g., for IRIX64 8278 (Marc La France).</li> 8279 </ul> 8280 </li> 8281 </ul> 8282 8283 <h1><a name="xterm_211" id="xterm_211">Patch #211 - 2006/3/19 - 8284 XFree86 4.5.99.902</a></h1> 8285 8286 <ul> 8287 <li>modify prefix/suffix transformation in makefile to make 8288 <code>uxterm</code> install properly on Cygwin.</li> 8289 8290 <li>restore the sizeof-comparison for <code>struct 8291 lastlog</code> added in <a href="#xterm_208">patch #208</a>, 8292 rendered (mostly) obsolete in <a href="#xterm_210">patch 8293 #210</a>, since an imake configuration can still turn that code 8294 on (prompted by comment by David Dawes).</li> 8295 8296 <li>remove feature for <code>FreeBSDArchitecture</code> from 8297 <code>Imakefile</code> which would install xterm using the 8298 <code>utmp</code> group since a standard FreeBSD system has no 8299 such group, though it would support this configuration. FreeBSD 8300 packager uses the <code>configure</code> script, which can make 8301 the appropriate check (prompted by comment by David 8302 Dawes).</li> 8303 8304 <li>fixes for gcc redefinition warnings when built using imake 8305 (reports by David Dawes, Marc La France).</li> 8306 </ul> 8307 8308 <h1><a name="xterm_210" id="xterm_210">Patch #210 - 2006/3/12 - 8309 XFree86 4.5.99.902</a></h1> 8310 8311 <ul> 8312 <li>add configure check for workaround in <a href= 8313 "#xterm_208">patch #208</a> for Solaris' inconsistent support 8314 for struct lastlog to quiet compiler warnings (prompted by 8315 David Dawes commit message for XFree86).</li> 8316 8317 <li>fixes for BASE64 selection manipulation, e.g., ensure that 8318 the string terminator is written after cut-buffer data (report 8319 by Joe Allen).</li> 8320 8321 <li>add vttests/paste64.pl script to test experimental option 8322 for setting/getting selection data.</li> 8323 8324 <li>add some error-checking in fontutils.c (prompted by David 8325 Dawes commit message for XFree86).</li> 8326 8327 <li>change xterm manpage to show the actual color resource 8328 names <code>XtDefaultForeground</code> and 8329 <code>XtDefaultBackground</code> rather than black and white 8330 (prompted by discussion with Emanuele Giaquinta).</li> 8331 8332 <li>add <code>utf8Title</code> resource and menu entry, 8333 allowing the user to control whether title strings are 8334 interpreted as ISO-8859-1 or UTF-8 encoding (Novell #52655, 8335 Novell #113206).</li> 8336 8337 <li>change order of ifdef's for utempter versus platforms in 8338 <code>Imakefile</code> to ensure a proper value for 8339 <code>InstallXtermSetGID</code> (prompted by Marc La France 8340 commit message for XFree86).</li> 8341 8342 <li>update the cursor GCs when menu entry for reverse video is 8343 toggled. (Redhat #183993).</li> 8344 8345 <li>a memory-leak fix for <code>set_cursor_gcs()</code> in 8346 <a href="#xterm_208">patch #208</a> broke the <code>-cm</code> 8347 option (Redhat #182382).</li> 8348 </ul> 8349 8350 <h1><a name="xterm_209" id="xterm_209">Patch #209 - 2006/2/12 - 8351 XFree86 4.5.99.22</a></h1> 8352 8353 <ul> 8354 <li>remove <code>setf</code> and <code>setb</code> from 8355 <code>xterm-256color</code> terminfo entry to avoid issues with 8356 applications that ignore the ANSI strings (report by Emanuele 8357 Giaquinta).</li> 8358 8359 <li>remove obsolete references to "Xorg" to avoid confusion 8360 with "X.org" (prompted by David Dawes commit message for 8361 XFree86).</li> 8362 8363 <li>improve initial layout performance for the toolbar 8364 configuration by precalculating the height of the toolbar.</li> 8365 8366 <li>remove menu entry for "Enable Curses Emulation" (to make 8367 room for "Select To Clipboard").</li> 8368 8369 <li>add resource <code>selectToClipboard</code>, action 8370 <code>set-select</code> and a menu entry to allow users to 8371 switch between PRIMARY and CLIPBOARD for select/paste.</li> 8372 8373 <li>allow cursor to have the same color as foreground (text), 8374 since it is rendered as reverse (Debian #350664).</li> 8375 8376 <li>amend change for loading <code>utf8Fonts</code> resource 8377 from <a href="#xterm_204">patch #204</a> to allow an ISO-8859-1 8378 "normal" font to be combined with an ISO-10646 font if the 8379 latter is given via the <code>-fw</code> option or its 8380 corresponding resource value (prompted by comment in Novell 8381 #49305).</li> 8382 8383 <li>add <code>TIOCSCTTY</code> <code>ioctl()</code> ifdef'd for 8384 <code>__GNU__</code> to set the controlling terminal (Debian 8385 #348457).</li> 8386 8387 <li>add configure option <code>--disable-leaks</code>.</li> 8388 8389 <li>add a check in <code>Bell</code> to ensure that the VT100 8390 widget is realized, since it may be called by 8391 <code>xtermLoadFont</code> given an incorrect font resource 8392 (Redhat #180450).</li> 8393 8394 <li>improve initialization of wide-bold font by not using the 8395 derived value when it happens to have few glyphs (report by 8396 Mboso Sampson).</li> 8397 8398 <li>improve dynamic colors by not repainting the screen if only 8399 the cursor color changes (request by Bram Moolenaar).</li> 8400 8401 <li>fix menu initialization for tek4014 window broken in 8402 <a href="#xterm_206">patch #206</a>.</li> 8403 8404 <li>typo in manpage (Debian #351425).</li> 8405 8406 <li>correct loop logic in <code>dotext</code> to prevent an 8407 infinite loop if a wide character was just at the right margin 8408 when wrapping was disabled (report by Serge van den Boom).</li> 8409 8410 <li>initialize the saved-cursor data so a restore-cursor 8411 operation without a preceding save-cursor operation will not 8412 modify the foreground color.</li> 8413 8414 <li>add a new selection feature: regular expressions, and new 8415 resources which specify what happens on multiple mouse clicks: 8416 <code>on2Clicks</code>, <code>on3Clicks</code>, 8417 <code>on4Clicks</code> and <code>on5Clicks</code>.</li> 8418 8419 <li>revert the <code>XTerm.ad</code> change from <a href= 8420 "#xterm_208">patch #208</a> (Debian #348384).</li> 8421 8422 <li>fixes for the print-window to make it handle combining 8423 characters in UTF-8 mode.</li> 8424 8425 <li>add check to ensure that double-clicking to extend 8426 selection will not extend it into the scrollback area. This 8427 still allows users to scroll back and select text (Debian 8428 #347415).</li> 8429 8430 <li>add configure option <code>--with-tty-group</code> to help 8431 work around deficiencies in packager's build environment 8432 (Debian #349142).</li> 8433 8434 <li>fix typo in configure script option 8435 <code>--disable-narrowproto</code> (report by David 8436 Martínez Moreno).</li> 8437 8438 <li>amend CF_X_FREETYPE changes for <code>pkg-config</code> 8439 check to ensure that <code>Xft</code> is known to that tool 8440 (report and patch by Emanuele Giaquinta).</li> 8441 8442 <li>add an ifdef to allow <code>./configure 8443 --disable-active-icon</code> to work, broken by new code for 8444 testing memory leaks in <a href="#xterm_208">patch #208</a> 8445 (report by Brian Lindholm).</li> 8446 </ul> 8447 8448 <h1><a name="xterm_208" id="xterm_208">Patch #208 - 2006/1/3 - 8449 XFree86 4.5.99.19</a></h1> 8450 8451 <ul> 8452 <li>add <code>charClass</code> resource to 8453 <code>XTerm.ad</code> and <code>UXTerm.ad</code> which 8454 simplifies selecting URLs (prompted by Kirill Ponomarew).</li> 8455 8456 <li>modify install rule for <code>uxterm</code> to account for 8457 the <code>--program-prefix</code>, etc., options by invoking 8458 the transformed name of xterm rather than simply "xterm".</li> 8459 8460 <li>modify configure <code>--with-app-defaults</code> option to 8461 allow <code>--without-app-defaults</code>.</li> 8462 8463 <li>add configure <code>--with-symlink</code> option to make it 8464 simpler to install successive versions of <code>xterm</code> 8465 renamed using the <code>--program-prefix</code>, etc., options 8466 with a symbolic link pointing to the most recent.</li> 8467 8468 <li>make <code>-iconic</code> option work with toolbar 8469 configuration (Gentoo #113604).</li> 8470 8471 <li>suppress <code>lastlog</code> feature for 64-bit Solaris 8472 configuration since that platform provides only a 32-bit 8473 interface (report by Peter Bray).</li> 8474 8475 <li>fix memory reallocation for the "UTF-8" menu entry when 8476 xterm is started using the <code>+u8</code> option (reported by 8477 Jan Willem Stumpel).</li> 8478 8479 <li>add a configure check for the actual path of 8480 <code>luit</code>, to work around broken <code>imake</code> 8481 configurations.</li> 8482 8483 <li>add a configure check for <code>pkg-config</code> (Redhat 8484 Bugzilla #173541).</li> 8485 8486 <li>modify install-rule for <code>uxterm</code> to omit 8487 executable suffix, e.g., for Cygwin.</li> 8488 8489 <li>modify <code>sinstall.sh</code> to work around quirks in 8490 Cygwin configuration.</li> 8491 </ul> 8492 8493 <h1><a name="xterm_207" id="xterm_207">Patch #207 - 2005/11/13 - 8494 XFree86 4.5.99.16</a></h1> 8495 8496 <ul> 8497 <li>enable <code>lastlogx</code> support for NetBSD (was added, 8498 but not enabled in <a href="#xterm_186">patch #186</a>).</li> 8499 8500 <li>work around broken <code>lastlog.h</code> in glibc 2.3.5, 8501 which includes <code>utmp.h</code>.</li> 8502 8503 <li>revert part of recent XFree86 Imakefile change, restoring 8504 the <code>-I.</code> needed for <code>xmkmf</code> builds of 8505 xterm (XFree86 Bugzilla #1633, reports by Alexander Pohoyda, 8506 Matthieu Herrb).</li> 8507 8508 <li>change compiled-in default for <code>printerCommand</code> 8509 resource to an empty string. People who want to use the printer 8510 should be able to read the manual (Debian #311490).</li> 8511 8512 <li>modify <code>Imakefile</code> to work around old problems 8513 in <code>imake</code> configuration to allow test-builds using 8514 <code>xmkmf</code> on Linux. (This was not noticed since 8515 several releases had broken definitions relating to Xft which 8516 were harder to work around).</li> 8517 8518 <li>link <code>resize</code> for SCO platforms (Kean 8519 Johnston).</li> 8520 </ul> 8521 8522 <h1><a name="xterm_206" id="xterm_206">Patch #206 - 2005/11/3 - 8523 XFree86 4.5.99.15</a></h1> 8524 8525 <ul> 8526 <li>add configure <code>--with-app-defaults</code> option to 8527 allow app-defaults directory for install-rules to be 8528 customized.</li> 8529 8530 <li>remove default translations for 8531 <code>dabbrev-expand()</code> due to conflicts with existing 8532 keyboard arrangements.</li> 8533 8534 <li>remove redundant check for <code>_NET_WM_PID</code> (report 8535 by Emanuele Giaquinta).</li> 8536 8537 <li>set icon border width explicitly to work around fvwm 8538 problem with active icon resizing (report by Steve Morris, 8539 analysis by Dominik Vogt).</li> 8540 8541 <li>modify resource files to make the font-resources a little 8542 more specific, e.g., changing "*VT100*" to "*VT100.", to make 8543 the distinction between VT100.font and VT100.utf8Fonts.font 8544 sharper, in case a packager modifies one of those.</li> 8545 8546 <li>expanded comments in <code>UXTerm.ad</code> regarding the 8547 font resources (Debian #319179).</li> 8548 8549 <li>add <code>--enable-narrowproto</code> configure option to 8550 accommodate X.org "modular" build (report by Stephan Hermann, 8551 Gentoo #17220).</li> 8552 8553 <li>fix typo in xterm.man description of <code>+wf</code> 8554 (patch by Tobias Stoeckmann).</li> 8555 8556 <li>add <code>scrollBarBorder</code> resource (request by Floyd 8557 L Davidson).</li> 8558 8559 <li>modify <code>xterm-new</code> terminfo entry to use 8560 capabilities for shifted scroll forward/reverse as shifted 8561 cursor up/down.</li> 8562 8563 <li>correct updating of checkmark for toolbar entry in popup 8564 menu (report by Emanuele Giaquinta).</li> 8565 8566 <li>fix ifdef's to allow compiling with toolbar and without 8567 tek4014 (patch by Emanuele Giaquinta).</li> 8568 8569 <li>use <code>openpty()</code> for Darwin port (patch by 8570 Emanuele Giaquinta).</li> 8571 8572 <li>fix Gentoo #90697 a different way, postponing the logic in 8573 <code>SetupToolbar</code> until the toolbar is actually needed, 8574 i.e., the <code>+tb</code> option is handled as expected.</li> 8575 8576 <li>revert fix made in <a href="#xterm_203">patch #203</a> for 8577 Gentoo #90697. That introduced a problem with the control mouse 8578 click-popups, while most of the performance problems can be 8579 resolved by restricting the menu fonts (report by Emanuele 8580 Giaquinta).</li> 8581 8582 <li>fix a file-descriptor leak when calling 8583 <code>openpty()</code> (OpenBSD system/4561).</li> 8584 8585 <li>make a special case of resizing work like vt100: a hard 8586 reset also resets the 132/80 mode. The code to support this was 8587 present since X11R5, but not used because the corresponding 8588 initial state of the <code>-132</code> option was not 8589 saved.</li> 8590 8591 <li>restore window manager hints after 8592 <code>XtMakeResizeRequest()</code> calls. One instance from 8593 <a href="#xterm_205">patch #205</a> resulted in the window 8594 manager displaying pixels rather than than characters after 8595 selecting a different font size (FreeBSD ports/87424).</li> 8596 8597 <li>remove special case for Darwin in CF_XOPEN_SOURCE (Emanuele 8598 Giaquinta).</li> 8599 8600 <li>modify parsing of control sequence <code>CSI T</code> 8601 to allow scroll-down to be sent while mouse tracking is enabled 8602 (request by D Hugh Redelmeier).</li> 8603 8604 <li>correct termcap "me" (mode-end) string so it does not 8605 modify the alternate character set (report by Andrey 8606 Chernov).</li> 8607 8608 <li>correct size-comparison in HandleInterpret() broken in 8609 changes from <a href="#xterm_201">patch #201</a> to allocate 8610 input buffer (Debian #334317).</li> 8611 8612 <li>amend adjustments for scrollbar layout from <a href= 8613 "#xterm_204">patch #204</a> to make this apply only to the 8614 toolbar configuration. In the non-toolbar configuration, the 8615 resulting scrollbar was shifted by its borderwidth (report by 8616 Matthieu Herrb).</li> 8617 8618 <li>add select-cursor-extend() action.</li> 8619 8620 <li>fix some broken href's in xterm.log.html, and typo in the 8621 INSTALL file (report/patch by David Martínez 8622 Moreno).</li> 8623 8624 <li>modify <code>Imakefile</code> to use setgid mode for 8625 installing with Linux, OpenBSD and FreeBSD.</li> 8626 8627 <li>add configure --with-setuid and --with-reference options to 8628 allow packagers more flexibility in customizing install 8629 permissions.</li> 8630 8631 <li>generalize and make optional (configure --with-utmp-setgid) 8632 the change made for XFree86 Bugzilla #878 in <a href= 8633 "#xterm_205">patch #205</a> (FreeBSD bug report 8634 #ports/86663).</li> 8635 </ul> 8636 8637 <h1><a name="xterm_205" id="xterm_205">Patch #205 - 2005/9/18 - 8638 XFree86 4.5.99.12</a></h1> 8639 8640 <ul> 8641 <li>correct a typo in CF_FUNC_TGETENT introduced in <a href= 8642 "#xterm_198">patch #198</a> fix for Gentoo #69926.</li> 8643 8644 <li>implement logic in termcap query to process multiple 8645 parameters as documented in ctlseqs.ms</li> 8646 8647 <li>fix buffer size used for termcap query, which was not long 8648 enough for the terminfo "colors" name (patch by Bradd W. 8649 Szonye).</li> 8650 8651 <li>add configure option --enable-readline-mouse, which turns 8652 on the experimental OPT_READLINE code (patch by Ilya 8653 Zakharevich).</li> 8654 8655 <li>for FreeBSD, drop setuid privileges after startup (XFree86 8656 Bugzilla #878, report/patch by Alexander Pohoyda)</li> 8657 8658 <li>add menu entry (alt-esc) and corresponding action 8659 (alt-sends-esc) to toggle the <code>eightBitInput</code> 8660 resource setting.</li> 8661 8662 <li>generate configure script with autoconf 2.52 (patched) to 8663 use the feature therein which forces the script's locale to 8664 POSIX (Gentoo Bugzilla #105369).</li> 8665 8666 <li>modify computation of rows/columns on resize to avoid 8667 extending beyond the given limits, e.g., if resizing in 8668 response to a "maximize" in Gnome or KDE which do not use the 8669 window manager hints for this case (Debian #289123, Novell 8670 #61153).</li> 8671 8672 <li>modifications to work with z/OS 1.4 (Paul Giordano).</li> 8673 8674 <li>improve error-reporting when chown/chmod of the 8675 pseudo-terminal fails, e.g., if a copy of xterm which was 8676 designed to work with old-style pseudo-terminals is not 8677 installed setuid or setgid (report by Jeremy C. Reed).</li> 8678 8679 <li>patches from Emanuele Giaquinta: 8680 <ul> 8681 <li>ctlseqs.ms says that primary and secondary DA accept a 8682 nonzero parameter, which is incorrect. Also modify code to 8683 agree with this.</li> 8684 8685 <li>correct a comment in 88colres.pl</li> 8686 8687 <li>ctlseqs.ms says that the DEC Set/Reset control 8688 sequences for the backarrow key make it send DEL/BS, 8689 respectively, while it's the opposite.</li> 8690 8691 <li>update the menu entries for the metaSendsEscape, 8692 deleteIsDEL and numLock resources when changing them with 8693 the corresponding DEC Set/Reset control sequences.</li> 8694 </ul> 8695 </li> 8696 8697 <li>fixes for configure script: 8698 <ul> 8699 <li>add special case for QNX, defining _QNX_SOURCE.</li> 8700 8701 <li>check for preprocessors which do not perform -U and -D 8702 options in the given order.</li> 8703 8704 <li>improve macro to determine gcc version</li> 8705 8706 <li>improve check for Intel compiler and related warning 8707 options</li> 8708 </ul> 8709 </li> 8710 8711 <li>update config.guess, config.sub</li> 8712 8713 <li>improve fix from <a href="#xterm_198">patch #198</a> for 8714 <code>Cleanup()</code> by ensuring it is not called from the 8715 SIGCHLD handler (patch by Todd Miller (OpenBSD CVS)).</li> 8716 8717 <li>eliminate a retry for a better-matching bold font, to work 8718 around recent font server changes.</li> 8719 8720 <li>fixes for Novell #113277: 8721 <ul> 8722 <li>specify weight for wide font which may be derived from 8723 normal fontname.</li> 8724 8725 <li>cache the derived wide- and widebolt-fontnames.</li> 8726 </ul> 8727 </li> 8728 8729 <li>workaround for Gentoo Bugzilla #100728.</li> 8730 8731 <li>add menubar's border width to layout computation. Normally 8732 this is zero, but patterns such as 8733 <code>XTerm*borderWidth:1</code> would give poor layout for the 8734 toolbar configuration.</li> 8735 </ul> 8736 8737 <h1><a name="xterm_204" id="xterm_204">Patch #204 - 2005/8/4 - 8738 XFree86 4.5.99.9</a></h1> 8739 8740 <ul> 8741 <li>work around quirk in shell which allowed user to "run" 8742 uxterm script when there was no UTF-8 locale installed by 8743 entering "sh -x uxterm". Also popup an xmessage to show the 8744 problem for users who run this via a GUI (Debian #318513).</li> 8745 8746 <li>disallow changes to fonts, toolbar and scrollbar when the 8747 vt100 window is iconified, to simplify management of the active 8748 icon.</li> 8749 8750 <li>fixes to make <code>-geom</code> option work properly with 8751 the toolbar configuration (Gentoo #90717, Gentoo #91967).</li> 8752 8753 <li>minor improvements to scrollbar layout: ensure that the 8754 scrollbar border is zero if the vt100 border is zero.</li> 8755 8756 <li>improve initialization due to <code>utf8</code> resource by 8757 loading the <code>utf8Fonts</code> resource in the case where 8758 <code>locale</code> resource is false. Also in this case, do 8759 not disable switching UTF-8 mode on/off.</li> 8760 8761 <li>minor optimization of TrueType font-loading, loads italic 8762 font only when needed.</li> 8763 8764 <li>correct variable used to store temporary result from lookup 8765 of bold font, when initializing the wide-bold-font data and no 8766 immediate match is found by asking for a bold variant of the 8767 wide-font. The result was to use overstriking rather than the 8768 actual bold font (Debian #318162, patch by Eugene Konev).</li> 8769 8770 <li>add checks to ensure vt100 widget is realized when it might 8771 be updated via actions handled from a tek4014-only 8772 configuration.</li> 8773 </ul> 8774 8775 <h1><a name="xterm_203" id="xterm_203">Patch #203 - 2005/7/6 - 8776 XFree86 4.5.99.7</a></h1> 8777 8778 <ul> 8779 <li>modify initialization of <code>allowSendEvents</code> and 8780 <code>allowWindowOps</code> to prevent modification with the 8781 editres protocol.</li> 8782 8783 <li>fix compiler warning for NetBSD by including util.h in 8784 main.c (XFree86 Bugzilla #1596).</li> 8785 8786 <li>fix to build on Darwin 8.x, which no longer provides 8787 <code>setpgrp()</code> (patch by Min Sik Kim).</li> 8788 8789 <li>adapted fixes for Legend (SCO) from diffs attached to 8790 Freedesktop.Org Bugzilla #3180.</li> 8791 8792 <li>fix typo in xterm manpage description of <code>-ls</code> 8793 option (Freedesktop.Org Bugzilla #3543).</li> 8794 8795 <li>add support for interpreting the underline attribute as an 8796 italic font in Xft mode (patch by Chuck Blake).</li> 8797 8798 <li>improve initialization of toolbar so that individual 8799 pulldown menus are initialized on demand, as they are in the 8800 scenario where they are invoked as popup menus (Gentoo Bugzilla 8801 #90697).</li> 8802 8803 <li>fix logic in <code>find_utmp</code>, which did not reset 8804 result in <code>getutid()</code>, causing an infinite loop in 8805 some conditions (report by Emil Mikulic).</li> 8806 8807 <li>set the <code>_NET_WM_PID</code> property (Gentoo Bugzilla 8808 #91008).</li> 8809 8810 <li>modify ifdef's in ptyx.h and xterm_io.h to build with 8811 DragonFly (patch by Jeroen Ruigrok).</li> 8812 8813 <li>change default values for <code>minBufSize</code> and 8814 <code>maxBufSize</code> to 4096 and 32768 respectively so that 8815 the initial read request will match the value from before 8816 changes to use <code>sched_yield()</code>.</li> 8817 8818 <li>make paste of UTF-8 faster for Western character sets by 8819 checking range of incoming data (patch by Joe Allen).</li> 8820 8821 <li>add experimental option to allow applications to get or set 8822 the selection data as a BASE64 string (adapted from patch by 8823 Joe Allen).</li> 8824 8825 <li>fix an off-by-one error parsing <code>-S/nn</code> option 8826 (Debian #311438, report/fix by Peter Chubb).</li> 8827 8828 <li>fix an initialization bug from <a href="#xterm_201">patch 8829 #201</a> that broke logging (report by Rodney Thayer).</li> 8830 8831 <li>amend change to command-line processing in <a href= 8832 "#xterm_201">patch #201</a> to avoid conflict with 8833 <code>-e</code> option (report by Servatius Brandt).</li> 8834 8835 <li>suppress configure check for <code>_XOPEN_SOURCE</code> on 8836 darwin.</li> 8837 8838 <li>update config.guess, config.sub</li> 8839 </ul> 8840 8841 <h1><a name="xterm_202" id="xterm_202">Patch #202 - 2005/5/2 - 8842 XFree86 4.5.99.3</a></h1> 8843 8844 <ul> 8845 <li>add extended shift- and control-modifier cursor keys to 8846 "xterm+pcfkeys" terminfo entry to correspond to ncurses 8847 20050430 patch.</li> 8848 8849 <li>fix a rare case where text would be written with the wrong 8850 colors because output of scrolled text would reset the colors 8851 and the new text would be written with the same colors 8852 (report/testcase by Thomas Glanzmann).</li> 8853 8854 <li>rename <code>$CMD</code> variable in <code>plink.sh</code> 8855 because it is a reserved symbol in bash 3.00.16 (report by Ted 8856 Taylor).</li> 8857 8858 <li>add environment variables <code>$XTERM_SHELL</code> and 8859 <code>$XTERM_VERSION</code> (request by Zdenek Sekera).</li> 8860 8861 <li>corrected workaround for background color of menubar, which 8862 gave a too-broad expression, coloring the background of the 8863 VT100 widget unless overridden by another resource 8864 setting.</li> 8865 8866 <li>correct an error in the logic which decides when 8867 <code>sched_yield()</code> is run; it would occasionally hang 8868 when contending with other pseudo-terminal applications such as 8869 screen (report by Kirill Ponomarew).</li> 8870 8871 <li>modify initialization to decide whether to default to 8872 built-in <code>wcwidth()</code> versus system's version based 8873 on the starting locale and whether the system's version is poor 8874 quality (suggested by Bram Moolenaar).</li> 8875 8876 <li>update table for <code>mk_width()</code> from UnicodeData 8877 4.1.0 using Markus Kuhn's <code>uniset</code> script.</li> 8878 </ul> 8879 8880 <h1><a name="xterm_201" id="xterm_201">Patch #201 - 2005/4/21 - 8881 XFree86 4.5.99.2</a></h1> 8882 8883 <ul> 8884 <li>improve resource files to show how the menubar and popup 8885 menus can be colored (prompted by report by Joe Wells).</li> 8886 8887 <li>modify parsing of OSC (and SOS, etc), strings so their 8888 contents are not interpreted as UTF-8. This allows non-ASCII 8889 title strings to be set, provided that the window manager 8890 complies (report by Thomas Wolff).</li> 8891 8892 <li>improved some of the built-in line-drawing glyphs.</li> 8893 8894 <li>correct color of "box" character drawn for line-drawing 8895 glyph 1 (report by Nicolas George).</li> 8896 8897 <li>improve behavior when switching to UTF-8 mode after startup 8898 so xterm will check if the current fonts are already wide 8899 (ISO10646-1). If they are not, xterm will use the 8900 <code>utf8Fonts</code> subresource to load appropriate fonts 8901 (request by Bram Moolenaar).</li> 8902 8903 <li>modify logic for setting title-string so it applies to the 8904 current widget rather than the vt100 widget.</li> 8905 8906 <li>modify initialization for wide-bold fontname, to search for 8907 one if none is given (report by Michael Schroeder).</li> 8908 8909 <li>add resource <code>mkWidth</code> and command-line option 8910 <code>-mk_width</code> to control whether xterm uses the 8911 built-in version of wcwidth().</li> 8912 8913 <li>add resource settings for minimum/maximum input buffer 8914 size, and call to <code>sched_yield</code> to improve 8915 performance with newer Linux kernels (adapted from patch by 8916 Nicolas George).</li> 8917 8918 <li>correct computation of width for wide characters with the 8919 invisible attribute (report by Thomas Wolff).</li> 8920 8921 <li>modify interaction between <code>+u8</code> and 8922 <code>locale</code> resource to allow the command-line option 8923 to override the resource (requested by Thomas Wolff).</li> 8924 8925 <li>add a limit check for scrolling margins in a one-line 8926 screen, overlooked in fixes for <a href="#xterm_198">patch 8927 #198</a> (Debian #297430).</li> 8928 8929 <li>correct treatment of <code>iconBorderWidth</code> for 8930 resizing an active-icon, and its description in manpage (Debian 8931 #296592).</li> 8932 8933 <li>modify configure script <code>--disable-imake</code> to use 8934 the script's definitions anyway if it cannot detect imake 8935 (prompted by FreeBSD bug 77408).</li> 8936 8937 <li>ignore error in the I/O initialization that tries to set 8938 the tty to 7-bit input for the case where 8939 <code>eightBitInput</code> resource is false (Debian 8940 #298551).</li> 8941 8942 <li>modify command-processing to accept an optional parameter 8943 that tells xterm which shell program to use (request by Zdenek 8944 Sekera).</li> 8945 8946 <li>add simpler resource <code>keyboardType</code> which, when 8947 set, overrides the individual keyboard-type resources and 8948 eliminates the possibility of conflict between them.</li> 8949 8950 <li>add initialization for <code>scoFunctionKeys</code> 8951 resource (report by Rick K).</li> 8952 8953 <li>correct logic of <code>ReallocateBufOffsets()</code> which 8954 did not copy the content of the old screen buffer to the proper 8955 location, making a repaint clear after switching to 8956 wide-character mode (report by Bram Moolenaar):</li> 8957 8958 <li>implement the remaining pieces to make xterm allocate cells 8959 for wide-characters when the "UTF-8" menu entry is selected. 8960 Also, load the UTF-8 font when that menu entry is selected, or 8961 the escape sequence for UTF-8 mode is received (report by Bram 8962 Moolenaar):</li> 8963 8964 <li>add command-line options (<code>-tb</code>, 8965 <code>+tb</code>) and resource <code>toolBar</code> to allow 8966 menu/toolbar to disabled or enabled at startup (prompted by 8967 reports by Joe Wells).</li> 8968 8969 <li>correct typo in configure script's --enable-dec-locator 8970 option (report by Bram Moolenaar).</li> 8971 </ul> 8972 8973 <h1><a name="xterm_200" id="xterm_200">Patch #200 - 2005/2/6 - 8974 XFree86 4.4.99.23</a></h1> 8975 8976 <ul> 8977 <li>increase color pairs value for xterm-256color and 8978 xterm-88color to match ncurses, which has an experimental 8979 option to support this.</li> 8980 8981 <li>modify ifdef's to make AIX use termios rather than termio; 8982 the struct sizes for the two were not the same.</li> 8983 8984 <li>improve CF_WITH_IMAKE_CFLAGS configure macro script for 8985 OSMAJORVERSION and OSMINORVERSION values, e.g., for Tru64 and 8986 AIX.</li> 8987 8988 <li>modify ifdef to define USE_POSIX_TERMIOS for Darwin (patch 8989 by Min Sik Kim).</li> 8990 8991 <li>modify find_utmp() to initialize the whole utmpx struct 8992 (except ut_id), since that is needed for OSF1 4.0D to prevent 8993 an infinite loop on exit.</li> 8994 8995 <li>add configure check before adding -D_POSIX_SOURCE since 8996 some platforms predefine it, e.g., cygwin.</li> 8997 8998 <li>add simplified sed expressions in CF_IMAKE_CFLAGS configure 8999 script macro to ensure value for PROJECTROOT is quoted on 9000 Solaris, i.e., when nested <code>\(</code> and <code>\)</code> 9001 are not interpreted correctly.</li> 9002 9003 <li>correct DEC rectangle operations to reset state after 9004 completing the operations.</li> 9005 9006 <li>modify CASE_ST handling in charproc.c to ensure that the 9007 parse state is reset even if xterm is not currently processing 9008 an OSC or other string (patch by Johnny Billquist forwarded by 9009 Matthias Scheler, NetBSD xsrc/29003).</li> 9010 9011 <li>fix OS/2 build for innotek_libc (patch by David Yeo).</li> 9012 9013 <li>fix a regression from <a href="#xterm_197">patch #197</a> 9014 fix for Debian #277832 which disowned the selection if it was 9015 scrolled, e.g., by the user pressing return at the bottom of 9016 the screen (Debian #291787).</li> 9017 9018 <li>move the warning/exit for missing $DISPLAY into the error 9019 handler in case <code>-display</code> is given, and the connect 9020 fails for some other reason.</li> 9021 </ul> 9022 9023 <h1><a name="xterm_199" id="xterm_199">Patch #199 - 2005/1/17 - 9024 XFree86 4.4.99.22</a></h1> 9025 9026 <ul> 9027 <li>instead of setting <code>$DISPLAY</code>, check for the 9028 unset variable and warn/exit on this condition (comments by H 9029 Merijn Brand and Bernhard R Link).</li> 9030 9031 <li>fix a typo in Imakefile from <a href="#xterm_198">patch 9032 #198</a> (reports/patches by Stefan Dirsch, Mike Castle).</li> 9033 </ul> 9034 9035 <h1><a name="xterm_198" id="xterm_198">Patch #198 - 2005/1/13 - 9036 XFree86 4.4.99.21</a></h1> 9037 9038 <ul> 9039 <li>set <code>$DISPLAY</code> to ":0" if it is not set.</li> 9040 9041 <li>add <code>utmpDisplayId</code> resource to allow users to 9042 control whether the display identifier (display number and 9043 screen number) are retained in the connection information 9044 recorded in utmp (discussion with Edoardo Tirtarahardja).</li> 9045 9046 <li>add <code>bellOnReset</code> resource to allow users to 9047 disable bell which sounds on hard reset since <a href= 9048 "#xterm_183">patch #183</a> changes to DECSCL (discussion with 9049 Danek Duvall).</li> 9050 9051 <li>improve <code>$WINDOWID</code> for configuration with 9052 toolbar by making it refer to the top-level shell rather than 9053 the parent of the current window. For that case, the parent is 9054 a form widget, which does not have a name, which made the 9055 <code>$WINDOWID</code> not very useful as a parameter for 9056 <code>xwininfo</code> (suggested by Dave Bodenstab).</li> 9057 9058 <li>fix a typo in WhichVFont() macro from <a href= 9059 "#xterm_197">patch #197</a> changes which broke the 9060 --disable-active-icon configuration (report by Ralf S. 9061 Engelschall).</li> 9062 9063 <li>improve some limit checks (Gentoo Bugzilla #75604).</li> 9064 9065 <li>add --disable-setuid option to configure script (Gentoo 9066 Bugzilla #76543).</li> 9067 9068 <li>add --disable-full-tgetent option to configure script, 9069 allowing one to ignore a termcap library in favor of 9070 ncurses/curses (Gentoo Bugzilla #69926).</li> 9071 9072 <li>modify configure script to choose useful warning options 9073 for Intel version 8.0 compiler.</li> 9074 9075 <li>update config.guess, config.sub</li> 9076 9077 <li>make active-icon work properly when TrueType fonts are used 9078 (Debian #286068).</li> 9079 9080 <li>correct change from <a href="#xterm_157">patch #157</a> 9081 which uses getlogin() to check for an alias; the storage used 9082 for the related getpwuid() call was overwritten by the data 9083 used for comparison (patch by Per Hedeland).</li> 9084 9085 <li>correct case of SCS for character set 0 (line-drawing) to 9086 allow it to be selected into GR.</li> 9087 9088 <li>fix a file-descriptor leak (Redhat Bugzilla #139597).</li> 9089 9090 <li>modify <code>creat_as()</code> to only fork if xterm is 9091 actually running as setuid and/or setgid. This works around a 9092 Cygwin bug which hangs when logging is enabled and makes xterm 9093 a little faster for systems using interfaces such as utempter 9094 (report by Al Goodman).</li> 9095 9096 <li>modify <code>Cleanup()</code> to avoid operations such as X 9097 calls that might use unsafe functions when it is called by a 9098 signal handler (report by Michiel Boland).</li> 9099 9100 <li>fix bugs in <a href="#xterm_191">patch #191</a> and in SRM 9101 changes from <a href="#xterm_197">patch #197</a> that broke 9102 DECSET 38: switch to Tek4014 emulation (report by Dave 9103 Bodenstab).</li> 9104 9105 <li>fix for manpage escapes (Marc La France).</li> 9106 9107 <li>improve on IRIX-specific change for Imakefile in XFree86 9108 CVS versus resize linking against termcap library to reflect 9109 definitions for USE_TERMCAP in resize.c</li> 9110 </ul> 9111 9112 <h1><a name="xterm_197" id="xterm_197">Patch #197 - 2004/11/30 - 9113 XFree86 4.4.99.19</a></h1> 9114 9115 <ul> 9116 <li>modify configure script to remove empty "-DPROJECTROOT=" 9117 definition which resulted unusable values for luit's default 9118 path.</li> 9119 9120 <li>update precompose.c based on Unicode 4.0.1</li> 9121 9122 <li>several minor fixes based on Intel compiler warnings.</li> 9123 9124 <li>change default translations so a <code>BtnDown</code> which 9125 is not recognized is simply ignored rather than emitting a 9126 bell. That makes it less obtrusive when the user tries to use a 9127 mouse which provides more capabilities than the X mouse driver 9128 supports, e.g., one with a horizontal scroll wheel (Debian 9129 #265133).</li> 9130 9131 <li>note in xterm's manpage that <code>translations</code> is 9132 not specific to xterm (Debian #278897).</li> 9133 9134 <li>modify uxterm script to use locale program to verify if the 9135 derived locale is installed (Debian #246398).</li> 9136 9137 <li>correct font handling for active icon when in UTF-8 mode 9138 (report by Paolo Liberatore).</li> 9139 9140 <li>make active-icon and toolbar configurations work 9141 together.</li> 9142 9143 <li>modify the criteria for disowning primary selection. 9144 Previously, this happened anytime the cursor was moved before 9145 the end of the selection. That would ensure that any 9146 insert/delete of char or line, as well as scrolling, would 9147 disown the selection. The new criteria change this to checking 9148 if the operations would modify the data which is highlighted 9149 (Debian #277832).</li> 9150 9151 <li>reimplement <code>DECALN</code> with functions for vt420 9152 rectangles, fixes selection for this case.</li> 9153 9154 <li>implement vt420 rectangle operations.</li> 9155 9156 <li>add parsing, for debug/test of vt220 soft-fonts.</li> 9157 9158 <li>add menu entry, actions and escape sequence to allow 9159 enabling/disabling toolbars at runtime.</li> 9160 9161 <li>improve rendering for Xft, allow it to draw non-linedrawing 9162 characters such as "pi", which were drawn from internal tables 9163 with <a href="#xterm_180">patch #180</a> (Freedesktop.org 9164 Bugzilla #1260).</li> 9165 9166 <li>add configure option <code>--enable-mini-luit</code>, 9167 ifdef'd the mini-luit feature with 9168 <code>OPT_MINI_LUIT</code>.</li> 9169 9170 <li>add mini-luit feature, which supports Latin9 directly 9171 rather than via luit, provided that Unicode fonts are used 9172 (Freedesktop.org Bugzilla #1571, request by Stefan Dirsch, 9173 patch by Michael Schroeder).</li> 9174 9175 <li>for Linux, if IUTF8 is defined, e.g., on recent 2.6.x 9176 kernels, set the corresponding flag for the slave pty, to 9177 enable UTF-8 interpretation of backspace in cooked mode 9178 (Freedesktop.org Bugzilla #1578, request by Stefan 9179 Dirsch).</li> 9180 9181 <li>modify <code>faceSize</code> resource to use a 9182 floating-point internal value (adapted from patch by Sam 9183 Stephenson).</li> 9184 9185 <li>correct handling selection of tabs over cleared space in 9186 UTF-8 mode. In this special case, xterm represents the 9187 whitespace with a null rather than a space character (Debian 9188 #276447).</li> 9189 9190 <li>amend fix for infinite loop from <a href="#xterm_192">patch 9191 #192</a> to check if there is wrapped text to output in a 9192 following iteration (Debian #273202).</li> 9193 9194 <li>fixes ifdef'd with <code>__INTERIX</code> to allow building 9195 with Interix (Windows Services for UNIX) 3.5 using the xlibs 9196 libraries from freedesktop.org (patch by Min Sik Kim).</li> 9197 9198 <li>amend solution for Debian #252873, Debian #260471 from 9199 <a href="#xterm_194">patch #194</a> by making the cursor not 9200 explicitly colored if only the foreground color is set, and the 9201 cursor is on a blank space (Debian #275473).</li> 9202 9203 <li>correct logic for send/receive mode (SRM) with regard to 9204 control characters.</li> 9205 9206 <li>fix masking of invisible text in wide-character mode, which 9207 did not work for line-drawing characters.</li> 9208 9209 <li>incorporate CF_XOPEN_SOURCE into configure script, 9210 replacing CF_GNU_SOURCE.</li> 9211 </ul> 9212 9213 <h1><a name="xterm_196" id="xterm_196">Patch #196 - 2004/8/15 - 9214 XFree86 4.4.99.12</a></h1> 9215 9216 <ul> 9217 <li>add a special case to configure script to ignore NetBSD's 9218 <code>grantpt()</code> which was recently added (but not part 9219 of a release), until someone is able to ensure that xterm can 9220 use it (report by Min Sik Kim).</li> 9221 9222 <li>clear the buffer returned by getutid(). This fixes an 9223 infinite loop on some platforms introduced in <a href= 9224 "#xterm_193">patch #193</a> by Debian #256468 fix (report by 9225 David Ellement).</li> 9226 </ul> 9227 9228 <h1><a name="xterm_195" id="xterm_195">Patch #195 - 2004/8/8 - 9229 XFree86 4.4.99.11</a></h1> 9230 9231 <ul> 9232 <li>correct length used for blinking text, make the last column 9233 blink (patch by Alexander V Lukyanov).</li> 9234 9235 <li>start changes to make doublesize characters work with 9236 TrueType fonts (see <a href="#xterm_44">patch #44</a>).</li> 9237 9238 <li>trim leading/trailing blanks from color resources as done 9239 for other strings in <a href="#xterm_167">patch #167</a>.</li> 9240 9241 <li>fixes for <code>showBlinkAsBold</code> resource (report by 9242 Christoph Berg).</li> 9243 </ul> 9244 9245 <h1><a name="xterm_194" id="xterm_194">Patch #194 - 2004/7/27 - 9246 XFree86 4.4.99.11</a></h1> 9247 9248 <ul> 9249 <li>change clearing operations so foreground color attribute is 9250 not set. Usually this is benign, but in some cases when the 9251 cursor color is not set explicitly, the cursor would show this 9252 color (Debian #252873, Debian #260471).</li> 9253 9254 <li>add extra state (cursor-moved) to guard against deciding 9255 that the cursor did not require repainting after an indexing 9256 operation that leaves the cursor in the same location on the 9257 screen.</li> 9258 9259 <li>fix a case where a full-screen indexing operation would not 9260 restore the cursor-busy state.</li> 9261 9262 <li>fix a repainting bug introduced in <a href= 9263 "#xterm_180">patch #180</a>: when using a font lacking 9264 line-drawing characters, a repaint of the screen could skip 9265 horizontally an extra amount after filling in the missing 9266 character (reports by Nicolas George, Hans de Goede, Redhat 9267 Bugzilla #128341).</li> 9268 9269 <li>rename terminfo fragment "xterm-pc-fkeys" to 9270 "xterm+pcfkeys" for consistency with ncurses.</li> 9271 </ul> 9272 9273 <h1><a name="xterm_193" id="xterm_193">Patch #193 - 2004/7/19 - 9274 XFree86 4.4.99.10</a></h1> 9275 9276 <ul> 9277 <li>fix for wide-character selection from OpenBSD CVS 9278 (report/patch by Matthieu Herrb).</li> 9279 9280 <li>modify initialization and cleanup of utmp data to also 9281 compare the <code>ut_line</code> member (Debian #256468).</li> 9282 9283 <li>modify check on focus-change to ignore 9284 <code>FocusOut</code> events generated by 9285 <code>XGrabKeyboard</code>. This fixes a case where the text 9286 cursor would act as if focus were lost when selecting the 9287 "Secure Keyboard" menu option.</li> 9288 9289 <li>add <code>gen-pc-fkeys.pl</code> script, use that to 9290 generate terminfo fragment corresponding to the pc-style 9291 function keys.</li> 9292 9293 <li>fix a case where the checkmark by the "VT220 Keyboard" menu 9294 entry was not set on startup.</li> 9295 9296 <li>separated two methods for making the cursor blink (menu and 9297 escape sequence) by using the menu as the primary method and 9298 XOR'ing the state of the escape sequence against that.</li> 9299 9300 <li>modify logic for enabling blinking cursor via escape 9301 sequence as well as the related save/restore operations so this 9302 is only available if the <code>cursorBlink</code> resource was 9303 set on startup.</li> 9304 </ul> 9305 9306 <h1><a name="xterm_192" id="xterm_192">Patch #192 - 2004/7/12 - 9307 XFree86 4.4.99.9</a></h1> 9308 9309 <ul> 9310 <li>change resource settings for color4 and color12, add some 9311 discussion in <code>XTerm-col.ad</code> (Debian #241717).</li> 9312 9313 <li>add a note in xterm manpage discussing the difference 9314 between alt- and meta-keys, and the way the latter is used in 9315 the <code>eightBitInput</code> resource.</li> 9316 9317 <li>add a note in xterm manpage regarding possible conflict 9318 between resource settings for <code>xterm.vt100.font</code> and 9319 <code>xterm.vt100.utf8Fonts.font</code> (Debian #254650).</li> 9320 9321 <li>add compile-time customization of 9322 <code>backarrowKeyIsErase</code> and 9323 <code>ptyInitialErase</code> default resource values (adapted 9324 from OpenBSD CVS).</li> 9325 9326 <li>change parameter of <code>FIONREAD</code> 9327 <code>ioctl()</code> call from long to int (discussion on 9328 tech-x11@netbsd.org regarding LP64 by John Heasley and Matthias 9329 Scheler).</li> 9330 9331 <li>modify configure script options for Athena widgets to work 9332 as expected for "--without-Xaw3d", etc., (Gentoo Bugzilla 9333 #53455).</li> 9334 9335 <li>add case to uxterm to accommodate locales ending with 9336 "@euro", e.g., fr_FR.UTF-8@euro (Debian #255197, 9337 report/analysis by Matthieu Lagouge).</li> 9338 9339 <li>add special case for VT100 graphic's "box" character 9340 (discussion with Ben Armstrong).</li> 9341 9342 <li>add missing initialization for bitmap-font sizes needed to 9343 make fonts menu work with TrueType fonts (report by Ben 9344 Armstrong).</li> 9345 9346 <li>save the fontnames for bold fonts that are derived from 9347 normal fonts, or from the <code>boldFont</code> resource, so 9348 the same value is restored when switching with the VT Fonts 9349 menu (Debian #256086).</li> 9350 9351 <li>fix manpage preprocessing (Marc La France).</li> 9352 9353 <li>fix typo in manpage's description of character classes 9354 (Debian #257073).</li> 9355 9356 <li>modify terminfo to accommodate luit, which relies on G1 9357 being used via an ISO-2022 escape sequence (Debian #254316, 9358 analysis by Juliusz Chroboczek).</li> 9359 9360 <li>modify Makefile.in rule for ctlseqs.txt to work around 9361 groff SGR misfeature.</li> 9362 9363 <li>modify <code>XTerm.ad</code> to set <code>saveLines</code> 9364 default to 1024 (Redhat Bugzilla #127132).</li> 9365 9366 <li>add a limit-check in <code>dotext()</code> to prevent 9367 infinite loop in a corner case of UTF-8 configuration.</li> 9368 9369 <li>update config.guess, config.sub</li> 9370 </ul> 9371 9372 <h1><a name="xterm_191" id="xterm_191">Patch #191 - 2004/6/6 - 9373 XFree86 4.4.99.7</a></h1> 9374 9375 <ul> 9376 <li>correct options parsing for <code>-into</code> option so it 9377 can be combined with <code>-e</code> (Redhat Bugzilla #124518, 9378 report/patch by James Armstrong).</li> 9379 9380 <li>fix ifdef's for <code>OPT_COLOR_RES2</code> so that the 9381 fake resource table introduced in <a href="#xterm_188">patch 9382 #188</a> is not compiled if it is empty. This happened to work 9383 with gcc (report by Joel Konkle-Parker).</li> 9384 9385 <li>reorganize ptydata.c to use one input buffer shared between 9386 the VTxxx and tek4014 emulators. In the new scheme, UTF-8 9387 decoding is performed on characters as they are needed by the 9388 state machine rather than on buffers as they are read.</li> 9389 9390 <li>work around change in quoting of PROJECTROOT symbol when 9391 using configure script, from changes made in <a href= 9392 "#xterm_187">patch #187</a> for CF_IMAKE_CFLAGS (Gentoo 9393 Bugzilla #50982).</li> 9394 </ul> 9395 9396 <h1><a name="xterm_190" id="xterm_190">Patch #190 - 2004/5/25 - 9397 XFree86 4.4.99.6</a></h1> 9398 9399 <ul> 9400 <li>correct state for values in the range 128-159 after 9401 translating from UTF-8: this should be ignored unless the user 9402 overrides it with the <code>allowC1Printable</code> resource 9403 (reported by Simon Strandgaard).</li> 9404 9405 <li>add configure-script check for nl_langinfo(CODESET), use 9406 this to replace check of environment variables for UTF-8.</li> 9407 9408 <li>change Makefile.in rules for 256colres.h and 88colres.h so 9409 they are only made if they do not exist. The maintainer-clean 9410 rule will remove these files; they require perl to be 9411 made.</li> 9412 9413 <li>remove check in configure script --enable-toolbar that 9414 suppressed this option when building with Xaw7.</li> 9415 9416 <li>apply fixes to Tektronix widget used for VT100 widget to 9417 make toolbar work with Xaw7 (XFree86 4.x).</li> 9418 </ul> 9419 9420 <h1><a name="xterm_189" id="xterm_189">Patch #189 - 2004/5/16 - 9421 XFree86 4.4.99.6</a></h1> 9422 9423 <ul> 9424 <li>do not call xim_real_init() if <code>openIm</code> resource 9425 is false (Debian #249025).</li> 9426 9427 <li>minor improvements to built-in line-drawing.</li> 9428 9429 <li>fix a few portability issues with dynamic abbreviation 9430 support, i.e., did not compile on Tru64.</li> 9431 9432 <li>modify constraints in form used to layout toolbar, to work 9433 with newer Xaw in XFree86 4.x.</li> 9434 </ul> 9435 9436 <h1><a name="xterm_188" id="xterm_188">Patch #188 - 2004/5/12 - 9437 XFree86 4.4.99.6</a></h1> 9438 9439 <ul> 9440 <li>correct table entry for DEL in the ground state, which 9441 marked it as a printable character from <a href= 9442 "#xterm_171">patch #171</a> (report by D Hugh Redelmeier).</li> 9443 9444 <li>improve fix in <a href="#xterm_186">patch #186</a> for 9445 failure in xim_real_init() by adding a sleep.</li> 9446 9447 <li>fix a typo in os2main.c (XFree86 Bugzilla #1358, 9448 report/patch by Frank Giessler).</li> 9449 9450 <li>make escape sequence reporting dynamic colors consistent 9451 with the logic that sets it; choosing the opposite color when 9452 reverse video is set (XFree86 Bugzilla #1361, reported by Bradd 9453 W Szonye).</li> 9454 9455 <li>modify initialization of 256- and 88-colors so that colors 9456 beyond 16 are normally not X resources. This works around a 9457 hard-coded limit in Xt which breaks xterm when 256-colors and 9458 luit are both configured (report by Noah Friedman).</li> 9459 9460 <li>remove <code>ncv</code> from <code>xterm-256color</code> 9461 terminfo entry since it is no longer needed (report by Eli 9462 Zaretskii).</li> 9463 9464 <li>add "erase2" and "eol2" keywords to <code>ttyModes</code> 9465 resource, for recent/current FreeBSD.</li> 9466 9467 <li>improve ifdef's for utempter library to omit direct calls 9468 to <code>setutent()</code> or <code>getutent()</code> (adapted 9469 from patch by Christian Biere).</li> 9470 9471 <li>add dynamic abbreviation support like Emacs (patch by 9472 Tomasz Cholewo). This is ifdef'd with <code>OPT_DABBREV</code>, 9473 and enabled via the configure script 9474 <code>--enable-dabbrev</code> option.</li> 9475 9476 <li>fix problem responding to session management events, e.g., 9477 which would make logging out very slow (patch by Eddy De Greef, 9478 Debian #233883).</li> 9479 9480 <li>work around a newer bug in toolbar with XFree86 by forcing 9481 menus to be fully initialized at startup. In older versions of 9482 XFree86 and X11R6, it was possible to delay initialization of 9483 the menu contents until it was popped up. (The longstanding bug 9484 with XFree86 4.x layout for toolbar still exists, though).</li> 9485 9486 <li>modify <code>xtermAddInput</code> to work around core dump 9487 on IRIX64 when initializing scrollbar translations if toolbar 9488 is compiled-in.</li> 9489 9490 <li>fix some minor conflicts in the 2-character entry names in 9491 the termcap file.</li> 9492 </ul> 9493 9494 <h1><a name="xterm_187" id="xterm_187">Patch #187 - 2004/4/27 - 9495 XFree86 4.4.99.4</a></h1> 9496 9497 <ul> 9498 <li>change xterm version string to use 9499 <code>__vendorversion__</code> where that is available, and 9500 "XTerm" otherwise.</li> 9501 9502 <li>improve description of <code>utf8</code> resource in 9503 manpage (Debian #179407).</li> 9504 9505 <li>modify configure macros CF_IMAKE_CFLAGS and CF_ADD_CFLAGS 9506 to handle <code>-D</code> options that define string values, 9507 e.g., for <code>XVENDORNAME</code>.</li> 9508 9509 <li>modify configure macro CF_IMAKE_CFLAGS to allow (if 9510 <code>$PATH</code> is set accordingly) to use the 9511 <code>xmkmf</code> script within an X build tree.</li> 9512 9513 <li>add missing <code>#undef OPT_SESSION_MGT</code> to 9514 xtermcfg.hin to make the configure script's 9515 --disable-session-mgt option work.</li> 9516 9517 <li>update config.guess, config.sub</li> 9518 </ul> 9519 9520 <h1><a name="xterm_186" id="xterm_186">Patch #186 - 2004/4/18 - 9521 XFree86 4.4.99.4</a></h1> 9522 9523 <ul> 9524 <li>change reset on <code>DECSCL</code> to a soft-reset 9525 (appears some DEC manuals have errors).</li> 9526 9527 <li>add a section to ctlseqs.ms elaborating on normal/alternate 9528 screens.</li> 9529 9530 <li>modify initialization of Acolors[] so that any 9531 XtDefaultForeground or XtDefaultBackground values are 9532 translated as in the Tcolors[], to use the window's 9533 foreground/background colors. This affects the 9534 <code>colorBD</code> and similar resources which normally have 9535 no explicit color assigned.</li> 9536 9537 <li>modify initialization of Tektronix window so that control 9538 sequences setting its color before the window is popped up will 9539 apply to its initial colors.</li> 9540 9541 <li>add control sequence to set Tektronix window's 9542 text-cursor.</li> 9543 9544 <li>modify initialization of terminal colors, e.g., mouse 9545 pointer and text cursor, to treat 9546 <code>XtDefaultForeground</code> and 9547 <code>XtDefaultBackground</code> values as the actual 9548 foreground and background colors of the terminal rather than 9549 white and black (Debian #241717).</li> 9550 9551 <li>remove an incorrect comparison against 9552 <code>PTYCHARLEN</code> in parsing the <code>-S</code> option 9553 (report by Michael B Taylor).</li> 9554 9555 <li>minor restructuring of terminfo/termcap files, having noted 9556 some packager's customizations which caused the structure to be 9557 confused.</li> 9558 9559 <li>eliminate an isolated use of MIN/MAX in charproc.c</li> 9560 9561 <li>replace <code>XtExtdefaultfont</code> and 9562 <code>XtExtdefaultbackground</code> by their more familiar 9563 equivalents <code>XtDefaultFont</code> and 9564 <code>XtDefaultBackground</code>.</li> 9565 9566 <li>replace ifdef's using <code>SCO</code>, <code>sco</code> 9567 and <code>SCO325</code> with <code>__SCO__</code> (XFree86 9568 Bugzilla #1301, Kean Johnston). But ensure that it still builds 9569 on platforms where this symbol is not defined.</li> 9570 9571 <li>add <code>scoFunctionKeys</code> resource, to match 9572 manpage.</li> 9573 9574 <li>update manpage discussion of menus and related 9575 resources.</li> 9576 9577 <li>enable utmpx support for NetBSD 1.6C and newer (patch by 9578 Matthias Scheler).</li> 9579 9580 <li>add a note in the manpage discussing xterm's treatment of 9581 open file-descriptors (request by Dan Shearer).</li> 9582 9583 <li>modify <code>Help()</code> to make "xterm -h" write to 9584 standard output rather than standard error (patch by Bram 9585 Moolenaar).</li> 9586 9587 <li>check for type of failure in xim_real_init() to avoid 9588 looping when the problem is an unsupported input method rather 9589 than a failure to connect to the XIM server. Problem was 9590 introduced in <a href="#xterm_175">patch #175</a> (XFree86 9591 Bugzilla #1306).</li> 9592 9593 <li>modify <code>Imakefile</code> to remove dependency of 9594 "install" target on the <code>xterm</code> executable to make 9595 installs from tree without attempting to rebuild anything 9596 (commit by David Dawes, report/patch from Lee Olsen).</li> 9597 9598 <li>remove call to <code>ShowCursor</code> from 9599 <code>SetCursorBlink()</code> since that is redundant, and can 9600 cause display glitches if the cursor is already blinking 9601 (XFree86 Bugzilla #1158, patch/report by Andreas Schwab).</li> 9602 </ul> 9603 9604 <h1><a name="xterm_185" id="xterm_185">Patch #185 - 2004/3/3 - 9605 XFree86 4.4</a></h1> 9606 9607 <ul> 9608 <li>fix tcap-query logic for the backspace key (XFree86 9609 Bugzilla #1233, report/patch by Anton Kovalenko).</li> 9610 9611 <li>add test-scripts resize.pl and tcapquery.pl</li> 9612 9613 <li>add translation to ASCII of commonly-used characters that 9614 groff translates to Unicode, when the font in use does not 9615 provide the corresponding glyphs (Debian #219551).</li> 9616 9617 <li>modify RequestMaximize(), which performs maximize/restore 9618 via control sequences, to account for window-frame (patch by 9619 Jess Thrysoee).</li> 9620 9621 <li>improve pattern used in <code>uxterm</code> to check for 9622 UTF-8 locale, e.g., for HPUX (patch by H Merijn Brand).</li> 9623 9624 <li>add <code>-fd</code> option and resource 9625 <code>faceNameDoublesize</code> to specify double-wide fonts 9626 with Xft (adapted from patch by Zarick Lau).</li> 9627 9628 <li>change a couple of resource classes from "Boolean" to 9629 specific values: <code>freeBoldBox</code>, 9630 <code>forceBoxChars</code>.</li> 9631 9632 <li>add resource <code>showMissingGlyphs</code> to outline 9633 places on the screen where a font lacks the corresponding 9634 glyph.</li> 9635 9636 <li>add resource <code>showBlinkAsBold</code> to control 9637 whether blinking text should be shown as bold or actual 9638 blinking text.</li> 9639 9640 <li>improve logic in ShowCursor() to avoid repainting the 9641 cursor when it is already visible, e.g., in response to the 9642 DECTCEM escape sequence. This also addresses XFree86 Bugzilla 9643 #1158.</li> 9644 9645 <li>implement blinking text, using the timer for blinking 9646 cursor.</li> 9647 9648 <li>modify FreeType support to allow resizing the font, in the 9649 same ways the window can be resized if fixed fonts are used. 9650 The relative font sizes are derived from the fixed font 9651 sizes.</li> 9652 9653 <li>add menu items and corresponding actions for switching 9654 on/off the UTF-8 mode and Xft (TrueType) support.</li> 9655 9656 <li>add logic to handle switching UTF-8 mode on/off. It worked 9657 if the escape sequences were flushed, but if data was mixed in 9658 with the same write, some were not handled properly (report by 9659 Nicolas George).</li> 9660 9661 <li>modify to allow turning UTF-8 mode on/off via escape 9662 sequence even if <code>-wc</code> option was not given at 9663 startup (patch by Peter Berg Larsen).</li> 9664 9665 <li>amend fix for XFree86 Bugzilla #981, adjusting for 9666 savedlines value (report by Tim Adye).</li> 9667 9668 <li>fix a typo in computing relative font size (Jess 9669 Thrysoee).</li> 9670 </ul> 9671 9672 <h1><a name="xterm_184" id="xterm_184">Patch #184 - 2003/12/31 - 9673 XFree86 4.3.99.903</a></h1> 9674 9675 <ul> 9676 <li>improve configure-script checks for FreeType and related 9677 libraries, using <code>xft-config</code> or 9678 <code>freetype-config</code> scripts when available.</li> 9679 9680 <li>fix configure-script check for <code>SYSV</code> definition 9681 by ensuring whether <code>sys_errlist[]</code> is declared, and 9682 by modifying the test program to include 9683 <code>X11/Intrinsic.h</code> to check that <code>wchar_t</code> 9684 is declared consistently (report by H Merijn Brand).</li> 9685 </ul> 9686 9687 <h1><a name="xterm_183" id="xterm_183">Patch #183 - 2003/12/26 - 9688 XFree86 4.3.99.903</a></h1> 9689 9690 <ul> 9691 <li>correct logic for configurations that may attempt to open 9692 both old/new-style pseudoterminals. In this case, the old-style 9693 are preferred. Logic was broken in <a href="#xterm_145">patch 9694 #145</a> (XFree86 Bugzilla #997, report/patch by Kean 9695 Johnston).</li> 9696 9697 <li>modify handling of <code>eightBitInput</code> resource in 9698 UTF-8 mode to translate the value into UTF-8. Otherwise an 9699 illegal UTF-8 code is sent to the application (report by Bram 9700 Moolenaar).</li> 9701 9702 <li>modify <code>uxterm</code> script to interpret help and 9703 version options so xterm does not always create a window when 9704 the user requests this information (Debian #223926).</li> 9705 9706 <li>add a limit check to ScrnTstWrapped() (XFree86 Bugzilla 9707 #981).</li> 9708 9709 <li>modify DECSCL to perform a hard reset (RIS) as per DEC 9710 manuals. Extended DECSCL to accept parameters for vt4XX and 9711 vt5xx terminals.</li> 9712 9713 <li>correct logic for ANSI conformance level escape sequences, 9714 which were confused with DEC conformance level escape 9715 sequences.</li> 9716 9717 <li>correct state for vt52 shift-in/shift-out, which was not 9718 reset properly after <a href="#xterm_171">patch #171</a>.</li> 9719 9720 <li>correct handling of graphics characters for vt52 mode, 9721 which did not display line-drawing characters after G1 fix from 9722 <a href="#xterm_182">patch #182</a>.</li> 9723 9724 <li>fixes for configure script to work with current Cygwin 9725 headers and libraries.</li> 9726 9727 <li>modify <code>Imakefile</code> to put the current directory 9728 at the beginning of the include searchpath (patch by David 9729 Dawes).</li> 9730 </ul> 9731 9732 <h1><a name="xterm_182" id="xterm_182">Patch #182 - 2003/12/2 - 9733 XFree86 4.3.99.901</a></h1> 9734 9735 <ul> 9736 <li>correct logic for <code>metaSendsEscape</code> resource to 9737 allow for the meta-right key to be tested. Improve check for 9738 meta/alt modifiers by dropping the assumption that a keysym is 9739 associated with only one modifier, and by ignoring NoSymbol 9740 entries in the xmodmap data (XFree86 Bugzilla #924, patch by 9741 David Dawes).</li> 9742 9743 <li>correct wrapping logic for line-drawing characters written 9744 in non-UTF-8 mode of xterm build for wide-characters (XFree86 9745 Bugzilla #918, report/patch by Jürgen Keil).</li> 9746 9747 <li>improve manpage description of resources, in particular the 9748 <code>utf8Fonts</code> class (XFree86 Bugzilla #905).</li> 9749 9750 <li>add definitions to compile with glibc-based GNU/Hurd, 9751 GNU/KFreeBSD and GNU/KNetBSD (XFree86 Bugzilla #893).</li> 9752 9753 <li>compiler-warning fixes (patch by Christian Biere).</li> 9754 9755 <li>add README.i18n (Tomohiro Kubota).</li> 9756 9757 <li>correct initialization of G1 character set mapping, which 9758 used line-drawing set as a result of confusion between "DEC 9759 Supplemental Graphic" and "DEC Special Graphic" character sets 9760 (see <a href="#xterm_34">patch #34</a> regarding DECSTR).</li> 9761 9762 <li>correct ifdef in main.c for variable utret (patch by 9763 Bernhard Rosenkraenzer).</li> 9764 9765 <li>document in xterm's manpage how to use XFree86 ":unscaled" 9766 keyword to suppress scaling of bold fonts.</li> 9767 9768 <li>when deriving bold fontname from normal fontname, use the 9769 normal font's average width to avoid for example selecting 9770 7x13bold from an 8x13 normal font (Debian #107769).</li> 9771 </ul> 9772 9773 <h1><a name="xterm_181" id="xterm_181">Patch #181 - 2003/10/26 - 9774 XFree86 4.3.99.15</a></h1> 9775 9776 <ul> 9777 <li>implement <code>boldMode</code> for wide-character logic in 9778 <code>drawXtermText()</code> (report by Michael 9779 Schroeder).</li> 9780 9781 <li>modify <code>UXTerm.ad</code> resource file to include 9782 "XTerm-color" rather than "XTerm", in case the latter file 9783 contains no color resource definitions, e.g., after <a href= 9784 "#xterm_180">patch #180</a>.</li> 9785 9786 <li>add action <code>load-vt-fonts()</code> and configure 9787 option <code>--enable-load-vt-fonts</code> which allows users 9788 to define additional sets of VT-fonts which can be loaded at 9789 runtime.</li> 9790 9791 <li>add logic to wide-character support which attempts to load 9792 fonts specified by <code>utf8Fonts</code> subresources at 9793 startup. The subresources have the same names as the fonts 9794 which they replace, e.g., <code>font</code>, 9795 <code>font1</code>, etc., so that the ISO-10646-1 fonts can be 9796 specified in the <code>XTerm</code> app-defaults file (adapted 9797 from patch by Tomohiro Kubota).</li> 9798 9799 <li>improve Set Font escape string handling by making the 9800 relative settings apply to the size of the font, as in shift 9801 keypad plus/minus rather than the menu index.</li> 9802 9803 <li>simplify parameter passing for the <code>set-vt-font</code> 9804 action and related code.</li> 9805 9806 <li>cleanup some include-ordering, moving some recently-added 9807 hardcoded stuff into xterm.h where it will not interfere with 9808 the configure script.</li> 9809 9810 <li>modify <code>xtermAddInput()</code> (see note on 9811 augmentation in <a href="#xterm_158">patch #158</a>) to use the 9812 complete set of default keyboard translations so that one can 9813 use shifted pageup, wheel mouse, etc., while the mouse pointer 9814 is over the scrollbar. (Debian #178812).</li> 9815 9816 <li>make save/restore mode controls apply to show/blink cursor 9817 states.</li> 9818 9819 <li>add escape sequence to start/stop blinking cursor, which 9820 allows implementing <code>cvvis</code> terminfo capability 9821 (request by Nate Bargmann).</li> 9822 9823 <li>add <code>indp</code> and <code>rin</code> to terminfo 9824 entry.</li> 9825 9826 <li>fix an out-of-bounds array reference in ScrnRefresh() for 9827 wide characters (report by Dan Harnett, patch by Todd Miller). 9828 This bug dates from <a href="#xterm_141">patch #141</a>.</li> 9829 </ul> 9830 9831 <h1><a name="xterm_180" id="xterm_180">Patch #180 - 2003/10/12 - 9832 XFree86 4.3.99.15</a></h1> 9833 9834 <ul> 9835 <li>several fixes for rendering using Xft via option 9836 <code>-fa</code>: 9837 <ul> 9838 <li>translate Unicode values, i.e,. from UTF-8 output to 9839 xterm, for line-drawing to xterm's internal code, etc., 9840 since TrueType fonts generally do not have either set of 9841 line-drawing glyphs. xterm can draw these directly (report 9842 by Abigail Brady).</li> 9843 9844 <li>pass 16-bit values rather than 8-bit values to 9845 xtermXftDrawString() to allow for wide-characters.</li> 9846 9847 <li>remove spurious check for <code>colorBDMode</code> 9848 resource in logic that does bold fonts.</li> 9849 9850 <li>implement underlining.</li> 9851 </ul> 9852 </li> 9853 9854 <li>patches by Ilya Zakharevich: 9855 <ul> 9856 <li>improve drawXtermText() by making the recursive calls 9857 communicate through arguments, and not through 9858 saving/restoring global variables.</li> 9859 9860 <li>make double-width characters work with <code>-u8</code> 9861 option.</li> 9862 9863 <li>modify lookup of double-sized fonts by checking for a 9864 match ignoring x/y resolution if the first check 9865 fails.</li> 9866 </ul> 9867 </li> 9868 9869 <li>make height of TrueType fonts match ascent+descent (patch 9870 by Keith Packard).</li> 9871 9872 <li>correct configure-script check for imake $CFLAGS, which did 9873 not check properly if imake was not available.</li> 9874 9875 <li>correct install rule in Makefile.in for 9876 <code>uxterm</code>, which was attempting to strip the script 9877 (newsgroup posting by Fernan Aguero).</li> 9878 9879 <li>correct AF/AB strings in termcap for xterm-256color and 9880 xterm-88color entries (report by Josh Howard).</li> 9881 9882 <li>update wcwidth.c to incorporate changes from Markus Kuhn's 9883 2003-05-20 (Unicode 4.0) version of that file.</li> 9884 9885 <li>modify <code>scroll-back</code> and 9886 <code>scroll-forw</code> actions to accept an adjustment value, 9887 e.g., 9888 9889 <pre> 9890 <code>scroll-back(1, page-2)</code> 9891</pre>to scroll back by 2 lines less than a page (patch by Greg 9892Klanderman). 9893 </li> 9894 9895 <li>use color resource setting from Debian package for xterm 9896 VT100 widget, since the choice of blues provides better 9897 contrast.</li> 9898 9899 <li>remove color resources from <code>XTerm.ad</code>, leaving 9900 them only in <code>XTerm-col.ad</code> (prompted by Debian 9901 package for xterm).</li> 9902 9903 <li>correct configure script option --enable-pty-handshake 9904 (report by Paul Gilmartin).</li> 9905 9906 <li>add <code>visualBellDelay</code> resource to modify the 9907 length of time used for visual bell, for very slow displays or 9908 very fast computers (reports by Ingo van Lil and Doug 9909 Toppin).</li> 9910 9911 <li>correct logic for initializing dynamic highlight color 9912 (patch by Jess Thrysoee).</li> 9913 9914 <li>add a check for non-zero size in call to 9915 <code>XCopyArea()</code> to accommodate a Solaris bug.</li> 9916 9917 <li>correct typo in example for character classes in xterm 9918 manpage (Debian #198910).</li> 9919 9920 <li>link xterm with bind_on_load option on Darwin to work 9921 around a deadlock in the dynamic loader when a signal is 9922 received while the dynamic loader is looking up symbols 9923 (patches by Rob Braun, Torrey Lyons).</li> 9924 9925 <li>modify configure script to avoid using "head -1".</li> 9926 9927 <li>update config.guess, config.sub</li> 9928 9929 <li>modify ifdef's to work around inclusion of types FcChar32 9930 and XftCharSpec with FreeType 2.0 (see <a href= 9931 "#xterm_175">patch #175</a>).</li> 9932 9933 <li>modify the predictable version of the generated logfile 9934 name (see <a href="#xterm_171">patch #171</a>) to append the 9935 process-id rather than a random value.</li> 9936 9937 <li>resync with XFree86 CVS 9938 <ul> 9939 <li>Enable SCO function keys in xterm</li> 9940 9941 <li>Make Delete key send DEL by default on SCO in 9942 xterm</li> 9943 </ul> 9944 </li> 9945 </ul> 9946 9947 <h1><a name="xterm_179" id="xterm_179">Patch #179 - 2003/5/21 - 9948 XFree86 4.3.99.5</a></h1> 9949 9950 <ul> 9951 <li>modify ifdef's for WTMPX_FILE to allow building on cygwin 9952 again.</li> 9953 9954 <li>change the default of pty-handshaking configure option (and 9955 related default for imake) to assume this feature is 9956 needed.</li> 9957 9958 <li>add ifdef's so configure option for XawPlus library works 9959 (patch by Pavel Roskin).</li> 9960 9961 <li>add <code>$(MAIN_DEFINES)</code> to the variables checked 9962 by the configure script that may contain information set by 9963 imake. This allows xterm to build/run properly using the 9964 configure script on IRIX64.</li> 9965 9966 <li>add configure check for ".exe" suffix on cygwin.</li> 9967 </ul> 9968 9969 <h1><a name="xterm_178" id="xterm_178">Patch #178 - 2003/5/18 - 9970 XFree86 4.3.99.5</a></h1> 9971 9972 <ul> 9973 <li>modify default for configure 9974 <code>--enable-pty-handshake</code> option to enable it for 9975 Solaris (report by Nelson Beebe).</li> 9976 9977 <li>modify <code>in_put()</code> function to call 9978 <code>PreeditPosition()</code> only when the cursor's position 9979 has changed. This addresses report by Stefan Baums of high CPU 9980 usage while xterm with chinput are running in the background 9981 (patch by Yong Li).</li> 9982 9983 <li>improved explanation of <code>-ls</code> conflict with 9984 <code>-e</code> option in xterm manpage (adapted from comments 9985 by Henning Makholm).</li> 9986 9987 <li>correct comment in terminfo file regarding modifier used 9988 for <code>kDC</code> (Debian #189764, report by Henning 9989 Makholm).</li> 9990 9991 <li>correct/extend some of the keypad description in ctlseqs.ms 9992 (report by Henning Makholm).</li> 9993 9994 <li>correct keypad-mapping table in input.c so 9995 <code>XK_KP_Equal</code> works (report by Henning 9996 Makholm).</li> 9997 9998 <li>modified to work with CJK double-width (bi-width/monospace) 9999 fonts. They're similar to Roman Czbora and David Starner's 10000 gnuunifonts in that Latin letters and numbers have all the same 10001 width which is exactly the half of the width of East Asian 10002 characters. (patch by Jungshik Shin 10003 <jshin@mailaps.org>).</li> 10004 10005 <li>add configure option <code>--enable-broken-osc</code> and 10006 resource <code>brokenLinuxOSC</code> to accommodate scripts 10007 which do not distinguish between running in the Linux console 10008 and running in X. Linux console recognizes malformed control 10009 strings which start with an <code>OSC</code>, but are 10010 fixed-length, with no terminator.</li> 10011 10012 <li>add configure option <code>--enable-broken-st</code> and 10013 resource <code>brokenStringTerm</code> to allow user to revert 10014 one part of the parsing table corrections from <a href= 10015 "#xterm_171">patch #171</a>. (reports by Matthias Scheler and 10016 Kirill Ponomarew indicate that someone's network firmware sends 10017 an <code><escape>X</code>).</li> 10018 10019 <li>modify configure <code>--disable-imake</code> to provide 10020 values for <code>OSMAJORVERSION</code>, 10021 <code>OSMINORVERSION</code>, <code>FUNCPROTO</code> and 10022 <code>NARROWPROTO</code> (report by Heiko Schlichting).</li> 10023 10024 <li>correct <code>vttests/16colors.sh</code>, which omitted the 10025 <code>$SUF</code> variable in output strings (patch by Paul 10026 Gilmartin).</li> 10027 10028 <li>modify shell scripts in <code>vttests</code> directory to 10029 attempt to use named signals in the <code>trap</code> 10030 statement, making this portable to OS/390 (report by Paul 10031 Gilmartin). Tested on SunOS 4.1.4, which implements only 10032 numbers.</li> 10033 </ul> 10034 10035 <h1><a name="xterm_177" id="xterm_177">Patch #177 - 2003/3/23 - 10036 XFree86 4.3.0</a></h1> 10037 10038 <ul> 10039 <li>fix definition of <code>USE_HANDSHAKE</code>, must be 10040 numeric (reported by Jens Schleusener).</li> 10041 </ul> 10042 10043 <h1><a name="xterm_176" id="xterm_176">Patch #176 - 2003/3/22 - 10044 XFree86 4.3.0</a></h1> 10045 10046 <ul> 10047 <li>add configure option <code>--enable-pty-handshake</code> to 10048 allow one to compile-in support for the pty handshaking logic, 10049 and resource <code>ptyHandshake</code> to enable or disable it 10050 (suggested by Ian Collier).</li> 10051 10052 <li>restore <code>USE_HANDSHAKE</code> ifdef removed in 10053 <a href="#xterm_159">patch #159</a> to address Debian 10054 #39964.</li> 10055 10056 <li>move ifdef's for ttysize/winsize into xterm_io.h</li> 10057 10058 <li>simplify loop on <code>tgetent</code>, check if the 10059 successive entries in the lookup table are the same. That makes 10060 xterm do one less lookup if there is no "xterm" entry in the 10061 termcap file (report by Derek Martin).</li> 10062 10063 <li>correct manpage discussion of <code>$TERM</code> and 10064 <code>$TERMCAP</code> variables, which omitted the Tektronix 10065 emulation and a note of the final "dumb" fallback.</li> 10066 10067 <li>broaden ifdef for 10068 <code>XRegisterIMInstantiateCallback()</code> from <a href= 10069 "#xterm_175">patch #175</a> (XIM fix) to exclude non-XFree86 10070 (report by Nelson Beebe indicates this breaks for Solaris, IRIX 10071 and OSF/1).</li> 10072 10073 <li>correct resource-size for <code>iconFont</code> (this was 10074 added by X11R6.3).</li> 10075 10076 <li>improve configure check for XKB bell extension, to work 10077 around inconsistent implementation of this feature (reports by 10078 Nelson Beebe, Kriston Rehberg and David Ellement).</li> 10079 10080 <li>modify configure-check for <code>tty</code> group to be 10081 less strict in batch mode (report by Nelson Beebe).</li> 10082 10083 <li>modify to allow building with g++, to use its compiler 10084 warnings (suggested by Nelson Beebe).</li> 10085 10086 <li>modify <code>dec2ucs[]</code> table to reflect newer codes 10087 available for scanlines 1, 3, 7, 9 (report by Michael 10088 Schroeder).</li> 10089 10090 <li>add configure option for XawPlus library.</li> 10091 </ul> 10092 10093 <h1><a name="xterm_175" id="xterm_175">Patch #175 - 2003/3/9 - 10094 XFree86 4.3.0</a></h1> 10095 10096 <ul> 10097 <li>fix a SIGSEGV which could occur if xterm is connecting to 10098 XIM server, and the XIM server is destroyed (patch by Nam 10099 SungHyun).</li> 10100 10101 <li>modify to use built-in line-drawing characters for Xft 10102 fonts (patch by Andrew Tipton).</li> 10103 10104 <li>make menu reflect the state of the <code>tekInhibit</code> 10105 resource.</li> 10106 10107 <li>make <code>signalInhibit</code> resource work, i.e., 10108 disable the menu entries that would send signals to, or exit 10109 xterm. This was probably broken in X11R5 when logging was 10110 disabled (report by Sven Mascheck).</li> 10111 10112 <li>changed classes of <code>colorBDMode</code> and similar 10113 resources that override colors when a video attribute is set to 10114 <code>ColorAttrMode</code>, to make them distinct from 10115 <code>ColorMode</code>. This avoids an unexpected rendering of 10116 reverse video, for example (report by Paul Fox).</li> 10117 10118 <li>changed class of <code>veryBoldColors</code> to 10119 <code>VeryBoldColors</code>, since <code>ColorMode</code> is 10120 associated with boolean resources.</li> 10121 10122 <li>add option <code>-k8</code> and resource 10123 <code>allowC1Printable</code> to allow users of non-VTxxx 10124 character sets such as KOI-8 to treat the C1 control area 10125 (character codes 128-159) as printable rather than control 10126 characters.</li> 10127 10128 <li>add a null-pointer check for return-value of 10129 <code>ptsname()</code> in HPUX-specific code (report by David 10130 Ellement).</li> 10131 10132 <li>revise the ifdef's used for <code>XKB</code> bell support. 10133 The code was using a nonstandard call 10134 <code>XkbStdBell()</code>. Changed to use 10135 <code>XkbBell()</code> (based on patch by 10136 <derek@signalmarketing.com>).</li> 10137 10138 <li>add a null-pointer check in <code>xtermLoadFont()</code> in 10139 case there is no wide-bold font (Nam SungHyun).</li> 10140 10141 <li>change <code>Makefile.in</code> to use autoconf's 10142 <code>bindir</code>, <code>libdir</code> and 10143 <code>mandir</code> variables (report by Nam SungHyun).</li> 10144 10145 <li>add <code>le</code> to termcap <code>xterm-basic</code> 10146 entry. Though missing from older termcaps for xterm, some 10147 applications check for it (report by Matthias Buelow).</li> 10148 10149 <li>modify <code>uxterm</code> script to strip modifiers such 10150 as "@euro" from the locale setting before adding ".UTF-8" 10151 (Debian #179929).</li> 10152 10153 <li>modify the remaining places where tek4014 emulation uses 10154 <code>XDefineCursor()</code>, to make it work as originally 10155 implemented, e.g., when switching back to alpha mode. Added 10156 test-screen in vttest to test this feature properly.</li> 10157 </ul> 10158 10159 <h1><a name="xterm_174" id="xterm_174">Patch #174 - 2003/2/25 - 10160 XFree86 4.2.99.903</a></h1> 10161 10162 <ul> 10163 <li>work-around for XFree86 bug which made 10164 <code>XDefineCursor()</code> on a shell-window no longer work. 10165 The tek4014 emulation used this. Use the next lower window 10166 (report by Karl Rudolf Bauchspiess).</li> 10167 10168 <li>add a resource setting <code>allowWindowOps</code> to 10169 control whether the extended window operations should be 10170 allowed, e.g., resize, iconify, report window attributes. This 10171 is to accommodate people who are not capable of using a pager 10172 to view log-files.</li> 10173 </ul> 10174 10175 <h1><a name="xterm_173" id="xterm_173">Patch #173 - 2003/2/6 - 10176 XFree86 4.2.99.902</a></h1> 10177 10178 <ul> 10179 <li>reset mouse mode to normal on a full reset. This does not 10180 apply to mouse hilite tracking mode, of course (see 10181 ctlseqs.ms).</li> 10182 10183 <li>add a time-delay at the point where mouse hilite tracking 10184 mode choses to not handle X events, to avoid runaway CPU usage 10185 (report by D Hugh Redelmeier).</li> 10186 10187 <li>check for illegal character in DECUDK string, quit if 10188 detected.</li> 10189 </ul> 10190 10191 <h1><a name="xterm_172" id="xterm_172">Patch #172 - 2002/12/27 - 10192 XFree86 4.2.99.3</a></h1> 10193 10194 <ul> 10195 <li>fixes to make repainting of 256-color example work properly 10196 (reports by Abigail Brady and Scott A Crosby). 10197 <ul> 10198 <li>set flag in <code>AllocateAnsiColor()</code> to ensure 10199 the color is allocated once only.</li> 10200 10201 <li>fix check in <code>ScrnRefresh</code>, which was 10202 comparing background colors only if the ANSI foreground 10203 colors also were set.</li> 10204 </ul> 10205 </li> 10206 10207 <li>merge <code>Error()</code> calls and some 10208 <code>exit()</code> calls into <code>SysError()</code>, and 10209 change that to add the brief explanation for each error code 10210 which is provided in the manpage. Change a few 10211 <code>SysError()</code>, calls to avoid using code 1, to avoid 10212 confusion with exit status from places that do not use 10213 <code>SysError()</code>.</li> 10214 10215 <li>simplify logic used to open a debug logfile as the standard 10216 error.</li> 10217 10218 <li>modify the <code>-e</code> option so that if it fails, 10219 xterm will check if only one argument follows, e.g., it was 10220 quoted, and then retry using <code>sh -c</code>.</li> 10221 10222 <li>modify parsing of DECUDK string parameter to allow a comma 10223 between pairs of hexadecimal digits (Ray Neuman 10224 <raymond@one.com.au> reports that "real" terminals accept 10225 this; perhaps they simply ignore unexpected characters).</li> 10226 10227 <li>fix a few problems with the <code>$TERMCAP</code> string 10228 generated by <code>resize</code>: 10229 <ul> 10230 <li>for Bourne shell, add an <code>export</code> command. 10231 This was missing as far back as X11R5.</li> 10232 10233 <li>escape exclamation marks, used in xterm's reset 10234 string.</li> 10235 10236 <li>translate literal <code>\177\</code> to "^?".</li> 10237 </ul> 10238 </li> 10239 10240 <li>improve configure check for <code>tgetent()</code> to work 10241 when <code>$TERMCAP</code> has been set to a specific 10242 entry.</li> 10243 10244 <li>modify <code>minstall.sh</code> to use "%" rather than "@", 10245 to avoid problems with AFS (report by Zdenek Sekera).</li> 10246 10247 <li>list fatal error codes from <code>error.h</code> in the 10248 manpage, remove unused codes in <code>error.h</code>.</li> 10249 10250 <li>use more explicit wording for manpage list of color 10251 resources, since at least one user confused the generic names 10252 such as "black" with the names in rgb.txt (the latter are now 10253 used).</li> 10254 10255 <li>minor fix to description of 1003 mouse mode in ctlseqs.ms 10256 (Larry Riedel).</li> 10257 </ul> 10258 10259 <h1><a name="xterm_171" id="xterm_171">Patch #171 - 2002/12/12 - 10260 XFree86 4.2.99.3</a></h1> 10261 10262 <ul> 10263 <li>modify parser tables to improve detection of malformed 10264 control sequences, making xterm behave more like a real DEC 10265 terminal (patch by Paul Williams).</li> 10266 10267 <li>update comment in <code>input.c</code> to document 10268 <code>Meta</code> as a modifier for escape sequences (patch by 10269 D Roland Walker).</li> 10270 10271 <li>add ifdef'd code for logging option which adds the hostname 10272 and a timestamp to the generated logfile name. The ifdef's are 10273 setup with the configure script (patch by Nelson Beebe).</li> 10274 10275 <li>remove <code>xevents()</code> call from the end of 10276 <code>BlinkCursor()</code>, to fix an occasional problem which 10277 caused xterm to pause until a key was pressed. The reason for 10278 this was that there was no check to ensure that there really 10279 were events for <code>xevents()</code> to process. (patch by 10280 Semen A Ustimenko <semenu@FreeBSD.org>).</li> 10281 10282 <li>remove unused mode-params from <code>open()</code> calls 10283 that do not create a file.</li> 10284 10285 <li>modify configure script to put new items first on 10286 <code>$CPPFLAGS</code> and <code>$CFLAGS</code> to avoid 10287 conflict with environment's <em>-I</em> and <em>-D</em> 10288 options.</li> 10289 10290 <li>update config.guess, config.sub</li> 10291 10292 <li>resync with XFree86 CVS 10293 <ul> 10294 <li>fix va_args glitches for xterm/libfontconfig: 0 == 10295 (void*)0 isn't true for all platforms (Egbert Eich).</li> 10296 10297 <li>initialise ProgramName in xterm's main before 10298 referencing it (XFree86 #5473, Peter Valchev).</li> 10299 10300 <li>some cleanup of Imakefile ifdef's (Marc La 10301 France).</li> 10302 </ul> 10303 </li> 10304 </ul> 10305 10306 <h1><a name="xterm_170" id="xterm_170">Patch #170 - 2002/10/13 - 10307 XFree86 4.2.1</a></h1> 10308 10309 <ul> 10310 <li>correct an off-by-one allocating data for sorted help 10311 message.</li> 10312 10313 <li>modify configure script to check for Xpm library, on which 10314 XFree86 Xaw library depends.</li> 10315 10316 <li>update config.guess, config.sub</li> 10317 </ul> 10318 10319 <h1><a name="xterm_169" id="xterm_169">Patch #169 - 2002/10/5 - 10320 XFree86 4.2.1</a></h1> 10321 10322 <ul> 10323 <li>modify wording of some options in help message to make them 10324 use <code>-/+</code> consistently with respect to "on/off" or 10325 "off/on".</li> 10326 10327 <li>sort options list which is displayed in help- and 10328 syntax-messages at runtime to simplify maintenance.</li> 10329 10330 <li>remove support for Amoeba and Minix (Juliusz Chroboczek 10331 noted it was removed from XFree86 server; there have been no 10332 users since 1996).</li> 10333 10334 <li>add configure script option 10335 <code>--disable-session-mgt</code> to control whether the 10336 session management code should be compiled-in (request by H 10337 Merijn Brand).</li> 10338 10339 <li>ifdef'd the session-management changes with 10340 <code>OPT_SESSION_MGT</code>, to accommodate X11R5 which 10341 predates the related definitions.</li> 10342 10343 <li>fix <code>decode_keyvalue()</code>, which did not properly 10344 parse multiple settings as needed for the <code>ttyModes</code> 10345 resource, since it did not skip over the parsed data.</li> 10346 10347 <li>fix an option-parsing conflict between <code>-class</code> 10348 and <code>-cjk_width</code> (Nam SungHyun)</li> 10349 10350 <li>add a missing null in <code>XtVaSetValues()</code> call 10351 used in <code>Cleanup()</code> (Nam SungHyun)</li> 10352 </ul> 10353 10354 <h1><a name="xterm_168" id="xterm_168">Patch #168 - 2002/9/29 - 10355 XFree86 4.2.1</a></h1> 10356 10357 <ul> 10358 <li>improve data reported for control sequence that requests 10359 window position by taking into account the window decorations, 10360 e.g., border and title (patch by Jess Thrysoee 10361 <jess@thrysoee.dk>).</li> 10362 10363 <li>add <code>-cjk_width</code> and corresponding resource 10364 <code>cjkWidth</code> (patch by Jungshik Shin 10365 <jshin@mailaps.org>).</li> 10366 10367 <li>add <code>-into</code> option, for embedding xterm in a 10368 Tcl/Tk application (patch by George Peter Staplin 10369 <georgeps@xmission.com>).</li> 10370 10371 <li>add simple session management (XSM) client capabilities to 10372 xterm. So a session manager such as, e.g., xsm, should be able 10373 to respawn or kill xterms without the help of an SM proxy (like 10374 smproxy), which is a hack and almost always buggy (patch by 10375 David Madore).</li> 10376 10377 <li>fix conflict between ifdef's for 10378 <code>OPT_DEC_LOCATOR</code> and <code>OPT_READLINE</code> in 10379 button.c (reported by Ilya Zakharevich).</li> 10380 10381 <li>fix for inconsistent use of <code>struct utmp</code> versus 10382 <code>struct utmpx</code> introduced in <a href= 10383 "#xterm_167">patch #167</a> (patches by Paul Gilmartin, Marc La 10384 France).</li> 10385 10386 <li>modify logic for <code>metaSendsEscape</code> to allow it 10387 to work in a setup where the Meta-key is not recognized as a 10388 modifier by the key-translations logic (discussion of 10389 eightBitInput with H.J.Lu). Note however that Vincent 10390 Lefèvre reported this in January).</li> 10391 10392 <li>use null pointer values consistently, rather than literal 10393 "0", for ending variable-length argument lists, e.g., for 10394 <code>execlp()</code> (based on patch by Matthieu Herrb).</li> 10395 10396 <li>correct logic of <code>ChangeAnsiColorRequest()</code>, 10397 which would do a screen repaint after replying to a request for 10398 information.</li> 10399 10400 <li>improve scripts in vttests to work with systems whose 10401 shells support <code>echo -n</code> and have, as does Debian, 10402 an unrelated <code>print</code> utility.</li> 10403 10404 <li>add vttests/acolors.sh to demonstrate OSC 4, which queries 10405 or sets ANSI colors.</li> 10406 10407 <li>fixes for ctlseqs.ms (Pavel Roskin, Ilya Zakharevich).</li> 10408 10409 <li>typos in xterm manpage (Jens Schweikhardt)</li> 10410 10411 <li>remove a redundant GCC_UNUSED from InitPopup() (Nam 10412 SungHyun)</li> 10413 </ul> 10414 10415 <h1><a name="xterm_167" id="xterm_167">Patch #167 - 2002/8/24 - 10416 XFree86 4.2.0</a></h1> 10417 10418 <ul> 10419 <li>correct ifdef's for <code>USE_TERMCAP</code> to match 10420 cygwin configuration.</li> 10421 10422 <li>fix several places in ctlseqs.ms which had no boxes around 10423 the literal text (report by Ilya Zakharevich).</li> 10424 10425 <li>extend mouse support for readline, ifdef'd with 10426 OPT_READLINE (integrated patch from Ilya Zakharevich).</li> 10427 10428 <li>modify terminfo description to match default for 10429 <code>modifyCursorKeys</code> resource.</li> 10430 10431 <li>add <code>modifyCursorKeys</code> resource to control how 10432 the shift- and similar modifiers are used to make a cursor 10433 escape sequence. The default makes a modified escape sequence 10434 always start with CSI and puts the modifier as the second 10435 parameter, to avoid confusing applications that would interpret 10436 the first parameter as a repeat count. The original behavior 10437 can be obtained by setting the resource to 0 (newsgroup 10438 discussion with Stephen J Turnbull, Jeffrey Altman).</li> 10439 10440 <li>correct missing initializations for 10441 <code>appdefaultCursor</code> and <code>appdefaultKeypad</code> 10442 resources.</li> 10443 10444 <li>add configure option <code>--enable-luit</code> and ifdef'd 10445 the luit-related code with OPT_LUIT_PROG.</li> 10446 10447 <li>modify xterm to invoke luit (integrated patch by Tomohiro 10448 Kubota)</li> 10449 10450 <li>update wcwidth.c to match Markus Kuhn's 2002-05-18 10451 version.</li> 10452 10453 <li>correct limit-checking in <code>ComputeSelect()</code> to 10454 handle selections that extend off the visible area; rather than 10455 modify the parameters to <code>TrackText()</code>, use 10456 <code>ScrollSelection()</code> to update the highlighting 10457 limits. (reported by Yegappan Lakshmanan and Nelson Beebe, 10458 patch by Alexander V Lukyanov).</li> 10459 10460 <li>correct manpage description of <code>tiXtraScroll</code> 10461 resource (reported by Tony Finch).</li> 10462 10463 <li>changes from OpenBSD: 10464 <ul> 10465 <li>Make xterm setgid utmp to be able to update utmp even 10466 with root privileges revoked.</li> 10467 10468 <li>If not updating utmp, revoke group privileges totally 10469 too.</li> 10470 </ul> 10471 </li> 10472 10473 <li>changes from NetBSD: 10474 <ul> 10475 <li>Check that the return value from ttyslot() is greater 10476 than 0 before writing the utmp file. Fixes w's "w: Stale 10477 utmp entry: <user> <tty> <pty>" 10478 errors.</li> 10479 10480 <li>Use openpty() to deal with new pty naming scheme.</li> 10481 </ul> 10482 </li> 10483 10484 <li>add <code>print-redir</code> action and menu entry to allow 10485 user to switch terminal in/out of printer controller mode. It 10486 appears from the manual that a real vt220 would not switch back 10487 to normal mode, so another mechanism is used (addresses Debian 10488 #37517).</li> 10489 10490 <li>check if <code>printerCommand</code> resource string is 10491 empty, use this to allow user to disable printer function.</li> 10492 10493 <li>trim trailing blanks from resource strings.</li> 10494 10495 <li>check return value from <code>ptsname()</code>, which may 10496 return null for example if someone has changed the permissions 10497 of /dev/pts to zero (Debian #121899).</li> 10498 10499 <li>modify OS/2 version to use <code>__UNIXOS2__</code> 10500 definition rather than <code>__EMX__</code>, related cleanup 10501 (patch by Holger Veit).</li> 10502 10503 <li>used modified indent 2.0 (patch <a href= 10504 "ftp://ftp.invisible-island.net/gnu-patches/">20020428</a>) to 10505 reformat most of the C source files, to simplify 10506 maintenance.</li> 10507 10508 <li>fix a couple of places where there were leading tabs on 10509 symbol-definition lines in Imakefile (Marc La France from 10510 report by Tony Finch)</li> 10511 10512 <li>add imake variable (TraceXTerm) to allow building debug 10513 version (Egbert Eich).</li> 10514 </ul> 10515 10516 <h1><a name="xterm_166" id="xterm_166">Patch #166 - 2002/3/25 - 10517 XFree86 4.2.0</a></h1> 10518 10519 <ul> 10520 <li>correct a bug in selection: double clicking on a word which 10521 was partly scrolled off the screen may select that text (report 10522 by Vincent Lefèvre <vincent@vinc17.org>).</li> 10523 10524 <li>implement <code>veryBoldColors</code> resource to control 10525 whether the corresponding video attribute such as 10526 <code>bold</code> is displayed when using 10527 <code>colorBDMode</code>, etc. (request by Josh Howard 10528 <jrh@vicor-nb.com>).</li> 10529 10530 <li>define escape sequences for function keys F21-F35 (patch by 10531 Stephen P Wall).</li> 10532 10533 <li>change the colors for the 256-color model, making them less 10534 skewed toward black (patch by Stephen P Wall).</li> 10535 10536 <li>add <code>vt100Graphics</code> resource (see <a href= 10537 "#xterm_115">patch #115</a>, based on discussion with Glenn 10538 Maynard).</li> 10539 10540 <li>ifdef'd Xaw/Xaw3d/neXtaw includes separately to avoid 10541 potential incompatibilities between these flavors of Athena 10542 widgets.</li> 10543 10544 <li>add configure check for XFree86 4.x Xaw library, whose 10545 geometry management is broken, to avoid trying to use it for 10546 toolbar configuration.</li> 10547 10548 <li>updates to configure script from vile and lynx to allow 10549 configure.in to be compiled with autoconf 2.5x</li> 10550 10551 <li>add a check for null pointer return by 10552 <code>ptsname()</code> (newsgroup posting from Mike Silva 10553 <mikesilva@lucent.com>).</li> 10554 10555 <li>fill in a few details needed to allow UTF-8 mode to switch 10556 on/off after startup. This requires that <code>wideChars</code> 10557 resource be set. (based on comments in 4 Aug 2001 by Alexey 10558 Marinichev <lyosha@lyosha.2y.net>).</li> 10559 10560 <li>remove duplicate install rules that make directories, e.g., 10561 so installing manpage will not create app-defaults 10562 directory.</li> 10563 10564 <li>add comment in in <code>do_osc()</code>, reserving cases 30 10565 and 31 for for Konsole (request by Stephan Binner 10566 <Stephan.Binner@gmx.de>).</li> 10567 10568 <li>fixes for ctlseqs.ms and xterm.man (patch by Werner Lemberg 10569 <wl@gnu.org>).</li> 10570 10571 <li>add check for monochrome display, disabling colorMode in 10572 that case (fixes Debian #134130).</li> 10573 10574 <li>resync with XFree86 CVS 10575 <ul> 10576 <li>Fix some xterm build warnings on *BSD (patch by David 10577 Dawes).</li> 10578 10579 <li>Only use SA_RESTART in xterm when it's available (patch 10580 by Frank Liu).</li> 10581 10582 <li>Fix incorrect code in signal handlers in most of the 10583 clients, xterm and xdm not done yet (patch by Matthieu 10584 Herrb).</li> 10585 </ul> 10586 </li> 10587 </ul> 10588 10589 <h1><a name="xterm_165" id="xterm_165">Patch #165 - 2002/1/5 - 10590 XFree86 4.1.0</a></h1> 10591 10592 <ul> 10593 <li>modify <code>uxterm</code> script to strip encoding part 10594 from environment variable before adding ".UTF-8" (based on 10595 Debian #125947, but using a more portable solution).</li> 10596 10597 <li>add an assignment statement in VTInitialize() to make 10598 <code>awaitInput</code> resource work.</li> 10599 10600 <li>use new macros init_Bres(), etc., in VTInitialize() to add 10601 trace of the initialization of resources.</li> 10602 10603 <li>modify checks for $LC_ALL, related environment variables to 10604 ensure the resulting strings are nonempty (report by Markus 10605 Kuhn).</li> 10606 10607 <li>add an ifdef in charproc.c for num_ptrs variable in case 10608 all configure options are disabled.</li> 10609 10610 <li>modify definition of getXtermBackground() to avoid negative 10611 array index warning on Tru64 (report by Jeremie Petit).</li> 10612 10613 <li>improve fix from patch #165 (still Debian #117184, report 10614 by Matt Zimmerman <mdz@debian.org>)</li> 10615 10616 <li>correct install rule for uxterm in Makefile.in, to handle 10617 the case where building in a different directory than xterm's 10618 source (patch by Paul Gilmartin).</li> 10619 10620 <li>documented ANSI.SYS-style cursor save/restore escape 10621 sequences in ctlseqs.ms, which are in xterm since X11R5.</li> 10622 10623 <li>correct two entries in the default charClass table, which 10624 did not follow the manpage comment about the character number 10625 corresponding to the class (patch by Marc Bevand 10626 <bevand_m@epita.fr>).</li> 10627 10628 <li>fix a couple of typos in comments in the app-defaults files 10629 (David Krause <xfree86@davidkrause.com>).</li> 10630 10631 <li>resync with XFree86 CVS 10632 <ul> 10633 <li>update language of copyrights in some files to reflect 10634 the fact that they were reassigned from X Consortium to The 10635 Open Group in 1998. Note that this xterm source is derived 10636 from the 1996 version from X Consortium, does not 10637 incorporate changes made by X Consortium or The Open Group 10638 after that date, hence we do not add The Open Group's 1998 10639 copyright date to related files.</li> 10640 10641 <li>save/restore <code>errno</code> in signal catcher 10642 (patch by Matthieu Herrb).</li> 10643 10644 <li>modify UXTerm.ad's font5 resource so that xterm can 10645 display double width characters using a font distributed 10646 with XFree86 (Tomohiro Kubota).</li> 10647 </ul> 10648 </li> 10649 </ul> 10650 10651 <h1><a name="xterm_164" id="xterm_164">Patch #164 - 2001/11/13 - 10652 XFree86 4.1.0</a></h1> 10653 10654 <ul> 10655 <li>correct a case where <code>ptyInitialErase</code> and 10656 <code>backarrowKeyIsErase</code> resources combine to set 10657 <code>DECBKM</code> mode, but a <code>reset</code> command 10658 would not reset xterm to that state, making the erase character 10659 revert to ^H (Debian #117184)</li> 10660 </ul> 10661 10662 <h1><a name="xterm_163" id="xterm_163">Patch #163 - 2001/11/04 - 10663 XFree86 4.1.0</a></h1> 10664 10665 <ul> 10666 <li>correct ifdef's for <code>__QNX__</code> and 10667 <code>USE_SYSV_PGRP</code> in main.c call to 10668 <code>tcsetpgrp</code>, which broke bash behavior around 10669 <a href="#xterm_140">patch #140</a> (report/patch by Frank Liu 10670 <fliu@mail.vipstage.com>).</li> 10671 10672 <li>modify trace.c to fix missing definition of GCC_UNUSED for 10673 compilers other than gcc when configured for trace code 10674 (report/patch by Paul Gilmartin).</li> 10675 10676 <li>change format in TraceOptions() to use long rather than 10677 int, since the latter could lose precision on 64-bit machines 10678 (report/patch by Nelson Beebe).</li> 10679 10680 <li>modify xterm manual page and minstall.sh to allow imake 10681 rules to define location of app-defaults directory (Debian 10682 #87611).</li> 10683 10684 <li>review/update list of conflicting preprocessor symbols to 10685 remove from $CPPFLAGS at the end of the configure script. In 10686 particular, this allows one to configure xterm without the 10687 utempter library on Redhat 7.1 (report/patch by Adam 10688 Sulmicki).</li> 10689 </ul> 10690 10691 <h1><a name="xterm_162" id="xterm_162">Patch #162 - 2001/10/23 - 10692 XFree86 4.1.0</a></h1> 10693 10694 <ul> 10695 <li>correct logic that processes <code>-class</code> option, so 10696 that a following <code>-e</code> option is handled (Debian 10697 #116297).</li> 10698 10699 <li>improve options-decoding to allow <code>-version</code> and 10700 <code>-help</code> options to be combined (Debian 10701 #110226).</li> 10702 10703 <li>add a 10 millisecond delay in event loop when processing 10704 <code>-hold</code> option, to avoid using too much CPU time 10705 (Debian #116213).</li> 10706 10707 <li>prefix final program execution in <code>uxterm</code> with 10708 "exec" to avoid a useless shell hanging around (Christian 10709 Weisgerber).</li> 10710 </ul> 10711 10712 <h1><a name="xterm_161" id="xterm_161">Patch #161 - 2001/10/10 - 10713 XFree86 4.1.0</a></h1> 10714 10715 <ul> 10716 <li>modify logic that resets keypad application mode to avoid 10717 doing this if there is no modifier associated with the Num_Lock 10718 keysym (report by John E Davis <davis@space.mit.edu> and 10719 Alan W Irwin <irwin@beluga.phys.uvic.ca>).</li> 10720 10721 <li>add built-in translation for Control/KP_Separator to 10722 KP_Subtract, to accommodate users who wish to use xmodmap to 10723 reassign the top row of the numeric keypad.</li> 10724 10725 <li>correct Imakefile install-rule for <code>uxname</code> 10726 script (reported by Nam SungHyun <namsh@lge.com>).</li> 10727 10728 <li>resync with XFree86 CVS – correct typo in 10729 <code><ncurses/term.h></code> ifdef.</li> 10730 </ul> 10731 10732 <h1><a name="xterm_160" id="xterm_160">Patch #160 - 2001/10/7 - 10733 XFree86 4.1.0</a></h1> 10734 10735 <ul> 10736 <li>modify logic in main.c (see <a href="#xterm_145">patch 10737 #145</a>) to avoid generating the same identifier, for example, 10738 for /dev/tty1 and /dev/pts/1, which is used to denote an entry 10739 in the utmp file (Debian bug report #84676), A similar fix was 10740 also sent by Jerome Borsboom <borsboom@westbrabant.net> 10741 in May, but I overlooked it when reviewing bug reports.</li> 10742 10743 <li>add configure check for <code><ncurses/term.h></code> 10744 to get rid of hardcoded <code>__CYGWIN__</code> ifdef in 10745 resize.c 10746 <p>NOTE: The CYGWIN port should not be linking 10747 <code>resize</code> with ncurses. It appears that the only 10748 reason it is, is because both the ncurses and termcap ports 10749 on that platform are badly misconfigured (essential pieces 10750 have been removed, etc). Checking for 10751 <code><ncurses/term.h></code> does not hurt anything, 10752 since there are some correct installations that are set up 10753 that way.</p> 10754 </li> 10755 10756 <li>add a sample <code>uxterm</code> script, which uses the 10757 <code>UXTerm</code> application defaults for UTF-8 10758 environments.</li> 10759 10760 <li>undo change to xterm application defaults, since this 10761 introduced an unnecessary incompatibility. The intended 10762 functionality was already addressed by the <a href= 10763 "#xterm_141">UXTerm</a> app-defaults file.</li> 10764 10765 <li>resync with XFree86 CVS 10766 <ul> 10767 <li>Modified xterm app default to use LFD fontnames instead 10768 of old type (Michael Schroeder).</li> 10769 10770 <li>Fix xterm when XIM is disabled - caused a segfault 10771 (Tomohiro Kubota).</li> 10772 </ul> 10773 </li> 10774 </ul> 10775 10776 <h1><a name="xterm_159" id="xterm_159">Patch #159 - 2001/9/19 - 10777 XFree86 4.1.0</a></h1> 10778 10779 <ul> 10780 <li>remove an ifdef for <code>USE_HANDSHAKE</code> added in 10781 patch #158 from the second <code>TIOCSSIZE</code> ioctl call in 10782 the initialization code. Paul Gilmartin reports that for 10783 Solaris 2.6 (sparc), stty does not show that xterm sets rows 10784 and columns unless the second ioctl is executed.</li> 10785 10786 <li>correct treatment of empty parameter list for some OSC 10787 strings (report by Sami Farin <sfarin@ratol.fi>).</li> 10788 </ul> 10789 10790 <h1><a name="xterm_158" id="xterm_158">Patch #158 - 2001/9/8 - 10791 XFree86 4.1.0</a></h1> 10792 10793 <ul> 10794 <li>augment key translations for scrollbar widget to ensure 10795 that keystrokes intended for the text area are not lost if the 10796 mouse pointer happens to fall on the scrollbar. This can 10797 happen, for instance, if the user's <code>app-defaults</code> 10798 or <code>.Xdefaults</code> file contains a translations 10799 resource, though it may also happen through unrelated resource 10800 settings: probably a bug in libXt (reported by Paul Fox 10801 <pgf@foxharp.boston.ma.us> and Dmitry Yu. Bolkhovityanov 10802 <D.Yu.Bolkhovityanov@inp.nsk.su>).</li> 10803 10804 <li>widen ifdef's in xterm.h to define 10805 <code>__EXTENSIONS__</code> on Solaris, for compilers other 10806 than gcc. This was added along <code>_POSIX_C_SOURCE</code> 10807 with in <a href="#xterm_151">patch #151</a>, but is not 10808 sufficient since Sun's compiler does not define 10809 <code>__STDC__</code> by default (report by Matthias Scheler 10810 <tron@zhadum.de>).</li> 10811 10812 <li>modify xterm to obtain the closest matching color if an 10813 exact color is not available, e.g., on 8-bit displays (patch by 10814 Stephen P Wall)</li> 10815 10816 <li>implement "OverTheSpot" preedit type of XIM input (patch by 10817 Tomohiro Kubota): 10818 <ul> 10819 <li>This preedit type is a reasonable compromise between 10820 simpleness of implementation and usefulness. "Root" preedit 10821 type is easy to implement but not useful; "OnTheSpot" 10822 preedit type is the best in the point of view of user 10823 interface but very complex. And more, "OverTheSpot" is the 10824 preedit type which the most XIM servers support. Thus, to 10825 achieve reasonable usability, support of "OverTheSpot" 10826 preedit type is needed.</li> 10827 10828 <li>In "OverTheSpot" preedit type, the preedit 10829 (preconversion) string is displayed at the position of the 10830 cursor. On the other hand, it is XIM server's 10831 responsibility to display the preedit string. Thus, it is 10832 needed for XIM client (here XTerm) to inform the XIM server 10833 of the cursor position. And more, to achieve good visual 10834 proportion, preedit string must be written using proper 10835 font. Thus, it is XIM client's responsibility to inform the 10836 XIM server of the proper font. The font must be supplied by 10837 "fontset". Fontset is a set of fonts with charsets which 10838 are specified by the current locale. Since XTerm uses 10839 ISO10646 fonts regardless of the current locale, the fonts 10840 for XIM must be prepared separately. It is difficult to 10841 prepare fonts which are similar to XTerm font. Thus, my 10842 patch uses a simple way - the default font is "*" which 10843 matches every fonts and X library will automatically choose 10844 fonts with proper charsets. I added "-fx" command option 10845 and "ximFont" resource to override this default font 10846 setting.</li> 10847 10848 <li>changed the definition of "OverTheSpot" preedit type 10849 from XIMPreeditPosition|XIMStatusArea to 10850 XIMPreeditPosition|XIMStatusNothing. This matches the 10851 behavior of other programs such as Rxvt, Kterm, Gedit.</li> 10852 10853 <li>A tiny XIM bugfix is also included. By calling 10854 XSetLocaleModifiers() with parameter of "", it can consider 10855 XMODIFIERS environmental variable which is a standard way 10856 for users to specify XIM server to be used.</li> 10857 </ul> 10858 </li> 10859 10860 <li>adjust configure script to accommodate repackaging of 10861 keysym2ucs.c as include-file for xutf8.c (patch by Tomohiro 10862 Kubota).</li> 10863 10864 <li>add the <code>UXTerm</code> app-defaults file to makefile 10865 install rules (request by Juliusz Chroboczek).</li> 10866 10867 <li>correct logic in <code>get_termcap()</code>, which returned 10868 false if the <code>tgetent()</code> call indicated that xterm 10869 was linked with terminfo. Although the <code>$TERMCAP</code> 10870 variable cannot be adjusted in this case, xterm still needs 10871 information from this call to extract data to initialize the 10872 erase-mode when the <code>ptyInitialErase</code> resource is 10873 false.</li> 10874 10875 <li>modify <code>ScrollbarReverseVideo()</code> function to 10876 cache the original border color, so it can restore that when an 10877 application flashes the screen (Bugzilla #38872).</li> 10878 10879 <li>resync with XFree86 CVS 10880 <ul> 10881 <li>remove ifdef's for X_NOT_STDC_ENV (patch by David 10882 Dawes).</li> 10883 10884 <li>add Cygwin to special errno handling case in ptydata.c 10885 (Alan Hourihane)</li> 10886 10887 <li>set screen size earlier in initialization, to address a 10888 race with window manager resizing its clients (Keith 10889 Packard).</li> 10890 </ul> 10891 </li> 10892 </ul> 10893 10894 <h1><a name="xterm_157" id="xterm_157">Patch #157 - 2001/6/18 - 10895 XFree86 4.1.0</a></h1> 10896 10897 <ul> 10898 <li>clean up button.c and input.c (patch by Juliusz 10899 Chroboczek). The basic idea is to use a single set of APIs in 10900 the XTerm core, and put a set of workarounds in a separate 10901 file. As you will notice, this drastically simplifies parts of 10902 the code; in particular, the only remaining ifdefs related to 10903 the differences between Xutf8 and legacy systems are related to 10904 the selection provider logic. This defines two new files, 10905 xutf8.h and xutf8.c, provide some half-hearted but fully 10906 portable emulation for the three Xutf8* functions that XTerm 10907 uses. Putting these in a separate file will allow people to 10908 experiment with more complex versions without making the core 10909 of XTerm more difficult to maintain. The functionality of the 10910 emulation is as follows. 10911 <ul> 10912 <li>Xutf8TextListToTextProperty fully handles XStringstyle 10913 and XUTF8StringStyle. It will only generate STRING for 10914 XStdICCTextStyle, and will only generate Latin-1 in 10915 XCompoundTextStyle (but label it as COMPOUND_TEXT, as the 10916 spec requires). (I have hesitated to make this function 10917 fail for XStdICCTextStyle and XCompoundTextStyle; this 10918 might be a smart thing to do, in the hope that the 10919 selection requestor will try UTF8_STRING afterwards; 10920 opinions?)</li> 10921 10922 <li>Xutf8TextPropertyToTextList fully handles STRING and 10923 UTF8_STRING. It systematically fails for 10924 COMPOUND_TEXT.</li> 10925 10926 <li>Xutf8LookupString will properly handle single-keystroke 10927 input for the keysyms covered by Markus' keysym2ucs 10928 function. It will not handle either compose key input or 10929 external input methods.</li> 10930 </ul> 10931 </li> 10932 10933 <li>add an ifdef for <code>SunXK_F36</code>, used in 10934 <code>xtermcapKeycode()</code> (patch by Mark Waggoner 10935 <waggoner@ichips.intel.com>).</li> 10936 10937 <li>modify check for login name to try <code>getlogin()</code> 10938 and $LOGNAME, $USER environment variables to detect if the user 10939 has logged in under an alias, i.e., an account with the same 10940 user id but a different name (Debian bug report #70084).</li> 10941 10942 <li>add resource <code>tiXtraScroll</code>, which can be used 10943 to preserve the screen contents in the scrollback rather than 10944 erasing it when starting a fullscreen application such as 10945 <code>vi</code> (patch by Ken Martin 10946 <fletcher@catsreach.org>).</li> 10947 10948 <li>two patches by Denis Zaitsev <zzz@cd-club.ru>: 10949 <ul> 10950 <li>added <code>forceBoxChars</code> resource to control 10951 the "line-drawing characters" option.</li> 10952 10953 <li>added <code>freeBoldBox</code> resource, which, when 10954 set true, suppresses check in 10955 <code>same_font_size()</code>, so xterm does not attempt to 10956 ensure that the bold font is the same size as the normal 10957 font.</li> 10958 </ul> 10959 </li> 10960 10961 <li>change the color class for ANSI colors and similar ones 10962 such as bold-color, etc., to follow the convention that the 10963 classname is the instance name with a leading capital (e.g., 10964 <code>color0</code> and <code>Color0</code> rather than 10965 <code>color0</code> and <code>Foreground</code>). There was 10966 little use for Foreground as a class other than to create 10967 occasional confusion and bug reports, most recently by Nelson 10968 Beebe who reports that it disables colors in xterm but not on 10969 Linux, which is probably due to a difference in resource 10970 evaluation order. A configure script option 10971 (--disable-color-class) is provided for anyone who did use the 10972 older behavior.</li> 10973 10974 <li>fix a signal-handling bug. When running xterm with 10975 <code>ksh</code> or similar shell such as bash 2.05, xterm will 10976 hang and not respond to keystrokes after the user types 10977 <code>suspend</code>. Additionally the popup menus do not 10978 respond, so it is not possible to send SIGCONT to the shell. 10979 What is happening is that the shell is sending itself SIGSTOP, 10980 and it is being stopped. Per specification it also means that 10981 the operating system is sending SIGCHLD to parent to the bash 10982 (XTERM). Now the issue is that xterm assumes it cannot happen 10983 and it expects to receive SIGCHLD only upon 10984 <em>termination</em> of its children. This causes a deadlock 10985 with xterm waiting for the child to die, and the child waiting 10986 for SIGCONT. (report/patch by Adam Sulmicki), analysis/testing 10987 by Sven Mascheck 10988 <sven.mascheck@student.uni-ulm.de>).</li> 10989 10990 <li>correct some inconsistent checks for 10991 <code>XtReleaseGC()</code> calls in 10992 <code>xtermLoadFont()</code> (patch by Nam SungHyun 10993 <namsh@lge.com>).</li> 10994 10995 <li>updated wcwidth.c and keysym2ucs.c to versions dated 10996 2001/1/12 and 2001/4/18, respectively from 10997 http://www.cl.cam.ac.uk/~mgk25/ucs/</li> 10998 10999 <li>correction to change from <a href="#xterm_90">patch 11000 #90</a>, which was intended to reset the saved cursor position 11001 for normal/alternate screens on a soft reset, but actually 11002 wiped out all of the saved cursor information. Just reset the 11003 saved position for the current screen (report by Michael 11004 Schroeder).</li> 11005 11006 <li>modify ShowCursor() and HideCursor() so that if the cursor 11007 points to the second part of a wide character, make the 11008 show/hide operate on the first position of the wide character 11009 (patch by Sven Verdoolaege).</li> 11010 11011 <li>scrolling in the alternate screen just before switching 11012 back to the main screen can cause extra blank lines to be 11013 inserted into the scrollback buffer (patch by Paul Vojta 11014 <vojta@math.berkeley.edu>).</li> 11015 11016 <li>resync with XFree86 4.1.0: 11017 <ul> 11018 <li>Use TermcapLibrary as -lncurses instead of -ltermcap, 11019 fixes problem building xterm/resize on Cygwin/XFree86 11020 (Harold Hunt).</li> 11021 11022 <li>Install xterm.termcap and xterm.terminfo when 11023 installing xterm (Torrey T. Lyons).</li> 11024 11025 <li>Fix some build issues on Cygwin/XFree86 (Suhaib 11026 Siddiqi).</li> 11027 11028 <li>Define CBAUD, when it's missing in xterm, on LynxOS 11029 (Stuart Lissaman).</li> 11030 </ul> 11031 </li> 11032 </ul> 11033 11034 <h1><a name="xterm_156" id="xterm_156">Patch #156 - 2001/4/28 - 11035 XFree86 4.0.3</a></h1> 11036 11037 <ul> 11038 <li>change order of selection-target types to make 8-bit xterm 11039 prefer UTF8_STRING to COMPOUND_TEXT (patch by Juliusz 11040 Chroboczek).</li> 11041 11042 <li>document <code>-fa</code>, <code>-fs</code> command-line 11043 options and <code>faceName</code>, <code>faceSize</code> 11044 resources which are used by the freetype library support.</li> 11045 11046 <li>if configure script finds freetype libraries, but imake 11047 definitions do not have the XRENDERFONT definition, define it 11048 anyway.</li> 11049 11050 <li>modify configure script check for freetype libraries to 11051 include <code><Xlib.h></code>, since an older version of 11052 the related headers relies on this (patch by Adam 11053 Sulmicki).</li> 11054 </ul> 11055 11056 <h1><a name="xterm_155" id="xterm_155">Patch #155 - 2001/4/20 - 11057 XFree86 4.0.3</a></h1> 11058 11059 <ul> 11060 <li>correct return type of in_put() from <a href= 11061 "#xterm_155">patch #153</a> changes, which left it not wide 11062 enough for UTF-8 (patch by Bruno Haible).</li> 11063 </ul> 11064 11065 <h1><a name="xterm_154" id="xterm_154">Patch #154 - 2001/4/11 - 11066 XFree86 4.0.3</a></h1> 11067 11068 <ul> 11069 <li>undo check for return value from <code>pututline</code> 11070 (used for debugging) since that function does not return a 11071 value on Slackware 3.6.</li> 11072 11073 <li>correct length in ScreenWrite, when rendering invisible 11074 text (patch by Sven Verdoolaege <skimo@kotnet.org>).</li> 11075 11076 <li>fixes/improvements for the <code>i18nSelection</code> 11077 resource from patch #153, by Bruno Haible: 11078 <ul> 11079 <li>add missing initialization for 11080 <code>i18nSelection</code> resource.</li> 11081 11082 <li>split-out the non-ICCM aspect of the 11083 <code>i18nSelection</code> resource as a new resource, 11084 <code>brokenSelections</code>.</li> 11085 </ul> 11086 </li> 11087 11088 <li>add configure check for <code><time.h></code> and 11089 <code><sys/time.h></code>, to allow for Unixware 7, 11090 which requires both. If the configure script is not used, only 11091 <code><time.h></code> will be included as before (report 11092 by Thanh Ma).</li> 11093 11094 <li>fix redefinition of <code>dup2</code>, 11095 <code>getutent</code>, <code>getutid</code>, 11096 <code>getutline</code> and <code>sleep</code> functions on 11097 Unixware 7 (report by Thanh Ma 11098 <Thanh.Ma@casi-rusco.com>)</li> 11099 11100 <li>add a fall-back definition for <code>__hpux</code>, which 11101 is apparently not defined in some compilers on HPUX 11.0 11102 (reported by Clint Olsen).</li> 11103 11104 <li>change VAL_INITIAL_ERASE, which is used as a fallback for 11105 the <code>"kb"</code> termcap string to 8, since that matches 11106 the xterm terminal description (request by Alexander V 11107 Lukyanov).</li> 11108 11109 <li>correct an off-by-one in <code>ClearInLine</code>, which 11110 caused the erase-characters (ECH) control to display 11111 incorrectly (patch by Alexander V Lukyanov).</li> 11112 11113 <li>correct escape sequences shown in terminfo for shifted 11114 editing keys. The modifier code was for the control key rather 11115 than the shift key.</li> 11116 </ul> 11117 11118 <h1><a name="xterm_153" id="xterm_153">Patch #153 - 2001/3/29 - 11119 XFree86 4.0.3</a></h1> 11120 11121 <ul> 11122 <li>increase PTYCHARLEN to 8 for os390, add some debugging 11123 traces for UTMP functions (patch by Paul Gilmartin).</li> 11124 11125 <li>correct an misplaced brace in 11126 <code>SelectionReceived()</code> (patch by Bruno Haible).</li> 11127 11128 <li>correct an assignment dropped in 11129 <code>SelectionReceived()</code> which made it not compile for 11130 wide-characters combined with debug traces.</li> 11131 11132 <li>correct typo, clarify description of 88- and 256-color 11133 controls (report by Bram Moolenaar).</li> 11134 11135 <li>correct a typo in ctlseqs.ms which caused DEC Locator 11136 control sequences using single quote "'" display grave "`" 11137 instead (reported by Paul Williams, apparently in patch 11138 #114).</li> 11139 </ul> 11140 11141 <h1><a name="xterm_152" id="xterm_152">Patch #152 - 2001/3/13 - 11142 XFree86 4.0.2</a></h1> 11143 11144 <ul> 11145 <li>correct index in inner loop in <code>VTInitI18N()</code> 11146 from patch #151 changes, which resulted in infinite loop under 11147 some conditions (report/analysis by Paul Gilmartin).</li> 11148 11149 <li>remove spurious "%|" from terminfo sgr capabilities 11150 (report/analysis by Adam M Costello, Debian #89222).</li> 11151 11152 <li>add shell script to adjust list of dynamic libraries linked 11153 by <code>resize</code> when building with the standalone 11154 configure script. Otherwise it uses the same list as for xterm, 11155 which is excessive.</li> 11156 11157 <li>fix a few compiler warnings reported by the 20010305 gcc 11158 snapshot.</li> 11159 </ul> 11160 11161 <h1><a name="xterm_151" id="xterm_151">Patch #151 - 2001/3/10 - 11162 XFree86 4.0.2</a></h1> 11163 11164 <ul> 11165 <li>alter the behaviour of selections in XTerm (patch by 11166 Juliusz Chroboczek). It is believed to follow the ICCCM + 11167 UTF8_STRING to the letter, both in UTF-8 and in eight-bit mode. 11168 From his description: 11169 <ul> 11170 <li>When compiled against XFree86 4.0.2, the patched XTerm 11171 will make the selection available as COMPOUND_TEXT, STRING 11172 or UTF8_STRING in both modes. It will request selections in 11173 the following order: 11174 <p>UTF-8 mode: UTF8_STRING, TEXT, COMPOUND_TEXT, 11175 STRING.<br> 11176 eight-bit mode: TEXT, COMPOUND_TEXT, UTF8_STRING, 11177 STRING.</p> 11178 </li> 11179 11180 <li>When compiled against an earlier version of XFree86 (or 11181 compiled with OPT_UTF8_API=0), it will still obey the 11182 ICCCM, but will neither request nor provide UTF8_STRING in 11183 eight-bit mode, and neither TEXT nor COMPOUND_TEXT in UTF-8 11184 mode.</li> 11185 11186 <li>For compatibility with previous versions of XTerm, a 11187 resource <code>i18nSelections</code> is provided, please 11188 see the manpage for details. However, due to an unexpected 11189 combination of ICCCM extensions by various bits and pieces 11190 of the libraries, interacting with previous versions of 11191 XTerm will work in many locales even without this flag. 11192 (Please do not set this resource to true by default, as 11193 this would violate the ICCCM.)</li> 11194 </ul> 11195 </li> 11196 11197 <li>improved error checking/reporting in VTInitI18N(), ensuring 11198 that lack of input method styles is treated distinctly from a 11199 mismatch.</li> 11200 11201 <li>remove an incorrect ifdef from patch #141 which suppressed 11202 overstriking to simulate bold font when xterm was compiled to 11203 support wide characters (report/analysis by Adam M Costello 11204 <amc@cs.berkeley.edu>, Debian #76404, Debian 11205 #77575).</li> 11206 11207 <li>modify <code>RequestResize()</code> function to 11208 save/restore window manager hints. Its call to 11209 <code>XtMakeResizeRequest()</code> had the undesirable 11210 side-effect of clearing window manager hints, e.g., when 11211 switching to 132-columns via DECCOLM escape sequence. Window 11212 manager hints make it simple to resize xterm in terms of 11213 character cells rather than pixels (reports by Christian 11214 Weisgerber, Debian #79939). 11215 <p>This applies to the normal configuration. When built with 11216 toolbar support, the hints are applied to a different widget 11217 level (more work will be needed to make hints work with the 11218 toolbar).</p> 11219 </li> 11220 11221 <li>fix a redefinition warning for resize.c on OpenBSD (patch 11222 by Christian Weisgerber).</li> 11223 11224 <li>change resource corresponding to <code>-T</code> option to 11225 match Xt library's <code>-title</code>, i.e., 11226 <code>.title</code> rather than <code>*title</code> so the 11227 command-line options are interchangeable as documented (Debian 11228 bug report #68843).</li> 11229 11230 <li>add script used from autoconf'd makefile for installing 11231 manpages, since recent XFree86 changing the way section numbers 11232 are represented makes the install dependent on extra 11233 scripts.</li> 11234 11235 <li>add configure check for freetype libraries and configure 11236 option --disable-freetype to override this feature.</li> 11237 11238 <li>modify some configure script macros to avoid using 11239 changequote(), which has been rendered useless in the latest 11240 autoconf alpha 2.49c</li> 11241 11242 <li>update config.guess, config.sub to 2001-2-13</li> 11243 11244 <li>remove redundant/contradictory __CYGWIN__ definitions from 11245 resize.c</li> 11246 11247 <li>correct manpage typo introduced by X11R6.5 resync.</li> 11248 </ul> 11249 11250 <p>Changes from XFree86 4.0.2:</p> 11251 11252 <ul> 11253 <li>add definition of <code>_POSIX_C_SOURCE</code> for Solaris 11254 to make this compile with <code>gcc -ansi -pedantic</code> 11255 (report by <mark@zang.com>.</li> 11256 </ul> 11257 11258 <h1><a name="xterm_150" id="xterm_150">Patch #150 - 2000/12/29 - 11259 XFree86 4.0.2</a></h1> 11260 11261 <ul> 11262 <li>move the binding for shifted keypad plus/minus, which 11263 invokes the <code>larger-vt-font()</code> and 11264 <code>smaller-vt-font()</code> actions, respectively, into the 11265 translations resource (suggested by Marius Gedminas 11266 <mgedmin@puni.osf.lt>).</li> 11267 11268 <li>modify configure script to support the 11269 <code>--program-prefix</code>, <code>--program-suffix</code> 11270 and <code>--program-transform-name</code> options (request by 11271 Alison Winters <alison@mirrabooka.com>).</li> 11272 11273 <li>fixes for wide/combining characters (Robert Brady): 11274 <ul> 11275 <li>fix a scrolling / combining characters display 11276 anomaly</li> 11277 11278 <li>fix a problem with double-width characters where if the 11279 primary font had no box-drawing characters, the right hand 11280 half of double-width characters was erased (reported by Yao 11281 Zhang <yzhang@sharemedia.com>).</li> 11282 11283 <li>fix special case of null byte for key handling in UTF-8 11284 locales.</li> 11285 </ul> 11286 </li> 11287 11288 <li>modify logic that compares sizes of normal and bold fonts 11289 to be more forgiving of the font server's choice of bold font 11290 which must match the normal font's size. Now 11291 <code>same_font_size()</code> compares the height of the fonts 11292 rather than individually ascent and descent, and allows the 11293 bold font to be one pixel smaller than the normal font 11294 (addresses a report by Alan Citterman <alan@mticket.com>, 11295 who says that something in patches #146 to #148 made xterm more 11296 likely to overstrike bold fonts, and indirectly Debian bug 11297 report #76404, which reports the opposite).</li> 11298 11299 <li>make configure script use $CFLAGS and $CPPFLAGS 11300 consistently, including removing a chunk from configure.in 11301 which attempted to save/restore $CPPFLAGS while processing 11302 value set by the --x-includes option, but lost values set in an 11303 intervening AC_CHECK_HEADERS. This change modifies macros 11304 CF_ADD_CFLAGS, CF_ANSI_CC_CHECK and CF_X_TOOLKIT, as well as 11305 removing variables IMAKE_CFLAGS and X_CFLAGS from the generated 11306 makefile (the AC_CHECK_HEADERS problem was reported by Albert 11307 Chin-A-Young <china@thewrittenword.com<).</li> 11308 11309 <li>correct a comparison in SELECTWORD case of ComputeSelect(), 11310 which resulted in a word-selection wrapping past the first 11311 column without checking the first column's character class 11312 (reported by Christian Lacunza 11313 <celacunza@netscape.net></li> 11314 11315 <li>correct a logic in UTF-8 mode for selecting double-width 11316 characters; a combining character was omitted (patch by Markus 11317 Kuhn).</li> 11318 11319 <li>add feature to pop (raise) window when a bell is received 11320 (patch by Gael Roualland 11321 <gael.roualland@dial.oleane.com>).</li> 11322 11323 <li>add __NetBSD__ and __OpenBSD__ to special-case in 11324 xterm_io.h for USE_POSIX_TERMIOS definition (patch by Christian 11325 Weisgerber).</li> 11326 11327 <li>move special-case HPUX include for <sys/bsdtty.h> to 11328 xterm_io.h to define TIOCSLTC, making HAS_LTCHARS defined for 11329 HPUX 10.20 (report by Bruno Betro).</li> 11330 </ul> 11331 11332 <h1><a name="xterm_149" id="xterm_149">Patch #149 - 2000/12/6 - 11333 XFree86 4.0.1h</a></h1> 11334 11335 <ul> 11336 <li>restructured includes for <code>termios.h</code>, 11337 <code>termio.h</code> and related definitions for main.c, 11338 os2main.c, screen.c and resize.c so they will share equivalent 11339 definitions in a new header <code>xterm_io.h</code>. This is 11340 intended to solve some problems mainly for HPUX which appear to 11341 arise from inconsistent definitions for SIGWINCH- and 11342 HAS_LTCHARS-related symbols (reports by Bruno Betro, Jeremie 11343 Petit and Clint Olsen).</li> 11344 11345 <li>improve usability of double-width fonts by allowing normal 11346 fonts to be given as double-width (from a patch by Fabrice 11347 Bellard <bellard@email.enst.fr>).</li> 11348 11349 <li>correct a few compiler warnings in TRACE() macros for 11350 signed/unsigned variable differences (reported by Clint 11351 Olsen).</li> 11352 11353 <li>make configure script use $CFLAGS and $CPPFLAGS more 11354 consistently, i.e., by using CF_ADD_CFLAGS in CF_ANSI_CC 11355 macro.</li> 11356 11357 <li>expanded description of environment variables in 11358 manual-page.</li> 11359 11360 <li>modify OPT_TCAP_QUERY feature to always return the termcap 11361 or terminfo capability string in the response, and to 11362 read/write the names in hexadecimal form to allow for the 11363 special case of termcap's <code>k;</code> name (patch by Bram 11364 Moolenaar).</li> 11365 11366 <li>add OPT_SAME_NAME and OPT_TCAP_QUERY to xtermcfg.hin, so 11367 the corresponding configure options work (patch by Bram 11368 Moolenaar).</li> 11369 11370 <li>resync with XFree86 4.0.1g: 11371 <ul> 11372 <li>Rewrite Xft library for Render extension/core text and 11373 font management Change xterm to use new interface (Keith 11374 Packard).</li> 11375 </ul> 11376 </li> 11377 </ul> 11378 11379 <h1><a name="xterm_148" id="xterm_148">Patch #148 - 2000/10/31 - 11380 XFree86 4.0.1d</a></h1> 11381 11382 <ul> 11383 <li>document logfile options in man-page.</li> 11384 11385 <li>correct spelling of <code>-samename</code> option in help 11386 message.</li> 11387 11388 <li>add configure script option 11389 <code>--enable-tcap-query</code> (request by Bram 11390 Moolenaar).</li> 11391 11392 <li>add a "Co" or "colors" entry to the OPT_TCAP_QUERY feature 11393 (patch by Bram Moolenaar).</li> 11394 11395 <li>patch by Kiyokazu Suto <suto@ks-and-ks.ne.jp>: 11396 <ul> 11397 <li>add support for bold font for double width characters. 11398 The font name may be specified with the command line option 11399 <code>-fwb</code> or with resource 11400 <code>wideBoldFont</code> (class 11401 <code>WideBoldFont</code>).</li> 11402 11403 <li>correct underlining of double width character string, 11404 which was drawn only half width.</li> 11405 11406 <li>correct binary search of precomposed character table, 11407 which may return wrong result when <code>int</code> is just 11408 32 bits.</li> 11409 </ul> 11410 </li> 11411 11412 <li>some changes to align terminfo with ncurses 5.2: 11413 <ul> 11414 <li>remove xtermm description, retaining xterm-mono since 11415 the former conflicts with ncurses.</li> 11416 11417 <li>modify initialization and reset strings to avoid 11418 putting the save/restore cursor operations bracketing 11419 changes to video attributes, since the changes could be 11420 lost when the cursor is restored. This affects xterm-r6 and 11421 xterm-8bit (the xterm-xfree86 entry uses the soft-reset 11422 feature which resets scrolling margins and origin mode 11423 without requiring us to save/restore the cursor 11424 position).</li> 11425 11426 <li>make a few entries explicitly inherit from 11427 xterm-xfree86 rather than xterm: xterm-rep, xterm-xmc, 11428 xterm-nrc</li> 11429 </ul> 11430 </li> 11431 11432 <li>ensure that sign-extension does not affect 11433 <code>ctype</code> macros by using <code>CharOf()</code> macro 11434 to coerce the parameter to an unsigned char.</li> 11435 11436 <li>resync with XFree86 4.0.1d: 11437 <ul> 11438 <li>Add primitive support in xterm for Xft based fonts 11439 (Keith Packard). The changes are ifdef'd with 11440 <code>-DXRENDERFONT</code>.</li> 11441 </ul> 11442 </li> 11443 </ul> 11444 11445 <h1><a name="xterm_147" id="xterm_147">Patch #147 - 2000/10/26 - 11446 XFree86 4.0.1c</a></h1> 11447 11448 <ul> 11449 <li>correct implementation of <code>ptyInitialErase</code>: the 11450 value assigned to <code>initial_erase</code> was for the 11451 control terminal, which is correct as far as it goes. But there 11452 was no following test for the pseudo-terminal's erase value, 11453 which would overwrite the default obtained from the control 11454 terminal (reported by Christian Weisgerber 11455 <naddy@mips.inka.de>).</li> 11456 11457 <li>modify check for printable-characters in OSC string to use 11458 xterm's ansi_table rather than isprint() macro, to isolate this 11459 check from locale settings. This fixes a problem using 8-bit 11460 characters to set the title (reported by Ricardas Cepas 11461 <rch@richard.eu.org>).</li> 11462 11463 <li>modify sample scripts to check for printf before print, 11464 since the latter is not as well standardized (e.g., on 11465 Linux).</li> 11466 11467 <li>updated config.sub, config.guess to reflect changes on 11468 subversions.gnu.org</li> 11469 </ul> 11470 11471 <h1><a name="xterm_146" id="xterm_146">Patch #146 - 2000/9/12 - 11472 XFree86 4.0.1c</a></h1> 11473 11474 <ul> 11475 <li>correct two instances overlooked from patch #141 which 11476 assumed UTF-8 mode without checking, causing a core dump in 11477 non-UTF-8 mode (one instance was reported by Tommi Virtanen 11478 <tv@debian.org>).</li> 11479 11480 <li>correct a problem selecting from the scrollback buffer in 11481 UTF-8 mode by changing remaining getXtermCell() calls to 11482 XTERM_CELL() as in the non-UTF-8 cases (report by Markus Kuhn, 11483 patch by Robert Brady).</li> 11484 </ul> 11485 11486 <h1><a name="xterm_145" id="xterm_145">Patch #145 - 2000/9/11 - 11487 XFree86 4.0.1c</a></h1> 11488 11489 <ul> 11490 <li>changes for UTF-8 configuration (Robert Brady): 11491 <ul> 11492 <li>doublewide characters don't lose their accents when the 11493 cursor moves onto or from them (a visual bug)</li> 11494 11495 <li>fix logic in addXtermCombining, which mean that if the 11496 low byte of a cell's first combining char was 0, a 11497 following combining char would go into combining slot 1, 11498 not 2.</li> 11499 11500 <li>modify logic for cut-buffers so UTF-8 data is first 11501 converted to Latin1.</li> 11502 11503 <li>collapse surrogates, 0xfffe, 0xffff to UCS_REPL.</li> 11504 11505 <li>modify to allow xterm to to show combining characters 11506 attached to doublewidth characters.</li> 11507 11508 <li>correct bug in linewrap with -u8 option (reported by 11509 Andreas Koenig <andreas.koenig@anima.de>).</li> 11510 </ul> 11511 </li> 11512 11513 <li>several changes to PTY logic (based on request by Tim Ryan 11514 <timryan@nortelnetworks.com>). 11515 <ul> 11516 <li>modify treatment of <code>-S</code> option to to make 11517 it work with Unix98 PTY's.</li> 11518 11519 <li>restore sense of IsPts flag in <code>get_pty()</code>, 11520 which was lost in Unix98 changes.</li> 11521 11522 <li>use new functions <code>my_pty_id()</code> and 11523 <code>my_pty_name()</code> to simplify/fix strings used for 11524 utmp, wtmp identifiers.</li> 11525 11526 <li>simplify <code>get_pty()</code> function, making it 11527 have a single return point so its inputs/outputs can be 11528 identified.</li> 11529 </ul> 11530 </li> 11531 11532 <li>update config.guess and config.sub and scripts to my 11533 20000819 patch, adding cases for OS/2 EMX.</li> 11534 11535 <li>add special case for os390 compiler options to configure 11536 script (patch by Paul Gilmartin)</li> 11537 11538 <li>fix some unused-variable compiler warnings (reported by 11539 Zdenek Sekera).</li> 11540 11541 <li>split-out some string functions into xstrings.c, to use 11542 them more consistently among main.c, os2main.c and 11543 resize.c</li> 11544 11545 <li>align termcap/terminfo files, adding entries to make them 11546 match. The termcap entries are necessarily less complete than 11547 the terminfo, to fit within 1023 character per entry.</li> 11548 11549 <li>add terminfo entry for xterm-sco (SCO function keys).</li> 11550 11551 <li>modify <code>same_font_name()</code> to properly handle 11552 wildcard introduced in <code>bold_font_name()</code>, making 11553 comparison for different fonts succeed when only the normal 11554 font is specified. This is needed to decide if 1-pixel offset 11555 should be used. (reported in a newsgroup by Bart Oldeman 11556 <enbeo@enbeo.resnet.bris.ac.uk>)</li> 11557 11558 <li>correct preprocessor line for OPT_WIDE_CHARS in 11559 drawXtermText() from patch #141 which resulted in overstriking 11560 for bold fonts not working.</li> 11561 11562 <li>correct Imakefile from 4.0.1c resync so UTF-8 modules are 11563 in UTF8SRC, UTF8OBJ lists, allowing build without UTF-8 11564 support.</li> 11565 </ul> 11566 11567 <h1><a name="xterm_144" id="xterm_144">Patch #144 - 2000/8/23 - 11568 XFree86 4.0.1b</a></h1> 11569 11570 <ul> 11571 <li>remove a spurious assignment in ScreenWrite() from Robert 11572 Brady's patch which set a null at the "end" of the buffer to be 11573 written. That made the autowrap feature write a blank in the 11574 first column for the non-UTF-8 configuration, rather than the 11575 actual character (reported by Alan Citterman 11576 <alan@mticket.com>).</li> 11577 </ul> 11578 11579 <h1><a name="xterm_143" id="xterm_143">Patch #143 - 2000/8/19 - 11580 XFree86 4.0.1b</a></h1> 11581 11582 <ul> 11583 <li>add a check to ensure that <code>-class</code> command-line 11584 option is not confused with <code>-c</code> (reported by Paul 11585 Townsend <aab@aab.cc.purdue.edu>).</li> 11586 </ul> 11587 11588 <h1><a name="xterm_142" id="xterm_142">Patch #142 - 2000/8/18 - 11589 XFree86 4.0.1b</a></h1> 11590 11591 <ul> 11592 <li>correction to precompose scripts, so 0061 + 0300 will now 11593 be really be displayed as 00C0 (patch by Robert Brady 11594 <robert@susu.org.uk>).</li> 11595 11596 <li>correct macro ClassSelects() in button.c, used to hide 11597 ifdef's for OPT_WIDE_CHARS in patch #141 (reported by Andreas 11598 Paul <paula@informatik.tu-muenchen.de>).</li> 11599 11600 <li>change wcwidth.h to include stddef.h rather than wchar.h, 11601 which is not present on OpenBSD and FreeBSD (reported by 11602 Christian Weisgerber and Bram Moolenaar).</li> 11603 11604 <li>newer config.sub and config.guess, from lynx 11605 2.8.4dev.7</li> 11606 </ul> 11607 11608 <h1><a name="xterm_141" id="xterm_141">Patch #141 - 2000/8/14 - 11609 XFree86 4.0.1b</a></h1> 11610 11611 <ul> 11612 <li>changes for doublewidth and combining characters, from 11613 http://www.ecs.soton.ac.uk/~rwb197/xterm/ (integrated patch by 11614 Robert Brady). In this context, doublewidth refers to 16-bit 11615 character sets which may have glyphs occupying two cells.</li> 11616 11617 <li>add command-line option <code>-class</code>, which allows 11618 one to override xterm's resource class. Also add resource file 11619 <code>UXTerm.ad</code>, which simplifies using xterm for both 11620 8-bit character sets and UTF-8.</li> 11621 11622 <li>fixes/improvements to OPT_TCAP_QUERY logic (patches by Bram 11623 Moolenaar, Stephen P Wall).</li> 11624 </ul> 11625 11626 <h1><a name="xterm_140" id="xterm_140">Patch #140 - 2000/7/23 - 11627 XFree86 4.0.1</a></h1> 11628 11629 <ul> 11630 <li>modify Makefile.in to circumvent GNU make's built-in suffix 11631 rule for ".sh" which confuses install.sh with the "make 11632 install" target (report/patch by Paul Gilmartin).</li> 11633 11634 <li>implement an experimental control sequence which an 11635 application may use to query the terminal to determine what 11636 sequence of characters it would send for a given function key. 11637 This is ifdef'd with OPT_TCAP_QUERY (request by Bram 11638 Moolenaar).</li> 11639 11640 <li>add /usr/local to search path in CF_X_ATHENA configure 11641 macro to build with Xaw3d on OpenBSD (patch by Christian 11642 Weisgerber).</li> 11643 11644 <li>add missing <code>#undef HAVE_TERMIO_C_ISPEED</code> to 11645 xtermcfg.hin, omitted in patch #133 fix for IRIX 6.5 baudrate 11646 (report by Alain Filbois <Alain.Filbois@loria.fr>).</li> 11647 11648 <li>correct a few errors in xterm.man: font in filename example 11649 for Tektronix emulation, and description of -nul/+nul 11650 command-line options (report by Eric Fischer 11651 <enf@pobox.com>).</li> 11652 11653 <li>update config.guess and config.sub, from tin and lynx.</li> 11654 </ul> 11655 11656 <h1><a name="xterm_139" id="xterm_139">Patch #139 - 2000/6/17 - 11657 XFree86 4.0d</a></h1> 11658 11659 <ul> 11660 <li>back out change to <code>-name</code> command-line option, 11661 restoring its original behavior (as noted by David Madore, the 11662 correct interpretation of this option is the application 11663 instance rather than the application class).</li> 11664 </ul> 11665 11666 <h1><a name="xterm_138" id="xterm_138">Patch #138 - 2000/6/15 - 11667 XFree86 4.0c</a></h1> 11668 11669 <ul> 11670 <li>workaround for fixed fonts which are generated from Unicode 11671 fonts: they omit glyphs for some xterm's less-used line-drawing 11672 characters, which caused xterm to set a flag telling it to use 11673 only its internal line-drawing characters. Do not set the flag 11674 (it can be set from the popup menu), and xterm will generate 11675 only the line-drawing glyphs which actually are missing.<br> 11676 Otherwise, when used for large fonts, xterm may generate a 11677 2-pixel wide line, which can leave dots on the screen.</li> 11678 11679 <li>restore first line of 256colres.pl, omitted in 4.0c 11680 diffs.</li> 11681 </ul> 11682 11683 <h1><a name="xterm_137" id="xterm_137">Patch #137 - 2000/6/10 - 11684 XFree86 4.0b</a></h1> 11685 11686 <ul> 11687 <li>make command-line <code>-name</code> option work as 11688 documented. Apparently this was lost in X11R5 when coding to 11689 use <code>XtAppInitialize</code>.</li> 11690 11691 <li>limit numeric parameters of control sequences to 65535 to 11692 simplify checks for numeric overflow.</li> 11693 11694 <li>change index into UDK list to unsigned to guard against 11695 numeric overflow making the index negative (Taneli Huuskonen 11696 <huuskone@cc.helsinki.fi>).</li> 11697 11698 <li>change <code>sun function-keys</code> resource name to 11699 <code>sunFunctionKeys</code> to work around redefinition of the 11700 token <code>sun</code> by xrdb on Solaris. Similarly, renamed 11701 resource <code>sun keyboard</code> to 11702 <code>sunKeyboard</code> (Stephen P Wall).</li> 11703 11704 <li>change similar resource names for HP and SCO to avoid 11705 potential conflict with xrdb symbols on other systems, as well 11706 as for consistency.</li> 11707 11708 <li>reorganized the install targets in the autoconf'd Makefile, 11709 adding install-app, install-bin, install-dirs and install-man. 11710 The app-defaults class can be overridden by setting the make 11711 variable 'CLASS', simplifying customization of xterm as a 11712 Unicode terminal, e.g., CLASS=UXTerm.</li> 11713 11714 <li>add limit checks to <code>ClearInLine()</code>, 11715 <code>ScrnInsertChar()</code>, <code>ScrnDeleteChar()</code> to 11716 correct potential out-of-bounds indexing (prompted by Debian 11717 bug report #64713, which reported a problem with ICH escape 11718 sequences).</li> 11719 11720 <li>updates to config.sub and config.guess Kevin Buettner 11721 <kev@primenet.com> for elf64_ia64 Bernd Kuemmerlen 11722 <bkuemmer@mevis.de> and MacOS X.</li> 11723 11724 <li>for os390, add check for errno set to ENODEV on failure to 11725 open /dev/tty when there is no controlling terminal (patch by 11726 Paul Gilmartin).</li> 11727 11728 <li>fixes for building on Digital Unix 4.0 and AIX 4.2 (patch 11729 from H Merijn Brand <h.m.brand@hccnet.nl>).</li> 11730 11731 <li>modify DECRQSS reply for DECSCL to additionally report if 11732 the terminal is set for 8-bit controls.</li> 11733 </ul> 11734 11735 <h1><a name="xterm_136" id="xterm_136">Patch #136 - 2000/6/3 - 11736 XFree86 4.0b</a></h1> 11737 11738 <ul> 11739 <li>add a resource (<code>limitResize</code>) limiting resizing 11740 via the CSI 4 t and CSI 8 t sequences.</li> 11741 11742 <li>ignore out-of-bounds resize requests, i.e., where 11743 sign-extension or truncation of the parameters would 11744 occur.</li> 11745 </ul> 11746 11747 <h1><a name="xterm_135" id="xterm_135">Patch #135 - 2000/5/29 - 11748 XFree86 4.0b</a></h1> 11749 11750 <ul> 11751 <li>remove code introduced in #134 which made some backgrounds 11752 bold.</li> 11753 11754 <li>minor correction to format of updated $TERMCAP when adding 11755 <code>kb</code> capability for <code>ptyInitialErase</code> 11756 logic.</li> 11757 11758 <li>improved test for SVR4 definition.</li> 11759 </ul> 11760 11761 <h1><a name="xterm_134" id="xterm_134">Patch #134 - 2000/5/28 - 11762 XFree86 4.0b</a></h1> 11763 11764 <ul> 11765 <li>update URL's and mailing addresses, moved to 11766 http://dickey.his.com and dickey@herndon4.his.com</li> 11767 11768 <li>correct missing quotes in CF_TTY_GROUP configure script 11769 macro in case the script is run in batch mode.</li> 11770 11771 <li>modify ownership-check of log file to ignore the group 11772 ownership. Otherwise xterm cannot create logfiles in 11773 directories with set-gid permissions.</li> 11774 11775 <li>simplify the logic that reads termcap data.</li> 11776 11777 <li>add fallback definition for B9600 in case line speed 11778 definition for 38400 is missing (report by Jack J Woehr 11779 <jwoehr@ibm.net>, for OpenBSD 2.6).</li> 11780 11781 <li>fix: Set highlightColor, and select a region containing the 11782 text cursor. If the window loses focus, the cursor becomes 11783 hollow, with the region inside the cursor being 11784 background/foreground, unlike the rest of the selection, which 11785 is foreground/highlight (patch by Ross Paterson 11786 <ross@soi.city.ac.uk>).</li> 11787 11788 <li>add configure script tests to define SVR4, SYSV and 11789 USE_POSIX_WAIT, which enables xterm to compile on Solaris 7 and 11790 SCO Openserver without imake, though there are still a few 11791 features for the latter which require <code>sco</code> to be 11792 predefined.</li> 11793 11794 <li>patches from Stephen P Wall: 11795 <ul> 11796 <li>add support for two Sun-specific function keys. These 11797 keys are labeled F11 and F12 on Sun Type 5 keyboards, but 11798 return SunXK_F36 and SunXK_F37. Support will only be 11799 compiled in if the header file <X11/Sunkeysym.h> 11800 exists and contains the appropriate symbol definitions. The 11801 keycodes for the DEC keycodes were arbitrary unused codes, 11802 but the ones for the Sun keycodes are what cmdtool and 11803 shelltool actually send.</li> 11804 11805 <li>add <code>colorRV</code> and <code>colorRVMode</code> 11806 resources to allow specifying a color to use for reverse 11807 video, similar to the existing UL, BD, and BL modes.</li> 11808 11809 <li>add <code>alwaysUseMods</code> resource, to override 11810 check if <code>alt</code> or <code>meta</code> modifiers 11811 are used in <code>translations</code> resource. Revamped 11812 the code to calculate the modifier value, and included Meta 11813 if alwaysUseMods is TRUE, using values 9-16.</li> 11814 </ul> 11815 </li> 11816 11817 <li>fixes for os390 (Paul Gilmartin): 11818 <ul> 11819 <li>regularize the definition of CONTROL() and remove an 11820 acknowledged "trial and error" table.</li> 11821 11822 <li>translate "^?" into A2E(0177) which is the EBCDIC "DEL" 11823 rather than plain 0177 which is the EBCDIC quotation 11824 mark.</li> 11825 11826 <li>modify <code>xtermMissingChar()</code> so that EBCDIC 11827 codes 128-159 are not rendered as blanks by X server 11828 running on Solaris, which sees those as control 11829 characters.</li> 11830 11831 <li>make debugging traces (configure --enable-trace) work 11832 properly with EBCDIC.</li> 11833 </ul> 11834 </li> 11835 </ul> 11836 11837 <h1><a name="xterm_133" id="xterm_133">Patch #133 - 2000/5/2 - 11838 XFree86 4.0a</a></h1> 11839 11840 <ul> 11841 <li>add substitutions in autoconf'd Makefile for CPPFLAGS, 11842 LDFLAGS and AWK (reported by Neil Bird).</li> 11843 11844 <li>correct uninitialized <code>childstat</code> variable from 11845 patch #131 in <code>creat_as()</code> function, which caused 11846 logging to not work on Solaris, whose <code>waitpid()</code> 11847 function does not initialize its parameter. Add check for EINTR 11848 on return from <code>waitpid()</code> as well (reported by Neil 11849 Bird <neil.bird@rdel.co.uk>).</li> 11850 11851 <li>remove a redundant check for working <code>setuid()</code> 11852 function introduced in patch #132. Greg Smith reports that this 11853 does not work as intended on os390.</li> 11854 11855 <li>change line speed from 9600bd to 38400bd, to accommodate 11856 people who mistakenly use $TERM set to <em>vt100</em>, to 11857 reduce the effect of padding associated with this terminal 11858 type.</li> 11859 11860 <li>add configure script check for IRIX 6.5's redefinition of 11861 baud rates associated with <code>struct termio</code>, to 11862 correct a situation where the baud rate was initialized to zero 11863 (reported by Andrew Isaacson <adi@lcse.umn.edu>).</li> 11864 11865 <li>remove unused configure script check for VDISABLE.</li> 11866 </ul> 11867 11868 <h1><a name="xterm_132" id="xterm_132">Patch #132 - 2000/4/11 - 11869 XFree86 4.0a</a></h1> 11870 11871 <ul> 11872 <li>undo an incorrect change from patch #113 caused the right 11873 scrollbar to be positioned incorrectly when re-enabling it 11874 (analysis by D Roland Walker).</li> 11875 11876 <li>add ctrlFKeys resource, replacing constant for adjusting 11877 control-F1 to control-F12 to VT220-style F10-F20. The resource 11878 changes the constant 12 to a default value of 10 (request by 11879 Jim Knoble <jmknoble@pobox.com>).</li> 11880 11881 <li>correct ifdef'ing for conflict between definitions in AIX's 11882 <sys/select.h> and <X11/Xpoll.h> (reported by Clint 11883 Olsen).</li> 11884 11885 <li>add checks for return-values of getutid(), initgroups() and 11886 setuid() in main.c, as well as modifying ifdef's for __osf__ to 11887 include tty-group and WTMP logic (adapted from patch by Paul 11888 Szabo <psz@maths.usyd.edu.au>)</li> 11889 11890 <li>modify resize.c to build and work on os390 (uses EBCDIC) 11891 (adapted from patch by Phil Sidler 11892 <Phil.Sidler@airborne.com>)</li> 11893 11894 <li>use Ires(), Bres() and Sres() macros to simplify resource 11895 list in charproc.c</li> 11896 11897 <li>resync with XFree86 4.0a: 11898 <ul> 11899 <li>correct a typo in os2main.c (Holger Veit, from 11900 4.0a).</li> 11901 </ul> 11902 </li> 11903 </ul> 11904 11905 <h1><a name="xterm_131" id="xterm_131">Patch #131 - 2000/3/3 - 11906 XFree86 3.9.18b</a></h1> 11907 11908 <ul> 11909 <li>improve logfile security (integrated patch by Branden 11910 Robinson) 11911 <ul> 11912 <li>make the <code>creat_as()</code> function more strict 11913 by using O_EXCL rather than O_APPEND.</li> 11914 11915 <li>fixes to make DEBUG ifdef's compile/run, including 11916 making the debug logfile more unique by appending a 11917 timestamp to its name.</li> 11918 11919 <li>include <term.h> in resize.c, to fix a 11920 missing-prototype warning.</li> 11921 </ul> 11922 </li> 11923 11924 <li>modified <code>creat_as()</code> a little more, retaining 11925 the ability to append to a logfile If the user specifies the 11926 name. Also, check if the opened file (which patch #130 ensures 11927 is owned by the effective user) is not writable by other 11928 users.</li> 11929 11930 <li>use <code>creat_as()</code> logic to make tek4014 11931 screen-copy more secure (noted by Branden Robinson).</li> 11932 11933 <li>ifdef'd some of Branden's changes to build/work on older 11934 machines.</li> 11935 11936 <li>correct missing initialization of the <code>.mode</code> 11937 flag in <code>ColorRes</code> struct, from patch #129. This 11938 worked on Linux because <code>malloc()</code> zeroes memory on 11939 that platform (reported by Christian Weisgerber).</li> 11940 11941 <li>modify logic for <code>deleteIsDEL</code> resource so it 11942 has internally 3 states: unspecified, true and false. If 11943 unspecified, the keyboard type determines whether the Delete 11944 key transmits <code><ESC>[3~</code> or <code>\177</code>, 11945 and the popup menu entry reflects the internal state. 11946 Otherwise, the popup menu entry overrides the keyboard type 11947 (suggested by Dr Werner Fink, to make it simpler to set 11948 resources that imitate the legacy X11R6 xterm).</li> 11949 </ul> 11950 11951 <h1><a name="xterm_130" id="xterm_130">Patch #130 - 2000/3/1 - 11952 XFree86 3.9.18a</a></h1> 11953 11954 <ul> 11955 <li>modify <code>scroll-forw()</code> and 11956 <code>scroll-back()</code> actions, adding a third parameter 11957 which will direct xterm to ignore the action when mouse 11958 reporting is enabled. This is needed for the wheel mouse to be 11959 used to report to the application rather than scroll the 11960 window.</li> 11961 11962 <li>add menu entry and action to allow disabling xterm's 11963 assumption that the current font contains line-drawing 11964 characters if the font cells 1-31 are nonempty. Some fonts may 11965 have other characters (reported by Bruno Betro 11966 <bruno@iami.mi.cnr.it>).</li> 11967 11968 <li>add a check in <code>creat_as()</code> to ensure that the 11969 user really owns the logfile that has been opened.</li> 11970 11971 <li>add logic to implement SCO function-keys. (This is really 11972 incomplete, since I intend to revisit this and make xterm able 11973 to emulate scoansi better than just the function-keys).</li> 11974 11975 <li>add configure script option --enable-sco-fkeys, minor 11976 related fixes (patch by Dr Werner Fink).</li> 11977 11978 <li>fix typos in ctlseqs.ms (reported by Bram Moolenaar)</li> 11979 11980 <li>fix typo in sinstall.sh default for $TST_PROG (reported by 11981 Paul Gilmartin <pg@sweng.stortek.com>)</li> 11982 </ul> 11983 11984 <h1><a name="xterm_129" id="xterm_129">Patch #129 - 2000/2/26 - 11985 XFree86 3.9.18a</a></h1> 11986 11987 <ul> 11988 <li>improve initialization of ANSI colors by delaying 11989 allocation until each color is first used.</li> 11990 11991 <li>remove ifdef that prevented colorBD/colorUL/colorBL 11992 resources from working when 256-color configuration was built 11993 (reported by Todd Larason).</li> 11994 11995 <li>fix some minor inconsistencies in terminfo (Debian 11996 #58530).</li> 11997 </ul> 11998 11999 <h1><a name="xterm_128" id="xterm_128">Patch #128 - 2000/2/17 - 12000 XFree86 3.9.18</a></h1> 12001 12002 <ul> 12003 <li>correct logic for <code>oldXtermFKeys</code> resource, 12004 fixes a core dump when attempting to set it from the 12005 command-line (reported by Dr Werner Fink).</li> 12006 12007 <li>correct ifdef for meta-sends-escap so configure 12008 --disable-num-lock builds.</li> 12009 </ul> 12010 12011 <h1><a name="xterm_127" id="xterm_127">Patch #127 - 2000/2/12 - 12012 XFree86 3.9.17e</a></h1> 12013 12014 <ul> 12015 <li>add resource, popup menu entry and control sequence to 12016 allow changing the Delete key to send either DEL or the 12017 VT220-style Remove escape sequence.</li> 12018 12019 <li>remove logic for metaSendsEscape that would allow xterm to 12020 send <code><ESC>[3~</code> before a function key that 12021 would begin with <code><ESC>[3~</code> (request by 12022 Christian Weisgerber).</li> 12023 12024 <li>add missing action and documentation for 12025 meta-sends-escape.</li> 12026 12027 <li>correct a few typos in ctlseqs.ms (incorrect code for Cyan 12028 color)</li> 12029 </ul> 12030 12031 <h1><a name="xterm_126" id="xterm_126">Patch #126 - 2000/2/8 - 12032 XFree86 3.9.17c</a></h1> 12033 12034 <ul> 12035 <li>ensure that xterm will automatically activate the UTF-8 12036 mode whenever the name of the locale environment variable 12037 suggests that a UTF-8 locale is in use (patch by Markus Kuhn). 12038 This will help that by simply setting LC_CTYPE an entire system 12039 can be switched over to UTF-8, without users having to remember 12040 the UTF-8 command line options ("-u8", etc.) of the various 12041 applications. Command line options and X resource entries can 12042 still be used to override this default choice.</li> 12043 12044 <li>add old function-keys control sequences and popup menu 12045 entry, for compatibility with legacy X11R6 xterm.</li> 12046 12047 <li>revert translation of editing keypad "Delete" key to legacy 12048 \177.</li> 12049 12050 <li>simplify the color-resource data expressions with macro 12051 COLOR_RES, for later use in restructuring color 12052 initialization.</li> 12053 12054 <li>change encoding of wheel mouse (buttons 4 and 5) to avoid 12055 conflict with legacy mouse modifiers (suggested by Bram 12056 Moolenaar).</li> 12057 </ul> 12058 12059 <h1><a name="xterm_125" id="xterm_125">Patch #125 - 2000/1/31 - 12060 XFree86 3.9.17c</a></h1> 12061 12062 <ul> 12063 <li>make this work on OpenVMS (integrated patch by David 12064 Mathog).</li> 12065 12066 <li>rename some functions, e.g., <code>Index</code> to 12067 <code>xtermIndex</code> so that ports such as VMS which link 12068 externals ignoring case will not have library conflicts 12069 (reported by David Mathog).</li> 12070 12071 <li>correct logic of <code>do_reversevideo()</code>, which did 12072 not update the corresponding popup menu check mark (reported by 12073 David Mathog, this was a detail overlooked in patch #94).</li> 12074 12075 <li>change TRACE macro so semicolon is not within definition, 12076 making <em>indent</em> and similar programs work better.</li> 12077 12078 <li>add <code>depend</code> rule to Makefile.in</li> 12079 12080 <li>modify logic of boldColors resource to suppress it if an 12081 extended color control has been used, e.g., for 88-color or 12082 256-color mode (patch by Todd Larason).</li> 12083 12084 <li>revise logic that handles menus and input translation for 12085 keyboard type so only one can be selected at a time.</li> 12086 12087 <li>restore kdch1=\177 for the Sun function-key type, and make 12088 the the Delete key send DEL (\177) if the oldXtermFKeys 12089 resource is set.</li> 12090 12091 <li>rephrase logic and ifdef's for POSIX VDISABLE to avoid 12092 preprocessor expression that will not compile on NetBSD/x86 12093 1.4.1 (reported by Takaaki Nomura 12094 <amadeus@yk.rim.or.jp>).</li> 12095 </ul> 12096 12097 <h1><a name="xterm_124" id="xterm_124">Patch #124 - 2000/1/27 - 12098 XFree86 3.9.17b</a></h1> 12099 12100 <ul> 12101 <li>change coding of editing keypad's "Delete" key to 12102 <escape>[3~, in the default (Sun/PC) keyboard mode. This 12103 makes the terminfo kdch1 capability independent of the coding 12104 of the backarrow key, which sends either backspace (8) or DEL 12105 (127). The reason for doing this (compatibility with the 12106 <em>screen</em> program) outweighs the choice of DEL (127) 12107 which was used in X11R5/X11R6 xterms. The <em>screen</em> 12108 program translates whatever matches kdch1 into 12109 <escape>[3~, even if it happens to be the stty erase 12110 character.</li> 12111 12112 <li>add encoding for control/?, to work around xmodmap or key 12113 translations which may confuse backspace and delete. A 12114 control/? will send DEL (127), and a control/H will of course 12115 send backspace (8).</li> 12116 12117 <li>add encoding for kcbt to <escape>[Z (fixes Debian 12118 #54840).</li> 12119 12120 <li>minor correction to logic that encodes Sun and DEC function 12121 keys to avoid sending an escape sequence if the key symbol is 12122 not found in xterm's lookup table.</li> 12123 12124 <li>simplify ifdef's in main.c for POSIX VDISABLE so the "^-" 12125 pattern is more likely to be implemented when <em>imake</em> 12126 configures xterm (fixes Debian #55105).</li> 12127 12128 <li>change manpage to make it clearer what codes are sent by 12129 the backarrow key.</li> 12130 </ul> 12131 12132 <h1><a name="xterm_123" id="xterm_123">Patch #123 - 2000/1/22 - 12133 XFree86 3.9.17a</a></h1> 12134 12135 <ul> 12136 <li>add a note reserving OSC 51 for use in Emacs shell (request 12137 by Rob Mayoff <mayoff@dqd.com>).</li> 12138 12139 <li>correct a missing backslash in xterm-vt220 termcap.</li> 12140 12141 <li>cleanup remaining quoted includes, preferring bracketed 12142 form.</li> 12143 12144 <li>minor configure-script macro updates from tin and 12145 vile.</li> 12146 12147 <li>add configure-script option for using utempter library, 12148 adapted from Redhat 6.1 patch for XFree86 3.3.5</li> 12149 12150 <li>resync with XFree86 3.9.17a: 12151 <ul> 12152 <li>correction to QNX support (Frank Guangxin Liu)</li> 12153 12154 <li>some cosmetic changes that did not correct any reported 12155 problems.</li> 12156 </ul> 12157 </li> 12158 </ul> 12159 12160 <h1><a name="xterm_122" id="xterm_122">Patch #122 - 1999/12/28 - 12161 XFree86 3.9.16f</a></h1> 12162 12163 <ul> 12164 <li>move the suggested wheel-mouse button translations into 12165 charproc.c to simplify customization. Correct some minor logic 12166 errors in the support for buttons 4 and 5, used for wheel mice 12167 (reported by Bram Moolenaar).</li> 12168 12169 <li>implement <em>metaSendsEscape</em> resource, with 12170 corresponding control sequence and menu entry. Like 12171 <em>eightBitInput</em>, this causes xterm to send ESC prefixing 12172 the given key, but applies to all keys and is independent of 12173 the 8-bit/7-bit terminal setting. (requests by Alexander V 12174 Lukyanov and Marc Feeley).</li> 12175 12176 <li>correct potential indexing with negative subscript in 12177 udk_lookup(), (reported by Ian Collier 12178 <Ian.Collier@comlab.ox.ac.uk>).</li> 12179 12180 <li>modify configure script that sets TERMINFO_DIR to use 12181 ${prefix} rather than /usr if the --prefix option was specified 12182 (request by Zdenek Sekera <zs@sgi.com>).</li> 12183 12184 <li>modify checks for repeat-character control sequence to test 12185 the character class against xterm's state table, rather than 12186 the isprint() macro (patch by Alexander V Lukyanov).</li> 12187 12188 <li>change several functions to macros to improve speed</li> 12189 12190 <li>two corrections to simulation of bold font via 12191 overstriking: 12192 <ul> 12193 <li>use clipping to avoid leaving trash at end of the text, 12194 and</li> 12195 12196 <li>add brackets so wide-character logic does not 12197 fall-through into the overstriking logic (reported by Marc 12198 Feeley <feeley@IRO.UMontreal.CA>)</li> 12199 </ul> 12200 </li> 12201 12202 <li>add several entries to termcap file to make it have the 12203 same set of aliases as the terminfo file.</li> 12204 12205 <li>scale the color values used for xterm-256color terminfo 12206 entry to 0..1000, as expected by ncurses.</li> 12207 12208 <li>change xterm-r6 terminfo definitions for F1-F4 to match 12209 program.</li> 12210 12211 <li>Add QNX/Neutrino support (Frank Guangxin Liu 12212 <frank@ctcqnx4.ctc.cummins.com>)</li> 12213 </ul> 12214 12215 <h1><a name="xterm_121" id="xterm_121">Patch #121 - 1999/11/14 - 12216 XFree86 3.9.16c</a></h1> 12217 12218 <ul> 12219 <li>change label on "Sun/PC Keyboard" popup menu entry to 12220 "VT220 Keyboard", since the checked state corresponds to VT220 12221 rather than Sun/PC.</li> 12222 12223 <li>add configure test CF_UTMP_UT_XSTATUS to handle the 12224 variants of utmp exit status (reports by Dave Ellement, Jeremie 12225 Petit, Tomas Vanhala).</li> 12226 12227 <li>amend treatment of ALT key (see <a href="#xterm_94">patch 12228 #94</a>) so that if ALT is used as a modifier in key 12229 translations, then no parameter will be sent in escape 12230 sequences for Sun/PC function keys (request by Dr Werner 12231 Fink).</li> 12232 12233 <li>modify default for OPT_I18N_SUPPORT to assume that 12234 <code>XtSetLanguageProc()</code> is available in X11R5. 12235 <p>Caveat: <code>XtSetLanguageProc()</code> was added fairly 12236 late in the X11R5 patches, and some vendors shipped buggy 12237 versions of this function (request by Tomas Vanhala).</p> 12238 </li> 12239 12240 <li>correct configure macro CF_SYSV_UTMP to test-link with 12241 functions consistent with the header, e.g., getutent() for 12242 utmp.h and getutxent() for utmpx.h (reported by Greg 12243 Smith).</li> 12244 12245 <li>modify terminfo entry for <code>xterm-xfree86</code> to 12246 reflect modifiers for shift and control (from a patch by 12247 Alexander V Lukyanov).</li> 12248 12249 <li>modify terminfo entry for <code>xterm-sun</code> to match 12250 the function-key definitions in ncurses. The pageup/pagedown 12251 and related function keys correspond to the Sun keyboard, which 12252 does not necessarily correspond with X's notion of those 12253 keys.</li> 12254 12255 <li>modify treatment of XK_Delete keysym so it transmits 12256 parameterized VT220-style <code><ESC>[3~</code> if 12257 modifiers (shift, control alt) are given (request by Alexander 12258 V Lukyanov).</li> 12259 12260 <li>corrected misspelled resource name in command-line option 12261 for HP function keys.</li> 12262 </ul> 12263 12264 <h1><a name="xterm_120" id="xterm_120">Patch #120 - 1999/10/28 - 12265 XFree86 3.9.16c</a></h1> 12266 12267 <ul> 12268 <li>refine the change to <code>SGR_Background()</code> in patch 12269 #119, by not flushing the pending scrolling operation if the 12270 background color is not actually changing. This combination 12271 occurs when using color-ls to display a long listing, since 12272 each line ends with an SGR0 which affects only the foreground 12273 color. The unnecessary flushing made it noticeably slower 12274 (reported by D Roland Walker <walker@pobox.com>).</li> 12275 12276 <li>remove obsolete documentation about modifiers which can be 12277 returned in mouse tracking mode, and modify logic to ignore 12278 modifiers other than the existing ones, e.g., NumLock (prompted 12279 by discussions with Christian Weisgerber and Brad Pepers 12280 <brad@linuxcanada.com>).</li> 12281 12282 <li>use free bit from obsolete shift-modifier coding of mouse 12283 tracking button events to encode buttons 4 and 5, e.g., for a 12284 wheel mouse (requests by Brad Pepers and Bram Moolenaar).</li> 12285 12286 <li>correct a place where the ptyInitialErase logic did not set 12287 the backarrowKey state, and modify it further to use tgetstr() 12288 rather than parse the termcap data returned from tgetent() so 12289 the ptyInitialErase logic will work when xterm is linked with a 12290 terminfo library (based on a patch by Dr Werner Fink 12291 <werner@suse.de>).</li> 12292 12293 <li>fix definition of HAVE_UTMP_UT_HOST for ISC configuration 12294 (patch by Michael Rohleder).</li> 12295 12296 <li>improve configure script's utmp tests (based on reports by 12297 Greg Smith for os390, and David Ellement for HPUX).</li> 12298 12299 <li>modify sinstall.sh to use uid=0 rather than 'root' to 12300 determine if the installer is privileged. This is needed on 12301 some systems since more than one account may be privileged 12302 (report by Greg Smith).</li> 12303 12304 <li>add an application resource, <code>messages</code> (and a 12305 corresponding -/+mesg option) which controls the initial 12306 permission on the terminal: if messages is set to true (the 12307 default), behavior is as without the patch; if it is set to 12308 false (as per -mesg), the terminal is opened in mode 0600, thus 12309 producing the effect of the <code>mesg n</code> command. This 12310 is useful for users who want to redirect all their messages to 12311 one particular xterm: it is more pleasant to do this with xterm 12312 resources than with explicit calls to the <code>mesg</code> 12313 program (patch, description by David Madore 12314 <david.madore@ens.fr>).</li> 12315 </ul> 12316 12317 <h1><a name="xterm_119" id="xterm_119">Patch #119 - 1999/10/16 - 12318 XFree86 3.9.16c</a></h1> 12319 12320 <ul> 12321 <li>add responses (DA and DSR) for DEC locator mode</li> 12322 12323 <li>add coding for ANSI color to DA response</li> 12324 12325 <li>implement UTF-8 translation for Media Copy (print) 12326 operations.</li> 12327 12328 <li>implement vt320 control sequences for Print Composed Main 12329 Display and for Print All Pages. The latter directs xterm to 12330 print the current screen as well as the scrollback buffer.</li> 12331 12332 <li>correct error in _GNU_SOURCE configure test, which left it 12333 always defined.</li> 12334 12335 <li>add more information, i.e., with strerror for some system 12336 calls in the main program which may fail due to insufficient 12337 permissions (prompted by a problem report for <code>-C</code> 12338 by Jeremie Petit <Jeremie.Petit@digital.com>).</li> 12339 12340 <li>add workaround for conflict between <X11/Xpoll.h> and 12341 <sys/select.h> on AIX 4.3 (Richard Griswold 12342 <griswold@acm.org>).</li> 12343 12344 <li>add configure script test to resolve conflict between 12345 between <X11/Xpoll.h> and <sys/select.h></li> 12346 12347 <li>modify translation of UTF-8 sequences to reject "overly 12348 long" variations (patch by Markus Kuhn).</li> 12349 12350 <li>remove <code>utf8controls</code> resource, since Markus' 12351 change removes the corresponding logic.</li> 12352 12353 <li>correct a case where colors were not rendered properly. 12354 This happened when an application inserted several lines, then 12355 changed colors. If this was done all in one write, then there 12356 would be no intervening refresh, and the new color was applied 12357 to the pending scrolling operation which was awaiting the next 12358 refresh (reported by Stephane Chazelas 12359 <Stephane_Chazelas@Raytheon.com>).</li> 12360 </ul> 12361 12362 <h1><a name="xterm_118" id="xterm_118">Patch #118 - 1999/10/5 - 12363 XFree86 3.9.16b</a></h1> 12364 12365 <ul> 12366 <li>refine configure test for utmp versus utmpx, to build on 12367 HP-UX 10.x (reported by David Ellement).</li> 12368 12369 <li>move the configure check for <code>const</code> after the 12370 check for ANSI C compiler options, since those may be required 12371 to make it work properly on HP-UX.</li> 12372 12373 <li>add configure test for defining 12374 <code>_GNU_SOURCE</code></li> 12375 12376 <li>correction to <em>-hold</em> option, ensure that if data is 12377 already in the output buffer that it will be displayed before 12378 closing the PTY.</li> 12379 12380 <li>move the configure checks for setuid install of xterm into 12381 a script to avoid installing it setuid'd to a non-root user 12382 (reported by Adam Sulmicki <adam@cfar.umd.edu>).</li> 12383 12384 <li>correct configure script's check for termcap.h to avoid 12385 using ncurses' version of it on systems that have a working 12386 <code>tgetent()</code> function. This is needed to make 12387 <code>resize</code> work properly.</li> 12388 12389 <li>fix some typography in ctlseqs.ms description of DEC 12390 locator events (reported by Stephen P Wall).</li> 12391 </ul> 12392 12393 <h1><a name="xterm_117" id="xterm_117">Patch #117 - 1999/9/29 - 12394 XFree86 3.9.16b</a></h1> 12395 12396 <ul> 12397 <li>change order of tests in configure script for utmp and 12398 utmpx to test utmpx first, to compile on Solaris (reported by 12399 Leena Heino <liinu@uta.fi> and Patrik Hagglund 12400 <patha@ida.liu.se>).</li> 12401 12402 <li>add a configure test for utmp.ut_xtime, needed for SCO 12403 Openserver, and for lastlog, needed for Redhat 6.0, to refine 12404 the utmp/utmpx auto-configure.</li> 12405 12406 <li>remove a spurious comma in an #undef (reported by David 12407 Green <greendjf@cvhp152.marconicomms.com> and David 12408 Ellement <ellement@sdd.hp.com> both on HP-UX, whose 12409 compiler does care about syntax).</li> 12410 12411 <li>change ifdef's using __CYGWIN32__ to __CYGWIN__ (reported 12412 by Suhaib M. Siddiqi <Ssiddiqi@InspirePharm.Com>, who is 12413 told that the next Cygnus release will drop that symbol in 12414 their next release).</li> 12415 12416 <li>minor cleanup of ifdef's for makeColorPair (patch by 12417 Stephen P Wall).</li> 12418 12419 <li>work around problem observed in XFree86 3.3.5 (patch by 12420 Alexander V Lukyanov, Redhat #5419). From the problem report: 12421 <blockquote> 12422 <p>xterm consumes cpu when selecting text with mouse 12423 (holding down left mouse button) and when a program working 12424 under the xterm outputs something to stdout.</p> 12425 12426 <p>Easy way to reproduce:<br> 12427 <code>while :; do echo aaa; sleep 1; done</code><br> 12428 (while this runs, select text and hold down left mouse 12429 button) watch cpu load.<br> 12430 release left mouse button - spinning stops.</p> 12431 </blockquote> 12432 </li> 12433 </ul> 12434 12435 <h1><a name="xterm_116" id="xterm_116">Patch #116 - 1999/9/25 - 12436 XFree86 3.9.16a</a></h1> 12437 12438 <ul> 12439 <li>modify warning if change-ownership of PTY fails; some 12440 configurations may not happen to have old-style pty's (reported 12441 by Bob Maynard).</li> 12442 12443 <li>improve check in configure script for group ownership of 12444 installed xterm; some platforms use the -g option of ls to 12445 toggle group off rather than on (reported by Greg Smith).</li> 12446 12447 <li>minor improvement to toolbar geometry, to make it not 12448 resizable. This still is not satisfactory (but is usable) since 12449 the toolbar overlaps the xterm widget if the window is resized 12450 to make it smaller. It appears that some work is needed for the 12451 xterm widget's geometry management to make it function 12452 properly.</li> 12453 12454 <li>implement configure script tests for utmp, tty group.</li> 12455 12456 <li>implement <em>-hold</em> option, allowing users to retain 12457 the window after a shell has exited (this is recently an FAQ, 12458 but prompted by a comment by Joachim Plaettner-Hochwarth 12459 <plaettner@aem.umn.edu> in comp.unix.programmer, that the 12460 IRIX winterm provides this option).</li> 12461 12462 <li>add support for DEC Locator control sequences for xterm 12463 (integrated patch by Stephen P Wall): 12464 12465 <pre> 12466 DECEFR, "Enable Filter Rectangle" 12467 DECELR, "Enable Locator Reports" 12468 DECSLE, "Select Locator Events" 12469 DECRQLP, "Request Locator Position" 12470</pre> 12471 <p>This allows the xterm mouse to be used with applications 12472 that use the DEC Locator sequences, such as VAX Tpu, or SMG$ 12473 based applications.</p> 12474 </li> 12475 12476 <li>improve print action (patch by Matthias Baake). From his 12477 notes, 12478 <ul> 12479 <li>Bug 1<br> 12480 Underlined text is preceded by ESC [0;2m . This should 12481 be ESC [0;4m , ESC [2m doesn't seem to have 12482 any effect. (print.c/send_SGR)</li> 12483 12484 <li>Bug 2<br> 12485 The check for the last non-empty column (while (last > 12486 0) ... in print.c/printLine) omits the rightmost column of 12487 the screen, the loop must start with last = 12488 screen->max_col+1 instead of last = 12489 screen->max_col.</li> 12490 12491 <li>Bug 3<br> 12492 Any attributes of the first character (and of all 12493 immediately following characters with the same attributes) 12494 are ignored. The variable attr (print.c/printLine) should 12495 be initialized with 0, not with *a & SGR_MASK.</li> 12496 </ul> 12497 </li> 12498 </ul> 12499 12500 <h1><a name="xterm_115" id="xterm_115">Patch #115 - 1999/9/18 - 12501 XFree86 3.9.16a</a></h1> 12502 12503 <ul> 12504 <li>integrated changes by Stephen P Wall to implement an 12505 88-color model for systems where 256-colors cannot be 12506 allocated.</li> 12507 12508 <li>when 256-color configuration is compiled, colored bold and 12509 underlining is not available; ifdef'd to avoid possible odd 12510 effects in this case (reported by Stephen P Wall).</li> 12511 12512 <li>add resource <em>cacheDoublesize</em>, to limit the caching 12513 of font information for double-sized characters. This addresses 12514 a problem reported by Aryeh Koenigsberg for X terminals with 12515 limited font memory.</li> 12516 12517 <li>modify treatment of line-drawing characters in UTF-8 mode 12518 so that the Unicode values are used rather than the C0 codes 12519 for storing the translated characters (request by Markus 12520 Kuhn).</li> 12521 </ul> 12522 12523 <h1><a name="xterm_114" id="xterm_114">Patch #114 - 1999/9/15 - 12524 XFree86 3.9.16</a></h1> 12525 12526 <ul> 12527 <li>add configure script checks for Athena headers and 12528 libraries under /usr/contrib to work on HPUX (reported by 12529 several people: David Nixon <djn@csc.liv.ac.uk> Aryeh 12530 Koenigsberg <aryeh.koenigsberg@telrad.co.il> Johannes 12531 Mähner <johanm@camline.com> Andrew Gaylard 12532 <andrew.gaylard@bsw.co.za>).</li> 12533 12534 <li>add check to configure script if xterm is installed setgid 12535 rather than setuid, since wtmp and utmp may be installed with 12536 group-writable permissions other than root (based on Debian bug 12537 report #7112 by Bo Branten <bosse@ing.umu.se>).</li> 12538 12539 <li>rewrote logic that removes data from termcap entry, e.g., 12540 for titeInhibit, to make it less likely to remove the wrong 12541 data.</li> 12542 12543 <li>correct logic which checks for missing characters used for 12544 line drawing. The 0 character was tested unnecessarily, leading 12545 to some inefficiency when rendering.</li> 12546 12547 <li>change termcap capability which is used as input or output 12548 of ptyInitialErase logic from <em>kD</em> to <em>kb</em>. 12549 Christian Weisgerber <naddy@mips.rhein-neckar.de> pointed 12550 out in effect that <em>kD</em> (in terminfo <em>kdch1</em>) 12551 should correspond to the control sequence for <em>dch1</em>, 12552 which deletes from the current position toward the right.</li> 12553 12554 <li>check for failure to change ownership of the PTY device and 12555 warn when xterm is running setuid'd to root. This was reported 12556 to happen on the FreeBSD/NetBSD/OpenBSD systems as a result of 12557 the chflags() call.</li> 12558 12559 <li>add xterm-noapp terminfo entry to illustate a nominally 12560 bash-compatible terminal description.</li> 12561 </ul> 12562 12563 <h1><a name="xterm_113" id="xterm_113">Patch #113 - 1999/8/15 - 12564 XFree86 3.9.15b</a></h1> 12565 12566 <p>Several fixes. The main one is a first draft of pulldown 12567 menus. It's not complete (I have some minor/annoying geometry 12568 problems to correct), but is usable. Once it's complete I plan to 12569 add a menu to support additional selections that won't fit on the 12570 current popup menus. Also, this fits into my longterm plan to 12571 allow configuring with Motif libraries.</p> 12572 12573 <ul> 12574 <li>correct error in input conversion for NRC mode (reported by 12575 Stefan Traby <stefan@sime.com>).</li> 12576 12577 <li>fix initialization of num_lock data in Misc struct (since 12578 those fields of the reference widget aren't initialized), and 12579 add logic to deal with XVision whose NumLock key does not 12580 transmit but does alter keypad state.</li> 12581 12582 <li>correct a missing return-value in get_pty(), for SCO</li> 12583 12584 <li>add E2A fix for backspace (patch by Greg Smith), i.e.,<br> 12585 #define VAL_INITIAL_ERASE A2E(127)</li> 12586 12587 <li>correct foreground color within cursor outline when the 12588 window is unfocused (reported by Stephane Chazelas).</li> 12589 12590 <li>corrected position of scrollbar set in ResizeScrollBar(), 12591 which left it positioned incorrectly if the right scrollbar 12592 were enabled from the popup menu but was not initially enabled. 12593 <p>I have noticed some additional problems with 12594 right-scrollbar on X11R5 which I will correct later.</p> 12595 </li> 12596 12597 <li>integrate changes by Jean-Claude Michot for QNX from 12598 XFree86 3.3.4c</li> 12599 12600 <li>add resources menuBar/MenuBar, menuHeight/MenuHeight for 12601 later use in toolbar geometry.</li> 12602 12603 <li>add configure option --enable-toolbar</li> 12604 12605 <li>add missing definition to make ziconbeep logic not 12606 compile-in when configure script disables it.</li> 12607 12608 <li>add configure-check for input-method support in X 12609 libraries</li> 12610 </ul> 12611 12612 <h1><a name="xterm_112" id="xterm_112">Patch #112 - 1999/7/17 - 12613 XFree86 3.9Pw</a></h1> 12614 12615 <ul> 12616 <li>add null-pointer check to FlushLog(), fixes a core dump 12617 when both -l and -lf options are used when xterm is configured 12618 with wide-character support.</li> 12619 12620 <li>remove "ISO" case for SD, which was due to a typographical 12621 error in ECMA-48 (reported by Paul Williams 12622 <paul@celigne.co.uk> for vttest).</li> 12623 12624 <li>add "FILES" section to manpage.</li> 12625 12626 <li>generate header file to initialize default resources for 12627 colors 16-255.</li> 12628 12629 <li>fixes for os390 (Greg Smith): 12630 <ul> 12631 <li>add README.os390</li> 12632 12633 <li>use the pty_search() function to find an available 12634 pty/tty pair.</li> 12635 12636 <li>move E2A() call out of getXtermCell() to SaveText() 12637 function so it will be available in all 12638 configurations.</li> 12639 </ul> 12640 </li> 12641 12642 <li>patches by Todd Larason: 12643 <ul> 12644 <li>enable SGR 48 5 in ISO color mode, not just 256 color 12645 mode</li> 12646 12647 <li>change configure's --disable-256-color option to 12648 --enable-256-color, to match its effect</li> 12649 12650 <li>fix OSC 4 xx ? (report ansi color) to report a string 12651 which can actually be used to set the color back</li> 12652 12653 <li>fix OSC 4 xx yy (change ansi color) to not allow 12654 setting colors > 15 in 16 color mode</li> 12655 12656 <li>simplify the COLOR_ settings a bit in ptyx.h, along 12657 with setting NUM_ANSI_COLORS needed for #1 and #4 12658 above</li> 12659 12660 <li>correct string-terminator code passed for reference to 12661 OSC responses; when in 7-bit mode, only the final byte of 12662 ST was seen.</li> 12663 12664 <li>Allow multiple color #;name pairs in OSC 4, and 12665 document changes to match.</li> 12666 </ul> 12667 </li> 12668 </ul> 12669 12670 <h1><a name="xterm_111" id="xterm_111">Patch #111 - 1999/7/10 - 12671 XFree86 3.9Pw</a></h1> 12672 12673 <ul> 12674 <li>add control sequences for specifying the RGB value of the 12675 ANSI colors, and for configuring with 256 colors (patch by Todd 12676 Larason <jtl@molehill.org>). I made the default 12677 configuration to 16-colors, because xterm uses the default 12678 color map (which has only 256 colors).</li> 12679 12680 <li>correct an error in DCS $ q m reporting for colors 8-15 12681 (Todd Larason).</li> 12682 12683 <li>add test/demo script for double size characters. Used this 12684 to test/correct display of double size characters that should 12685 wrap, underlined double size characters.</li> 12686 12687 <li>increased cache size for double size fonts to 8, to allow 12688 for both normal and bold fonts (discussion with Aryeh 12689 Koenigsberg <aryeh.koenigsberg@telrad.co.il>).</li> 12690 12691 <li>add fixes for port to OS390 aka MVS (integrated patch from 12692 Greg Smith <rys@epaibm.rtpnc.epa.gov>). OS390 uses EBCDIC 12693 rather than ASCII.</li> 12694 12695 <li>correct an off-by-one in binary search limits in 12696 keysym2ucs.c (Markus Kuhn).</li> 12697 12698 <li>implement logging for UTF-8 mode. The output is written in 12699 UTF-8 form.</li> 12700 </ul> 12701 12702 <h1><a name="xterm_110" id="xterm_110">Patch #110 - 1999/6/29 - 12703 XFree86 3.9Pu</a></h1> 12704 12705 <ul> 12706 <li>If colorMode is enabled by default, compile-in default 12707 resources to match the colors listed in XTerm-col.ad (this 12708 should fix a longstanding FAQ).</li> 12709 12710 <li>added new OSC 3 ; PROPNAME=VALUE ST 12711 escape sequence to set an arbitrary X property on the top level 12712 xterm X11 window. Omit "=VALUE" to delete the X property (patch 12713 by Greg Badros <gjb@cs.washington.edu>).</li> 12714 12715 <li>change internal flag used for <em>utf8controls</em> 12716 resource so we allow 31-bit range of characters (suggested by 12717 Thomas Wolff).</li> 12718 12719 <li>add check for 16-bit characters in OSC strings, change them 12720 to '?' (reported by Thomas Wolff).</li> 12721 12722 <li>modify logic of same_font_name() to avoid trying to 12723 interpret both parameters as wildcard patterns. That does not 12724 (cannot) work, and in some instances the font server will 12725 return unresolved wildcards for the normal or bold fontnames, 12726 making them match inadvertently, triggering the fallback 12727 overstrike logic (reported by Tim Adye).</li> 12728 </ul> 12729 12730 <h1><a name="xterm_109" id="xterm_109">Patch #109 - 1999/6/23 - 12731 XFree86 3.9Pt</a></h1> 12732 12733 <ul> 12734 <li>correct range-check from patch #108, which resulted in not 12735 being able to select from the scrollback buffer (reported by 12736 Tim Adye <T.J.Adye@rl.ac.uk>)</li> 12737 12738 <li>correct "no available ptys" problem with Cygwin B20.1 12739 (patch by Tim Adye).</li> 12740 12741 <li>modified install-ti rule in Makefile.in to allow override 12742 of the terminfo directory when doing a "make install", i.e., by 12743 assigning to TERMINFO_DIR (request by Zdenek Sekera 12744 <zs@sgi.com>).</li> 12745 12746 <li>added install-full rule to Makefile.in</li> 12747 12748 <li>resync mkdirs.sh and install.sh scripts against current 12749 autoconf</li> 12750 12751 <li>implement $(DESTDIR) in Makefile.in, making it simple to 12752 install xterm and associated files into a directory just for 12753 packaging a binary release (suggested by CaT 12754 <cat@zip.com.au>).</li> 12755 12756 <li>change IChar type to unsigned, rather than unsigned short, 12757 making room for a flag to keep with 16-bit characters to 12758 prevent them from being interpreted as C0 or C1 controls 12759 (reported by Thomas Wolff).</li> 12760 12761 <li>correct a typo from patch #107, incorrect array name, in 12762 the filterUTF8 function (patch by Bruno Haible 12763 <haible@ilog.fr>)</li> 12764 12765 <li>add <em>utf8controls</em> resource to specify whether xterm 12766 should interpret 16-bit characters unpacked from UTF-8 form as 12767 control characters if they happen to fall into that range. This 12768 behavior is left unspecified by the Unicode standard (request 12769 by Thomas Wolff).</li> 12770 12771 <li>modify handling of OSC to recover if application sends 12772 16-bit characters with codes above 255. We cannot display them 12773 as is, but translate out-of-range characters to a '?' (reported 12774 by Thomas Wolff).</li> 12775 </ul> 12776 12777 <h1><a name="xterm_108" id="xterm_108">Patch #108 - 1999/6/19 - 12778 XFree86 3.9Ps</a></h1> 12779 12780 <ul> 12781 <li>add a range-check to LastTextCol(), to guard against 12782 indexing before the beginning of the scrollback buffer. This 12783 appears to happen with certain fonts under X11R5 (reported by 12784 Stephane Chazelas <Stephane_Chazelas@Raytheon.com>).</li> 12785 12786 <li>implement resource <em>boldMode</em>, to allow disabling 12787 the simulation of bold fonts when the bold and normal fonts are 12788 not different (requested by Will Day 12789 <willday@rom.oit.gatech.edu>).</li> 12790 12791 <li>change the atom "UTF-8" to "UTF8_STRING", and fixes a few 12792 bugs in the UTF-8 selection (patch by Juliusz Chroboczek).</li> 12793 12794 <li>correct logic of binary-search in keysym2ucs.c (patch by 12795 Markus Kuhn).</li> 12796 12797 <li>add special interpretation of keysym codes above 0x1000000 12798 as the corresponding UCS value plus 0x1000000 (patch by Markus 12799 Kuhn).</li> 12800 </ul> 12801 12802 <h1><a name="xterm_107" id="xterm_107">Patch #107 - 1999/6/12 - 12803 XFree86 3.9Pq</a></h1> 12804 12805 <ul> 12806 <li>Two changes from Stephen P Wall. From his description: 12807 <blockquote> 12808 <p>The first change is simple - I added ESC[3J to erase the 12809 stored lines above the screen. That's what the changes to 12810 util.c and ctlseqs.ms are.</p> 12811 12812 <p>The second change is to get the blinking cursor working. 12813 I took out the cursorBlinkTime resource, and put in 12814 cursorBlink (Boolean), cursorOnTime (time cursor is on in 12815 msecs) and cursorOffTime, and added a cursorblink item to 12816 the vtMenu to enable/disable it.</p> 12817 </blockquote> 12818 </li> 12819 12820 <li>improve selection (integrated patch by Juliusz Chroboczek). 12821 From his description: 12822 <blockquote> 12823 <p>With this patch, selection conversion works 12824 properly:</p> 12825 12826 <pre> 12827 ISO 8859-1 xterm -> ISO 8859-1 xterm (transferred as STRING); 12828 ISO 8859-1 xterm -> UTF-8 xterm (transferred as STRING); 12829 UTF-8 xterm -> ISO 8859-1 xterm (transferred as STRING); 12830 UTF-8 xterm -> UTF-8 xterm (transferred as UTF-8). 12831</pre> 12832 <p>It will not work properly if one xterm is in, say, ISO 12833 8859-2. Actually, for this case xterm breaks the ICCCM 12834 routinely (sending ISO 8859-2 data as STRING), so I 12835 wouldn't worry too much about it. I have not changed the 12836 behaviour in eight-bit mode in any way.</p> 12837 </blockquote> 12838 </li> 12839 </ul> 12840 12841 <h1><a name="xterm_106" id="xterm_106">Patch #106 - 1999/6/9 - 12842 XFree86 3.9Pq</a></h1> 12843 12844 <ul> 12845 <li>remove duplicate fix for OpenBSD in resize.c</li> 12846 12847 <li>correct logic in ScreenWrite, which did not reset the high 12848 bytes of 16-bit characters when overwriting them with a 8-bit 12849 character string (reported by Thomas Wolff).</li> 12850 12851 <li>provide limited support for input of UTF-8 16-bit data by a 12852 lookup table (integrated patch by Markus Kuhn).</li> 12853 12854 <li>correct check in non_blank_line to ensure we're in 12855 wide-character mode before looking at the high bytes, for 12856 InsertChar.</li> 12857 </ul> 12858 12859 <h1><a name="xterm_105" id="xterm_105">Patch #105 - 1999/6/5 - 12860 XFree86 3.9Pp</a></h1> 12861 12862 <ul> 12863 <li>implement new resource <em>trimSelection</em>, which allows 12864 xterm to trim trailing blanks from selected lines. This does 12865 not affect the highlighting. (reported by several people using 12866 <em>mutt</em>, including Hans Morten Kind <edphk@uib.no>, 12867 Jeremy <jeremy@exit109.com> and (Michael Fuller 12868 <msf@mds.rmit.edu.au>).</li> 12869 12870 <li>include term.h in resize for OpenBSD (patch by Matthieu 12871 Herrb).</li> 12872 12873 <li>correct logic for UTF-8 in functions that hide and show the 12874 cursor; it was displaying a space whenever the low byte of the 12875 character at the cursor position was zero (reported by Thomas 12876 Wolff <Thomas.Wolff@icn.siemens.de>).</li> 12877 </ul> 12878 12879 <h1><a name="xterm_104" id="xterm_104">Patch #104 - 1999/5/30 - 12880 XFree86 3.9Pn</a></h1> 12881 12882 <p>This is a resync patch against XFree86 3.9Pn, reflecting 12883 changes which were submitted by Branden Robinson, who worked with 12884 Wichert Akkerman <wichert@cs.leidenuniv.nl> to set up 12885 ifdef's to handle GNU libc 2.1, and use getpt() which lets xterm 12886 avoid having to know the actual PTY name.</p> 12887 12888 <p>I have also added a few fixes for signed/unsigned mismatches, 12889 and corrected a problem in the configure script (the UTF-8 code 12890 was always configured since the Imakefile defines this).</p> 12891 12892 <h1><a name="xterm_103" id="xterm_103">Patch #103 - 1999/5/14 - 12893 XFree86 3.9Pm</a></h1> 12894 12895 <ul> 12896 <li>correct selection logic: I omitted an offset that accounts 12897 for the distance into the scrollback buffer when rewriting this 12898 for patch #101. Also fixed a similar problem for selecting 12899 double size characters from the scrollback buffer (first was 12900 reported by D Roland Walker <walker@pobox.com>).</li> 12901 12902 <li>improved support for Unix98 PTY's, using patch in Debian 12903 bug report #35650, by J.H.M. Dassen 12904 <jdassen@wi.leidenuniv.nl>. From the patch description: 12905 <blockquote> 12906 <ul> 12907 <li>No longer links xterm against libutil on a glibc2.1 12908 system. libutil is a compatibility library and should 12909 only be used when necessary. Rather than having get_pty() 12910 use openpty() from this compatibility library, use the 12911 real UNIX98 pty support in get_pty() (open()ing the 12912 master pty, through getpt() if available (glibc 12913 extension)). Use openpty() only under glibc2.0.</li> 12914 12915 <li>GNU libc2 is not Linux-specific; already it runs on 12916 the Hurd. It provides the UNIX98 pty functions (plus the 12917 getpt() extension), regardless of the underlying OS. 12918 Changed two constructs to look for GNU libc2 only, not 12919 GNU libc2 on Linux.</li> 12920 </ul> 12921 </blockquote> 12922 </li> 12923 12924 <li>improve font configuration, by checking if the user's 12925 resource settings for normal and bold fonts give the same font 12926 sizes (fixes problem reported by Peter Waltenberg 12927 <peterw@dascom.com>).</li> 12928 </ul> 12929 12930 <h1><a name="xterm_102" id="xterm_102">Patch #102 - 1999/5/12 - 12931 XFree86 3.9Pm</a></h1> 12932 12933 <ul> 12934 <li>revert change to openpty call in patch #101; this causes 12935 xterm to fail on DEC-Alpha OSF/1 4.0B (reported by H Merijn 12936 Brand).</li> 12937 12938 <li>modify print.c to move include of stdio.h after the 12939 autoconf'd xtermcfg.h since HP's ANSI C compiler otherwise sees 12940 inconsistent prototype for getopt, probably due to problem with 12941 const (reported by H Merijn Brand).</li> 12942 </ul> 12943 12944 <h1><a name="xterm_101" id="xterm_101">Patch #101 - 1999/5/10 - 12945 XFree86 3.9Pm</a></h1> 12946 12947 <ul> 12948 <li>moved includes and definitions for 'select' from data.h to 12949 xterm.h to fix problem introduced by prototype for getPtyData, 12950 part of UTF-8 changes (reported by Jens Schleusener 12951 <Jens.Schleusener@dlr.de>)</li> 12952 12953 <li>added "Meta <Btn2Down>:clear-saved-lines()" default 12954 translation (patch by H Merijn Brand)</li> 12955 12956 <li>fixes to configure script and ifdef's in main.c to build on 12957 a HP9000/D390 (hppa-2.0w) running HP-UX 11.00 (64 bit) with 12958 egcs 1.1.2 and HP's ANSI C compiler (patch by H Merijn Brand 12959 <PROCURA_BV@CompuServe.com>)</li> 12960 12961 <li>add more parentheses in ifdef's (patch by Bob 12962 Maynard).</li> 12963 12964 <li>eliminate conflicting definitions for USE_TERMINFO in 12965 resize.c (reported by Jeremy Buhler).</li> 12966 12967 <li>change openpty call to pass NULL rather than ttydev 12968 parameter, since that was used only to estimate the length of 12969 the corresponding data, and may not really be long enough 12970 (reported by Andreas Jaeger)</li> 12971 12972 <li>update description in xterm manpage for character class 12973 table, which said it handles only 7-bit codes.</li> 12974 12975 <li>correct a typo in ScrnDeleteChar() which made it not clear 12976 the high byte of wide-character data.</li> 12977 12978 <li>add logic to convert selection to UTF-8 form when 12979 appropriate. This makes select/paste "work", but further work 12980 is needed to make UTF-8 recognized as a locale in Xlib.</li> 12981 12982 <li>correct right-limit check when selecting double-width 12983 characters.</li> 12984 12985 <li>change default answerback response to an empty string.</li> 12986 </ul> 12987 12988 <h1><a name="xterm_100" id="xterm_100">Patch #100 - 1999/5/3 - 12989 XFree86 3.9Pl</a></h1> 12990 12991 <ul> 12992 <li>Correct a typo in the default resource value for 12993 backarrowKeyIsErase: it was always true (reported by Bram 12994 Moolenaar).</li> 12995 12996 <li>improve configure script's test if the installed xterm is 12997 setuid, in case that is a symbolic link.</li> 12998 12999 <li>correct "install-ti" rule in Makefile.in, by not setting a 13000 blank $TERMINFO value. That is interpreted as "." by ncurses' 13001 tic.</li> 13002 </ul> 13003 13004 <h1><a name="xterm_99" id="xterm_99">Patch #99 - 1999/5/2 - 13005 XFree86 3.9Pk</a></h1> 13006 13007 <ul> 13008 <li>correct logic that computes num_ptrs count of the number of 13009 indices into the screen buffer. This is the maximum of the 13010 colors and character-set indices; was incorrect in patch 13011 #97.</li> 13012 13013 <li>correct argument type for sigsetjmp, incidental change in 13014 patch #96's Unix88 PTY patch (reported by Bram Moolenaar).</li> 13015 13016 <li>correct description of secondary DA in ctlseqs.ms (reported 13017 by Bram Moolenaar).</li> 13018 13019 <li>decouple the backarrowKey and ptyInitialErase resources by 13020 adding a new resource backarrowKeyIsErase, to accommodate 13021 people using applications which have hardcoded tests for 13022 characters 8 and 127 rather than relying on the stty 13023 settings.</li> 13024 13025 <li>modify the UTF-8 decoder so that all possible illegal UTF-8 13026 sequences are properly represented by U+FFFD. This should be 13027 very helpful for developers of code that output UTF-8 strings 13028 for debugging. See the file utf-8-test.txt in 13029 http://www.cl.cam.ac.uk/~mgk25/download/ucs-fonts.tar.gz for a 13030 demonstration text that contains numerous illegal UTF-8 values. 13031 (patch by Markus Kuhn).</li> 13032 13033 <li>correct a place in ScrnRefresh where I was filling the high 13034 byte of a wide character with a space rather than a null 13035 (reported by Markus Kuhn).</li> 13036 </ul> 13037 13038 <h1><a name="xterm_98" id="xterm_98">Patch #98 - 1999/4/26 - 13039 XFree86 3.9Pk</a></h1> 13040 13041 <ul> 13042 <li>correct data manipulation in unparseputc(), broken for 13043 little-endian machines by patch #97's UTF-8 changes. This meant 13044 that keyboard input on SunOS did not work, though Linux i386 13045 was fine.</li> 13046 13047 <li>modify initialization for backarrowKey and logic for 13048 initial-erase to prevent the initial-erase from overriding an 13049 explicitly set backarrowKey resource (reported by Vikas 13050 Agnihotri).</li> 13051 13052 <li>add a missing null-pointer check in ScrnRefresh, for the 13053 wide-characters configuration.</li> 13054 </ul> 13055 13056 <h1><a name="xterm_97" id="xterm_97">Patch #97 - 1999/4/25 - 13057 XFree86 3.9Pk</a></h1> 13058 13059 <ul> 13060 <li>add configure script test for -lutil, needed for openpty 13061 call when configuring xterm for Glibc-2.1 and Unix98 PTY's 13062 (first reported by Martin Lorentz" 13063 <m.lorentz@w12.link-goe.de>).</li> 13064 13065 <li>completely parenthesize ifdef expressions for Glibc 13066 (suggested by Bob Maynard).</li> 13067 13068 <li>add initial-erase options (-ie, +ie) to help message 13069 (reported by Vikas Agnihotri).</li> 13070 13071 <li>remove duplicate definition of USE_USG_PTYS (reported by 13072 Jeremy Buhler).</li> 13073 13074 <li>change termcap <em>kD</em> and terminfo <em>kdch1</em> to a 13075 DEL (\177). I overlooked this when separating the styles of 13076 keyboard with the <em>sunKeyboard</em> resources in patch #94, 13077 so that it normally matches the value of the stty erase 13078 character: 13079 <ul> 13080 <li>Reported by Jae Gangemi 13081 <jgangemi@ccf.rutgers.edu>, this caused emacs to not 13082 process the DEL properly, combining it with succeeding 13083 characters.</li> 13084 13085 <li>This does not appear to be related to a problem which I 13086 have found with <em>screen</em>, which translates the stty 13087 erase into the termcap <em>kD</em> or terminfo 13088 <em>kdch1</em> value (depending on how it is linked) if the 13089 $TERMCAP variable is set when <em>screen</em> is 13090 invoked.</li> 13091 </ul> 13092 </li> 13093 13094 <li>add command-line options for enabling UTF-8 mode: -u8 and 13095 +u8. The more obvious -utf8 and +utf8 would conflict with 13096 xterm's -ut and +ut (utmp) options. The UTF-8 changes were 13097 requested by Markus Kuhn <Markus.Kuhn@cl.cam.ac.uk>. This 13098 patch does not complete UTF-8 implementation, but makes it 13099 usable, i.e., display and refresh work, and I am able to 13100 display the test cases which Markus provides. More work is 13101 needed to complete this feature: 13102 <ul> 13103 <li>the control sequences for switching in/out of UTF-8 13104 mode are partly implemented (don't use them). Similarly, 13105 the switching between vt100 and tek4014 emulations when 13106 UTF-8 mode is enabled will not work properly. 13107 <p>You must use the -u8 command line option to use this 13108 feature, as well as compile with the OPT_WIDE_CHARS 13109 definition.</p> 13110 </li> 13111 13112 <li>cut/paste only copies 8-bit characters.</li> 13113 13114 <li>logging is disabled in the wide-character 13115 configuration</li> 13116 13117 <li>printing only writes 8-bit characters.</li> 13118 13119 <li>input only does 8-bit characters. This is the area that 13120 I know least about.</li> 13121 </ul> 13122 </li> 13123 </ul> 13124 13125 <h1><a name="xterm_96" id="xterm_96">Patch #96 - 1999/4/19 - 13126 XFree86 3.9Pj</a></h1> 13127 13128 <ul> 13129 <li>modify Makefile.in to work with configure script's --srcdir 13130 option. (patch by Jeremy Buhler 13131 <jbuhler@cs.washington.edu>)</li> 13132 13133 <li>add checks for 'echo -n' equivalent for 8colors.sh and 13134 16colors.sh scripts (reported by Vikas Agnihotri).</li> 13135 13136 <li>improve logic that looks for bold fonts to allow for 13137 wildcards in the specification for normal fonts, and to ensure 13138 that if a bold font is specified as normal, that xterm will 13139 simulate a bold version of that using a one-pixel offset 13140 overstrike (reported by Henrik Harmsen 13141 <harmsen@erv.ericsson.se>).</li> 13142 13143 <li>correct horizontal spacing of double width line-drawing 13144 characters that xterm simulates.</li> 13145 13146 <li>improve support for Unix98 PTY's, using patch in Debian bug 13147 report #35650, by Topi Miettinen 13148 <Topi.Miettinen@medialab.sonera.fi>. Andreas Jaeger says 13149 this also corrects a permissions problem reported by 13150 cat@zip.net.au</li> 13151 13152 <li>modify initial-erase logic to ensure that 13153 <code>ttyModes</code> resource overrides it.</li> 13154 </ul> 13155 13156 <h1><a name="xterm_95" id="xterm_95">Patch #95 - 1999/4/5 - 13157 XFree86 3.9Ph</a></h1> 13158 13159 <ul> 13160 <li>modify primary DA response to allow a '1' parameter.</li> 13161 13162 <li>add printer and national replacement character sets to 13163 VT220 primary DA response.</li> 13164 13165 <li>document primary and secondary DA responses in 13166 ctlseqs.ms</li> 13167 13168 <li>use the patch number (e.g., 95) in the secondary DA 13169 response, providing user applications a means of determining 13170 the version of xterm for feature comparison (request by Bram 13171 Moolenaar).</li> 13172 13173 <li>make xterm respond to secondary DA when the decTerminalID 13174 is set for VT100.</li> 13175 13176 <li>limit user-defined keys (DECUDK) to VT220-style keyboard 13177 when sunKeyBoard resource is true.</li> 13178 13179 <li>modify ifdef's for Linux-2.2.x with Glibc-2.1 to work with 13180 Glibc-2.1 and no Unix98 PTY support (patch from Andreas Jaeger 13181 <aj@arthur.rhein-neckar.de>)</li> 13182 13183 <li>add optional feature (resource and command-line options) to 13184 make xterm use the PTY's sense of erase character on startup, 13185 rather than requiring it to be \177, or set the PTY's erase 13186 character to match xterm's configuration. Note that while 13187 $TERMCAP is modified to reflect the actual configuration, the 13188 terminfo kdch1 string is not (request by Dirk H Hohndel 13189 <hohndel@suse.de>)</li> 13190 13191 <li>improve scripts in vttests to work with newer shells that 13192 do not use 'echo -n'.</li> 13193 13194 <li>add fonts.sh example script</li> 13195 13196 <li>correct inequality in handling of "#1" font 13197 specification.</li> 13198 13199 <li>correct call to XGetWMNormalHints() used for computing 13200 maximum screen size; the size hints may not have been set.</li> 13201 13202 <li>begin implementation of support for wide-characters 13203 (configure option --enable-wide-chars defines OPT_WIDE_CHARS, 13204 invoke xterm with -wc option to activate this feature). This 13205 patch optionally widens internal data structures, invokes the 13206 16-bit text output rather than the 8-bit version and adds some 13207 tables.</li> 13208 </ul> 13209 13210 <h1><a name="xterm_94" id="xterm_94">Patch #94 - 1999/3/27 - 13211 XFree86 3.9Pf</a></h1> 13212 13213 <ul> 13214 <li>further fixes for terminfo: ka1, ka3, etc., differ between 13215 the default xterm-xfree86 and xterm-vt220 entries.</li> 13216 13217 <li>change default (with sunKeyboard resource false) behavior 13218 of the editing keypad "Delete" to send a 127, like xterm-r6. 13219 The VT220-style <code><ESC>[3~</code> is sent when 13220 sunKeyboard is true (reported by Tomas Vanhala).</li> 13221 13222 <li>add parameters to function keys to indicate if shift, 13223 control or alt are set. The codes are based on a description of 13224 a DEC VT510 with a PC keyboard, from Jeffrey Altman 13225 <jaltman@watsun.cc.columbia.edu>.</li> 13226 13227 <li>add control sequence 1035, set-num-lock action and num-lock 13228 menu entry to control the use of the NumLock and Alt keys for 13229 the Sun/PC and VT220 keyboard extensions.</li> 13230 13231 <li>implement DECSET/DECRST numeric keypad (DECNKM) mode.</li> 13232 13233 <li>modify terminfo and termcap to use recommended "X Window" 13234 or "X11" names rather than "X Windows" (reported by Tomas 13235 Vanhala).</li> 13236 13237 <li>suppress translation of shifted keypad "+" when sunKeyboard 13238 is true.</li> 13239 13240 <li>workaround unexpected behavior (perhaps bug) in 13241 XmbLookupString, which returns trash in the string buffer for 13242 numlock and control-key combined with keypad-keys.</li> 13243 13244 <li>modify ScrollBarReverseVideo() to keep scrollbar border 13245 visible when reverse video is toggled.</li> 13246 13247 <li>correct missing case for parameter 17 (set highlight color) 13248 in dynamic colors control sequences.</li> 13249 13250 <li>extend dynamic colors control sequences to allow users to 13251 determine the colors and font which are currently active.</li> 13252 13253 <li>minor tweak to OSC responses, to use BEL if the application 13254 used that to end the request, rather than ST. This works better 13255 with shell scripts, which may not handle an 13256 <code><ESC>backslash</code> very well.</li> 13257 13258 <li>separate menu settings for reverse video from that done 13259 under program control.</li> 13260 13261 <li>corrected ifdef's for menus, which did not allow tek4014 to 13262 be suppressed properly (reported by Clint Olsen).</li> 13263 13264 <li>changes for Linux-2.2.x with GLibc-2.1 and /dev/ptmx 13265 support (integrated patch from Pavel Roskin): 13266 <ul> 13267 <li>main.c and resize.c were using different rules to 13268 determine whether ATT should be defined (actually 13269 USE_USG_PTYS is more apt).</li> 13270 13271 <li>copy definitions from main.c to resize.c to prevent 13272 sys/stream.h and sys/ptem.h from inclusion when SYSV is not 13273 defined</li> 13274 13275 <li>define CNUL if not already defined like other 13276 variables.</li> 13277 13278 <li>/dev/tty does exist in Linux, but it doesn't mean, it 13279 should be used. Therefore EACCES is now an acceptable 13280 result.</li> 13281 13282 <li>ifdef'd several calls such as <code>ioctl (ptyfd, 13283 I_PUSH, "ptem")</code> to build on Linux (I_PUSH is not 13284 defined when sys/stropts.h is not included).</li> 13285 </ul> 13286 </li> 13287 13288 <li>initialize second "ltc" variable in main.c (reported by 13289 David Dawes).</li> 13290 13291 <li>provide definition for USE_USG_PTYS in screen.c</li> 13292 13293 <li>add resource-files to install rule in standalone 13294 Makefile.in</li> 13295 13296 <li>add sample scripts to illustrate titlebar controls, 13297 resizing and colors.</li> 13298 </ul> 13299 13300 <h1><a name="xterm_93" id="xterm_93">Patch #93 - 1999/3/14 - 13301 XFree86 3.9Pd</a></h1> 13302 13303 <p>Here are several fixes and minor enhancements. The chief ones 13304 are the fixes for NumLock mode and reverse video, since we had 13305 become used to working around the problems.</p> 13306 13307 <ul> 13308 <li>remove kfnd/kll/kslt strings from terminfo, because curses 13309 applications do not necessarily return khome/kend pairs 13310 (reported by Vikas Agnihotri).</li> 13311 13312 <li>implement NumLock resource which overrides the keyboard 13313 tables for the special case of keypad keys. This is a problem 13314 introduced in xterm by X11R6 changes, i.e., an ambiguity which 13315 in effect discarded vt100 keypad support.</li> 13316 13317 <li>modify Sun/PC keyboard mode to extend this (emulation of 13318 DEC vt100 keypad) to the remainder of the numeric keypad. Now, 13319 the default operating mode of xterm uses the keyboard tables 13320 as-is (except if the NumLock mode overrides), but provides good 13321 vt100 keypad compatibility if the Sun/PC keyboard menu item is 13322 checked.</li> 13323 13324 <li>separate command-line settings for reverse video from that 13325 done under program control. This is a problem which was 13326 introduced by X11R6. Though <em>correct</em>, most users are 13327 confused by allowing the reset command to undo the effect of 13328 the command-line <kbd>-rv</kbd> option.</li> 13329 13330 <li>add description of function keys, keypad and cursor keys to 13331 ctlseqs.ms</li> 13332 13333 <li>add terminfo entries for xterm-vt52, xterm-sun and 13334 xterm-hp</li> 13335 13336 <li>correct typo (missing case value) for DECSET 35, 13337 enable/disable shifted keypad action and a few compiler 13338 warnings (reported by Zdenek Sekera <zs@sgi.com>).</li> 13339 13340 <li>correct reporting of color values 8-15 in DECRQSS (reported 13341 by Vikas Agnihotri).</li> 13342 13343 <li>modify parsing of ttyModes resource to recognize "^-" as 13344 "undef" (requested by Tomas Vanhala).</li> 13345 13346 <li>integrate/extend changes to add iconify/maximize actions 13347 (from Edward S. Arthur <eda@ultranet.com>).</li> 13348 13349 <li>add control sequences for maximizing/restoring window, and 13350 for reporting maximum screen size.</li> 13351 13352 <li>add 'interpret' action, to support local function-key 13353 interpretation. Used properly, this makes most of the 13354 specialized actions of xterm redundant.</li> 13355 13356 <li>add control sequence private modes 1051, 1052 and 1052, for 13357 setting the Sun and HP function key modes, and for setting the 13358 Sun/PC keyboard mode.</li> 13359 13360 <li>add configure option --disable-maximize</li> 13361 13362 <li>add configure option --disable-num-lcok</li> 13363 13364 <li>extend descriptions of configure script options in 13365 INSTALL.</li> 13366 </ul> 13367 13368 <h1><a name="xterm_92" id="xterm_92">Patch #92 - 1999/2/5 - 13369 XFree86 3.9Nz</a></h1> 13370 13371 <ul> 13372 <li>increase buffer size for tgetent (i.e., termcap) to 1500. 13373 This fixes a problem where <em>screen</em> is built using 13374 ncurses or GNU termcap and <em>xterm</em> is built using the 13375 standard termcap interface. The former does not limit the 13376 termcap size, while the latter is assumed to be no longer than 13377 1023 characters. The <em>screen</em> program's termcap entry is 13378 about 1200 characters long.</li> 13379 13380 <li>change update_menu_item() to a function, to simplify 13381 debugging. This also reduces the executable by 4Kb.</li> 13382 13383 <li>add control sequences for DECSET 30, 1010, 1011 like rxvt 13384 (enable or disable some features that were only settable via 13385 resources or command line arguments).</li> 13386 13387 <li>add control sequence for DECSET 35, which enables/disables 13388 the shifted keypad functions.</li> 13389 13390 <li>add support for switching font sizes, by stepping through 13391 the font menu using shifted keypad plus and minus.</li> 13392 13393 <li>correct missing initialization of tekInhibit and tekSmall 13394 resources.</li> 13395 13396 <li>correct ifdef's in charproc.c for XtNgeometry and 13397 XtCGeometry (reported by Bram Moolenaar).</li> 13398 </ul> 13399 13400 <h1><a name="xterm_91" id="xterm_91">Patch #91 - 1999/1/21 - 13401 XFree86 3.9Nw</a></h1> 13402 13403 <ul> 13404 <li>Implement logic to translate input characters which are 13405 mapped when in vt220 National Replacement Character mode 13406 (requested by Tomas Vanhala).</li> 13407 13408 <li>Resync configure scripts with my patches to autoconf 13409 2.13</li> 13410 13411 <li>Change order of -lXmu and -lXext to accommodate cygwin32 13412 (reported by Vikas Agnihotri).</li> 13413 13414 <li>Add "-ti" option to set terminal emulation level from 13415 command line rather than via resource.</li> 13416 13417 <li>Simplify some of the preprocessor logic using #elif.</li> 13418 </ul> 13419 13420 <h1><a name="xterm_90" id="xterm_90">Patch #90 - 1998/12/13 - 13421 XFree86 3.9Nq</a></h1> 13422 13423 <p>This implements several small fixes and enhancements. The 13424 chief one implements fallback support for line drawing characters 13425 with fonts that do not include those characters. But I 13426 implemented that last.</p> 13427 13428 <ul> 13429 <li>If any of the glyphs in positions 0-31 (used by xterm to 13430 implement the VT100 alternate character set) are zero-sized 13431 (i.e., missing), xterm will reserve a normal space for the 13432 glyph when drawing. I implemented a simple stroke-drawing 13433 function to draw the line-drawing characters and a couple of 13434 the other (simpler) characters such as diamond. (This was 13435 suggested by Vikas Agnihotri).</li> 13436 13437 <li>Modify the computation of doublesize characters to work 13438 around font servers which shift the scaled characters up/down 13439 or do not give the correct width.</li> 13440 13441 <li>Add popup menu item and corresponding resource settings to 13442 disable the font-scaling logic for doublesize characters to 13443 work around (older) font servers which simply do not draw the 13444 fonts scaled to the size that they said they would. I see this 13445 problem on a SunOS system running X11R5; the X11R6 servers seem 13446 well behaved.</li> 13447 13448 <li>Implement new escape sequence, private mode 1049, which 13449 combines the switch to/from alternate screen mode with screen 13450 clearing and cursor save/restore. Unlike the existing escape 13451 sequence, this clears the alternate screen when switching to it 13452 rather than when switching to the normal screen, thus retaining 13453 the alternate screen contents for select/paste operations. 13454 <p>When I implemented the popup menu entry to toggle between 13455 the normal and alternate screens, I considered only pasting 13456 from the normal screen to the alternate; this improvement 13457 allows either direction.</p> 13458 </li> 13459 13460 <li>Changed the termcap and terminfo for xterm-xfree86 and 13461 xterm-8bit to use the new 1049 private mode.</li> 13462 13463 <li>Modify the logic which switches between normal and 13464 alternate screens so that the save/restore cursor operations 13465 apply only to the current screen. That means that applications 13466 which use the terminfo smcur/rmcur or termcap ti/te 13467 capabilities will restore the cursor to the original position 13468 on the normal screen rather than to the most recent place where 13469 a save-cursor operation was performed. 13470 <p>I note that a real VT100 terminal would not behave in this 13471 way, but it is a moot point since the VT100 does not 13472 implement alternate screen, and therefore the save/restore 13473 cursor sequence would not be used in this context. I reviewed 13474 the logic which switches between normal and alternate screens 13475 based on some recent newsgroup postings as well as a proposed 13476 patch in the Debian group which attempts to do this (the 13477 patch has a bug, however, so I did not use it).</p> 13478 </li> 13479 13480 <li>Add popup menu entry for toggling the titeInhibit 13481 resource.</li> 13482 13483 <li>Add new resource answerbackString, which overrides the 13484 default "xterm" returned by xterm when responding to an ENQ 13485 (control/E) character (request by Rajesh Vaidheeswarran 13486 <rv@fore.com>).</li> 13487 13488 <li>Add new resource keyboardDialect for setting the NRC 13489 display character set (request by Tomas Vanhala, who notes that 13490 I should add logic to translate the keyboard as well).</li> 13491 13492 <li>Add new command-line option and corresponding resources for 13493 making xterm generate escape sequences compatible with HP 13494 terminals. Like the existing Sun escape sequences, this is 13495 available as a popup menu item. It is enabled by the configure 13496 script with the option --enable-hp-fkeys (requested by Toni 13497 Mueller <sales@oeko.net>).</li> 13498 13499 <li>Add configure script option --disable-boxchars to disable 13500 the fallback support for line drawing characters.</li> 13501 13502 <li>Fix ifdef's for configure script --disable-ansi-color, and 13503 reviewed all configure options to ensure that all can be 13504 enabled/disabled appropriately.</li> 13505 13506 <li>Update config.guess and config.sub, from Lynx.</li> 13507 </ul> 13508 13509 <h1><a name="xterm_89" id="xterm_89">Patch #89 - 1998/11/20 - 13510 XFree86 3.9Nm</a></h1> 13511 13512 <p>This patch completes the implementation of double-sized 13513 character support for the VT100 emulation, and fixes a few minor 13514 bugs:</p> 13515 13516 <ul> 13517 <li>corrected the cursor position in HideCursor, which did not 13518 multiply the column by two when in doublesize mode. This bug, 13519 which did not appear in normal use, dates back to my original 13520 <a href="#xterm_44">changes</a> to partly implement 13521 double-sized characters. I noticed it when cat'ing a typescript 13522 from vttest's double-sized character test.</li> 13523 13524 <li>ensure that the current line is repainted when switching 13525 between single and double width characters.</li> 13526 13527 <li>reduce the number of bits used for double-sized character 13528 coding from 3 to 2, to make more room for soft-font codes.</li> 13529 13530 <li>copy newer ifdef's from the XFree86 3.3.3 release's main.c, 13531 which address details of glibc and powerpc.</li> 13532 13533 <li>moved definition of DECL_ERRNO in xterm.h to match XFree86 13534 3.3.3</li> 13535 13536 <li>modify <em>resize</em> to remove the ifdef on SVr4 that 13537 suppressed printing the script for $LINES and $COLUMNS. 13538 Solaris' resize utility does this; suppressing the behavior is 13539 unnecessary.</li> 13540 </ul> 13541 13542 <p>I tested the double-sized characters using vttest and the 13543 xfsft patch. These fonts worked reasonably well:</p> 13544 13545 <pre> 13546 -bitstream-courier-medium-r-normal--0-0-0-0-m-0-iso8859-1 13547 9x15 13548</pre> 13549 <p>The iso8859 font does not include box characters, of course, 13550 but looks good.</p> 13551 13552 <h1><a name="xterm_88" id="xterm_88">Patch #88 - 1998/10/31 - 13553 XFree86 3.9Nk and 3.3.2h</a></h1> 13554 13555 <p>This refines my #85 patch by checking for a case where the 13556 font server returns a bold font that does not quite correspond to 13557 the normal font. When I asked for a bold version of the 6x12 13558 font, the font server returned a near equivalent where the ascent 13559 and descent values did not match, causing xterm to leave lines 13560 across the display. This patch makes xterm reject that type of 13561 mismatch, falling back to the old font behavior.</p> 13562 13563 <h1><a name="xterm_87" id="xterm_87">Patch #87 - 1998/10/21 - 13564 XFree86 3.9Nj and 3.3.2f</a></h1> 13565 13566 <p>This corrects a problem reported by Stefan Dalibor. My table 13567 entries for the <em>printerExtent</em> and 13568 <em>printerFormFeed</em> resources used the wrong types for 13569 sizeof, causing the printer to not work properly on some 13570 platforms because the <em>printAttributes</em> resource was 13571 overwritten (e.g., Digital Unix with DEC Alpha).</p> 13572 13573 <p>I reviewed all of the resource table entries and fixed a 13574 potential problem with <em>resizeGravity</em>, which was typed as 13575 <em>int</em> rather than <em>XtGravity</em>.</p> 13576 13577 <h1><a name="xterm_86" id="xterm_86">Patch #86 - 1998/10/14 - 13578 XFree86 3.9Nj and 3.3.2e</a></h1> 13579 13580 <p>A small fix: when switching to/from the continuous mouse 13581 reporting mode, the event mask was incorrect if xterm was built 13582 under X11R5 because the original data was saved under an ifdef 13583 for active-icon.</p> 13584 13585 <h1><a name="xterm_85" id="xterm_85">Patch #85 - 1998/10/12 - 13586 XFree86 3.9Nj and 3.3.2e</a></h1> 13587 13588 <p>Some cleanup (I noticed the pixel droppings a few months ago 13589 after getting a new 17" monitor):</p> 13590 13591 <ul> 13592 <li>split-out the functions that load/reload fonts for xterm as 13593 new file fontutils.c to extend them to support automatic 13594 loading of bold font corresponding to the normal font. Adapted 13595 logic from EMU 1.3 for this purpose. This fixes most 13596 occurrences of pixel droppings from bold characters.</li> 13597 13598 <li>modified by renaming variables and adding casts to permit 13599 compile with g++.</li> 13600 13601 <li>modify headers so they can all be compiled without order 13602 dependencies, and use bracketed rather than quoting includes to 13603 allow compile from separate directory.</li> 13604 13605 <li>renamed xtermm terminfo entry to xterm-mono, to avoid 13606 conflict with Solaris entry now in ncurses.</li> 13607 </ul> 13608 13609 <h1><a name="xterm_84" id="xterm_84">Patch #84 - 1998/10/9 - 13610 XFree86 3.9Ni and 3.3.2e</a></h1> 13611 13612 <p>Several small fixes and enhancements, including a patch from 13613 Bjorn Helgaas:</p> 13614 13615 <ul> 13616 <li>correct initialization of TERMCAP environment variable, 13617 which was frequently set to garbage on non-Linux systems 13618 because "termcap" and "newtc" contained random data from the 13619 stack.</li> 13620 13621 <li>remove the LINEWRAPPED attribute from lines as they are 13622 cleared. Previously, the attribute was set but never 13623 cleared.</li> 13624 13625 <li>make word and line selections work even when lines are 13626 wrapped by xterm. Previously, selections were limited to one 13627 screen line.</li> 13628 </ul> 13629 13630 <p>as well as</p> 13631 13632 <ul> 13633 <li>modify logic for line-wrapping to reset the associated flag 13634 if the application deletes a character. This fixes a problem 13635 reported by Bjorn Helgaas where word/line selection would still 13636 wrap even after deleting characters from the first line.</li> 13637 13638 <li>add kll/kH capabilities to xterm-xfree86 entries in termcap 13639 and terminfo (request by Michael Schroeder).</li> 13640 13641 <li>shorten descriptions in termcap to make resolved entries 13642 all shorter than 1023 character limit.</li> 13643 13644 <li>use DECSTR control sequence to shorten initialization and 13645 reset strings in xterm-xfree86 termcap and terminfo.</li> 13646 13647 <li>use rmul/smul and rmir/smir in xterm-r5 terminfo to match 13648 termcap.</li> 13649 13650 <li>correct typos in initialization and reset strings in 13651 xterm-r5 termcap and terminfo.</li> 13652 13653 <li>disable special translations of key symbols (the backarrow 13654 key, the editing keypad and the keypad "+") when a modifier 13655 other than shift, control or numlock is used. This makes xterm 13656 handle the meta key as expected by people using emacs (reported 13657 by Pete Harlan <harlan@pointofchoice.com> in 13658 linux.debian.user newsgroup).</li> 13659 </ul> 13660 13661 <h1><a name="sync_83" id="sync_83">Resync #83 - 1998/10/7 - 13662 XFree86 3.3.2e</a></h1> 13663 13664 <p>Merge changes through patch #83 with the 3.3.2e version.</p> 13665 13666 <p>This follows a change from XFree86 CVS which adds checks for 13667 non-null return from malloc (patch by Matthieu Herrb).</p> 13668 13669 <h1><a name="xterm_83" id="xterm_83">Patch #83 - 1998/8/25 - 13670 XFree86 3.9Nb</a></h1> 13671 13672 <p>Several small fixes and enhancements:</p> 13673 13674 <ul> 13675 <li>add configure test to infer if xterm should be installed 13676 setuid based on previously installed xterm (reported by Stephen 13677 Marley and Stefan Dalibor).</li> 13678 13679 <li>implement quasi-continuous mouse reporting (integrated 13680 patch by Jason Bacon).</li> 13681 13682 <li>correct control sequences transmitted by function keys F1 13683 to F4 when sunFunctionKeys resource is true (it was still using 13684 the VT100 control sequences).</li> 13685 13686 <li>modify handling of backarrow key so that the control 13687 modifier toggles the backspace/delete interpretation set by the 13688 backarrowKey resource.</li> 13689 13690 <li>limit the row and column values used to report mouse 13691 position.</li> 13692 </ul> 13693 13694 <p>From resync with XFree86 3.9Nb:</p> 13695 13696 <ul> 13697 <li>add support for the VSTATUS control character (patch by 13698 Robert Earl <rearl@teleport.com>).</li> 13699 </ul> 13700 13701 <h1><a name="xterm_82" id="xterm_82">Patch #82 - 1998/7/15 - 13702 XFree86 3.9Aj</a></h1> 13703 13704 <p>Bug fix for patch #81:</p> 13705 13706 <ul> 13707 <li>remove an #undef for NBBY, which caused compile problem on 13708 FreeBSD (reported by David Dawes).</li> 13709 </ul> 13710 13711 <h1><a name="xterm_81" id="xterm_81">Patch #81 - 1998/7/14 - 13712 XFree86 3.9Aj</a></h1> 13713 13714 <p>More bug fixes:</p> 13715 13716 <ul> 13717 <li>fix conflicting ifdef's for TIOCSLTC when building with 13718 Linux on AXP aka DEC Alpha (reported by Robin Cutshaw).</li> 13719 13720 <li>correction to patch #79, move assignment for 13721 *utptr->ut_user = 0; back into non-SVR4 ifdef in main.c, 13722 since this clobbers username on Solaris 2.5.1 (analysis by Will 13723 Day <willday@rom.oit.gatech.edu>).</li> 13724 13725 <li>corrected khome/kend in xterm-8bit terminfo 13726 description.</li> 13727 13728 <li>improve cursor color by making it always the reverse of 13729 fg/bg unless the cursorColor resource is set, i.e., to 13730 something other than the default foreground (reported by Vikas 13731 Agnihotri and Bram Moolenaar).</li> 13732 13733 <li>minor fixes for compiler warnings, including a syntax error 13734 in the AMOEBA ifdef's.</li> 13735 </ul> 13736 13737 <p>From resync with XFree86 3.9Aj:</p> 13738 13739 <ul> 13740 <li>correction to patch #73, supply missing #else for fallback 13741 definitions of size_t, time_t (Robin Cutshaw 13742 <robin@intercore.com>).</li> 13743 </ul> 13744 13745 <h1><a name="xterm_80" id="xterm_80">Patch #80 - 1998/6/29 - 13746 XFree86 3.9Ai</a></h1> 13747 13748 <p>This fixes a couple of items leftover or introduced by patch 13749 79:</p> 13750 13751 <ul> 13752 <li>take out the logic that suppresses editing-keypad in vt100 13753 mode (those keys are too valuable to give up for a fine point 13754 of emulation).</li> 13755 13756 <li>corrected a couple of places in terminfo where I missed 13757 using the vt220-style editing-keypad codes for Find/Select 13758 (mapped to Home/End).</li> 13759 13760 <li>checked termcap file against terminfo, fix several places 13761 where it was inconsistent.</li> 13762 </ul> 13763 13764 <h1><a name="xterm_79" id="xterm_79">Patch #79 - 1998/6/28 - 13765 XFree86 3.9Ai</a></h1> 13766 13767 <p>This patch fixes several small bugs:</p> 13768 13769 <ul> 13770 <li>use X_EXTRA_LIBS in standalone Makefile.in (patch by Tomas 13771 Vanhala).</li> 13772 13773 <li>add new resource 'oldXtermFKeys' which provides backward 13774 compatibility for F1-F4 control sequences with TOG's 13775 xterm.</li> 13776 13777 <li>determine the server's default foreground/background Pixel 13778 values, needed if the -flipPixels X server option is used 13779 (reported by David Dawes).</li> 13780 13781 <li>correct logic for F1-F4 function keys so that they generate 13782 VT100 compatible escape sequences in VT220 mode, since that is 13783 what the numeric keypad is supposed to do (reported by Ron 13784 Johnson, Jr. <ronjohn@communique.net>).</li> 13785 13786 <li>modify logic for editing keypad to work more like VT220: 13787 don't pass those codes in VT100-mode unless oldXtermFKeys mode 13788 is set.</li> 13789 13790 <li>correct an interaction with the editing-keypad logic that 13791 prevented backarrow key from sending a 127 for the delete key 13792 (the 'remove' escape sequence was being sent instead).</li> 13793 13794 <li>use return-value from getuid() rather than the parameter, 13795 to work on systems which do not update the latter (patch by 13796 Kevin Buhr <buhr@mozart.stat.wisc.edu>)</li> 13797 13798 <li>correct scrollbar border color when toggling to/from secure 13799 keyboard mode (patch by Jeff Uphoff 13800 <juphoff@tarsier.cv.nrao.edu>)</li> 13801 13802 <li>modifications to terminfo file: 13803 <ul> 13804 <li>rename description to xterm-xfree86, adding an entry 13805 'xterm' which is derived from xterm-xfree86 to simplify 13806 customization.</li> 13807 13808 <li>change string for kdch1 from \177 to \E[3~, to address 13809 complaints from Debian developers. (This applies to the key 13810 labeled "Delete", and does not affect the backarrow 13811 key).</li> 13812 13813 <li>add user-strings u6, u7, u8, u9 to entries to make them 13814 work with Daniel Weaver's "tack" program.</li> 13815 13816 <li>modify xterm-24, xterm-bold, xterm-boldso entries to 13817 disentangle them from explicit dependency upon 13818 xterm-xfree86.</li> 13819 13820 <li>add generic 'xterm-color' entry.</li> 13821 13822 <li>minor corrections to xterm-xfree86, xterm-8bit, 13823 xterm-r5 and xterm-r6 entries.</li> 13824 </ul> 13825 </li> 13826 </ul> 13827 13828 <h1><a name="xterm_78" id="xterm_78">Patch #78 - 1998/6/3 - 13829 XFree86 3.9Ah and 3.3.2</a></h1> 13830 13831 <p>Again, most of the bulk of this patch is for ANSI conversion. 13832 I used the IRIX compiler's -wlint option to find the remaining 13833 functions that use K&R syntax (since gcc does not do this 13834 properly). Also, I changed the logic in the print code slightly 13835 to close unwanted files before opening a pipe to the printer. 13836 This may help in some configurations where the line printer hangs 13837 until xterm closes the pipe.</p> 13838 13839 <h1><a name="xterm_77" id="xterm_77">Patch #77 - 1998/5/26 - 13840 XFree86 3.9Ah and 3.3.2</a></h1> 13841 13842 <p>Most of the bulk of this patch is to convert the extended C 13843 (K&R functions with prototypes) to ANSI. I verified that on 13844 Linux by comparing object files, to ensure that I did not, for 13845 example, interchange parameters in the function declarations.</p> 13846 13847 <p>The rest of the patch fixes several minor bugs, and adds a few 13848 features:</p> 13849 13850 <ul> 13851 <li>back-out my use of ncurses "captoinfo -f" option 13852 (if/then/else/endif) formatting, since ncurses did not 13853 correctly filter embedded newlines in terminfo capability 13854 strings until _after_ ncurses 4.1, thus corrupting 13855 setf/setb/sgr strings (reported by Darren Hiebert and 13856 others).</li> 13857 13858 <li>document SGR 8, 28 (invisible/visible), add corresponding 13859 capabilities to terminfo description. 13860 <p>I would also add the 'prot protected capability, but the 13861 control sequences for that would not be recognized or 13862 properly ignored by the older xterm programs.</p> 13863 </li> 13864 13865 <li>modify ChangeGroup to not suppress a null-resource, but 13866 treat it as an empty string (recommended by Stefan 13867 Dalibor).</li> 13868 13869 <li>add printerAutoClose resource to control whether printer is 13870 closed when going offline. More than one person reports 13871 problems (on Solaris 2.6 and Digital Unix 4.0) getting the 13872 printer to proceed unless xterm exits; I think that it is a 13873 problem flushing the pipe. Closing it ought to flush it.</li> 13874 13875 <li>adapt TOG fix-3 to in HandleKeymapChange and VTInitI18N 13876 (but adapt XtStackAlloc/XtStackFree for clarity, as well as 13877 fixing memory leak).</li> 13878 13879 <li>change calls on FillCurBackground to ClearCurBackground, in 13880 effect using XClearArea rather than XFillRectangle when 13881 clearing as a side-effect of scrolling and insertion (patch by 13882 Alexander V Lukyanov)</li> 13883 13884 <li>correct some places where insert/delete did not _move_ the 13885 color attributes, using memmove (patch by Alexander V Lukyanov 13886 <lav@long.yar.ru>)</li> 13887 13888 <li>add ifdef's for __CYGWIN32__, for port to cygnus version 13889 B19.1 (patch by Andrew Sumner 13890 <andrew_sumner@hotmail.com>).</li> 13891 13892 <li>remove #define for hpux that turned on USE_SYSV_ENVVARS, 13893 since this causes some applications (such as 'less') to get 13894 incorrect $LINES and $COLUMNS values (reported by Clint 13895 Olsen).</li> 13896 13897 <li>modify behavior for HP-UX, to set the "reserved" process 13898 group controls to _POSIX_VDISABLE so the TIOCSLTC ioctl does 13899 not produce an error (patch by Ben Yoshino 13900 <ben@wiliki.eng.hawaii.edu>).</li> 13901 13902 <li>correct length of underlining, reducing it by one pixel to 13903 avoid leaving a dot when the application does not clear the 13904 whole screen I noticed this only recently myself (and other 13905 people as well); it depends on the font chosen. A 6x10 font 13906 shows it, but the other fonts from XTerm.ad do not. I also see 13907 a similar problem with the emulation of bold fonts. (patch by 13908 Sergei Laskavy <Laskavy@cs.msu.su>).</li> 13909 13910 <li>add include for Xos.h to xterm.h, to ensure proper 13911 definitions (reported by Holger Veit).</li> 13912 13913 <li>update config.guess to recognize Unixware 2.1 and 7 (patch 13914 by Mike Hopkirk <hops@sco.com>).</li> 13915 </ul> 13916 13917 <h1><a name="xterm_76" id="xterm_76">Patch #76 - 1998/5/8 - 13918 XFree86 3.9Ah and 3.3.2</a></h1> 13919 13920 <p>A fix for the print-window function, and some minor 13921 cleanup:</p> 13922 13923 <ul> 13924 <li>modify logic that closes pipe in the print-window function 13925 to not use pclose, which does not work on all systems, since I 13926 did not open the pipe with popen (reported by Stefan 13927 Dalibor).</li> 13928 13929 <li>correct name of $(EXTRA_LOAD_FLAGS) imake variable 13930 (reported by Stefan Dalibor).</li> 13931 13932 <li>guard logic in ChangeGroup() function against null pointer 13933 (reported by Stefan Dalibor).</li> 13934 13935 <li>ensure that menu entry for toggling sunKeyboard resource is 13936 initialized (reported by Branden Robinson 13937 <branden@purdue.edu>).</li> 13938 13939 <li>gcc unused-variable warnings (reported by Bernd Ernesti 13940 <bernd@arresum.inka.de>)</li> 13941 13942 <li>rename global variable 'buffer' to 'VTbuffer'</li> 13943 </ul> 13944 13945 <h1><a name="xterm_75" id="xterm_75">Patch #75 - 1998/5/7 - 13946 XFree86 3.9Ah and 3.3.2</a></h1> 13947 13948 <p>This incorporates fixes from several people, as well as some 13949 improvements that I made based on feedback from users:</p> 13950 13951 <ul> 13952 <li>add option to standalone configure script, 13953 "--with-own-terminfo-dir", which causes xterm to pass a 13954 predefined value of $TERMINFO to the application. Also use this 13955 value in install rule "make install-ti", for the standalone 13956 configure script. (patch & feedback from Tor Lillqvist 13957 <tml@hemuli.tte.vtt.fi>)</li> 13958 13959 <li>change ifdef's for "hpux" to "__hpux" (patch by Tor 13960 Lillqvist). The imake configuration uses the former, but the 13961 latter is predefined by HP's compilers.</li> 13962 13963 <li>define USE_SYSV_ENVVARS for HP-UX, curses does not use 13964 $TERMCAP (patch by Tor Lillqvist).</li> 13965 13966 <li>on HP-UX, use the /dev/ptym/clone device to allocate PTY's. 13967 Works both on HP-UX 9 and 10. (patch by Tor Lillqvist).</li> 13968 13969 <li>modify configure script to obtain the $(EXTRA_LOADFLAGS) 13970 value from imake, needed for compiling under DEC OSF/1 13971 (reported by Stefan Dalibor)</li> 13972 13973 <li>modify print-window action so that the printer is closed 13974 after printing a window, unless the printer was already opened 13975 (i.e., by an application running in the window). This makes the 13976 printing complete without having to exit xterm, since not all 13977 systems treat fflush through a pipe very well (reported by 13978 Stefan Dalibor)</li> 13979 13980 <li>modify printing code so that the ^M's are not printed if 13981 the printAttribute resource is set to zero (request by Stefan 13982 Dalibor).</li> 13983 13984 <li>correct typo in xterm.man, for the default value of 13985 printAttribute (reported by Stefan Dalibor).</li> 13986 13987 <li>correct printing code so that the alternate character set 13988 is printed, like other attributes, with escape sequences.</li> 13989 13990 <li>correct termcap description, removing spurious 'm' 13991 character from the 'op' capability (reported by Greg Woods 13992 <woods@weird.com>).</li> 13993 13994 <li>correct trace code so that the initial timestamp is 13995 set.</li> 13996 13997 <li>correct/modify utmp data for the Linux glibc 2 13998 configuration, so that the ut_line member is set before using 13999 it to update wtmp (patch by Bill Nottingham 14000 <wen1@cec.wustl.edu>).</li> 14001 </ul> 14002 14003 <h1><a name="xterm_74" id="xterm_74">Patch #74 - 1998/4/27 - 14004 XFree86 3.9Ag and 3.3.2</a></h1> 14005 14006 <p>This corrects a couple of recent bugs and adds a new 14007 resource:</p> 14008 14009 <ul> 14010 <li>modify definition of TRACE_CHILD so that it does not 14011 conflict with ifdef's for USE_USG_PTYS in main.c (reported by 14012 Vikas Agnihotri <VikasA@att.com> and Stefan 14013 Dalibor).</li> 14014 14015 <li>correct ownership of file (actually pipe) written by the 14016 print controls. When undoing the setuid changes in patch #69, I 14017 overlooked this. Now xterm forks a process which resets setuid 14018 and routes the printer data as the real user.</li> 14019 14020 <li>add a new resource, "printAttributes", which controls 14021 whether color attributes (or any attributes) are sent to the 14022 printer.</li> 14023 </ul> 14024 14025 <h1><a name="xterm_73" id="xterm_73">Patch #73 - 1998/4/25 - 14026 XFree86 3.9Ag and 3.3.2</a></h1> 14027 14028 <p>This patch does the following:</p> 14029 14030 <ul> 14031 <li>implements a print-window facility for xterm. Though useful 14032 in itself, I added it as part of some debugging which I am 14033 doing. (Occasionally during an exposure event xterm fails to 14034 restore the proper colors for highlighted text, and printing 14035 the screen will show the internal states nicely). 14036 <p>The print facility now also displays the color 14037 information. (I will probably make this a resource).</p> 14038 </li> 14039 14040 <li>modified the xterm-16color terminfo description to use the 14041 setaf and setab strings, which is a little more efficient 14042 (requested by Stephen Marley).</li> 14043 14044 <li>reduced some clutter of the ifdef/includes (e.g., stdlib.h, 14045 unistd.h, errno) making the configure script test for these. 14046 <p>I removed the symbols Size_t and Time_t, since they no 14047 longer serve a useful purpose.</p> 14048 </li> 14049 14050 <li>added some debugging traces to show the initial screen 14051 size, and the success/failure of the ioctl calls pass handle 14052 window resizing events to the application (for Clint Olsen). 14053 <p>I also modified the trace code to produce two files since 14054 some of the information is produced by the child process. So 14055 now they are Trace-parent.out and Trace-child.out</p> 14056 </li> 14057 14058 <li>updated configure test for ANSI compiler options to handle 14059 a special case for HP-UX 10.x (reported by Clint Olsen).</li> 14060 </ul> 14061 14062 <h1><a name="xterm_72" id="xterm_72">Patch #72 - 1998/4/17 - 14063 XFree86 3.9Ag and 3.3.2</a></h1> 14064 14065 <p>This is a patch from Chris Siebenmann 14066 <cks@hawkwind.utcs.toronto.edu>, which I have cleaned up a 14067 little, and integrated into the configure script.</p> 14068 14069 <p>From his description:</p> 14070 14071 <blockquote> 14072 <p>This set of patches is the latest incarnation of patches 14073 originally written by Ian! D Allen, then of the University of 14074 Waterloo and now of who knows where; I have been carrying them 14075 forward from xterm to xterm ever since about X11R4. What they 14076 do is add an option so that when an iconified xterm receives 14077 output it prepends '*** ' to its icon title and (optionally) 14078 beeps the bell; deiconifying the xterm removes the '*** '. Over 14079 the years I've found this to be incredibly convenient for 14080 monitoring all sorts of low-activity things.</p> 14081 </blockquote> 14082 14083 <h1><a name="xterm_71" id="xterm_71">Patch #71 - 1998/4/12 - 14084 XFree86 3.9Ag and 3.3.2</a></h1> 14085 14086 <p>This patch is a slightly modified version of one by Richard 14087 Braakman, which prevents buffer overflow in the input-method and 14088 preedit-type parsing in xterm. I changed a couple of details to 14089 make the code more maintainable, and looked for similar things - 14090 copying into a fixed-size buffer (found none, though I did spot 14091 an unused variable).</p> 14092 14093 <h1><a name="xterm_70" id="xterm_70">Patch #70 - 1998/3/29 - 14094 XFree86 3.9Af and 3.3.2</a></h1> 14095 14096 <p>This patch corrects some minor bugs in xterm, and fills in 14097 some more details in the VT220 emulation:</p> 14098 14099 <ul> 14100 <li>modify Imakefile to use SpecialCObjectRule for menu and 14101 data modules, making xterm build properly if logging is enabled 14102 (patch by Scott Sewall <scott@iprg.nokia.com>).</li> 14103 14104 <li>restore "ich" capability to terminfo entries, since Michael 14105 Schroeder points out that "ich1" is the one which is the 14106 problem in Solaris vi.</li> 14107 14108 <li>correct color of cursor, which would disappear on 14109 inverse-video since the initialization did not compare the 14110 cursor color against both foreground and background (reported 14111 by Olivier Calle).</li> 14112 14113 <li>correct abbreviation-test for -version and -help options, 14114 making command-line option -vb work (reported by Stefan 14115 Dalibor).</li> 14116 14117 <li>correct a dependency between ifdef's for OPT_I18N_SUPPORT 14118 and OPT_INPUT_METHOD (reported by Stefan Dalibor).</li> 14119 14120 <li>split-out character-set translations as new module 14121 charsets.c, to implement VT220 national replacement character 14122 sets (a mode where some of the characters are displayed as 14123 specific European glyphs). This relies on xterm using an ISO 14124 8859-1 font (approach suggested by Kenneth R. Robinette 14125 <zkrr01@mailbox.neosoft.com>).</li> 14126 14127 <li>correct a missing increment, which made SS2 and SS3 14128 controls repeat the shifted character.</li> 14129 14130 <li>add xterm-nrc to terminfo to illustrate the VT220 national 14131 replacement character sets.</li> 14132 14133 <li>reformat terminfo using new ncurses tic option "-f", which 14134 makes if/then/else/endif expressions easier to read.</li> 14135 </ul> 14136 14137 <h1><a name="xterm_69" id="xterm_69">Patch #69 - 1998/3/16 - 14138 XFree86 3.9Ad and 3.3.2</a></h1> 14139 14140 <p>This corrects the problem in xterm with utmp, reported by 14141 Olivier Calle <olivier@tc.fluke.com> as well as some other 14142 people after the XFree86 3.3.2 release.</p> 14143 14144 <p>The error was introduced by my patch #53 in XFree86 3.9r 14145 (October 1997).</p> 14146 14147 <p>The correction removes the reset of setuid/setgid before the 14148 main event loop, and solves the problem which I had worked around 14149 in a different manner: for some reason, the particular waitpid() 14150 call in creat_as() hangs, does not return when the child process 14151 exits. I changed the ifdef's to force the Linux configuration to 14152 use wait() instead. This call appears to work properly on other 14153 platforms such as SunOS and Solaris.</p> 14154 14155 <p>I also added tests in the standalone configure script to check 14156 for the existence of waitpid().</p> 14157 14158 <h1><a name="xterm_68" id="xterm_68">Patch #68 - 1998/3/4 - 14159 XFree86 3.9Ad and 3.3.1z</a></h1> 14160 14161 <p>This corrects another problem with the logic for 14162 highlightColor resource. As reported by David Dawes:</p> 14163 14164 <blockquote> 14165 <p>I've just noticed a problem with with the "inverse" control 14166 sequence (ESC[7m) with the 3.3.2 xterm. What it does is sets 14167 the background black, and the text the usual foreground colour 14168 rather than simply swapping the foreground/background.</p> 14169 </blockquote> 14170 14171 <p>This appears to be because when I added logic to check that 14172 the highlightColor was distinct from foreground and background 14173 colors, I did not add a further check to see that it was not 14174 black (I would make an explicit check for the resource not being 14175 set, but see nothing definite in the headers that would let me 14176 reference an explicitly-undefined Pixel value, though there are 14177 some implications in xpm.h). But this should work.</p> 14178 14179 <h1><a name="xterm_67" id="xterm_67">Patch #67 - 1998/2/23 - 14180 XFree86 3.9Ad and 3.3.1e</a></h1> 14181 14182 <p>This patch does the following:</p> 14183 14184 <ul> 14185 <li>improve test for highlightColor so that xterm does not 14186 attempt to use that unless it is different from the foreground 14187 and background colors (reported by Stefan Dalibor 14188 <Stefan.Dalibor@informatik.uni-erlangen.de>. 14189 <p>I could not reproduce this until I noticed that the -rev 14190 option exposed it nicely.</p> 14191 </li> 14192 14193 <li>remove ich and ich1 from xterm and xterm-8bit terminfo 14194 descriptions. SVr4 terminfo documents that you must not combine 14195 these with smir/rmir, but ncurses allows it, opening a hole. 14196 Solaris 2.6 vi does not work properly if it is using a terminfo 14197 description when these are combined, since it was written to 14198 accommodate old terminals that required it (reported by Stephen 14199 Marley).</li> 14200 14201 <li>restore 1-pixel overlap of scrollbar border with left edge 14202 of window (reported by Jim Burmeister 14203 <jimb@metrolink.com>).</li> 14204 14205 <li>add a configure option, --enable-logfile-exec, which allows 14206 the user to specify a pipe for logfile. This defines 14207 ALLOWLOGFILEEXEC.</li> 14208 14209 <li>makes the ALLOWLOGFILEEXEC code compile & run, if 14210 configured.</li> 14211 14212 <li>minor documentation nits.</li> 14213 </ul> 14214 14215 <h1><a name="xterm_66" id="xterm_66">Patch #66 - 1998/2/16 - 14216 XFree86 3.9Ad and 3.3.1d</a></h1> 14217 14218 <p>This fixes the problem reported with failure to build the 14219 <em>resize</em> program (BSDI, OSF/1) due to not having 14220 <termcap.h>, by changing the ifdef to one that would be set 14221 only if the file exists (not currently specified, except by the 14222 standalone configure script). We do not really need to include 14223 <termcap.h> to build, but only for a clean compile, since 14224 it may declare the tgetent() prototype. I also updated the 14225 man-page for <em>resize</em>, since I had recently noticed that 14226 it can be used to resize <em>xterm</em> using the "Sun" control 14227 sequences option.</p> 14228 14229 <h1><a name="xterm_65" id="xterm_65">Patch #65 - 1998/2/14 - 14230 XFree86 3.9Ad and 3.3.1c</a></h1> 14231 14232 <p>This is a small patch to xterm's 8-bit terminal description. I 14233 noticed while testing ncurses that I had specified the wrong 14234 (VT100-style) codes for the F1-F4. Xterm only uses VT220-style 14235 function keys in 8-bit mode.</p> 14236 14237 <h1><a name="xterm_64" id="xterm_64">Patch #64 - 1998/2/8 - 14238 XFree86 3.9Ad</a></h1> 14239 14240 <p>This fixes the following problems with xterm:</p> 14241 14242 <ul> 14243 <li>save/restore the ANSI foreground and background colors with 14244 the other visible attributes in the save-cursor and 14245 restore-cursor operations. This works around a problem with 14246 vim, which apparently assumed that switching between the normal 14247 and alternate screens resets the colors (reported by Jim Battle 14248 <jb@chromatic.com>). 14249 <p>It would be nice to implement save/restore cursor as a 14250 stack (and solve this type of problem completely), but that 14251 would lead to incompatibility with applications which assume 14252 they are running with a VT100 or VT220.</p> 14253 </li> 14254 14255 <li>corrects behavior of a restore-cursor operation which does 14256 not follow a save-cursor (it is supposed to set the character 14257 sets to a known initial state).</li> 14258 14259 <li>extends the sunKeyboard resource (and menu toggle) to 14260 modify the home, end and delete keys on a Sun or PC editing 14261 keypad, making them generate codes compatible with DEC VT220's 14262 Find, Select and Remove keys.</li> 14263 14264 <li>corrects a length in checking command-line options, which 14265 caused the "-help" message to not work when X was not 14266 running.</li> 14267 14268 <li>add some detail to the man-page (requested by Jason Bacon 14269 <acadix@execpc.com>)</li> 14270 14271 <li>modify the standalone configure script to ignore the broken 14272 nsl and socket libraries on IRIX 6.2 (the ones on 5.2 also are 14273 broken, so this change just widens the check for the system 14274 version number).</li> 14275 </ul> 14276 14277 <h1><a name="xterm_63" id="xterm_63">Patch #63 - 1998/2/5 - 14278 XFree86 3.9Ad</a></h1> 14279 14280 <p>This is another patch from Bjorn Helgaas 14281 <helgaas@rsn.hp.com>, which I've reviewed (and learned 14282 some). Following are his notes:</p> 14283 14284 <p>I poked around some more and finally got xterm-62 to build and 14285 run cleanly on HP-UX 10.20. Here are the patches. They look sort 14286 of ugly, so here's a little explanation:</p> 14287 14288 <ul> 14289 <li>aclocal.m4: Removed side effects from the AC_CACHE_VAL 14290 commands in CF_FUNC_TGETENT. Previously, LIBS was set inside 14291 AC_CACHE_VAL, which worked fine the first time configure was 14292 run, but failed if there were cached values.</li> 14293 14294 <li>aclocal.m4: Added temporary setting of LIBS before 14295 AC_TRY_LINK in CF_FUNC_TGETENT. Previously, the last value set 14296 by the AC_TRY_RUN loop was used, so only -lcurses was 14297 checked.</li> 14298 14299 <li>configure.in: Added temporary setting of CPPFLAGS before 14300 AC_CHECK_HEADERS for X11 files. Previously 14301 <X11/DECkeysym.h> and <X11/Xpoll.h> were found only 14302 if they were in the compiler's default include directories, 14303 even if `--x-includes=DIR' had been used or AC_PATH_XTRA had 14304 found them elsewhere.</li> 14305 </ul> 14306 14307 <p>The problem on HP-UX was that we were linking with -lcurses 14308 rather than -ltermcap due to the second bullet above, and 14309 apparently something in HP-UX curses is broken. This seems very 14310 strange, because the only thing used is tgetent, which should 14311 affect any tty/pty configuration, but I lost interest in tracking 14312 down the exact problem.</p> 14313 14314 <h1><a name="xterm_62" id="xterm_62">Patch #62 - 1998/1/23 - 14315 XFree86 3.9Ac</a></h1> 14316 14317 <p>This is a patch mostly by Bjorn Helgaas 14318 <helgaas@dhc.net> (I added the os2main.c change, and a 14319 little of the documentation). From Bjorn's description:</p> 14320 14321 <ul> 14322 <li>If you use the "-hc <color>" option or set the 14323 "highlightColor" resource, text is highlighted by changing only 14324 the background color, rather than using reverse video. I find 14325 this easier to read, especially when selecting multi-colored 14326 text, and it is similar to the way Netscape shows 14327 selections.</li> 14328 14329 <li>Most of the code changes are under "#if 14330 OPT_HIGHLIGHT_COLOR". The principal exception is in screen.c, 14331 where I added a couple calls to resetXtermGC(). This seems like 14332 it could be a bug even without the color highlighting changes 14333 (though I don't pretend to understand all the logic).</li> 14334 </ul> 14335 14336 <h1><a name="xterm_61" id="xterm_61">Patch #61 - 1998/1/17 - 14337 XFree86 3.9Ac</a></h1> 14338 14339 <p>This patch modifies the reset behavior of xterm slightly:</p> 14340 14341 <ul> 14342 <li>change the terminfo entry so that rs1 (one of the strings 14343 used by the 'reset' program) does a hard reset rather than 14344 switching character sets. This is more in accord with other 14345 terminal descriptions.</li> 14346 14347 <li>modifies the treatment of hard reset by the xterm program 14348 to reset the saved lines.</li> 14349 14350 <li>corrects hard reset by also resetting user-defined keys, 14351 i.e., DECUDK.</li> 14352 </ul> 14353 14354 <h1><a name="xterm_60" id="xterm_60">Patch #60 - 1998/1/10 - 14355 XFree86 3.9Ab</a></h1> 14356 14357 <p>This fixes some minor bugs and adds new functionality:</p> 14358 14359 <ul> 14360 <li>add support for blinking text. 14361 <ul> 14362 <li>This does not actually cause the text to flash, but 14363 text with the blink attribute can be displayed in color, 14364 using new resources colorBL and colorBLMode.</li> 14365 14366 <li>If colors are not used, the blinking text will be 14367 displayed as before (just like bold). The main purpose of 14368 this is to make applications work properly when they assume 14369 the emulator supports blinking text.</li> 14370 14371 <li>I did this by moving the per-cell LINEWRAPPED flag to a 14372 per-line flag, to make room for the new BLINK flag. There 14373 were no per-line flags, so this changes a lot of 14374 logic.</li> 14375 </ul> 14376 </li> 14377 14378 <li>corrected missing save-cursor logic in the handling of SGR 14379 1048 (the new control sequence I added in patch #54, 14380 1997/10/17). Reported by Darren Hiebert.</li> 14381 14382 <li>flush the output of the transparent printing after each 14383 line Reported by Tomas Vanhala 14384 <vanhala@ling.helsinki.fi>.</li> 14385 14386 <li>correct the modes that are affected by save/restore cursor 14387 by adding WRAPAROUND and PROTECTED.</li> 14388 14389 <li>corrected placement of one of the XSync calls that I added 14390 in patch #51, 1997/9/15, which had the side-effect of writing 14391 on the window border when the xterm was resizing from 132 to 80 14392 columns.</li> 14393 14394 <li>work around an incompatibility of the XKB definition used 14395 in xterm versus that symbol from IRIX 6.2's imake definitions 14396 (by adjusting the standalone configure script).</li> 14397 </ul> 14398 14399 <h1><a name="xterm_59" id="xterm_59">Patch #59 - 1998/1/5 - 14400 XFree86 3.9Ab</a></h1> 14401 14402 <p>My last patch has an off-by-one error in the comparison for 14403 argc. Douglas Kosovic <douglask@dstc.edu.au> showed me 14404 where (he got a core dump). Also, I think this explains Clint 14405 Olsen's problem, but the symptoms were more subtle (EINVAL for a 14406 system call if the -display option is omitted).</p> 14407 14408 <h1><a name="xterm_58" id="xterm_58">Patch #58 - 1998/1/3 - 14409 XFree86 3.9Ab</a></h1> 14410 14411 <p>This patch does the following:</p> 14412 14413 <ul> 14414 <li>implement logic to permit xterm to work with proportional 14415 fonts. 14416 <ul> 14417 <li>Thomas Wolff <Thomas.Wolff@sietec.de> requested 14418 this (but it isn't exactly what he's asking for - that's a 14419 more involved task).</li> 14420 14421 <li>I chose to do this by rendering the characters on a 14422 fixed pitch, because it would not be useful for existing 14423 applications to display varying numbers of characters on 14424 each line.</li> 14425 14426 <li>Except that this forces the display to be wider, it 14427 works reasonably well. A couple of special cases (reverse + 14428 colorBD, for example) do not display with proper colors, 14429 since the inter-character gaps are painted with the 14430 background.</li> 14431 </ul> 14432 </li> 14433 14434 <li>added a version number to the program (several people have 14435 requested this).</li> 14436 14437 <li>make the -version and -help options interpreted before the 14438 program attempts to open the display.</li> 14439 14440 <li>minor reorganization of the man-page (ordered the options, 14441 resources and translations alphabetically - and eliminated some 14442 duplication).</li> 14443 14444 <li>corrected a misspelled filename in Makefile.in, and added a 14445 lint rule.</li> 14446 14447 <li>updated the configure script to correct behavior when it 14448 cannot find imake, as well as to fix the IRIX+gcc build 14449 (conflict with /usr/include).</li> 14450 14451 <li>regenerated the configure script with a newer patch to 14452 autoconf that fixes a problem with environment space vs the 14453 configure --help message.</li> 14454 </ul> 14455 14456 <h1><a name="xterm_57" id="xterm_57">Patch #57 - 1997/12/26 - 14457 XFree86 3.9Aa</a></h1> 14458 14459 <p>This patch is mostly concerned with the standalone configure 14460 script; a few minor corrections are added:</p> 14461 14462 <ul> 14463 <li>add configure option --disable-tek4014, to allow xterm to 14464 be built without the tek4014 emulation.</li> 14465 14466 <li>add configure option --with-terminal-type, to allow xterm 14467 to be compiled with default $TERM value other than "xterm" 14468 (e.g., "xterm-16color") -- requested by Stephen Marley 14469 <stephen@memex.com>.</li> 14470 14471 <li>fix a typo in the configure --help message -- reported by 14472 Darren Hiebert <darren@hmi.com>.</li> 14473 14474 <li>review diffs between main.c and os2main.c, to make them 14475 more alike. (applies some minor bug-fixes to OS/2's 14476 version).</li> 14477 14478 <li>add missing quotes in memmove/bcopy configure test</li> 14479 </ul> 14480 14481 <h1><a name="xterm_56" id="xterm_56">Patch #56 - 1997/11/28 - 14482 XFree86 3.9x</a></h1> 14483 14484 <p>This patch is based on analysis by Arfst Ludwig 14485 <arfst@luxor.IN-Berlin.DE>, who reported:</p> 14486 14487 <blockquote> 14488 <p>Setting the following resources xterm (all current versions) 14489 receives a segmentation fault on <Btn2Up> after 14490 scrolling:</p> 14491 14492 <pre> 14493 *XTerm*VT100*translations: #override \ 14494 ~Shift~Ctrl<Btn2Up>: insert-selection(PRIMARY, CUT_BUFFER0)\n\ 14495 Shift~Ctrl<Btn2Up>: insert-selection(CLIPBOARD, CUT_BUFFER1)\n\ 14496 ~Shift<BtnUp>: select-end(PRIMARY, CUT_BUFFER0)\n\ 14497 Shift<BtnUp>: select-end(CLIPBOARD, CUT_BUFFER1) 14498</pre> 14499 <p>(The above resources intention is to be able to paste the 14500 latest selection even if the xterm was cleared.)</p> 14501 14502 <p>And here is how it works (and a fix!): The widget given to 14503 the action handler as first argument is not guaranteed to be a 14504 XtermWidget (it can be the ScrollbarWidget). Instead of 14505 accessing the widget's member directly XtDisplay gives the 14506 required pointer in a safe way.</p> 14507 </blockquote> 14508 14509 <p>I noticed that this was not the only instance (by reading the 14510 code, and testing with his example), and extended the solution to 14511 check the widget-class to ensure that it is indeed xterm's widget 14512 class before attempting to use it in the context of 14513 translations.</p> 14514 14515 <h1><a name="xterm_55" id="xterm_55">Patch #55 - 1997/11/25 - 14516 XFree86 3.9x</a></h1> 14517 14518 <p>This fixes the segmentation violation noted by Rogier Wolff 14519 about a month ago. He'd set xterm to 400 (rows) by 150 columns, 14520 which broke because there were limited buffers (200 rows) used 14521 for juggling data when adding or deleting lines and for switching 14522 between alternate and normal screens. I replaced this by an 14523 allocated buffer.</p> 14524 14525 <p>The bug is simple to test if you set titeInhibit false.</p> 14526 14527 <h1><a name="xterm_54" id="xterm_54">Patch #54 - 1997/10/17 - 14528 XFree86 3.9s</a></h1> 14529 14530 <p>This patch does the following:</p> 14531 14532 <ul> 14533 <li>correct a minor placement problem with the right 14534 scrollbar.</li> 14535 14536 <li>implement a new set of control sequences for switching 14537 between the normal and alternate VT100 screens. These work 14538 around the older sequences limitation that required 14539 modification of the runtime $TERMCAP to cooperate with the 14540 titeInhibit resource (that can't work with terminfo). I do this 14541 by moving all of the functionality of the rmcur terminfo 14542 capability into the control sequences.</li> 14543 14544 <li>implement the alternate-screen menu entry</li> 14545 </ul> 14546 14547 <h1><a name="xterm_53" id="xterm_53">Patch #53 - 1997/10/12 - 14548 XFree86 3.9r</a></h1> 14549 14550 <p>This patch adds a fix and implements a new feature (as well as 14551 some minor typos):</p> 14552 14553 <ul> 14554 <li>JCHANDRA@Inf.COM (JCHANDRA) noted that there was still a 14555 problem with the wait call with the logging option. It hung 14556 when the logfile was opened as a command-line option. I fixed 14557 this by moving the StartLogging() call down past the place 14558 where I'd reset the setuid mode. So the logfile is opened as 14559 the real user, without having to fork.</li> 14560 14561 <li>improve Rohleder's changes by renaming the command-line 14562 options and reducing the number of ifdef's.</li> 14563 14564 <li>implement right-scrollbars for xterm (patch by Michael 14565 Rohleder <michael.rohleder@stadt-frankfurt.de>).</li> 14566 </ul> 14567 14568 <h1><a name="xterm_52" id="xterm_52">Patch #52 - 1997/9/29 - 14569 XFree86 3.9q</a></h1> 14570 14571 <p>This patch addresses bugs and requests reported by</p> 14572 14573 <ul> 14574 <li>Bob Maynard <rmaynard@montana.com>,</li> 14575 14576 <li>Clint Olsen <olsenc@ichips.intel.com>,</li> 14577 14578 <li>JCHANDRA@Inf.COM (JCHANDRA),</li> 14579 14580 <li>Michael Schroeder 14581 <Michael.Schroeder@informatik.uni-erlangen.de>,</li> 14582 14583 <li>Pablo Ariel Kohan <pablo@memco.co.il></li> 14584 </ul> 14585 14586 <p>Some of the changes are interrelated (it was an unusually busy 14587 week).</p> 14588 14589 <ul> 14590 <li>change the default resource value for colorMode to true, 14591 matching the Xterm.ad file.</li> 14592 14593 <li>correct behavior of 'ech' control, making the default and 0 14594 parameters erase one character rather than to the end of line 14595 (reported by Michael Schroeder).</li> 14596 14597 <li>add resource boldColors, command-line options +pc and -pc 14598 and configure-script option to specify behavior of xterm's 14599 mapping bold colors 0 through 7 to colors 8 through 15. 14600 (request by Pablo Ariel Kohan).</li> 14601 14602 <li>add resource colorAttrMode to specify whether colorULMode 14603 and colorBDMode can override the ANSI colors (report by Clint 14604 Olsen).</li> 14605 14606 <li>correct a conflict between colorULMode/colorBDMode versus 14607 ANSI colors, where exposure events would occasionally pick up 14608 the former (e.g., colorBD) rather than ANSI colors. Testing the 14609 colorAttrMode made this apparent, though it has been in the 14610 code since 3.2A (patch #35 in Jan 1997).</li> 14611 14612 <li>correct two problems with the optional logging support. On 14613 Linux at least, the waitpid call in creat_as hangs when the 14614 logging is toggled from the popup menu. Also, the mktemp 14615 template has the wrong number of X's (since X11R5!). Fixed the 14616 waitpid problem by exploiting the fact that the setuid behavior 14617 is reset before the popup menus are available. (reported by 14618 Jayachandran C.).</li> 14619 14620 <li>add configure script options for building with the Xaw3d 14621 and neXtaw libraries.</li> 14622 14623 <li>correct CF_IMAKE_CFLAGS standalone configure script macro, 14624 so that it will pick up $(ALLDEFINES) rather than 14625 $(STD_DEFINES). This is needed to make scrollbars work on 14626 Linux, since that uses narrow prototypes. (reported by Bob 14627 Maynard).</li> 14628 14629 <li>various minor updates to configure-script macros.</li> 14630 </ul> 14631 14632 <h1><a name="xterm_51" id="xterm_51">Patch #51 - 1997/9/15 - 14633 XFree86 3.9p</a></h1> 14634 14635 <p>Most of this patch is related to the standalone configure 14636 script, though there are fixes/enhancements as well:</p> 14637 14638 <ul> 14639 <li>add a new resource sunKeyboard, with associated 14640 command-line option and menu-toggle that allows using a normal 14641 Sun or PC keyboard to generated the complete DEC-style function 14642 keys and keypad.</li> 14643 14644 <li>correct a reversed foreground/background test in the 14645 control sequence that replies with the current SGR 14646 settings.</li> 14647 14648 <li>correct, by invoking XSync, a display problem that caused 14649 the program to not properly update newly exposed areas when a 14650 font change or 80/132 resize request was not completely 14651 accepted.</li> 14652 14653 <li>restructured autoconf macros (I made a library of all of 14654 the macros across the complicated configure scripts I'm working 14655 on).</li> 14656 14657 <li>use the autoconf config.guess and config.sub scripts to 14658 better identify the host-os.</li> 14659 14660 <li>improve the configure script that uses 'imake' as a 14661 fallback for definitions.</li> 14662 14663 <li>correct several instances of unsigned/signed mixed 14664 expressions.</li> 14665 </ul> 14666 14667 <p>I've tested the configure script on Linux, SunOS 4.1.3, 14668 Solaris 2.5.1, IRIX 5.2 and 6.2, AIX 3.2.5 and CLIX 3.1 (all but 14669 the last run properly as well).</p> 14670 14671 <h1><a name="xterm_50" id="xterm_50">Patch #50 - 1997/8/22 - 14672 XFree86 3.9m</a></h1> 14673 14674 <p>This is a collection of small fixes, and a couple of minor 14675 enhancements:</p> 14676 14677 <ul> 14678 <li>plug a security hole in the implementation of Media Copy 14679 (print) by invoking setuid just before the main loop.</li> 14680 14681 <li>add an ifdef'd include for <sys/termio.h> for HP-UX, 14682 which allows the program to process SIGWINCH events (this is a 14683 bug in X11R6.3)</li> 14684 14685 <li>add state-table entries for VT52 emulation to enter/exit 14686 keypad application mode.</li> 14687 14688 <li>disable the popup-menu entry for 8-bit controls when the 14689 terminal-id is less than 200 (e.g., VT52 or VT100).</li> 14690 14691 <li>ensure that the popup-menu entry for 8-bit controls is 14692 updated when the application enables/disables this mode, 14693 including the response to a full-reset.</li> 14694 14695 <li>implement VT300 DECBKM feature: set interpretation of the 14696 backarrow key to either backspace or delete. The initial 14697 setting is via resource; it can also be modified in the main 14698 popup menu.</li> 14699 14700 <li>implement VTxxx KAM (ISO AM), which allows a keyboard to be 14701 locked (i.e., the terminal discards input).</li> 14702 14703 <li>implement VTxxx SRM, which is used to control local echoing 14704 of input on the terminal.</li> 14705 14706 <li>add terminfo and termcap entries for xterm-8bit, a 14707 variation of the xterm description that uses 8-bit control 14708 characters.</li> 14709 14710 <li>add fallback definitions for Imakefile to allow it to work 14711 on some X11R5 systems that have no SpecialCObjectRule or 14712 ProgramTargetName macros.</li> 14713 14714 <li>add .c.o and .c.i rules to standalone Makefile.in</li> 14715 14716 <li>correct order of -lXmu and -lXext in standalone configure 14717 script.</li> 14718 14719 <li>add configure script options to allow selective disabling 14720 of active-icon, input-method and i18n code (mainly for users 14721 with X11R5 or an incomplete X11R6 configuration).</li> 14722 14723 <li>change menu-indices from #define's to enum values, thereby 14724 making it work better with the ifdef's for logging and 14725 active-icon (the X11R6.3 active-icon code is incorrectly 14726 ifdef'd; this corrects an error introduced by incorporating 14727 that code).</li> 14728 14729 <li>correct minor compile errors in the configuration where 14730 active-icon is not used.</li> 14731 14732 <li>add configure option to suppress echoing of long compiler 14733 commands</li> 14734 14735 <li>correct spelling of decTerminalID in configure script help 14736 message</li> 14737 14738 <li>use gcc __attribute__((unused)) to quiet warnings about 14739 unused parameters when compiling with -W (to make it simpler to 14740 find the real problems).</li> 14741 </ul> 14742 14743 <h1><a name="xterm_49" id="xterm_49">Patch #49 - 1997/8/10 - 14744 XFree86 3.9k</a></h1> 14745 14746 <p>This patch implements the VT100/VT220 Media Copy (i.e., 14747 print-screen) control sequences.</p> 14748 14749 <h1><a name="xterm_48" id="xterm_48">Patch #48 - 1997/7/26 - 14750 XFree86 3.9j</a></h1> 14751 14752 <p>This patch does the following (all but the first affect only 14753 the standalone configure script):</p> 14754 14755 <ul> 14756 <li>minor correction to positioning of underlines for small 14757 (e.g., 5x8) font size. 14758 <p>The existing behavior allowed underlines to be drawn 14759 outside the character-cell, so they weren't cleared properly 14760 under some circumstances.</p> 14761 </li> 14762 14763 <li>adds more special-case tokens to the standalone configure 14764 script's imake-option filter (e.g., "&&", since a "make 14765 -n main.o" on my IRIX system uses that shell construct).</li> 14766 14767 <li>adds a '--enable-logging' option for the standalone 14768 configure script.</li> 14769 14770 <li>adds check and ifdef's for the standalone configure script 14771 to allow for building on platforms with X11R6, which lacks 14772 Xpoll.h (introduced in X11R6.1).</li> 14773 </ul> 14774 14775 <h1><a name="xterm_47" id="xterm_47">Patch #47 - 1997/7/13 - 14776 XFree86 3.9i</a></h1> 14777 14778 <p>This patch does the following</p> 14779 14780 <ul> 14781 <li>corrects an indexing error in the doublesize character 14782 logic (button.c) that caused core dump (this was reported by J. 14783 Wunsch).</li> 14784 14785 <li>corrects the logic of ShowCursor when it is painting in a 14786 doublesize cell (charproc.c).</li> 14787 14788 <li>corrects, according to vttest, the behavior when switching 14789 to doublesize characters and back again (doublechr.c).</li> 14790 14791 <li>adds cbt (back_tab) to the terminfo description (this was 14792 something that I'd overlooked as applicable to curses 14793 optimization last summer).</li> 14794 14795 <li>corrects, for the standalone xmc test, the logic for 14796 disabling xmc.</li> 14797 </ul> 14798 14799 <h1><a name="xterm_46" id="xterm_46">Patch #46 - 1997/7/4 - 14800 XFree86 3.9h</a></h1> 14801 14802 <p>This is a patch to provide test-support for some work I'm 14803 doing on ncurses. It does not modify the normal configuration of 14804 xterm; the code is compiled if the standalone configure option 14805 "--enable-xmc-glitch" is specified.</p> 14806 14807 <h1><a name="xterm_45" id="xterm_45">Patch #45 - 1997/7/2 - 14808 XFree86 3.9h</a></h1> 14809 14810 <p>This fixes the problem reported with xterm's cursor color 14811 versus the background (the second chunk in this patch) and also 14812 removes some duplicate initialization of the cursor GC's. If the 14813 cursor color at startup is the same as the background, then xterm 14814 will use the reverse GC, ignoring the setting of the colorMode 14815 resource.</p> 14816 14817 <h1><a name="xterm_44" id="xterm_44">Patch #44 - 1997/6/22 - 14818 XFree86 3.9g</a></h1> 14819 14820 <p>This implements the first part of the VT100 doublesize 14821 characters for xterm, as well as fixing a handful of bugs:</p> 14822 14823 <ul> 14824 <li>the doublesize character support uses the normal font 14825 (using scaled fonts will be another patch) with blanks to 14826 simulate doublesize characters. This patch does most of the 14827 global changes that'll be required. I've hidden most of the 14828 details in macros and ifdef's so it's easy to configure out 14829 (part of the patch is a configure option for that 14830 purpose).</li> 14831 14832 <li>corrected limits in DeleteChar() function -- it's always 14833 ignored the size of the left border and scrollbar. I noticed 14834 this when working on the doublesize characters since the glitch 14835 was doubled in size (i.e., it wrapped some garbage around the 14836 right margin).</li> 14837 14838 <li>corrected 'memmove()' logic, for standalone builds (it 14839 referenced a malloc wrapper from my development library).</li> 14840 14841 <li>add a check for HideCursor() to prevent repeated screen 14842 updates (which can cause a spurious cursor glitch to appear, 14843 e.g., during scrolling). I noticed this with the 3.2A version 14844 (but only a few weeks ago, when I started working on this 14845 patch).</li> 14846 </ul> 14847 14848 <h1><a name="xterm_43" id="xterm_43">Patch #43 - 1997/6/10 - 14849 XFree86 3.9d</a></h1> 14850 14851 <p>Here's a fix for two problems:</p> 14852 14853 <ul> 14854 <li>modify handling of tgetent results in xterm and resize 14855 programs to make them tolerant of missing termcap file, or 14856 unknown terminal name. In this scheme, an explicit "-tn" option 14857 will succeed, overriding the fallback list.</li> 14858 14859 <li>a nit in the configure script (log extra information to 14860 help diagnose which case of the test-compile of tgetent was 14861 used).</li> 14862 </ul> 14863 14864 <h1><a name="xterm_42" id="xterm_42">Patch #42 - 1997/6/8 - 14865 XFree86 3.2Xl</a></h1> 14866 14867 <p>Bram Moolenaar reported that the cursor color changed 14868 unexpectedly while scrolling. The cause was that it used the same 14869 GC's as the logic that draws the ANSI colors. The bug only 14870 appears if the cursorColor resource isn't set, and has been 14871 present since the initial implementation early last year. (The 14872 same bug also appears in rxvt ;-). Here's a fix.</p> 14873 14874 <h1><a name="xterm_41" id="xterm_41">Patch #41 - 1997/5/28 - 14875 XFree86 3.2Xl</a></h1> 14876 14877 <p>Some nits found by Darren Hiebert (missing part of 14878 install-rule, incorrect assignment for --enable-color-mode 14879 option).</p> 14880 14881 <h1><a name="xterm_40" id="xterm_40">Patch #40 - 1997/5/26 - 14882 XFree86 3.2Xl</a></h1> 14883 14884 <p>Patch for the configure script's logic for obtaining imake 14885 predefined symbols.</p> 14886 14887 <h1><a name="xterm_39" id="xterm_39">Patch #39 - 1997/5/24 - 14888 XFree86 3.2Xl</a></h1> 14889 14890 <p>This patch does the following:</p> 14891 14892 <ul> 14893 <li>integrate the 16-color change for 'xterm'</li> 14894 14895 <li>minor fixes/clarification of tgetent in terminfo vs termcap 14896 to 'resize'</li> 14897 </ul> 14898 14899 <p>(both changes also modify the configure script)</p> 14900 14901 <h1><a name="xterm_38" id="xterm_38">Patch #38 - 1997/5/22 - 14902 XFree86 3.2Xh</a></h1> 14903 14904 <p>This implements a simple configuration script with autoconf 14905 (to which I'll add more options later). It does the 14906 following:</p> 14907 14908 <ul> 14909 <li>configures xterm to build with X11R5 (at least on SunOS 14910 4.1, Solaris 2.4, possibly IRIX - sorry network was down today, 14911 but I did test an earlier version yesterday).</li> 14912 14913 <li>enables/disables the configuration ifdef's for ANSI color 14914 and VT52 emulation.</li> 14915 </ul> 14916 14917 <p>It does not make tests for the things that imake does (that's 14918 another project), instead it uses a hybrid of the autoconf tests 14919 for libraries and adds imake's compiler options (which are 14920 necessary in some cases to get main.c to compile).</p> 14921 14922 <h1><a name="xterm_37" id="xterm_37">Patch #37 - 1997/5/7 - 14923 XFree86 3.9a</a></h1> 14924 14925 <p>This corrects a minor, but annoying error in the vt220 14926 emulation: the DECUDK is only supposed to be interpreted for 14927 _shifted_ function keys.</p> 14928 14929 <h1><a name="xterm_36" id="xterm_36">Patch #36 - 1997/1/16 - 14930 XFree86 3.2r</a></h1> 14931 14932 <p>This corrects something that I overlooked in patch #27 14933 (21-aug-1996), which is that when trimming the region to be 14934 repainted for the highlightSelection resource of xterm, I still 14935 have to paint the background past the highlighted region. This 14936 only happens when I first do a selection in a window that's 14937 partly off-screen, then move the window on-screen.</p> 14938 14939 <h1><a name="xterm_35" id="xterm_35">Patch #35 - 1997/1/7 - 14940 XFree86 3.2o</a></h1> 14941 14942 <p>This patch does the following:</p> 14943 14944 <ul> 14945 <li>combines the coding for foreground and background colors 14946 into a single byte, reducing the memory required to store 14947 saved-lines in color. (I'll take back that byte in a following 14948 patch to use to ensure the character-set, so there's no 14949 long-term decrease in memory use).</li> 14950 14951 <li>modifies the PF1-PF4 coding in termcap/terminfo. Because 14952 xterm is still by default emulating vt100, the function key 14953 codes are vt100-compatible (I overlooked this in patch #31). I 14954 also reformatted the whole terminfo file into a single-column, 14955 for consistency.</li> 14956 14957 <li>adds an interim xterm-vt220 description to accommodate the 14958 old and new styles of function-keys (though probably it'd be 14959 better to drop the old-style altogether).</li> 14960 </ul> 14961 14962 <h1><a name="xterm_34" id="xterm_34">Patch #34 - 1997/1/5 - 14963 XFree86 3.2o</a></h1> 14964 14965 <p>This patch does the following:</p> 14966 14967 <ul> 14968 <li>implement DECSTR (soft terminal reset). The biggest diff is 14969 due to adding another state table (note that there's only one 14970 useful state here, but it's only 256 bytes rather than 1k as it 14971 would have been before I reduced the size of state 14972 entries).</li> 14973 14974 <li>some minor tidying up (e.g., signed/unsigned use bitcpy, 14975 MODE_DECCKM, resetColor, resetCharsets). More is done in patch 14976 #35.</li> 14977 </ul> 14978 14979 <p>I got the description of DECSTR from a vt420 user's manual. 14980 I'll do some testing with vttest to ensure that there's nothing 14981 else to do than what was documented.</p> 14982 14983 <h1><a name="xterm_33" id="xterm_33">Patch #33 - 1996/11/24 - 14984 XFree86 3.2</a></h1> 14985 14986 <p>This adds to the reset-fix by Matthieu Herrb 14987 <Mathieu.Herrb@mipnet.fr> a small change to make xterm able 14988 to output 8-bit characters in VT100 mode. Applications that run 14989 on real VT100's don't do that anyway, and this feature should be 14990 removed sometime after finishing off the VT220 emulation (VT220's 14991 can do 8-bit characters). That would be a good time to change the 14992 default terminal-id to 220.</p> 14993 14994 <h1><a name="xterm_32" id="xterm_32">Patch #32 - 1996/11/21 - 14995 XFree86 3.2</a></h1> 14996 14997 <p>This implements the REP (repeat) control for xterm. That isn't 14998 part of the DEC VTxxx series, but is defined in ISO 6429. (Note 14999 that the base xterm terminal description is <em>not</em> changed 15000 -- I added a variant, "xterm-rep").</p> 15001 15002 <h1><a name="xterm_31" id="xterm_31">Patch #31 - 1996/11/16 - 15003 XFree86 3.2</a></h1> 15004 15005 <p>This implements vt52 emulation in xterm (ifdef'd so it can be 15006 removed). I've been using it for testing for the past month or 15007 so.</p> 15008 15009 <h1><a name="xterm_30" id="xterm_30">Patch #30 - 1996/11/16 - 15010 XFree86 3.2</a></h1> 15011 15012 <p>From bug-report by <auroux@clipper.ens.fr> (Denis 15013 Auroux), missing reset to ground state. I checked through the 15014 rest of <em>that</em> table and found another, in the 15015 unimplemented MC (screen print).</p> 15016 15017 <h1><a name="xterm_29" id="xterm_29">Patch #29 - 1996/9/15 - 15018 XFree86 3.1.2Gb</a></h1> 15019 15020 <p>This patch does the following:</p> 15021 15022 <ul> 15023 <li>corrects the restoration of color for bold/underline color 15024 mode</li> 15025 15026 <li>adds a resource 'decTerminalID' to control the reporting 15027 level of xterm (e.g., VT100, VT220).</li> 15028 15029 <li>uses the new resource to implement/correct the DA1, DA2 and 15030 DECRPTUI reports.</li> 15031 15032 <li>change valid-response code in DECRQSS from 0 to 1 (the 15033 manual says 0, but the VT420 terminal I've been testing on says 15034 1).</li> 15035 </ul> 15036 15037 <p>All of these changes are based on vttest 2.6</p> 15038 15039 <p>(Most of the volume in the patch is to add 2 more state tables 15040 for parsing the 2nd/3rd device-attribute controls).</p> 15041 15042 <h1><a name="xterm_28" id="xterm_28">Patch #28 - 1996/8/31 - 15043 XFree86 3.1.2F</a></h1> 15044 15045 <p>This patch corrects the following reported by Roland Rosenfeld 15046 <roland@spinnaker.rhein.de>:</p> 15047 15048 <ul> 15049 <li>handle SGR 22, 24 and 25 in combination with colorUL and 15050 colorBD resources. Also noted & fixed reset of colored 15051 underline/bold with SGR 0.</li> 15052 15053 <li>a typo in the termcap (missing '['), from 3.1.2Dj (my 15054 error)</li> 15055 </ul> 15056 15057 <p>Roland also complained that he couldn't use box characters 15058 with</p> 15059 15060 <pre> 15061 -adobe-courier-bold-r-normal--12-120-75-75-m-70-iso8859-1 15062</pre> 15063 <p>but that's a known xterm limitation (the box characters must 15064 be part of the font, in the first 32 locations).</p> 15065 15066 <h1><a name="xterm_27" id="xterm_27">Patch #27 - 1996/8/21 - 15067 XFree86 3.1.2Ek</a></h1> 15068 15069 <p>This patch fixes one of my long-term gripes: xterm's selection 15070 doesn't clearly show what's being selected (as per David's 15071 request, it's controlled by a resource, which defaults to the 15072 older behavior).</p> 15073 15074 <h1><a name="xterm_26" id="xterm_26">Patch #26 - 1996/8/20 - 15075 XFree86 3.1.2Ei</a></h1> 15076 15077 <p>Here's a patch to fix a problem with xterm's cut/paste and 15078 another to modify the appearance of the highlighting while 15079 selecting. (The changes are independent, so you can see if the 15080 change to screen.c is desirable).</p> 15081 15082 <h1><a name="xterm_25" id="xterm_25">Patch #25 - 1996/8/18 - 15083 XFree86 3.1.2Ei</a></h1> 15084 15085 <p>Here's a correction for two minor bugs that I picked up in 15086 testing, plus some lint (from Solaris 2.5) where NULL was used 15087 incorrectly:</p> 15088 15089 <ul> 15090 <li>make the second alternate font the same as the first 15091 (that's what vt420 and dtterm do)</li> 15092 15093 <li>corrected DECSCL report when DECSCL hasn't been set (i.e., 15094 don't return a '60').</li> 15095 </ul> 15096 15097 <h1><a name="xterm_24" id="xterm_24">Patch #24 - 1996/8/11 - 15098 XFree86 3.1.2Ee</a></h1> 15099 15100 <p>This patch does several things. In effect, xterm can (I think) 15101 do a reasonably good job of emulating vt220 and vt320 terminals 15102 (as well as it was doing vt100, at any rate ;-).</p> 15103 15104 <p>It does NOT do:</p> 15105 15106 <ul> 15107 <li>soft fonts</li> 15108 15109 <li>rigel or sixel graphics</li> 15110 </ul> 15111 15112 <p>Anyway, I:</p> 15113 15114 <ul> 15115 <li>added ECH, CPL, CNL, SU, SD, CBT, CHT controls</li> 15116 15117 <li>added popup-menu for switching between DEC and Sun function 15118 keys. (corrected alignment err wrt logging entry at that 15119 point).</li> 15120 15121 <li>make xterm recognize both 8-bit and 7-bit controls 15122 (including popup menu for switching modes).</li> 15123 15124 <li>add user-definable function keys (aka DECUDK)</li> 15125 15126 <li>support concealed text</li> 15127 15128 <li>support protected text (both ISO compatible and DEC 15129 compatible - that's not the same thing, btw), with SPA, EPA, 15130 DECSCA, DECSED, DECSEL controls.</li> 15131 15132 <li>implement DECSCL.</li> 15133 </ul> 15134 15135 <p>I'll be continuing to test this patch for a while, but don't 15136 expect to add any new functionality (it passes all of the current 15137 tests I've built in vttest, but I need to make more tests)..</p> 15138 15139 <h1><a name="xterm_23" id="xterm_23">Patch #23 - 1996/7/31 - 15140 XFree86 3.1.2Ec</a></h1> 15141 15142 <p>This removes the blinking cursor I added last week (for 15143 performance reasons). Time-permitting, I'll revisit this after 15144 3.2 is released (there <em>will</em> be more work after XFree86 15145 3.2, I assume).</p> 15146 15147 <h1><a name="xterm_22" id="xterm_22">Patch #22 - 1996/7/26 - 15148 XFree86 3.1.2Ec</a></h1> 15149 15150 <p>I looked more closely at my "double-negative" and realized 15151 that I had been confused by the default color scheme (black on 15152 white) in combination with reverse video. However, I did see that 15153 the original_fg and original_bg data weren't really used - so I 15154 removed that logic.</p> 15155 15156 <p>Also:</p> 15157 15158 <ul> 15159 <li>during initialization, check if ANSI colors are set with 15160 non fg/bg values, disable color mode if not. This makes xterm 15161 tolerant of applications that allocate the whole color 15162 map.</li> 15163 15164 <li>implemented blinking cursor (default is <em>off</em>)</li> 15165 </ul> 15166 15167 <h1><a name="xterm_21" id="xterm_21">Patch #21 - 1996/7/24 - 15168 XFree86 3.1.2Ec</a></h1> 15169 15170 <p>This patch does the following:</p> 15171 15172 <ul> 15173 <li>fixes some minor typography in the control-sequences 15174 documentation (it didn't occur to me til I'd sent the last 15175 patch that I could use ghostview for previewing the troff 15176 output ;-)</li> 15177 15178 <li>adjusts the shell's background color in ReverseVideo so 15179 that flicker in resizing is reduced</li> 15180 15181 <li>adds an ifdef OPT_ISO_COLORS to allow configuring xterm 15182 without the ISO color support (saves a lot of memory)</li> 15183 15184 <li>used that ifdef to isolate/modify logic so that if the user 15185 doesn't have the colorMode enabled, then ISO color support is 15186 disabled (saving memory). 15187 <p>(If anyone needs numbers, I had savedLines set to 2000, 15188 and found a reduction from ~700k to ~400k of allocated 15189 memory, according to Purify).</p> 15190 </li> 15191 </ul> 15192 15193 <h1><a name="xterm_20" id="xterm_20">Patch #20 - 1996/7/24 - 15194 XFree86 3.1.2Ec</a></h1> 15195 15196 <p>This documents the changes in control sequences for window 15197 operations that I added in my previous patch. I'm testing another 15198 patch that allows the user to use less memory if colors aren't 15199 needed.</p> 15200 15201 <h1><a name="xterm_19" id="xterm_19">Patch #19 - 1996/7/21 - 15202 XFree86 3.1.2Ec</a></h1> 15203 15204 <p>This patch does the following:</p> 15205 15206 <ul> 15207 <li>fixes the core dump that I reported on IRIX 5.2 (in main.c) 15208 <p>(it's worth noting that this bug exists in X11R6.1, so I'd 15209 like to assume that someone's already submitted a fix to X 15210 Consortium...)</p> 15211 </li> 15212 15213 <li>change the interpretation of zero rows or columns in a 15214 resize-window request to use the root window's size (looking 15215 more carefully at dtterm, that seems to be what it does).</li> 15216 15217 <li>change some memmove calls to memcpy for slightly better 15218 performance. also, a couple of memset calls to bzero, since 15219 Quantify says bzero runs 20% faster, I assume because there's 15220 one less argument.</li> 15221 15222 <li>interpret character sets 1 and 2 (so that vttest gives a 15223 reasonable result) Both rxvt and dtterm do something 15224 equivalent.</li> 15225 15226 <li>fix a minor memory leak in the logic that retrieves the 15227 window or icon names (Purify found this for me while I ran 15228 vttest).</li> 15229 </ul> 15230 15231 <h1><a name="xterm_18" id="xterm_18">Patch #18 - 1996/7/18 - 15232 XFree86 3.1.2Ec</a></h1> 15233 15234 <p>This implements the following:</p> 15235 15236 <ul> 15237 <li>escape sequences that act like the CDE dtterm's window 15238 operations (though I have implemented the default width and 15239 height -- I've seen a rather buggy dtterm running that seems to 15240 treat width=0 or height=0 literally -- maybe that's a feature, 15241 not a bug?)</li> 15242 15243 <li>minor tweak to the screen-repainting when resizing (I still 15244 cannot entirely get rid of flicker).</li> 15245 15246 <li>still more fixes to terminfo & termcap (I corrected my 15247 error for the hpa code and added some other stuff by comparing 15248 to ncurses' description and rxvt's).</li> 15249 15250 <li>a tweak to the changes by Michael Rohleder for the color 15251 translation</li> 15252 15253 <li>re-order attribute codes to allow later implementation of 15254 protected fields (dtterm supposedly does this; it's probably 15255 more useful than blinking or invisible text -- that uses up all 15256 of the available bits without changing the attribute scheme 15257 radically).</li> 15258 </ul> 15259 15260 <h1><a name="xterm_17" id="xterm_17">Patch #17 - 1996/7/2 - 15261 XFree86 3.1.2Eb</a></h1> 15262 15263 <p>This patch implements for xterm several minor features from 15264 ISO 6429 which are useful for terminfo applications. The HPA and 15265 VPA control sequences allow cursor movement along a row or 15266 column, cutting down a little on the characters transmitted. The 15267 other codes allow resetting specific graphic rendition attributes 15268 without modifying the other attributes. (now if someone just had 15269 time to implement blinking cursors...)</p> 15270 15271 <h1><a name="xterm_16" id="xterm_16">Patch #16 - 1996/6/25 - 15272 XFree86 3.1.2Ea</a></h1> 15273 15274 <p>Adam Tla/lka <atlka@pg.gda.pl> told me a couple of weeks 15275 ago that I'd missed some of the background coloring in xterm. I 15276 investigated, and found that while I'd picked up on the 15277 clear-to-bottom and clear-to-end-of-line operations, I'd 15278 overlooked the insert/delete lines. Just so I wouldn't overlook 15279 any more of these, I updated a copy of vttest to test ISO colors 15280 and bce (background color erase). This patch introduces a new 15281 function, ClearCurBackground, whose calls replace the direct 15282 XClearArea calls that I'd overlooked. (There's also a few 15283 compiler warnings fixed, etc ;-)</p> 15284 15285 <h1><a name="xterm_15" id="xterm_15">Patch #15 - 1996/5/29 - 15286 XFree86 3.1.2E</a></h1> 15287 15288 <p>This fixes the problem reported by David Dawes, by making the 15289 50msec select timeout for the Xaw3d arrow scrollbar a resource. 15290 (I made it a boolean for a variety of reasons -- to make it a 15291 number, you'd need an additional resource, to avoid breaking the 15292 logic).</p> 15293 15294 <h1><a name="xterm_14" id="xterm_14">Patch #14 - 1996/5/12 - 15295 XFree86 3.1.2Dj</a></h1> 15296 15297 <p>This patch brings the termcap and terminfo descriptions for 15298 xterm up to date. I made the following changes:</p> 15299 15300 <ul> 15301 <li>reformatted the terminfo description in a single-column 15302 (this is ok for terminfo, and will simplify future patches -- 15303 can't do that for termcap, since it would impact buffer 15304 requirements on some systems).</li> 15305 15306 <li>omitted obsolete features in termcap to save a little space 15307 (bs, pt)</li> 15308 15309 <li>added color capabilities to termcap (ut, Co, NC, op, AB, 15310 AF)</li> 15311 15312 <li>corrected some capabilities (vi, ve)</li> 15313 15314 <li>added 'st' (set tab)</li> 15315 15316 <li>reduced function keys in termcap for 'xterm' to 12 because 15317 color capabilities makes that description larger than 1023 15318 characters.</li> 15319 15320 <li>created new termcap name 'xtermm' (monochrome) to match the 15321 terminfo list, and make that description have 20 function 15322 keys.</li> 15323 15324 <li>added corresponding color capabilities to terminfo (bce, 15325 colors, pairs, op, ncv, setab, setaf)</li> 15326 15327 <li>corrected corresponding capabilities in terminfo (civis, 15328 cnorm, rmcup, smcup)</li> 15329 15330 <li>added capabilities (el1, hts)</li> 15331 15332 <li>in both, corrected home/end keys to match the code 15333 correction made by Thomas Mueller in 3.1.2Bk 15334 <p>=> (I'm still considering modifying the code & 15335 description to match the rxvt program).</p> 15336 </li> 15337 </ul> 15338 15339 <h1><a name="xterm_13" id="xterm_13">Patch #13 - 1996/4/23 - 15340 XFree86 3.1.2Df</a></h1> 15341 15342 <p>This corrects my earlier changes for colors - the inner border 15343 of the xterm was getting painted with the wrong color, since I'd 15344 moved the call to set the background into the logic that tracks 15345 SGR information.</p> 15346 15347 <h1><a name="xterm_12" id="xterm_12">Patch #12 - 1996/3/16 - 15348 XFree86 3.1.2Dc</a></h1> 15349 15350 <p>This corrects a memory leak in xterm that happens whenever one 15351 switches fonts.</p> 15352 15353 <h1><a name="xterm_11" id="xterm_11">Patch #11 - 1996/3/5 - 15354 XFree86 3.1.2Db</a></h1> 15355 15356 <p>This patch corrects the behavior of the ANSI colors in xterm 15357 when reverse video is used, as well as some other lesser 15358 sins:</p> 15359 15360 <ul> 15361 <li>button.c 15362 <ul> 15363 <li>(compiler warnings: shadowing of 'time', redundant 15364 cast)</li> 15365 </ul> 15366 </li> 15367 15368 <li>charproc.c 15369 <ul> 15370 <li>renamed screen.colors[] array to screen.Acolors[] to 15371 more easily distinguish the non-ANSI colors from the ANSI 15372 colors.</li> 15373 15374 <li>moved logic of SGR_Save() into VTInitialize, getting 15375 rid of local private variables original_fg and 15376 original_bg.</li> 15377 15378 <li>moved some logic into getXtermForeground and 15379 getXtermBackground from SGR_Foreground, SGR_Background, 15380 etc.</li> 15381 15382 <li>corrected misleading 'row' to 'col' in case for CUF, 15383 CUB sequences.</li> 15384 </ul> 15385 </li> 15386 15387 <li>ctlseqs.ms</li> 15388 15389 <li>xterm.man 15390 <ul> 15391 <li>(correct a misconception which I'd added that the 15392 color0 through color6 resource values apply to non-ANSI 15393 colors)</li> 15394 </ul> 15395 </li> 15396 15397 <li>ptyx.h 15398 <ul> 15399 <li>added original_fg, original_bg to TScreen 15400 structure.</li> 15401 </ul> 15402 </li> 15403 15404 <li>scrollbar.c 15405 <ul> 15406 <li>(compiler warnings: redundant cast)</li> 15407 </ul> 15408 </li> 15409 15410 <li>util.c 15411 <ul> 15412 <li>new functions getXtermForeground and getXtermBackground 15413 replace the macros GET_FG and GET_BG, with the added 15414 functionality of checking for the reverse-video status of 15415 xterm.</li> 15416 15417 <li>in ReverseVideo, swap the SGR foreground and background 15418 colors also.</li> 15419 </ul> 15420 </li> 15421 </ul> 15422 15423 <h1><a name="xterm_10" id="xterm_10">Patch #10 - 1996/2/14 - 15424 XFree86 3.1.2Cd</a></h1> 15425 15426 <p>I observed an occasional glitch in the xterm's color behavior; 15427 a clear to end of line would get a color that had been used in a 15428 program that supposedly reset colors. I traced this down to the 15429 way xterm was modifying colors of GC's on the fly; it didn't 15430 restore the original color of the GC, even though it would later 15431 be used in functions (such as ClearRight) that assumed (my error) 15432 that the GC would have the current foreground or background 15433 color.</p> 15434 15435 <p>I fixed this by resetting the GC's colors with a new function 15436 'resetXtermGC()', and direct calls on 15437 SGR_Foreground/SGR_Background, as appropriate and using a new 15438 function 'updatedXtermGC()' to encapsulate the logic that 15439 modifies the GC's color. (I also removed some commented-out code 15440 that was trying to do this -- the problem was a little more 15441 obscure).</p> 15442 15443 <h1><a name="xterm_09" id="xterm_09">Patch #9 - 1996/2/10 - 15444 XFree86 3.1.2Cb</a></h1> 15445 15446 <p>This patch fixes the remaining problems that I had making 15447 xterm run with x11r5, as well as a couple of other bugs. It 15448 follows my patch from yesterday, that added ifdef's for some of 15449 the input-method resources.</p> 15450 15451 <ul> 15452 <li>corrected ifdef's that suppress the input-method code 15453 (doesn't exist in my x11r5, and xterm works adequately without 15454 it).</li> 15455 15456 <li>corrected fallback definition for 'Select()' macro (oops: 15457 I'd copied the wrong text...)</li> 15458 15459 <li>moved the declarations for the fd_set variables to 15460 data.[ch]</li> 15461 15462 <li>corrected an ifdef in resize.c (sunos 4.x doesn't have 15463 termcap.h)</li> 15464 15465 <li>corrected (in main.c) some unused/orphaned variables.</li> 15466 </ul> 15467 15468 <h1><a name="xterm_08" id="xterm_08">Patch #8 - 1996/2/9 - 15469 XFree86 3.1.2Cb</a></h1> 15470 15471 <p>This is mostly a documentation patch for xterm. It describes 15472 the color control sequences in more detail, and documents some 15473 other features of xterm that aren't described elsewhere.</p> 15474 15475 <p>I've also added a couple of ifdef's to fix (part of) the 15476 problem that I'm working on (making the program work properly on 15477 x11r5, where I'm doing memory testing -- I have a "good" version 15478 from mid-January, but my resync version doesn't work properly on 15479 x11r5). I'm not done with <em>that</em> yet.</p> 15480 15481 <h1><a name="xterm_07" id="xterm_07">Patch #7 - 1996/1/28 - 15482 XFree86 3.1.2n</a></h1> 15483 15484 <p>I did a (clean) build of 3.1.2n on Linux 1.2.13 (ELF). I've 15485 got an S3 card.</p> 15486 15487 <p>This fixes the following in the 3.1.2n xterm:</p> 15488 15489 <ul> 15490 <li>initialize cur_foreground, cur_background in charproc.c 15491 (Purify told me they weren't initialized).</li> 15492 15493 <li>add interpretation of codes 39, 49, to reset background and 15494 foreground to default value (I'm told that ISO 6429 does this; 15495 but I don't have a written reference -- yet -- can anyone help 15496 here?). Anyway, rxvt does it, and it'll solve my remaining 15497 color management problems.</li> 15498 15499 <li>shadowing of 'time' in menu.c</li> 15500 15501 <li>'Cardinal' vs 'int' in scrollbar.c</li> 15502 15503 <li>several changes to permit compile with X11R5 (the system 15504 that I've got Purify on won't be upgraded to X11R6 for a long 15505 time).</li> 15506 </ul> 15507 15508 <p>I built this version (with a minor nit that I'll patch soon) 15509 on SunOS 4.1.3 so that I can test it some more with Purify.</p> 15510 15511 <p><em>btw</em>: the changes made in Xpoll.h won't work on some 15512 older systems, because fd_set isn't a defined type (I've got one 15513 machine at least that this applies to).</p> 15514 15515 <h1><a name="xterm_06" id="xterm_06">Patch #6 - 1996/1/8</a></h1> 15516 15517 <p>This patch does all of the SGR foreground/background fixes 15518 (i.e., clearing the screen after an SGR color is set causes that 15519 color to be used in the foreground and/or background). If the 15520 FG_COLOR and/or BG_COLOR flags aren't set, then the xterm 15521 foreground and background default to the window's values. This 15522 usage is consistent with various types of hardware (especially 15523 the IBM PC), and is also used in rxvt.</p> 15524 15525 <ul> 15526 <li>charproc.c: 15527 <ul> 15528 <li>add/use new macros GET_FG, GET_BG - n/c.</li> 15529 15530 <li>add/use new functions SGR_Foreground() and 15531 SGR_Background() to set corresponding colors in GC's, and 15532 to retain sense of "original" colors. 15533 <p>=> This makes redundant some of the corresponding 15534 logic in HideCursor to set the foreground and background, 15535 but I left it in since it <em>may</em> be fixing an 15536 unrelated requirement.</p> 15537 </li> 15538 15539 <li>set GC's in LoadNewFont() according to whether the SGR 15540 fg/bg colors are active. 15541 <p>=> This fixes some glitches in the accompanying 15542 resize, that leaves parts of the window in the original 15543 background color.</p> 15544 </li> 15545 </ul> 15546 </li> 15547 15548 <li>screen.c: 15549 <ul> 15550 <li>modified ClearBufRows() to use the SGR fg/bg colors if 15551 they're set.</li> 15552 15553 <li>added function ScrnClearLines(), used this to replace 15554 portions of ScrnInsertLine() and ScrnDeleteLine(). The new 15555 function uses the SGR fg/bg colors if they're set. 15556 <p>=> Otherwise, selection after an index or reverse 15557 index will paint the wrong colors.</p> 15558 </li> 15559 15560 <li>modified ScrnDeleteChar() and ScrnInsertChar() to use 15561 SGR fg/bg colors.</li> 15562 </ul> 15563 </li> 15564 15565 <li>util.c: 15566 <ul> 15567 <li>modified ClearRight() so that if either of the SGR 15568 fg/bg colors is set, we don't bzero the attributes and 15569 color arrays, but instead fill them with the appropriate 15570 codes.</li> 15571 15572 <li>modified ClearLeft to use SGR fg/bg colors.</li> 15573 </ul> 15574 </li> 15575 </ul> 15576 15577 <h1><a name="xterm_05" id="xterm_05">Patch #5 - 1996/1/7</a></h1> 15578 15579 <p>This patch modifies the object code, by replacing indexing 15580 expressions with temporary variables with the full indexing 15581 expression. At first glance, this seems inefficient (it did to me 15582 ;-), until remembering comments made in the compilers newsgroups 15583 that trying to "help" the compiler doesn't really work that well. 15584 A good optimizing compiler can do a better job than the 15585 programmer can. (There's a moral in the use of 'register' 15586 variables also, but I won't fix those...).</p> 15587 15588 <p>Anyway, the revised code generates a smaller object...</p> 15589 15590 <ul> 15591 <li>charproc.c: 15592 <ul> 15593 <li>recode index expressions in ShowCursor() and 15594 HideCursor() using SCRN_BUF_xxxxS macros - changes 15595 object.</li> 15596 15597 <li>replace constant '4' by MAX_PTRS - n/c.</li> 15598 </ul> 15599 </li> 15600 15601 <li>ptyx.h: 15602 <ul> 15603 <li>defined the SCRN_BUF_xxxxS macros in terms of BUF_xxxxS 15604 macros, to pick up references to ScrnBuf data directly, and 15605 added MAX_PTRS symbol to pick up those '4' constants strewn 15606 about the code - n/c.</li> 15607 </ul> 15608 </li> 15609 15610 <li>screen.c: 15611 <ul> 15612 <li>recode index expressions in ScreenWrite() using 15613 SCRN_BUF_xxxxS macros - changes object.</li> 15614 15615 <li>replace constant '4' by MAX_PTRS - n/c.</li> 15616 15617 <li>use macros BUF_CHARS, BUF_ATTRS - n/c.</li> 15618 15619 <li>cast calloc to 'Char *' to fix compiler warning on IRIX 15620 - n/c</li> 15621 </ul> 15622 </li> 15623 15624 <li>scrollbar.c: 15625 <ul> 15626 <li>replace constant '4' by MAX_PTRS - n/c.</li> 15627 15628 <li>cast calloc to 'Char *' to fix compiler warning on IRIX 15629 - n/c</li> 15630 </ul> 15631 </li> 15632 </ul> 15633 15634 <h1><a name="xterm_04" id="xterm_04">Patch #4 - 1996/1/7</a></h1> 15635 15636 <p>When setting up for this phase, I saw that you'd corrected the 15637 bug that I found in ClearLeft. I decided to make this series of 15638 patches anyway, since readability never hurt (and there's the 15639 potential for finding another bug while reviewing this set).</p> 15640 15641 <ul> 15642 <li>button.c: 15643 <ul> 15644 <li>use SCRN_BUF_xxxxS macros - n/c</li> 15645 </ul> 15646 </li> 15647 15648 <li>charproc.c: 15649 <ul> 15650 <li>use SCRN_BUF_xxxxS macros - n/c</li> 15651 </ul> 15652 </li> 15653 15654 <li>ptyx.h: 15655 <ul> 15656 <li>added four macros: SCRN_BUF_CHARS, SCRN_BUF_ATTRS, 15657 SCRN_BUF_FORES, SCRN_BUF_BACKS to represent the four arrays 15658 that are derived from screen->buf.</li> 15659 </ul> 15660 </li> 15661 15662 <li>screen.c: 15663 <ul> 15664 <li>use SCRN_BUF_xxxxS macros - n/c</li> 15665 </ul> 15666 </li> 15667 15668 <li>util.c: 15669 <ul> 15670 <li>use SCRN_BUF_xxxxS macros - n/c</li> 15671 </ul> 15672 </li> 15673 </ul> 15674 15675 <h1><a name="xterm_03" id="xterm_03">Patch #3 - 1996/1/7</a></h1> 15676 15677 <p>This is my third (and final cleanup) patch for xterm. It gets 15678 rid of the unused stuff, and converts several functions to static 15679 (thereby reducing their scope).</p> 15680 15681 <p>At this point, the only compile warnings I've got (on Linux) 15682 are those about the select arguments (int vs fd_set type), and a 15683 missing declaration for waitpid. Those both are hard to get right 15684 without autoconfigure.</p> 15685 15686 <p>The next patches will address the functional changes...</p> 15687 15688 <ul> 15689 <li>Tekproc.c: 15690 <ul> 15691 <li>changed several functions to 'static' that aren't used 15692 outside this module -- changes object</li> 15693 </ul> 15694 </li> 15695 15696 <li>charproc.c: 15697 <ul> 15698 <li>changed several functions to 'static' that aren't used 15699 outside this module -- changes object</li> 15700 15701 <li>deleted unused function unparsefputs -- changes 15702 object.</li> 15703 </ul> 15704 </li> 15705 15706 <li>main.c: 15707 <ul> 15708 <li>changed several functions to 'static' that aren't used 15709 outside this module -- changes object</li> 15710 15711 <li>ifdef'd out unused function 'consolepr()' -- changes 15712 object</li> 15713 15714 <li>removed unused variable 'dummy_tio' -- changes 15715 object</li> 15716 15717 <li>moved variable 'discipline' to quiet unused-warning -- 15718 changes object</li> 15719 </ul> 15720 </li> 15721 15722 <li>main.h: 15723 <ul> 15724 <li>deleted unused definition of DEFBORDERWIDTH - n/c</li> 15725 </ul> 15726 </li> 15727 15728 <li>misc.c: 15729 <ul> 15730 <li>changed several functions to 'static' that aren't used 15731 outside this module -- changes object</li> 15732 15733 <li>provide dummy return statements for xerror and xioerror 15734 to quiet compiler warnings -- changes object</li> 15735 </ul> 15736 </li> 15737 15738 <li>ptyx.h: 15739 <ul> 15740 <li>change sbuf_address and abuf_address to 'Char *' - 15741 n/c</li> 15742 </ul> 15743 </li> 15744 15745 <li>resize.c: 15746 <ul> 15747 <li>changed several functions to 'static' that aren't used 15748 outside this module -- changes object</li> 15749 </ul> 15750 </li> 15751 15752 <li>screen.c: 15753 <ul> 15754 <li>remove unnecessary 'Char **' casts - n/c</li> 15755 </ul> 15756 </li> 15757 15758 <li>util.c: 15759 <ul> 15760 <li>changed several functions to 'static' that aren't used 15761 outside this module -- changes object</li> 15762 </ul> 15763 </li> 15764 </ul> 15765 15766 <h1><a name="xterm_02" id="xterm_02">Patch #2 - 1996/1/7</a></h1> 15767 15768 <p>This is my second patch to xterm. It corrects most of the gcc 15769 warnings (except for some that are due to X header files ;-). I 15770 compared objects to keep track of the changes that don't affect 15771 the object code (n/c) versus those that do.</p> 15772 15773 <p>At this point, I'm compiling (fairly) clean with gcc 15774 options</p> 15775 15776 <pre> 15777 -Wall -Wstrict-prototypes -Wmissing-prototypes -Wshadow -Wnested-externs 15778</pre> 15779 <p>(I also compiled with -Wshadow, but while that found some 15780 things that I wanted to find, there's far too many warnings from 15781 the X headers to be usable in this context).</p> 15782 15783 <p>The changes:</p> 15784 15785 <ul> 15786 <li>Tekproc.c: 15787 <ul> 15788 <li>parenthesized expression to avoid gcc warning -- 15789 n/c.</li> 15790 15791 <li>corrected nested-extern declaration for Bool 15792 waiting_for_initial_map; ourTopLevelShellArgs, and 15793 number_ourTopLevelShellArgs - n/c</li> 15794 </ul> 15795 </li> 15796 15797 <li>charproc.c: 15798 <ul> 15799 <li>corrected potentially-unintialized variables 'scstype', 15800 'xim', and 'input_style' -- changes object.</li> 15801 15802 <li>adjusted logic of VTparse so that gcc won't warn about 15803 setjmp clobbering parsestate -- changes object.</li> 15804 15805 <li>corrected initialization of 'scstype', which could have 15806 been clobbered by setjmp/longjmp - changes object.</li> 15807 15808 <li>corrected nested-extern declaration of 'term', 15809 'ProgramName' - n/c</li> 15810 </ul> 15811 </li> 15812 15813 <li>cursor.c: 15814 <ul> 15815 <li>corrected nested-extern declaration of 'term' -- 15816 n/c</li> 15817 15818 <li>renamed 'term' parameters to avoid gcc -Wshadow warning 15819 - n/c</li> 15820 </ul> 15821 </li> 15822 15823 <li>input.c: 15824 <ul> 15825 <li>change interface of StringInput to assume size_t (i.e., 15826 unsigned) nbytes -- changes object.</li> 15827 15828 <li>change interface of funcvalue, and sunfuncvalue to use 15829 'KeySym' type instead of 'int' - changes object.</li> 15830 </ul> 15831 </li> 15832 15833 <li>main.c: 15834 <ul> 15835 <li>moved definitions of SIGNAL_T, SIGNAL_RETURN to proto.h 15836 - n/c</li> 15837 15838 <li>corrected missing params of 'do_hangup()' -- changes 15839 object (note: the missing params were not used).</li> 15840 15841 <li>corrected missing param of 'Error()' -- changes 15842 object</li> 15843 15844 <li>corrected nested-extern 'environ' - n/c</li> 15845 15846 <li>adjusted assignments to 'tty_got_hung' and 'no_dev_tty' 15847 so that gcc can see they won't be clobbered by the longjmp 15848 - changes object.</li> 15849 15850 <li>use Size_t type - n/c.</li> 15851 </ul> 15852 </li> 15853 15854 <li>menu.c: 15855 <ul> 15856 <li>removed redundant prototype for 'do_hangup()' -- 15857 n/c.</li> 15858 15859 <li>renamed 'time' parameters to avoid gcc -Wshadow warning 15860 - n/c</li> 15861 </ul> 15862 </li> 15863 15864 <li>menu.h: 15865 <ul> 15866 <li>renamed 'time' parameters to avoid gcc -Wshadow warning 15867 - n/c</li> 15868 </ul> 15869 </li> 15870 15871 <li>misc.c: 15872 <ul> 15873 <li>corrected definition of 'HandleFocusChange()' -- 15874 changes object</li> 15875 15876 <li>cast parameters in call to 'TekExpose()' -- n/c</li> 15877 15878 <li>corrected nested-extern declarations of 'term', 15879 'toplevel', ProgramName, and 'environ' -- n/c.</li> 15880 15881 <li>use Size_t type - n/c.</li> 15882 </ul> 15883 </li> 15884 15885 <li>proto.h: 15886 <ul> 15887 <li>moved definition of SIGNAL_T (and SIGNAL_RETURN) here 15888 from main.c, resize.c to allow use of this symbol in 15889 prototypes (mostly in xterm.h).</li> 15890 15891 <li>added definition 'Size_t' to use as corrected type for 15892 strncpy, malloc sizes - n/c.</li> 15893 </ul> 15894 </li> 15895 15896 <li>resize.c: 15897 <ul> 15898 <li>moved SIGNAL_T definition to proto.h -- n/c.</li> 15899 15900 <li>use Size_t type - n/c.</li> 15901 </ul> 15902 </li> 15903 15904 <li>screen.c: 15905 <ul> 15906 <li>use Size_t type - n/c.</li> 15907 </ul> 15908 </li> 15909 15910 <li>tabs.c: 15911 <ul> 15912 <li>corrected nested-extern declaration of 'term' -- 15913 n/c</li> 15914 </ul> 15915 </li> 15916 15917 <li>util.c: 15918 <ul> 15919 <li>corrected/supplied parameters to 'TekExpose()' -- 15920 changes object (note: 'TekExpose()' doesn't use its 15921 parameters).</li> 15922 15923 <li>corrected nested-extern declaration of 15924 'waiting_for_initial_map' -- n/c.</li> 15925 15926 <li>renamed 'term' parameters to avoid gcc -Wshadow warning 15927 - n/c</li> 15928 </ul> 15929 </li> 15930 15931 <li>xterm.h: 15932 <ul> 15933 <li>prototype 'do_hangup()', 'HandleFocusChange()', 15934 'TekExpose()', 'Error()', 'Exit()' - forces changes in 15935 various places.</li> 15936 15937 <li>adjusted prototypes that pass 'Boolean' arguments to 15938 use 'int' (this is the "correct" ANSI approach to extended 15939 compiles; it's worth mentioning that gcc doesn't meet the 15940 ANSI spec here). I used gcc -Wconversion to find these, but 15941 there's a lot of unrelated warnings that are due to setting 15942 NARROWPROTO in the config - n/c.</li> 15943 15944 <li>renamed 'term' parameters to avoid gcc -Wshadow warning 15945 - n/c</li> 15946 </ul> 15947 </li> 15948 </ul> 15949 15950 <h1><a name="xterm_01" id="xterm_01">Patch #1 - 1996/1/6</a></h1> 15951 15952 <p>This is my first cleanup patch for xterm. It addresses all of 15953 the gcc warnings for -Wall, -Wmissing-prototypes and 15954 -Wstrict-prototypes that I can change without modifying the 15955 object code. (I'm compiling this with gcc 2.7.0 for an aout 15956 target, which makes it simple to compare objects. When I do 15957 ELF-only, I've got a tool that compares that sort of thing as 15958 well).</p> 15959 15960 <p>Briefly, this patch adds (and uses) two header files in the 15961 xterm directory:</p> 15962 15963 <pre> 15964 proto.h 15965 xterm.h 15966</pre> 15967 <p>I expect this to be the biggest patch by far. However (barring 15968 a misplaced prototype), it shouldn't break anything, since the 15969 intent of the patch is to provide missing declarations.</p> 15970</body> 15971</html> 15972